|
|
|
|
@ -26,22 +26,30 @@ import org.springblade.core.tool.api.R; |
|
|
|
|
import org.springblade.desk.basic.constant.BaseCol; |
|
|
|
|
import org.springblade.desk.basic.constant.BaseRequest; |
|
|
|
|
import org.springblade.desk.basic.constant.BaseValue; |
|
|
|
|
import org.springblade.desk.basic.mapper.OemMapper; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.CenterTeam; |
|
|
|
|
import org.springblade.desk.basic.pojo.entity.Oem; |
|
|
|
|
import org.springblade.desk.basic.service.ICenterTeamService; |
|
|
|
|
import org.springblade.desk.basic.util.IdUtil; |
|
|
|
|
import org.springblade.desk.basic.util.StatusCountMap; |
|
|
|
|
import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; |
|
|
|
|
import org.springblade.desk.dashboard.pojo.entity.DsPartEntity; |
|
|
|
|
import org.springblade.desk.dashboard.service.IBsProcessSetService; |
|
|
|
|
import org.springblade.desk.dashboard.service.IDsPartService; |
|
|
|
|
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity; |
|
|
|
|
import org.springblade.desk.device.pojo.entity.RackSetEntity; |
|
|
|
|
import org.springblade.desk.device.service.IFeiBaSetService; |
|
|
|
|
import org.springblade.desk.device.service.IRackSetService; |
|
|
|
|
import org.springblade.desk.order.mapper.YieldOrderMapper; |
|
|
|
|
import org.springblade.desk.order.pojo.entity.YieldOrder; |
|
|
|
|
import org.springblade.desk.order.service.IYieldOrderService; |
|
|
|
|
import org.springblade.desk.produce.mapper.WorkOrderMapper; |
|
|
|
|
import org.springblade.desk.produce.mapper.WorkPlanMapper; |
|
|
|
|
import org.springblade.desk.produce.pojo.entity.MacToolUse; |
|
|
|
|
import org.springblade.desk.produce.pojo.entity.MesQcProduceRunEntity; |
|
|
|
|
import org.springblade.desk.produce.pojo.entity.WorkOrder; |
|
|
|
|
import org.springblade.desk.produce.pojo.entity.WorkPlan; |
|
|
|
|
import org.springblade.desk.produce.pojo.dto.MesRbFilePreserveDetailDTO; |
|
|
|
|
import org.springblade.desk.produce.pojo.entity.*; |
|
|
|
|
import org.springblade.desk.produce.pojo.vo.ProduceMonitorSlotListVO; |
|
|
|
|
import org.springblade.desk.produce.service.IMesEquipmentCardService; |
|
|
|
|
import org.springblade.desk.produce.service.IMesRbFilePreserveSlotService; |
|
|
|
|
import org.springblade.desk.produce.service.IWorkOrderService; |
|
|
|
|
import org.springblade.desk.produce.service.IWorkPlanService; |
|
|
|
|
import org.springblade.desk.quality.constant.InspectionItemConst; |
|
|
|
|
@ -58,6 +66,7 @@ import org.springblade.desk.quality.wrapper.InspectionTaskListWrapper; |
|
|
|
|
import org.springblade.scheduling.pojo.entity.ProcessSetEntity; |
|
|
|
|
import org.springblade.system.feign.IDictClient; |
|
|
|
|
import org.springblade.system.feign.IUserClient; |
|
|
|
|
import org.springblade.system.pojo.entity.User; |
|
|
|
|
import org.springframework.context.annotation.Lazy; |
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
@ -115,6 +124,18 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap |
|
|
|
|
@Resource |
|
|
|
|
private IBsProcessSetService processSetService; |
|
|
|
|
|
|
|
|
|
@Resource |
|
|
|
|
private IRackSetService rackSetService; |
|
|
|
|
@Resource |
|
|
|
|
private IFeiBaSetService feiBaSetService; |
|
|
|
|
@Resource |
|
|
|
|
private IMesEquipmentCardService mesEquipmentCardService; |
|
|
|
|
@Resource |
|
|
|
|
private OemMapper oemMapper; |
|
|
|
|
@Resource |
|
|
|
|
private ICenterTeamService centerTeamService; |
|
|
|
|
@Resource |
|
|
|
|
private IMesRbFilePreserveSlotService mesRbFilePreserveSlotService; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@ -504,19 +525,647 @@ public class InspectionTaskServiceImpl extends BaseServiceImpl<InspectionTaskMap |
|
|
|
|
workPlan.setSlotList(slotList); |
|
|
|
|
} |
|
|
|
|
// 设备编号信息(从设备,工装使用记录获取)
|
|
|
|
|
// List<MacToolUse> mtuList = workPlanMapper.listMacToolUse(workPlan.getWpId(), Boolean.FALSE);
|
|
|
|
|
// if (mtuList.size() > 0) {
|
|
|
|
|
// // 设备编号
|
|
|
|
|
// String gj = StringUtils.join(mtuList.stream().filter(i -> i.getBsRackSet() != null).map(i -> i.getBsRackSet().getRsCode()).collect(Collectors.toList()), "'、'");
|
|
|
|
|
// String fb = StringUtils.join(mtuList.stream().filter(i -> i.getBsFeiBaSet() != null).map(i -> i.getBsFeiBaSet().getFsCode()).collect(Collectors.toList()), "、");
|
|
|
|
|
// String eq = StringUtils.join(mtuList.stream().filter(i -> i.getEquipmentCard() != null).map(i -> i.getEquipmentCard().getDeviceCode()).collect(Collectors.toList()), "、");
|
|
|
|
|
// workPlan.setGjCode(gj);
|
|
|
|
|
// workPlan.setFbCode(fb);
|
|
|
|
|
// //zxh 20250107 电子档案工序设备编号不再拼接烘箱,eq中已存在烘箱
|
|
|
|
|
//// workPlan.setDeviceCode(box != null && box.getDeviceId() != null ? eq + "、" + box.getDeviceId() : eq);
|
|
|
|
|
// workPlan.setDeviceCode(eq);
|
|
|
|
|
List<MacToolUse> mtuList = workPlanMapper.listMacToolUse(workPlan.getId(), Boolean.FALSE); |
|
|
|
|
if (mtuList.size() > 0) { |
|
|
|
|
|
|
|
|
|
List<Long> racks = mtuList.stream().map(MacToolUse::getBsRackSet).collect(Collectors.toList()); |
|
|
|
|
List<Long> bas = mtuList.stream().map(MacToolUse::getBsFeiBaSet).collect(Collectors.toList()); |
|
|
|
|
List<Long> cards = mtuList.stream().map(MacToolUse::getEquipmentCard).collect(Collectors.toList()); |
|
|
|
|
List<RackSetEntity> rackList = rackSetService.listByIds(racks); |
|
|
|
|
List<FeiBaSetEntity> basList = feiBaSetService.listByIds(bas); |
|
|
|
|
List<MesEquipmentCardEntity> cardList = mesEquipmentCardService.listByIds(cards); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 设备编号
|
|
|
|
|
String gj = StringUtils.join(rackList.stream().filter(i -> i.getRsType() != null).map(i -> i.getRsType()).collect(Collectors.toList()), "'、'"); |
|
|
|
|
String fb = StringUtils.join(basList.stream().filter(i -> i.getFsType() != null).map(i -> i.getFsType()).collect(Collectors.toList()), "、"); |
|
|
|
|
String eq = StringUtils.join(cardList.stream().filter(i -> i.getDeviceCode() != null).map(i -> i.getDeviceCode()).collect(Collectors.toList()), "、"); |
|
|
|
|
workPlan.setGjCode(gj); |
|
|
|
|
workPlan.setFbCode(fb); |
|
|
|
|
//zxh 20250107 电子档案工序设备编号不再拼接烘箱,eq中已存在烘箱
|
|
|
|
|
// workPlan.setDeviceCode(box != null && box.getDeviceId() != null ? eq + "、" + box.getDeviceId() : eq);
|
|
|
|
|
workPlan.setDeviceCode(eq); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 操作者(工序接收人)
|
|
|
|
|
// 如果是场内班组
|
|
|
|
|
// zxh 20241217 电子档案场内工序操作者取值改为报工人
|
|
|
|
|
if (null != workPlan.getOcId() && workPlan.getOcId() >0 && workPlan.getReceiveMan() != null ) { |
|
|
|
|
|
|
|
|
|
R<User> user = userClient.userInfoById(workPlan.getReceiveMan()); |
|
|
|
|
if(null != user.getData() && null != user.getData().getAccount()){ |
|
|
|
|
// workPlan.setCreateMan(workPlan.getReceiveMan().getUserName());
|
|
|
|
|
MakeRec prMakeRec = workPlanMapper.getByWpId(workPlan.getId()); |
|
|
|
|
if (prMakeRec != null) { |
|
|
|
|
R<User> userorder = userClient.userInfoById(workPlan.getReceiveMan()); |
|
|
|
|
workPlan.setCreateMan(userorder.getData().getRealName()); |
|
|
|
|
} else { |
|
|
|
|
workPlan.setCreateMan(user.getData().getRealName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else if (workPlan.getOcId() != null) { // 外协
|
|
|
|
|
Oem oem = oemMapper.selectById(workPlan.getOcId()); |
|
|
|
|
if(oem != null){ |
|
|
|
|
workPlan.setCreateMan(oem.getCode()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Object[] obs = workPlanMapper.getConcatMrByWpId(workPlan.getId()); |
|
|
|
|
if (obs.length > 0) { |
|
|
|
|
// 色标数据
|
|
|
|
|
workPlan.setFlagQty(Double.valueOf(obs[0].toString())); |
|
|
|
|
workPlan.setFlagColourOne(obs[1].toString()); |
|
|
|
|
workPlan.setFlagColourTwo(obs[2].toString()); |
|
|
|
|
workPlan.setFlagInk(obs[3].toString()); |
|
|
|
|
workPlan.setFlagMatter(obs[4].toString()); |
|
|
|
|
// 色带数据
|
|
|
|
|
workPlan.setBeltQty(Double.valueOf(obs[5].toString())); |
|
|
|
|
workPlan.setBeltColourOne(obs[6].toString()); |
|
|
|
|
workPlan.setBeltColourTwo(obs[7].toString()); |
|
|
|
|
workPlan.setBeltInk(obs[8].toString()); |
|
|
|
|
workPlan.setBeltMatter(obs[9].toString()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
List<MesQcProduceRunEntity> qcProduceRunsList; |
|
|
|
|
qcProduceRunsList = workPlanMapper.listPrByWpIdIndex(workPlan.getId(), 0, Boolean.FALSE); |
|
|
|
|
workPlan.setQcProduceRunsList(qcProduceRunsList); |
|
|
|
|
// 新版电子档案 生产追溯数据(从生产追溯表中获取)
|
|
|
|
|
if (WorkPlan.PRINT_TYPE_PROCESS.equals(workPlan.getPrintType())) { |
|
|
|
|
Integer num = 0; |
|
|
|
|
List<MesQcProduceRunEntity> prList; |
|
|
|
|
List<MesRbFilePreserveSlotEntity> dsRbFilePreserveSlotList = new ArrayList<>(); |
|
|
|
|
|
|
|
|
|
QueryWrapper<CenterTeam> qwteam= new QueryWrapper<>(); |
|
|
|
|
qwteam.eq("TS_ID", workPlan.getMakeTeam()); |
|
|
|
|
List<CenterTeam> teamList = centerTeamService.list(qwteam); |
|
|
|
|
CenterTeam bsCenterTeam = null; |
|
|
|
|
if (teamList != null && teamList.size() > 0) { |
|
|
|
|
bsCenterTeam = teamList.get(0); |
|
|
|
|
} |
|
|
|
|
// CenterTeam bsCenterTeam = bsCenterTeamService.getByTsId(workPlan.getMakeTeam().getTsId());
|
|
|
|
|
if (bsCenterTeam != null && bsCenterTeam.getWcId()!= null) { |
|
|
|
|
MacToolUse prMacToolUse; |
|
|
|
|
List<MesRbFilePreserveSlotEntity> preserveSlotList; |
|
|
|
|
MesQcProduceRunEntity boxInfo = new MesQcProduceRunEntity(); |
|
|
|
|
// // 根据电子档案维护组装数据(上线前)
|
|
|
|
|
// prMacToolUse = prMacToolUseService.getDataByWpIdAndIndex(workPlan.getWpId(), "1");
|
|
|
|
|
// if (prMacToolUse != null && prMacToolUse.getMtuId() != null) {
|
|
|
|
|
// // 获取模板数据
|
|
|
|
|
// preserveSlotList = dsRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUse.getRfpId()));
|
|
|
|
|
// qcProduceRunsList = qcProduceRunService.listPrByWpIdIndex(workPlan.getWpId(), 1);
|
|
|
|
|
// // 烘箱信息(从设备,工装使用记录获取)
|
|
|
|
|
// boxInfo = prMacToolUseService.getBoxInfoByWpIdMtnCode(workPlan.getWpId());
|
|
|
|
|
// if (StringUtils.isNotBlank(boxInfo.getInDate())) {
|
|
|
|
|
// qcProduceRunsList.add(boxInfo);
|
|
|
|
|
// }
|
|
|
|
|
// this.setRbFilePreserveData(preserveSlotList, qcProduceRunsList, workPlan, dsRbFilePreserveSlotList);
|
|
|
|
|
//
|
|
|
|
|
// if (qcProduceRunsList != null && qcProduceRunsList.size() > 0) {
|
|
|
|
|
// workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// 根据电子档案维护组装数据(上线前) 分槽
|
|
|
|
|
List<MacToolUse> dataByWpIdAndIndexList = workPlanMapper.getDataByWpIdAndIndexList(workPlan.getId(), "1"); |
|
|
|
|
if (dataByWpIdAndIndexList != null && dataByWpIdAndIndexList.size() > 0) { |
|
|
|
|
for (MacToolUse prMacToolUseItem : dataByWpIdAndIndexList) { |
|
|
|
|
if (prMacToolUseItem != null && prMacToolUseItem.getId() != null) { |
|
|
|
|
// 获取模板数据
|
|
|
|
|
preserveSlotList = mesRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUseItem.getRfpId())); |
|
|
|
|
qcProduceRunsList = workPlanMapper.listPrByWpIdIndexAndMtnCode(workPlan.getId(), 1, prMacToolUseItem.getMtnCode()); |
|
|
|
|
// 烘箱信息(从设备,工装使用记录获取)
|
|
|
|
|
// boxInfo = workPlanMapper.getBoxInfoByWpIdMtnCode(workPlan.getId());
|
|
|
|
|
List<MesQcProduceRunEntity> runs = workPlanMapper.getBoxInfoByWpIdMtnCode(workPlan.getId()); |
|
|
|
|
if(runs != null && runs.size() > 0){ |
|
|
|
|
boxInfo = runs.get(0); |
|
|
|
|
} |
|
|
|
|
if (StringUtils.isNotBlank(boxInfo.getInDate())) { |
|
|
|
|
qcProduceRunsList.add(boxInfo); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (qcProduceRunsList != null && qcProduceRunsList.size() > 0) { |
|
|
|
|
|
|
|
|
|
// 2025-07-23 线上迁移修改删除了日志打印
|
|
|
|
|
// cdl 20250218 修改分槽同一槽号连续出现
|
|
|
|
|
this.setRbFilePreserveData(preserveSlotList, qcProduceRunsList, workPlan, |
|
|
|
|
dsRbFilePreserveSlotList, prMacToolUseItem); |
|
|
|
|
if (!(num > 0)) { |
|
|
|
|
workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1); |
|
|
|
|
} |
|
|
|
|
num += 1; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//1111111111111111111111111111111111111111111111
|
|
|
|
|
|
|
|
|
|
// // 根据电子档案维护组装数据(自动)
|
|
|
|
|
// prMacToolUse = prMacToolUseService.getDataByWpIdAndIndex(workPlan.getWpId(), "2");
|
|
|
|
|
// if (prMacToolUse != null && prMacToolUse.getMtuId() != null) {
|
|
|
|
|
// // 获取模板数据
|
|
|
|
|
// List<DsRbFilePreserve> dsRbFilePreserveList = null;
|
|
|
|
|
// if (workPlan.getProcedureSet() != null &&
|
|
|
|
|
// ("喷砂".equals(workPlan.getProcedureSet().getPpsName()) || "涂色标".equals(workPlan.getProcedureSet().getPpsName()))) {
|
|
|
|
|
// dsRbFilePreserveList = dsRbFilePreserveService.getDataByWcIdAndPpsId(null,
|
|
|
|
|
// workPlan.getProcedureSet().getPpsId(), Boolean.TRUE);
|
|
|
|
|
// } else {
|
|
|
|
|
// dsRbFilePreserveList = dsRbFilePreserveService.getDataByWcIdAndPpsId(bsCenterTeam.getBsWorkCenter().getWcId(),
|
|
|
|
|
// workPlan.getProcedureSet().getPpsId(), Boolean.TRUE);
|
|
|
|
|
// }
|
|
|
|
|
// if (dsRbFilePreserveList != null && dsRbFilePreserveList.size() > 0) {
|
|
|
|
|
// preserveSlotList = dsRbFilePreserveSlotService.getByRfpId(dsRbFilePreserveList.get(0).getRfpId());
|
|
|
|
|
// qcProduceRunsList = qcProduceRunService.listPrByWpIdIndex(workPlan.getWpId(), 2, Boolean.TRUE);
|
|
|
|
|
//
|
|
|
|
|
// // 烘箱信息(从设备,工装使用记录获取)
|
|
|
|
|
// boxInfo = prMacToolUseService.getBoxInfoByWpIdMtnCode(workPlan.getWpId());
|
|
|
|
|
// if (qcProduceRunsList != null && qcProduceRunsList.size() > 0 && StringUtils.isNotBlank(boxInfo.getInDate())) {
|
|
|
|
|
// qcProduceRunsList.add(boxInfo);
|
|
|
|
|
// }
|
|
|
|
|
// if (qcProduceRunsList != null && qcProduceRunsList.size() > 0) {
|
|
|
|
|
// //验证qc中重复槽子
|
|
|
|
|
//// Boolean checkQcRepeat = this.checkQcRepeat(qcProduceRunsList);
|
|
|
|
|
//// if (checkQcRepeat) {
|
|
|
|
|
//// //返镍排序
|
|
|
|
|
//// this.setRbFilePreserveDataFn(preserveSlotList, qcProduceRunsList, workPlan,
|
|
|
|
|
//// dsRbFilePreserveSlotList, prMacToolUse);
|
|
|
|
|
//// } else {
|
|
|
|
|
// // cdl 20250218 修改分槽同一槽号连续出现
|
|
|
|
|
// this.setRbFilePreserveData(preserveSlotList, qcProduceRunsList, workPlan,
|
|
|
|
|
// dsRbFilePreserveSlotList, prMacToolUse);
|
|
|
|
|
//// }
|
|
|
|
|
//
|
|
|
|
|
// // cdl
|
|
|
|
|
// if (!(num > 0)) {
|
|
|
|
|
// workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1);
|
|
|
|
|
// }
|
|
|
|
|
// num += 1;
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// // 获取额外面积数据
|
|
|
|
|
// BsAdditionalMess dataByMtuCode = bsAdditionalMessDao.getDataByOneData(prMacToolUse.getMtnCode(), BsAdditionalMess.TYPE_ONE);
|
|
|
|
|
// workPlan.setBsAdditionalMess(dataByMtuCode);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//222222222222222222222222222222222222222222222
|
|
|
|
|
|
|
|
|
|
// // 根据电子档案维护组装数据(线下)
|
|
|
|
|
//// prMacToolUse = prMacToolUseService.getDataByWpIdAndIndex(workPlan.getWpId(), "3");
|
|
|
|
|
//// if (prMacToolUse != null && prMacToolUse.getMtuId() != null) {
|
|
|
|
|
//// // 获取模板数据
|
|
|
|
|
//// preserveSlotList = dsRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUse.getRfpId()));
|
|
|
|
|
//// qcProduceRunsList = qcProduceRunService.listPrByWpIdIndex(workPlan.getWpId(), 3, Boolean.FALSE);
|
|
|
|
|
//// // 烘箱信息(从设备,工装使用记录获取)
|
|
|
|
|
//// boxInfo = prMacToolUseService.getBoxInfoByWpIdMtnCode(workPlan.getWpId());
|
|
|
|
|
//// if (StringUtils.isNotBlank(boxInfo.getInDate())) {
|
|
|
|
|
//// qcProduceRunsList.add(boxInfo);
|
|
|
|
|
//// }
|
|
|
|
|
//// this.setRbFilePreserveData(preserveSlotList, qcProduceRunsList, workPlan, dsRbFilePreserveSlotList);
|
|
|
|
|
//// //zxh 20241231 注释下方代码
|
|
|
|
|
////// if (qcProduceRunsList != null && qcProduceRunsList.size() > 0) {
|
|
|
|
|
////// workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1);
|
|
|
|
|
////// }
|
|
|
|
|
//// }
|
|
|
|
|
// //zxh 20250117 解决单工序绑定两个手动记录只显示一个问题
|
|
|
|
|
// List<PrMacToolUse> prMacToolUseList = prMacToolUseService.getDataByWpIdAndIndexList(workPlan.getWpId(), "3");
|
|
|
|
|
// if (prMacToolUseList != null && prMacToolUseList.size() > 0) {
|
|
|
|
|
// for (PrMacToolUse prMacToolUseSd : prMacToolUseList) {
|
|
|
|
|
// if (prMacToolUseSd != null && prMacToolUseSd.getMtuId() != null) {
|
|
|
|
|
// // 获取模板数据
|
|
|
|
|
// preserveSlotList = dsRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUseSd.getRfpId()));
|
|
|
|
|
// qcProduceRunsList = qcProduceRunService.listPrByWpIdIndexAndMtnCode(workPlan.getWpId(), 3, prMacToolUseSd.getMtnCode());
|
|
|
|
|
// // 烘箱信息(从设备,工装使用记录获取)
|
|
|
|
|
// boxInfo = prMacToolUseService.getBoxInfoByWpIdMtnCode(workPlan.getWpId());
|
|
|
|
|
// if (StringUtils.isNotBlank(boxInfo.getInDate())) {
|
|
|
|
|
// qcProduceRunsList.add(boxInfo);
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// if (qcProduceRunsList != null && qcProduceRunsList.size() > 0) {
|
|
|
|
|
//
|
|
|
|
|
// // cdl 20250218 修改分槽同一槽号连续出现
|
|
|
|
|
// this.setRbFilePreserveData(preserveSlotList, qcProduceRunsList, workPlan,
|
|
|
|
|
// dsRbFilePreserveSlotList, prMacToolUseSd);
|
|
|
|
|
// if (!(num > 0)) {
|
|
|
|
|
// workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// workPlan.setDsRbFilePreserveSlotList(dsRbFilePreserveSlotList);
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public void setRbFilePreserveData(List<MesRbFilePreserveSlotEntity> preserveSlotList, List<MesQcProduceRunEntity> qcProduceRunsList, |
|
|
|
|
WorkPlan workPlan, List<MesRbFilePreserveSlotEntity> dsRbFilePreserveSlotList, |
|
|
|
|
MacToolUse prMacToolUseItem) { |
|
|
|
|
|
|
|
|
|
List<MesRbFilePreserveDetailDTO> dsRbFilePreserveDetailList = null; |
|
|
|
|
MesRbFilePreserveSlotEntity newDsRbFilePreserveSlot = null; |
|
|
|
|
MesRbFilePreserveDetailDTO newDsRbFilePreserveDetail = null; |
|
|
|
|
// for (int i = 0; i < preserveSlotList.size(); i++) {
|
|
|
|
|
// DsRbFilePreserveSlot dsRbFilePreserveSlot = preserveSlotList.get(i);
|
|
|
|
|
// if(StringUtils.isNotBlank(dsRbFilePreserveSlot.getSlotName()) && dsRbFilePreserveSlot.getSlotName().contains("水膜连续性")){
|
|
|
|
|
//// dsRbFilePreserveSlot
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
Map<String, MesRbFilePreserveSlotEntity> preserveSlotMap = preserveSlotList.stream().collect(Collectors.toMap(i -> i.getSlotName(), java.util.function.Function.identity())); |
|
|
|
|
List<MesRbFilePreserveSlotEntity> temporaryList = new ArrayList<>(); |
|
|
|
|
for (MesQcProduceRunEntity qcProduceRun : qcProduceRunsList) { |
|
|
|
|
// 根据维护的电子档案的槽号找寻对应生产追溯的的数据
|
|
|
|
|
if (StringUtils.isBlank(qcProduceRun.getWorkSlot())) continue; |
|
|
|
|
MesRbFilePreserveSlotEntity dsRbFilePreserveSlot = preserveSlotMap.get(qcProduceRun.getWorkSlot().trim()); |
|
|
|
|
|
|
|
|
|
if ("水膜连续性检查".equals(qcProduceRun.getWorkSlot().trim())) { |
|
|
|
|
// qcProduceRun.setQualified(Boolean.TRUE);
|
|
|
|
|
qcProduceRun.setQualified("1"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// cdl 20250218 修改分槽同一槽号连续出现
|
|
|
|
|
this.setTemplateData(dsRbFilePreserveSlot, qcProduceRun, newDsRbFilePreserveSlot, dsRbFilePreserveDetailList, |
|
|
|
|
newDsRbFilePreserveDetail, workPlan, temporaryList, prMacToolUseItem); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// 判断是不是自动线并且有水墨连续性
|
|
|
|
|
MacToolUse prMacToolUse = workPlanMapper.getHangNumIsNull(workPlan.getId()); |
|
|
|
|
if (prMacToolUse != null && prMacToolUse.getId() != null) { |
|
|
|
|
List<MesRbFilePreserveSlotEntity> smSlotList = preserveSlotList.stream().filter(i -> i.getSlotName().contains("水膜连续性")).collect(Collectors.toList()); |
|
|
|
|
for (MesRbFilePreserveSlotEntity dsRbFilePreserveSlot : smSlotList) { |
|
|
|
|
if (dsRbFilePreserveSlot.getSlotName().contains("水膜连续性")) { |
|
|
|
|
MesQcProduceRunEntity qcProduceRun = new MesQcProduceRunEntity(); |
|
|
|
|
qcProduceRun.setQualified("1"); |
|
|
|
|
// cdl 20250218 修改分槽同一槽号连续出现
|
|
|
|
|
this.setTemplateData(dsRbFilePreserveSlot, qcProduceRun, newDsRbFilePreserveSlot, dsRbFilePreserveDetailList, |
|
|
|
|
newDsRbFilePreserveDetail, workPlan, temporaryList, prMacToolUseItem); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
dsRbFilePreserveSlotList.addAll(temporaryList.stream().sorted(Comparator.comparing(MesRbFilePreserveSlotEntity::getSlotIndex)).collect(Collectors.toList())); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public void setTemplateData(MesRbFilePreserveSlotEntity dsRbFilePreserveSlot, MesQcProduceRunEntity qcProduceRun, MesRbFilePreserveSlotEntity newDsRbFilePreserveSlot, |
|
|
|
|
List<MesRbFilePreserveDetailDTO> dsRbFilePreserveDetailList, MesRbFilePreserveDetailDTO newDsRbFilePreserveDetail, |
|
|
|
|
WorkPlan workPlan, List<MesRbFilePreserveSlotEntity> temporaryList, MacToolUse prMacToolUseItem) { |
|
|
|
|
if (dsRbFilePreserveSlot != null && dsRbFilePreserveSlot.getRfpId() != null) { |
|
|
|
|
// 装入槽子对应的信息
|
|
|
|
|
newDsRbFilePreserveSlot = new MesRbFilePreserveSlotEntity(); |
|
|
|
|
newDsRbFilePreserveSlot.setRfpsType(dsRbFilePreserveSlot.getRfpsType()); |
|
|
|
|
newDsRbFilePreserveSlot.setInsertIndex(dsRbFilePreserveSlot.getInsertIndex()); |
|
|
|
|
newDsRbFilePreserveSlot.setSlotName(dsRbFilePreserveSlot.getSlotName()); |
|
|
|
|
newDsRbFilePreserveSlot.setSlotIndex(dsRbFilePreserveSlot.getSlotIndex()); |
|
|
|
|
|
|
|
|
|
List<MesRbFilePreserveDetailDTO> preserveDetailList = workPlanMapper.getByRfpsId(dsRbFilePreserveSlot.getRfpId()); |
|
|
|
|
if (preserveDetailList.size() > 0) { |
|
|
|
|
dsRbFilePreserveDetailList = new ArrayList<>(); |
|
|
|
|
for (int i = 0; i < preserveDetailList.size(); i++) { |
|
|
|
|
MesRbFilePreserveDetailDTO dsRbFilePreserveDetail = preserveDetailList.get(i); |
|
|
|
|
Short rfpsType = 0; |
|
|
|
|
if (dsRbFilePreserveDetail != null && dsRbFilePreserveDetail.getRfpsType() != null) { |
|
|
|
|
rfpsType = dsRbFilePreserveDetail.getRfpsType(); |
|
|
|
|
} |
|
|
|
|
newDsRbFilePreserveDetail = new MesRbFilePreserveDetailDTO(); |
|
|
|
|
newDsRbFilePreserveDetail.setDetailName(dsRbFilePreserveDetail.getDetailName()); |
|
|
|
|
newDsRbFilePreserveDetail.setDetailIndex(dsRbFilePreserveDetail.getDetailIndex()); |
|
|
|
|
// 工艺要求
|
|
|
|
|
newDsRbFilePreserveDetail.setAsk(dsRbFilePreserveDetail.getAsk()); |
|
|
|
|
newDsRbFilePreserveDetail.setParamName(dsRbFilePreserveDetail.getParamName()); |
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getInDate()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getOutDate()); |
|
|
|
|
} |
|
|
|
|
if (rfpsType == 1) { // 模板一
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 2) { // 模板二
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 3) { // 模板三
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 4) { // 模板四
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 5 || rfpsType == 22) { // 模板五
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 6) { // 模板六
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 7) { // 模板七
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 8) { // 模板八
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 9) { // 模板九
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 10) { // 模板十
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setQualified(qcProduceRun.getQualified()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 11) { // 模板十一
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 12) { // 模板十二
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataThree()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 13) { // 模板十三
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} else if (i == 9) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTen()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 14) { // 模板十四
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 9) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 10) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} else if (i == 11) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTen()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 15) { // 模板十五
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 9) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 10) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} else if (i == 11) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTen()); |
|
|
|
|
} else if (i == 12) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEleven()); |
|
|
|
|
} else if (i == 13) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwelve()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 16) { // 模板十六
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 9) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 10) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} else if (i == 11) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTen()); |
|
|
|
|
} else if (i == 12) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEleven()); |
|
|
|
|
} else if (i == 13) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwelve()); |
|
|
|
|
} else if (i == 14) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThirteen()); |
|
|
|
|
} else if (i == 15) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFourteen()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 17) { // 模板十七
|
|
|
|
|
if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 18) { // 模板十八
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 19) { // 模板十九 //zxh 20250519 新增模板19和模板20
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} else if (i == 9) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTen()); |
|
|
|
|
} else if (i == 10) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEleven()); |
|
|
|
|
} else if (i == 11) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getDataTwelve()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 20) { // 模板二十
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getInDate()); |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getInDate()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getInDate()); |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getInDate()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getOutDate()); |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getOutDate()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setRfpdTime(qcProduceRun.getOutDate()); |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getOutDate()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} |
|
|
|
|
} else if (rfpsType == 21) { // 模板十三
|
|
|
|
|
if (i == 0) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataOne()); |
|
|
|
|
} else if (i == 1) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataTwo()); |
|
|
|
|
} else if (i == 2) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataThree()); |
|
|
|
|
} else if (i == 3) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFour()); |
|
|
|
|
} else if (i == 4) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataFive()); |
|
|
|
|
} else if (i == 5) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSix()); |
|
|
|
|
} else if (i == 6) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataSeven()); |
|
|
|
|
} else if (i == 7) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataEight()); |
|
|
|
|
} else if (i == 8) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getDataNine()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
String detailName = dsRbFilePreserveDetail.getDetailName(); |
|
|
|
|
if (detailName != null) { |
|
|
|
|
if (detailName.contains("温度")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getTempSlot()); |
|
|
|
|
} else if (detailName.contains("电导率")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getEleRate()); |
|
|
|
|
} else if (detailName.contains("电流") && !(detailName.contains("壳体") || detailName.contains("插针"))) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getEleStream()); |
|
|
|
|
} else if (detailName.contains("链速")) { |
|
|
|
|
// newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getvSpeed());
|
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getVSpeed()); |
|
|
|
|
} else if (detailName.contains("镍离子")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getNiValue()); |
|
|
|
|
} else if (detailName.contains("pH值")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getPhValue()); |
|
|
|
|
} |
|
|
|
|
//zxh 20250604 新增软起时间和工作电压
|
|
|
|
|
else if (detailName.contains("软起时间")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getSoftWorkTime()); |
|
|
|
|
} else if (detailName.contains("工作电压")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getVoltage()); |
|
|
|
|
} else if (detailName.contains("初始电压")) { |
|
|
|
|
newDsRbFilePreserveDetail.setParamValue(qcProduceRun.getStartVol()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
dsRbFilePreserveDetailList.add(newDsRbFilePreserveDetail); |
|
|
|
|
// cdl 202502117 修改错行
|
|
|
|
|
if (!dsRbFilePreserveSlot.getSlotName().equals("水膜连续性检查") && dsRbFilePreserveSlot.getRfpsType() != 10) { |
|
|
|
|
workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1); |
|
|
|
|
} |
|
|
|
|
// if (!dsRbFilePreserveSlot.getSlotName().equals("水膜连续性 检查") && dsRbFilePreserveSlot.getRfpsType() != 10) {
|
|
|
|
|
// workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1);
|
|
|
|
|
// }
|
|
|
|
|
} |
|
|
|
|
// newDsRbFilePreserveDetail = new DsRbFilePreserveDetail();
|
|
|
|
|
// newDsRbFilePreserveDetail.setDetailName(dsRbFilePreserveDetail.getDetailName());
|
|
|
|
|
// newDsRbFilePreserveDetail.setDetailIndex(dsRbFilePreserveDetail.getDetailIndex());
|
|
|
|
|
// // 工艺要求
|
|
|
|
|
// newDsRbFilePreserveDetail.setAsk(dsRbFilePreserveDetail.getAsk());
|
|
|
|
|
// newDsRbFilePreserveDetail.setParamName(dsRbFilePreserveDetail.getParamName());
|
|
|
|
|
newDsRbFilePreserveSlot.setChildrenList(dsRbFilePreserveDetailList); |
|
|
|
|
workPlan.setTotalPreserve(workPlan.getTotalPreserve() + 1); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
temporaryList.add(newDsRbFilePreserveSlot); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|