From a825583ed6c4df0998248be80dccf1e9fa35bc56 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 24 十二月 2024 16:44:47 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java | 435 ++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 371 insertions(+), 64 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 ac195f5..96369dd 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
@@ -1,5 +1,7 @@
package com.doumee.service.business.impl.thrid;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.TypeReference;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.constants.ResponseStatus;
@@ -14,12 +16,12 @@
import com.doumee.core.haikang.model.param.respose.*;
import com.doumee.core.haikang.service.HKCarOpenService;
import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.tms.model.TMSContants;
import com.doumee.core.tms.model.request.TmsFacrotyCodeListRequest;
+import com.doumee.core.tms.model.request.TmsOrderNoFinishListRequest;
import com.doumee.core.tms.model.request.TmsOutQtyAndVehicleQtyRequest;
-import com.doumee.core.tms.model.response.TmsDistributionOfDeliveryLocResponse;
-import com.doumee.core.tms.model.response.TmsInventoryListResponse;
-import com.doumee.core.tms.model.response.TmsOutQtyAndVehicleQtyResponse;
-import com.doumee.core.tms.model.response.TmsTotalAndReportVehicleQtyResponse;
+import com.doumee.core.tms.model.request.TmsSevenArrivalDetailsRequest;
+import com.doumee.core.tms.model.response.*;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.Utils;
@@ -42,6 +44,7 @@
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
@@ -88,6 +91,9 @@
private PlatformGroupMapper platformGroupMapper;
@Autowired
private TmsService tmsService;
+
+ @Value("${debug_model}")
+ private Boolean isDebug;
/**
* 鑾峰彇鍖哄煙鏍戝舰缁撴瀯鏁版嵁
* @return
@@ -132,7 +138,10 @@
.apply("to_days(done_date) = to_days(now())") );
if(jobs!=null){
for(PlatformJob j :jobs){
- num =num.add(Constants.formatBigdecimal(j.getTotalNum()));
+ if(Objects.nonNull(j)&&Objects.nonNull(j.getTotalNum())){
+ num =num.add(Constants.formatBigdecimal(j.getTotalNum()));
+ }
+
}
}
}else{
@@ -146,7 +155,9 @@
, Constants.PlatformJobStatus.LEAVED.getKey()) );
if(jobs!=null){
for(PlatformJob j :jobs){
- num = num.add(Constants.formatBigdecimal(j.getTotalNum()));
+ if(Objects.nonNull(j)&&Objects.nonNull(j.getTotalNum())){
+ num = num.add(Constants.formatBigdecimal(j.getTotalNum()));
+ }
}
}
}
@@ -529,7 +540,6 @@
BaseResponse<CamerasPreviewURLsResponse> result = HKService.cameraPreviewURLs(request);
if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){
return result.getData().getUrl();
-
}
return null;
}
@@ -704,6 +714,7 @@
.selectAs(PlatformJob::getId,PlatformJob::getId)
.selectAs(PlatformJob::getCreateDate,PlatformJob::getCreateDate)
.selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum)
+ .selectAs(PlatformJob::getStatus,PlatformJob::getStatus)
// .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)
.apply(queryType==0,"to_days(create_date) >= to_days(now()) -7")
@@ -1042,7 +1053,7 @@
.isNotNull(PlatformLog::getParam3)
.ne(PlatformLog::getParam3,Constants.ZERO+""));
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((double)(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum))/(double)3600);
}
}
return r;
@@ -1280,8 +1291,8 @@
*/
@Override
public EnergyBoardVO centerEnergyData(){
- EnergyBoardVO data = new EnergyBoardVO();
- Random random = new Random();
+ EnergyBoardVO data = new EnergyBoardVO();
+ Random random = new Random();
PlatformWaterGas smoke= platformWaterGasMapper.selectOne(new QueryWrapper<PlatformWaterGas>()
.select("sum(num) as num")
.lambda()
@@ -1364,8 +1375,14 @@
}
if( data.getGasQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
//璁$畻鐢ㄦ皵鍚屾瘮鐜瘮
- data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
- data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
+ data.getGasQuantity().setSameRate(
+ (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getSameNum())).divide(data.getGasQuantity().getSameNum()).doubleValue()*100 +""
+ /*Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum()
+ .divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""*/);
+ data.getGasQuantity().setRingRate(
+ (data.getGasQuantity().getTotalNum().subtract(data.getGasQuantity().getRingNum())).divide(data.getGasQuantity().getRingNum()).doubleValue()*100 +""
+ //Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +""
+ );
}
if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
// //璁$畻鐢ㄦ按鍚屾瘮鐜瘮
@@ -1402,7 +1419,7 @@
* @param data
*/
private void getLastMonthElectricityData(EnergyModelDataVO data) {
- BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1");
+// BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1");
// if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
// data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0"));
// data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0"));
@@ -1465,23 +1482,31 @@
* @param data
*/
private void getCurrentDateElectircityData(EnergyModelDataVO data,int days) {
- EnergyTrendRequest param = new EnergyTrendRequest();
- param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));//鏃ユ湡
- param.setMeterType(1);
- param.setShowType("4");
- param.setNodeType(2);
- param.setNodeId("root000000");
+// EnergyTrendRequest param = new EnergyTrendRequest();
+// param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));//鏃ユ湡
+// param.setMeterType(1);
+// param.setShowType("4");
+// param.setNodeType(2);
+// param.setNodeId("root000000");
+// param.setPeriodType("day");
+// BigDecimal total = new BigDecimal(0);
+// BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
+// if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)
+// && response.getData()!=null&& response.getData().getYvalues()!=null ){
+// for (int i = 0; i < response.getData().getYvalues().get(0).getValue().length; i++) {
+// total = total.add(new BigDecimal(StringUtils.defaultString( response.getData().getYvalues().get(0).getValue()[i],"0")));
+// }
+//
+// }
+// data.setTotal(Constants.formatBigdecimal2Float(total).toString());
+ EnergyTotalDataRequest param = new EnergyTotalDataRequest();
param.setPeriodType("day");
- BigDecimal total = new BigDecimal(0);
- BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
- if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)
- && response.getData()!=null&& response.getData().getYvalues()!=null ){
- for (int i = 0; i < response.getData().getYvalues().get(0).getValue().length; i++) {
- total = total.add(new BigDecimal(StringUtils.defaultString( response.getData().getYvalues().get(0).getValue()[i],"0")));
- }
-
+ param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));
+ BaseResponse<EnergyTotalDataResponse> beforMonthResponse = HKService.energyTotal(param);
+ if(beforMonthResponse != null && StringUtils.equals(beforMonthResponse.getCode(), HKConstants.RESPONSE_SUCCEE) && beforMonthResponse.getData()!=null ){
+ data.setTotal(beforMonthResponse.getData().getElectricity());
+ data.setTotalNum(new BigDecimal(beforMonthResponse.getData().getElectricity()));
}
- data.setTotal(Constants.formatBigdecimal2Float(total).toString());
}
private EnergyModelDataVO getDefaultData() {
@@ -1550,7 +1575,7 @@
.last(" group by DATE_FORMAT(TIME_INFO,'%Y-%m')")
);
for (int i = 0; i < 12; i++) {
- Date tempDate = DateUtil.increaseMonth(lastMonth,i);
+ Date tempDate = DateUtil.increaseMonth(lastMonth,i);
EnergyDataVO data = new EnergyDataVO();
data.setTimeData(DateUtil.getFomartDate(tempDate,"YYYY-MM"));
data.setEnergy(new BigDecimal(0));
@@ -1567,7 +1592,8 @@
for (int i = 0; i < 12; i++) {
Date tempDate = DateUtil.increaseMonth(lastMonth,i);
EnergyDataVO data = new EnergyDataVO();
- data.setTimeData(DateUtil.getFomartDate(tempDate,(i+1)+"鏈�"));
+ data.setTimeData(DateUtil.getFomartDate(tempDate,"YYYY-MM"));
+// data.setTimeData(DateUtil.getFomartDate(tempDate,(i+1)+"鏈�"));
data.setEnergy(new BigDecimal(0));
energyDataVOList.add(data);
}
@@ -1684,7 +1710,7 @@
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.ONE)&&Objects.isNull(i.getCompanyType())).count()
);
//鍦ㄥ洯杞﹁締
- data.setInternalCarTotal(
+ data.setInParkCarTotal(
(int) retentionList.stream().filter(i->Constants.equalsInteger(i.getType(),Constants.THREE)).count()
);
//鍦ㄥ洯鐩稿叧鏂硅溅杈�
@@ -1861,6 +1887,9 @@
curtotalNum += Constants.formatIntegerNum(workEfficiencyVO.getWorkNum()) ;
}
workEfficiencyVO.setTotalWorkNum(curtotalNum);//绱鍊�
+ if(System.currentTimeMillis() < curTime){
+ workEfficiencyVO.setTotalWorkNum(0);
+ }
workEfficiencyVOList.add(workEfficiencyVO);
}
return workEfficiencyVOList;
@@ -1966,6 +1995,7 @@
data.setReservationCar(data.getReservationCar()+Constants.formatIntegerNum(model.getCountum()));
data.setCalledNum(data.getCalledNum()+Constants.formatIntegerNum(model.getCountum()));
data.setWorkedNum(data.getWorkedNum()+Constants.formatIntegerNum(model.getCountum()));
+ data.setWorkingCar(data.getWorkingCar()+Constants.formatIntegerNum(model.getCountum()));
}
// 浣滀笟瀹屾垚锛堥绾﹁溅銆佺鍒版暟銆佸凡鍙彿銆佷綔涓氳溅銆佸凡瀹屾垚锛�
if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){
@@ -1991,7 +2021,7 @@
}
// 宸茬鍥�
if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.LEAVED.getKey())){
- data.setWorkingCar(data.getWorkingCar()+Constants.formatIntegerNum(model.getCountum()));
+ // data.setWorkingCar(data.getWorkingCar()+Constants.formatIntegerNum(model.getCountum()));
}
// 宸茶繃鍙凤紙棰勭害杞︺�佺鍒版暟銆佹帓闃熻溅锛�
if(Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.OVER_NUMBER.getKey())){
@@ -2036,13 +2066,22 @@
}
BaseResponse<List<RegionDataRankingDataResponse>> response = HKService.regionDataRanking(request);
if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
- return response.getData();
+ List<RegionDataRankingDataResponse> regionDataRankingDataResponseList = new ArrayList<>();
+ for (RegionDataRankingDataResponse regionDataRankingDataResponse:response.getData()) {
+ if(StringUtils.isNotBlank(regionDataRankingDataResponse.getPercent())){
+ if(Constants.equalsInteger(Integer.valueOf(new BigDecimal(regionDataRankingDataResponse.getPercent()).intValue()),Constants.ONE)){
+ continue;
+ }
+ regionDataRankingDataResponseList.add(regionDataRankingDataResponse);
+ }
+ }
+ return regionDataRankingDataResponseList;
}else{
return null;
}
}
/**
- * 鍑哄簱鑳藉姏鏉庢案鍒�
+ * 鍑哄簱鑳藉姏
* @return
*/
@Override
@@ -2058,13 +2097,17 @@
if(paramList!=null){
String startDate = DateUtil.formatDate(new Date(),"yyyy-MM-dd");
String endDate = DateUtil.formatDate(new Date(),"yyyy-MM-dd");
+ if(isDebug){
+ startDate = "2024-12-01";
+ endDate = "2024-12-05";
+ }
for(TmsFactoryParam p : paramList){
WholeProvinceZxtDetailVO t = new WholeProvinceZxtDetailVO();
t.setFactoryName(p.getName());
t.setCurrentNum(new BigDecimal(0));
t.setUseRate(new BigDecimal(0));
- t.setTotalNum(Constants.formatBigdecimal(p.getNum2()));//鎬诲嚭搴撹兘鍔�
- if(StringUtils.isBlank(p.getCode())){
+ t.setTotalNum(Constants.formatBigdecimal(p.getParam3()));//8灏忔椂鍑哄簱鑳藉姏
+ if(StringUtils.isNotBlank(p.getCode())){
param.setFacrotyCodeList(new ArrayList<>());
param.setDateStart(startDate);
param.setDateEnd(endDate);
@@ -2086,11 +2129,153 @@
return result;
}
/**
+ * 鍏ㄨ韩鍑哄簱鑳藉姏
+ * @return
+ */
+ @Override
+ public WholeProvinceBoardVO centerProvinceData(String factoryCode){
+ WholeProvinceBoardVO data = new WholeProvinceBoardVO();
+ data.setMaxAbility(new BigDecimal(0));
+ data.setHoursAbility(new BigDecimal(0));
+ data.setCurrentPlanNum(new BigDecimal(0));
+ data.setCurrentOrderNum(new BigDecimal(0));
+ data.setCrrentRestNum(new BigDecimal(0));
+ data.setCrrentOutNum(new BigDecimal(0));
+ List<TmsFactoryParam> paramList = factoryList();
+ String code = null;
+ if(paramList!=null){
+ //澶勭悊鏈�澶у嚭搴撹兘鍔涘拰8灏忔椂鍑哄簱鑳藉姏
+ for(TmsFactoryParam param : paramList){
+ if(StringUtils.isNotBlank(factoryCode)){
+ if(StringUtils.equals(param.getCode(),factoryCode)){
+ data.setHoursAbility(data.getHoursAbility().add(Constants.formatBigdecimal(param.getParam3())));
+ data.setMaxAbility(data.getMaxAbility().add(Constants.formatBigdecimal(param.getNum2())));
+ code = param.getCode();
+ break;
+ }
+ }else{
+ data.setHoursAbility(data.getHoursAbility().add(Constants.formatBigdecimal(param.getParam3())));
+ data.setMaxAbility(data.getMaxAbility().add(Constants.formatBigdecimal(param.getNum2())));
+ }
+ }
+ }
+ /* Date date = new Date();
+ TmsOutQtyAndVehicleQtyRequest param = new TmsOutQtyAndVehicleQtyRequest();
+ param.setDateEnd(DateUtil.getShortTime(date));
+ param.setDateStart(DateUtil.getShortTime(date));
+ if(StringUtils.isNotBlank(code)){
+ param.setFacrotyCodeList(new ArrayList<>());
+ param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
+ }
+ List<TmsOutQtyAndVehicleQtyResponse> listSame= tmsService.getOutQtyAndVehicleQty(param);
+ if(listSame!=null ){
+ for(TmsOutQtyAndVehicleQtyResponse model : listSame){
+ data.setCrrentOutNum(data.getCrrentOutNum().add(Constants.formatBigdecimal(model.getTotalOutQty())));//浠婃棩鍑哄簱閲�
+ data.setCrrentOutCarNum(data.getCrrentOutCarNum()+(Constants.formatIntegerNum(model.getVehicleQty())));//浠婃棩鍑哄簱杞︽
+ }
+ }*/
+ initOutboundCapability(data,factoryCode);
+ return data;
+
+ }
+ private void initOutboundCapability(WholeProvinceBoardVO data, String code) {
+ TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
+ if(StringUtils.isNotBlank(code)){
+ param.setFacrotyCodeList(new ArrayList<>());
+ param.getFacrotyCodeList().add(code);
+ }
+ TmsOutboundCapabilityResponse result= tmsService.getOutboundCapability(param);
+ if(result !=null){
+ List<String> planCodes = new ArrayList<>();
+ List<String> todayCodes = new ArrayList<>();
+ String todayDate = DateUtil.getShortTime(new Date());
+ if(result.getCurrentDayOrderList()!=null && result.getCurrentDayOrderList().size()>0){
+ for(TmsOutboundCapabilityInfoResponse model :result.getCurrentDayOrderList()){
+ data.setCurrentOrderNum(data.getCurrentOrderNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+ /**
+ * DISPATCH_TYPE in(1,2) 涓� TRANSPORT_CODE涓嶄负绌猴紝sum(NC_TOTALITY) + DISPATCH_TYPE not in(1,2) sum(NC_TOTALITY)
+ * 浠婃棩鍑哄簱涓嬭揪鐨勮鍒掍换鍔℃�婚噺
+ */
+ if(StringUtils.isNotBlank(model.getTransportCode())
+ && (StringUtils.equals("1",model.getDispatchType()) || StringUtils.equals("2",model.getDispatchType()))){
+ data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+ }
+ if(!(StringUtils.equals("1",model.getDispatchType()) || StringUtils.equals("2",model.getDispatchType()))){
+ data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁″垝閲�
+ }
+
+ /**
+ * 浠婃棩涓嬭揪鍑哄簱鐨勮鍒掍换鍔″搴旂殑杩愯緭杞︽鏁�
+ * TRANSPORT_CODE涓嶄负绌篶ount(transport_code )
+ */
+ if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+ planCodes.add(model.getTransportCode());
+ }
+ /**
+ * 浠婃棩涓嬭揪鍑哄簱鐨勮鍒掍换鍔″搴旂殑杩愯緭杞︽鏁�
+ * TRANSPORT_CODE涓嶄负绌篶ount(transport_code )
+ */
+ if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+ planCodes.add(model.getTransportCode());
+ }
+ /**
+ * out_date涓哄綋鏃�,sum(NC_TOTALITY) 浠婃棩瀹屾垚鐨勫嚭搴撲綔涓氫换鍔℃�婚噺
+ * TRANSPORT_CODE涓嶄负绌� 涓攐ut_date涓哄綋鏃� count(transport_code) 浠婃棩瀹屾垚鐨勫嚭搴撲綔涓氫换鍔$殑杩愯緭杞︽鏁�
+ */
+ if(StringUtils.isNotBlank(model.getOutDate()) && model.getOutDate().length()> 10){
+ String tDate = model.getOutDate().substring(0,10);
+ if(tDate.equals(todayDate)){
+ //濡傛灉鏄綋鏃�
+ data.setCrrentOutNum(data.getCrrentOutNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+ }
+ if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),todayCodes)){
+ todayCodes.add(model.getTransportCode());
+ }
+ }
+ }
+ }
+ if(result.getCurrentDayAgoOrderList()!=null && result.getCurrentDayAgoOrderList().size()>0){
+ for(TmsOutboundCapabilityInfoResponse model :result.getCurrentDayAgoOrderList()){
+ /**
+ * out_date涓虹┖锛宻um(NC_TOTALITY) 鏄ㄥぉ鏈畬鎴愬嚭搴撹鍒掍换鍔�
+ * out_date涓虹┖ 涓擳RANSPORT_CODE涓嶄负绌� * count(transport_code ) 鏄ㄥぉ鏈畬鎴愬嚭搴撹鍒掍换鍔¤溅娆�
+ */
+ if(StringUtils.isBlank(model.getOutDate())){
+ data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁″垝閲�
+ if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+ planCodes.add(model.getTransportCode());
+ }
+ }
+ }
+ }
+ data.setCurrentPlanCarNum(planCodes.size());//浠婃棩璁″垝杞︽
+ data.setCrrentOutCarNum(todayCodes.size());//浠婃棩鍑哄簱杞︽
+ }
+ data.setCrrentRestNum(data.getCurrentPlanNum().subtract(data.getCrrentOutNum()));
+ data.setCrrentRestCarNum(data.getCurrentPlanCarNum() -data.getCrrentOutCarNum());
+ if(data.getCrrentRestNum().compareTo(new BigDecimal(0)) <=0){
+ data.setCrrentRestNum(new BigDecimal(0));
+ }
+ if(data.getCrrentRestCarNum()<=0){
+ data.setCrrentRestCarNum(0);
+ }
+ }
+
+ private boolean notInList(String transportCode, List<String> planCodes) {
+ for(String s :planCodes){
+ if(StringUtils.equals(transportCode,s)){
+ return false;
+ }
+ }
+ return true;
+ }
+
+ /**
* 鍑哄簱鑳藉姏鏉庢案鍒�
* @return
*/
@Override
- public TotalOutQtyNumVO totalOutQtyNum(int queryType){
+ public TotalOutQtyNumVO totalOutQtyNum(int type,String code){
TotalOutQtyNumVO data = new TotalOutQtyNumVO();
data.setCurrentInNum(new BigDecimal(0));
data.setLastInNum(new BigDecimal(0));
@@ -2100,6 +2285,68 @@
data.setLastOutNum(new BigDecimal(0));
data.setSameOutNum(new BigDecimal(0));
+ Date sameStart = DateUtil.getBeginDayOfMonth(-1);
+ Date sameEnd = DateUtil.getEndDayOfMonth(-1);
+ Date curStart = DateUtil.getBeginDayOfMonth(0);
+ Date curEnd = DateUtil.getEndDayOfMonth(0);
+ Date lastStart = DateUtil.getBeginDayOfLastMonth();
+ Date lastEnd = DateUtil.getEndDayOfLastMonth();
+ if(type ==1){
+ //鏈懆
+ sameStart= DateUtil.getBeginDayOfWeek(-1);
+ sameEnd= DateUtil.getEndDayOfWeek(-1);
+ curStart= DateUtil.getBeginDayOfWeek(0);
+ curEnd= DateUtil.getEndDayOfWeek(0);
+ lastStart = DateUtil.getBeginDayOfLastWeek();
+ lastEnd= DateUtil.getEndDayOfLastWeek();
+ }else if(type == 2){
+ curStart= DateUtil.getBeginDayOfYear(0);
+ curEnd= DateUtil.getEndDayOfYear(0);
+ lastStart= DateUtil.getBeginDayOfYear(-1);
+ lastEnd= DateUtil.getEndDayOfYear(-1);
+ sameStart = null;
+ sameEnd =null;
+ }
+ TmsOutQtyAndVehicleQtyRequest param = new TmsOutQtyAndVehicleQtyRequest();
+ if(StringUtils.isNotBlank(code)){
+ param.setFacrotyCodeList(new ArrayList<>());
+ param.getFacrotyCodeList().add(code);
+ }
+ if(type !=2){
+ //鏈勾鐨勪笉闇�瑕佹煡鍘诲勾鍚屽懆鏈�
+ param.setDateEnd(DateUtil.getShortTime(sameEnd));
+ param.setDateStart(DateUtil.getShortTime(sameStart));
+ List<TmsOutQtyAndVehicleQtyResponse> listSame= tmsService.getOutQtyAndVehicleQty(param);//鍘诲勾鍚屾湡
+ if(listSame!=null ){
+ for(TmsOutQtyAndVehicleQtyResponse model : listSame){
+ data.setSameOutNum(data.getSameOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+ data.setSameInNum(data.getSameInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+ }
+ }
+ }
+ param.setDateEnd(DateUtil.getShortTime(curEnd));
+ param.setDateStart(DateUtil.getShortTime(curStart));
+ List<TmsOutQtyAndVehicleQtyResponse> listCur = tmsService.getOutQtyAndVehicleQty(param);//鏈懆鏈�
+ if(listCur!=null ){
+ for(TmsOutQtyAndVehicleQtyResponse model : listCur){
+ data.setCurrentOutNum(data.getCurrentOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+ data.setCurrentInNum(data.getCurrentInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+ data.setTotalCarNum(data.getTotalCarNum()+Constants.formatIntegerNum(model.getVehicleQty()));//绱杞︽
+ }
+ }
+ param.setDateEnd(DateUtil.getShortTime(lastEnd));
+ param.setDateStart(DateUtil.getShortTime(lastStart));
+ List<TmsOutQtyAndVehicleQtyResponse> listLast = tmsService.getOutQtyAndVehicleQty(param);//涓婂懆鏈�
+ if(listCur!=null ){
+ for(TmsOutQtyAndVehicleQtyResponse model : listLast){
+ data.setLastOutNum(data.getLastOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+ data.setLastInNum(data.getLastInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+ }
+ }
+ if(type == 2){//鏈勾鐨�
+ data.setSameOutNum(data.getLastOutNum());
+ data.setSameInNum(data.getLastInNum());
+ }
return data;
}
/**
@@ -2107,36 +2354,26 @@
* @return
*/
@Override
- public List<WholeProvinceMapVO> mapYearAndMonthOutList(){
+ public List<WholeProvinceMapVO> mapYearAndMonthOutList(String code){
List<WholeProvinceMapVO> result = new ArrayList<>();
- List<TmsFactoryParam> paramList =factoryList();
- if(paramList!=null && paramList.size()>0){
- List<String> codes = new ArrayList<>();
- for(TmsFactoryParam p : paramList){
- if(StringUtils.isBlank(p.getCode())){
- continue;
- }
- codes.add(p.getCode());
- }
- if(codes.size()>0){
- TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
- param.setFacrotyCodeList(codes);
- List<TmsDistributionOfDeliveryLocResponse> response = tmsService.getDistributionOfDeliveryLocations(param);//鏌ヨ鍑哄簱閲�
- if(response!=null &&response.size()>0){
- for(TmsDistributionOfDeliveryLocResponse model : response){
- WholeProvinceMapVO tt = getFromProvinceResultList(model ,result);
- if(tt == null){
- tt =new WholeProvinceMapVO();
- tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
- tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
- tt.setProvinceCode(model.getFromProvinceCode());
- tt.setProvinceName(model.getFromProvinceName());
- result.add(tt);
- }
- }
+ TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
+ if(StringUtils.isNotBlank(code)){
+ param.setFacrotyCodeList(new ArrayList<>());
+ param.getFacrotyCodeList().add(code);
+ }
+ List<TmsDistributionOfDeliveryLocResponse> response = tmsService.getDistributionOfDeliveryLocations(param);//鏌ヨ鍑哄簱閲�
+ if(response!=null &&response.size()>0){
+ for(TmsDistributionOfDeliveryLocResponse model : response){
+ WholeProvinceMapVO tt = getFromProvinceResultList(model ,result);
+ if(tt == null){
+ tt =new WholeProvinceMapVO();
+ tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
+ tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
+ tt.setProvinceCode(model.getFromProvinceCode());
+ tt.setProvinceName(model.getFromProvinceName());
+ result.add(tt);
}
}
-
}
return result;
}
@@ -2165,6 +2402,76 @@
return paramList;
}
/**
+ * 鑾峰彇鏈畬鎴愯鍗曢泦鍚�
+ * @return TmsBaseResponse
+ */
+ @Override
+ public TmsBasePageResponse<TmsOrderNoFinishListResponse> orderNoFinishList(TmsOrderNoFinishListRequest param){
+ TmsBasePageResponse<TmsOrderNoFinishListResponse> infoList = tmsService.getNotFinishOrderList(param);//鏌ヨ鍑哄簱閲�
+ /* if(infoList!=null && infoList.getRows()!=null){
+ for(TmsOrderNoFinishListResponse model :infoList.getRows()){
+ model.setStatusDesc(TMSContants.TopStatusLevel.getNameByKey(TMSContants.ChildStatusLevel.getParentIndexByStatus(model.getStatus())));
+
+ }
+ }*/
+ return infoList;
+ }
+ /**
+ * 杩戜竷鏃ュ埌璐ф儏鍐�
+ * @return
+ */
+ @Override
+ public List<LastSevenDaysOrderVo> arriveGoodsList(String code){
+ List<LastSevenDaysOrderVo> list = new ArrayList<>();
+ TmsSevenArrivalDetailsRequest param = new TmsSevenArrivalDetailsRequest();
+ if(StringUtils.isNotBlank(code)){
+ param.setFacrotyCodeList(new ArrayList<>());
+ param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
+ }
+ Date date = new Date();
+ Date startDate = DateUtil.addDaysToDate(date,-7);
+ //鐪嬫澘澶у睆杩�7鏃ュ埌璐ф儏鍐垫棩鏈� 0琛ㄧず褰撳ぉ褰撳墠鎺�7澶╋紝-1琛ㄧず鏈湀鍒�1鍙�-7鍙�
+ String flag = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.SCREEN_SEVENT_ARRIVAL_STARTDATE).getCode();
+ if(StringUtils.equals(flag,"-1")){
+ startDate =DateUtil.getBeginDayOfMonth(0);
+ date = DateUtil.addDaysToDate(startDate,7);
+ }
+ param.setNcCreateDateFrom(DateUtil.getShortTime(startDate));
+ param.setNcCreateDateThrough(DateUtil.getShortTime(date));
+ List<TmsSevenArrivalStatusAndDetailsResponse> infoList = tmsService.getSevenArrivalStatusAndDetails(param);//鏌ヨ鍑哄簱閲�
+ for (int i = 0; i < 7; i++) {
+ LastSevenDaysOrderVo model = new LastSevenDaysOrderVo();
+ Date td = DateUtil.addDaysToDate(date,-i);
+ model.setDateStr(DateUtil.getShortTime(td));
+ dealGoodsListFromResponse(model,infoList);
+ list.add(model);
+ }
+ return list;
+ }
+ private void dealGoodsListFromResponse( LastSevenDaysOrderVo model, List<TmsSevenArrivalStatusAndDetailsResponse> list) {
+ model.setIngList(new ArrayList<>());
+ model.setWaitList(new ArrayList<>());
+ model.setDoneList(new ArrayList<>());
+ if(list ==null || list.size()==0){
+ return;
+ }
+ for(TmsSevenArrivalStatusAndDetailsResponse temp : list){
+ if(StringUtils.equals(temp.getNcCreateDate(),model.getDateStr())){
+ if(Constants.equalsInteger(temp.getStatus(),Constants.ZERO)){
+ model.getWaitList().add(temp);
+ }else if(Constants.equalsInteger(temp.getStatus(),Constants.ONE)){
+ model.getIngList().add(temp);
+ }else if(Constants.equalsInteger(temp.getStatus(),Constants.TWO)){
+ model.getDoneList().add(temp);
+ }
+ }
+ }
+ model.setDoneNum(model.getDoneList().size());
+ model.setIngNum(model.getIngList().size());
+ model.setWaitNum(model.getWaitList().size());
+ }
+
+ /**
* 鍑哄簱鑳藉姏鏉庢案鍒�
* @return
*/
--
Gitblit v1.9.3