From cd2f0a97ed34f4ccf3d2d4d72682285ec987e3d4 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期三, 07 五月 2025 18:49:07 +0800
Subject: [PATCH] 代码初始化
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java | 277 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 206 insertions(+), 71 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
index 1b3a5c0..b22d16d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -151,6 +151,7 @@
List<PlatformJob> jobs = platformJobMapper.selectList (new MPJLambdaWrapper<PlatformJob>()
.select(PlatformJob::getTotalNum)
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .apply(" ( origin = 0 or origin is null) ")
.eq(PlatformJob::getPlatformGroupId,platformGroupId)
.apply("to_days(done_date) = to_days(now())")
.in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey()
@@ -189,7 +190,8 @@
List<WmsInventoryJsonResponse> t= response.getData().get(0).getJson();
if(t!=null &&t.size()>0){
for(WmsInventoryJsonResponse j :t){
- num = num.add (Constants.formatBigdecimal( j.getQty()));
+ //2025骞�4鏈�9鏃�16:46:40 澶勭悊 鍖呭惈鎵樼洏瀛楃溂鐨勬暟鎹� 涓嶈繘琛屽悎璁�
+ num = num.add (j.getItemName().indexOf("鎵樼洏")<Constants.ZERO?Constants.formatBigdecimal( j.getQty()):BigDecimal.ZERO);
GeneralVO d = new GeneralVO();
d.setNum(Constants.formatBigdecimal(j.getQty()));
d.setName(j.getItemName());
@@ -654,6 +656,7 @@
MinitorDataSearchRequest param = new MinitorDataSearchRequest();
param.setResourceTypeCodes(new String[]{});
param.setRegionIndexCode("root000000");
+ //60-娑蹭綅 61-姘村帇
param.setResourceTypeCodes("60,61".split(","));
param.setIncludeDown("1");
param.setUserId("admin");
@@ -674,6 +677,8 @@
if(model.getValues()!=null){
List<MonitorDataInfoVO> dataList = new ArrayList<>();
for(MonitorDataValResponse v : model.getValues()){
+ //娑插帇鍥哄畾鍊硷細254001
+ //姘村帇鍥哄畾鍊硷細253958
if(Constants.equalsInteger(model.getType(),60)){
if(v.getMonitorTypeCode().equals("254001")){
MonitorDataInfoVO vm = new MonitorDataInfoVO();
@@ -751,6 +756,20 @@
.apply(queryType==0,"to_days(create_date) >= to_days(now()) -7")
.apply(queryType==1,"year(create_date) = year(now()) and month(create_date) = month(now())")
.apply(queryType==2,"year(create_date) = year(now())"));
+
+
+ List<PlatformJob> finishDataList = platformJobMapper.selectJoinList(PlatformJob.class,
+ new MPJLambdaWrapper<PlatformJob>()
+ .selectAs(PlatformJob::getId,PlatformJob::getId)
+ .selectAs(PlatformJob::getCreateDate,PlatformJob::getCreateDate)
+ .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+ .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
+ .apply(queryType==0,"to_days(done_date) >= to_days(now()) -7")
+ .apply(queryType==1,"year(done_date) = year(now()) and month(done_date) = month(now())")
+ .apply(queryType==2,"year(done_date) = year(now())"));
+
for (Date date : dayList) {
TransportMeasureVO data = new TransportMeasureVO();
data.setPlanDate(date);
@@ -762,23 +781,34 @@
if(DateUtil.formatDate(date,"yyyy-MM").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM"))){
data.setPlanTimes( data.getPlanTimes() +1);
data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
- if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey())
- ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())
- ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){
- //瀹屾垚鏁�
- data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
- }
+// if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey())
+// ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())
+// ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){
+// //瀹屾垚鏁�
+// data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+// }
}
}else{
if(DateUtil.formatDate(date,"yyyy-MM-dd").equals(DateUtil.formatDate(job.getCreateDate(),"yyyy-MM-dd"))){
data.setPlanTimes( data.getPlanTimes() +1);
data.setPlanTaskNum( data.getPlanTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
- if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey())
- ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())
- ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){
- //瀹屾垚鏁�
+// if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.DONE.getKey())
+// ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())
+// ||Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())){
+// //瀹屾垚鏁�
+// data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
+// }
+ }
+ }
+ }
+ for (PlatformJob job :finishDataList) {
+ if(queryType == 2){
+ if(DateUtil.formatDate(date,"yyyy-MM").equals(DateUtil.formatDate(job.getDoneDate(),"yyyy-MM"))){
data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
- }
+ }
+ }else{
+ if(DateUtil.formatDate(date,"yyyy-MM-dd").equals(DateUtil.formatDate(job.getDoneDate(),"yyyy-MM-dd"))){
+ data.setFinishTaskNum( data.getFinishTaskNum().add(Constants.formatBigdecimal(job.getTotalNum())));
}
}
}
@@ -931,7 +961,7 @@
*/
@Override
public AlarmDataVO alarmDataSumByCate(){
- AlarmDataVO alarmDataVO = getAlertDataByStartEndTime(DateUtil.getPlusTime2(DateUtil.addDaysToDate(new Date(),-1))
+ AlarmDataVO alarmDataVO = getAlertDataByStartEndTime(DateUtil.getPlusTime2(Utils.Date.getStart(new Date()))
,(DateUtil.getPlusTime2(new Date())));
return alarmDataVO;
}
@@ -951,16 +981,29 @@
Date lastYear = DateUtil.addYearToDate(year,-1);//鍘诲勾
List<PlatformJob> monthNum = platformJobMapper.selectJoinList(PlatformJob.class,
new MPJLambdaWrapper<PlatformJob>()
- .selectAs(PlatformJob::getId,PlatformJob::getId)
- .select(PlatformJob::getType,PlatformJob::getType)
- .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
- .select(PlatformJob::getStatus,PlatformJob::getStatus)
+ .selectAs(PlatformJob::getId,PlatformJob::getId)
+ .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+ .selectAs(PlatformJob::getDoneDate,PlatformJob::getDoneDate)
+ .select(PlatformJob::getStatus,PlatformJob::getStatus)
+ .select(PlatformJob::getType,PlatformJob::getType)
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
.in(PlatformJob::getType,Constants.ONE,Constants.THREE)
.in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),
Constants.PlatformJobStatus.LEAVED.getKey(),
Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
.apply("year(done_date) = year('"+DateUtil.getPlusTime2(month)+"') and month(done_date) = month('"+DateUtil.getPlusTime2(month)+"') "));
+
+ List<PlatformJob> yearNum = platformJobMapper.selectJoinList(PlatformJob.class,
+ new MPJLambdaWrapper<PlatformJob>()
+ .selectAs(PlatformJob::getId,PlatformJob::getId)
+ .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+ .select(PlatformJob::getStatus,PlatformJob::getStatus)
+ .select(PlatformJob::getType,PlatformJob::getType)
+// .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum)
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
+ .apply("year(done_date) = year('"+DateUtil.getPlusTime2(year)+"') and done_date<= now() "));
List<PlatformJob> monthLastNum = platformJobMapper.selectJoinList(PlatformJob.class,
new MPJLambdaWrapper<PlatformJob>()
.selectAs(PlatformJob::getId,PlatformJob::getId)
@@ -973,17 +1016,7 @@
.in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
.apply("year(done_date) = year('"+DateUtil.getPlusTime2(lastMonth)+"') and month(done_date) = month('"+DateUtil.getPlusTime2(lastMonth)+"') and done_date<= '"
+DateUtil.getPlusTime2(lastMonth)+"'"));
- List<PlatformJob> yearNum = platformJobMapper.selectJoinList(PlatformJob.class,
- new MPJLambdaWrapper<PlatformJob>()
- .selectAs(PlatformJob::getId,PlatformJob::getId)
- .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
- .select(PlatformJob::getStatus,PlatformJob::getStatus)
- .select(PlatformJob::getType,PlatformJob::getType)
-// .selectCount(PlatformJob::getPlatformId,PlatformJob::getCountum)
- .eq(PlatformJob::getIsdeleted,Constants.ZERO)
- .in(PlatformJob::getType,Constants.ONE,Constants.THREE)
- .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
- .apply("year(done_date) = year('"+DateUtil.getPlusTime2(year)+"') and done_date<= '"+DateUtil.getPlusTime2(year)+"'"));
+
List<PlatformJob> yearLastNum = platformJobMapper.selectJoinList(PlatformJob.class,
new MPJLambdaWrapper<PlatformJob>()
.selectAs(PlatformJob::getId,PlatformJob::getId)
@@ -993,7 +1026,7 @@
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
.in(PlatformJob::getType,Constants.ONE,Constants.THREE)
.in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey())
- .apply("year(done_date) = year('"+DateUtil.getPlusTime2(lastYear)+"') and done_date<= '"+DateUtil.getPlusTime2(lastYear)+"'"));
+ .apply("year(done_date) = year('"+DateUtil.getPlusTime2(lastYear)+"') and done_date<= now() "));
data.setMonthOutTotal(getSumTotalByList(monthNum,0,null));//鏈湀鍑哄簱閲�
data.setMonthLastOutTotal(getSumTotalByList(monthLastNum,null,null) );//涓婃湀鍑哄簱閲�
@@ -1011,8 +1044,11 @@
.select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
// .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
- .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(),Constants.PlatformJobStatus.CALLED.getKey())
- .apply(" to_days(create_date) <to_days(now())"));
+ .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(),
+ Constants.PlatformJobStatus.LEAVED.getKey(),Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()
+ ,Constants.PlatformJobStatus.CANCEL.getKey())
+ .apply(" to_days(create_date) < to_days(now()) ")
+ );
//==========浠婂ぉ鍑哄叆搴撳畬鎴愰噺
List<PlatformJob> currentDoneNum = platformJobMapper.selectJoinList(PlatformJob.class,
@@ -1023,9 +1059,10 @@
.select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
// .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
- .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())
+ .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey())
.apply(" to_days(done_date) = to_days(now())"));
- //==========浠婂ぉ涓嬪彂鍑哄叆搴撲换鍔�----
+
+ //==========浠婂ぉ涓嬪彂鍑哄叆搴撲换鍔� 鏈畬鎴愮殑----
List<PlatformJob> currentNum = platformJobMapper.selectJoinList(PlatformJob.class,
new MPJLambdaWrapper<PlatformJob>()
.selectAs(PlatformJob::getId,PlatformJob::getId)
@@ -1034,38 +1071,42 @@
.select(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
// .select("select sum(io_qty) from platform_wms_details a where a.isdeleted=0 and a.job_id=t.id",create_date)
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
- .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())
- .apply(" to_days(create_date) = to_days(now())"));
+ .notIn(PlatformJob::getStatus,Constants.PlatformJobStatus.CANCEL.getKey())
+ .apply(" to_days(create_date) = to_days(now()) and done_date is null "));
BigDecimal beforeOutNum = (getSumTotalByList(beforeJobNum,0,null));//浠婂ぉ涔嬪墠鏈畬鎴愬嚭搴撲换鍔�
BigDecimal currentOutNum = (getSumTotalByList(currentNum,0,null));//浠婂ぉ涓嬪彂鍑哄簱浠诲姟
BigDecimal beforeInNum = (getSumTotalByList(beforeJobNum,1,null));//浠婂ぉ涔嬪墠鏈畬鎴愬叆搴撲换鍔�
BigDecimal currentInNum = (getSumTotalByList(currentNum,1,null));//浠婂ぉ涓嬪彂鍏ュ簱浠诲姟
- data.setCurrentInNum(beforeInNum.add(currentInNum));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
- data.setCurrentOutNum(beforeOutNum.add(currentOutNum));//褰撳墠鍑哄簱鎬讳换鍔℃垚閲�
data.setCurrentInDoneNum(getSumTotalByList(currentDoneNum,1,1));//浠婃棩瀹屾垚閲�
data.setCurrentOutDoneNum(getSumTotalByList(currentDoneNum,0,1));//浠婃棩瀹屾垚閲�
-
- //------------浠婃棩鍑哄叆搴撴晥鐜�----------------
- BigDecimal outHours = getTotalDoneTimes(currentDoneNum,0);//
- BigDecimal inHours = getTotalDoneTimes(currentDoneNum,1);//
- if(outHours.compareTo(new BigDecimal(0))>0){
- data.setTodayOutRate(data.getCurrentOutDoneNum().divide(outHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
- }
- if(inHours.compareTo(new BigDecimal(0))>0){
- data.setTodayInRate(data.getCurrentInDoneNum().divide(inHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
- }
+ data.setCurrentInNum(beforeInNum.add(data.getCurrentInDoneNum()).add(currentInNum));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
+ data.setCurrentOutNum(beforeOutNum.add(data.getCurrentOutDoneNum()).add(currentOutNum));//褰撳墠鍑哄簱鎬讳换鍔℃垚閲�
+ data.setTodayOutRate(getDayTotalRata(data.getCurrentOutDoneNum(),DateUtil.getToday()));//褰撴棩鍑哄簱鏁堢巼
+ data.setTodayInRate(getDayTotalRata(data.getCurrentInDoneNum(),DateUtil.getToday()));//褰撴棩鍏ュ簱鏁堢巼
+ data.setMonthOutRate(getMonthRata(monthNum,Constants.ZERO));//鏈湀鍑哄簱鏁堢巼
+ data.setMonthInRate(getMonthRata(monthNum,Constants.ONE));//鏈湀鍑哄簱鏁堢巼
+ //------------浠婃棩鍑哄叆搴撴晥鐜�----------------
+// BigDecimal outHours = getTotalDoneTimes(currentDoneNum,0);//
+// BigDecimal inHours = getTotalDoneTimes(currentDoneNum,1);//
+//
+// if(outHours.compareTo(new BigDecimal(0))>0){
+// data.setTodayOutRate(data.getCurrentOutDoneNum().divide(outHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
+// }
+// if(inHours.compareTo(new BigDecimal(0))>0){
+// data.setTodayInRate(data.getCurrentInDoneNum().divide(inHours,2));//褰撳墠鍏ュ簱鎬讳换鍔℃垚閲�
+// }
//------------鏈湀鍑哄叆搴撴晥鐜�----------------
// BigDecimal outMonthNum = getSumTotalByList(monthNum,0,null).add(data.getCurrentOutDoneNum());
- BigDecimal inMonthNum = getSumTotalByList(monthNum,1,null).add(data.getCurrentInDoneNum());
- BigDecimal outMonthHours = getTotalDoneTimes(monthNum,0).add(outHours);//
- BigDecimal inMonthHours = getTotalDoneTimes(monthNum,1).add(inHours);//
- if(outMonthHours.compareTo(new BigDecimal(0))>0){
- data.setMonthOutRate(data.getMonthOutTotal().divide(outMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
- }
- if(inMonthHours.compareTo(new BigDecimal(0))>0){
- data.setMonthInRate(inMonthNum.divide(inMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
- }
+// BigDecimal inMonthNum = getSumTotalByList(monthNum,1,null).add(data.getCurrentInDoneNum());
+// BigDecimal outMonthHours = getTotalDoneTimes(monthNum,0).add(outHours);//
+// BigDecimal inMonthHours = getTotalDoneTimes(monthNum,1).add(inHours);//
+// if(outMonthHours.compareTo(new BigDecimal(0))>0){
+// data.setMonthOutRate(data.getMonthOutTotal().divide(outMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍑哄簱鏁堢巼
+// }
+// if(inMonthHours.compareTo(new BigDecimal(0))>0){
+// data.setMonthInRate(inMonthNum.divide(inMonthHours,0,BigDecimal.ROUND_HALF_UP));//鏈湀鍏ュ簱鏁堢巼
+// }
return data;
}
@@ -1077,10 +1118,9 @@
if(platformLogList!=null && platformLogList.size()>0){
return new BigDecimal((double)(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum))/(double)60);
}
-
return new BigDecimal(0);
-
}
+
private BigDecimal getTotalDoneTimes(List<PlatformJob> list, Integer type) {
BigDecimal r = new BigDecimal(0);
if(list==null || list.size() == 0){
@@ -1115,6 +1155,98 @@
}
return r;
}
+
+
+ private BigDecimal getMonthRata(List<PlatformJob> list, Integer type) {
+ BigDecimal r = new BigDecimal(0);
+ if(list==null || list.size() == 0){
+ return r;
+ }
+ List<PlatformJob> jobList= new ArrayList<>();
+ for(PlatformJob job : list) {
+ if (!(Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.DONE.getKey())
+ || Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.LEAVED.getKey())
+ || Constants.equalsInteger(job.getStatus(), Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()))) {
+ //鍙煡璇㈠畬鎴愭暟鎹�
+ continue;
+ }
+ if (type != null && type == 0 && (Constants.equalsInteger(job.getType(), Constants.ONE) || Constants.equalsInteger(job.getType(), Constants.THREE))) {
+ //鍑哄簱
+ jobList.add(job);
+ }
+ if (type != null && type == 1 && (Constants.equalsInteger(job.getType(), Constants.ZERO) || Constants.equalsInteger(job.getType(), Constants.TWO) || Constants.equalsInteger(job.getType(), Constants.FOUR))) {
+ //鍏ュ簱
+ jobList.add(job);
+ }
+ }
+ if(CollectionUtils.isNotEmpty(jobList)){
+ //鑾峰彇浠诲姟鏁版嵁
+ List<String> jobDataList = jobList.stream().filter(i->Objects.nonNull(i.getDoneDate()))
+ .map(i->DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd")).collect(Collectors.toList());
+ if(CollectionUtils.isNotEmpty(jobDataList)){
+ for (String jobDate:jobDataList) {
+ //杩囨护褰撳ぉ鐨勬暟鎹�
+ List<PlatformJob> platformJobList = list.stream().
+ filter(i->jobDate.equals(DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd"))).collect(Collectors.toList());
+ if(CollectionUtils.isNotEmpty(platformJobList)){
+ //鑾峰彇浠婂ぉ鐨�
+ r = r.add(this.getDayTotalRata(getSumTotalByList(platformJobList,type,null),jobDate));
+ }
+ }
+ r = r.divide(new BigDecimal(Integer.toString(jobList.size())),2,BigDecimal.ROUND_HALF_UP);
+ }
+ }
+ return r;
+ }
+
+
+ private BigDecimal getDayTotalRata(BigDecimal totalAmount,String today) {
+ BigDecimal r = new BigDecimal(0);
+ //鏌ヨ浠婃棩鏈�鏃�/鏈�鏅氱殑浣滀笟鏁版嵁
+ List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>()
+ .lambda()
+ .apply(" ( DATE_FORMAT( param1 ,'%Y-%m-%d' ) = '"+today+"' or DATE_FORMAT( param2 ,'%Y-%m-%d' ) = '"+today+"' ) ")
+ );
+ if(totalAmount.compareTo(BigDecimal.ZERO)==0||CollectionUtils.isEmpty(platformLogList)){
+ return BigDecimal.ZERO;
+ }
+ if(platformLogList!=null && platformLogList.size()>0){
+ return this.getWorkTime(totalAmount,platformLogList);
+ }
+ return r;
+ }
+
+ /**
+ * 鏌ヨ浣滀笟鏃堕暱锛堝皬鏃讹級
+ * @param totalAmount
+ * @param platformLogList
+ * @return
+ */
+ public BigDecimal getWorkTime(BigDecimal totalAmount,List<PlatformLog> platformLogList){
+ if(CollectionUtils.isEmpty(platformLogList)){
+ return BigDecimal.ZERO;
+ }
+ //鑾峰彇寮�濮嬫椂闂�
+ List<Long> startTimeList = platformLogList.stream().filter(i->Objects.nonNull(i.getParam1())).map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam1()).getTime()).collect(Collectors.toList());
+ Long startTime = Collections.min(startTimeList);
+ //鑾峰彇缁撴潫鏃堕棿
+ List<Long> endTimeList = platformLogList.stream().filter(i->Objects.nonNull(i.getParam2())).map(i->DateUtil.fromStringToDate("yyyy-MM-dd HH:mm:ss",i.getParam2()).getTime()).collect(Collectors.toList());
+ Long endTime = Collections.max(endTimeList);
+ if(Objects.isNull(startTime)
+ || Objects.isNull(endTime) || (startTime>=endTime)){
+ return BigDecimal.ZERO;
+ }
+ return totalAmount.divide(new BigDecimal(( endTime - startTime )+"").divide(new BigDecimal("3600000"),2,BigDecimal.ROUND_HALF_UP),2,BigDecimal.ROUND_HALF_UP) ;
+ }
+
+
+
+
+
+
+
+
+
private BigDecimal getSumTotalByList(List<PlatformJob> list,Integer type,Integer status) {
BigDecimal r = new BigDecimal(0);
@@ -1739,11 +1871,10 @@
@Override
public VisitDataVO visitSecurityData(){
//寰呰闂�佸凡鐧昏銆佸凡绂诲紑
-
VisitDataVO result = new VisitDataVO();
result.setWaitVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>()
.eq(Visits::getIsdeleted,Constants.ZERO)
- .apply("to_days(create_date)=to_days(now())")
+ .apply(" now() > STARTTIME and now() < ENDTIME")
.in(Visits::getStatus,Constants.VisitStatus.pass,Constants.VisitStatus.xfSuccess )));//寰呰闂�
result.setRegisterVisitNum(visitsJoinMapper.selectCount(new MPJLambdaWrapper<Visits>()
.eq(Visits::getIsdeleted,Constants.ZERO)
@@ -1820,11 +1951,11 @@
);
//鍦ㄥ洯闀挎湡鐩稿叧鏂逛汉鏁�
data.setRelatedTotal(
- (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ZERO)).count()
+ (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.FOUR) ).count()
);
//鍦ㄥ洯鍐呴儴鍛樺伐浜烘暟
data.setInternalTotal(
- (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) && Constants.equalsInteger(i.getCompanyType(),Constants.ONE)).count()
+ (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.TWO) ).count()
);
//鍦ㄥ洯璁垮鏁伴噺
data.setVisitTotal(
@@ -1834,7 +1965,11 @@
data.setInParkCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)).count()
);
- //鍦ㄥ洯鐩稿叧鏂硅溅杈�
+ //鍦ㄥ洯杞﹁締
+ data.setInParkCarUserTotal(
+ (int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.FIVE)).count()
+ );
+ /* //鍦ㄥ洯鐩稿叧鏂硅溅杈�
data.setRelatedCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
&&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.relation)).count()
@@ -1843,26 +1978,26 @@
data.setInternalCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
&&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.internal)).count()
- );
+ );*/
//鏉ヨ杞﹁締
data.setVisitCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
- &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.visitor)).count()
+ &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.fkCar)).count()
);
//鑷敱鐗╂祦杞︽暟閲�
data.setVisitCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
- &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.selfTruck)).count()
+ &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.atwlzyCar)).count()
);
//甯傚叕鍙稿嵏璐ц溅鏁伴噺
data.setInternalJobCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
- &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.cityComTruck)).count()
+ &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.sgsxhCar)).count()
);
//澶栧崗杞︽暟閲�
data.setRelatedJobCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)
- &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.outTruck)).count()
+ &&Constants.equalsInteger(i.getCarType(),Constants.RetentionCarType.wxysCar)).count()
);
data.setVideoPluginUrl(getVideoUrl());
return data;
@@ -1908,7 +2043,7 @@
.in(PlatformJob ::getStatus,new Integer[]{Constants.PlatformJobStatus.WORKING.getKey(),Constants.PlatformJobStatus.CALLED.getKey() })
// .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
.orderByDesc(PlatformJob::getStatus )
- .orderByAsc(PlatformJob::getId )
+ .orderByAsc(PlatformJob::getSortnum )
);
List<PlatformDevice> platformDevices = platformDeviceMapper.selectList(new QueryWrapper<PlatformDevice>().lambda().eq(PlatformDevice::getType,Constants.ONE)
.eq(PlatformDevice::getIsdeleted,Constants.ZERO).isNotNull(PlatformDevice::getDeviceId));
@@ -2002,7 +2137,7 @@
}
int curtotalNum = 0;
Date today = Utils.Date.getStart(new Date());
- long curTime=0, lastTime=0;
+ long curTime=0, lastTime=0 ;
for (int i = 0; i < 8; i++) {
lastTime = curTime;//涓婃鐨勬椂闂�
int curHour = 8+(i*2);
@@ -2025,7 +2160,7 @@
curtotalNum += Constants.formatIntegerNum(workEfficiencyVO.getWorkNum()) ;
}
workEfficiencyVO.setTotalWorkNum(curtotalNum);//绱鍊�
- if(System.currentTimeMillis() < curTime){
+ if((System.currentTimeMillis() + 2*60*60*1000) < curTime ){
workEfficiencyVO.setTotalWorkNum(0);
}
workEfficiencyVOList.add(workEfficiencyVO);
--
Gitblit v1.9.3