From a58e10712eff439bd06fedd1613168ab72db00da Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 28 四月 2025 16:20:31 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java | 237 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 180 insertions(+), 57 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 82fb1cc..93e4c90 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());
@@ -751,6 +753,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 +778,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 +958,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;
}
@@ -961,6 +988,18 @@
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 +1012,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 +1022,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 +1040,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 +1055,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 +1067,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 +1114,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 +1151,94 @@
}
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 = list.stream().filter(i->Objects.nonNull(i.getDoneDate())).map(i->DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd")).collect(Collectors.toList());
+ 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));
+ }
+ }
+ }
+ return r;
+ }
+
+
+ private BigDecimal getDayTotalRata(BigDecimal totalAmount,String today) {
+ BigDecimal r = new BigDecimal(0);
+ //鏌ヨ浠婃棩鏈�鏃�/鏈�鏅氱殑浣滀笟鏁版嵁
+ List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>()
+ .lambda()
+ .apply(" ( to_days(param1) = '"+today+"' or to_days(param2) = '"+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 +1863,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)
@@ -1908,7 +2031,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));
--
Gitblit v1.9.3