shudonghui há 1 ano atrás
pai
commit
e2049df65f
17 ficheiros alterados com 189 adições e 77 exclusões
  1. 0 1
      sop-api/src/main/java/com/qmth/sop/server/api/CrmAnalyseController.java
  2. 18 17
      sop-business/src/main/java/com/qmth/sop/business/mapper/CrmAnalyseMapper.java
  3. 3 2
      sop-business/src/main/java/com/qmth/sop/business/mapper/DeviceMonitorMapper.java
  4. 2 1
      sop-business/src/main/java/com/qmth/sop/business/mapper/QualityAnalyseMapper.java
  5. 2 1
      sop-business/src/main/java/com/qmth/sop/business/mapper/ServiceAnalyseMapper.java
  6. 2 1
      sop-business/src/main/java/com/qmth/sop/business/mapper/SopAnalyseMapper.java
  7. 40 15
      sop-business/src/main/java/com/qmth/sop/business/service/impl/CrmAnalyseServiceImpl.java
  8. 13 3
      sop-business/src/main/java/com/qmth/sop/business/service/impl/DeviceMonitorServiceImpl.java
  9. 14 14
      sop-business/src/main/java/com/qmth/sop/business/service/impl/QualityAnalyseServiceImpl.java
  10. 9 3
      sop-business/src/main/java/com/qmth/sop/business/service/impl/ServiceAnalyseServiceImpl.java
  11. 18 13
      sop-business/src/main/java/com/qmth/sop/business/service/impl/SopAnalyseServiceImpl.java
  12. 4 0
      sop-business/src/main/java/com/qmth/sop/business/service/impl/SopScheduleServiceImpl.java
  13. 35 3
      sop-business/src/main/resources/mapper/CrmAnalyseMapper.xml
  14. 14 0
      sop-business/src/main/resources/mapper/DeviceMonitorMapper.xml
  15. 5 1
      sop-business/src/main/resources/mapper/QualityAnalyseMapper.xml
  16. 5 1
      sop-business/src/main/resources/mapper/ServiceAnalyseMapper.xml
  17. 5 1
      sop-business/src/main/resources/mapper/SopAnalyseMapper.xml

+ 0 - 1
sop-api/src/main/java/com/qmth/sop/server/api/CrmAnalyseController.java

@@ -182,7 +182,6 @@ public class CrmAnalyseController {
     }
 
     //派单累计 服务人员累计
-    @Aac(auth=false)
     @ApiOperation(value = "派单累计 服务人员累计")
     @RequestMapping(value = "/project/count", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "项目派单完成率详细", response = CrmAnalyseResult.class)})

+ 18 - 17
sop-business/src/main/java/com/qmth/sop/business/mapper/CrmAnalyseMapper.java

@@ -3,6 +3,7 @@ package com.qmth.sop.business.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.CrmAnalyseResult;
 import com.qmth.sop.business.bean.result.TBCrmResult;
 import com.qmth.sop.business.entity.TBCrm;
@@ -21,37 +22,37 @@ import java.util.Map;
 public interface CrmAnalyseMapper extends BaseMapper<TBCrm> {
 
 
-    Map<String,Object> countCustomType(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+    Map<String,Object> countCustomType(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("dpr") DataPermissionDto dpr);
 
-    IPage<TBCrmResult> crmDetail(Page<Object> iPage, @Param("startTime") Long startTime,@Param("endTime") Long endTime, @Param("month") String month, @Param("crmYear") String crmYear, @Param("type") String type,@Param("supplierId") Long supplierId,@Param("regionId") Long regionId,@Param("serviceId") Long serviceId);
+    IPage<TBCrmResult> crmDetail(Page<Object> iPage, @Param("startTime") Long startTime,@Param("endTime") Long endTime, @Param("month") String month, @Param("crmYear") String crmYear, @Param("type") String type,@Param("supplierId") Long supplierId,@Param("regionId") Long regionId,@Param("serviceId") Long serviceId,@Param("dpr") DataPermissionDto dpr);
 
-    default IPage<TBCrmResult> crmDetail(Page<Object> iPage,Long startTime, Long endTime, String type) {
-        return crmDetail(iPage,startTime,endTime,null,null,type,null,null,null);
+    default IPage<TBCrmResult> crmDetail(Page<Object> iPage,Long startTime, Long endTime, String type,DataPermissionDto dpr) {
+        return crmDetail(iPage,startTime,endTime,null,null,type,null,null,null,dpr);
     }
 
-    List<Map<String,String>> monthly(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("type") String type);
+    List<Map<String,String>> monthly(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("type") String type,@Param("dpr") DataPermissionDto dpr);
 
-    default IPage<TBCrmResult> crmDetail(Page<Object> iPage, String year, String month, String type) {
-        return crmDetail(iPage,null,null,month,year,type,null,null,null);
+    default IPage<TBCrmResult> crmDetail(Page<Object> iPage, String year, String month, String type,DataPermissionDto dpr) {
+        return crmDetail(iPage,null,null,month,year,type,null,null,null,dpr);
     }
 
-    List<CrmAnalyseResult> supplier(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+    List<CrmAnalyseResult> supplier(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("dpr") DataPermissionDto dpr);
 
-    default IPage<TBCrmResult> crmDetailSupplier(Page<Object> iPage, Long startTime, Long endTime,  Long supplierId) {
-        return crmDetail(iPage,startTime,endTime,null,null,null,supplierId,null,null);
+    default IPage<TBCrmResult> crmDetailSupplier(Page<Object> iPage, Long startTime, Long endTime,  Long supplierId,DataPermissionDto dpr) {
+        return crmDetail(iPage,startTime,endTime,null,null,null,supplierId,null,null,dpr);
     }
 
-    List<CrmAnalyseResult> region(@Param("startTime") Long startTime,@Param("endTime") Long endTime, @Param("type") String type);
+    List<CrmAnalyseResult> region(@Param("startTime") Long startTime,@Param("endTime") Long endTime, @Param("type") String type,@Param("dpr") DataPermissionDto dpr);
 
-    default IPage<TBCrmResult> crmDetail(Page<Object> iPage,  Long startTime, Long endTime, Long regionId, String type) {
-        return crmDetail(iPage,startTime,endTime,null,null,type,null,regionId,null);
+    default IPage<TBCrmResult> crmDetail(Page<Object> iPage,  Long startTime, Long endTime, Long regionId, String type,DataPermissionDto dpr) {
+        return crmDetail(iPage,startTime,endTime,null,null,type,null,regionId,null,dpr);
     }
 
-    default IPage<TBCrmResult> crmDetail(Page<Object> iPage, Long serviceId, Long startTime, Long endTime) {
-        return crmDetail(iPage,startTime,endTime,null,null,null,null,null,serviceId);
+    default IPage<TBCrmResult> crmDetail(Page<Object> iPage, Long serviceId, Long startTime, Long endTime,DataPermissionDto dpr) {
+        return crmDetail(iPage,startTime,endTime,null,null,null,null,null,serviceId,dpr);
     }
 
-    List<CrmAnalyseResult> project(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+    List<CrmAnalyseResult> project(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("dpr") DataPermissionDto dpr);
 
-    Map<String, Object> projectCount(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+    Map<String, Object> projectCount(@Param("startTime") Long startTime,@Param("endTime") Long endTime,@Param("dpr") DataPermissionDto dpr);
 }

+ 3 - 2
sop-business/src/main/java/com/qmth/sop/business/mapper/DeviceMonitorMapper.java

@@ -1,6 +1,7 @@
 package com.qmth.sop.business.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.entity.SysDevice;
 import org.apache.ibatis.annotations.Param;
 
@@ -21,7 +22,7 @@ public interface DeviceMonitorMapper extends BaseMapper<SysDevice> {
 
     List<Map<String, Object>> countByModel(@Param("supplierId") Long supplierId);
 
-    Map<String, Object> countByServiceUnit();
+    Map<String, Object> countByServiceUnit(@Param("dpr") DataPermissionDto dpr);
 
-    List<Map<String, Object>> countByServiceUnitDetail();
+    List<Map<String, Object>> countByServiceUnitDetail(@Param("dpr") DataPermissionDto dpr);
 }

+ 2 - 1
sop-business/src/main/java/com/qmth/sop/business/mapper/QualityAnalyseMapper.java

@@ -3,6 +3,7 @@ package com.qmth.sop.business.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.TBQualityProblemApplyResult;
 import com.qmth.sop.business.entity.TBQualityProblemApply;
 import com.qmth.sop.business.entity.TBService;
@@ -27,7 +28,7 @@ public interface QualityAnalyseMapper extends BaseMapper<TBQualityProblemApply>
 
     List<Map<String, Object>> radar(@Param("serviceUnitId")Long serviceUnitId,@Param("supplierId") Long supplierId);
 
-    List<TBService> list( @Param("startTime")Long startTime, @Param("endTime")Long endTime);
+    List<TBService> list(@Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("dpr") DataPermissionDto dpr);
 
     Double progress( @Param("serviceUnitId")Long serviceUnitId);
 

+ 2 - 1
sop-business/src/main/java/com/qmth/sop/business/mapper/ServiceAnalyseMapper.java

@@ -3,6 +3,7 @@ package com.qmth.sop.business.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.TBCrmResult;
 import com.qmth.sop.business.bean.result.UserArchivesAllocationResult;
 import com.qmth.sop.business.entity.TBService;
@@ -21,7 +22,7 @@ import java.util.Map;
 public interface ServiceAnalyseMapper extends BaseMapper<TBService> {
 
 
-    List<TBService> list( @Param("startTime")Long startTime, @Param("endTime")Long endTime);
+    List<TBService> list(@Param("startTime")Long startTime, @Param("endTime")Long endTime, @Param("dpr") DataPermissionDto dpr);
 
     Long projectProgress(@Param("serviceUnitId") Long serviceUnitId);
 

+ 2 - 1
sop-business/src/main/java/com/qmth/sop/business/mapper/SopAnalyseMapper.java

@@ -1,6 +1,7 @@
 package com.qmth.sop.business.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.entity.TBService;
 import com.qmth.sop.business.entity.TBSopInfo;
 import org.apache.ibatis.annotations.Param;
@@ -18,7 +19,7 @@ import java.util.Map;
 public interface SopAnalyseMapper extends BaseMapper<TBSopInfo> {
 
 
-    List<TBService> list(@Param("startTime") Long startTime,@Param("endTime") Long endTime);
+    List<TBService> list(@Param("startTime") Long startTime, @Param("endTime") Long endTime,@Param("dpr")  DataPermissionDto dpr);
 
     List<Map<String, Object>> overview(@Param("serviceId") Long serviceId);
 

+ 40 - 15
sop-business/src/main/java/com/qmth/sop/business/service/impl/CrmAnalyseServiceImpl.java

@@ -3,15 +3,19 @@ package com.qmth.sop.business.service.impl;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.CrmAnalyseResult;
 import com.qmth.sop.business.bean.result.TBCrmResult;
+import com.qmth.sop.business.entity.SysUser;
 import com.qmth.sop.business.entity.TBCrm;
 import com.qmth.sop.business.mapper.CrmAnalyseMapper;
 import com.qmth.sop.business.service.CrmAnalyseService;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.common.enums.ProductTypeEnum;
+import com.qmth.sop.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
-import java.time.LocalDate;
+import javax.annotation.Resource;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -24,65 +28,86 @@ import java.util.Objects;
  */
 @Service
 public class CrmAnalyseServiceImpl extends ServiceImpl<CrmAnalyseMapper, TBCrm> implements CrmAnalyseService {
-
+    @Resource
+    private SysUserService sysUserService;
     @Override
     public Map<String,Object> countCustomType(Long startTime, Long endTime) {
-        return this.baseMapper.countCustomType(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.countCustomType(startTime,endTime,dpr);
     }
 
     @Override
     public IPage<TBCrmResult> customTypeDetail(Page<Object> iPage, Long startTime, Long endTime, ProductTypeEnum type) {
-        return this.baseMapper.crmDetail(iPage,startTime,endTime, Objects.nonNull(type) ? type.name() : null);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.crmDetail(iPage,startTime,endTime, Objects.nonNull(type) ? type.name() : null,dpr);
     }
 
     @Override
     public  Map<String, List<Map<String,String>>> monthly(Long startTime, Long endTime, ProductTypeEnum type) {
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
         Map<String, List<Map<String,String>>> map=new HashMap<>();
-        map.put("year",this.baseMapper.monthly(startTime,endTime, Objects.nonNull(type) ? type.name() : null));
-        map.put("lastYear",this.baseMapper.monthly(startTime-365*24*60*60* 1000L,endTime-365*24*60*60* 1000L, Objects.nonNull(type) ? type.name() : null));
+        map.put("year",this.baseMapper.monthly(startTime,endTime, Objects.nonNull(type) ? type.name() : null,dpr));
+        map.put("lastYear",this.baseMapper.monthly(startTime-365*24*60*60* 1000L,endTime-365*24*60*60* 1000L, Objects.nonNull(type) ? type.name() : null,dpr));
         return map;
     }
 
     @Override
     public IPage<TBCrmResult> monthlyDetail(Page<Object> iPage, String year, String month, ProductTypeEnum type) {
-        return this.baseMapper.crmDetail(iPage,year,month, Objects.nonNull(type) ? type.name() : null);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.crmDetail(iPage,year,month, Objects.nonNull(type) ? type.name() : null,dpr);
     }
 
     @Override
     public List<CrmAnalyseResult> supplier(Long startTime, Long endTime) {
-        return this.baseMapper.supplier(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.supplier(startTime,endTime,dpr);
     }
 
     @Override
     public IPage<TBCrmResult> supplierDetail(Page<Object> iPage, Long startTime, Long endTime, Long supplierId) {
-        return this.baseMapper.crmDetailSupplier(iPage,startTime,endTime, supplierId);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.crmDetailSupplier(iPage,startTime,endTime, supplierId,dpr);
     }
 
     @Override
     public Map<String,  List<CrmAnalyseResult>> region(Long startTime, Long endTime, ProductTypeEnum type) {
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
         Map<String,  List<CrmAnalyseResult>> map=new HashMap<>();
-        map.put("day",this.baseMapper.region(startTime,endTime,Objects.nonNull(type) ? type.name() : null));
-        map.put("lastDay",this.baseMapper.region(startTime-365*24*60*60* 1000L,endTime-365*24*60*60* 1000L,Objects.nonNull(type) ? type.name() : null));
+        map.put("day",this.baseMapper.region(startTime,endTime,Objects.nonNull(type) ? type.name() : null,dpr));
+        map.put("lastDay",this.baseMapper.region(startTime-365*24*60*60* 1000L,endTime-365*24*60*60* 1000L,Objects.nonNull(type) ? type.name() : null,dpr));
         return map;
     }
 
     @Override
     public IPage<TBCrmResult> regionDetail(Page<Object> iPage, Long startTime, Long endTime, Long regionId, ProductTypeEnum type) {
-        return this.baseMapper.crmDetail(iPage,startTime,endTime,regionId,Objects.nonNull(type) ? type.name() : null);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.crmDetail(iPage,startTime,endTime,regionId,Objects.nonNull(type) ? type.name() : null,dpr);
     }
 
     @Override
     public List<CrmAnalyseResult> project(Long startTime, Long endTime) {
-        return this.baseMapper.project(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.project(startTime,endTime,dpr);
     }
 
     @Override
     public IPage<TBCrmResult> projectDetail(Page<Object> iPage, Long startTime, Long endTime, Long serviceId) {
-        return this.baseMapper.crmDetail(iPage,serviceId,startTime,endTime);
+        return this.baseMapper.crmDetail(iPage,serviceId,startTime,endTime,null);
     }
 
     @Override
     public Map<String, Object> projectCount(Long startTime, Long endTime) {
-        return this.baseMapper.projectCount(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.projectCount(startTime,endTime,dpr);
     }
 }

+ 13 - 3
sop-business/src/main/java/com/qmth/sop/business/service/impl/DeviceMonitorServiceImpl.java

@@ -1,11 +1,16 @@
 package com.qmth.sop.business.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.entity.SysDevice;
+import com.qmth.sop.business.entity.SysUser;
 import com.qmth.sop.business.mapper.DeviceMonitorMapper;
 import com.qmth.sop.business.service.DeviceMonitorService;
+import com.qmth.sop.business.service.SysUserService;
+import com.qmth.sop.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.List;
 import java.util.Map;
 
@@ -17,7 +22,8 @@ import java.util.Map;
 @Service
 public class DeviceMonitorServiceImpl extends ServiceImpl<DeviceMonitorMapper, SysDevice> implements DeviceMonitorService {
 
-
+    @Resource
+    private SysUserService sysUserService;
     @Override
     public Map<String, Object> count(Long supplierId, String model) {
         return this.baseMapper.count(supplierId, model);
@@ -30,7 +36,9 @@ public class DeviceMonitorServiceImpl extends ServiceImpl<DeviceMonitorMapper, S
 
     @Override
     public Map<String, Object> countByServiceUnit() {
-        Map<String, Object> map = this.baseMapper.countByServiceUnit();
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        Map<String, Object> map = this.baseMapper.countByServiceUnit(dpr);
         Map<String, Object> count = this.count(null, null);
         map.putAll(count);
         return map;
@@ -38,6 +46,8 @@ public class DeviceMonitorServiceImpl extends ServiceImpl<DeviceMonitorMapper, S
 
     @Override
     public List<Map<String, Object>> countByServiceUnitDetail() {
-        return this.baseMapper.countByServiceUnitDetail();
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.countByServiceUnitDetail(dpr);
     }
 }

+ 14 - 14
sop-business/src/main/java/com/qmth/sop/business/service/impl/QualityAnalyseServiceImpl.java

@@ -3,16 +3,21 @@ package com.qmth.sop.business.service.impl;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.TBQualityProblemApplyResult;
+import com.qmth.sop.business.entity.SysUser;
 import com.qmth.sop.business.entity.TBQualityProblemApply;
 import com.qmth.sop.business.entity.TBService;
 import com.qmth.sop.business.mapper.QualityAnalyseMapper;
 import com.qmth.sop.business.service.QualityAnalyseService;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.common.enums.InfluenceDegreeEnum;
 import com.qmth.sop.common.enums.QualityAnalyseGroupEnum;
 import com.qmth.sop.common.enums.QualityProblemReasonEnum;
+import com.qmth.sop.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -21,10 +26,13 @@ import java.util.stream.Collectors;
 @Service
 public class QualityAnalyseServiceImpl extends ServiceImpl<QualityAnalyseMapper, TBQualityProblemApply> implements QualityAnalyseService {
 
-
+    @Resource
+    private SysUserService sysUserService;
     @Override
     public List<TBService> list(Long startTime,Long endTime) {
-        return this.baseMapper.list(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.list(startTime,endTime,dpr);
     }
 
 
@@ -70,11 +78,7 @@ public class QualityAnalyseServiceImpl extends ServiceImpl<QualityAnalyseMapper,
     public Map<String, Object> pie(Long serviceUnitId) {
         List<Map<String, Object>> pie = this.baseMapper.pie(serviceUnitId, null);
         Map<String, Object> result = new HashMap<>();
-        pie.stream().filter(map1->map1.get("Influence_degree")!=null).collect(Collectors.groupingBy(map -> map.get("Influence_degree"))).forEach((k, v) -> {
-
-            result.put(k.toString(),v.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum());
-
-        });
+        pie.stream().filter(map1->map1.get("Influence_degree")!=null).collect(Collectors.groupingBy(map -> map.get("Influence_degree"))).forEach((k, v) -> result.put(k.toString(),v.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum()));
         return result;
     }
 
@@ -82,7 +86,7 @@ public class QualityAnalyseServiceImpl extends ServiceImpl<QualityAnalyseMapper,
     public Map<String, Map<String, Object>> radar(Long serviceUnitId, QualityAnalyseGroupEnum group) {
 
 
-        List<Map<String, Object>> radar = this.baseMapper.radar(serviceUnitId, null);;
+        List<Map<String, Object>> radar = this.baseMapper.radar(serviceUnitId, null);
         Map<String, Map<String, Object>> result = new HashMap<>();
         radar.stream().filter(map1->map1.get("reason")!=null).collect(Collectors.groupingBy(map -> map.get("reason"))).forEach((k, v) -> {
             Map<String, Object> map = new HashMap<>();
@@ -95,17 +99,13 @@ public class QualityAnalyseServiceImpl extends ServiceImpl<QualityAnalyseMapper,
 
             radar.stream().filter(map1->map1.get("region_name")!=null).collect(Collectors.groupingBy(map -> map.get("region_name"))).forEach((k, v) -> {
                 Map<String, Object> z = new HashMap<>();
-                v.stream().filter(map1->map1.get("reason")!=null).collect(Collectors.groupingBy(map2 -> map2.get("reason"))).forEach((k1, v1) -> {
-                    z.put(k1.toString(),v1.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum());
-                });
+                v.stream().filter(map1->map1.get("reason")!=null).collect(Collectors.groupingBy(map2 -> map2.get("reason"))).forEach((k1, v1) -> z.put(k1.toString(),v1.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum()));
                 result.put(k.toString(), z);
             });
         } else if (group.equals(QualityAnalyseGroupEnum.REASON_SUPPLIER)) {
             radar.stream().filter(map1->map1.get("supplier")!=null).collect(Collectors.groupingBy(map -> map.get("supplier"))).forEach((k, v) -> {
                 Map<String, Object> z = new HashMap<>();
-                v.stream().filter(map1->map1.get("reason")!=null).collect(Collectors.groupingBy(map2 -> map2.get("reason"))).forEach((k1, v1) -> {
-                    z.put(k1.toString(),v1.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum());
-                });
+                v.stream().filter(map1->map1.get("reason")!=null).collect(Collectors.groupingBy(map2 -> map2.get("reason"))).forEach((k1, v1) -> z.put(k1.toString(),v1.stream().filter(map1->map1.get("count")!=null).mapToLong(map1-> (long) map1.get("count")).sum()));
                 result.put(k.toString(), z);
             });
         }

+ 9 - 3
sop-business/src/main/java/com/qmth/sop/business/service/impl/ServiceAnalyseServiceImpl.java

@@ -4,25 +4,27 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
 import com.qmth.sop.business.bean.result.TBCrmResult;
 import com.qmth.sop.business.bean.result.UserArchivesAllocationResult;
 import com.qmth.sop.business.bean.result.UserArchivesAllocationSubTotalResult;
 import com.qmth.sop.business.entity.SysDevice;
+import com.qmth.sop.business.entity.SysUser;
 import com.qmth.sop.business.entity.TBService;
 import com.qmth.sop.business.mapper.ServiceAnalyseMapper;
 import com.qmth.sop.business.service.ServiceAnalyseService;
 import com.qmth.sop.business.service.SysDeviceService;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.business.service.TBUserArchivesSupplierService;
-import com.qmth.sop.common.contant.SystemConstant;
 import com.qmth.sop.common.enums.CrmStatusEnum;
 import com.qmth.sop.common.enums.DeviceStatusEnum;
+import com.qmth.sop.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
-import java.util.stream.Collectors;
 
 @Service
 public class ServiceAnalyseServiceImpl extends ServiceImpl<ServiceAnalyseMapper, TBService> implements ServiceAnalyseService {
@@ -32,10 +34,14 @@ public class ServiceAnalyseServiceImpl extends ServiceImpl<ServiceAnalyseMapper,
 
     @Resource
     TBUserArchivesSupplierService tbUserArchivesSupplierService;
+    @Resource
+    private SysUserService sysUserService;
 
     @Override
     public List<TBService> list(Long startTime,Long endTime) {
-        return this.baseMapper.list(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.list(startTime,endTime,dpr);
     }
     /**
      * 4.服务单元概览

+ 18 - 13
sop-business/src/main/java/com/qmth/sop/business/service/impl/SopAnalyseServiceImpl.java

@@ -1,24 +1,32 @@
 package com.qmth.sop.business.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.sop.business.bean.dto.DataPermissionDto;
+import com.qmth.sop.business.entity.SysUser;
 import com.qmth.sop.business.entity.TBService;
 import com.qmth.sop.business.entity.TBSopInfo;
 import com.qmth.sop.business.mapper.SopAnalyseMapper;
 import com.qmth.sop.business.service.SopAnalyseService;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.common.enums.SopAnalyseGroupEnum;
 import com.qmth.sop.common.enums.SopAnalyseSortEnum;
+import com.qmth.sop.common.util.ServletUtil;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
 public class SopAnalyseServiceImpl extends ServiceImpl<SopAnalyseMapper, TBSopInfo> implements SopAnalyseService {
-
+    @Resource
+    private SysUserService sysUserService;
 
     @Override
     public List<TBService> list(Long startTime,Long endTime) {
-        return this.baseMapper.list(startTime,endTime);
+        SysUser requestUser = (SysUser) ServletUtil.getRequestUser();
+        DataPermissionDto dpr = sysUserService.buildUserDataPermission(requestUser.getId());
+        return this.baseMapper.list(startTime,endTime,dpr);
     }
 
 
@@ -173,17 +181,14 @@ public class SopAnalyseServiceImpl extends ServiceImpl<SopAnalyseMapper, TBSopIn
         List<Map<String, Object>> result = new ArrayList<>();
         List<Map<String, Object>> attendance = this.baseMapper.attendance(serviceId);
         if (group.equals(SopAnalyseGroupEnum.CRM)) {
-            attendance.stream().filter(map -> map.get("name")!=null).collect(Collectors.groupingBy(map -> map.get("name"))).forEach((k, v) -> {
-
-                v.stream().filter(map -> map.get("dname")!=null).collect(Collectors.groupingBy(map -> map.get("dname"))).forEach((x,y)->{
-                    Map<String, Object> map = new HashMap<>();
-                    map.put("crmName", k);
-                    map.put("dname", x);
-                    map.put("real_name", v.get(0).get("real_name"));
-                    map.put("total", y.stream().filter(map1 -> map1.get("id") != null).count());
-                    result.add(map);
-                });
-            });
+            attendance.stream().filter(map -> map.get("name")!=null).collect(Collectors.groupingBy(map -> map.get("name"))).forEach((k, v) -> v.stream().filter(map -> map.get("dname")!=null).collect(Collectors.groupingBy(map -> map.get("dname"))).forEach((x, y)->{
+                Map<String, Object> map = new HashMap<>();
+                map.put("crmName", k);
+                map.put("dname", x);
+                map.put("real_name", v.get(0).get("real_name"));
+                map.put("total", y.stream().filter(map1 -> map1.get("id") != null).count());
+                result.add(map);
+            }));
 
 
         } else if (group.equals(SopAnalyseGroupEnum.REGION)) {

+ 4 - 0
sop-business/src/main/java/com/qmth/sop/business/service/impl/SopScheduleServiceImpl.java

@@ -10,6 +10,7 @@ import com.qmth.sop.business.entity.TBSopInfo;
 import com.qmth.sop.business.mapper.SopScheduleMapper;
 import com.qmth.sop.business.mapper.TBSopInfoMapper;
 import com.qmth.sop.business.service.SopScheduleService;
+import com.qmth.sop.business.service.SysUserService;
 import com.qmth.sop.business.service.TDFormWidgetMetadataService;
 import com.qmth.sop.common.contant.SystemConstant;
 import com.qmth.sop.common.enums.SopAnalyseGroupEnum;
@@ -31,6 +32,9 @@ public class SopScheduleServiceImpl extends ServiceImpl<SopScheduleMapper, TBSop
     @Resource
     TDFormWidgetMetadataService tdFormWidgetMetadataService;
 
+    @Resource
+    private SysUserService sysUserService;
+
     /**
      * * ①准备:扫描前的准备阶段;
      * * ②扫描:扫描仪配置产出物提交,到扫描收尾产出物提交;

+ 35 - 3
sop-business/src/main/resources/mapper/CrmAnalyseMapper.xml

@@ -52,6 +52,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         GROUP BY
         cu.province
@@ -77,6 +82,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         GROUP BY
         s.id,
@@ -107,6 +117,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         GROUP BY
         su.id,
@@ -139,7 +154,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         GROUP BY
         YEAR (
@@ -174,7 +193,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
     </select>
 
@@ -228,6 +251,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= tbs.start_time
             </if>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND tbs.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
             <if test="crmYear != null and crmYear != ''">
                 and YEAR ( FROM_UNIXTIME( a.begin_time / 1000 ))= #{crmYear}
             </if>
@@ -255,7 +283,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
     </select>
 

+ 14 - 0
sop-business/src/main/resources/mapper/DeviceMonitorMapper.xml

@@ -46,7 +46,14 @@
 
         left join t_b_device_in_out io on io.service_id=s.id
         left join sys_device d on d.device_code=io.device_no
+        <where>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
 
+        </where>
     </select>
     <select id="countByServiceUnitDetail" resultType="java.util.Map">
         SELECT
@@ -59,7 +66,14 @@
 
         left join t_b_device_in_out io on io.service_id=s.id
         left join sys_device d on d.device_code=io.device_no
+        <where>
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
 
+        </where>
         GROUP BY s.`name`
     </select>
 </mapper>

+ 5 - 1
sop-business/src/main/resources/mapper/QualityAnalyseMapper.xml

@@ -15,7 +15,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         order by s.start_time desc
     </select>

+ 5 - 1
sop-business/src/main/resources/mapper/ServiceAnalyseMapper.xml

@@ -15,7 +15,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         order by s.start_time desc
     </select>

+ 5 - 1
sop-business/src/main/resources/mapper/SopAnalyseMapper.xml

@@ -15,7 +15,11 @@
             <if test="endTime != null">
                 AND #{endTime} >= s.start_time
             </if>
-
+            <if test="dpr != null and !dpr.hasAdmin and !dpr.hasPmo">
+                <if test="dpr.hasBusiness">
+                    AND s.service_lead_id = #{dpr.requestUserId}
+                </if>
+            </if>
         </where>
         order by s.start_time desc
     </select>