From 92e2f86210ebaca3f0b4af21c64d22cc91dffba4 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 01 四月 2025 09:14:43 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 121 ++++++++++++++++++++++++++++++++++++--- 1 files changed, 110 insertions(+), 11 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java index b5e306a..2b312cf 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java @@ -8,7 +8,9 @@ import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; -import com.doumee.dao.business.dao.UserActionMapper; +import com.doumee.dao.business.dao.*; +import com.doumee.dao.business.vo.GeneralDataVO; +import com.doumee.dao.business.vo.HiddenDangerDataVO; import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.service.business.third.model.PageData; import com.doumee.service.business.third.model.PageWrap; @@ -19,9 +21,6 @@ import com.doumee.core.wx.wxPlat.WxPlatConstants; import com.doumee.core.wx.wxPlat.WxPlatNotice; import com.doumee.dao.business.*; -import com.doumee.dao.business.dao.MemberMapper; -import com.doumee.dao.business.dao.SmsConfigMapper; -import com.doumee.dao.business.dao.SmsEmailMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.business.model.Member; import com.doumee.dao.system.MultifileMapper; @@ -41,7 +40,9 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; /** * 闅愭偅淇℃伅琛⊿ervice瀹炵幇 @@ -74,6 +75,9 @@ @Autowired private UserActionMapper userActionMapper; + @Autowired + private CompanyMapper companyMapper; + @Autowired private NoticesJoinMapper noticesJoinMapper; @@ -90,6 +94,9 @@ @Autowired private WxNoticeConfigMapper wxNoticeConfigMapper; + + @Autowired + private ApproveMapper approveMapper; @Override @@ -286,6 +293,12 @@ params[2]=model.getAreaName()+"-銆�"+model.getContent()+"銆�"; //璁板綍鍒犻櫎鏃ュ織 UserActionServiceImpl.saveUserActionBiz(user,id,Constants.UserActionType.HIDEN_DANGER_DEL,userActionMapper,date,params,JSONObject.toJSONString(model)); + + //鏍囪浠诲姟璁板綍 + VisitsServiceImpl.dealCancelNoticesData(noticesJoinMapper,approveMapper,"绯荤粺鍒犻櫎",model.getId(), + null, + Constants.noticesObjectType.dangerDeal + ); } @Override @@ -334,7 +347,9 @@ .leftJoin("company t4 on t1.company_id=t4.id") .leftJoin("company t5 on t2.company_id=t5.id"); queryWrapper - .eq(HiddenDanger::getId, id).last("limit 1"); + .eq(HiddenDanger::getId, id) + .eq(HiddenDanger::getIsdeleted, Constants.ZERO) + .last("limit 1"); HiddenDanger model = hiddenDangerMapper.selectJoinOne(HiddenDanger.class,queryWrapper); if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ @@ -404,6 +419,7 @@ @Override public List<HiddenDanger> findList(HiddenDanger hiddenDanger) { + hiddenDanger.setIsdeleted(Constants.ZERO); QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); return hiddenDangerMapper.selectList(wrapper); } @@ -436,7 +452,7 @@ //鍙兘鐪嬭嚜宸� queryWrapper.and(w->{ w.eq(HiddenDanger::getCreator,userInfo.getId()).or(). - eq(HiddenDanger::getCheckUserId,userInfo.getId()); + eq(HiddenDanger::getCheckUserId,userInfo.getMemberId()); }); }else{ queryWrapper.in("t1.company_id" ,userInfo.getCompanyIdList()); @@ -469,8 +485,8 @@ .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName()) .or().like(Member::getPhone,pageWrap.getModel().getMemberName())) - .ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), Empower::getCreateDate,pageWrap.getModel().getQueryStartTime()) - .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),Empower::getCreateDate,pageWrap.getModel().getQueryEndTime()) + .ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), HiddenDanger::getSubmitTime,pageWrap.getModel().getQueryStartTime()) + .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),HiddenDanger::getSubmitTime,pageWrap.getModel().getQueryEndTime()) .orderByDesc(Visits::getCreateDate) ; for(PageWrap.SortData sortData: pageWrap.getSorts()) { @@ -485,6 +501,7 @@ @Override public long count(HiddenDanger hiddenDanger) { + hiddenDanger.setIsdeleted(Constants.ZERO); QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); return hiddenDangerMapper.selectCount(wrapper); } @@ -499,6 +516,9 @@ hiddenDanger.setCheckDate(hiddenDanger.getEditDate()); hiddenDangerMapper.updateById(hiddenDanger); HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId()); + if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY ); + } HiddenDangerParam hiddenDangerCate = hiddenDangerParamMapper.selectById(model.getCateId()); if(Objects.isNull(hiddenDangerCate)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅绫诲瀷"); @@ -571,7 +591,7 @@ throw new BusinessException(ResponseStatus.BAD_REQUEST); } HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId()); - if(Objects.isNull(model)){ + if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁"); } if (!model.getStatus().equals(Constants.ZERO)) { @@ -672,8 +692,9 @@ .selectAll(HiddenDanger.class) .selectAs(Member::getName,HiddenDanger::getCheckorName) .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId) - .eq(HiddenDanger::getId,hiddenDanger.getId())); - if(Objects.isNull(model)){ + .eq(HiddenDanger::getId,hiddenDanger.getId()) + ); + if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁"); } if (!Constants.equalsInteger(model.getStatus(),Constants.ZERO)) { @@ -766,4 +787,82 @@ } + /** + * 闅忔墜鎷嶇粺璁℃暟鎹� + */ + @Override + public HiddenDangerDataVO hiddenDangerData(HiddenDanger hiddenDanger){ + HiddenDangerDataVO hiddenDangerDataVO = new HiddenDangerDataVO(); + List<HiddenDanger> hiddenDangerAllList = hiddenDangerMapper.selectJoinList(HiddenDanger.class, + new MPJLambdaWrapper<HiddenDanger>() + .selectAll(HiddenDanger.class) + .selectAs(HiddenDangerParam::getCompanyId, HiddenDanger::getAreaCompanyId) + .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getAreaId) //闅愭偅鍖哄煙 + .eq(HiddenDanger::getIsdeleted,Constants.ZERO) + .eq(Objects.nonNull(hiddenDanger.getStatus()),HiddenDanger::getStatus,hiddenDanger.getStatus()) + .ge(Objects.nonNull(hiddenDanger.getQueryStartTime()), HiddenDanger::getCreateDate,hiddenDanger.getQueryStartTime()) + .le(Objects.nonNull(hiddenDanger.getQueryEndTime()),HiddenDanger::getCreateDate,hiddenDanger.getQueryEndTime()) + ); + hiddenDangerDataVO.setTotal(hiddenDangerAllList.size()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(hiddenDangerAllList)){ + List<Integer> cateList = hiddenDangerAllList.stream().map(i->i.getCateId()).collect(Collectors.toList()); + //鍏ㄩ儴闅愭偅鍒嗙被鏁版嵁 + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(cateList)){ + List<GeneralDataVO> cateGeneralDataList = new ArrayList<>(); + Set<Integer> cateSetList = new HashSet<>(cateList); + List<HiddenDangerParam> hiddenDangerParamList = hiddenDangerParamMapper.selectList(new QueryWrapper<HiddenDangerParam>() + .lambda().eq(HiddenDangerParam::getIsdeleted,Constants.ZERO).eq(HiddenDangerParam::getType,Constants.ONE)); + for (Integer cateId:cateSetList) { + if(Objects.isNull(cateId)){ + continue; + } + Optional<HiddenDangerParam> optionalHiddenDanger = hiddenDangerParamList.stream().filter(i->Constants.equalsInteger(i.getId(),cateId)).findAny(); + if(optionalHiddenDanger.isPresent()){ + GeneralDataVO generalDataVO = new GeneralDataVO(); + HiddenDangerParam hiddenDangerParam = optionalHiddenDanger.get(); + Integer total = hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getCateId(),hiddenDangerParam.getId())).collect(Collectors.toList()).size(); + generalDataVO.setName(hiddenDangerParam.getName()); + generalDataVO.setTotal(total); + generalDataVO.setRata( + Constants.equalsInteger(total,Constants.ZERO)? + BigDecimal.ZERO:new BigDecimal(total.toString()) + .divide(new BigDecimal(hiddenDangerDataVO.getTotal().toString()),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")) + ); + cateGeneralDataList.add(generalDataVO); + } + } + hiddenDangerDataVO.setCateList(cateGeneralDataList); + } + //鍏ㄩ儴闅愭偅鍖哄煙閮ㄩ棬鏁版嵁 + List<Integer> companyIdList = hiddenDangerAllList.stream().map(i->i.getAreaCompanyId()).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(companyIdList)){ + List<GeneralDataVO> companyGeneralDataList = new ArrayList<>(); + Set<Integer> companyIdSetList = new HashSet<>(companyIdList); + List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>() + .lambda().eq(Company::getIsdeleted,Constants.ZERO)); + for (Integer companyId:companyIdSetList) { + if(Objects.isNull(companyId)){ + continue; + } + Optional<Company> optionalCompany = companyList.stream().filter(i->Constants.equalsInteger(i.getId(),companyId)).findAny(); + if(optionalCompany.isPresent()){ + GeneralDataVO generalDataVO = new GeneralDataVO(); + Company company = optionalCompany.get(); + Integer total = hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getAreaCompanyId(),company.getId())).collect(Collectors.toList()).size(); + generalDataVO.setName(company.getName()); + generalDataVO.setTotal(total); + companyGeneralDataList.add(generalDataVO); + } + } + hiddenDangerDataVO.setDepartmentList(companyGeneralDataList); + } + } + + return hiddenDangerDataVO; + } + + + + + } -- Gitblit v1.9.3