parent
213a3404b2
commit
f5a6691bb2
25 changed files with 1148 additions and 34 deletions
@ -0,0 +1,37 @@ |
|||||||
|
package org.springblade.desk.produce.pojo.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesQcProduceRunEntity; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 后续手动维护生产追溯(电子档案维护) 视图实体类 |
||||||
|
* |
||||||
|
* @author litao |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class EleFilesEditVO { |
||||||
|
|
||||||
|
private String type; |
||||||
|
|
||||||
|
private Long wpId; |
||||||
|
|
||||||
|
private Long mtuId; |
||||||
|
|
||||||
|
private Long ecId; |
||||||
|
|
||||||
|
private Long rfpId; |
||||||
|
|
||||||
|
private Short lineType; |
||||||
|
|
||||||
|
private Boolean line; |
||||||
|
|
||||||
|
private String mtnCode; |
||||||
|
|
||||||
|
private List<MesQcProduceRunEntity> mesQcProduceRunEntityList; |
||||||
|
|
||||||
|
private List<ProduceMonitorFileSlotVO> produceMonitorFileSlotVOList; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,20 @@ |
|||||||
|
package org.springblade.desk.produce.pojo.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 获取热表电子档案维护-槽子明细及对应的明细 视图实体类 |
||||||
|
* |
||||||
|
* @author litao |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class GetByRfpIdVO { |
||||||
|
|
||||||
|
private Integer insertIndex; |
||||||
|
|
||||||
|
private List<MesRbFilePreserveSlotEntity> preserveSlotList; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,17 @@ |
|||||||
|
package org.springblade.desk.produce.pojo.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
/** |
||||||
|
* 根据物料号查询物料信息 视图实体类 |
||||||
|
* |
||||||
|
* @author litao |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class GoodsVO { |
||||||
|
|
||||||
|
private String checkoutCode; |
||||||
|
private String releasenoTime; |
||||||
|
private String goodsName; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,20 @@ |
|||||||
|
package org.springblade.desk.produce.pojo.vo; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesRbFilePreserveSlotEntity; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 根据流程卡查询当前工序对应的可维护生产追溯信息 视图实体类 |
||||||
|
* |
||||||
|
* @author litao |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class RemarryRedeemRetrospectDefendVO { |
||||||
|
|
||||||
|
private Long mtuId; |
||||||
|
|
||||||
|
private List<ProduceMonitorFileSlotVO> dsRbFilePreserveSlotList; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,25 @@ |
|||||||
|
package org.springblade.desk.produce.pojo.vo; |
||||||
|
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
import java.util.Date; |
||||||
|
|
||||||
|
/** |
||||||
|
* 过程质量维护-查询订单的工序 视图实体类 |
||||||
|
* |
||||||
|
* @author litao |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class WorkPlanProVO { |
||||||
|
|
||||||
|
@Schema(description = "工序ID") |
||||||
|
private Long wpId; |
||||||
|
|
||||||
|
@Schema(description = "工序号") |
||||||
|
private String orders; |
||||||
|
|
||||||
|
@Schema(description = "工序名称") |
||||||
|
private String ppsName; |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,141 @@ |
|||||||
|
package org.springblade.desk.produce.controller; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
||||||
|
import io.swagger.v3.oas.annotations.Operation; |
||||||
|
import io.swagger.v3.oas.annotations.tags.Tag; |
||||||
|
import lombok.AllArgsConstructor; |
||||||
|
import org.springblade.core.boot.ctrl.BladeController; |
||||||
|
import org.springblade.core.mp.support.Condition; |
||||||
|
import org.springblade.core.mp.support.Query; |
||||||
|
import org.springblade.core.tool.api.R; |
||||||
|
import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO; |
||||||
|
import org.springblade.desk.produce.pojo.entity.DsRbFilePreserve; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesEquipmentCardEntity; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesQcProduceRunEntity; |
||||||
|
import org.springblade.desk.produce.pojo.vo.*; |
||||||
|
import org.springblade.desk.produce.service.IMakeRecService; |
||||||
|
import org.springblade.desk.produce.service.IProcessQualityMaintenanceService; |
||||||
|
import org.springframework.web.bind.annotation.*; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 过程质量维护 控制器 |
||||||
|
* |
||||||
|
* @author BladeX |
||||||
|
* @since 2025-12-03 |
||||||
|
*/ |
||||||
|
@RestController |
||||||
|
@AllArgsConstructor |
||||||
|
@RequestMapping("/processMaintenance") |
||||||
|
@Tag(name = "过程质量维护", description = "过程质量维护接口") |
||||||
|
public class ProcessQualityMaintenanceController extends BladeController { |
||||||
|
|
||||||
|
private final IProcessQualityMaintenanceService proQuaMainService; |
||||||
|
|
||||||
|
private final IMakeRecService makeRecService; |
||||||
|
|
||||||
|
@GetMapping("/getWorkOrderProcess") |
||||||
|
@ApiOperationSupport(order = 1) |
||||||
|
@Operation(summary = "查询订单的工序") |
||||||
|
public R<List<WorkPlanProVO>> getWorkOrderProcess(String cardNo) { |
||||||
|
return R.data(proQuaMainService.getWorkOrderProcess(cardNo)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/getProcessBingingRec") |
||||||
|
@ApiOperationSupport(order = 2) |
||||||
|
@Operation(summary = "查询订单工序的绑定记录") |
||||||
|
public R<List<MesMacToolUseVO>> getProcessBingingRec(Long wpId) { |
||||||
|
return R.data(proQuaMainService.getProcessBingingRec(wpId)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/getDataByMtnCodeRb") |
||||||
|
@ApiOperationSupport(order = 3) |
||||||
|
@Operation(summary = "根据同槽编号查询记录数据-热表") |
||||||
|
public R<List<ProduceMonitorFileSlotVO>> getDataByMtnCodeRb(Long wpId, String mtnCode) { |
||||||
|
return R.data(proQuaMainService.getDataByMtnCode(wpId, mtnCode)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/getDataByMtnCodeSj") |
||||||
|
@ApiOperationSupport(order = 4) |
||||||
|
@Operation(summary = "根据同槽编号查询记录数据-烧结") |
||||||
|
public R<List<MesQcProduceRunEntity>> getDataByMtnCodeSj(Long wpId, String mtnCode) { |
||||||
|
return R.data(proQuaMainService.getDataByMtnCodeSj(wpId, mtnCode)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/getRbFilePreserveByWpId") |
||||||
|
@ApiOperationSupport(order = 5) |
||||||
|
@Operation(summary = "根据工序查询模板") |
||||||
|
public R<List<DsRbFilePreserve>> getRbFilePreserveByWpId(Long wpId) { |
||||||
|
return R.data(proQuaMainService.getRbFilePreserveByWpId(wpId)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/getByRfpId") |
||||||
|
@ApiOperationSupport(order = 6) |
||||||
|
@Operation(summary = "获取热表电子档案维护-槽子明细及对应的明细") |
||||||
|
public R<GetByRfpIdVO> getByRfpId(Long rfpId) { |
||||||
|
return R.data(proQuaMainService.getByRfpId(rfpId)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping("/queryEquipmentCard") |
||||||
|
@ApiOperationSupport(order = 7) |
||||||
|
@Operation(summary = "获取设备卡片") |
||||||
|
public R<IPage<MesEquipmentCardEntity>> queryEquipmentCard(String deviceCode, Query query) { |
||||||
|
return R.data(proQuaMainService.queryEquipmentCard(Condition.getPage(query), deviceCode)); |
||||||
|
} |
||||||
|
|
||||||
|
@PostMapping("/eleFilesEdit") |
||||||
|
@ApiOperationSupport(order = 8) |
||||||
|
@Operation(summary = "后续手动维护生产追溯(电子档案维护)") |
||||||
|
public R eleFilesEdit(@RequestBody EleFilesEditVO eleFilesEditVO) { |
||||||
|
if ("sintering".equals(eleFilesEditVO.getType())) { |
||||||
|
return R.status(proQuaMainService.eleFilesEditSj(eleFilesEditVO)); |
||||||
|
} else { |
||||||
|
return R.status(proQuaMainService.eleFilesEditRb(eleFilesEditVO)); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
@PostMapping("/deletedProduceRun") |
||||||
|
@ApiOperationSupport(order = 9) |
||||||
|
@Operation(summary = "根据同槽号删除信息") |
||||||
|
public R deletedProduceRun(@RequestBody EleFilesEditVO eleFilesEditVO) { |
||||||
|
return R.status(proQuaMainService.deletedProduceRun(eleFilesEditVO.getMtnCode())); |
||||||
|
} |
||||||
|
|
||||||
|
@PostMapping("/saveRetrospectDefend") |
||||||
|
@ApiOperationSupport(order = 10) |
||||||
|
@Operation(summary = "首次维护-保存") |
||||||
|
public R saveRetrospectDefend(@RequestBody RetrospectDefendDTO retrospectDefendDTO) { |
||||||
|
return R.status(makeRecService.saveRetrospectDefend(retrospectDefendDTO)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping(value = "/loadPrMacToolUseByMtnCode") |
||||||
|
@ApiOperationSupport(order = 11) |
||||||
|
@Operation(summary = "加载当前工序检验数据", description = "传入mtnCode") |
||||||
|
public R<List<String>> loadPrMacToolUseByMtnCode(String mtnCode) { |
||||||
|
return R.data(proQuaMainService.loadPrMacToolUseByMtnCode(mtnCode)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping(value = "/remarryRedeemRetrospectDefend") |
||||||
|
@ApiOperationSupport(order = 12) |
||||||
|
@Operation(summary = "根据流程卡查询当前工序对应的可维护生产追溯信息") |
||||||
|
public R<RemarryRedeemRetrospectDefendVO> remarryRedeemRetrospectDefend(String cardNo, String line) { |
||||||
|
return R.data(proQuaMainService.remarryRedeemRetrospectDefend(cardNo, line)); |
||||||
|
} |
||||||
|
|
||||||
|
@PostMapping("/remarryRedeemSaveRetrospectDefend") |
||||||
|
@ApiOperationSupport(order = 13) |
||||||
|
@Operation(summary = "后续手动维护生产追溯(生产追溯维护)") |
||||||
|
public R remarryRedeemSaveRetrospectDefend(@RequestBody EleFilesEditVO eleFilesEditVO) { |
||||||
|
return R.status(proQuaMainService.remarryRedeemSaveRetrospectDefend(eleFilesEditVO)); |
||||||
|
} |
||||||
|
|
||||||
|
@GetMapping(value = "/getMaterialMess") |
||||||
|
@ApiOperationSupport(order = 14) |
||||||
|
@Operation(summary = "根据物料号查询物料信息") |
||||||
|
public R<GoodsVO> getMaterialMess(String goodsCode) { |
||||||
|
return R.data(proQuaMainService.getMaterialMess(goodsCode)); |
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
@ -0,0 +1,47 @@ |
|||||||
|
package org.springblade.desk.produce.service; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import org.springblade.desk.produce.pojo.dto.RetrospectDefendDTO; |
||||||
|
import org.springblade.desk.produce.pojo.entity.DsRbFilePreserve; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesEquipmentCardEntity; |
||||||
|
import org.springblade.desk.produce.pojo.entity.MesQcProduceRunEntity; |
||||||
|
import org.springblade.desk.produce.pojo.vo.*; |
||||||
|
|
||||||
|
import java.util.List; |
||||||
|
|
||||||
|
/** |
||||||
|
* 过程质量维护 服务类 |
||||||
|
* |
||||||
|
* @author BladeX |
||||||
|
* @since 2025-11-28 |
||||||
|
*/ |
||||||
|
public interface IProcessQualityMaintenanceService { |
||||||
|
|
||||||
|
List<WorkPlanProVO> getWorkOrderProcess(String cardNo); |
||||||
|
|
||||||
|
List<MesMacToolUseVO> getProcessBingingRec(Long wpId); |
||||||
|
|
||||||
|
List<ProduceMonitorFileSlotVO> getDataByMtnCode(Long wpId, String mtnCode); |
||||||
|
|
||||||
|
List<DsRbFilePreserve> getRbFilePreserveByWpId(Long wpId); |
||||||
|
|
||||||
|
GetByRfpIdVO getByRfpId(Long rfpId); |
||||||
|
|
||||||
|
IPage<MesEquipmentCardEntity> queryEquipmentCard(IPage<MesEquipmentCardEntity> page, String deviceCode); |
||||||
|
|
||||||
|
List<MesQcProduceRunEntity> getDataByMtnCodeSj(Long wpId, String mtnCode); |
||||||
|
|
||||||
|
boolean eleFilesEditSj(EleFilesEditVO eleFilesEditVO); |
||||||
|
|
||||||
|
boolean eleFilesEditRb(EleFilesEditVO eleFilesEditVO); |
||||||
|
|
||||||
|
boolean deletedProduceRun(String mtnCode); |
||||||
|
|
||||||
|
List<String> loadPrMacToolUseByMtnCode(String mtnCode); |
||||||
|
|
||||||
|
RemarryRedeemRetrospectDefendVO remarryRedeemRetrospectDefend(String cardNo, String line); |
||||||
|
|
||||||
|
boolean remarryRedeemSaveRetrospectDefend(EleFilesEditVO eleFilesEditVO); |
||||||
|
|
||||||
|
GoodsVO getMaterialMess(String goodsCode); |
||||||
|
} |
||||||
@ -0,0 +1,725 @@ |
|||||||
|
package org.springblade.desk.produce.service.impl; |
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||||
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
||||||
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
||||||
|
import lombok.RequiredArgsConstructor; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
import org.apache.commons.collections4.CollectionUtils; |
||||||
|
import org.springblade.core.log.exception.ServiceException; |
||||||
|
import org.springblade.core.secure.utils.AuthUtil; |
||||||
|
import org.springblade.desk.basic.pojo.entity.CenterTeam; |
||||||
|
import org.springblade.desk.basic.service.ICenterTeamService; |
||||||
|
import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; |
||||||
|
import org.springblade.desk.dashboard.service.IBsProcessSetService; |
||||||
|
import org.springblade.desk.produce.pojo.dto.MesRbFilePreserveDetailDTO; |
||||||
|
import org.springblade.desk.produce.pojo.dto.WorkPlanDto; |
||||||
|
import org.springblade.desk.produce.pojo.entity.*; |
||||||
|
import org.springblade.desk.produce.pojo.vo.*; |
||||||
|
import org.springblade.desk.produce.service.*; |
||||||
|
import org.springframework.beans.BeanUtils; |
||||||
|
import org.springframework.stereotype.Service; |
||||||
|
import org.springframework.transaction.annotation.Transactional; |
||||||
|
|
||||||
|
import java.util.*; |
||||||
|
import java.util.stream.Collectors; |
||||||
|
|
||||||
|
/** |
||||||
|
* 过程质量维护 服务实现类 |
||||||
|
* |
||||||
|
* @author BladeX |
||||||
|
*/ |
||||||
|
@Slf4j |
||||||
|
@Service |
||||||
|
@RequiredArgsConstructor |
||||||
|
public class ProcessQualityMaintenanceServiceImpl implements IProcessQualityMaintenanceService { |
||||||
|
|
||||||
|
private final IWorkPlanService workPlanService; |
||||||
|
|
||||||
|
private final IMacToolUseService macToolUseService; |
||||||
|
|
||||||
|
private final IWorkOrderService workOrderService; |
||||||
|
|
||||||
|
private final ICenterTeamService centerTeamService; |
||||||
|
|
||||||
|
private final IMesQcProduceRunService qcProduceRunService; |
||||||
|
|
||||||
|
private final IMesRbFilePreserveSlotService dsRbFilePreserveSlotService; |
||||||
|
|
||||||
|
private final IDsRbFilePreserveService dsRbFilePreserveService; |
||||||
|
|
||||||
|
private final IBsProcessSetService bsProcessSetService; |
||||||
|
|
||||||
|
private final IMesRbFilePreserveDetailService dsRbFilePreserveDetailService; |
||||||
|
|
||||||
|
private final IMesEquipmentCardService mesEquipmentCardService; |
||||||
|
|
||||||
|
private final IPdaLoadService pdaLoadService; |
||||||
|
|
||||||
|
private final MakeRecServiceImpl makeRecServiceImpl; |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<WorkPlanProVO> getWorkOrderProcess(String cardNo) { |
||||||
|
return workPlanService.getWorkOrderProcess(cardNo); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<MesMacToolUseVO> getProcessBingingRec(Long wpId) { |
||||||
|
return macToolUseService.getProcessBingingRec(wpId); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<ProduceMonitorFileSlotVO> getDataByMtnCode(Long wpId, String mtnCode) { |
||||||
|
// 判断当前工序是否已经接收过
|
||||||
|
WorkPlan workPlan = workPlanService.getById(wpId); |
||||||
|
if (WorkPlan.STATUS_NO_START.equals(workPlan.getStatus())) { |
||||||
|
throw new ServiceException("当前工序还未开始暂不能进行维护!!!"); |
||||||
|
} |
||||||
|
Long wcId = null; |
||||||
|
if (workPlan.getMakeTeam() != null && "1".equals(workPlan.getCruxProcess())) { |
||||||
|
CenterTeam centerTeam = centerTeamService.getByTsId(workPlan.getMakeTeam()); |
||||||
|
if (centerTeam != null) { |
||||||
|
wcId = centerTeam.getWcId(); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
List<ProduceMonitorFileSlotVO> dsRbFilePreserveSlotList = new ArrayList<>(); |
||||||
|
// 拿出此同槽号下的绑定记录
|
||||||
|
List<MacToolUse> prMacToolUseList = macToolUseService.list(Wrappers.lambdaQuery(MacToolUse.class).eq(MacToolUse::getMtnCode, mtnCode)); |
||||||
|
// 拿出第一条数据(只要同槽编号一样,绑的模板一定一样)
|
||||||
|
MacToolUse prMacToolUse = prMacToolUseList.get(0); |
||||||
|
|
||||||
|
List<MesQcProduceRunEntity> qcProduceRunList = qcProduceRunService.list(Wrappers.lambdaQuery(MesQcProduceRunEntity.class) |
||||||
|
.eq(MesQcProduceRunEntity::getMtnCode, mtnCode) |
||||||
|
.and(q -> q.notLike(MesQcProduceRunEntity::getWorkSlot, "入料区").or().isNull(MesQcProduceRunEntity::getWorkSlot)) |
||||||
|
.orderByAsc(MesQcProduceRunEntity::getId)); |
||||||
|
// 获取模板数据
|
||||||
|
List<MesRbFilePreserveSlotEntity> rbFilePreserveSlotList = new ArrayList<>(); |
||||||
|
// 如果不为空一定走的是线下
|
||||||
|
if (prMacToolUse.getRfpId() != null) { |
||||||
|
rbFilePreserveSlotList = dsRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUse.getRfpId())); |
||||||
|
} else { |
||||||
|
// 线上
|
||||||
|
List<DsRbFilePreserve> dsRbFilePreserveList = dsRbFilePreserveService.getDataByWcIdAndPpsId(wcId, workPlan.getPpsId(), true); |
||||||
|
if (CollectionUtils.isNotEmpty(dsRbFilePreserveList)) { |
||||||
|
rbFilePreserveSlotList = dsRbFilePreserveSlotService.getByRfpId(dsRbFilePreserveList.get(0).getId()); |
||||||
|
} |
||||||
|
} |
||||||
|
// 组装数据
|
||||||
|
workOrderService.setRbFilePreserveData(rbFilePreserveSlotList, qcProduceRunList, workPlan, dsRbFilePreserveSlotList, prMacToolUse); |
||||||
|
return dsRbFilePreserveSlotList; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<DsRbFilePreserve> getRbFilePreserveByWpId(Long wpId) { |
||||||
|
WorkPlan workPlan = workPlanService.getById(wpId); |
||||||
|
BsProcessSetEntity procedureSet = bsProcessSetService.getById(workPlan.getPpsId()); |
||||||
|
if ("喷砂".equals(procedureSet.getName()) || "涂色标".equals(procedureSet.getName()) || "超声波清洗".equals(procedureSet.getName())) { |
||||||
|
return dsRbFilePreserveService.getDataByWcIdAndPpsId(null, procedureSet.getId(), Boolean.FALSE); |
||||||
|
} else if (workPlan.getMakeTeam() != null) { |
||||||
|
CenterTeam centerTeam = centerTeamService.getByTsId(workPlan.getMakeTeam()); |
||||||
|
return dsRbFilePreserveService.getDataByWcIdAndPpsId(centerTeam.getWcId(), procedureSet.getId(), Boolean.FALSE); |
||||||
|
} |
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public GetByRfpIdVO getByRfpId(Long rfpId) { |
||||||
|
GetByRfpIdVO getByRfpIdVO = new GetByRfpIdVO(); |
||||||
|
List<MesRbFilePreserveSlotEntity> preserveSlotList = dsRbFilePreserveSlotService.getByRfpId(rfpId); |
||||||
|
int insertIndex = 0; |
||||||
|
if (CollectionUtils.isNotEmpty(preserveSlotList)) { |
||||||
|
List<MesRbFilePreserveDetailDTO> childrenList; |
||||||
|
// 获取preserveSlotList的ID集合
|
||||||
|
List<Long> rfpsIdList = preserveSlotList.stream().map(MesRbFilePreserveSlotEntity::getId).toList(); |
||||||
|
List<MesRbFilePreserveDetailEntity> detailEntities = dsRbFilePreserveDetailService.list(Wrappers.lambdaQuery(MesRbFilePreserveDetailEntity.class).in(MesRbFilePreserveDetailEntity::getRfpsId, rfpsIdList)); |
||||||
|
// 根据rfpsId分组
|
||||||
|
Map<Long, List<MesRbFilePreserveDetailEntity>> detailMap = detailEntities.stream().collect(Collectors.groupingBy(MesRbFilePreserveDetailEntity::getRfpsId)); |
||||||
|
for (MesRbFilePreserveSlotEntity dsRbFilePreserveSlot : preserveSlotList) { |
||||||
|
if (Integer.parseInt(dsRbFilePreserveSlot.getInsertIndex()) > insertIndex) { |
||||||
|
insertIndex = Integer.parseInt(dsRbFilePreserveSlot.getInsertIndex()); |
||||||
|
} |
||||||
|
List<MesRbFilePreserveDetailEntity> serviceByRfpsId = detailMap.get(dsRbFilePreserveSlot.getId()); |
||||||
|
childrenList = serviceByRfpsId.stream().map(dsRbFilePreserveDetail -> { |
||||||
|
MesRbFilePreserveDetailDTO mesRbFilePreserveDetailDTO = new MesRbFilePreserveDetailDTO(); |
||||||
|
BeanUtils.copyProperties(dsRbFilePreserveDetail, mesRbFilePreserveDetailDTO); |
||||||
|
return mesRbFilePreserveDetailDTO; |
||||||
|
}).sorted(Comparator.comparing(MesRbFilePreserveDetailDTO::getDetailIndex)).toList(); |
||||||
|
dsRbFilePreserveSlot.setChildrenList(childrenList); |
||||||
|
} |
||||||
|
} |
||||||
|
getByRfpIdVO.setInsertIndex(insertIndex); |
||||||
|
getByRfpIdVO.setPreserveSlotList(preserveSlotList); |
||||||
|
return getByRfpIdVO; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public IPage<MesEquipmentCardEntity> queryEquipmentCard(IPage<MesEquipmentCardEntity> page, String deviceCode) { |
||||||
|
LambdaQueryWrapper<MesEquipmentCardEntity> wrapper = Wrappers.lambdaQuery(MesEquipmentCardEntity.class); |
||||||
|
if (StringUtils.isNotBlank(deviceCode)) { |
||||||
|
wrapper.like(MesEquipmentCardEntity::getDeviceCode, deviceCode).or().like(MesEquipmentCardEntity::getDeviceName, deviceCode); |
||||||
|
} |
||||||
|
return mesEquipmentCardService.page(page, wrapper); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<MesQcProduceRunEntity> getDataByMtnCodeSj(Long wpId, String mtnCode) { |
||||||
|
// 判断当前工序是否已经接收过
|
||||||
|
WorkPlan workPlan = workPlanService.getById(wpId); |
||||||
|
if (WorkPlan.STATUS_NO_START.equals(workPlan.getStatus())) { |
||||||
|
throw new ServiceException("当前工序还未开始暂不能进行维护!!!"); |
||||||
|
} |
||||||
|
return qcProduceRunService.list(Wrappers.lambdaQuery(MesQcProduceRunEntity.class) |
||||||
|
.eq(MesQcProduceRunEntity::getMtnCode, mtnCode) |
||||||
|
.and(q -> q.notLike(MesQcProduceRunEntity::getWorkSlot, "入料区").or().isNull(MesQcProduceRunEntity::getWorkSlot)) |
||||||
|
.orderByAsc(MesQcProduceRunEntity::getId)); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
@Transactional(rollbackFor = Exception.class) |
||||||
|
public boolean eleFilesEditSj(EleFilesEditVO eleFilesEditVO) { |
||||||
|
String mtnCode = eleFilesEditVO.getMtnCode(); |
||||||
|
List<MesQcProduceRunEntity> qcProduceRunList = eleFilesEditVO.getMesQcProduceRunEntityList(); |
||||||
|
Long ecId = eleFilesEditVO.getEcId(); |
||||||
|
if (ecId == null) { |
||||||
|
throw new ServiceException("请选择设备!!!"); |
||||||
|
} |
||||||
|
MesEquipmentCardEntity equipmentCard = mesEquipmentCardService.getById(ecId); |
||||||
|
// 如果mtnCode不为null,则代表是修改,否则为新增
|
||||||
|
if (StringUtils.isNotBlank(mtnCode)) { |
||||||
|
for (MesQcProduceRunEntity qcProduceRun : qcProduceRunList) { |
||||||
|
if (qcProduceRun.getId() != null) { |
||||||
|
qcProduceRunService.updateById(qcProduceRun); |
||||||
|
} else { |
||||||
|
qcProduceRun.setDeviceId(equipmentCard.getDeviceCode()); |
||||||
|
qcProduceRun.setMtnCode(mtnCode); |
||||||
|
qcProduceRunService.save(qcProduceRun); |
||||||
|
} |
||||||
|
} |
||||||
|
} else { |
||||||
|
Long wpId = eleFilesEditVO.getWpId(); |
||||||
|
WorkPlan workPlan = workPlanService.getById(wpId); |
||||||
|
MacToolUse prMacToolUse = new MacToolUse(); |
||||||
|
prMacToolUse.setWpId(workPlan.getId()); |
||||||
|
|
||||||
|
for (MesQcProduceRunEntity qcProduceRun : qcProduceRunList) { |
||||||
|
String code = macToolUseService.nextCode(3); |
||||||
|
// 创建一条绑定记录
|
||||||
|
prMacToolUse = new MacToolUse(); |
||||||
|
prMacToolUse.setWpId(workPlan.getId()); |
||||||
|
prMacToolUse.setEquipmentCard(equipmentCard.getId()); |
||||||
|
prMacToolUse.setFinished(1); |
||||||
|
prMacToolUse.setMtnCode(code); |
||||||
|
macToolUseService.save(prMacToolUse); |
||||||
|
|
||||||
|
qcProduceRun.setMtnCode(code); |
||||||
|
qcProduceRun.setDeviceId(equipmentCard.getDeviceCode()); |
||||||
|
qcProduceRunService.save(qcProduceRun); |
||||||
|
} |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
@Transactional(rollbackFor = Exception.class) |
||||||
|
public boolean eleFilesEditRb(EleFilesEditVO eleFilesEditVO) { |
||||||
|
String mtnCode = eleFilesEditVO.getMtnCode(); |
||||||
|
List<ProduceMonitorFileSlotVO> preserveSlotList = eleFilesEditVO.getProduceMonitorFileSlotVOList(); |
||||||
|
|
||||||
|
// 如果mtnCode不为null,则代表是修改,否则为新增
|
||||||
|
if (StringUtils.isNotBlank(mtnCode)) { |
||||||
|
List<MesQcProduceRunEntity> qcProduceRunList = qcProduceRunService.list(Wrappers.lambdaQuery(MesQcProduceRunEntity.class) |
||||||
|
.eq(MesQcProduceRunEntity::getMtnCode, mtnCode) |
||||||
|
.and(q -> q.notLike(MesQcProduceRunEntity::getWorkSlot, "入料区").or().isNull(MesQcProduceRunEntity::getWorkSlot)) |
||||||
|
.orderByAsc(MesQcProduceRunEntity::getId)); |
||||||
|
MesQcProduceRunEntity qcProduceRunOld = new MesQcProduceRunEntity(); |
||||||
|
for (ProduceMonitorFileSlotVO dsRbFilePreserveSlot : preserveSlotList) { |
||||||
|
for (MesQcProduceRunEntity qcProduceRun : qcProduceRunList) { |
||||||
|
//zxh 20250116 获取槽号增加trim函数去除空格
|
||||||
|
if (dsRbFilePreserveSlot.getSlotName().trim().equals(qcProduceRun.getWorkSlot().trim())) { |
||||||
|
qcProduceRunOld = qcProduceRun; |
||||||
|
} |
||||||
|
} |
||||||
|
List<MesRbFilePreserveDetailEntity> childrenList = dsRbFilePreserveSlot.getChildrenList(); |
||||||
|
this.savePreserveSlotList(childrenList, qcProduceRunOld, dsRbFilePreserveSlot.getRfpsType()); |
||||||
|
// 如果没有主键需要新增
|
||||||
|
if (qcProduceRunOld.getId() == null) { |
||||||
|
qcProduceRunOld.setMtnCode(mtnCode); |
||||||
|
qcProduceRunOld.setDeviceId(qcProduceRunList.get(0).getDeviceId()); |
||||||
|
qcProduceRunService.save(qcProduceRunOld); |
||||||
|
} else { |
||||||
|
qcProduceRunService.updateById(qcProduceRunOld); |
||||||
|
} |
||||||
|
} |
||||||
|
} else { |
||||||
|
Long wpId = eleFilesEditVO.getWpId(); |
||||||
|
Long rfpId = eleFilesEditVO.getRfpId(); |
||||||
|
Long ecId = eleFilesEditVO.getEcId(); |
||||||
|
Short lineType = eleFilesEditVO.getLineType(); |
||||||
|
if (ecId == null) { |
||||||
|
throw new ServiceException("请选择设备!!!"); |
||||||
|
} |
||||||
|
WorkPlan workPlan = workPlanService.getById(wpId); |
||||||
|
MacToolUse prMacToolUse; |
||||||
|
MesEquipmentCardEntity equipmentCard = mesEquipmentCardService.getById(ecId); |
||||||
|
String code = macToolUseService.nextCode(2); |
||||||
|
workPlan.setPrintType((short) 1); |
||||||
|
|
||||||
|
// 创建一条绑定记录
|
||||||
|
prMacToolUse = new MacToolUse(); |
||||||
|
prMacToolUse.setWpId(workPlan.getId()); |
||||||
|
prMacToolUse.setEquipmentCard(equipmentCard.getId()); |
||||||
|
prMacToolUse.setFinished(1); |
||||||
|
prMacToolUse.setCreateMan(AuthUtil.getUserId()); |
||||||
|
prMacToolUse.setRfpId(rfpId.toString()); |
||||||
|
prMacToolUse.setMtnCode(code); |
||||||
|
if (lineType != null) { |
||||||
|
prMacToolUse.setMtuIndex(String.valueOf(lineType)); |
||||||
|
} |
||||||
|
macToolUseService.save(prMacToolUse); |
||||||
|
|
||||||
|
List<MesQcProduceRunEntity> qcProduceRunEntities = new ArrayList<>(); |
||||||
|
MesQcProduceRunEntity qcProduceRun; |
||||||
|
// 创建生产追溯数据
|
||||||
|
for (ProduceMonitorFileSlotVO dsRbFilePreserveSlot : preserveSlotList) { |
||||||
|
qcProduceRun = new MesQcProduceRunEntity(); |
||||||
|
qcProduceRun.setMtnCode(code); |
||||||
|
qcProduceRun.setCreateMan(AuthUtil.getUserName()); |
||||||
|
qcProduceRun.setDeviceId(equipmentCard.getDeviceCode()); |
||||||
|
qcProduceRun.setWorkSlot(dsRbFilePreserveSlot.getSlotName()); |
||||||
|
List<MesRbFilePreserveDetailEntity> childrenList = dsRbFilePreserveSlot.getChildrenList(); |
||||||
|
this.savePreserveSlotList(childrenList, qcProduceRun, dsRbFilePreserveSlot.getRfpsType()); |
||||||
|
qcProduceRunEntities.add(qcProduceRun); |
||||||
|
} |
||||||
|
qcProduceRunService.saveBatch(qcProduceRunEntities); |
||||||
|
} |
||||||
|
return true; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
@Transactional(rollbackFor = Exception.class) |
||||||
|
public boolean deletedProduceRun(String mtnCode) { |
||||||
|
// 删除产生的记录数据
|
||||||
|
qcProduceRunService.remove(Wrappers.lambdaQuery(MesQcProduceRunEntity.class) |
||||||
|
.eq(MesQcProduceRunEntity::getMtnCode, mtnCode) |
||||||
|
.and(q -> q.notLike(MesQcProduceRunEntity::getWorkSlot, "入料区").or().isNull(MesQcProduceRunEntity::getWorkSlot))); |
||||||
|
// 删除绑定记录
|
||||||
|
return macToolUseService.remove(Wrappers.lambdaQuery(MacToolUse.class).eq(MacToolUse::getMtnCode, mtnCode)); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public List<String> loadPrMacToolUseByMtnCode(String mtnCode) { |
||||||
|
return pdaLoadService.loadPrMacToolUseByMtnCode(mtnCode); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public RemarryRedeemRetrospectDefendVO remarryRedeemRetrospectDefend(String cardNo, String line) { |
||||||
|
RemarryRedeemRetrospectDefendVO defendVO = new RemarryRedeemRetrospectDefendVO(); |
||||||
|
WorkPlanDto workPlanDto = makeRecServiceImpl.loadCurrentWp(cardNo); |
||||||
|
WorkPlan workPlan = workPlanService.getById(workPlanDto.getWpId()); |
||||||
|
if (!workPlan.getStatus().equals(WorkPlan.STATUS_START)) { |
||||||
|
throw new ServiceException("流程卡为 " + cardNo + " 的订单对应的工序不在加工中暂时不可再维护!"); |
||||||
|
} |
||||||
|
// 查询自动生产追溯是否已经开始
|
||||||
|
List<MesQcProduceRunEntity> produceRunList = qcProduceRunService.listPrByWpIdIndex(workPlanDto.getWpId(), 2, Boolean.FALSE); |
||||||
|
List<MesQcProduceRunEntity> produceRunListIndexOne = new ArrayList<>(); |
||||||
|
MacToolUse prMacToolUse = null; |
||||||
|
// 上线前 没有生产追溯数据
|
||||||
|
if ("1".equals(line)) { |
||||||
|
if (produceRunList != null && !produceRunList.isEmpty()) { |
||||||
|
throw new ServiceException("流程卡为 " + cardNo + " 的订单对应的工序已经在已上线,不可再维护!"); |
||||||
|
} |
||||||
|
|
||||||
|
prMacToolUse = macToolUseService.getDataByWpIdAndIndex(workPlanDto.getWpId(), "1"); |
||||||
|
// 如果已经维护
|
||||||
|
produceRunListIndexOne = qcProduceRunService.listPrByWpIdIndex(workPlanDto.getWpId(), 1, Boolean.FALSE); |
||||||
|
|
||||||
|
} else if ("0".equals(line)) { |
||||||
|
// 下线后 有自动生产追溯数据
|
||||||
|
if (produceRunList.isEmpty()) { |
||||||
|
throw new ServiceException("流程卡为 " + cardNo + " 的订单对应的工序还未下线,不可再维护!"); |
||||||
|
} |
||||||
|
|
||||||
|
prMacToolUse = macToolUseService.getDataByWpIdAndIndex(workPlanDto.getWpId(), "3"); |
||||||
|
// 如果已经维护
|
||||||
|
produceRunListIndexOne = qcProduceRunService.listPrByWpIdIndex(workPlanDto.getWpId(), 3, Boolean.FALSE); |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
List<ProduceMonitorFileSlotVO> dsRbFilePreserveSlotList = new ArrayList<>(); |
||||||
|
if (prMacToolUse == null) { |
||||||
|
throw new ServiceException("未找到维护的数据!!!"); |
||||||
|
} |
||||||
|
// 获取模板数据
|
||||||
|
List<MesRbFilePreserveSlotEntity> rbFilePreserveSlotList = dsRbFilePreserveSlotService.getByRfpId(Long.valueOf(prMacToolUse.getRfpId())); |
||||||
|
|
||||||
|
// cdl 20250218 修改分槽同一槽号连续出现
|
||||||
|
workOrderService.setRbFilePreserveData(rbFilePreserveSlotList, produceRunListIndexOne, workPlan, dsRbFilePreserveSlotList, prMacToolUse); |
||||||
|
defendVO.setDsRbFilePreserveSlotList(dsRbFilePreserveSlotList); |
||||||
|
defendVO.setMtuId(prMacToolUse.getId()); |
||||||
|
return defendVO; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public boolean remarryRedeemSaveRetrospectDefend(EleFilesEditVO eleFilesEditVO) { |
||||||
|
Long mtuId = eleFilesEditVO.getMtuId(); |
||||||
|
Boolean line = eleFilesEditVO.getLine(); |
||||||
|
List<ProduceMonitorFileSlotVO> preserveSlotList = eleFilesEditVO.getProduceMonitorFileSlotVOList(); |
||||||
|
MacToolUse prMacToolUse = macToolUseService.getById(mtuId); |
||||||
|
List<MesQcProduceRunEntity> qcProduceRunsList = null; |
||||||
|
// 上线前 没有生产追溯数据
|
||||||
|
if (Objects.equals(line, Boolean.TRUE)) { |
||||||
|
qcProduceRunsList = qcProduceRunService.listPrByWpIdIndex(prMacToolUse.getWpId(), 1, Boolean.FALSE); |
||||||
|
} else if (line.equals(Boolean.FALSE)) { |
||||||
|
qcProduceRunsList = qcProduceRunService.listPrByWpIdIndex(prMacToolUse.getWpId(), 3, Boolean.FALSE); |
||||||
|
} |
||||||
|
if (qcProduceRunsList == null || qcProduceRunsList.isEmpty()) { |
||||||
|
throw new ServiceException("未找到维护的数据!!!"); |
||||||
|
} |
||||||
|
MesQcProduceRunEntity qcProduceRunOld = null; |
||||||
|
for (ProduceMonitorFileSlotVO dsRbFilePreserveSlot : preserveSlotList) { |
||||||
|
for (MesQcProduceRunEntity qcProduceRun : qcProduceRunsList) { |
||||||
|
if (dsRbFilePreserveSlot.getSlotName().equals(qcProduceRun.getWorkSlot())) { |
||||||
|
qcProduceRunOld = qcProduceRun; |
||||||
|
} |
||||||
|
} |
||||||
|
List<MesRbFilePreserveDetailEntity> childrenList = dsRbFilePreserveSlot.getChildrenList(); |
||||||
|
this.savePreserveSlotList(childrenList, qcProduceRunOld, dsRbFilePreserveSlot.getRfpsType()); |
||||||
|
|
||||||
|
qcProduceRunService.updateById(qcProduceRunOld); |
||||||
|
} |
||||||
|
return false; |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public GoodsVO getMaterialMess(String goodsCode) { |
||||||
|
return macToolUseService.getMaterialMess(goodsCode); |
||||||
|
} |
||||||
|
|
||||||
|
private void savePreserveSlotList(List<MesRbFilePreserveDetailEntity> childrenList, MesQcProduceRunEntity qcProduceRun, Short rfpsType) { |
||||||
|
for (int i = 0; i < childrenList.size(); i++) { |
||||||
|
MesRbFilePreserveDetailEntity dsRbFilePreserveDetail = childrenList.get(i); |
||||||
|
if (childrenList.get(0).getRfpdTime() != null) { |
||||||
|
String time = childrenList.get(0).getRfpdTime(); |
||||||
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(time)) { |
||||||
|
time = time.replace("-", "/"); |
||||||
|
} |
||||||
|
qcProduceRun.setInDate(time); |
||||||
|
} |
||||||
|
if (childrenList.size() > 1 && childrenList.get(1).getRfpdTime() != null) { |
||||||
|
|
||||||
|
String time = childrenList.get(1).getRfpdTime(); |
||||||
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(time)) { |
||||||
|
time = time.replace("-", "/"); |
||||||
|
} |
||||||
|
qcProduceRun.setOutDate(time); |
||||||
|
} |
||||||
|
if (rfpsType == 1) { // 模板一
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
String time = dsRbFilePreserveDetail.getRfpdTime(); |
||||||
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(time)) { |
||||||
|
time = time.replace("-", "/"); |
||||||
|
} |
||||||
|
qcProduceRun.setInDate(time); |
||||||
|
|
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
String time = dsRbFilePreserveDetail.getRfpdTime(); |
||||||
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(time)) { |
||||||
|
time = time.replace("-", "/"); |
||||||
|
} |
||||||
|
qcProduceRun.setOutDate(time); |
||||||
|
} |
||||||
|
} else if (rfpsType == 2) { // 模板二
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 3) { // 模板三
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 4) { // 模板四
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 5 || rfpsType == 22) { // 模板五
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 6) { // 模板六
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 7) { // 模板七
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 8) { // 模板八
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 9) { // 模板九
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 10) { // 模板十
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setQualified(dsRbFilePreserveDetail.getQualified()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 11) { // 模板十一
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 12) { // 模板十二
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 13) { // 模板十三
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 9) { |
||||||
|
qcProduceRun.setDataTen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 14) { // 模板十四
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 9) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 10) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 11) { |
||||||
|
qcProduceRun.setDataTen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 15) { // 模板十五
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 9) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 10) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 11) { |
||||||
|
qcProduceRun.setDataTen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 12) { |
||||||
|
qcProduceRun.setDataEleven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 13) { |
||||||
|
qcProduceRun.setDataTwelve(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 16) { // 模板十六
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 9) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 10) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 11) { |
||||||
|
qcProduceRun.setDataTen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 12) { |
||||||
|
qcProduceRun.setDataEleven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 13) { |
||||||
|
qcProduceRun.setDataTwelve(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 14) { |
||||||
|
qcProduceRun.setDataThirteen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 15) { |
||||||
|
qcProduceRun.setDataFourteen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 17) { // 模板十七
|
||||||
|
if (i == 2) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 18) { // 模板十八
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 19) { // 模板十九 //zxh 20250519 新增模板19和模板20
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 9) { |
||||||
|
qcProduceRun.setDataTen(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 10) { |
||||||
|
qcProduceRun.setDataEleven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 11) { |
||||||
|
qcProduceRun.setDataTwelve(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 20) { // 模板二十
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setInDate(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setInDate(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setOutDate(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setOutDate(dsRbFilePreserveDetail.getRfpdTime()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} else if (rfpsType == 21) { // 模板二一
|
||||||
|
if (i == 0) { |
||||||
|
qcProduceRun.setDataOne(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 1) { |
||||||
|
qcProduceRun.setDataTwo(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 2) { |
||||||
|
qcProduceRun.setDataThree(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 3) { |
||||||
|
qcProduceRun.setDataFour(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 4) { |
||||||
|
qcProduceRun.setDataFive(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 5) { |
||||||
|
qcProduceRun.setDataSix(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 6) { |
||||||
|
qcProduceRun.setDataSeven(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 7) { |
||||||
|
qcProduceRun.setDataEight(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (i == 8) { |
||||||
|
qcProduceRun.setDataNine(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} |
||||||
|
String detailName = dsRbFilePreserveDetail.getDetailName(); |
||||||
|
if (detailName != null) { |
||||||
|
if (detailName.contains("温度")) { |
||||||
|
qcProduceRun.setTempSlot(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("电导率")) { |
||||||
|
qcProduceRun.setEleRate(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("电流") && !(detailName.contains("壳体") || detailName.contains("插针"))) { |
||||||
|
qcProduceRun.setEleStream(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("链速")) { |
||||||
|
qcProduceRun.setVSpeed(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("镍离子")) { |
||||||
|
qcProduceRun.setNiValue(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("pH值")) { |
||||||
|
qcProduceRun.setPhValue(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
//zxh 20250604 增加软起时间和工作电压
|
||||||
|
else if (detailName.contains("软起时间")) { |
||||||
|
qcProduceRun.setSoftWorkTime(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} else if (detailName.contains("工作电压")) { |
||||||
|
qcProduceRun.setVoltage(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
//zxh 20250617 新增初始电压
|
||||||
|
} else if (detailName.contains("初始电压")) { |
||||||
|
qcProduceRun.setStartVol(dsRbFilePreserveDetail.getParamValue()); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
Loading…
Reference in new issue