From e99cc5acf40323379cf538bc5f08228a42aa2bee Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期二, 09 四月 2024 17:52:26 +0800 Subject: [PATCH] 产量登记表2 --- controllers/yield_register_controller.go | 89 +++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 86 insertions(+), 3 deletions(-) diff --git a/controllers/yield_register_controller.go b/controllers/yield_register_controller.go index 2c8ff8e..fbade43 100644 --- a/controllers/yield_register_controller.go +++ b/controllers/yield_register_controller.go @@ -2,9 +2,12 @@ import ( "github.com/gin-gonic/gin" + "gorm.io/gorm" "silkserver/controllers/request" "silkserver/extend/code" "silkserver/extend/util" + "silkserver/models" + "silkserver/pkg/structx" ) type YieldRegisterController struct { @@ -15,14 +18,94 @@ // @Tags 鐢熶骇绠$悊/浜ч噺鐧昏琛� // @Summary 淇濆瓨浜ч噺鐧昏琛� // @Produce application/json -// @Param object body models.WorkshopManage true "鍙傛暟" +// @Param object body request.YieldRegisterInfo true "鍙傛暟" // @Success 200 {object} util.Response "鎴愬姛" -// @Router /api-jl/v1/system/saveYieldRegister [post] -func (slf WorkshopManageController) SaveYieldRegister(c *gin.Context) { +// @Router /api-jl/v1/fineness/saveYieldRegister [post] +func (slf YieldRegisterController) SaveYieldRegister(c *gin.Context) { var params request.YieldRegisterInfo + var yield models.YieldRegister err := c.BindJSON(¶ms) if err != nil { util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") return } + err = structx.AssignTo(params, &yield) + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鏁版嵁杞崲澶辫触") + return + } + if yield.ID > 0 { + //鏇存柊 + err = models.WithTransaction(func(db *gorm.DB) error { + err = models.NewYieldRegisterItemSearch().SetOrm(db).SetYieldRegisterId(yield.ID).Delete() + if err != nil { + return err + } + err = models.NewYieldRegisterCircleSearch().SetOrm(db).SetYieldRegisterId(yield.ID).Delete() + if err != nil { + return err + } + err = models.NewYieldRegisterSearch().SetOrm(db).Save(&yield) + return err + }) + + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "淇濆瓨澶辫触") + return + } + } else { + //淇濆瓨 + err = models.NewYieldRegisterSearch().Create(&yield) + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "淇濆瓨澶辫触") + return + } + } + util.ResponseFormat(c, code.Success, "淇濆瓨鎴愬姛") +} + +// GetYieldRegisterList +// +// @Tags 鐢熶骇绠$悊/浜ч噺鐧昏琛� +// @Summary 鑾峰彇浜ч噺鐧昏琛� +// @Produce application/json +// @Param object body request.GetYieldRegisterList true "鍙傛暟" +// @Success 200 {object} util.ResponseList{data=[]models.YieldRegister} "鎴愬姛" +// @Router /api-jl/v1/fineness/getYieldRegisterList [post] +func (slf YieldRegisterController) GetYieldRegisterList(c *gin.Context) { + var params request.GetYieldRegisterList + err := c.BindJSON(¶ms) + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") + return + } + list, total, err := models.NewYieldRegisterSearch().SetPage(params.Page, params.PageSize).Find() + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鏌ヨ澶辫触") + return + } + util.ResponseFormatList(c, code.Success, list, total) +} + +// GetYieldRegisterInfo +// +// @Tags 鐢熶骇绠$悊/浜ч噺鐧昏琛� +// @Summary 鑾峰彇浜ч噺鐧昏琛ㄨ鎯� +// @Produce application/json +// @Param object body request.GetYieldRegisterList true "鍙傛暟" +// @Success 200 {object} util.Response{data=models.YieldRegister} "鎴愬姛" +// @Router /api-jl/v1/fineness/getYieldRegisterInfo [post] +func (slf YieldRegisterController) GetYieldRegisterInfo(c *gin.Context) { + var params request.GetYieldRegisterList + err := c.BindJSON(¶ms) + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") + return + } + register, err := models.NewYieldRegisterSearch().SetPreload(true).SetNumber(params.Number).First() + if err != nil { + util.ResponseFormat(c, code.RequestParamError, "鏌ヨ澶辫触") + return + } + util.ResponseFormat(c, code.Success, register) } -- Gitblit v1.8.0