liujiandao
2024-04-30 a5435e6664093cd4b2ead49409cb41e301e46514
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(&params)
   //if err != nil {
   //   util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误")
   //   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(&params)
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误")
      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)
}