From 42a8ea1423243465f7161c560916f6abf9faf1dc Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期三, 17 四月 2024 15:40:06 +0800
Subject: [PATCH] 添加健康检查接口

---
 controllers/workshop_manage_controller.go |   71 ++++++++++++++++++++++++++++++-----
 1 files changed, 60 insertions(+), 11 deletions(-)

diff --git a/controllers/workshop_manage_controller.go b/controllers/workshop_manage_controller.go
index 527e1d8..6c34217 100644
--- a/controllers/workshop_manage_controller.go
+++ b/controllers/workshop_manage_controller.go
@@ -2,8 +2,9 @@
 
 import (
 	"github.com/gin-gonic/gin"
-	"silkserver/constvar"
+	"gorm.io/gorm"
 	"silkserver/controllers/request"
+	"silkserver/controllers/response"
 	"silkserver/extend/code"
 	"silkserver/extend/util"
 	"silkserver/models"
@@ -92,6 +93,37 @@
 	util.ResponseFormat(c, code.Success, "鍒犻櫎鎴愬姛")
 }
 
+// GetCarNumber
+//
+//	@Tags		绯荤粺璁剧疆/杞﹂棿绠$悊
+//	@Summary	鑾峰彇杞﹁締缂栧彿
+//	@Produce	application/json
+//	@Param     Authorization	header string true "token"
+//	@Param		object	body		request.GetWorkshopManageCar	true	"鍙傛暟"
+//	@Success	200		{object}	util.Response{data=[]int}		"鎴愬姛"
+//	@Router		/api-jl/v1/system/getCarNumber [post]
+func (slf WorkshopManageController) GetCarNumber(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
+	}
+	carNumbers := make([]int, 0)
+	for _, manage := range all {
+		i := manage.StartCarNumber
+		for ; i <= manage.EndCarNumber; i++ {
+			carNumbers = append(carNumbers, i)
+		}
+	}
+	util.ResponseFormat(c, code.Success, carNumbers)
+}
+
 // GetWorkshopManageGroup
 //
 //	@Tags		绯荤粺璁剧疆/杞﹂棿绠$悊
@@ -119,34 +151,49 @@
 	util.ResponseFormat(c, code.Success, groupMap)
 }
 
-// GetWorkshopManageCar
+// GetCarAndLevel
 //
 //	@Tags		绯荤粺璁剧疆/杞﹂棿绠$悊
-//	@Summary	鑾峰彇杞﹁締缂栧彿
+//	@Summary	鑾峰彇杞﹁締缂栧彿鍜岀瓑绾�
 //	@Produce	application/json
 //	@Param     Authorization	header string true "token"
 //	@Param		object	body		request.GetWorkshopManageCar	true	"鍙傛暟"
-//	@Success	200		{object}	util.ResponseList{data=[][]int}		"鎴愬姛"
-//	@Router		/api-jl/v1/system/getWorkshopManageCar [post]
-func (slf WorkshopManageController) GetWorkshopManageCar(c *gin.Context) {
+//	@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().SetWorkshopNumber(params.WorkshopNumber).SetGroupNumber(params.GroupNumber).FindAll()
+	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 {
+		if err == gorm.ErrRecordNotFound {
+			util.ResponseFormat(c, code.RequestParamError, "褰撳墠搴勫彛,杞﹂棿,缁勫埆涓�,娌℃湁绾ゅ害鐧昏淇℃伅")
+			return
+		}
+		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)
 		}
@@ -154,5 +201,7 @@
 			carNum = append(carNum, car)
 		}
 	}
-	util.ResponseFormat(c, code.Success, carNum)
+	data.Car = carNum
+
+	util.ResponseFormat(c, code.Success, data)
 }

--
Gitblit v1.8.0