package models import ( "errors" "zhiyuan/pkg/db" "github.com/gin-gonic/gin" ) type WorkProcessRequire struct { ID int64 `json:"id" prop:"add:false"` ProcessId int64 `json:"process_id" type:"int" prop:"add" search:"="` Name string `json:"name" label:"要点名称" type:"string" prop:"add edit" search:"like"` Content string `json:"content" label:"要点内容" type:"string" prop:"add edit"` Days int64 `json:"days" label:"反馈天数" type:"int" prop:"edit" default:"0"` Type int64 `json:"type" label:"类型" type:"int" prop:"edit" default:"0"` State int64 `json:"state" label:"状态" type:"int" prop:"edit" default:"0"` Quality int64 `json:"quality" label:"质检" type:"int" prop:"edit" default:"0"` QualityPhoto int64 `json:"qualityphoto" label:"质检拍照" type:"int" prop:"edit" default:"0"` Photograph string `json:"photograph" label:"质检标准" type:"string" prop:"edit"` QualityDays int64 `json:"quality_days" label:"整改时间" type:"int" prop:"edit" default:"0"` 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 select:false"` UpdatedAt int64 `json:"updated_at" prop:"add:false select:false"` db.BaseModel } func (WorkProcessRequire) TableName() string { return "zy_work_process_require" } func (WorkProcessRequire) ListPrivilege(c *gin.Context, data map[string]interface{}, s *db.Select) bool { return true } func (WorkProcessRequire) OnePrivilege(c *gin.Context, id int64) bool { return true } func (WorkProcessRequire) AddPrivilege(c *gin.Context, data map[string]interface{}, post map[string]interface{}) error { return nil } func (WorkProcessRequire) EditPrivilege(c *gin.Context, id int64, data map[string]interface{}, post map[string]interface{}) error { return nil } func (WorkProcessRequire) DelPrivilege(c *gin.Context, id int64) error { return nil } func (WorkProcessRequire) OrderField() string { return "order_at" } func (WorkProcessRequire) Page() bool { return false } func (WorkProcessRequire) Count() bool { return true } func (a WorkProcessRequire) GetOne(where map[string]interface{}, fields []string, retVal interface{}) (*WorkProcessRequire, error) { if retVal == nil { var work_process_require *WorkProcessRequire err := db.GetOne(a.TableName(), where, fields, &work_process_require) return work_process_require, err } else { err := db.GetOne(a.TableName(), where, fields, retVal) return nil, err } } func (a WorkProcessRequire) GetMulti(where map[string]interface{}, fields []string, retVal interface{}) ([]*WorkProcessRequire, error) { if retVal == nil { var work_process_require []*WorkProcessRequire err := db.GetMulti(a.TableName(), where, fields, &work_process_require) return work_process_require, err } else { err := db.GetMulti(a.TableName(), where, fields, retVal) return nil, err } } func (a WorkProcessRequire) GetOneRaw(where map[string]string, param map[string]interface{}, retVal interface{}) (*WorkProcessRequire, error) { work_process_require, err := a.GetMultiRaw(where, param, retVal) if err != nil { return nil, err } if len(work_process_require) == 0 { return nil, errors.New("empty record2") } return work_process_require[0], nil } func (a WorkProcessRequire) GetMultiRaw(where map[string]string, param map[string]interface{}, retVal interface{}) ([]*WorkProcessRequire, error) { field := "SELECT * FROM zy_work_process_require " if retVal == nil { var work_process_require []*WorkProcessRequire err := db.GetMultiRaw(field, where, param, &work_process_require) return work_process_require, err } else { err := db.GetMultiRaw(field, where, param, retVal) return nil, err } } func CopyWorkProcessRequires(requires []WorkProcessRequire, process_id int64, order int64) error { for i, require := range requires { _, err := require.Copy(process_id, order+int64(len(requires)-i)) if err != nil { return err } } return nil } func (model WorkProcessRequire) Copy(process_id int64, order int64) (int64, error) { id, err := db.InsertModel(db.Type(model), map[string]interface{}{ "process_id": process_id, "name": model.Name, "content": model.Content, "days": model.Days, "type": model.Type, "state": model.State, "order_at": order, }) if err != nil { return 0, err } return id, nil }