From f116ffb8abf668cdd5a8d33bd2f85363fd1ef28d Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期四, 26 六月 2025 16:51:58 +0800 Subject: [PATCH] 最新版本541200007 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 102 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 87 insertions(+), 15 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 aa262d1..4411168 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 @@ -10,6 +10,7 @@ import com.doumee.core.exception.BusinessException; import com.doumee.dao.business.dao.*; import com.doumee.dao.business.vo.GeneralDataVO; +import com.doumee.dao.business.vo.HiddenDangerCompanyVO; import com.doumee.dao.business.vo.HiddenDangerDataVO; import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.service.business.third.model.PageData; @@ -95,6 +96,9 @@ @Autowired private WxNoticeConfigMapper wxNoticeConfigMapper; + @Autowired + private ApproveMapper approveMapper; + @Override public Integer create(HiddenDanger hiddenDanger) { @@ -104,6 +108,7 @@ || Objects.isNull(hiddenDanger.getCateId()) || Objects.isNull(hiddenDanger.getApplyCheckUserId()) || Objects.isNull(hiddenDanger.getCheckUserId()) + || Objects.isNull(hiddenDanger.getCheckTypeId()) || Objects.isNull(hiddenDanger.getSubmitTime()) || StringUtils.isBlank(hiddenDanger.getContent()) ){ @@ -117,6 +122,10 @@ hiddenDanger.setIsdeleted(Constants.ZERO); hiddenDanger.setCreateDate(new Date()); hiddenDanger.setEditDate(new Date()); + HiddenDangerParam hiddenDangerCheckParam = hiddenDangerParamMapper.selectById(hiddenDanger.getCheckTypeId()); + if(Objects.isNull(hiddenDangerCheckParam)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅妫�鏌ョ被鍨�"); + } HiddenDangerParam hiddenDangerParam = hiddenDangerParamMapper.selectById(hiddenDanger.getAreaId()); if(Objects.isNull(hiddenDangerParam)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鍖哄煙"); @@ -290,6 +299,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 @@ -331,12 +346,14 @@ .select("t2.name",HiddenDanger::getCheckorName) .select("t2.phone",HiddenDanger::getCheckorPhone) .select("t5.company_name_path",HiddenDanger::getDutyCompanyName) - .select("t4.company_name_path",HiddenDanger::getCompanyName); + .select("t4.company_name_path",HiddenDanger::getCompanyName) + .select("t6.name", HiddenDanger::getCheckTypeName); queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId) .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId) .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId) .leftJoin("company t4 on t1.company_id=t4.id") - .leftJoin("company t5 on t2.company_id=t5.id"); + .leftJoin("company t5 on t2.company_id=t5.id") + .leftJoin("hidden_danger_param t6 on t2.check_type_id=t6.id"); queryWrapper .eq(HiddenDanger::getId, id) .eq(HiddenDanger::getIsdeleted, Constants.ZERO) @@ -410,6 +427,7 @@ @Override public List<HiddenDanger> findList(HiddenDanger hiddenDanger) { + hiddenDanger.setIsdeleted(Constants.ZERO); QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); return hiddenDangerMapper.selectList(wrapper); } @@ -423,6 +441,7 @@ queryWrapper.selectAll(HiddenDanger.class) .selectAs(HiddenDangerParam::getName,HiddenDanger::getCategoryName) .select("t1.name", HiddenDanger::getMemberName) + .select("t6.name", HiddenDanger::getCheckTypeName) .select("t1.phone",HiddenDanger::getMemberPhone) .select("t2.name",HiddenDanger::getCheckorName) .select("t2.phone",HiddenDanger::getCheckorPhone) @@ -432,6 +451,7 @@ .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId) .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId) .leftJoin("company t4 on t1.company_id=t4.id") + .leftJoin("hidden_danger_param t6 on t2.check_type_id=t6.id") .leftJoin("company t5 on t2.company_id=t5.id"); //鏁版嵁鏉冮檺寮�濮�--------------------start---------------- @@ -475,8 +495,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()), HiddenDanger::getCreateDate,pageWrap.getModel().getQueryStartTime()) - .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),HiddenDanger::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()) { @@ -491,6 +511,7 @@ @Override public long count(HiddenDanger hiddenDanger) { + hiddenDanger.setIsdeleted(Constants.ZERO); QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger); return hiddenDangerMapper.selectCount(wrapper); } @@ -787,13 +808,40 @@ .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()) +// .apply(" ( DATE_FORMAT(t.CREATE_DATE, '%Y') = DATE_FORMAT(now(), '%Y') ) ") +// .ge(Objects.nonNull(hiddenDanger.getQueryStartTime()), HiddenDanger::getCreateDate,hiddenDanger.getQueryStartTime()) +// .le(Objects.nonNull(hiddenDanger.getQueryEndTime()),HiddenDanger::getCreateDate,hiddenDanger.getQueryEndTime()) ); + List<GeneralDataVO> yearDataList = new ArrayList<>(); + if(CollectionUtils.isEmpty(hiddenDangerAllList)){ + return hiddenDangerDataVO; + } + Integer nowYear = DateUtil.getNowYearNum(); + Integer nowMonth = DateUtil.getNowMonthNum(); + String nowDate = DateUtil.getFomartDate(new Date(),"yyyy-MM-dd"); + for (int i = 1; i <=12 ; i++) { + GeneralDataVO generalDataVO = new GeneralDataVO(); + generalDataVO.setName(Integer.toString(i)); + generalDataVO.setTotal( + hiddenDangerAllList.stream().filter(j->Constants.equalsInteger(nowYear,Integer.valueOf(DateUtil.formatDate(j.getCreateDate(),"yyyy")))&&Constants.equalsInteger(Integer.valueOf(generalDataVO.getName()), + Integer.valueOf(DateUtil.formatDate(j.getCreateDate(),"MM")))).collect(Collectors.toList()).size()); + generalDataVO.setName(generalDataVO.getName()+"鏈�"); + yearDataList.add(generalDataVO); + } + hiddenDangerDataVO.setYearList(yearDataList); + + + hiddenDangerDataVO.setTotal(hiddenDangerAllList.size()); + hiddenDangerDataVO.setWaitDeal(hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ZERO)).collect(Collectors.toList()).size()); + hiddenDangerDataVO.setBack(hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.TWO)).collect(Collectors.toList()).size()); + hiddenDangerDataVO.setDealFinish(hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size()); + hiddenDangerDataVO.setTodayNew(hiddenDangerAllList.stream().filter(i->DateUtil.formatDate(i.getCreateDate(),"yyyy-MM-dd").equals(DateUtil.formatDate(new Date(),"yyyy-MM-dd"))).collect(Collectors.toList()).size()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(hiddenDangerAllList)){ - List<Integer> cateList = hiddenDangerAllList.stream().map(i->i.getCateId()).collect(Collectors.toList()); + List<Integer> cateList = hiddenDangerAllList.stream().filter(i->DateUtil.formatDate(i.getCreateDate(),"yyyy-MM").equals(nowDate.substring(0,7))).map(i->i.getCateId()).collect(Collectors.toList()); //鍏ㄩ儴闅愭偅鍒嗙被鏁版嵁 if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(cateList)){ List<GeneralDataVO> cateGeneralDataList = new ArrayList<>(); @@ -801,16 +849,20 @@ 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(); + Integer total = hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getCateId(),hiddenDangerParam.getId())&& DateUtil.formatDate(i.getCreateDate(),"yyyy-MM").equals(nowDate.substring(0,7))).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).multiply(new BigDecimal("100")) + BigDecimal.ZERO:new BigDecimal(total.toString()) + .divide(new BigDecimal(hiddenDangerDataVO.getTotal().toString()),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100")) ); cateGeneralDataList.add(generalDataVO); } @@ -818,25 +870,45 @@ 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<HiddenDangerCompanyVO> hiddenDangerCompanyVOList = hiddenDangerAllList.stream(). + filter(i->DateUtil.formatDate(i.getCreateDate(),"yyyy-MM").equals(nowDate.substring(0,7))) + .map(i->new HiddenDangerCompanyVO(i.getAreaName(),i.getAreaCompanyId())).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(hiddenDangerCompanyVOList)){ List<GeneralDataVO> companyGeneralDataList = new ArrayList<>(); - Set<Integer> companyIdSetList = new HashSet<>(companyIdList); + Set<HiddenDangerCompanyVO> companyIdSetList = new HashSet<>(hiddenDangerCompanyVOList); List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>() .lambda().eq(Company::getIsdeleted,Constants.ZERO)); - for (Integer companyId:companyIdSetList) { - Optional<Company> optionalCompany = companyList.stream().filter(i->Constants.equalsInteger(i.getId(),companyId)).findAny(); + for (HiddenDangerCompanyVO hiddenDangerCompanyVO:companyIdSetList) { + if(Objects.isNull(hiddenDangerCompanyVO) + || Objects.isNull(hiddenDangerCompanyVO.getId()) + || StringUtils.isBlank(hiddenDangerCompanyVO.getCategoryName())){ + continue; + } + Optional<Company> optionalCompany = companyList.stream().filter(i->Constants.equalsInteger(i.getId(),hiddenDangerCompanyVO.getId())).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(); + Integer total = hiddenDangerAllList.stream().filter(i->DateUtil.formatDate(i.getCreateDate(),"yyyy-MM").equals(nowDate.substring(0,7))&&Constants.equalsInteger(i.getAreaCompanyId(),company.getId())).collect(Collectors.toList()).size(); generalDataVO.setName(company.getName()); generalDataVO.setTotal(total); + generalDataVO.setCategoryName(hiddenDangerCompanyVO.getCategoryName()); companyGeneralDataList.add(generalDataVO); } } hiddenDangerDataVO.setDepartmentList(companyGeneralDataList); } + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(hiddenDangerDataVO.getDepartmentList())){ + List<GeneralDataVO> topList = hiddenDangerDataVO.getDepartmentList(); + Collections.sort(topList, new Comparator<GeneralDataVO>() { + @Override + public int compare(GeneralDataVO o1, GeneralDataVO o2) { + // 杩斿洖鍊间负int绫诲瀷锛屽ぇ浜�0琛ㄧず姝e簭锛屽皬浜�0琛ㄧず閫嗗簭 + return o2.getTotal() - o1.getTotal(); + } + }); + hiddenDangerDataVO.setDepartmentSortList(topList); + } } return hiddenDangerDataVO; -- Gitblit v1.9.3