From 6db46482ae4c8dac7161a0e9ded92cff5db7c1a4 Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期五, 01 三月 2024 11:51:41 +0800
Subject: [PATCH] 车间管理接口开发
---
constvar/const.go | 8 +
/dev/null | 6 -
controllers/request/system_set.go | 12 ++
models/workshop_manage.go | 110 ++++++++++++++++++++++
controllers/workshop_manage_controller.go | 90 ++++++++++++++++++
models/raw_silk_price_standard.go | 2
router/router.go | 22 ++--
7 files changed, 233 insertions(+), 17 deletions(-)
diff --git a/constvar/const.go b/constvar/const.go
index 34d9dc1..5a024d3 100644
--- a/constvar/const.go
+++ b/constvar/const.go
@@ -16,3 +16,11 @@
UserTypePrimary // 涓昏处鎴�
UserTypeSub // 瀛愯处鎴�
)
+
+type CarFlag int
+
+const (
+ LeftHalfCar CarFlag = iota + 1 //宸﹀崐杞�
+ RightHalfCar //鍙冲崐杞�
+ AllCar //鍏ㄨ溅
+)
diff --git a/controllers/request/raw_silk_standard_request.go b/controllers/request/raw_silk_standard_request.go
deleted file mode 100644
index dd0ebc5..0000000
--- a/controllers/request/raw_silk_standard_request.go
+++ /dev/null
@@ -1,6 +0,0 @@
-package request
-
-type GetPriceStandard struct {
- PageInfo
- KeyWord string `json:"keyWord"`
-}
diff --git a/controllers/request/dict.go b/controllers/request/system_set.go
similarity index 60%
rename from controllers/request/dict.go
rename to controllers/request/system_set.go
index 86c6847..c87cd33 100644
--- a/controllers/request/dict.go
+++ b/controllers/request/system_set.go
@@ -18,3 +18,15 @@
ID uint `gorm:"comment:涓婚敭ID;primaryKey;" json:"id"`
AddDict
}
+
+// ---------------------------------------鐢熶笣---------------------------------
+type GetPriceStandard struct {
+ PageInfo
+ KeyWord string `json:"keyWord"`
+}
+
+// ---------------------------------------杞﹂棿---------------------------------
+type GetWorkshopManage struct {
+ PageInfo
+ KeyWord string `json:"keyWord"`
+}
diff --git a/controllers/workshop_manage_controller.go b/controllers/workshop_manage_controller.go
new file mode 100644
index 0000000..c1c85c2
--- /dev/null
+++ b/controllers/workshop_manage_controller.go
@@ -0,0 +1,90 @@
+package controllers
+
+import (
+ "github.com/gin-gonic/gin"
+ "silkserver/controllers/request"
+ "silkserver/extend/code"
+ "silkserver/extend/util"
+ "silkserver/models"
+ "strconv"
+)
+
+type WorkshopManageController struct {
+}
+
+// SaveWorkshopManage
+//
+// @Tags 绯荤粺璁剧疆/杞﹂棿绠$悊
+// @Summary 淇濆瓨杞﹂棿绠$悊
+// @Produce application/json
+// @Param object body models.WorkshopManage true "鍙傛暟"
+// @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)
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
+ return
+ }
+ if workshop.ID > 0 {
+ err = models.NewWorkshopManageSearch().Save(&workshop)
+ } else {
+ err = models.NewWorkshopManageSearch().Create(&workshop)
+ }
+ if err != nil {
+ util.ResponseFormat(c, code.SaveFail, "淇濆瓨澶辫触")
+ return
+ }
+ util.ResponseFormat(c, code.Success, "淇濆瓨鎴愬姛")
+}
+
+// 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]
+func (slf WorkshopManageController) GetWorkshopManageList(c *gin.Context) {
+ var param request.GetWorkshopManage
+ err := c.ShouldBindQuery(¶m)
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
+ return
+ }
+ list, total, err := models.NewWorkshopManageSearch().SetPage(param.Page, param.PageSize).Find()
+ if err != nil {
+ util.ResponseFormat(c, code.SelectError, "鏌ヨ澶辫触")
+ return
+ }
+ util.ResponseFormatList(c, code.Success, list, total)
+}
+
+// DeleteWorkshopManage
+//
+// @Tags 绯荤粺璁剧疆/杞﹂棿绠$悊
+// @Summary 鍒犻櫎杞﹂棿绠$悊
+// @Produce application/json
+// @Param id path string true "id"
+// @Success 200 {object} util.Response "鎴愬姛"
+// @Router /api-jl/v1/system/deleteWorkshopManage/{id} [delete]
+func (slf WorkshopManageController) DeleteWorkshopManage(c *gin.Context) {
+ id := c.Param("id")
+ if id == "" {
+ util.ResponseFormat(c, code.RequestParamError, "鏃犳晥鐨刬d")
+ return
+ }
+ atoi, err := strconv.Atoi(id)
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鏁版嵁杞崲澶辫触")
+ return
+ }
+ err = models.NewWorkshopManageSearch().SetId(atoi).Delete()
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎澶辫触")
+ return
+ }
+ util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎鎴愬姛")
+}
diff --git a/models/raw_silk_price_standard.go b/models/raw_silk_price_standard.go
index 79fd7cd..b8390dd 100644
--- a/models/raw_silk_price_standard.go
+++ b/models/raw_silk_price_standard.go
@@ -7,7 +7,7 @@
"silkserver/pkg/mysqlx"
)
-// RawSilkPriceStandard
+// RawSilkPriceStandard 鐢熶笣瀹氫环绠$悊
type (
RawSilkPriceStandard struct {
gorm.Model
diff --git a/models/workshop_manage.go b/models/workshop_manage.go
new file mode 100644
index 0000000..6d920cb
--- /dev/null
+++ b/models/workshop_manage.go
@@ -0,0 +1,110 @@
+package models
+
+import (
+ "fmt"
+ "gorm.io/gorm"
+ "silkserver/constvar"
+ "silkserver/pkg/mysqlx"
+)
+
+// WorkshopManage 杞﹂棿绠$悊
+type (
+ WorkshopManage struct {
+ gorm.Model
+ WorkshopNumber string `json:"workshopNumber" gorm:"type:varchar(255);comment:杞﹂棿缂栧彿"`
+ GroupNumber int `json:"groupNumber" gorm:"type:int(11);comment:缁勫埆"`
+ StartCarNumber int `json:"startCarNumber" gorm:"type:int(11);comment:缁勫埆"`
+ EndCarNumber int `json:"endCarNumber" gorm:"type:int(11);comment:缁勫埆"`
+ CarFlag constvar.CarFlag `json:"carFlag" gorm:"type:int(1);comment:鍗婅溅鏍囧織"`
+ Notes string `json:"notes" gorm:"type:varchar(255);comment:澶囨敞"`
+ }
+ WorkshopManageSearch struct {
+ WorkshopManage
+ PageNum int
+ PageSize int
+ Orm *gorm.DB
+ }
+)
+
+func (slf WorkshopManage) TableName() string {
+ return "workshop_manage"
+}
+
+func NewWorkshopManageSearch() *WorkshopManageSearch {
+ return &WorkshopManageSearch{Orm: mysqlx.GetDB()}
+}
+
+func (slf *WorkshopManageSearch) SetOrm(tx *gorm.DB) *WorkshopManageSearch {
+ slf.Orm = tx
+ return slf
+}
+
+func (slf *WorkshopManageSearch) SetPage(page, size int) *WorkshopManageSearch {
+ slf.PageNum, slf.PageSize = page, size
+ return slf
+}
+
+func (slf *WorkshopManageSearch) SetId(id int) *WorkshopManageSearch {
+ slf.ID = uint(id)
+ return slf
+}
+
+func (slf *WorkshopManageSearch) build() *gorm.DB {
+ db := slf.Orm.Table(slf.TableName())
+
+ if slf.ID > 0 {
+ db = db.Where("id = ?", slf.ID)
+ }
+
+ return db
+}
+
+// Create 鍗曟潯鎻掑叆
+func (slf *WorkshopManageSearch) Create(record *WorkshopManage) error {
+ db := slf.build()
+ err := db.Create(record).Error
+ if err != nil {
+ return fmt.Errorf("create err: %v, record: %+v", err, record)
+ }
+ return nil
+}
+
+func (slf *WorkshopManageSearch) Find() ([]*WorkshopManage, int64, error) {
+ var (
+ records = make([]*WorkshopManage, 0)
+ total int64
+ db = slf.build()
+ )
+
+ if err := db.Count(&total).Error; err != nil {
+ return records, total, fmt.Errorf("find count err: %v", err)
+ }
+ if slf.PageNum*slf.PageSize > 0 {
+ db = db.Offset((slf.PageNum - 1) * slf.PageSize).Limit(slf.PageSize)
+ }
+ if err := db.Find(&records).Error; err != nil {
+ return records, total, fmt.Errorf("find records err: %v", err)
+ }
+
+ return records, total, nil
+}
+
+func (slf *WorkshopManageSearch) Save(record *WorkshopManage) error {
+ var db = slf.build()
+
+ if err := db.Save(record).Error; err != nil {
+ return fmt.Errorf("save err: %v, record: %+v", err, record)
+ }
+
+ return nil
+}
+
+func (slf *WorkshopManageSearch) Delete() error {
+ var db = slf.build()
+
+ if err := db.Unscoped().Delete(&WorkshopManage{}).Error; err != nil {
+ return err
+ }
+
+ return nil
+}
diff --git a/router/router.go b/router/router.go
index f2ae3a2..6d495b6 100644
--- a/router/router.go
+++ b/router/router.go
@@ -23,14 +23,25 @@
urlPrefix := "/api-jl/v1"
- // 璇嶅吀绠$悊
+ // 绯荤粺璁剧疆
DictController := new(controllers.DictController)
+ rawSilkController := new(controllers.RawSilkStandardController)
+ workshopController := new(controllers.WorkshopManageController)
systemApi := r.Group(urlPrefix + "/system")
{
+ //璇嶅吀绠$悊
systemApi.GET("dict", DictController.List) // 鑾峰彇璇嶅吀鍒楄〃
systemApi.POST("dict", DictController.Add) // 鏂板璇嶅吀
systemApi.PUT("dict", DictController.Update) // 淇敼璇嶅吀
systemApi.DELETE("dict/:id", DictController.Delete) // 鍒犻櫎璇嶅吀
+ // 鐢熶笣绠$悊
+ systemApi.GET("getPriceStandardList", rawSilkController.GetPriceStandardList) //鑾峰彇鐢熶笣瀹氫环鏍囧噯
+ systemApi.POST("savePriceStandard", rawSilkController.SavePriceStandard) //淇濆瓨鐢熶笣瀹氫环鏍囧噯
+ systemApi.DELETE("deletePriceStandard/:id", rawSilkController.DeletePriceStandard) //鍒犻櫎鐢熶笣瀹氫环鏍囧噯
+ //杞﹂棿绠$悊
+ systemApi.GET("getWorkshopManageList", workshopController.GetWorkshopManageList) //鑾峰彇杞﹂棿绠$悊鍒楄〃
+ systemApi.POST("saveWorkshopManage", workshopController.SaveWorkshopManage) //淇濆瓨杞﹂棿绠$悊
+ systemApi.DELETE("deleteWorkshopManage/:id", workshopController.DeleteWorkshopManage) //鍒犻櫎杞﹂棿绠$悊
}
// 鐢熶骇绠$悊
@@ -41,15 +52,6 @@
finenessApi.DELETE("register/:id", FinenessController.Delete) // 鍒犻櫎绾ゅ害鐧昏
finenessApi.POST("register", FinenessController.Add) // 鏂板绾ゅ害鐧昏
finenessApi.GET("register/:id", FinenessController.Info) // 鑾峰彇绾ゅ害鐧昏璇︽儏
- }
-
- // 鐢熶笣绠$悊
- rawSilkController := new(controllers.RawSilkStandardController)
- rawSilkApi := r.Group(urlPrefix + "/system")
- {
- rawSilkApi.GET("getPriceStandardList", rawSilkController.GetPriceStandardList) //鑾峰彇鐢熶笣瀹氫环鏍囧噯
- rawSilkApi.POST("savePriceStandard", rawSilkController.SavePriceStandard) //淇濆瓨鐢熶笣瀹氫环鏍囧噯
- rawSilkApi.DELETE("DeletePriceStandard/:id", rawSilkController.DeletePriceStandard) //鍒犻櫎鐢熶笣瀹氫环鏍囧噯
}
return r
--
Gitblit v1.8.0