Przeglądaj źródła

盯盘运营经理-项目维度列表-运营数据详情

yangzian 3 lat temu
rodzic
commit
ff9fc728c3

+ 1 - 1
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/mapper/xml/MaterialStareMapper.xml

@@ -1729,7 +1729,7 @@
             `jeecg-boot`.sys_user_role sur,
             `jeecg-boot`.user_company c
         WHERE
-            r.role_code = #{roleCode}
+            r.role_code like concat('%',#{roleCode},'%')
           AND u.id = sur.user_id
           AND u.id = c.user_id
           AND r.id = sur.role_id

+ 28 - 5
jeecg-boot-material-view/src/main/java/org/jeecg/ctop/material/service/impl/MaterialStareServiceImpl.java

@@ -451,11 +451,21 @@ public class MaterialStareServiceImpl implements MaterialStareService {
     public Result getKuaiShouOperateInfo(Integer pageNum, int pageSize, String startTime, String endTime, String userId) {
         DecimalFormat decimalFormat = new DecimalFormat("0.00%");
 
-
+        String roleCode = materialStareMapper.getRoleCodeByUserId(userId);
+        Set<String> operatorUserIds = new HashSet<>();
 
         try {
-        //查询当前人员所有下级
-        Set<String> operatorUserIds = getAffiliateId(userId);
+
+            if ("admin".equals(roleCode)) {
+                //所有运营
+                List<KuaiShouOperateGroupVo> allOperationManagerList = materialStareMapper.getOperationManagerUser("Operation");
+                List<String> allManagerList = allOperationManagerList.stream().map(KuaiShouOperateGroupVo:: getUserId).collect(Collectors.toList());
+                operatorUserIds = new HashSet<>(allManagerList);
+            }else if (roleCode.contains("OperationManager")){
+                //查询当前人员所有下级
+                 operatorUserIds = getAffiliateId(userId);
+            }
+
         //2022-02-15 ==>> 20220215
         long startDate = Long.valueOf(DateUtils.getDateInteger(startTime));
         long entDate = Long.valueOf(DateUtils.getDateInteger(endTime));
@@ -512,9 +522,22 @@ public class MaterialStareServiceImpl implements MaterialStareService {
     @Override
     public Result exportKuaiShouOperateInfo(String startTime, String endTime, String userId, HttpServletResponse response) {
         DecimalFormat decimalFormat = new DecimalFormat("0.00%");
+        String roleCode = materialStareMapper.getRoleCodeByUserId(userId);
+        Set<String> operatorUserIds = new HashSet<>();
+
         try {
-        //查询当前人员所有下级
-        Set<String> operatorUserIds = getAffiliateId(userId);
+
+            if ("admin".equals(roleCode)) {
+                //所有运营
+                List<KuaiShouOperateGroupVo> allOperationManagerList = materialStareMapper.getOperationManagerUser("Operation");
+                List<String> allManagerList = allOperationManagerList.stream().map(KuaiShouOperateGroupVo:: getUserId).collect(Collectors.toList());
+                operatorUserIds = new HashSet<>(allManagerList);
+            }else if (roleCode.contains("OperationManager")){
+                //查询当前人员所有下级
+                operatorUserIds = getAffiliateId(userId);
+            }
+
+
         //2022-02-15 ==>> 20220215
         long startDate = Long.valueOf(DateUtils.getDateInteger(startTime));
         long entDate = Long.valueOf(DateUtils.getDateInteger(endTime));