package data import ( "eta/eta_task/models/data_manage" "eta/eta_task/utils" "sync" ) var lock sync.Mutex // 同步钢炼数据 func SyncGlDataBase() { lock.Lock() var err error defer func() { if err != nil { utils.FileLog.Info("SyncGlDataBase Err:" + err.Error()) } }() var condition string var pars []interface{} condition += " AND source=? " pars = append(pars, utils.DATA_SOURCE_GL) items, err := data_manage.GetEdbInfoByCondition(condition, pars, 0) if err != nil { return } for _, v := range items { err = data_manage.RefreshEdbDataByGl(v.EdbInfoId, v.EdbCode, v.StartDate.Format(utils.FormatDate), "") if err != nil { return } item, err := data_manage.GetEdbInfoMaxAndMinInfo(v.Source, v.EdbCode) if err != nil { return } if item != nil { err = data_manage.ModifyEdbInfoMaxAndMinInfo(v.EdbInfoId, item) if err != nil { return } } } lock.Unlock() } var manualLock sync.Mutex // 同步手工数据 func SyncManualDataBase() { var err error manualLock.Lock() defer func() { manualLock.Unlock() if err != nil { utils.FileLog.Info("SyncManualDataBase Err:" + err.Error()) go utils.SendEmailByHongze("同步手工数据失败", "同步手工数据失败 Err:"+err.Error(), utils.RefreshEdbInfoEmailSendToUsers, "", "") } }() var condition string var pars []interface{} condition += " AND source=? " //condition += " AND edb_code='W000156' " pars = append(pars, utils.DATA_SOURCE_MANUAL) items, err := data_manage.GetEdbInfoByCondition(condition, pars, 0) if err != nil { return } for _, v := range items { err = data_manage.RefreshManual(v) if err != nil { return } item, err := data_manage.GetEdbInfoMaxAndMinInfo(v.Source, v.EdbCode) if err != nil { return } if item != nil { err = data_manage.ModifyEdbInfoMaxAndMinInfo(v.EdbInfoId, item) if err != nil { return } } } }