Bladeren bron

订单查询问题

bifrons 2 jaren geleden
bovenliggende
commit
ff20df9f51
1 gewijzigde bestanden met toevoegingen van 32 en 22 verwijderingen
  1. 32 22
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

+ 32 - 22
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -78,7 +78,12 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     private final FeeRuleSchemeServiceImpl feeRuleSchemeService;
 
-    public InsOrdersServiceImpl(OrderComponents orderComponents, SysUserService sysUserService,SysUserRoleService sysUserRoleService, EsmUserReferrerService esmUserReferrerService, SysDeptService sysDeptService, StringRedisTemplate redisTemplate, @Lazy InsAreaCompanyService insAreaCompanyService, PtlAgreementService ptlAgreementService, @Lazy FeeRuleSchemeServiceImpl feeRuleSchemeService) {
+    public InsOrdersServiceImpl(OrderComponents orderComponents, SysUserService sysUserService,
+                                SysUserRoleService sysUserRoleService, EsmUserReferrerService esmUserReferrerService,
+                                SysDeptService sysDeptService, StringRedisTemplate redisTemplate,
+                                @Lazy InsAreaCompanyService insAreaCompanyService,
+                                PtlAgreementService ptlAgreementService,
+                                @Lazy FeeRuleSchemeServiceImpl feeRuleSchemeService) {
         this.orderComponents = orderComponents;
         this.sysUserService = sysUserService;
         this.sysUserRoleService = sysUserRoleService;
@@ -187,7 +192,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         // 5 生成承包规则参数
         UnderwritingRulesBo underwritingRulesBo = new UnderwritingRulesBo(quoteInfoVo);
         String rules = JSON.toJSONString(underwritingRulesBo);
-        redisTemplate.opsForValue().set(QUOTE_RULES_KEY + insOrders.getOrderno(), rules, QUOTE_RULES_KEY_TIME, TimeUnit.HOURS);
+        redisTemplate.opsForValue().set(QUOTE_RULES_KEY + insOrders.getOrderno(), rules, QUOTE_RULES_KEY_TIME,
+                TimeUnit.HOURS);
 
         return insOrders;
     }
@@ -198,29 +204,30 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             orderQueryVo.setUserId("");
         }
 
-        List idList = new ArrayList();
-        if(StringUtils.isNotEmpty(orderQueryVo.getUserId())){
-            SysUserRole userRole = sysUserRoleService.selectByUserId(orderQueryVo.getUserId());
+        boolean isTeamLeader = false;
 
-            if(21 == userRole.getRoleId()){ //团队长可查询下面所有人员订单
-                List<EsmUserReferrer> list = esmUserReferrerService.queryList(orderQueryVo.getUserId());
-                for(EsmUserReferrer referrer:list){
-                    idList.add(referrer.getId());
-                }
-            }else{
-                idList.add(orderQueryVo.getUserId()); //个代只能查自己订单信息
+        if (StringUtils.isNotEmpty(orderQueryVo.getUserId())) {
+            SysUserRole userRole = sysUserRoleService.selectByUserId(orderQueryVo.getUserId());
+            if (21 == userRole.getRoleId()) { //团队长可查询下面所有人员订单
+                isTeamLeader = true;
             }
         }
+
         // 构造查询条件
         LambdaQueryWrapper<InsOrders> wrapper = new LambdaQueryWrapper<>();
         wrapper.eq(StringUtils.isNotEmpty(orderQueryVo.getOrderNo()), InsOrders::getOrderno, orderQueryVo.getOrderNo())
-                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getDeptId()), InsOrders::getDeptid, orderQueryVo.getDeptId())
-//                .eq(StringUtils.isEmpty(orderQueryVo.getDeptId()) && StringUtils.isNotEmpty(orderQueryVo.getUserId()), InsOrders::getUserid, orderQueryVo.getUserId())
-                .in(StringUtils.isNotEmpty(orderQueryVo.getUserId()) && StringUtils.contains(orderQueryVo.getDeptId(),"D"), InsOrders::getUserid, idList)
-                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), InsOrders::getOrderstatus, orderQueryVo.getOrderStatus())
-                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getFrameNo()), InsOrders::getFrameno, orderQueryVo.getFrameNo())
-                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getLicenseNo()), InsOrders::getLicenseno, orderQueryVo.getLicenseNo())
-                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getInsuredName()), InsOrders::getInsuredname, orderQueryVo.getInsuredName())
+                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getDeptId()) && isTeamLeader, InsOrders::getDeptid,
+                        orderQueryVo.getDeptId())
+                .eq(!isTeamLeader && StringUtils.isNotEmpty(orderQueryVo.getUserId()), InsOrders::getUserid,
+                        orderQueryVo.getUserId())
+                .eq(StringUtils.isNotEmpty(orderQueryVo.getOrderStatus()), InsOrders::getOrderstatus,
+                        orderQueryVo.getOrderStatus())
+                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getFrameNo()), InsOrders::getFrameno,
+                        orderQueryVo.getFrameNo())
+                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getLicenseNo()), InsOrders::getLicenseno,
+                        orderQueryVo.getLicenseNo())
+                .likeRight(StringUtils.isNotEmpty(orderQueryVo.getInsuredName()), InsOrders::getInsuredname,
+                        orderQueryVo.getInsuredName())
                 .between(!ObjectUtils.isEmpty(orderQueryVo.getStartDate()) && !ObjectUtils.isEmpty(orderQueryVo.getEndDate()),
                         InsOrders::getCreatetime, orderQueryVo.getStartDate(), orderQueryVo.getEndDatePlusOneDay())
                 .orderBy(true, false, InsOrders::getCreatetime);
@@ -231,12 +238,14 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                     .select("DISTINCT orderno")
                     .eq("company_id", orderQueryVo.getCompanyId())
                     .list();
-            List<String> collect = list.stream().map(InsAreaCompany::getOrderno).distinct().collect(Collectors.toList());
+            List<String> collect =
+                    list.stream().map(InsAreaCompany::getOrderno).distinct().collect(Collectors.toList());
             wrapper.in(InsOrders::getOrderno, collect);
         }
 
         Page<InsOrders> insOrdersPage = page(page, wrapper);
-        return new BasePageResult<>(orderQueryVo.getPageNum(), page.getSize(), insOrdersPage.getTotal(), page.getPages(), insOrdersPage.getRecords());
+        return new BasePageResult<>(orderQueryVo.getPageNum(), page.getSize(), insOrdersPage.getTotal(),
+                page.getPages(), insOrdersPage.getRecords());
     }
 
     @Override
@@ -255,7 +264,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             JSONObject reptxt = orderAndAreaCompany.getReptxt();
             ResponseDataC2 responseDataC2 = JSON.toJavaObject(reptxt, ResponseDataC2.class);
             List<ExtendInfoDto> extendInfoDtos = responseDataC2.getResponseBody().getExtendInfo();
-            Map<String, String> stringStringMap = extendInfoDtos.stream().collect(LinkedHashMap::new, (m, v) -> m.put(v.getKey(), v.getValue()), LinkedHashMap::putAll);
+            Map<String, String> stringStringMap = extendInfoDtos.stream().collect(LinkedHashMap::new,
+                    (m, v) -> m.put(v.getKey(), v.getValue()), LinkedHashMap::putAll);
             yaExtendInfoDto = MapToYaExtendInfoDto.INSTANCE.mapToYaExtendInfoDto(stringStringMap);
             orderAndAreaCompany.setExtendInfo(yaExtendInfoDto);
         }