|
@@ -51,71 +51,45 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * 新增装车实绩
|
|
|
- * 运输订单号 或 运输订单Id
|
|
|
- * 是否清场
|
|
|
- * 装车日期
|
|
|
- * 备注
|
|
|
- * 计量吨位
|
|
|
- *
|
|
|
+ * 查询所有装车实绩
|
|
|
* @param map
|
|
|
* @return
|
|
|
*/
|
|
|
- @Transactional
|
|
|
- public int addLoadResult11(Map<String, Object> map) {
|
|
|
- //通过运输订单号 或 运单Id 查询实绩总表ID 此方法在 进厂作业mapper中
|
|
|
- Integer totalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
- // 新增装车实绩
|
|
|
- TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
- //添加主键Id
|
|
|
- tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
|
|
|
- //新增计量吨位 装车所装的重量
|
|
|
- BigDecimal resultMeasuredTonnage = DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage"));
|
|
|
- tmstruckLoadResult.setResultMeasuredTonnage(resultMeasuredTonnage);
|
|
|
- tmstruckLoadResult.setStatus(new BigDecimal(0));
|
|
|
- tmstruckLoadResult.setResultTotalId(new BigDecimal(totalId));
|
|
|
- String resultIsclear = (String) (map.get("resultIsclear"));
|
|
|
- tmstruckLoadResult.setResultIsclear(resultIsclear);
|
|
|
- tmstruckLoadResult.setResultLoadStartTime(new Date((long) map.get("resultLoadStartTime")));
|
|
|
- tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
|
|
|
- int i = tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
-
|
|
|
- //修改订单状态为执行中 1
|
|
|
- int i1 = utilsService.updateOrderStatus(map, 1);
|
|
|
+ @Override
|
|
|
+ public List<Map<String, Object>> getAllLoadResult(Map<String, Object> map) {
|
|
|
+ Integer orderType = (Integer) map.get("orderTypee");
|
|
|
+ switch (orderType) {
|
|
|
+ case 1:
|
|
|
+ case 2:
|
|
|
+ case 3:
|
|
|
+ case 4:
|
|
|
+ map.put("status", 0);
|
|
|
+ return tmstruckLoadResultMapper.getXSLoadResult(map);
|
|
|
+ case 5:
|
|
|
+ break;
|
|
|
+ case 6:
|
|
|
+ break;
|
|
|
+ case 7:
|
|
|
+ break;
|
|
|
+ case 8:
|
|
|
+ return tmstruckLoadResultMapper.getCGJKLoadResult(map);
|
|
|
+ case 9:
|
|
|
|
|
|
- //修改运力状态为执行中 1
|
|
|
- int i2 = utilsService.updateCapacityStatus(map, 1);
|
|
|
+ break;
|
|
|
+ case 10:
|
|
|
|
|
|
- //新增港存库出库实绩 并修改实时库存
|
|
|
- BigDecimal portId = tmstruckLoadResultMapper.getPortIdBySendStationId(DataChange.dataToBigDecimal(map.get("loadingId")));
|
|
|
- if (portId != null) {
|
|
|
- BigDecimal batchId = tmstruckLoadResultMapper.getBatchIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
|
|
|
- if (batchId != null) {
|
|
|
- Map<String, Object> hashMap = new HashMap<>();
|
|
|
- hashMap.put("batchId", batchId);
|
|
|
- hashMap.put("portId", portId);
|
|
|
- hashMap.put("resultTonnage", resultMeasuredTonnage);
|
|
|
- hashMap.put("isClean", resultIsclear);
|
|
|
- wmshBoundFeign.addResult(hashMap);
|
|
|
- }
|
|
|
+ break;
|
|
|
+ case 11:
|
|
|
}
|
|
|
- return i + i1 + i2;
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
|
|
|
- * 添加装货实绩
|
|
|
- *
|
|
|
- * @param map
|
|
|
- * @return
|
|
|
+ /**
|
|
|
+ * 新增采购装车实绩
|
|
|
+ * @param map resultMeasuredTonnage :计量吨位 portId:港口ID
|
|
|
+ * resultLoadStartTime:装车时间 resultIsclear:是否清场
|
|
|
*/
|
|
|
- public int addLoadResult(Map<String, Object> map) {
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- *
|
|
|
- */
|
|
|
@Transactional
|
|
|
public int addCGLoadResult(Map<String,Object> map){
|
|
|
//通过运输订单号 或 运单Id 查询实绩总表ID 此方法在 进厂作业mapper中
|
|
@@ -150,10 +124,8 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
}
|
|
|
}
|
|
|
int i = tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
-
|
|
|
//修改订单状态为执行中 1
|
|
|
int i1 = utilsService.updateOrderStatus(map, 1);
|
|
|
-
|
|
|
//修改运力状态为执行中 1
|
|
|
// int i2 = utilsService.updateCapacityStatus(map, 1);
|
|
|
return i + i1;
|
|
@@ -161,91 +133,58 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * 遗留问题 (销售装车)
|
|
|
- *
|
|
|
+ * 生成销售装车实绩(虚拟装车实绩)
|
|
|
* @param map
|
|
|
* @return
|
|
|
*/
|
|
|
- public int addLoadResult1(Map<String, Object> map) {
|
|
|
-// String orderNumber = map.get("orderNumber").toString();
|
|
|
- //通过运输订单号查找物资
|
|
|
- List<Map<String, Object>> materialList = tmstruckLoadResultMapper.selectMaterialIdByOrderNumber(map);
|
|
|
- for (int i = 0; i < materialList.size(); i++) {
|
|
|
- Map<String, Object> map3 = materialList.get(i);
|
|
|
- BigDecimal materialId = (BigDecimal) map3.get("materialId");
|
|
|
- //通过运输订单号 或 运单Id 查询实绩总表ID 此方法在 进厂作业mapper中
|
|
|
- Integer totalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
- // 新增装车实绩
|
|
|
- TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
- //添加主键Id
|
|
|
- tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
|
|
|
- //新增计量吨位 装车所装的重量
|
|
|
- BigDecimal resultMeasuredTonnage = DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage"));
|
|
|
- tmstruckLoadResult.setResultMeasuredTonnage(resultMeasuredTonnage);
|
|
|
- tmstruckLoadResult.setStatus(new BigDecimal(0));
|
|
|
- tmstruckLoadResult.setResultTotalId(new BigDecimal(totalId));
|
|
|
- String resultIsclear = (String) (map.get("resultIsclear"));
|
|
|
- tmstruckLoadResult.setResultIsclear(resultIsclear);
|
|
|
- //根据运输订单号查找运输订单类型
|
|
|
- Integer orderType = tmstruckLoadResultMapper.selectOrderTypeByOrderNumber((String) map.get("orderNumber"));
|
|
|
- int i2 = 0;
|
|
|
- int i1 = 0;
|
|
|
- switch (orderType) {
|
|
|
- case 3:
|
|
|
- tmstruckLoadResult.setResultLoadStartTime(new Date((long) map.get("resultLoadStartTime")));
|
|
|
- //修改订单状态为执行中 1
|
|
|
- i1 = utilsService.updateOrderStatus(map, 1);
|
|
|
- //修改运力状态为执行中 1
|
|
|
- i2 = utilsService.updateCapacityStatus(map, 1);
|
|
|
- //新增出库实绩 并修改实时库存
|
|
|
- BigDecimal portId = tmstruckLoadResultMapper.getPortIdBySendStationId(DataChange.dataToBigDecimal(map.get("loadingId")));
|
|
|
- if (portId != null) {
|
|
|
- BigDecimal batchId = tmstruckLoadResultMapper.getBatchIdByOrderId(DataChange.dataToBigDecimal(map.get("orderId")));
|
|
|
- if (batchId != null) {
|
|
|
- HashMap<String, Object> hashMap = new HashMap<>();
|
|
|
- hashMap.put("batchId", batchId);
|
|
|
- hashMap.put("portId", portId);
|
|
|
- hashMap.put("resultTonnage", resultMeasuredTonnage);
|
|
|
- hashMap.put("isClean", resultIsclear);
|
|
|
- wmshBoundFeign.addResult(hashMap);
|
|
|
- }
|
|
|
- }
|
|
|
- case 1:
|
|
|
- List list = tmstruckLoadResultMapper.selectResultIdByOrderNumber((String) map.get("orderNumber"));
|
|
|
- //查询最大id和最小id
|
|
|
- Integer maxResultId = (Integer) Collections.max(list);
|
|
|
- Integer minResultId = (Integer) Collections.min(list);
|
|
|
- //根据最大id查找扫描时间
|
|
|
- Map map1 = tmstruckLoadResultMapper.selectLoadTimeByResultId(minResultId);
|
|
|
- Date startdate = (Date) map1.get("loadTime");
|
|
|
- Integer loaderId = tmstruckLoadResultMapper.selecLoadIdByresultId(minResultId);
|
|
|
- //根据最小id查找扫描时间
|
|
|
- Map map2 = tmstruckLoadResultMapper.selectLoadTimeByResultId(maxResultId);
|
|
|
- Date endDate = (Date) map2.get("loadTime");
|
|
|
- tmstruckLoadResult.setResultLoadStartTime(startdate);
|
|
|
- tmstruckLoadResult.setResultLoadEndTime(endDate);
|
|
|
- //开始时间
|
|
|
- long startTime = startdate.getTime();
|
|
|
- long endTime = endDate.getTime();
|
|
|
- long time = endTime - startTime;
|
|
|
- long l = time / 1000;
|
|
|
- tmstruckLoadResult.setResultLoadDuration(new BigDecimal(l));
|
|
|
- tmstruckLoadResult.setLoaderId(new BigDecimal(loaderId));
|
|
|
- //新增出库实绩
|
|
|
- wmsFeign.insertOutBoundResult(map);
|
|
|
-
|
|
|
- }
|
|
|
- tmstruckLoadResult.setMaterialId(materialId);
|
|
|
- tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
|
|
|
- int i3 = tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
- return i3 + i1 + i2;
|
|
|
- }
|
|
|
-
|
|
|
- return 6;
|
|
|
+ public int addLoadResult(Map<String, Object> map){
|
|
|
+ TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
+ //添加主键Id
|
|
|
+ tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
|
|
|
+ //添加物资Id
|
|
|
+ tmstruckLoadResult.setMaterialId(DataChange.dataToBigDecimal(map.get("materialId")));
|
|
|
+ //添加总实绩ID
|
|
|
+ tmstruckLoadResult.setResultTotalId(DataChange.dataToBigDecimal(map.get("resultTotalId")));
|
|
|
+ return tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
- * 新增销售装车
|
|
|
+ * 修改销售装车实绩 (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
|
|
|
+ * @param map 物资唯一编码 运输订单号
|
|
|
+ * @return
|
|
|
*/
|
|
|
+ public int addXSLoadResult(Map<String, Object> map){
|
|
|
+ //通过物资唯一编码查找物资Id
|
|
|
+ BigDecimal materialId = tmstruckLoadResultMapper.getMaterialIdByMaterialCode((String) map.get("materialCode"));
|
|
|
+ //通过运输订单号查找总实绩ID
|
|
|
+ Integer resultTotalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
+ //通过总实绩ID与物资ID查找装车实绩主键ID
|
|
|
+ Integer resultId = tmstruckLoadResultMapper.getLoadResultIdByMIdAndTotalId(resultTotalId, materialId.intValue());
|
|
|
+ TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
+ tmstruckLoadResult.setStatus(new BigDecimal(0)); // 添加状态0:正常
|
|
|
+ //添加主键
|
|
|
+ tmstruckLoadResult.setResultId(new BigDecimal(resultId));
|
|
|
+ //新增计量吨位 装车所装的重量
|
|
|
+ tmstruckLoadResult.setResultMeasuredTonnage(DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage")));
|
|
|
+ //获取扫描实绩最小Id 添加扫描开始时间
|
|
|
+ Integer scanId = tmstruckLoadResultMapper.getMinScanIdByOrderNum(map);
|
|
|
+ Map timeMap = tmstruckLoadResultMapper.selectLoadTimeByResultId(scanId);
|
|
|
+ Date resultLoadStartTime = (Date) timeMap.get("loadTime");
|
|
|
+ tmstruckLoadResult.setResultLoadStartTime(resultLoadStartTime);
|
|
|
+ //添加扫描结束时间
|
|
|
+ Date resultLoadEndTime = new Date();
|
|
|
+ tmstruckLoadResult.setResultLoadEndTime(resultLoadEndTime);
|
|
|
+ //添加装车实绩时长 ---- 计算装车时长
|
|
|
+ long time = (resultLoadEndTime.getTime() - resultLoadStartTime.getTime()) / 60000; // 分钟
|
|
|
+ tmstruckLoadResult.setResultLoadDuration(new BigDecimal(time));
|
|
|
+ //添加装卸工Id
|
|
|
+ tmstruckLoadResult.setLoaderId(new BigDecimal(1));
|
|
|
+ //添加备注
|
|
|
+ tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
|
|
|
+ //新增出库实绩
|
|
|
+// wmsFeign.insertOutBoundResult(map);
|
|
|
+ return tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 修改装车作业
|
|
@@ -271,7 +210,6 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
|
|
|
/**
|
|
|
* 逻辑删除装车实绩 状态 1
|
|
|
- *
|
|
|
* @param resultId
|
|
|
* @return
|
|
|
*/
|
|
@@ -285,7 +223,6 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
|
|
|
/**
|
|
|
* 修改装车作业点 多个装车点随机分配给多个装车实绩
|
|
|
- *
|
|
|
* @param mapList
|
|
|
* @return
|
|
|
*/
|
|
@@ -307,7 +244,6 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
|
|
|
/**
|
|
|
* 查询销售合同装车实绩
|
|
|
- *
|
|
|
* @param map
|
|
|
* @return
|
|
|
*/
|
|
@@ -316,73 +252,6 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
return tmstruckLoadResultMapper.selectLoadResultForSale(map);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 新增销售装车实绩(虚拟)
|
|
|
- *
|
|
|
- * @param map {orderId 运输订单Id}
|
|
|
- * @return
|
|
|
- */
|
|
|
- public int addSaleLoadResult(Map<String, Object> map) {
|
|
|
-// String orderNumber = (String) map.get("orderNumber");
|
|
|
- List<Map<String, Object>> materialList = tmstruckLoadResultMapper.selectMaterialIdByOrderNumber(map);
|
|
|
- int i = 0;
|
|
|
- for (Map<String, Object> materialMap : materialList) {
|
|
|
- TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
- //添加物资ID
|
|
|
- tmstruckLoadResult.setMaterialId(DataChange.dataToBigDecimal(materialMap.get("materialId")));
|
|
|
- //添加总实绩ID
|
|
|
- Integer totalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
- tmstruckLoadResult.setResultTotalId(new BigDecimal(totalId));
|
|
|
- //添加主键
|
|
|
- tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
|
|
|
- i += tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
- }
|
|
|
- return i;
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 查询所有装车实绩
|
|
|
- *
|
|
|
- * @param map
|
|
|
- * @return
|
|
|
- */
|
|
|
- @Override
|
|
|
- public List<Map<String, Object>> getAllLoadResult(Map<String, Object> map) {
|
|
|
- Integer orderType = (Integer) map.get("orderTypee");
|
|
|
- switch (orderType) {
|
|
|
- case 1:
|
|
|
- return tmstruckLoadResultMapper.getXSLoadResult(map);
|
|
|
- case 2:
|
|
|
-
|
|
|
- break;
|
|
|
- case 3:
|
|
|
-
|
|
|
- break;
|
|
|
- case 4:
|
|
|
-
|
|
|
- break;
|
|
|
- case 5:
|
|
|
-
|
|
|
- break;
|
|
|
- case 6:
|
|
|
-
|
|
|
- break;
|
|
|
- case 7:
|
|
|
-
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- return tmstruckLoadResultMapper.getCGJKLoadResult(map);
|
|
|
- case 9:
|
|
|
-
|
|
|
- break;
|
|
|
- case 10:
|
|
|
-
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- }
|
|
|
- return null;
|
|
|
- }
|
|
|
-
|
|
|
//内转物流,新增装车实绩
|
|
|
@Override
|
|
|
public int addLoadResultForconverted(Map<String, Object> map) {
|