From 02bc3bfe47e3d5311a0bb041c94e70a34b1ca73c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 09 四月 2024 09:03:01 +0800
Subject: [PATCH] git ch

---
 server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 56 insertions(+), 3 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java
index 7cda6d4..a9ac725 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/NoticesServiceImpl.java
@@ -11,6 +11,7 @@
 import com.doumee.dao.business.model.Company;
 import com.doumee.dao.business.model.InsuranceApply;
 import com.doumee.dao.business.model.Notices;
+import com.doumee.dao.business.vo.ApplyNoticeVO;
 import com.doumee.service.business.NoticesService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -22,6 +23,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 绯荤粺娑堟伅淇℃伅琛⊿ervice瀹炵幇
@@ -99,7 +101,7 @@
         LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
 
         //浼佷笟浜哄憳鏌ョ湅鏈紒涓氭暟鎹�
-        if(loginUserInfo.getType().equals(Constants.ONE)){
+        if(loginUserInfo.getType().equals(Constants.ONE)||loginUserInfo.getType().equals(Constants.TWO)){
             queryWrapper.eq(Notices::getCompanyId, loginUserInfo.getCompanyId());
         }else{
             if(loginUserInfo.getCompanyIdList()!=null && loginUserInfo.getCompanyIdList().size()>0){
@@ -143,7 +145,12 @@
                 queryWrapper.in(Notices::getObjType,new Integer[]{Constants.NoticeObjectType.TAXES.getKey() });
             } else if(pageWrap.getModel().getQueryType().equals(Constants.TWO)){
                 queryWrapper.in(Notices::getObjType,new Integer[]{Constants.NoticeObjectType.SETTLE_CLAIMS.getKey() });
-
+            }else if(pageWrap.getModel().getQueryType().equals(Constants.THREE)){
+                //濮旀墭淇濅唬鍔�
+                queryWrapper.notIn(Notices::getType,new Integer[]{Constants.NoticeType.SEVEN.getStatus() });
+            }else if(pageWrap.getModel().getQueryType().equals(Constants.FOUR)){
+                //濮旀墭淇濅唬鍔�
+                queryWrapper.in(Notices::getType,new Integer[]{Constants.NoticeType.SEVEN.getStatus() });
             }
         }
         if(CollectionUtils.isNotEmpty(pageWrap.getSorts())){
@@ -161,7 +168,7 @@
         PageData<Notices> pageData = PageData.from(noticesMapper.selectJoinPage(page,Notices.class, queryWrapper));
         pageData.getRecords().forEach(i->{
             i.setTypeDetail(
-                    Constants.NoticeType.getDetail(i.getObjType(),i.getType())
+                    Constants.NoticeType.getDetail(i.getType(),i.getObjType())
             );
         });
         return pageData;
@@ -172,4 +179,50 @@
         QueryWrapper<Notices> wrapper = new QueryWrapper<>(notices);
         return noticesMapper.selectCount(wrapper);
     }
+
+
+    /**
+     * 鏌ヨ鎶曚繚鍗� 鎻愰啋鏁伴噺
+     * @param companyId
+     * @return
+     */
+    @Override
+    public ApplyNoticeVO getApplyNotice(Integer companyId){
+        ApplyNoticeVO applyNoticeVO = new ApplyNoticeVO();
+        applyNoticeVO.setWaitSignNum(Constants.ZERO);
+        applyNoticeVO.setRenewalNum(Constants.ZERO);
+        List<Notices> noticesList = noticesMapper.selectList(new QueryWrapper<Notices>()
+                .lambda()
+                .select(Notices::getType)
+                .eq(Notices::getPalt,Constants.ONE)
+                .eq(Notices::getCompanyId,companyId)
+                .eq(Notices::getObjType,Constants.NoticeObjectType.INSURANCE_APPLY.getKey())
+                .eq(Notices::getStatus,Constants.ZERO)
+                .in(Notices::getType,Constants.NoticeType.SIX.getStatus(),Constants.NoticeType.ONE.getStatus())
+        );
+        if(CollectionUtils.isNotEmpty(noticesList)){
+            applyNoticeVO.setRenewalNum(noticesList.stream().filter(m->m.getType().equals(Constants.NoticeType.SIX.getStatus())).collect(Collectors.toList()).size());
+            applyNoticeVO.setWaitSignNum(noticesList.size() - applyNoticeVO.getRenewalNum());
+        }
+        return applyNoticeVO ;
+    }
+
+    /**
+     * 鍏抽棴鎻愰啋
+     * @param companyId
+     * @param type
+     */
+    @Override
+    public void closeApplyNotice(Integer companyId,Integer type){
+        noticesMapper.update(null,new UpdateWrapper<Notices>()
+                .lambda()
+                .set(Notices::getStatus,Constants.ONE)
+                .eq(Notices::getPalt,Constants.ONE)
+                .eq(Notices::getCompanyId,companyId)
+                .eq(Notices::getStatus,Constants.ZERO)
+                .eq(Notices::getObjType,Constants.NoticeObjectType.INSURANCE_APPLY.getKey())
+                .eq(Notices::getType,type)
+        );
+    }
+
 }

--
Gitblit v1.9.3