ziwen 1 year ago
parent
commit
4a30dcbaae

+ 117 - 0
controllers/data_manage/edb_info.go

@@ -6,7 +6,9 @@ import (
 	"github.com/rdlucklib/rdluck_tools/paging"
 	"hongze/hz_eta_api/controllers"
 	"hongze/hz_eta_api/models"
+	"hongze/hz_eta_api/models/company"
 	"hongze/hz_eta_api/models/data_manage"
+	"hongze/hz_eta_api/models/system"
 	"hongze/hz_eta_api/services/alarm_msg"
 	"hongze/hz_eta_api/services/data"
 	"hongze/hz_eta_api/services/elastic"
@@ -4180,3 +4182,118 @@ func (this *EdbInfoController) GetEdbBeforeAndAfterDateData() {
 	br.Msg = "获取成功"
 	br.Data = resp
 }
+
+
+// EdbChartAdminList
+// @Title 获取创建人员分组
+// @Description 获取创建人员分组
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库"
+// @Success 200 {object} company.DepartmentGroupSellersResp
+// @router /edb_chart/adminList [get]
+func (this *EdbInfoController) EdbChartAdminList() {
+	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
+	}
+
+	source, _ := this.GetInt("Source", 0)
+	if source <= 0 || source > 5 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	idList, err := data.GetEdbChartAdminList(source)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	fmt.Println("idlist:",idList)
+	systemAdminMap := make(map[int]*system.Admin)
+	departmentMap := make(map[string]string)
+	departmentAdminMap := make(map[int]string)
+	groupMap := make(map[string]string)
+	systemAdminList, err := system.GetAdminListByIdListWithoutEnable(idList)
+	if err != nil {
+		br.Msg = "获取用户列表失败"
+		br.ErrMsg = "获取用户列表失败,Err:" + err.Error()
+		return
+	}
+
+	for _, v := range systemAdminList {
+		systemAdminMap[v.AdminId] = v
+		departmentMap[v.DepartmentName] = v.DepartmentName
+		departmentAdminMap[v.AdminId] = v.DepartmentName
+		groupMap[v.GroupName] = v.DepartmentName
+	}
+
+	depList := make([]company.DepartmentGroupAdmins, 0)
+
+	i := 1
+	for _, v := range departmentMap {
+		item := company.DepartmentGroupAdmins{
+			AdminId:      "dep_" + strconv.Itoa(i),
+			RealName:     v,
+		}
+		i++
+		depList = append(depList, item)
+	}
+
+	for k:=0;k<len(depList);k++{
+		for k1, v1 := range groupMap {
+			if v1 == depList[k].RealName && v1 != "" {
+				item := &company.DepartmentGroupAdmins{
+					AdminId:      "group_" + strconv.Itoa(k),
+					RealName:     k1,
+				}
+				depList[k].ChildrenList = append(depList[k].ChildrenList, item)
+			}
+		}
+	}
+
+
+
+	for _, admin := range systemAdminList {
+		for i, v := range depList {
+			for _, group := range v.ChildrenList {
+				if admin.GroupName == group.RealName {
+					item := &company.DepartmentGroupAdmins{
+						AdminId:      strconv.Itoa(admin.AdminId),
+						RealName:     admin.RealName,
+						RoleTypeCode: admin.RoleTypeCode,
+						Authority:    admin.Authority,
+					}
+					if group.RealName != "" {
+						group.ChildrenList = append(group.ChildrenList, item)
+					} else {
+						depList[i].ChildrenList = append(depList[i].ChildrenList, item)
+					}
+				}
+			}
+		}
+	}
+
+	for _, groupList := range depList {
+		for k, v := range groupList.ChildrenList {
+			if v.RealName == "" {
+				groupList.ChildrenList = append(groupList.ChildrenList[:k], groupList.ChildrenList[k+1:]...)
+			}
+		}
+	}
+
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = depList
+}

+ 10 - 0
models/company/company_seller.go

@@ -23,3 +23,13 @@ type DepartmentGroupSellers struct {
 	RoleTypeCode string                   `description:"角色编码"`
 	Authority    int                      `description:"管理权限,0:无,1:部门负责人,2:小组负责人,或者ficc销售主管,4:ficc销售组长"`
 }
+
+
+type DepartmentGroupAdmins struct {
+	AdminId string `description:"系统用户id"`
+	//AdminName string `description:"系统用户名称"`
+	RealName     string                   `description:"用户真实名称"`
+	ChildrenList []*DepartmentGroupAdmins `description:"角色列表"`
+	RoleTypeCode string                   `description:"角色编码"`
+	Authority    int                      `description:"管理权限,0:无,1:部门负责人,2:小组负责人,或者ficc销售主管,4:ficc销售组长"`
+}

+ 9 - 0
models/data_manage/chart_info.go

@@ -1766,3 +1766,12 @@ func GetChartInfoByAdminIdAndClassify(sourceList []int, adminId, classifyId int)
 	_, err = o.Raw(sql, sourceList, adminId, classifyId).QueryRows(&items)
 	return
 }
+
+// GetChartInfoAdminList 根据条件获取图表数据了列表
+func GetChartInfoAdminList() (items []int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT sys_user_id FROM chart_info GROUP BY sys_user_id `
+
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}

+ 9 - 0
models/data_manage/edb_info.go

@@ -1762,3 +1762,12 @@ type BeforeAndAfterDateDataResp struct {
 	List []*EdbDataList `description:"list"`
 	Date string         `description:"实际日期"`
 }
+
+// GetEdbInfoAdminList
+func GetEdbInfoAdminList(edbType int) (list []int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT sys_user_id FROM edb_info WHERE edb_info_type = ? GROUP BY sys_user_id  `
+
+	_,err = o.Raw(sql, edbType).QueryRows(&list)
+	return
+}

+ 9 - 0
models/data_manage/mysteel_chemical_index.go

@@ -308,3 +308,12 @@ func ModifyMysteelChemicalIndexUserIdByCodeList(edbIdList []string, userId int,
 	_, err = o.Raw(sql, userId, userName, edbIdList).Exec()
 	return
 }
+
+// GetMysteelChemicalIndexAdminList 获取所有指标创建人
+func GetMysteelChemicalIndexAdminList() (list []int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := ` SELECT sys_user_id FROM base_from_mysteel_chemical_index GROUP BY sys_user_id `
+
+	_, err = o.Raw(sql).QueryRows(&list)
+	return
+}

+ 7 - 0
models/target.go

@@ -1436,3 +1436,10 @@ func ModifyEdbinfoUserIdByCodeList(edbCodeList []string, userId int) (err error)
 	_, err = o.Raw(sql, userId, edbCodeList).Exec()
 	return
 }
+
+func GetEdbInfoAdminList() (list []int, err error) {
+	sql := `SELECT user_id FROM edbinfo GROUP BY user_id `
+	o := orm.NewOrmUsingDB("edb")
+	_,err = o.Raw(sql).QueryRows(&list)
+	return
+}

+ 9 - 0
routers/commentsRouter.go

@@ -1924,6 +1924,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["hongze/hz_eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["hongze/hz_eta_api/controllers/data_manage:EdbInfoController"],
+        beego.ControllerComments{
+            Method: "EdbChartAdminList",
+            Router: `/edb_chart/adminList`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["hongze/hz_eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["hongze/hz_eta_api/controllers/data_manage:EdbInfoController"],
         beego.ControllerComments{
             Method: "MoveEdbChartUser",

+ 46 - 6
services/data/edb_info.go

@@ -2031,8 +2031,8 @@ func GetMoveEdbChartList(source, userId int, keyword, classify string, startSize
 
 	case 2: //钢联化工数据库
 		if keyword != `` {
-			condition += " AND (index_name like ? OR index_code like ?) "
-			pars = append(pars, "%"+keyword+"%", "%"+keyword+"%")
+			condition += " AND (index_name like ? OR index_code like ? OR sys_user_real_name like ? ) "
+			pars = append(pars, "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%")
 		}
 		if userId > 0 {
 			condition += ` AND sys_user_id = ? `
@@ -2065,8 +2065,8 @@ func GetMoveEdbChartList(source, userId int, keyword, classify string, startSize
 		}
 	case 3, 4: //ETA指标库、ETA预测指标
 		if keyword != `` {
-			condition += " AND (edb_code like ? OR edb_name like ?) "
-			pars = append(pars, "%"+keyword+"%", "%"+keyword+"%")
+			condition += " AND (edb_code like ? OR edb_name like ? OR sys_user_real_name like ? ) "
+			pars = append(pars, "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%")
 		}
 		if userId > 0 {
 			condition += ` AND sys_user_id = ? `
@@ -2105,8 +2105,8 @@ func GetMoveEdbChartList(source, userId int, keyword, classify string, startSize
 		}
 	case 5: //图库
 		if keyword != `` {
-			condition += " AND chart_name like ?  "
-			pars = append(pars, "%"+keyword+"%")
+			condition += " AND (chart_name like ?  OR sys_user_real_name like ? ) "
+			pars = append(pars, "%"+keyword+"%", "%"+keyword+"%")
 		}
 		if userId > 0 {
 			condition += ` AND sys_user_id = ? `
@@ -2962,3 +2962,43 @@ func getEdbRuleTitle(edbInfo, parentEdbInfo *data_manage.EdbInfo, childList []da
 
 	return
 }
+
+
+// GetEdbChartAdminList
+// @param source 来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库
+func GetEdbChartAdminList(source int) (list []int, err error) {
+	switch source {
+	case 1: //手工数据指标
+		list, err = models.GetEdbInfoAdminList()
+		if err != nil {
+			return
+		}
+
+	case 2: //钢联化工数据库
+		list, err = data_manage.GetMysteelChemicalIndexAdminList()
+		if err != nil {
+			return
+		}
+
+	case 3: //ETA指标库
+		list, err = data_manage.GetEdbInfoAdminList(0)
+		if err != nil {
+			return
+		}
+
+	case 4: //ETA预测指标
+		list, err = data_manage.GetEdbInfoAdminList(1)
+		if err != nil {
+			return
+		}
+	case 5: //图库
+		list, err = data_manage.GetChartInfoAdminList()
+		if err != nil {
+			return
+		}
+	default:
+		return
+	}
+
+	return
+}