liwei 2 years ago
parent
commit
d66e28093d

+ 3 - 3
boxcost/api/craft.go

@@ -17,13 +17,13 @@ import (
 func Craft(r *GinRouter) {
 
 	// 创建工艺
-	r.POST("/craft", CreateCraft)
+	r.POST("/craft/create", CreateCraft)
 
 	// 获取工艺详情
-	r.GET("/craft/:id", GetCraft)
+	r.GET("/craft/detail/:id", GetCraft)
 
 	// 获取工艺列表
-	r.GET("/crafts", GetCrafts)
+	r.GET("/craft/list", GetCrafts)
 
 	// 更新工艺
 	r.POST("/craft/update", UpdateCraft)

+ 21 - 5
boxcost/api/material.go

@@ -17,13 +17,16 @@ import (
 func Material(r *GinRouter) {
 
 	// 新增材料
-	r.POST("/material", CreateMaterial)
+	r.POST("/material/create", CreateMaterial)
 
 	// 获取材料信息
-	r.GET("/material/:id", GetMaterial)
+	r.GET("/material/detail/:id", GetMaterial)
 
 	// 获取材料列表
-	r.GET("/materials", GetMaterials)
+	r.GET("/material/list", GetMaterials)
+
+	// 材料列表
+	r.POST("/material/update", UpdateMaterial)
 
 	r.POST("/material/delete/:id", DelMaterial)
 }
@@ -38,10 +41,10 @@ func CreateMaterial(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	}
 	ctx := apictx.CreateRepoCtx()
 
-	if material.Name == "" {
+	if len(material.Name) < 1 {
 		return nil, errors.New("材料名为空")
 	}
-	if material.Type == "" {
+	if len(material.Category) < 1 {
 		return nil, errors.New("材料类型为空")
 	}
 
@@ -89,6 +92,19 @@ func GetMaterials(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	return repo.RepoPageSearch(apictx.CreateRepoCtx(), option)
 }
 
+func UpdateMaterial(c *gin.Context, apictx *ApiSession) (interface{}, error) {
+	var mat model.Material
+	err := c.ShouldBindJSON(&mat)
+	if err != nil {
+		return nil, errors.New("参数错误")
+	}
+	if mat.Id == primitive.NilObjectID {
+		return nil, errors.New("id的为空")
+	}
+	mat.UpdateTime = time.Now()
+	return repo.RepoUpdateSetDoc(apictx.CreateRepoCtx(), repo.CollectionMaterial, mat.Id.Hex(), &mat)
+}
+
 // 删除材料
 func DelMaterial(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	materialId := c.Param("id")

+ 3 - 4
boxcost/api/pack.go

@@ -54,21 +54,20 @@ func CreatePack(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	// components id
 	if pack.CompCounts > 0 {
 		for _, v := range pack.Components {
-			v.Id = primitive.NewObjectID()
+			v.Id = primitive.NewObjectID().Hex()
 			// mats id
 			if len(v.Mats) > 0 {
 				for _, v := range v.Mats {
-					v.Id = primitive.NewObjectID()
+					v.Id = primitive.NewObjectID().Hex()
 					// crafts id
 					if len(v.Crafts) > 0 {
 						for _, v := range v.Crafts {
-							v.Id = primitive.NewObjectID()
+							v.Id = primitive.NewObjectID().Hex()
 
 						}
 					}
 				}
 			}
-
 		}
 	}
 

+ 15 - 0
boxcost/api/setting.go

@@ -23,4 +23,19 @@ func Setting(router *GinRouter) {
 		JWT:           true,
 		SearchProject: []string{"name", "createTime"},
 	})
+
+	CreateCRUD(router, "/cates", &CRUDOption{
+		Collection: "cates",
+		NewModel: func(c *gin.Context, apictx *ApiSession) (interface{}, error) {
+			entity := &model.Category{}
+			c.ShouldBindJSON(entity)
+			entity.CreateTime = time.Now()
+			return entity, nil
+		},
+		EmtyModel: func(c *gin.Context, apictx *ApiSession) interface{} {
+			return &model.Category{}
+		},
+		JWT:           true,
+		SearchProject: []string{"name", "createTime"},
+	})
 }

+ 3 - 3
boxcost/api/supplier.go

@@ -17,13 +17,13 @@ import (
 func Supplier(r *GinRouter) {
 
 	// 创建供应商
-	r.POST("/supplier", CreateSupplier)
+	r.POST("/supplier/create", CreateSupplier)
 
 	// 获取供应商详情
-	r.GET("/supplier/:id", GetSupplier)
+	r.GET("/supplier/detail/:id", GetSupplier)
 
 	// 获取供应商列表
-	r.GET("/suppliers", GetSuppliers)
+	r.GET("/supplier/list", GetSuppliers)
 
 	// 更新供应商
 	r.POST("/supplier/update", UpdateSupplier)

+ 3 - 0
boxcost/boxcost.log

@@ -4,3 +4,6 @@
 {"level":"info","timestamp":"2022-10-25 11:48:50","message":"[<nil>]","service_name":"boxcost"}
 {"level":"info","timestamp":"2022-10-25 18:21:40","message":"[<nil>]","service_name":"boxcost"}
 {"level":"info","timestamp":"2022-10-26 11:16:11","message":"[<nil>]","service_name":"boxcost"}
+{"level":"info","timestamp":"2022-11-14 10:17:17","message":"[<nil>]","service_name":"boxcost"}
+{"level":"info","timestamp":"2022-11-14 10:18:50","message":"[<nil>]","service_name":"boxcost"}
+{"level":"info","timestamp":"2022-11-14 10:22:22","message":"[<nil>]","service_name":"boxcost"}

+ 5 - 2
boxcost/db/model/craft.go

@@ -13,10 +13,13 @@ type Craft struct {
 	// 单位
 	Unit  string  `bson:"unit,omitempty" json:"unit"`
 	Price float64 `bson:"price,omitempty" json:"price"`
-	// 质量要求
-	Quality string `bson:"quality,omitempty" json:"quality"`
+	//质量规格要求
+	Norm string `bson:"norm,omitempty" json:"norm"`
 	// 备注
 	Remark     string    `bson:"remark,omitempty" json:"remark"`
 	CreateTime time.Time `bson:"createTime,omitempty" json:"createTime"`
 	UpdateTime time.Time `bson:"updateTime,omitempty" json:"updateTime"`
+
+	//分类
+	Category string `bson:"category,omitempty" json:"category"`
 }

+ 12 - 5
boxcost/db/model/material.go

@@ -13,13 +13,20 @@ type Unit struct {
 	CreateTime time.Time          `bson:"createTime,omitempty" json:"createTime"`
 }
 
+// 分类
+type Category struct {
+	Id         primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
+	Name       string             `bson:"name,omitempty" json:"name"`
+	CreateTime time.Time          `bson:"createTime,omitempty" json:"createTime"`
+}
+
 // 材料只能添加,不能修改
 type Material struct {
-	Id    primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
-	Name  string             `bson:"name,omitempty" json:"name"`
-	Type  string             `bson:"type,omitempty" json:"type"`
-	Price float64            `bson:"price,omitempty" json:"price"`
-	Unit  string             `bson:"unit,omitempty" json:"unit"`
+	Id       primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
+	Name     string             `bson:"name,omitempty" json:"name"`
+	Category string             `bson:"category,omitempty" json:"category"`
+	Price    float64            `bson:"price,omitempty" json:"price"`
+	Unit     string             `bson:"unit,omitempty" json:"unit"`
 
 	// 规格
 	Norm   string  `bson:"norm,omitempty" json:"norm"`

+ 16 - 8
boxcost/db/model/pack.go

@@ -22,14 +22,16 @@ type Pack struct {
 }
 
 type PackComponent struct {
-	Id        primitive.ObjectID `bson:"id,omitempty" json:"id"`
-	Name      string             `bson:"name,omitempty" json:"name"`
-	Thumbnail string             `bson:"thumbnail,omitempty" json:"thumbnail"`
+	Id        string `bson:"id,omitempty" json:"id"`
+	Name      string `bson:"name,omitempty" json:"name"`
+	Thumbnail string `bson:"thumbnail,omitempty" json:"thumbnail"`
+	//数量
+	Count int `bson:"count,omitempty" json:"count"`
 
 	//刀版图
 	Uv string `bson:"uv,omitempty" json:"uv"`
 
-	//拼版尺寸
+	//部件尺寸
 	UvSize string `bson:"uvSize,omitempty" json:"uvSize"`
 
 	//所有材料
@@ -39,17 +41,23 @@ type PackComponent struct {
 }
 
 type PackComponentMat struct {
-	Id    primitive.ObjectID `bson:"id,omitempty" json:"id"`
-	MatId primitive.ObjectID `bson:"matId,omitempty" json:"matId"`
+	Id string `bson:"id,omitempty" json:"id"`
 
 	//所有工艺
 	Crafts []*PackComponentMatCraft `bson:"crafts,omitempty" json:"crafts"`
+
+	MatInfo *Material `bson:"matInfo,omitempty" json:"matInfo"` //材料Id
 }
 
 type PackComponentMatCraft struct {
-	Id      primitive.ObjectID `bson:"id,omitempty" json:"id"`
-	CraftId primitive.ObjectID `bson:"craftId,omitempty" json:"craftId"`
+	Id string `bson:"id,omitempty" json:"id"`
 
 	//工艺尺寸
 	Size string `bson:"size,omitempty" json:"size"`
+
+	//工艺数量
+	Count int `bson:"count,omitempty" json:"count"`
+
+	//工艺信息
+	CraftInfo *Craft `bson:"craftInfo,omitempty" json:"craftInfo"` //材料Id
 }

+ 13 - 0
boxcost/db/model/price.go

@@ -0,0 +1,13 @@
+package model
+
+type PriceCalc struct {
+	Id       string `bson:"id,omitempty" json:"id"`
+	Category string `bson:"category,omitempty" json:"category"`
+	Name     string `bson:"name,omitempty" json:"name"`     //印刷通用计价
+	Remark   string `bson:"remark,omitempty" json:"remark"` //备注 板子(60)+起价(普通1200,逆向油1600)+超过10000份减板费
+
+	Pamam1 string
+	Pamam2 string
+	Pamam3 string
+	Pamam4 string
+}

+ 1 - 0
boxcost/db/model/supplier.go

@@ -12,6 +12,7 @@ type Supplier struct {
 	Name       string             `bson:"name,omitempty" json:"name"`
 	Address    string             `bson:"address,omitempty" json:"address"`
 	Phone      string             `bson:"phone,omitempty" json:"phone"`
+	Category   string             `bson:"category,omitempty" json:"category"`
 	CreateTime time.Time          `bson:"createTime,omitempty" json:"createTime"`
 	UpdateTime time.Time          `bson:"updateTime,omitempty" json:"updateTime"`
 }