From ec09e33c25c46317edcb705029aa4be8d9cc94f6 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 12 四月 2024 14:26:33 +0800
Subject: [PATCH] fux

---
 controllers/workshop_manage_controller.go |  114 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 98 insertions(+), 16 deletions(-)

diff --git a/controllers/workshop_manage_controller.go b/controllers/workshop_manage_controller.go
index 5b4b706..0cc7e7e 100644
--- a/controllers/workshop_manage_controller.go
+++ b/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,15 +16,13 @@
 
 // SaveWorkshopManage
 //
-//	@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]
+//		@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)
@@ -44,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)
@@ -89,5 +90,86 @@
 		util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎澶辫触")
 		return
 	}
-	util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎鎴愬姛")
+	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, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
+		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)
 }

--
Gitblit v1.8.0