liujiandao
2024-04-12 ceeb6be3ca049ce1301b49a1f695da2c4151e3de
controllers/workshop_manage_controller.go
@@ -2,7 +2,9 @@
import (
   "github.com/gin-gonic/gin"
   "silkserver/constvar"
   "silkserver/controllers/request"
   "silkserver/controllers/response"
   "silkserver/extend/code"
   "silkserver/extend/util"
   "silkserver/models"
@@ -14,12 +16,13 @@
// SaveWorkshopManage
//
//   @Tags      系统设置/车间管理
//   @Summary   保存车间管理
//   @Produce   application/json
//   @Param      object   body      models.WorkshopManage   true   "参数"
//   @Success   200      {object}   util.Response      "成功"
//   @Router      /api-jl/v1/system/saveWorkshopManage [post]
//      @Tags      系统设置/车间管理
//      @Summary   保存车间管理
//      @Produce   application/json
//      @Param      object   body      models.WorkshopManage   true   "参数"
//    @Param     Authorization   header string true "token"
//      @Success   200      {object}   util.Response      "成功"
//      @Router      /api-jl/v1/system/saveWorkshopManage [post]
func (slf WorkshopManageController) SaveWorkshopManage(c *gin.Context) {
   var workshop models.WorkshopManage
   err := c.BindJSON(&workshop)
@@ -41,12 +44,13 @@
// GetWorkshopManageList
//
//   @Tags      系统设置/车间管理
//   @Summary   获取车间管理列表
//   @Produce   application/json
//   @Param      object   query      request.GetPriceStandard   true   "参数"
//   @Success   200      {object}   util.ResponseList{data=[]models.WorkshopManage}      "成功"
//   @Router      /api-jl/v1/system/getWorkshopManageList [get]
//      @Tags      系统设置/车间管理
//      @Summary   获取车间管理列表
//      @Produce   application/json
//    @Param     Authorization   header string true "token"
//      @Param      object   query      request.GetPriceStandard   true   "参数"
//      @Success   200      {object}   util.ResponseList{data=[]models.WorkshopManage}      "成功"
//      @Router      /api-jl/v1/system/getWorkshopManageList [get]
func (slf WorkshopManageController) GetWorkshopManageList(c *gin.Context) {
   var param request.GetWorkshopManage
   err := c.ShouldBindQuery(&param)
@@ -88,3 +92,84 @@
   }
   util.ResponseFormat(c, code.Success, "删除成功")
}
// GetWorkshopManageGroup
//
//   @Tags      系统设置/车间管理
//   @Summary   获取车间组别
//   @Produce   application/json
//   @Param     Authorization   header string true "token"
//   @Param      number   path      string         true   "number"
//   @Success   200      {object}   util.Response{data=map[int]int}      "成功"
//   @Router      /api-jl/v1/system/getWorkshopManageGroup/{number} [get]
func (slf WorkshopManageController) GetWorkshopManageGroup(c *gin.Context) {
   number := c.Param("number")
   if number == "" {
      util.ResponseFormat(c, code.RequestParamError, "无效的编码")
      return
   }
   all, err := models.NewWorkshopManageSearch().SetWorkshopNumber(number).FindAll()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   groupMap := make(map[int]int)
   for _, manage := range all {
      groupMap[manage.GroupNumber] = manage.GroupNumber
   }
   util.ResponseFormat(c, code.Success, groupMap)
}
// GetCarAndLevel
//
//   @Tags      系统设置/车间管理
//   @Summary   获取车辆编号和等级
//   @Produce   application/json
//   @Param     Authorization   header string true "token"
//   @Param      object   body      request.GetWorkshopManageCar   true   "参数"
//   @Success   200      {object}   util.Response{data=response.CarAndLevel}      "成功"
//   @Router      /api-jl/v1/system/getCarAndLevel [post]
func (slf WorkshopManageController) GetCarAndLevel(c *gin.Context) {
   var params request.GetWorkshopManageCar
   err := c.BindJSON(&params)
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误")
      return
   }
   all, err := models.NewWorkshopManageSearch().SetWorkshopName(params.WorkshopName).SetGroupNumber(params.GroupNumber).FindAll()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   fineness, err := models.NewFinenessRegisterSearch().SetWorkshop(params.WorkshopName).SetWorkshopGroup(params.GroupNumber).
      SetMarket(params.MarketName).First()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   first, err := models.NewFinenessCheckSearch().SetID(fineness.FinenessCheckID).First()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   var data response.CarAndLevel
   data.Level = first.FinenessGrade
   carNum := make([][]int, 0)
   for _, manage := range all {
      car := make([]int, 0)
      i := manage.StartCarNumber
      if manage.CarFlag == constvar.RightHalfCar {
         i++
      }
      for ; i <= manage.EndCarNumber; i++ {
         car = append(car, i)
      }
      if len(car) > 0 {
         carNum = append(carNum, car)
      }
   }
   data.Car = carNum
   util.ResponseFormat(c, code.Success, data)
}