package Performance import ( db "ERP_salary/initialize" "ERP_salary/logs" "sync" "time" "gogs.baozhida.cn/zoie/ERP_libs/lib" ) // 绩效点 type PerformanceTarget struct { Id int `json:"Id" gorm:"primaryKey;autoIncrement;comment:主键编码"` T_name string `json:"T_name" gorm:"size:128"` // 绩效点名称 T_operator string `json:"T_operator" gorm:"size:128"` // 运算符 <,≥ T_assess_points int `json:"T_assess_points" gorm:"size:4"` // 月考试绩效点数量 T_base float64 `json:"T_base" gorm:"type:decimal(10,1)"` // 无责底薪 T_post float64 `json:"T_post" gorm:"type:decimal(10,1)"` // 补助 T_perf float64 `json:"T_perf" gorm:"type:decimal(10,1)"` // 绩效金额 T_State int `json:"T_State" gorm:"column:t__state;size(2);default(1)"` // 0删除 1 正常 CreateTime time.Time `orm:"column(create_time);type(timestamp);null;auto_now_add"` // auto_now_add 第一次保存时才设置时间 UpdateTime time.Time `orm:"column(update_time);type(timestamp);null;auto_now"` // auto_now 每次 model 保存时都会对时间自动更新 } func (e *PerformanceTarget) TableName() string { return "performance_target" } var PerformanceTarget_list *sync.Map func init() { //注册模型 PerformanceTarget_list = new(sync.Map) } // 获取全部 func Read_PerformanceTarget_All_Map() { logs.Println("=========== 初始化考核指标 =========") var r []PerformanceTarget err := db.DB.Model(&PerformanceTarget{}). Where("t__state = ?", 1). Find(&r).Error if err != nil { logs.Error(lib.FuncName(), err) return } for _, v := range r { PerformanceTarget_list.Store(v.Id, v) } } func Read_PerformanceTarget_Get(Id int) PerformanceTarget { v, ok := PerformanceTarget_list.Load(Id) if ok { return v.(PerformanceTarget) } else { return PerformanceTarget{} } }