diff --git a/server/controller/salary.go b/server/controller/salary.go index 126e27a..ff6675e 100644 --- a/server/controller/salary.go +++ b/server/controller/salary.go @@ -1,7 +1,6 @@ package controller import ( - "enterprise/common/dao" "enterprise/server/api" "enterprise/server/service" "enterprise/server/session" @@ -50,6 +49,6 @@ func (s *Salary) Pay(ctx *gin.Context) { func (s *Salary) Delete(ctx *gin.Context) { id := cast.ToInt64(ctx.Query("id")) - dao.NewStaffSalaryDao().Delete(id) + service.NewStaffSalary().Delete(ctx.Keys[session.ContextSession].(*session.AdminSession), id) ctx.JSON(http.StatusOK, session.NewRspOk()) } diff --git a/server/service/staff_salary.go b/server/service/staff_salary.go index 4ba1f43..c2c82f5 100644 --- a/server/service/staff_salary.go +++ b/server/service/staff_salary.go @@ -103,6 +103,15 @@ func (s *StaffSalary) Create(sess *session.AdminSession, req *api.CreateSalaryRe return } +func (s *StaffSalary) Delete(sess *session.AdminSession, id int64) { + salary, err := dao.NewStaffSalaryDao().Get(id) + session.CheckDBError(err) + session.CheckNilError(salary, "工资段不存在") + if salary.Status == model.StaffSalaryStatusPayed { + panic("已支付的不能删除") + } +} + func (s *StaffSalary) Update(sess *session.AdminSession, req *api.UpdateSalaryReq) { salary, err := dao.NewStaffSalaryDao().Get(cast.ToInt64(req.Id)) session.CheckDBError(err)