123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- package final
- import (
- "fmt"
- "strings"
- "zhiyuan/pkg/db"
- "github.com/gin-gonic/gin"
- )
- type FinalMatAuxiliaryBrand struct {
- ID int64 `json:"id" prop:"add:false"`
- AuxiliaryId int64 `json:"auxiliaryId" label:"辅材类型" type:"int" prop:"edit" search:"="`
- Name string `json:"name" label:"名称" type:"string" prop:"add edit" search:"like"`
- SupplierIds string `json:"supplierIds" label:"材料商" type:"string" prop:"add edit"`
- AreaId int64 `json:"area_id" label:"区域" type:"int" prop:"add edit" search:"="`
- OrderAt int64 `json:"order_at" prop:"add:false select:false"`
- DeletedAt int64 `json:"deleted_at" prop:"add:false select:false"`
- CreatedAt int64 `json:"created_at" prop:"add:false"`
- UpdatedAt int64 `json:"updated_at" prop:"add:false"`
- db.BaseModel
- }
- func (FinalMatAuxiliaryBrand) TableName() string {
- return "zy_final_mat_auxiliary_brand"
- }
- func (model FinalMatAuxiliaryBrand) ListPrivilege(c *gin.Context, data map[string]interface{}, s *db.Select) bool {
- return true
- }
- func (model FinalMatAuxiliaryBrand) ListAfter(c *gin.Context, data map[string]interface{}, list []map[string]interface{}) []map[string]interface{} {
- ids := make([]int64, 0)
- idmap := make(map[int64]int)
- for i, v := range list {
- id, _ := db.ToInt64(v["id"])
- ids = append(ids, id)
- idmap[id] = i
- }
- datas, _ := db.GetModelMap(db.Type(FinalMatAuxiliaryItemMoblie{}), map[string]interface{}{
- fmt.Sprintf("`%s`.`brandId` in", FinalMatAuxiliaryItemMoblie{}.TableName()): ids,
- fmt.Sprintf("`%s`.`deleted_at`", FinalMatAuxiliaryItemMoblie{}.TableName()): 0,
- }, nil)
- for _, v := range datas {
- id, _ := db.ToInt64(v["brandId"])
- if n, ok := idmap[id]; ok {
- items := make([]map[string]interface{}, 0)
- if is, ok := list[n]["items"].([]map[string]interface{}); ok {
- items = is
- }
- items = append(items, v)
- list[n]["items"] = items
- list[n]["item_"+db.ToString(v["itemId"])] = v["matId"]
- list[n]["item_"+db.ToString(v["itemId"])+"_name"] = v["name"]
- }
- }
- return list
- }
- func (FinalMatAuxiliaryBrand) OnePrivilege(c *gin.Context, id int64) bool {
- return true
- }
- func (FinalMatAuxiliaryBrand) AddPrivilege(c *gin.Context, data map[string]interface{}, post map[string]interface{}) error {
- return nil
- }
- func (FinalMatAuxiliaryBrand) EditPrivilege(c *gin.Context, id int64, data map[string]interface{}, post map[string]interface{}) error {
- for name, value := range post {
- s := strings.Split(name, "_")
- if len(s) == 2 && s[0] == "item" {
- if itemId, ok := db.ToInt64(s[1]); ok {
- matId, _ := db.ToInt64(value)
- var item FinalMatAuxiliaryItem
- db.GetModel(map[string]interface{}{
- "brandId": id,
- "itemId": itemId,
- "deleted_at": 0,
- }, &item)
- if item.ID == 0 {
- _, err := db.InsertModel(db.Type(item), map[string]interface{}{
- "brandId": id,
- "itemId": itemId,
- "matId": matId,
- })
- if err != nil {
- return err
- }
- } else {
- err := db.UpdateModel(db.Type(item), item.ID, map[string]interface{}{
- "matId": matId,
- })
- if err != nil {
- return err
- }
- }
- }
- }
- }
- return nil
- }
- func (FinalMatAuxiliaryBrand) DelPrivilege(c *gin.Context, id int64) error {
- return nil
- }
- func (FinalMatAuxiliaryBrand) OrderField() string {
- return "order_at"
- }
- func (FinalMatAuxiliaryBrand) Page() bool {
- return false
- }
- func (FinalMatAuxiliaryBrand) Count() bool {
- return true
- }
- func (model FinalMatAuxiliaryBrand) LeftJoin(data map[string]interface{}, s *db.Select) []db.JoinModel {
- return []db.JoinModel{}
- }
|