|
@@ -3275,40 +3275,84 @@ func (this *TargetController) ExcelDataAdd() {
|
|
|
updateEdbTradeMap := make(map[string]bool)
|
|
|
updateDataTradeMap := make(map[string]bool)
|
|
|
defer func() {
|
|
|
- addRecordList := make([]*models.EdbinfoOpRecord, 0)
|
|
|
- for tradeCode := range addEdbTradeMap {
|
|
|
- addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
- TradeCode: tradeCode,
|
|
|
- Remark: "创建指标",
|
|
|
- UserId: sysUser.AdminId,
|
|
|
- UserName: sysUser.RealName,
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- }
|
|
|
- for tradeCode := range updateEdbTradeMap {
|
|
|
- addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
- TradeCode: tradeCode,
|
|
|
- Remark: "编辑指标",
|
|
|
- UserId: sysUser.AdminId,
|
|
|
- UserName: sysUser.RealName,
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- }
|
|
|
- for tradeCode := range updateDataTradeMap {
|
|
|
- addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
- TradeCode: tradeCode,
|
|
|
- Remark: "更新数据",
|
|
|
- UserId: sysUser.AdminId,
|
|
|
- UserName: sysUser.RealName,
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- }
|
|
|
- if len(addRecordList) > 0 {
|
|
|
- obj := models.EdbinfoOpRecord{}
|
|
|
- _ = obj.MulCreate(addRecordList)
|
|
|
- }
|
|
|
+ go func(addEdbTradeMap, updateEdbTradeMap, updateDataTradeMap map[string]bool) {
|
|
|
+ addRecordList := make([]*models.EdbinfoOpRecord, 0)
|
|
|
+ for tradeCode := range addEdbTradeMap {
|
|
|
+ addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
+ TradeCode: tradeCode,
|
|
|
+ Remark: "创建指标",
|
|
|
+ UserId: sysUser.AdminId,
|
|
|
+ UserName: sysUser.RealName,
|
|
|
+ CreateTime: time.Now(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ for tradeCode := range updateEdbTradeMap {
|
|
|
+ addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
+ TradeCode: tradeCode,
|
|
|
+ Remark: "编辑指标",
|
|
|
+ UserId: sysUser.AdminId,
|
|
|
+ UserName: sysUser.RealName,
|
|
|
+ CreateTime: time.Now(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ for tradeCode := range updateDataTradeMap {
|
|
|
+ addRecordList = append(addRecordList, &models.EdbinfoOpRecord{
|
|
|
+ TradeCode: tradeCode,
|
|
|
+ Remark: "更新数据",
|
|
|
+ UserId: sysUser.AdminId,
|
|
|
+ UserName: sysUser.RealName,
|
|
|
+ CreateTime: time.Now(),
|
|
|
+ })
|
|
|
+ }
|
|
|
+ if len(addRecordList) > 0 {
|
|
|
+ obj := models.EdbinfoOpRecord{}
|
|
|
+ _ = obj.MulCreate(addRecordList)
|
|
|
+ }
|
|
|
+
|
|
|
+ //将该指标的code加入到 “手工数据导入后刷新” 缓存
|
|
|
+ if utils.Re == nil {
|
|
|
+ for tradeCode := range updateDataTradeMap {
|
|
|
+ // 更新手工数据的最大最小值
|
|
|
+ data.ModifyManualEdbMaxMinDate(tradeCode)
|
|
|
+ //将该指标的code加入到 “手工数据导入后刷新” 缓存
|
|
|
+ err := utils.Rc.LPush(utils.CACHE_IMPORT_MANUAL_DATA, tradeCode)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println("CACHE_IMPORT_MANUAL_DATA LPush Err:" + err.Error())
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }(addEdbTradeMap, updateEdbTradeMap, updateDataTradeMap)
|
|
|
}()
|
|
|
|
|
|
+ //超管账号可以查看分类下的所有频度数据
|
|
|
+ userId := sysUser.AdminId
|
|
|
+ if sysUser.RoleTypeCode == utils.ROLE_TYPE_CODE_ADMIN {
|
|
|
+ userId = 0
|
|
|
+
|
|
|
+ // 校验下当前用户是否有该指标的权限
|
|
|
+ count, err := models.GetCountManualUserClassify(sysUser.AdminId, req.ClassifyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取分类数据失败"
|
|
|
+ br.ErrMsg = "获取分类数据失败,err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ if count <= 0 {
|
|
|
+ br.Msg = "无权访问"
|
|
|
+ br.ErrMsg = "无权访问"
|
|
|
+ br.IsSendEmail = false
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //获取账户所拥有权限的分类id集合
|
|
|
+ classifyIdList, err := data.GetUserManualClassifyIdList(userId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取分类数据失败"
|
|
|
+ br.Msg = "获取拥有的分类数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
//操作指标,新增指标及数据等
|
|
|
{
|
|
|
for i := 0; i < len(secNameList); i++ {
|
|
@@ -3391,6 +3435,11 @@ func (this *TargetController) ExcelDataAdd() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 没有该分类品种权限的话,那么就过滤
|
|
|
+ if !utils.InArrayByInt(classifyIdList, target.ClassifyId) {
|
|
|
+ continue
|
|
|
+ }
|
|
|
+
|
|
|
//判断指标数据是否已经存在
|
|
|
tmpDataMap, ok2 := edbCodeDataMap[target.TradeCode]
|
|
|
if !ok2 {
|