|
@@ -545,7 +545,7 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
@Transactional
|
|
@Transactional
|
|
- public int driverReceiveOrRefuse(Map<String, Object> map) {
|
|
|
|
|
|
+ public synchronized int driverReceiveOrRefuse(Map<String, Object> map) {
|
|
BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
|
|
BigDecimal orderId = DataChange.dataToBigDecimal(map.get("orderId"));
|
|
OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
if((Integer) map.get("orderReceiveStatus") == 1){
|
|
if((Integer) map.get("orderReceiveStatus") == 1){
|
|
@@ -558,6 +558,18 @@ public class OmstruckOrderServiceImpl implements IOmstruckOrderService {
|
|
//通过订单ID查询信息
|
|
//通过订单ID查询信息
|
|
Map<String, Object> orderMessage = omstruckOrderSeparateMapper.getOrderMessagge(orderId);
|
|
Map<String, Object> orderMessage = omstruckOrderSeparateMapper.getOrderMessagge(orderId);
|
|
omstruckOrderSeparateService.addAllSonResult(orderMessage);
|
|
omstruckOrderSeparateService.addAllSonResult(orderMessage);
|
|
|
|
+ //判断订单是否是一车多单
|
|
|
|
+
|
|
|
|
+ BigDecimal orderType= (BigDecimal) orderMessage.get("orderType");
|
|
|
|
+ if (orderType.equals(15)||orderType.equals(16)){
|
|
|
|
+ //通过订单查询趟次
|
|
|
|
+ Integer sporadicOrderTimes =omstruckOrderMapper.getSporadicOrderTimes(orderId);
|
|
|
|
+ //生成作业实绩之后、更改订单数量
|
|
|
|
+ if (orderMessage.containsKey("orderPlanId")&&sporadicOrderTimes>0){
|
|
|
|
+ int state= omstruckOrderSeparateService.updateTimes(new BigDecimal(orderMessage.get("orderPlanId").toString()),sporadicOrderTimes-1);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
}else { //其他状态都视为 拒绝接单
|
|
}else { //其他状态都视为 拒绝接单
|
|
omstruckOrder.setOrderStatus(new BigDecimal(6));
|
|
omstruckOrder.setOrderStatus(new BigDecimal(6));
|
|
//添加拒绝原因
|
|
//添加拒绝原因
|