From 4f68c496d74c036c094a7c2341b50c8424be0fe6 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 12 六月 2024 09:33:57 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 140 +++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 130 insertions(+), 10 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java index 77940c7..c3c2cfa 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java @@ -18,6 +18,7 @@ import com.doumee.dao.business.join.VisitsJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.business.vo.ApproveDataVO; +import com.doumee.dao.system.dto.NoticesDTO; import com.doumee.dao.system.join.NoticesJoinMapper; import com.doumee.dao.system.model.Notices; import com.doumee.dao.system.model.SystemUser; @@ -236,16 +237,91 @@ /** * 鍐呴儴浜哄憳H5椤甸潰棣栭〉 * @param memberId + * @param isDetail 鏄惁鏌ヨ璇︾粏 1鏄紱0鍚� * @return */ @Override - public InternalHomeVO getHomeData(Integer memberId){ + public InternalHomeVO getHomeDataH5(Integer memberId,Integer isDetail){ InternalHomeVO internalHomeVO = new InternalHomeVO(); internalHomeVO.setHomeImg(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.HOME_IMAGE).getCode()); - internalHomeVO.setTaskNum(approveMapper.selectCount(new QueryWrapper<Approve>().lambda().eq(Approve::getChekorId,memberId).eq(Approve::getStatus,Constants.ZERO))); + //浠诲姟鏁版嵁 + List<Notices> noticesList = noticesJoinMapper. + selectList(new QueryWrapper<Notices>().lambda() + .eq(Notices::getUserId,memberId).orderByDesc(Notices::getCreateDate)); + internalHomeVO.setTaskNum(noticesList.size()); + if(Constants.equalsInteger(Constants.ONE,isDetail)){ + if(CollectionUtils.isNotEmpty(noticesList)){ + //寰呮垜澶勭悊鐨勬暟鎹� + internalHomeVO.setNoticeWaitNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId) + &&Constants.equalsInteger(i.getStatus(),Constants.ZERO) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO) + ).count() + ); + internalHomeVO.setNoticeDealNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId) + &&Constants.equalsInteger(i.getStatus(),Constants.ONE) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO) + ).count() + ); + + internalHomeVO.setNoticeCreateNum( + noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,memberId)) + ); + + internalHomeVO.setNoticeCopyNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE) + ).count() + ); + } + } + return internalHomeVO; } + + @Override + public InternalHomeVO getHomeDataPC(NoticesDTO noticesDTO){ + InternalHomeVO internalHomeVO = new InternalHomeVO(); + internalHomeVO.setHomeImg(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.HOME_IMAGE).getCode()); + //浠诲姟鏁版嵁 + List<Notices> noticesList = noticesJoinMapper. + selectList(new QueryWrapper<Notices>().lambda() + .ge(noticesDTO.getStartDate() != null, Notices::getCreateDate, Utils.Date.getStart(noticesDTO.getStartDate() )) + .le(noticesDTO.getEndDate() != null, Notices::getCreateDate, Utils.Date.getEnd(noticesDTO.getEndDate() )) + .eq(noticesDTO.getType() != null, Notices::getType, noticesDTO.getType()) + .eq(Notices::getUserId,noticesDTO.getMemberId()).orderByDesc(Notices::getCreateDate) + ); + internalHomeVO.setTaskNum(noticesList.size()); + if(CollectionUtils.isNotEmpty(noticesList)){ + //寰呮垜澶勭悊鐨勬暟鎹� + internalHomeVO.setNoticeWaitNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),noticesDTO.getMemberId()) + &&Constants.equalsInteger(i.getStatus(),Constants.ZERO) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO) + ).count() + ); + internalHomeVO.setNoticeDealNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),noticesDTO.getMemberId()) + &&Constants.equalsInteger(i.getStatus(),Constants.ONE) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO) + ).count() + ); + + internalHomeVO.setNoticeCreateNum( + noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,noticesDTO.getMemberId())) + ); + + internalHomeVO.setNoticeCopyNum( + noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),noticesDTO.getMemberId()) + &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE) + ).count() + ); + } + + return internalHomeVO; + } /** * 鍒涘缓瀹℃壒娴佺▼ @@ -312,6 +388,27 @@ * @param approveList */ public void organizeApproveData(ApproveTempl approveTempl,List<ApproveParam> approveParamList,Member createMember,Integer businessId,List<Approve> approveList){ + + //鍒涘缓榛樿浜轰俊鎭� + Approve createUserApprove = new Approve(); + createUserApprove.setRemark("鍙戣捣鐢宠"); + createUserApprove.setCreateDate(new Date()); + createUserApprove.setIsdeleted(Constants.ZERO); + createUserApprove.setTemplatId(approveTempl.getId()); + createUserApprove.setChekorId(createMember.getId()); + createUserApprove.setStatus(Constants.approveStatus.pass); + createUserApprove.setTitle("鍙戣捣鐢宠"); + createUserApprove.setStatusInfo(""); + createUserApprove.setIsEndCheck(Constants.ZERO); + createUserApprove.setObjId(businessId); + createUserApprove.setLevel(-1); + createUserApprove.setObjType(approveTempl.getType()); + createUserApprove.setApproveType(Constants.TWO); + createUserApprove.setDriverParam(Constants.ZERO); + createUserApprove.setAddrParam(Constants.ZERO); + createUserApprove.setType(Constants.ZERO); + approveList.add(createUserApprove); + //瀹℃壒涓氬姟鏁版嵁 for (int i = 0; i < approveParamList.size(); i++) { ApproveParam approveParam = approveParamList.get(i); @@ -325,6 +422,24 @@ if(i==0){ if(jsonMap.isEmpty()){ title = this.createNoticesData(noticeType,businessId,title,jsonMap); + } + if(j==0){ + //榛樿鐢熸垚涓�鏉� 鐢宠浜虹殑鏁版嵁 鏍囪鍒犻櫎鐘舵�佺敤浜庡鐞嗗埌 浠诲姟涓績锛堟垜鍙戣捣锛変娇鐢� + Notices notices = new Notices(); + notices.setCreateDate(new Date()); + notices.setIsdeleted(Constants.ONE); + notices.setObjId(businessId); + notices.setObjType(noticeType); + notices.setType(noticeType); + notices.setTitle(title); + notices.setParam1(JSONObject.toJSONString(jsonMap)); + notices.setStatus(Constants.ZERO); + notices.setReaded(Constants.ZERO); + notices.setSendacopy(Constants.ZERO); + notices.setParam2("0"); + notices.setParam3(createMember.getId().toString()); + notices.setInfo("澶勭悊涓�"); + noticesJoinMapper.insert(notices); } Notices notices = new Notices(); notices.setCreateDate(new Date()); @@ -340,6 +455,7 @@ notices.setReaded(Constants.ZERO); notices.setSendacopy(Constants.ZERO); notices.setParam2("0"); + notices.setParam3(""); notices.setInfo("寰呭鐞�"); noticesJoinMapper.insert(notices); } @@ -564,13 +680,15 @@ List<Approve> levelList = getLevelListFromResult(approveGroupList,approveDateVO,memberId); List<Approve> copyList = getAllCopyList(approveGroupList); //閬嶅巻level鏌ヨ姣忎竴绾у埆涓氬姟鏁版嵁 - for(Approve level:levelList){ - List<Approve> tlist = getLevelInfoFromList(level,approveGroupList); - approveDateVO.getApproveList().addAll(tlist); - if(tlist.size() ==0 - ||Constants.equalsInteger(Constants.approveStatus.unPass, tlist.get(0).getStatus()) - ||Constants.equalsInteger(Constants.approveStatus.cancel, tlist.get(0).getStatus())){ - break; + if(levelList!=null){ + for(Approve level:levelList){ + List<Approve> tlist = getLevelInfoFromList(level,approveGroupList); + approveDateVO.getApproveList().addAll(tlist); + if(tlist.size() ==0 + ||Constants.equalsInteger(Constants.approveStatus.unPass, tlist.get(0).getStatus()) + ||Constants.equalsInteger(Constants.approveStatus.cancel, tlist.get(0).getStatus())){ + break; + } } } @@ -726,7 +844,7 @@ } } if(CollectionUtils.isEmpty(approveList)){ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒淇℃伅锛氱骇鍒暟鎹紓甯�"); + // throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀹℃壒淇℃伅锛氱骇鍒暟鎹紓甯�"); } return approveList; } @@ -1053,6 +1171,7 @@ notices.setCreateDate(new Date()); notices.setEditDate(new Date()); notices.setParam2("2"); + notices.setParam3(""); notices.setUserId(copyApprove.getChekorId()); notices.setStatus(Constants.ZERO); notices.setSendacopy(Constants.ONE); @@ -1089,6 +1208,7 @@ notices.setId(null); notices.setCreateDate(new Date()); notices.setParam2("0"); + notices.setParam3(""); notices.setEditDate(new Date()); notices.setUserId(nextDealApprove.getChekorId()); notices.setStatus(Constants.ZERO); -- Gitblit v1.9.3