From a5435e6664093cd4b2ead49409cb41e301e46514 Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期二, 30 四月 2024 14:07:04 +0800 Subject: [PATCH] 薪资计算2 --- controllers/report_forms_controller.go | 50 +++++++++++++++++++++++++++++++++++++------------- 1 files changed, 37 insertions(+), 13 deletions(-) diff --git a/controllers/report_forms_controller.go b/controllers/report_forms_controller.go index b00be87..42d20ff 100644 --- a/controllers/report_forms_controller.go +++ b/controllers/report_forms_controller.go @@ -2,6 +2,11 @@ import ( "github.com/gin-gonic/gin" + "silkserver/controllers/request" + "silkserver/controllers/response" + "silkserver/extend/code" + "silkserver/extend/util" + "silkserver/models" ) type ReportFormsController struct { @@ -14,19 +19,38 @@ // @Produce application/json // @Param object body request.SalaryReportForms true "鍙傛暟" // @Param Authorization header string true "token" -// @Success 200 {object} util.ResponseList{data=[]models.WorkTypeManage} "鎴愬姛" +// @Success 200 {object} util.ResponseList{data=[]response.SalaryReportForms} "鎴愬姛" // @Router /api-jl/v1/forms/salaryReportForms [post] func (slf ReportFormsController) SalaryReportForms(c *gin.Context) { - //var params request.SalaryReportForms - //err := c.BindJSON(¶ms) - //if err != nil { - // util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") - // return - //} - //workers, err := models.NewWorkerSearch().SetPage(params.Page, params.PageSize).FindNotTotal() - //if err != nil { - // util.ResponseFormat(c, code.RequestParamError, err) - // return - //} - + var params request.SalaryReportForms + err := c.BindJSON(¶ms) + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") + return + } + reportForms, total, err := models.NewSalaryReportFormSearch().SetPage(params.Page, params.PageSize).SetKeyword(params.Keyword).SetPreload(true).Find() + if err != nil { + util.ResponseFormat(c, code.RequestParamError, err) + return + } + data := make([]response.SalaryReportForms, 0) + for _, form := range reportForms { + var srf response.SalaryReportForms + srf.WorkerId = form.WorkerId + srf.WorkerName = form.WorkerName + srf.Phone = form.Phone + srf.IssueSalary = form.IssueSalary + srf.Remark = form.Remark + srf.WorkType = form.WorkType.WorkName + salaryDetails := make([]response.SalaryDetail, 0) + for _, detail := range form.Details { + var sd response.SalaryDetail + sd.SalaryTypeId = detail.SalaryTypeId + sd.SalaryType = detail.SalaryType.Name + sd.Amount = detail.Amount + salaryDetails = append(salaryDetails, sd) + } + srf.Details = salaryDetails + } + util.ResponseFormatList(c, code.Success, data, total) } -- Gitblit v1.8.0