|
|
|
@ -2,12 +2,14 @@ package com.gaotao.modules.schedule.service.impl; |
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.gaotao.common.exception.RRException; |
|
|
|
import com.gaotao.common.utils.DateUtil; |
|
|
|
import com.gaotao.modules.pda.dao.InventoryDao; |
|
|
|
import com.gaotao.modules.schedule.data.*; |
|
|
|
import com.gaotao.modules.schedule.mapper.ProcedureMapper; |
|
|
|
import com.gaotao.modules.schedule.mapper.ScheduleMapper; |
|
|
|
import com.gaotao.modules.schedule.mapper.SchedulingMapper; |
|
|
|
import com.gaotao.modules.schedule.service.SchedulingService; |
|
|
|
import org.apache.ibatis.mapping.ResultMap; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
@ -754,5 +756,145 @@ public class SchedulingServiceImpl implements SchedulingService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Map<String, Object> refreshWorkPlatformButtonsWithSplit(SearchScheduleData inData) { |
|
|
|
String site = inData.getSite(); |
|
|
|
String orderNo = inData.getOrderNo(); |
|
|
|
int itemNo = inData.getItemNo(); |
|
|
|
String seqNo = inData.getSeqNo(); |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(orderNo); |
|
|
|
params.add(itemNo); |
|
|
|
params.add(seqNo); |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("refreshWorkPlatformButtonsWithSplit", params); |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Map<String, Object> getSplitScheduleCreateRollPageData(SearchScheduleData inData) { |
|
|
|
//公共参数 |
|
|
|
String site = inData.getSite(); |
|
|
|
String partNo = inData.getPartNo(); |
|
|
|
String partDesc = inData.getPartDesc(); |
|
|
|
String customerId = inData.getCustomerId(); |
|
|
|
String fgPartNo = inData.getFgPartNo(); |
|
|
|
String supplierId = inData.getSupplierId(); |
|
|
|
//调用存储过程 --获取分切派工单 创建分卷的页面参数 |
|
|
|
return this.getSplitScheduleCreateRollPageData(site, partNo, partDesc, customerId, fgPartNo, supplierId); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* TODO 获取分切派工单创建分卷的页面参数 |
|
|
|
* @author LR |
|
|
|
* @date 2022/4/8 16:57 |
|
|
|
* @Param [site, partNo, partDesc, customerId, fgPartNo, supplierId] |
|
|
|
* @return java.util.Map<java.lang.String, java.lang.Object> |
|
|
|
**/ |
|
|
|
public Map<String, Object> getSplitScheduleCreateRollPageData(String site, String partNo, String partDesc, String customerId, String fgPartNo, String supplierId) { |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(partNo); |
|
|
|
params.add(partDesc); |
|
|
|
params.add(customerId); |
|
|
|
params.add(fgPartNo); |
|
|
|
params.add(supplierId); |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("getSplitScheduleCreateRollPageData", params); |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void checkCreateSplitScheduleSeparateRoll(SearchScheduleData inData) { |
|
|
|
//公共参数 |
|
|
|
String site = inData.getSite(); |
|
|
|
String partNo = inData.getPartNo(); |
|
|
|
String customerId = inData.getCustomerId(); |
|
|
|
String fgPartNo = inData.getFgPartNo(); |
|
|
|
//执行存储过程 检查是都可以创建卷 |
|
|
|
Map<String, Object> resultMap = this.checkCreateSplitScheduleSeparateRoll(site, customerId, partNo, fgPartNo); |
|
|
|
//判断是否检验成功 |
|
|
|
String resultCode = String.valueOf(resultMap.get("resultCode")); |
|
|
|
if (!"200".equalsIgnoreCase(resultCode)) { |
|
|
|
String msg = String.valueOf(resultMap.get("resultMsg")); |
|
|
|
throw new RRException(msg, Integer.parseInt(resultCode)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* TODO 检查创建分切派工单的分卷 |
|
|
|
* @author LR |
|
|
|
* @date 2022/4/8 18:12 |
|
|
|
* @Param [site, customerId, partNo, fgPartNo] |
|
|
|
* @return java.util.Map<java.lang.String, java.lang.Object> |
|
|
|
**/ |
|
|
|
public Map<String, Object> checkCreateSplitScheduleSeparateRoll(String site, String customerId, String partNo, String fgPartNo) { |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(customerId); |
|
|
|
params.add(partNo); |
|
|
|
params.add(fgPartNo); |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("slittingorder_createroll_check", params); |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional |
|
|
|
public void createSplitScheduleSeparateRoll(SearchScheduleData inData) { |
|
|
|
//公共参数 |
|
|
|
String site = inData.getSite(); |
|
|
|
String orderNo = inData.getOrderNo(); |
|
|
|
int itemNo = inData.getItemNo(); |
|
|
|
String username = inData.getUsername(); |
|
|
|
String partNo = inData.getPartNo(); |
|
|
|
String partDesc = inData.getPartDesc(); |
|
|
|
String customerId = inData.getCustomerId(); |
|
|
|
String fgPartNo = inData.getFgPartNo(); |
|
|
|
String supplierId = inData.getSupplierId(); |
|
|
|
Float rollQty = inData.getRollQty(); |
|
|
|
int rollNums = inData.getRollNums(); |
|
|
|
String rollNo = inData.getRollNo(); |
|
|
|
String rollDate = DateUtil.getStringDate(new Date(), "yyyy-Mm-dd"); |
|
|
|
String splitType = "P"; |
|
|
|
String supplierNote = ""; |
|
|
|
|
|
|
|
//首先调用存储过程校验 |
|
|
|
this.checkCreateSplitScheduleSeparateRoll(inData); |
|
|
|
//校验通过执行创建分卷的操作 |
|
|
|
Map<String, Object> resultMap = this.createSplitScheduleSeparateRoll(site, orderNo, itemNo, splitType, supplierId, username, rollQty, rollNums, rollDate, customerId, partNo, fgPartNo, supplierNote, rollNo); |
|
|
|
//判断是否检验成功 |
|
|
|
String resultCode = String.valueOf(resultMap.get("resultCode")); |
|
|
|
if (!"200".equalsIgnoreCase(resultCode)) { |
|
|
|
String msg = String.valueOf(resultMap.get("resultMsg")); |
|
|
|
throw new RRException(msg, Integer.parseInt(resultCode)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* TODO 校验通过执行创建分卷的操作 |
|
|
|
* @author LR |
|
|
|
* @date 2022/4/8 18:20 |
|
|
|
* @Param [site, orderNo, itemNo, splitType, supplierId, username, rollQty, rollNums, rollDate, customerId, partNo, fgPartNo, supplierNote, rollNo] |
|
|
|
* @return void |
|
|
|
**/ |
|
|
|
public Map<String, Object> createSplitScheduleSeparateRoll(String site, String orderNo, int itemNo, String splitType, String supplierId, String username, Float rollQty, int rollNums, |
|
|
|
String rollDate, String customerId, String partNo, String fgPartNo, String supplierNote, String rollNo) { |
|
|
|
List<Object> params = new ArrayList<>(); |
|
|
|
params.add(site); |
|
|
|
params.add(orderNo); |
|
|
|
params.add(itemNo); |
|
|
|
params.add(splitType); |
|
|
|
params.add(supplierId); |
|
|
|
params.add(username); |
|
|
|
params.add(rollQty); |
|
|
|
params.add(rollNums); |
|
|
|
params.add(rollDate); |
|
|
|
params.add(customerId); |
|
|
|
params.add(partNo); |
|
|
|
params.add(fgPartNo); |
|
|
|
params.add(supplierNote); |
|
|
|
params.add(rollNo); |
|
|
|
List<Map<String, Object>> resultList = procedureMapper.getProcedureData("slittingorder_createroll_action", params); |
|
|
|
return resultList.get(0); |
|
|
|
} |
|
|
|
|
|
|
|
} |