|
@@ -64,7 +64,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
case 3:
|
|
|
case 4:
|
|
|
map.put("status", 0);
|
|
|
- return tmstruckLoadResultMapper.getXSLoadResult(map);
|
|
|
+ return tmstruckLoadResultMapper.getXSLoadResult(map); //apiId = 221
|
|
|
case 5:
|
|
|
break;
|
|
|
case 6:
|
|
@@ -72,7 +72,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
case 7:
|
|
|
break;
|
|
|
case 8:
|
|
|
- return tmstruckLoadResultMapper.getCGJKLoadResult(map);
|
|
|
+ return tmstruckLoadResultMapper.getCGJKLoadResult(map); // apiId = 91
|
|
|
case 9:
|
|
|
|
|
|
break;
|
|
@@ -93,8 +93,7 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
@Transactional
|
|
|
public int addCGLoadResult(Map<String,Object> map){
|
|
|
//通过运输订单号 或 运单Id 查询实绩总表ID 此方法在 进厂作业mapper中
|
|
|
- Integer totalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
- // 新增装车实绩
|
|
|
+ Integer totalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
|
|
|
TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
//添加主键Id
|
|
|
tmstruckLoadResult.setResultId(tmstruckLoadResultMapper.selectMaxId());
|
|
@@ -149,46 +148,107 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 修改销售装车实绩 (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
|
|
|
- * @param map 物资唯一编码 运输订单号
|
|
|
+ * 修改销售钢材装车实绩 (如果是多种物资【多拼】,通过物资Id和运输订单号来确定唯一的装车实绩进行修改)
|
|
|
+ * materialOnlyCode 物资唯一编码 orderNumber 运输订单号 resultMeasuredTonnage 物资件数
|
|
|
+ * insertUpdateRemark 备注 platformName 月台名称
|
|
|
+ * @param map
|
|
|
* @return
|
|
|
*/
|
|
|
public int addXSLoadResult(Map<String, Object> map){
|
|
|
//通过物资唯一编码查找物资Id
|
|
|
- BigDecimal materialId = tmstruckLoadResultMapper.getMaterialIdByMaterialCode((String) map.get("materialCode"));
|
|
|
+ BigDecimal materialId = tmstruckLoadResultMapper.getMaterialIdByMaterialCode((String) map.get("materialOnlyCode"));
|
|
|
//通过运输订单号查找总实绩ID
|
|
|
- Integer resultTotalId = tmstruckEnfactoryResultMapper.selectOrderIdByCpAndOn(map);
|
|
|
- //通过总实绩ID与物资ID查找装车实绩主键ID
|
|
|
+ Integer resultTotalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
|
|
|
+ //通过总实绩ID与物资ID查找 装车实绩主键ID
|
|
|
Integer resultId = tmstruckLoadResultMapper.getLoadResultIdByMIdAndTotalId(resultTotalId, materialId.intValue());
|
|
|
TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
tmstruckLoadResult.setStatus(new BigDecimal(0)); // 添加状态0:正常
|
|
|
- //添加主键
|
|
|
+ //编辑装车实绩主键ID对应的各个字段
|
|
|
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");
|
|
|
+ // 获取扫描实绩最小Id 添加扫描开始时间
|
|
|
+ map.put("materialId", materialId);
|
|
|
+ Map<String, Object> scanMap = tmstruckLoadResultMapper.getMinScanIdByOrderNum(map);
|
|
|
+ Date resultLoadStartTime = tmstruckLoadResultMapper.selectLoadTimeByResultId(DataChange.dataToBigDecimal(scanMap.get("resultId")));
|
|
|
tmstruckLoadResult.setResultLoadStartTime(resultLoadStartTime);
|
|
|
- //添加扫描结束时间
|
|
|
+ // 添加装卸工Id
|
|
|
+ tmstruckLoadResult.setLoaderId(DataChange.dataToBigDecimal(scanMap.get("loadId")));
|
|
|
+ // 添加扫描结束时间 以调用当前接口时间为结束时间
|
|
|
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));
|
|
|
- //添加备注
|
|
|
+ //添加装车标准时长
|
|
|
+ setLoadStandardTimeId((String)map.get("orderNumber"), tmstruckLoadResult);
|
|
|
+ Object platformName = map.get("platformName");
|
|
|
+ if(platformName != null){ // 如果月台不为空则更新月台
|
|
|
+ Integer platformId = utilsService.queryPlatformIdByName((String) platformName);
|
|
|
+ tmstruckLoadResult.setLoadingId(new BigDecimal(platformId));
|
|
|
+ }
|
|
|
+ // 添加备注
|
|
|
tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
|
|
|
- //新增出库实绩
|
|
|
-// wmsFeign.insertOutBoundResult(map);
|
|
|
- return tmstruckLoadResultMapper.insertSelective(tmstruckLoadResult);
|
|
|
+ return tmstruckLoadResultMapper.updateByPrimaryKeySelective(tmstruckLoadResult);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改销售钢渣、水渣、危化品装车实绩
|
|
|
+ * loadStartTime 装车开始时间 resultMeasuredTonnage 计量吨位
|
|
|
+ * warehouseName 仓库名称 orderNumber 运输订单号 insertUpdateRemark 备注
|
|
|
+ * @param map
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int addXS2LoadResult(Map<String, Object> map){
|
|
|
+ //通过运输订单号 查询 总实绩ID
|
|
|
+ Integer resultTotalId = tmstruckEnfactoryResultMapper.selectTotalResultIdByCpAndOn(map);
|
|
|
+ //查询装车实绩ID
|
|
|
+ Integer resultId = tmstruckLoadResultMapper.getLoadResultIdByMIdAndTotalId(resultTotalId, null);
|
|
|
+ TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
|
+ tmstruckLoadResult.setResultId(new BigDecimal(resultId));
|
|
|
+ tmstruckLoadResult.setStatus(new BigDecimal(0));
|
|
|
+ //添加装车开始时间
|
|
|
+ Date loadStartTime = new Date((long) map.get("loadStartTime"));
|
|
|
+ tmstruckLoadResult.setResultLoadStartTime(loadStartTime);
|
|
|
+ //添加装车结束时间(当前时间)
|
|
|
+ Date loadEndTime = new Date();
|
|
|
+ tmstruckLoadResult.setResultLoadEndTime(loadEndTime);
|
|
|
+ //计算装车时长 取分钟
|
|
|
+ long differentTime = (loadEndTime.getTime() - loadStartTime.getTime() / 60000);
|
|
|
+ tmstruckLoadResult.setResultLoadDuration(new BigDecimal(differentTime));
|
|
|
+ //添加计量吨位
|
|
|
+ tmstruckLoadResult.setResultMeasuredTonnage(DataChange.dataToBigDecimal(map.get("resultMeasuredTonnage")));
|
|
|
+ //添加装车标准时长
|
|
|
+ setLoadStandardTimeId((String)map.get("orderNumber"), tmstruckLoadResult);
|
|
|
+ // 更新装车名称
|
|
|
+ Object warehouseName = map.get("warehouseName");
|
|
|
+ if(warehouseName != null){
|
|
|
+ Integer warehouseId = utilsService.queryWarehouseIdByName((String) warehouseName);
|
|
|
+ tmstruckLoadResult.setLoadingId(new BigDecimal(warehouseId));
|
|
|
+ }
|
|
|
+ tmstruckLoadResult.setInsertUpdateRemark((String) map.get("insertUpdateRemark"));
|
|
|
+ return tmstruckLoadResultMapper.updateByPrimaryKeySelective(tmstruckLoadResult);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 添加装车标准时长ID
|
|
|
+ * @param orderNumber
|
|
|
+ * @param tmstruckLoadResult
|
|
|
+ */
|
|
|
+ public void setLoadStandardTimeId(String orderNumber, TmstruckLoadResult tmstruckLoadResult){
|
|
|
+ //添加标准时长ID 通过运输订单号查找运输订单类型
|
|
|
+ Integer orderType = tmstruckLoadResultMapper.selectOrderTypeByOrderNumber(orderNumber);
|
|
|
+ if(orderType == 1){
|
|
|
+ tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(1));
|
|
|
+ }else if(orderType == 2){
|
|
|
+ tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(2));
|
|
|
+ }else if(orderType == 3){
|
|
|
+ tmstruckLoadResult.setLoadStandardTimeId(new BigDecimal(3));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 修改装车作业
|
|
|
- *
|
|
|
* @param tmstruckLoadResult
|
|
|
* @return
|
|
|
*/
|
|
@@ -252,7 +312,9 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
return tmstruckLoadResultMapper.selectLoadResultForSale(map);
|
|
|
}
|
|
|
|
|
|
- //内转物流,新增装车实绩
|
|
|
+ /**
|
|
|
+ * 内转物流,新增装车实绩
|
|
|
+ */
|
|
|
@Override
|
|
|
public int addLoadResultForconverted(Map<String, Object> map) {
|
|
|
TmstruckLoadResult tmstruckLoadResult = new TmstruckLoadResult();
|
|
@@ -391,12 +453,10 @@ public class TmstruckLoadResultServiceImpl implements ITmstruckLoadResultService
|
|
|
Integer maxResultId = (Integer) Collections.max(list);
|
|
|
Integer minResultId = (Integer) Collections.min(list);
|
|
|
//根据最大id查找扫描时间
|
|
|
- Map map1 = tmstruckLoadResultMapper.selectLoadTimeByResultId(minResultId);
|
|
|
- Date startdate = (Date) map1.get("loadTime");
|
|
|
+ Date startdate = tmstruckLoadResultMapper.selectLoadTimeByResultId(new BigDecimal(minResultId));
|
|
|
Integer loaderId = tmstruckLoadResultMapper.selecLoadIdByresultId(minResultId);
|
|
|
//根据最小id查找扫描时间
|
|
|
- Map map2 = tmstruckLoadResultMapper.selectLoadTimeByResultId(maxResultId);
|
|
|
- Date endDate = (Date) map2.get("loadTime");
|
|
|
+ Date endDate = tmstruckLoadResultMapper.selectLoadTimeByResultId(new BigDecimal(maxResultId));
|
|
|
tmstruckLoadResult.setResultLoadStartTime(startdate);
|
|
|
tmstruckLoadResult.setResultLoadEndTime(endDate);
|
|
|
//开始时间
|