From af9932d1d6fe3bd56799dcd8b4d76dc993c5c1db Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 19 六月 2024 09:42:36 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/1.0.1' into 1.0.1

---
 server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java |   23 ++++++++++++++++-------
 1 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 33a8f2a..2e7eb25 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -292,11 +292,13 @@
                 .leftJoin(Worktype.class,Worktype::getId,Member::getWorktypeId)
                 .leftJoin(Company.class,Company::getId,Member::getCompanyId)
                 .notIn(CollectionUtils.isNotEmpty(memberQueryDTO.getMemberIds()),Member::getId,memberQueryDTO.getMemberIds())
+                .in(CollectionUtils.isNotEmpty(memberQueryDTO.getSubtractMemberIds()),Member::getId,memberQueryDTO.getSubtractMemberIds())
                 .eq(!Objects.isNull(memberQueryDTO.getCompanyId()),Member::getCompanyId,memberQueryDTO.getCompanyId())
                 .eq(Member::getIsdeleted, Constants.ZERO)
                 .apply(!Objects.isNull(memberQueryDTO.getSolutionsStatus())&&memberQueryDTO.getSolutionsStatus().equals(Constants.ONE),"now() between t.start_time and t.end_time")
                 .apply(!Objects.isNull(memberQueryDTO.getSolutionsStatus())&&memberQueryDTO.getSolutionsStatus().equals(Constants.TWO),"now()  >  t.end_time")
-                .like(StringUtils.isNotBlank(memberQueryDTO.getName()),Member::getName, memberQueryDTO.getName())
+                .and(StringUtils.isNotBlank(memberQueryDTO.getName()),i->i.like(Member::getName,memberQueryDTO.getName())
+                        .or().like(Member::getIdcardNo,memberQueryDTO.getName()))
                 .notExists(!Objects.isNull(memberQueryDTO.getNotInInsuranceApplyId())&&!Objects.isNull(memberQueryDTO.getValidTime()),
                         " select 1 from apply_detail ad where ad.apply_id = "+memberQueryDTO.getNotInInsuranceApplyId()+"" +
                                 " and ad.END_TIME >= '"+DateUtil.DateToStr(memberQueryDTO.getValidTime(),"yyyy-MM-dd HH:mm:ss.SSS")+"' and ad.START_TIME <= '"+DateUtil.DateToStr(memberQueryDTO.getValidTime(),"yyyy-MM-dd HH:mm:ss.SSS")+"' and ad.isdeleted = 0 " +
@@ -322,9 +324,11 @@
                     .leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId)
                     .eq(Member::getIsdeleted, Constants.ZERO)
                     .eq(InsuranceApply::getId,memberQueryDTO.getInsuranceApplyId())
-                    .like(StringUtils.isNotBlank(memberQueryDTO.getName()),Member::getName, memberQueryDTO.getName())
+                    .and(StringUtils.isNotBlank(memberQueryDTO.getName()),i->i.like(Member::getName,memberQueryDTO.getName())
+                            .or().like(Member::getIdcardNo,memberQueryDTO.getName()))
                     .le(!Objects.isNull(memberQueryDTO.getValidTime()),ApplyDetail::getStartTime,memberQueryDTO.getValidTime())
                     .ge(!Objects.isNull(memberQueryDTO.getValidTime()),ApplyDetail::getEndTime,memberQueryDTO.getValidTime())
+                    .in(CollectionUtils.isNotEmpty(memberQueryDTO.getSubtractMemberIds()),Member::getId,memberQueryDTO.getSubtractMemberIds())
                     .exists(!Objects.isNull(memberQueryDTO.getInsuranceApplyId())&&!Objects.isNull(memberQueryDTO.getValidTime()),
                             " select 1 from apply_detail ad where ad.apply_id = "+memberQueryDTO.getInsuranceApplyId()+"" +
                                     " and ad.END_TIME >= '"+DateUtil.DateToStr(memberQueryDTO.getValidTime(),"yyyy-MM-dd HH:mm:ss.SSS")+"' and ad.START_TIME <= '"+DateUtil.DateToStr(memberQueryDTO.getValidTime(),"yyyy-MM-dd HH:mm:ss.SSS")+"' and ad.isdeleted = 0 " +
@@ -381,11 +385,11 @@
         if(dataList == null || dataList.size() ==0){
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝褰曞叆鏁版嵁涓虹┖锛�");
         }
-        List<String> idCardList = dataList.stream().map(m->m.getIdCard()).collect(Collectors.toList());
-        Set<String> set = new HashSet<>(idCardList);
-        if(idCardList.size() != set.size()){
-            throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"瀵逛笉璧凤紝褰曞叆鏁版嵁瀛樺湪韬唤璇佸彿鐩稿悓鏁版嵁锛�");
-        }
+//        List<String> idCardList = dataList.stream().map(m->m.getIdCard()).collect(Collectors.toList());
+//        Set<String> set = new HashSet<>(idCardList);
+//        if(idCardList.size() != set.size()){
+//            throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"瀵逛笉璧凤紝褰曞叆鏁版嵁瀛樺湪韬唤璇佸彿鐩稿悓鏁版嵁锛�");
+//        }
         List<DispatchUnit> dispatchUnitList = new ArrayList<>();
         if(!Objects.isNull(solutionId)){
             dispatchUnitList  = dispatchUnitJoinMapper.selectJoinList(DispatchUnit.class,
@@ -412,6 +416,7 @@
             }
         }
         long index = Constants.TWO;
+        Map<String,String> idCardMap = new HashMap<>();
         for(MemberImport model : dataList){
             if(StringUtils.isBlank(model.getIdCard())||model.getIdCard().length()!=18){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹韩浠借瘉淇℃伅寮傚父锛�");
@@ -422,6 +427,10 @@
             if(StringUtils.isBlank(model.getName())){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹鍚嶄俊鎭紓甯革紒");
             }
+            if(Objects.nonNull(idCardMap.get(model.getIdCard()))){
+                throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗�"+index+"琛屾暟鎹韩浠借瘉鍙枫��"+model.getIdCard()+"銆戝瓨鍦ㄧ浉鍚屾暟鎹紒");
+            }
+            idCardMap.put(model.getIdCard(), model.getIdCard());
             index = index + Constants.ONE;
             if(CollectionUtils.isNotEmpty(list)){
                 Optional<Member>  memberOptional= list.stream().filter(m->m.getIdcardNo().equals(model.getIdCard())).findFirst();

--
Gitblit v1.9.3