|
@@ -10,10 +10,10 @@ import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import com.sckw.contract.api.RemoteContractService;
|
|
import com.sckw.contract.api.RemoteContractService;
|
|
|
import com.sckw.contract.api.model.dto.res.ContractCommonInfoResDto;
|
|
import com.sckw.contract.api.model.dto.res.ContractCommonInfoResDto;
|
|
|
-import com.sckw.core.model.constant.NumberConstant;
|
|
|
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
import com.sckw.core.exception.BusinessException;
|
|
import com.sckw.core.exception.BusinessException;
|
|
|
import com.sckw.core.model.constant.Global;
|
|
import com.sckw.core.model.constant.Global;
|
|
|
|
|
+import com.sckw.core.model.constant.NumberConstant;
|
|
|
import com.sckw.core.model.enums.*;
|
|
import com.sckw.core.model.enums.*;
|
|
|
import com.sckw.core.model.page.PageRes;
|
|
import com.sckw.core.model.page.PageRes;
|
|
|
import com.sckw.core.model.page.PageResult;
|
|
import com.sckw.core.model.page.PageResult;
|
|
@@ -30,10 +30,12 @@ import com.sckw.manage.api.RemoteManageService;
|
|
|
import com.sckw.manage.api.model.dto.res.FindEntCooperateResVo;
|
|
import com.sckw.manage.api.model.dto.res.FindEntCooperateResVo;
|
|
|
import com.sckw.mongo.enums.BusinessTypeEnum;
|
|
import com.sckw.mongo.enums.BusinessTypeEnum;
|
|
|
import com.sckw.mongo.model.SckwLogisticsOrder;
|
|
import com.sckw.mongo.model.SckwLogisticsOrder;
|
|
|
-import com.sckw.mongo.model.SckwWaybillOrder;
|
|
|
|
|
import com.sckw.mongo.model.TableTops;
|
|
import com.sckw.mongo.model.TableTops;
|
|
|
import com.sckw.order.api.dubbo.TradeOrderInfoService;
|
|
import com.sckw.order.api.dubbo.TradeOrderInfoService;
|
|
|
-import com.sckw.order.api.model.*;
|
|
|
|
|
|
|
+import com.sckw.order.api.model.CompleteLogisticsOrderParam;
|
|
|
|
|
+import com.sckw.order.api.model.GoodsLoadingParam;
|
|
|
|
|
+import com.sckw.order.api.model.OrderDetailRes;
|
|
|
|
|
+import com.sckw.order.api.model.UnitInfoDetailRes;
|
|
|
import com.sckw.payment.api.dubbo.PaymentDubboService;
|
|
import com.sckw.payment.api.dubbo.PaymentDubboService;
|
|
|
import com.sckw.payment.api.model.dto.SettlementMoney;
|
|
import com.sckw.payment.api.model.dto.SettlementMoney;
|
|
|
import com.sckw.redis.config.RedisLockUtil;
|
|
import com.sckw.redis.config.RedisLockUtil;
|
|
@@ -216,6 +218,8 @@ public class KwtConsignOrderService {
|
|
|
if (ObjectUtils.isEmpty(order)) {
|
|
if (ObjectUtils.isEmpty(order)) {
|
|
|
return HttpResult.ok();
|
|
return HttpResult.ok();
|
|
|
}
|
|
}
|
|
|
|
|
+ List<KwtWaybillOrderSubtask> waybillOrderSubtasks = waybillOrderSubtaskMapper.selectList(new LambdaQueryWrapper<KwtWaybillOrderSubtask>()
|
|
|
|
|
+ .eq(StringUtils.isNotBlank(order.getId()), KwtWaybillOrderSubtask::getLOrderId, order.getId()));
|
|
|
List<KwtWaybillOrder> kwtWaybillOrders = kwtWaybillOrderMapper.selectList(new LambdaQueryWrapper<KwtWaybillOrder>()
|
|
List<KwtWaybillOrder> kwtWaybillOrders = kwtWaybillOrderMapper.selectList(new LambdaQueryWrapper<KwtWaybillOrder>()
|
|
|
.eq(StringUtils.isNotBlank(order.getId()), KwtWaybillOrder::getLOrderId, order.getId())
|
|
.eq(StringUtils.isNotBlank(order.getId()), KwtWaybillOrder::getLOrderId, order.getId())
|
|
|
/**.eq(KwtWaybillOrder::getEntId, LoginUserHolder.getEntId())*/);
|
|
/**.eq(KwtWaybillOrder::getEntId, LoginUserHolder.getEntId())*/);
|
|
@@ -235,8 +239,8 @@ public class KwtConsignOrderService {
|
|
|
BigDecimal defectiveWeighNumber = NumberConstant.ZERO_TWO;
|
|
BigDecimal defectiveWeighNumber = NumberConstant.ZERO_TWO;
|
|
|
//扣亏量/吨
|
|
//扣亏量/吨
|
|
|
BigDecimal deductWeighNumber = NumberConstant.ZERO_TWO;
|
|
BigDecimal deductWeighNumber = NumberConstant.ZERO_TWO;
|
|
|
- if (CollectionUtils.isNotEmpty(kwtWaybillOrders)) {
|
|
|
|
|
- for (KwtWaybillOrder kwtWaybillOrder : kwtWaybillOrders) {
|
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(waybillOrderSubtasks)) {
|
|
|
|
|
+ for (KwtWaybillOrderSubtask kwtWaybillOrder : waybillOrderSubtasks) {
|
|
|
//派车量
|
|
//派车量
|
|
|
BigDecimal sendCarWeigh = kwtWaybillOrder.getEntrustAmount() == null ? NumberConstant.ZERO_TWO : kwtWaybillOrder.getEntrustAmount();
|
|
BigDecimal sendCarWeigh = kwtWaybillOrder.getEntrustAmount() == null ? NumberConstant.ZERO_TWO : kwtWaybillOrder.getEntrustAmount();
|
|
|
/**亏吨量/吨->装货量-卸货量
|
|
/**亏吨量/吨->装货量-卸货量
|
|
@@ -267,7 +271,7 @@ public class KwtConsignOrderService {
|
|
|
deductWeighNumber = deductWeighNumber.add(deduct);
|
|
deductWeighNumber = deductWeighNumber.add(deduct);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- statistics.put("count", kwtWaybillOrders.size());
|
|
|
|
|
|
|
+ statistics.put("count", waybillOrderSubtasks.size());
|
|
|
statistics.put("sendCarWeighNumber", sendCarWeighNumber);
|
|
statistics.put("sendCarWeighNumber", sendCarWeighNumber);
|
|
|
statistics.put("loadAmountNumber", loadAmountNumber);
|
|
statistics.put("loadAmountNumber", loadAmountNumber);
|
|
|
statistics.put("unloadAmountNumber", unloadAmountNumber);
|
|
statistics.put("unloadAmountNumber", unloadAmountNumber);
|
|
@@ -473,37 +477,41 @@ public class KwtConsignOrderService {
|
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
|
list.forEach(circulateId -> {
|
|
list.forEach(circulateId -> {
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
JSONObject jsonObject = new JSONObject();
|
|
|
- jsonObject.put("circulateId", circulateId);
|
|
|
|
|
- KwtLogisticsOrderCirculate circulate = kwtLogisticsOrderCirculateMapper.selectOne(new LambdaUpdateWrapper<KwtLogisticsOrderCirculate>()
|
|
|
|
|
- .eq(KwtLogisticsOrderCirculate::getId, circulateId)
|
|
|
|
|
|
|
+ jsonObject.put("id", circulateId);
|
|
|
|
|
+// KwtLogisticsOrderCirculate circulate = kwtLogisticsOrderCirculateMapper.selectOne(new LambdaUpdateWrapper<KwtLogisticsOrderCirculate>()
|
|
|
|
|
+// .eq(KwtLogisticsOrderCirculate::getId, circulateId)
|
|
|
|
|
+// );
|
|
|
|
|
+ List<KwtWaybillOrderSubtask> subtasks = waybillOrderSubtaskMapper.selectList(new LambdaQueryWrapper<KwtWaybillOrderSubtask>()
|
|
|
|
|
+ .eq(KwtWaybillOrderSubtask::getId, circulateId)
|
|
|
|
|
+ .eq(KwtWaybillOrderSubtask::getDelFlag, 0)
|
|
|
);
|
|
);
|
|
|
- if (circulate == null) {
|
|
|
|
|
|
|
+ if (subtasks == null) {
|
|
|
jsonObject.put("status", HttpStatus.GLOBAL_EXCEPTION_CODE);
|
|
jsonObject.put("status", HttpStatus.GLOBAL_EXCEPTION_CODE);
|
|
|
jsonObject.put("message", "单据不存在或者单据异常");
|
|
jsonObject.put("message", "单据不存在或者单据异常");
|
|
|
} else {
|
|
} else {
|
|
|
/**循环单逻辑失效 如果已生成趟次数据,则不处理趟次数据*/
|
|
/**循环单逻辑失效 如果已生成趟次数据,则不处理趟次数据*/
|
|
|
- kwtLogisticsOrderCirculateMapper.update(null, new LambdaUpdateWrapper<KwtLogisticsOrderCirculate>()
|
|
|
|
|
- .set(KwtLogisticsOrderCirculate::getStatus, NumberConstant.ONE)
|
|
|
|
|
- .set(KwtLogisticsOrderCirculate::getUpdateBy, LoginUserHolder.getUserId())
|
|
|
|
|
- .set(KwtLogisticsOrderCirculate::getUpdateTime, new Date())
|
|
|
|
|
- .eq(KwtLogisticsOrderCirculate::getId, circulateId)
|
|
|
|
|
- .eq(KwtLogisticsOrderCirculate::getLOrderId, Long.parseLong(lOrderId))
|
|
|
|
|
|
|
+ waybillOrderSubtaskMapper.update(null, new LambdaUpdateWrapper<KwtWaybillOrderSubtask>()
|
|
|
|
|
+ .set(KwtWaybillOrderSubtask::getStatus, NumberConstant.ONE)
|
|
|
|
|
+ .set(KwtWaybillOrderSubtask::getUpdateBy, LoginUserHolder.getUserId())
|
|
|
|
|
+ .set(KwtWaybillOrderSubtask::getUpdateTime, new Date())
|
|
|
|
|
+ .eq(KwtWaybillOrderSubtask::getId, circulateId)
|
|
|
|
|
+ .eq(KwtWaybillOrderSubtask::getLOrderId, Long.parseLong(lOrderId))
|
|
|
);
|
|
);
|
|
|
- /**更新MongoDB*/
|
|
|
|
|
- if (circulate.getWOrderId() != null) {
|
|
|
|
|
- SckwWaybillOrder order = new SckwWaybillOrder();
|
|
|
|
|
- order.set_id(circulate.getWOrderId());
|
|
|
|
|
- order.setWOrderId(circulate.getWOrderId());
|
|
|
|
|
-// order.setStatus(NumberConstant.ONE);
|
|
|
|
|
- order.setUpdateTime(new Date());
|
|
|
|
|
- order.setUpdateByName(LoginUserHolder.getUserName());
|
|
|
|
|
- order.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
|
|
- SckwBusSum busSum = new SckwBusSum();
|
|
|
|
|
- busSum.setBusSumType(BusinessTypeEnum.WAYBILL_ORDER_TYPE.getName());
|
|
|
|
|
- busSum.setMethod(NumberConstant.TWO);
|
|
|
|
|
- busSum.setObject(order);
|
|
|
|
|
- streamBridge.send("sckw-busSum", com.alibaba.fastjson2.JSON.toJSONString(busSum));
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// /**更新MongoDB*/
|
|
|
|
|
+// if (circulate.getWOrderId() != null) {
|
|
|
|
|
+// SckwWaybillOrder order = new SckwWaybillOrder();
|
|
|
|
|
+// order.set_id(circulate.getWOrderId());
|
|
|
|
|
+// order.setWOrderId(circulate.getWOrderId());
|
|
|
|
|
+//// order.setStatus(NumberConstant.ONE);
|
|
|
|
|
+// order.setUpdateTime(new Date());
|
|
|
|
|
+// order.setUpdateByName(LoginUserHolder.getUserName());
|
|
|
|
|
+// order.setUpdateBy(LoginUserHolder.getUserId());
|
|
|
|
|
+// SckwBusSum busSum = new SckwBusSum();
|
|
|
|
|
+// busSum.setBusSumType(BusinessTypeEnum.WAYBILL_ORDER_TYPE.getName());
|
|
|
|
|
+// busSum.setMethod(NumberConstant.TWO);
|
|
|
|
|
+// busSum.setObject(order);
|
|
|
|
|
+// streamBridge.send("sckw-busSum", com.alibaba.fastjson2.JSON.toJSONString(busSum));
|
|
|
|
|
+// }
|
|
|
jsonObject.put("status", HttpStatus.SUCCESS_CODE);
|
|
jsonObject.put("status", HttpStatus.SUCCESS_CODE);
|
|
|
jsonObject.put("message", "停止接单成功");
|
|
jsonObject.put("message", "停止接单成功");
|
|
|
}
|
|
}
|
|
@@ -572,7 +580,14 @@ public class KwtConsignOrderService {
|
|
|
}
|
|
}
|
|
|
/**请求参数校验*/
|
|
/**请求参数校验*/
|
|
|
checkParam(driverParam);
|
|
checkParam(driverParam);
|
|
|
- List<DriverListVo> list = kwtLogisticsOrderMapper.selectLoopOrderAndDriverListByOrderId(driverParam);
|
|
|
|
|
|
|
+// List<DriverListVo> list = kwtLogisticsOrderMapper.selectLoopOrderAndDriverListByOrderId(driverParam);
|
|
|
|
|
+ List<Integer> orderStatus = new ArrayList<>() {{
|
|
|
|
|
+ add(CarWaybillEnum.APPROVAL_PASS.getCode());
|
|
|
|
|
+ add(CarWaybillEnum.APPROVAL_IN.getCode());
|
|
|
|
|
+ add(CarWaybillEnum.APPROVAL_NO_PASS.getCode());
|
|
|
|
|
+ add(CarWaybillEnum.APPROVAL_TREAT.getCode());
|
|
|
|
|
+ }};
|
|
|
|
|
+ List<DriverListVo> list = waybillOrderSubtaskMapper.selectLoopOrderAndDriverListByOrderId(driverParam, 1, orderStatus);
|
|
|
Map<String, RTruckVo> truck = new HashMap<>(Global.NUMERICAL_SIXTEEN);
|
|
Map<String, RTruckVo> truck = new HashMap<>(Global.NUMERICAL_SIXTEEN);
|
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
if (CollectionUtils.isNotEmpty(list)) {
|
|
|
List<String> collect = list.stream().map(DriverListVo::getTruckNo).distinct().collect(Collectors.toList());
|
|
List<String> collect = list.stream().map(DriverListVo::getTruckNo).distinct().collect(Collectors.toList());
|