|
@@ -44,82 +44,204 @@ public class AmstruckSporadicOrderServiceImpl implements IAmstruckSporadicOrderS
|
|
|
@Autowired
|
|
|
TmstruckTotalResultMapper tmstruckTotalResultMapper;
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* 新增零星物资进出厂(以及销售钢材退货)
|
|
|
* @param mapValue
|
|
|
* @return
|
|
|
+ * mapvalue所需值:number(趟次),supplierId(发货单位),receiveId(收货单位),carrierId(承运商),
|
|
|
+ * orderType(订单类型),lineId(运输路径),materialId(物资),orderMaterialNumber(物资件数)
|
|
|
+ * materialPriority(装货优先级)
|
|
|
+ * orderType:15 内转精煤
|
|
|
+ * modifier:zx
|
|
|
*/
|
|
|
@Transactional
|
|
|
@Override
|
|
|
public int addSporadicOrders(Map<String, Object> mapValue) {
|
|
|
int result = 0;
|
|
|
- // 新增零星订单表
|
|
|
- // 发货单位
|
|
|
- BigDecimal sendUnit = new BigDecimal((Integer) mapValue.get("supplierId"));
|
|
|
- // 收货单位
|
|
|
- BigDecimal receiveUnitId = new BigDecimal((Integer) mapValue.get("receiveId"));
|
|
|
- // 承运商
|
|
|
- BigDecimal carrierId = new BigDecimal((Integer) mapValue.get("carrierId"));
|
|
|
- // 得到订单类型
|
|
|
- BigDecimal orderType = new BigDecimal((Integer) mapValue.get("orderType"));
|
|
|
- // 得到运输路径
|
|
|
- BigDecimal lineId = new BigDecimal((Integer) mapValue.get("lineId"));
|
|
|
- BigDecimal sporadicOrderId = amstruckSporadicOrderMapper.selectSporadicOrderId();
|
|
|
- AmstruckSporadicOrder amstruckSporadicOrder = new AmstruckSporadicOrder();
|
|
|
- amstruckSporadicOrder.setSporadicOrderId(sporadicOrderId);
|
|
|
- amstruckSporadicOrder.setSporadicOrderNo(DataChange.generateEightDigitsNumber("WLXDD",sporadicOrderId.intValue()));
|
|
|
- amstruckSporadicOrder.setSendUnitId(sendUnit);
|
|
|
- amstruckSporadicOrder.setReceiveUnitId(receiveUnitId);
|
|
|
- amstruckSporadicOrder.setCarrierId(carrierId);
|
|
|
- amstruckSporadicOrder.setIssueStatus(new BigDecimal(0));
|
|
|
- amstruckSporadicOrder.setInsertTime(new Date());
|
|
|
- amstruckSporadicOrder.setInsertUsername("admin");
|
|
|
- amstruckSporadicOrder.setDeleted(new BigDecimal(0));
|
|
|
- amstruckSporadicOrder.setInsertUpdateRemark("无");
|
|
|
- List<Map<String,Object>> mapList = (List<Map<String, Object>>) mapValue.get("mapList");
|
|
|
- // 新增运输订单表
|
|
|
- OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
|
- BigDecimal orderId = omstruckOrderMapper.selectMaxId();
|
|
|
- omstruckOrder.setOrderId(orderId);
|
|
|
- omstruckOrder.setOrderPlanId(sporadicOrderId);
|
|
|
- omstruckOrder.setOrderNumber(DataChange.generateEightDigitsNumber("WYSDD",orderId.intValue()));
|
|
|
- omstruckOrder.setOrderType(orderType);
|
|
|
- omstruckOrder.setInsertTime(new Date());
|
|
|
- omstruckOrder.setInsertUsername("admin");
|
|
|
- omstruckOrder.setInsertUpdateRemark("无");
|
|
|
- omstruckOrder.setLineId(lineId);
|
|
|
- //新增总实绩id
|
|
|
- TmstruckTotalResult tmstruckTotalResult=new TmstruckTotalResult();
|
|
|
- tmstruckTotalResult.setResultTotalId(tmstruckTotalResultMapper.selectTmstruckTotalResultId());
|
|
|
- tmstruckTotalResult.setOrderId(omstruckOrder.getOrderId());
|
|
|
- //新增总实绩
|
|
|
- result += tmstruckTotalResultMapper.insertSelective(tmstruckTotalResult);
|
|
|
- result += amstruckSporadicOrderMapper.insertSelective(amstruckSporadicOrder);
|
|
|
- result += omstruckOrderMapper.insertSelective(omstruckOrder);
|
|
|
- for (Map<String, Object> map : mapList) {
|
|
|
- BigDecimal materialId = new BigDecimal((Integer) map.get("materialId"));
|
|
|
- BigDecimal materialWeight = DataChange.dataToBigDecimal(map.get("orderMaterialWeight"));
|
|
|
- BigDecimal materialNumber =DataChange.dataToBigDecimal(map.get("orderMaterialNumber"));
|
|
|
- OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
|
|
|
- BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
|
|
|
- omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
|
|
|
- omstruckOrderMaterial.setOrderId(orderId);
|
|
|
- omstruckOrderMaterial.setMaterialId(materialId);
|
|
|
- //设置物资装货优先级
|
|
|
- omstruckOrderMaterial.setMaterialPriority(DataChange.dataToBigDecimal(map.get("materialPriority")));
|
|
|
- omstruckOrderMaterial.setInsertUsername("admin");
|
|
|
- omstruckOrderMaterial.setInsertTime(new Date());
|
|
|
- if (materialWeight != null) {
|
|
|
- omstruckOrderMaterial.setOrderMaterialWeight(materialWeight);
|
|
|
- }
|
|
|
- if (materialNumber != null) {
|
|
|
- omstruckOrderMaterial.setOrderMaterialNumber(materialNumber);
|
|
|
+ //获取趟次
|
|
|
+ Integer number = (Integer) mapValue.get("number");
|
|
|
+ for (int n = 1; n <= number; n++) {
|
|
|
+ // 新增零星订单表
|
|
|
+ // 发货单位
|
|
|
+ BigDecimal sendUnit = new BigDecimal((Integer) mapValue.get("supplierId"));
|
|
|
+ // 收货单位
|
|
|
+ BigDecimal receiveUnitId = new BigDecimal((Integer) mapValue.get("receiveId"));
|
|
|
+ // 承运商
|
|
|
+ BigDecimal carrierId = new BigDecimal((Integer) mapValue.get("carrierId"));
|
|
|
+ // 得到订单类型
|
|
|
+ BigDecimal orderType = new BigDecimal((Integer) mapValue.get("orderType"));
|
|
|
+ // 得到运输路径
|
|
|
+ BigDecimal lineId = new BigDecimal((Integer) mapValue.get("lineId"));
|
|
|
+ BigDecimal sporadicOrderId = amstruckSporadicOrderMapper.selectSporadicOrderId();
|
|
|
+ AmstruckSporadicOrder amstruckSporadicOrder = new AmstruckSporadicOrder();
|
|
|
+ //设置零星物流主键
|
|
|
+ amstruckSporadicOrder.setSporadicOrderId(sporadicOrderId);
|
|
|
+ //设置零星物流编号
|
|
|
+ amstruckSporadicOrder.setSporadicOrderNo(DataChange.generateEightDigitsNumber("WLXDD", sporadicOrderId.intValue()));
|
|
|
+ //设置发货单位
|
|
|
+ amstruckSporadicOrder.setSendUnitId(sendUnit);
|
|
|
+ //设置收货单位
|
|
|
+ amstruckSporadicOrder.setReceiveUnitId(receiveUnitId);
|
|
|
+ //设置承运商
|
|
|
+ amstruckSporadicOrder.setCarrierId(carrierId);
|
|
|
+ //设置下发状态
|
|
|
+ amstruckSporadicOrder.setIssueStatus(new BigDecimal(0));
|
|
|
+ amstruckSporadicOrder.setInsertTime(new Date());
|
|
|
+ amstruckSporadicOrder.setInsertUsername("admin");
|
|
|
+ amstruckSporadicOrder.setDeleted(new BigDecimal(0));
|
|
|
+ amstruckSporadicOrder.setInsertUpdateRemark("无");
|
|
|
+ List<Map<String, Object>> mapList = (List<Map<String, Object>>) mapValue.get("mapList");
|
|
|
+ // 新增运输订单表
|
|
|
+ OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
|
+ BigDecimal orderId = omstruckOrderMapper.selectMaxId();
|
|
|
+ omstruckOrder.setOrderId(orderId);
|
|
|
+ omstruckOrder.setOrderPlanId(sporadicOrderId);
|
|
|
+ omstruckOrder.setOrderNumber(DataChange.generateEightDigitsNumber("WYSDD", orderId.intValue()));
|
|
|
+ omstruckOrder.setOrderType(orderType);
|
|
|
+ omstruckOrder.setInsertTime(new Date());
|
|
|
+ omstruckOrder.setInsertUsername("admin");
|
|
|
+ omstruckOrder.setInsertUpdateRemark("无");
|
|
|
+ omstruckOrder.setLineId(lineId);
|
|
|
+ //新增总实绩id
|
|
|
+ TmstruckTotalResult tmstruckTotalResult = new TmstruckTotalResult();
|
|
|
+ tmstruckTotalResult.setResultTotalId(tmstruckTotalResultMapper.selectTmstruckTotalResultId());
|
|
|
+ tmstruckTotalResult.setOrderId(omstruckOrder.getOrderId());
|
|
|
+ //新增总实绩
|
|
|
+ result += tmstruckTotalResultMapper.insertSelective(tmstruckTotalResult);
|
|
|
+ result += amstruckSporadicOrderMapper.insertSelective(amstruckSporadicOrder);
|
|
|
+ result += omstruckOrderMapper.insertSelective(omstruckOrder);
|
|
|
+ for (Map<String, Object> map : mapList) {
|
|
|
+ BigDecimal materialId = new BigDecimal((Integer) map.get("materialId"));
|
|
|
+ BigDecimal materialWeight = DataChange.dataToBigDecimal(map.get("orderMaterialWeight"));
|
|
|
+ BigDecimal materialNumber = DataChange.dataToBigDecimal(map.get("orderMaterialNumber"));
|
|
|
+ OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
|
|
|
+ BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
|
|
|
+ omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
|
|
|
+ omstruckOrderMaterial.setOrderId(orderId);
|
|
|
+ omstruckOrderMaterial.setMaterialId(materialId);
|
|
|
+ //煤炭添加运力
|
|
|
+ if (orderType.intValue() == 15 || orderType.intValue() == 16) {
|
|
|
+ BigDecimal capacityId = DataChange.dataToBigDecimal(map.get("capacityId"));
|
|
|
+ omstruckOrder.setOrderId(orderId);
|
|
|
+ omstruckOrder.setCapacityId(capacityId);
|
|
|
+ result += omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
+ //设置物资装货优先级
|
|
|
+ omstruckOrderMaterial.setMaterialPriority(DataChange.dataToBigDecimal(map.get("materialPriority")));
|
|
|
+ omstruckOrderMaterial.setInsertUsername("admin");
|
|
|
+ omstruckOrderMaterial.setInsertTime(new Date());
|
|
|
+ if (materialWeight != null) {
|
|
|
+ omstruckOrderMaterial.setOrderMaterialWeight(materialWeight);
|
|
|
+ }
|
|
|
+ if (materialNumber != null) {
|
|
|
+ omstruckOrderMaterial.setOrderMaterialNumber(materialNumber);
|
|
|
+ }
|
|
|
+ result += omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
|
|
|
+ }
|
|
|
}
|
|
|
- result += omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
|
|
|
}
|
|
|
- return result;
|
|
|
- }
|
|
|
+ return result;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+// /**
|
|
|
+// * 新增零星物资出厂煤
|
|
|
+// * @param map
|
|
|
+// * @return
|
|
|
+// * author:zx
|
|
|
+// */
|
|
|
+// @Transactional
|
|
|
+// @Override
|
|
|
+// public int addSporadicOrdersForCoke(Map<String, Object> map) {
|
|
|
+// int result = 0;
|
|
|
+// // 新增零星订单表
|
|
|
+// // 发货单位
|
|
|
+// BigDecimal sendUnit = new BigDecimal((Integer) map.get("supplierId"));
|
|
|
+// // 收货单位
|
|
|
+// BigDecimal receiveUnitId = new BigDecimal((Integer) map.get("receiveId"));
|
|
|
+// // 承运商
|
|
|
+// BigDecimal carrierId = new BigDecimal((Integer) map.get("carrierId"));
|
|
|
+// // 得到订单类型
|
|
|
+// BigDecimal orderType = new BigDecimal((Integer) map.get("orderType"));
|
|
|
+// // 得到运输路径
|
|
|
+// BigDecimal lineId = new BigDecimal((Integer) map.get("lineId"));
|
|
|
+// BigDecimal sporadicOrderId = amstruckSporadicOrderMapper.selectSporadicOrderId();
|
|
|
+// AmstruckSporadicOrder amstruckSporadicOrder = new AmstruckSporadicOrder();
|
|
|
+// amstruckSporadicOrder.setSporadicOrderId(sporadicOrderId);
|
|
|
+// amstruckSporadicOrder.setSporadicOrderNo(DataChange.generateEightDigitsNumber("WLXDD", sporadicOrderId.intValue()));
|
|
|
+// amstruckSporadicOrder.setSendUnitId(sendUnit);
|
|
|
+// amstruckSporadicOrder.setReceiveUnitId(receiveUnitId);
|
|
|
+// amstruckSporadicOrder.setCarrierId(carrierId);
|
|
|
+// amstruckSporadicOrder.setIssueStatus(new BigDecimal(0));
|
|
|
+// amstruckSporadicOrder.setInsertTime(new Date());
|
|
|
+// amstruckSporadicOrder.setInsertUsername("admin");
|
|
|
+// amstruckSporadicOrder.setDeleted(new BigDecimal(0));
|
|
|
+// amstruckSporadicOrder.setInsertUpdateRemark("无");
|
|
|
+// List<Map<String, Object>> mapList = (List<Map<String, Object>>) map.get("mapList");
|
|
|
+// // 新增运输订单表
|
|
|
+// OmstruckOrder omstruckOrder = new OmstruckOrder();
|
|
|
+// BigDecimal orderId = omstruckOrderMapper.selectMaxId();
|
|
|
+// omstruckOrder.setOrderId(orderId);
|
|
|
+// omstruckOrder.setOrderPlanId(sporadicOrderId);
|
|
|
+// //生成运输订单
|
|
|
+// omstruckOrder.setOrderNumber(DataChange.generateEightDigitsNumber("WYSDD", orderId.intValue()));
|
|
|
+// omstruckOrder.setOrderType(orderType);
|
|
|
+// omstruckOrder.setInsertTime(new Date());
|
|
|
+// omstruckOrder.setInsertUsername("admin");
|
|
|
+// omstruckOrder.setInsertUpdateRemark("无");
|
|
|
+// omstruckOrder.setLineId(lineId);
|
|
|
+// //新增总实绩id
|
|
|
+// TmstruckTotalResult tmstruckTotalResult = new TmstruckTotalResult();
|
|
|
+// tmstruckTotalResult.setResultTotalId(tmstruckTotalResultMapper.selectTmstruckTotalResultId());
|
|
|
+// tmstruckTotalResult.setOrderId(omstruckOrder.getOrderId());
|
|
|
+// //新增总实绩
|
|
|
+// result += tmstruckTotalResultMapper.insertSelective(tmstruckTotalResult);
|
|
|
+// result += amstruckSporadicOrderMapper.insertSelective(amstruckSporadicOrder);
|
|
|
+// result += omstruckOrderMapper.insertSelective(omstruckOrder);
|
|
|
+// for (Map<String, Object> map1 : mapList) {
|
|
|
+// BigDecimal materialId = new BigDecimal((Integer) map1.get("materialId"));
|
|
|
+// BigDecimal materialWeight = DataChange.dataToBigDecimal(map1.get("orderMaterialWeight"));
|
|
|
+// BigDecimal materialNumber = DataChange.dataToBigDecimal(map1.get("orderMaterialNumber"));
|
|
|
+// BigDecimal capacityId=DataChange.dataToBigDecimal(map1.get("capacityId"));
|
|
|
+// OmstruckOrderMaterial omstruckOrderMaterial = new OmstruckOrderMaterial();
|
|
|
+// BigDecimal orderMaterialId = omstruckOrderMaterialMapper.selectMaxId();
|
|
|
+// omstruckOrderMaterial.setOrderMaterialId(orderMaterialId);
|
|
|
+// omstruckOrderMaterial.setOrderId(orderId);
|
|
|
+// omstruckOrderMaterial.setMaterialId(materialId);
|
|
|
+// //设置物资装货优先级
|
|
|
+// omstruckOrderMaterial.setMaterialPriority(DataChange.dataToBigDecimal(map1.get("materialPriority")));
|
|
|
+// omstruckOrderMaterial.setInsertUsername("admin");
|
|
|
+// omstruckOrderMaterial.setInsertTime(new Date());
|
|
|
+// omstruckOrder.setOrderId(orderId);
|
|
|
+// //新增运力
|
|
|
+// omstruckOrder.setCapacityId(capacityId);
|
|
|
+// omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
+// if (materialWeight != null) {
|
|
|
+// omstruckOrderMaterial.setOrderMaterialWeight(materialWeight);
|
|
|
+// }
|
|
|
+// if (materialNumber != null) {
|
|
|
+// omstruckOrderMaterial.setOrderMaterialNumber(materialNumber);
|
|
|
+// }
|
|
|
+// result += omstruckOrderMaterialMapper.insertSelective(omstruckOrderMaterial);
|
|
|
+// }
|
|
|
+//
|
|
|
+// return result;
|
|
|
+// }
|
|
|
+
|
|
|
+ //添加零星物资
|
|
|
+// @Override
|
|
|
+// public int addSporadicOrder(Map<String, Object> map) {
|
|
|
+// Integer orderType =(Integer) map.get("orderType");
|
|
|
+// switch (orderType){
|
|
|
+// case 12:addSporadicOrders(map);
|
|
|
+// break;
|
|
|
+// case 13:addSporadicOrders(map);
|
|
|
+// break;
|
|
|
+// case 15: addSporadicOrdersForCoke(map);
|
|
|
+// break;
|
|
|
+// }
|
|
|
+// return 1;
|
|
|
+// }
|
|
|
|
|
|
/**
|
|
|
* 下发零星物资订单
|
|
@@ -138,7 +260,7 @@ public class AmstruckSporadicOrderServiceImpl implements IAmstruckSporadicOrderS
|
|
|
AmstruckSporadicOrder amstruckSporadicOrder=new AmstruckSporadicOrder();
|
|
|
amstruckSporadicOrder.setSporadicOrderId(DataChange.dataToBigDecimal(map.get("sporadicOrderId")));
|
|
|
amstruckSporadicOrder.setIssueStatus(new BigDecimal(1));
|
|
|
- result +=amstruckSporadicOrderMapper.updateByPrimaryKeySelective(amstruckSporadicOrder);
|
|
|
+ result += amstruckSporadicOrderMapper.updateByPrimaryKeySelective(amstruckSporadicOrder);
|
|
|
result += omstruckOrderMapper.updateByPrimaryKeySelective(omstruckOrder);
|
|
|
}
|
|
|
return result;
|