|
@@ -101,11 +101,7 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
int i = 0;
|
|
|
switch (orderType.intValue()) {
|
|
|
case 1:
|
|
|
- i = dispatchSteelOrder(map);//新增销售订单
|
|
|
- break;
|
|
|
case 2:
|
|
|
- i = dispatchSteelOrder(map);//新增水渣发运计划订单
|
|
|
- break;
|
|
|
case 3:
|
|
|
i = dispatchSteelOrder(map);//新增焦炭发运计划订单
|
|
|
break;
|
|
@@ -114,13 +110,14 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
case 5:
|
|
|
case 6:
|
|
|
case 7:
|
|
|
+ case 8:
|
|
|
case 17:
|
|
|
case 18:
|
|
|
i = addCGPurOrders(map);
|
|
|
break;
|
|
|
- case 8:
|
|
|
- i = addCGPurOrder(map); //新增采购运输订单
|
|
|
- break;
|
|
|
+// case 8:
|
|
|
+// i = addCGPurOrder(map); //新增采购运输订单
|
|
|
+// break;
|
|
|
case 9:
|
|
|
break;
|
|
|
case 10:
|
|
@@ -549,63 +546,41 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
}
|
|
|
|
|
|
//撤销订单
|
|
|
+ @Transactional
|
|
|
@Override
|
|
|
public int undoOrder(Map<String, Object> map) {
|
|
|
int result=0;
|
|
|
- Integer orderId =(Integer) map.get("orderId");
|
|
|
- OmstruckOrder omstruckOrder=new OmstruckOrder();
|
|
|
+ BigDecimal orderId =DataChange.dataToBigDecimal(map.get("orderId"));
|
|
|
+ Map<String, Object> mesMap = omstruckOrderSeparateMapper.getOrderMesByOrderId(orderId);
|
|
|
+ BigDecimal orderPlanId = DataChange.dataToBigDecimal(mesMap.get("orderPlanId"));
|
|
|
+ int orderType = DataChange.dataToBigDecimal(mesMap.get("orderType")).intValue();
|
|
|
+ BigDecimal resultTotalId = DataChange.dataToBigDecimal(mesMap.get("resultTotalId"));
|
|
|
+ OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
|
omstruckOrder.setOrderId(DataChange.dataToBigDecimal(orderId));
|
|
|
- Integer orderTypee = omstruckOrderMapper.getOrderTypeByOrderNumber(new BigDecimal(orderId));
|
|
|
- if(orderTypee == 11 ){
|
|
|
- omstruckOrder.setOrderStatus(new BigDecimal(4));
|
|
|
- result += omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
- return result ;
|
|
|
- }
|
|
|
- //根据运输订单号获取planId
|
|
|
- Map<String, Object> messageMap = omstruckOrderSeparateMapper.getOmstruckOrderResult(new BigDecimal(orderId));
|
|
|
- BigDecimal orderPlanId =(BigDecimal) messageMap.get("orderPlanId");
|
|
|
- //将订单状态设为未接收
|
|
|
omstruckOrder.setOrderStatus(new BigDecimal(4));
|
|
|
//讲路段顺序号设为空,适应进厂以后扫码
|
|
|
omstruckOrder.setOrderLineSequence(new BigDecimal(0));
|
|
|
result += omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
- List<Map<String, Object>> allResultIdList = omstruckOrderMapper.getAllResultId(DataChange.dataToBigDecimal(orderId));
|
|
|
- for (Map<String,Object> allResultId:allResultIdList
|
|
|
- ) {
|
|
|
- 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);
|
|
|
+ if(orderType == 11 ){
|
|
|
+ result += omstruckOrderMapper.deleteLoadResult(resultTotalId);
|
|
|
+ return result ;
|
|
|
}
|
|
|
- //删除所有实绩
|
|
|
- Integer orderType = omstruckOrderMapper.getOrderTypeByOrderNumber(new BigDecimal(orderId));
|
|
|
- switch (orderType){
|
|
|
-// case 12:
|
|
|
-// case 13:
|
|
|
-// case 20:
|
|
|
- case 15:
|
|
|
- case 19:
|
|
|
- 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;
|
|
|
+ //通过总实绩ID删除所有已经生成的实绩
|
|
|
+ result += omstruckOrderMapper.deleteEnResult(resultTotalId);
|
|
|
+ result += omstruckOrderMapper.deleteWeightResult(resultTotalId);
|
|
|
+ result += omstruckOrderMapper.deleteUnloadResult(resultTotalId);
|
|
|
+ result += omstruckOrderMapper.deleteLoadResult(resultTotalId);
|
|
|
+ result += omstruckOrderMapper.deleteLeaveResult(resultTotalId);
|
|
|
+ if(orderType == 15 || orderType == 16 || orderType == 19){
|
|
|
+ Map<String, Object> sporadicOrderTimes = omstruckOrderMapper.getSporadicOrderTimes(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);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return result;
|
|
@@ -1905,7 +1880,6 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
public Map<String, Object> getMessageToApp(Map<String, Object> map){
|
|
|
BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
|
|
|
Integer orderType;
|
|
|
- String type="";
|
|
|
//获取订单类型
|
|
|
if(map.get("orderType") == null){
|
|
|
orderType = omstruckOrderMapper.getOrderTypeByOrderNumber(orderId);
|
|
@@ -1953,10 +1927,7 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
break;
|
|
|
case 19:
|
|
|
mesMap=omstruckOrderMapper.getSporadicOrder(map);
|
|
|
- type += "零星退货";
|
|
|
- mesMap.put("type", type);
|
|
|
-
|
|
|
-
|
|
|
+ mesMap.put("type", "零星退货");
|
|
|
}
|
|
|
mesMap.put("materialMesList", omstruckOrderMapper.getMaterialMes(orderId));
|
|
|
|
|
@@ -1971,25 +1942,25 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
|
*/
|
|
|
public List<Map<String, Object>> getAllOrderMessagesByCapacityNum(Map<String, Object> map){
|
|
|
String capacityNumber = (String) map.get("capacityNumber");
|
|
|
-
|
|
|
//通过车牌号查询所有未下发的订单ID
|
|
|
- List<Map<String, Object>> orderMesList = omstruckOrderMapper.getOrderIdListByCapacityNumber(capacityNumber);
|
|
|
+ List<Map<String, Object>> orderMesList = omstruckOrderMapper.getOrderIdListByCapacityNumber(capacityNumber);
|
|
|
List<Map<String, Object>> mesMapList = new ArrayList<>();
|
|
|
for (Map<String, Object> orderMesMap: orderMesList) {
|
|
|
+ int orderType = DataChange.dataToBigDecimal(orderMesMap.get("orderType")).intValue();
|
|
|
//如果订单类型为2 则判断订单发货日期是否为当日 如果不是当日则不给显示
|
|
|
- if(DataChange.dataToBigDecimal(orderMesMap.get("orderType")).intValue() == 2){
|
|
|
+ if(orderType == 2){
|
|
|
Integer judgeDate = omstruckOrderSeparateMapper.getDeliveryDate(orderMesMap.get("orderId"));
|
|
|
if(judgeDate == null){ // 数据为空则不是当天的订单
|
|
|
continue;
|
|
|
}
|
|
|
}
|
|
|
- if(DataChange.dataToBigDecimal(orderMesMap.get("orderType")).intValue() == 10||DataChange.dataToBigDecimal(orderMesMap.get("orderType")).intValue() == 20){
|
|
|
+ if(orderType == 10|| orderType == 20){
|
|
|
Integer planEnable = omstruckOrderSeparateMapper.getOrderPlanEnable(orderMesMap.get("orderId"));
|
|
|
if(planEnable == 0){ // 数据为0则失效
|
|
|
continue;
|
|
|
}
|
|
|
}
|
|
|
- if(DataChange.dataToBigDecimal(orderMesMap.get("orderType")).intValue()==11){
|
|
|
+ if(orderType == 11){
|
|
|
int result = omstruckOrderSeparateMapper.getInward(orderMesMap.get("orderId"));
|
|
|
if(result == 0){
|
|
|
continue;
|