ソースを参照

fix:修复在线excel新增日期数据时,不会变更基础信息

Roc 6 ヶ月 前
コミット
ef1081641c
1 ファイル変更18 行追加26 行削除
  1. 18 26
      controllers/target.go

+ 18 - 26
controllers/target.go

@@ -3304,29 +3304,20 @@ func (this *TargetController) ExcelDataAdd() {
 		userId = 0
 	}
 
-	// 校验下当前用户是否有该指标的权限
-	count, err := models.GetCountManualUserClassify(userId, req.ClassifyId)
+	//获取账户所拥有权限的分类id集合
+	classifyIdList, err := data.GetUserManualClassifyIdList(userId)
 	if err != nil {
 		br.Msg = "获取分类数据失败"
-		br.ErrMsg = "获取分类数据失败,err:" + err.Error()
+		br.Msg = "获取拥有的分类数据失败,Err:" + err.Error()
 		return
 	}
-
-	if count <= 0 {
+	if !utils.InArrayByInt(classifyIdList, req.ClassifyId) {
 		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++ {
@@ -3414,6 +3405,20 @@ func (this *TargetController) ExcelDataAdd() {
 						continue
 					}
 
+					// 指标信息变更,需要更新
+					if frequency != target.Frequency || unit != target.Unit || req.ClassifyId != target.ClassifyId {
+						fmt.Println("更新指标频度或单位")
+						err = models.ModifyEdbinfo(target.TradeCode, unit, frequency, req.ClassifyId)
+						if err != nil {
+							fmt.Println("EditEdbinfo err:", err.Error())
+							return
+						}
+						// 指标信息变更
+						if _, isAdd := addEdbTradeMap[target.TradeCode]; !isAdd {
+							updateEdbTradeMap[target.TradeCode] = true
+						}
+					}
+
 					//判断指标数据是否已经存在
 					tmpDataMap, ok2 := edbCodeDataMap[target.TradeCode]
 					if !ok2 {
@@ -3469,19 +3474,6 @@ func (this *TargetController) ExcelDataAdd() {
 							// 指标数据变更
 							updateDataTradeMap[target.TradeCode] = true
 						}
-
-						if frequency != target.Frequency || unit != target.Unit || req.ClassifyId != target.ClassifyId {
-							fmt.Println("更新指标频度或单位")
-							err = models.ModifyEdbinfo(target.TradeCode, unit, frequency, req.ClassifyId)
-							if err != nil {
-								fmt.Println("EditEdbinfo err:", err.Error())
-								return
-							}
-							// 指标信息变更
-							if _, isAdd := addEdbTradeMap[target.TradeCode]; !isAdd {
-								updateEdbTradeMap[target.TradeCode] = true
-							}
-						}
 					} else { //数据不存在,进行新增操作
 						if target.TradeCode != "" && createDate != "" && closeVal != "" {
 							fmt.Println("新增")