Browse Source

fix:调整资产转移接口,新增资产全部转移接口

Roc 1 year ago
parent
commit
03e26c1769

+ 62 - 2
controllers/data_manage/edb_info.go

@@ -4012,11 +4012,11 @@ func (this *EdbInfoController) MoveEdbChartUser() {
 	err, errMsg := data.MoveEdbChart(req.Source, req.NewUserId, req.IsSelectAll, req.DataIdList, req.Keyword, req.ClassifyId)
 	if err != nil {
 		//br.Success = true
-		br.Msg = "获取失败"
+		br.Msg = "移动失败"
 		if errMsg != `` {
 			br.Msg = errMsg
 		}
-		br.ErrMsg = "获取失败,Err:" + err.Error()
+		br.ErrMsg = "移动失败,Err:" + err.Error()
 		return
 	}
 	br.Ret = 200
@@ -6015,3 +6015,63 @@ func (this *EdbInfoController) SmmEdbInfoBatchAdd() {
 	br.Data = resp
 	br.IsAddLog = true
 }
+
+// MoveAllEdbChartUser
+// @Title 通过原创建人转移指标/图表创建人接口
+// @Description 通过原创建人转移指标/图表创建人接口
+// @Param	request	body data_manage.MoveAllEdbChartReq true "type json string"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/all/change_user [post]
+func (this *EdbInfoController) MoveAllEdbChartUser() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	var req data_manage.MoveAllEdbChartReq
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+
+	if req.Source <= 0 || req.Source > 5 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+	if req.OldUserId <= 0 {
+		br.Msg = "请选择旧的创建人"
+		br.IsSendEmail = false
+		return
+	}
+	if req.NewUserId <= 0 {
+		br.Msg = "请选择新的创建人"
+		br.IsSendEmail = false
+		return
+	}
+
+	err, errMsg := data.MoveAllEdbChart(req.Source, req.OldUserId, req.NewUserId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "移动失败"
+		if errMsg != `` {
+			br.Msg = errMsg
+		}
+		br.ErrMsg = "移动失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.IsAddLog = true
+	br.Success = true
+	br.Msg = "移动成功"
+}

+ 15 - 0
models/data_manage/chart_info.go

@@ -1584,6 +1584,21 @@ func ModifyChartInfoUserIdByCodeList(edbIdList []string, userId int, userName st
 	return
 }
 
+// ModifyChartInfoUserIdByOldUserId
+// @Description:  根据旧的用户id修改创建人
+// @author: Roc
+// @datetime 2024-03-25 19:14:59
+// @param oldUserId int
+// @param userId int
+// @param userName string
+// @return err error
+func ModifyChartInfoUserIdByOldUserId(oldUserId, userId int, userName string) (err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `UPDATE chart_info SET sys_user_id=?,sys_user_real_name=? WHERE sys_user_id=? `
+	_, err = o.Raw(sql, userId, userName, oldUserId).Exec()
+	return
+}
+
 // BarChartInfoReq 柱方图预览请求数据
 type BarChartInfoReq struct {
 	EdbInfoIdList []BarChartInfoEdbItemReq `description:"指标信息"`

+ 22 - 0
models/data_manage/edb_info.go

@@ -1570,6 +1570,21 @@ func ModifyEdbInfoUserIdByCodeList(edbIdList []string, userId int, userName stri
 	return
 }
 
+// ModifyEdbInfoUserIdByOldUserId
+// @Description:  根据旧用户id修改新用户id
+// @author: Roc
+// @datetime 2024-03-25 19:17:09
+// @param edbIdList []string
+// @param userId int
+// @param userName string
+// @return err error
+func ModifyEdbInfoUserIdByOldUserId(oldUserId, edbInfoType, userId int, userName string) (err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `UPDATE edb_info SET sys_user_id=?,sys_user_real_name=? WHERE sys_user_id=? and edb_info_type = ?`
+	_, err = o.Raw(sql, userId, userName, oldUserId, edbInfoType).Exec()
+	return
+}
+
 // MoveEdbChartList 图表/指标信息
 type MoveEdbChartList struct {
 	DataId         string `description:"指标/图表唯一id"`
@@ -1596,6 +1611,13 @@ type MoveEdbChartReq struct {
 	Keyword     string   `description:"关键字"`
 }
 
+// MoveAllEdbChartReq 转移所有的指标/图表的请求
+type MoveAllEdbChartReq struct {
+	Source    int `description:"来源id"`
+	OldUserId int `description:"旧的创建人id"`
+	NewUserId int `description:"新的创建人id"`
+}
+
 type EdbChartClassifyResp struct {
 	List []*EdbChartClassify
 }

+ 9 - 0
routers/commentsRouter.go

@@ -2815,6 +2815,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
+        beego.ControllerComments{
+            Method: "MoveAllEdbChartUser",
+            Router: `/edb_chart/all/change_user`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
         beego.ControllerComments{
             Method: "MoveEdbChartUser",

+ 24 - 42
services/data/edb_info.go

@@ -3298,49 +3298,31 @@ func MoveAllEdbChart(source, oldUserId, userId int) (err error, errMsg string) {
 	case 2: //钢联化工数据库
 		// 修改创建人
 		err = data_manage.ModifyMysteelChemicalIndexUserIdByOldUserId(oldUserId, adminInfo.AdminId, adminInfo.RealName)
-	case 3, 4: //ETA指标库、ETA预测指标
-		tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
-		if tmpErr != nil {
-			err = tmpErr
-			return
-		}
-		if len(tmpList) > 0 {
-			for _, v := range tmpList {
-				if v.SysUserId == userId {
-					errMsg = "新创建人不可和原创建人一致"
-					err = errors.New(errMsg)
-					return
-				}
-			}
-			// 修改创建人
-			err = data_manage.ModifyEdbInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
-
-			// 移除当前用户的不可操作权限
-			{
-				obj := data_manage.EdbInfoNoPermissionAdmin{}
-				for _, v := range dataId {
-					edbInfoId, _ := strconv.Atoi(v)
-					go obj.DeleteByEdbInfoIdAndAdminId(edbInfoId, adminInfo.AdminId)
-				}
-			}
-		}
+	case 3: //ETA指标库
+		// 修改创建人
+		err = data_manage.ModifyEdbInfoUserIdByOldUserId(oldUserId, 0, adminInfo.AdminId, adminInfo.RealName)
+		// 移除当前用户的不可操作权限
+		//{
+		//	obj := data_manage.EdbInfoNoPermissionAdmin{}
+		//	for _, v := range dataId {
+		//		edbInfoId, _ := strconv.Atoi(v)
+		//		go obj.DeleteByEdbInfoIdAndAdminId(edbInfoId, adminInfo.AdminId)
+		//	}
+		//}
+	case 4: //ETA预测指标
+		// 修改创建人
+		err = data_manage.ModifyEdbInfoUserIdByOldUserId(oldUserId, 1, adminInfo.AdminId, adminInfo.RealName)
+		// 移除当前用户的不可操作权限
+		//{
+		//	obj := data_manage.EdbInfoNoPermissionAdmin{}
+		//	for _, v := range dataId {
+		//		edbInfoId, _ := strconv.Atoi(v)
+		//		go obj.DeleteByEdbInfoIdAndAdminId(edbInfoId, adminInfo.AdminId)
+		//	}
+		//}
 	case 5: //图库
-		tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
-		if tmpErr != nil {
-			err = tmpErr
-			return
-		}
-		if len(tmpList) > 0 {
-			for _, v := range tmpList {
-				if v.SysUserId == userId {
-					errMsg = "新创建人不可和原创建人一致"
-					err = errors.New(errMsg)
-					return
-				}
-			}
-			// 修改创建人
-			err = data_manage.ModifyChartInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
-		}
+		// 修改创建人
+		err = data_manage.ModifyChartInfoUserIdByOldUserId(oldUserId, adminInfo.AdminId, adminInfo.RealName)
 	default:
 		return
 	}