From 9b00b80c926b3d1b38b7ef9b682ee097345dde3f Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期四, 17 四月 2025 11:09:31 +0800 Subject: [PATCH] 代码初始化 --- server/src/main/java/com/doumee/service/business/impl/WorkorderServiceImpl.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 108 insertions(+), 12 deletions(-) diff --git a/server/src/main/java/com/doumee/service/business/impl/WorkorderServiceImpl.java b/server/src/main/java/com/doumee/service/business/impl/WorkorderServiceImpl.java index 915964c..c77c10c 100644 --- a/server/src/main/java/com/doumee/service/business/impl/WorkorderServiceImpl.java +++ b/server/src/main/java/com/doumee/service/business/impl/WorkorderServiceImpl.java @@ -14,6 +14,7 @@ import com.doumee.core.utils.qiyeweixin.model.request.QywxTextCardMsgRequest; import com.doumee.dao.business.*; import com.doumee.dao.business.model.*; +import com.doumee.dao.business.vo.WorkorderIndexNumVO; import com.doumee.dao.web.dto.*; import com.doumee.dao.web.vo.WorkOrderDataVO; import com.doumee.service.business.WorkorderService; @@ -168,18 +169,19 @@ message = Constants.equalsInteger(workorder.getMemberType(),Constants.ONE)?"鍚屼簨":"渚涘簲鍟�"; } message = message + "-" + workorder.getMemberNames() + " " + DateUtil.formatDate(new Date(),"yyyy-MM-dd HH:mm") + workorder.getLocationName() + categoryName; - textCard.setDescription(" <div class=\"normal\">"+message+"</div>"); + textCard.setDescription("<div class=\"normal\">"+message+"</div>"); + }else{ textCard.setTitle(Constants.equalsInteger(workorder.getType(),Constants.ONE)?"銆怐CA涓婃姤銆�":"銆愯穼缁婃粦椋庨櫓涓婃姤銆�"); if(Constants.equalsInteger(workorder.getType(),Constants.THREE)){ message = message + " <div class=\"normal\">"+ (org.apache.commons.lang3.StringUtils.isNotBlank(userName)?userName:"绯荤粺") + (Constants.equalsInteger(contentType,Constants.ZERO)?"浠诲姟鍒嗛厤缁欎綘":(Constants.equalsInteger(contentType,Constants.ONE)?"瀵硅宸ュ崟杩涜浜嗗偓淇冿紝璇峰敖蹇鐞�":"浠诲姟宸插鐞�")) +"</div>"; message = message + " <div class=\"normal\">"+ DateUtil.formatDate(new Date(),"yyyy-MM-dd HH:mm") +"/"+ workorder.getLocationName() +"/"+ categoryName+"</div>"; }else{ - message = message + " <div class=\"normal\">"+ (org.apache.commons.lang3.StringUtils.isNotBlank(userName)?userName:"绯荤粺") + (Constants.equalsInteger(contentType,Constants.ZERO)?"浠诲姟鍒嗛厤缁欎綘":(Constants.equalsInteger(contentType,Constants.ONE)?"瀵硅宸ュ崟杩涜浜嗗偓淇冿紝璇峰敖蹇鐞�":((Constants.equalsInteger(contentType,Constants.TWO)?"鎶勯�佺粰浣�":"宸插鐞嗕竴椤�")))) +"</div>"; - message = message + " <div class=\"normal\">瑙傚療涓婚"+ categoryName +"</div>"; - message = message + " <div class=\"normal\">绗﹀悎锛�"+ workorder.getDcaYesNum() +" 涓嶇鍚堬細"+workorder.getDcaNoNum()+"</div>"; + message = message + " <div class=\"normal\">"+ (org.apache.commons.lang3.StringUtils.isNotBlank(userName)?userName:"绯荤粺") + (Constants.equalsInteger(contentType,Constants.ZERO)?"浠诲姟鍒嗛厤缁欎綘":(Constants.equalsInteger(contentType,Constants.ONE)?"瀵硅宸ュ崟杩涜浜嗗偓淇冿紝璇峰敖蹇鐞�":((Constants.equalsInteger(contentType,Constants.TWO)?"鎶勯�佺粰浣�":"宸插鐞嗕竴椤�")))) +"</div>"; + message = message + " <div class=\"normal\">瑙傚療涓婚"+ categoryName +"</div>"; + message = message + " <div class=\"normal\">绗﹀悎锛�"+ workorder.getDcaYesNum() +" 涓嶇鍚堬細"+workorder.getDcaNoNum()+"</div>"; if(Constants.equalsInteger(contentType,Constants.TWO)){ - message = message + " <div class=\"normal\">璇存槑锛�"+ csInfo +"</div>"; + message = message + " <div class=\"normal\">璇存槑锛�"+ csInfo +"</div>"; } } textCard.setDescription(message); @@ -212,8 +214,8 @@ multifile.setObjId(workorder.getId()); multifile.setCreateDate(new Date()); multifile.setObjType(Constants.multiFileType.upload); + multifileMapper.insert(multifile); } - multifileMapper.insert(multifileList); } } @@ -717,6 +719,7 @@ .eq( pageWrap.getDcaYesNum() != null, Workorder::getDcaYesNum, pageWrap.getDcaYesNum()) .eq( pageWrap.getDcaNoNum() != null, Workorder::getDcaNoNum, pageWrap.getDcaNoNum()) .eq( pageWrap.getDcaRecordId() != null, Workorder::getDcaRecordId, pageWrap.getDcaRecordId()) + .likeRight( pageWrap.getTypeIdPath() != null,"c3.id_path", pageWrap.getTypeIdPath()) .eq( pageWrap.getDcaCsIds() != null, Workorder::getDcaCsIds, pageWrap.getDcaCsIds()) ; if ( pageWrap.getMemberName() != null) { queryWrapper.and( ms->ms.like(Member::getName, pageWrap.getMemberName()) @@ -1186,13 +1189,15 @@ * @throws Exception */ @Override - public List<WorkOrderDataVO> getWorkOrderData(OrderDataDTO orderDataDTO) throws Exception { + public List<WorkOrderDataVO> getWorkOrderData(OrderDataDTO orderDataDTO) { if (Objects.isNull(orderDataDTO.getQueryType())||Objects.isNull(orderDataDTO.getOrderType())) { throw new BusinessException(ResponseStatus.BAD_REQUEST); } String year = DateUtil.getNowYear(); - Integer nowMonth = DateUtil.getNowMonth(); - Integer quarter = (nowMonth - 1) / 3 + 1; +// Integer nowMonth = DateUtil.getNowMonth(); + Integer nowMonth = 12; +// Integer quarter = (nowMonth - 1) / 3 + 1; + Integer quarter =4; List<WorkOrderDataVO> workOrderDataVOList = new ArrayList<>(); //鏌ヨ浠婂勾鎵�鏈夌殑鏁版嵁 List<Workorder> workorderList = workorderMapper.selectJoinList(Workorder.class,new MPJLambdaWrapper<Workorder>() @@ -1207,17 +1212,25 @@ if(Constants.equalsInteger(orderDataDTO.getQueryType(),Constants.ZERO)){ for (int i = 1 ; i <= nowMonth; i++) { WorkOrderDataVO workOrderDataVO = new WorkOrderDataVO(); - String monthDay = year + "-" + org.apache.commons.lang3.StringUtils.leftPad(nowMonth.toString(),2,"0"); + String monthDay = year + "-" + org.apache.commons.lang3.StringUtils.leftPad(i+"",2,"0"); List<Workorder> dataList = workorderList.stream().filter(j->DateUtil.formatDate(j.getCreateDate(),"yyyy-MM").equals(monthDay)) .collect(Collectors.toList()); - workOrderDataVO.setDateStr(monthDay); + workOrderDataVO.setDateStr(i+"鏈�"); workOrderDataVO.setGcsTotal(Constants.ZERO); workOrderDataVO.setWtsTotal(Constants.ZERO); workOrderDataVO.setSheTotal(Constants.ZERO); + workOrderDataVO.setDcaNoTotal(Constants.ZERO); + workOrderDataVO.setDcaYesTotal(Constants.ZERO); workOrderDataVO.setUnCloseTotal(Constants.ZERO); workOrderDataVO.setTotal(Constants.ZERO); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(dataList)){ workOrderDataVO.setTotal(dataList.size()); + for(Workorder e :dataList){ + if(Constants.equalsInteger(e.getType(),Constants.ONE)){ + workOrderDataVO.setDcaYesTotal(workOrderDataVO.getDcaYesTotal()+Constants.formatIntegerNum(e.getDcaYesNum()));//DCA绗﹀悎椤� + workOrderDataVO.setDcaNoTotal(workOrderDataVO.getDcaNoTotal()+Constants.formatIntegerNum(e.getDcaNoNum()));//DCA涓嶇鍚堥」 + } + } workOrderDataVO.setGcsTotal(dataList.stream().filter(j->Constants.equalsInteger(j.getStatus(),Constants.WorkOrderStatus.close.getKey())).collect(Collectors.toList()).size()); workOrderDataVO.setSheTotal(dataList.stream().filter(j->Constants.equalsInteger(j.getStatus(),Constants.WorkOrderStatus.sheClose.getKey())).collect(Collectors.toList()).size()); workOrderDataVO.setWtsTotal(dataList.stream().filter(j->Constants.equalsInteger(j.getStatus(),Constants.WorkOrderStatus.wtsClose.getKey())).collect(Collectors.toList()).size()); @@ -1257,11 +1270,94 @@ workOrderDataVO.setUnCloseTotal(workOrderDataVO.getTotal() - workOrderDataVO.getSheTotal() - workOrderDataVO.getWtsTotal() - workOrderDataVO.getGcsTotal()); } workOrderDataVOList.add(workOrderDataVO); - } } return workOrderDataVOList; } + /** + * SHE / 璺岀粖婊戞姤琛� + * @return + * @throws Exception + */ + @Override + public WorkorderIndexNumVO getIndexData(Workorder workorder) { + WorkorderIndexNumVO model = new WorkorderIndexNumVO(); + List<WorkOrderDataVO> workOrderDataVOList = new ArrayList<>(); + //鏌ヨ浠婂勾鎵�鏈夌殑鏁版嵁 + List<Workorder> list = workorderMapper.selectJoinList(Workorder.class,new MPJLambdaWrapper<Workorder>() + .select("type,count(id) as num") + .eq(Workorder::getIsdeleted,Constants.ZERO) + .groupBy(Workorder::getType )); + if(list !=null){ + for(Workorder w : list){ + if(Constants.equalsInteger(w.getType(),Constants.ZERO)){ + //SHE + model.setSheNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.ONE)){ + //DCA鎻愪氦鏁� + model.setDcaNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.TWO)){ + //DCA瀛愬伐鍗� + model.setDcaChildNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.THREE)){ + //璺岀粖婊� + model.setDbhNum(Constants.formatLongNum(w.getNum())); + } + } + } + List<Workorder> todays = workorderMapper.selectJoinList(Workorder.class,new MPJLambdaWrapper<Workorder>() + .select("type,count(id) as num") + .eq(Workorder::getIsdeleted,Constants.ZERO) + .apply("to_days(create_date)=to_days(now())") + .groupBy(Workorder::getType )); + if(todays !=null){ + for(Workorder w : todays){ + if(Constants.equalsInteger(w.getType(),Constants.ZERO)){ + //SHE + model.setTodaySheNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.ONE)){ + //DCA鎻愪氦鏁� + model.setTodayDcaNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.TWO)){ + //DCA瀛愬伐鍗� + model.setTodayDcaChildNum(Constants.formatLongNum(w.getNum())); + }else if(Constants.equalsInteger(w.getType(),Constants.THREE)){ + //璺岀粖婊� + model.setTodayDbhNum(Constants.formatLongNum(w.getNum())); + } + } + } + + List<Workorder> yeslist = workorderMapper.selectJoinList(Workorder.class,new MPJLambdaWrapper<Workorder>() + .select("type,count(id) as num") + .eq(Workorder::getIsdeleted,Constants.ZERO) + .in(Workorder::getStatus,Constants.THREE,Constants.FOUR,Constants.FIVE) + .in(Workorder::getType,Constants.THREE,Constants.TWO) + .groupBy(Workorder::getType )); + if(yeslist !=null){ + for(Workorder w : yeslist){ + if(Constants.equalsInteger(w.getType(),Constants.TWO)){ + //DCA瀛愬伐鍗曞凡瑙e喅鍜屾湭瑙e喅 + model.setDcaChildYesNum(Constants.formatLongNum(w.getNum())); + model.setDcaChildNoNum(Constants.formatLongNum(model.getDcaChildNum()) -model.getDcaChildYesNum()); + }else if(Constants.equalsInteger(w.getType(),Constants.THREE)){ + //璺岀粖婊戝凡瑙e喅鍜屾湭瑙e喅 + model.setDbhYesNum(Constants.formatLongNum(w.getNum())); + model.setDbhNoNum(Constants.formatLongNum(model.getDbhNum()) -model.getDbhYesNum()); + } + } + } + Workorder dcaList = workorderMapper.selectJoinOne(Workorder.class,new MPJLambdaWrapper<Workorder>() + .select("sum(dca_yes_num) as dcaYesNum,sum(dca_no_num) as dcaNoNum") + .eq(Workorder::getIsdeleted,Constants.ZERO) + .eq(Workorder::getType,Constants.ONE) ); + if(dcaList !=null){ + //DCA绗﹀悎椤瑰拰涓嶇鍚堥」缁熻 + model.setDcaYesNum((long)Constants.formatIntegerNum(dcaList.getDcaYesNum())); + model.setDcaNoNum((long)Constants.formatIntegerNum(dcaList.getDcaNoNum())); + } + return model; + } -- Gitblit v1.9.3