|
@@ -112,6 +112,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 5:
|
|
|
case 6:
|
|
|
case 7:
|
|
|
+ case 17:
|
|
|
+ case 18:
|
|
|
i = addCGPurOrders(map);
|
|
|
break;
|
|
|
case 8:
|
|
@@ -228,6 +230,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 6:
|
|
|
case 7:
|
|
|
case 8:
|
|
|
+ case 17:
|
|
|
+ case 18:
|
|
|
if (map.get("purchaseOrderId") != null)
|
|
|
omstruckOrder.setOrderPlanId(DataChange.dataToBigDecimal(map.get("purchaseOrderId")));
|
|
|
if (map.get("unloadPointId") != null) // 添加卸货点
|
|
@@ -318,6 +322,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 6:
|
|
|
case 7:
|
|
|
case 8:
|
|
|
+ case 17:
|
|
|
+ case 18:
|
|
|
//生成子表主键
|
|
|
omstruckOrderMaterial.setOrderMaterialId(omstruckOrderMaterialMapper.selectMaxId());
|
|
|
omstruckOrderMaterial.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
|
|
@@ -392,6 +398,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 6:
|
|
|
case 7:
|
|
|
case 8:
|
|
|
+ case 17:
|
|
|
+ case 18:
|
|
|
//修改运输订单子表物资重量
|
|
|
OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
|
|
|
//添加子表主键 通过订单ID查询出子表主键
|
|
@@ -520,6 +528,56 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //撤销订单
|
|
|
+ @Override
|
|
|
+ public int undoOrder(Map<String, Object> map) {
|
|
|
+ int result=0;
|
|
|
+ Integer orderId =(Integer) map.get("orderId");
|
|
|
+ OmstruckOrder omstruckOrder=new OmstruckOrder();
|
|
|
+ omstruckOrder.setOrderId(DataChange.dataToBigDecimal(orderId));
|
|
|
+ //根据运输订单号获取planId
|
|
|
+ Map<String, Object> messageMap = omstruckOrderSeparateMapper.getOmstruckOrderResult(new BigDecimal(orderId));
|
|
|
+ BigDecimal orderPlanId =(BigDecimal) messageMap.get("orderPlanId");
|
|
|
+ omstruckOrder.setOrderStatus(new BigDecimal(4));
|
|
|
+ result += omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
+ Map<String, Object> allResultId = omstruckOrderMapper.getAllResultId(DataChange.dataToBigDecimal(orderId));
|
|
|
+ BigDecimal weightResultId =(BigDecimal) allResultId.get("weightResultId");
|
|
|
+ result += omstruckOrderMapper.deleteWeightResult(weightResultId);
|
|
|
+ BigDecimal loadResultId =(BigDecimal) allResultId.get("loadResultId");
|
|
|
+ if (loadResultId!=null) {
|
|
|
+ result += omstruckOrderMapper.deleteLoadResult(loadResultId);
|
|
|
+ }
|
|
|
+ BigDecimal leaveResultId=(BigDecimal) allResultId.get("leaveResultId");
|
|
|
+ result += omstruckOrderMapper.deleteLeaveResult(leaveResultId);
|
|
|
+ BigDecimal unloadResultId =(BigDecimal) allResultId.get("unloadResultId");
|
|
|
+ if (unloadResultId!=null) {
|
|
|
+ result += omstruckOrderMapper.deleteUnloadResult(unloadResultId);
|
|
|
+ }
|
|
|
+ BigDecimal enFactoryId =(BigDecimal) allResultId.get("enFactoryId");
|
|
|
+ result +=omstruckOrderMapper.deleteEnResult(enFactoryId);
|
|
|
+ //删除所有实绩
|
|
|
+ Integer orderType = omstruckOrderMapper.getOrderTypeByOrderNumber(new BigDecimal(orderId));
|
|
|
+ switch (orderType){
|
|
|
+ case 12:
|
|
|
+ case 13:
|
|
|
+ case 15:
|
|
|
+ case 16:
|
|
|
+ Map<String, Object> sporadicOrderTimes = omstruckOrderMapper.getSporadicOrderTimes(new BigDecimal(orderId));
|
|
|
+
|
|
|
+ BigDecimal orderTimes =(BigDecimal)sporadicOrderTimes.get("orderTimes");
|
|
|
+ BigDecimal transTimes = (BigDecimal)sporadicOrderTimes.get("transTimes");
|
|
|
+ //更新趟次
|
|
|
+ omstruckOrderSeparateService.updateTimes(orderPlanId,orderTimes.intValue()+1);
|
|
|
+ //更新已运输趟次
|
|
|
+ if (transTimes.intValue()>0) {
|
|
|
+ omstruckOrderSeparateMapper.updateTranTimes(orderPlanId, transTimes.intValue() - 1);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 销售物流,下发订单
|
|
|
*
|
|
@@ -579,15 +637,20 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
Map<String, Object> orderMessage = omstruckOrderSeparateMapper.getOrderMessagge(orderId);
|
|
|
//添加各个实绩
|
|
|
omstruckOrderSeparateService.addAllSonResult(orderMessage);
|
|
|
-
|
|
|
//判断订单是否是一车多单
|
|
|
BigDecimal orderType = (BigDecimal) orderMessage.get("orderType");
|
|
|
if (orderType.intValue()==15 || orderType.intValue()==16) {
|
|
|
//通过订单查询趟次
|
|
|
- Integer sporadicOrderTimes = omstruckOrderMapper.getSporadicOrderTimes(orderId);
|
|
|
+ Map<String, Object> sporadicOrderTimes = omstruckOrderMapper.getSporadicOrderTimes(orderId);
|
|
|
+ BigDecimal orderTimes = DataChange.dataToBigDecimal(sporadicOrderTimes.get("orderTimes"));
|
|
|
+ //通过订单id查询已运输趟次
|
|
|
+ BigDecimal transTimes=DataChange.dataToBigDecimal(sporadicOrderTimes.get("transTimes"));
|
|
|
//生成作业实绩之后、更改订单数量
|
|
|
- if (orderMessage.containsKey("orderPlanId") && sporadicOrderTimes > 0) {
|
|
|
- int state = omstruckOrderSeparateService.updateTimes(new BigDecimal(orderMessage.get("orderPlanId").toString()), sporadicOrderTimes - 1);
|
|
|
+ if (orderMessage.containsKey("orderPlanId") && orderTimes.intValue() > 0) {
|
|
|
+ int state =0;
|
|
|
+ state+=omstruckOrderSeparateService.updateTimes(new BigDecimal(orderMessage.get("orderPlanId").toString()), orderTimes.intValue() - 1);
|
|
|
+ //接收订单以后已运输订单趟次+1
|
|
|
+ state+=omstruckOrderSeparateMapper.updateTranTimes(DataChange.dataToBigDecimal(orderMessage.get("orderPlanId").toString()),transTimes.intValue()+1);
|
|
|
System.out.println(state);
|
|
|
}
|
|
|
}
|
|
@@ -826,7 +889,13 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
String carrierSsoId = (String) map.get("carrierSsoId");
|
|
|
BigDecimal carrierId = omstruckOrderMapper.getCarrierIdBySSO(carrierSsoId);
|
|
|
map.put("carrierId",carrierId);
|
|
|
- return omstruckOrderMapper.selectTransportOrderForSale(map);
|
|
|
+ List<Map<String, Object>> mapList = omstruckOrderMapper.selectTransportOrderForSale(map);
|
|
|
+ int count = 1;
|
|
|
+ for (Map<String, Object> stringObjectMap : mapList) {
|
|
|
+ stringObjectMap.put("ROW_ID",count);
|
|
|
+ count ++;
|
|
|
+ }
|
|
|
+ return mapList;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -1671,6 +1740,8 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 6:
|
|
|
case 7:
|
|
|
case 8:
|
|
|
+ case 17:
|
|
|
+ case 18:
|
|
|
mesMap = omstruckOrderMapper.getCGOrderMessageToApp(map);
|
|
|
break;
|
|
|
case 9:
|
|
@@ -1683,8 +1754,6 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 15:
|
|
|
case 16:
|
|
|
mesMap = omstruckOrderMapper.getSporadicOrder(map);
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
mesMap.put("materialMesList", omstruckOrderMapper.getMaterialMes(orderId));
|
|
|
return mesMap;
|