Merge remote-tracking branch 'origin/dev-wuhan' into dev-wuhan

tags/yfai-pcn-ext-v2.3
yxw 8 months ago
commit 19dc318f2f

@ -11,6 +11,12 @@ public interface IMesEquipmentExtService {
@ApiOperation(value = "根据生产线代码,工位代码查询工位设备集合")
List<MesCellEquipContext> getCellEquipmentList(String organizeCode, String workCenterCode, String workCellCode);
@ApiOperation(value = "根据生产线代码,工位代码查询工位设备集合")
List<MesWcEquipment> getWcEquipmentList(String organizeCode, String workCenterCode, String workCellCode);
@ApiOperation(value = "根据生产线代码,工位代码查询工位设备")
MesWcEquipment getWcEquipment(String organizeCode, String workCenterCode, String workCellCode);
@ApiOperation(value = "根据设备变量配置类型查询设备数据变量接口逻辑集合")
List<MesEquipmentVariableCfg> getEquipmentVariableCfgList(String organizeCode, String variableCfgType);

@ -16,6 +16,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
@ -44,9 +45,7 @@ public class MesEquipmentExtService implements IMesEquipmentExtService {
@Override
public List<MesCellEquipContext> getCellEquipmentList(String organizeCode, String workCenterCode, String workCellCode) {
if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || StringUtils.isEmpty(workCellCode)) return null;
List<MesWcEquipment> wcEquipmentDbList = wcEquipmentRepository.findByProperty(
new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.WORK_CENTER_CODE, MesPcnExtConstWords.WORK_CELL_CODE},
new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), workCenterCode, workCellCode});
List<MesWcEquipment> wcEquipmentDbList = getWcEquipmentList(organizeCode, workCenterCode, workCellCode);
if (CollectionUtils.isEmpty(wcEquipmentDbList)) return null;
List<MesCellEquipContext> cellEquipmentContextList = null;
for (MesWcEquipment wcEquipmentDb : wcEquipmentDbList) {
@ -65,6 +64,22 @@ public class MesEquipmentExtService implements IMesEquipmentExtService {
}
@Override
public List<MesWcEquipment> getWcEquipmentList(String organizeCode, String workCenterCode, String workCellCode) {
return wcEquipmentRepository.findByProperty(
new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.WORK_CENTER_CODE, MesPcnExtConstWords.WORK_CELL_CODE},
new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), workCenterCode, workCellCode});
}
@Override
public MesWcEquipment getWcEquipment(String organizeCode, String workCenterCode, String workCellCode) {
List<MesWcEquipment> wcEquipmentDbList = getWcEquipmentList(organizeCode, workCenterCode, workCellCode);
if (CollectionUtils.isEmpty(wcEquipmentDbList)) return null;
if (wcEquipmentDbList.size() == 1) return wcEquipmentDbList.get(0);
List<MesWcEquipment> wcEquipmentDbListSort = wcEquipmentDbList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getSeq()))).sorted(Comparator.comparing(MesWcEquipment::getSeq)).collect(Collectors.toList());
return !CollectionUtils.isEmpty(wcEquipmentDbListSort) ? wcEquipmentDbListSort.get(0) : wcEquipmentDbList.get(0);
}
@Override
public List<MesEquipmentVariableCfg> getEquipmentVariableCfgList(String organizeCode, String variableCfgType) {
if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(variableCfgType)) return null;
return equipmentVariableCfgRepository.findByProperty(

@ -256,6 +256,9 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
if (StringUtils.isEmpty(model.getPartInspection())) {
partInspection = createPartInspection(model, MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue(), org);
if (model.getOptType() != null && model.getOptType() == 2) {
partInspection .setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(partInspection);
if (model.getSourceType() == MesExtEnumUtil.PART_INSPECTION_SOURCE_TYPE.SINGLE.getValue()) {
@ -281,6 +284,10 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
if (model.getPartInspection().getInspectionStatus() == MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue()) {
model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue());
ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName());
if (model.getOptType() != null && model.getOptType() == 2) {
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
//查询当前单据明细
@ -414,6 +421,9 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue());
ConvertBean.serviceModelUpdate(model.getPartInspection(), AuthUtil.getSessionUser().getUserName());
if (model.getOptType() != null && model.getOptType() == 2) {
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
//查询当前单据明细
List<MesPartInspectionDetail> resultDetailList = queryResultDetailList(model, org);

@ -123,6 +123,7 @@ public class MesNcProcessingService implements IMesNcProcessingService {
DdlPreparedPack.getNumEqualPack(partInspection.getQty(), "qty", packBean);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PART_INSPECTION_STATUS.FAIL.getValue(), "inspectionStatus", packBean);
DdlPreparedPack.getNumEqualPack(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.CREATE.getValue(), "ncStatus", packBean);
DdlPreparedPack.getNumEqualPack(partInspection.getRefundFlag(), "refundFlag", packBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean);
pager = PagerHelper.getPager(pager, partInspectionRepository.findByHqlWhereCount(packBean));
@ -387,11 +388,15 @@ public class MesNcProcessingService implements IMesNcProcessingService {
model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue());
model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.NORMAL.getValue());
ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName());
partInspectionRepository.save(model.getPartInspection());
String sourceValue = configService.getCfgValue(org, "UMLGO");
if (model.getOptType() == 2) {
sourceValue = refundSource;
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
//移库 转正常、放行8000移至2000
MesMove move = createMove(model, sourceValue, configService.getCfgValue(org, "LGORT"), org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.NORMAL_MOVE);
ConvertBean.serviceModelInitialize(move,model.getUserName());
@ -444,12 +449,15 @@ public class MesNcProcessingService implements IMesNcProcessingService {
model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.REWORK.getValue());
model.getPartInspection().setReworkTaskId(reworkTask.getId());
ConvertBean.serviceModelUpdate(model.getPartInspection(),model.getUserName());
partInspectionRepository.save(model.getPartInspection());
String sourceValue = configService.getCfgValue(org, "UMLGO");
if (model.getOptType() == 2) {
sourceValue = refundSource;
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
MesMove move = createMove(model, sourceValue, areaCode, org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.RETURN_MOVE);
ConvertBean.serviceModelInitialize(move,model.getUserName());
@ -484,6 +492,11 @@ public class MesNcProcessingService implements IMesNcProcessingService {
model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.SCRAP.getValue());
model.getPartInspection().setRejectQty(model.getPartInspection().getQty());
ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName());
if (model.getOptType() == 2) {
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
if (isOrder) {
String sourceValue = source;
@ -531,12 +544,15 @@ public class MesNcProcessingService implements IMesNcProcessingService {
model.getPartInspection().setInspectionStatus(MesExtEnumUtil.PART_INSPECTION_STATUS.QUALIFIED.getValue());
model.getPartInspection().setNcStatus(MesExtEnumUtil.PART_INSPECTION_NC_STATUS.RELEASE.getValue());
ConvertBean.serviceModelUpdate(model.getPartInspection(), model.getUserName());
partInspectionRepository.save(model.getPartInspection());
String sourceValue = configService.getCfgValue(org, "UMLGO");
if (model.getOptType() == 2) {
sourceValue = refundSource;
model.getPartInspection().setRefundFlag(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
}
partInspectionRepository.save(model.getPartInspection());
//移库 转正常、放行8000移至2000
MesMove move = createMove(model, sourceValue, configService.getCfgValue(org, "LGORT"), org, null == sn ? workCenterCode : sn.getWorkCenterCode(), MesExtEnumUtil.MOVE_TYPE.NORMAL_MOVE);
ConvertBean.serviceModelInitialize(move,model.getUserName());

@ -1,5 +1,6 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.equiplog;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesEquipmentExtService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsOutContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesScanMonitorContext;
@ -11,6 +12,7 @@ import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.MesWcEquipment;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCellScanMonitorLog;
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
import cn.estsh.i3plus.pojo.mes.repository.MesWorkCellScanMonitorLogRepository;
@ -37,6 +39,9 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic
private IMesProductionProcessContextStepService productionProcessContextStepService;
@Autowired
private IMesEquipmentExtService equipmentExtService;
@Autowired
private MesWorkCellScanMonitorLogRepository workCellScanMonitorLogRepository;
private final static Map<String, List<String>> cellMsg2RepeatMap = new ConcurrentHashMap();
@ -60,6 +65,12 @@ public class MesWorkCellScanMonitorLogExtService implements ISwsWriteDbLogServic
workCellScanMonitorLog.setOrgWorkCode(new StringJoiner(MesPcnExtConstWords.E_UNDERLINE).add(workCellScanMonitorLog.getOrganizeCode()).add(workCellScanMonitorLog.getWorkCenterCode()).toString());
if (StringUtils.isEmpty(workCellScanMonitorLog.getEquipmentCode())) {
MesWcEquipment wcEquipment = equipmentExtService.getWcEquipment(resultBean.getOrganizeCode(), resultBean.getWorkCenterCode(), resultBean.getWorkCellCode());
workCellScanMonitorLog.setEquipmentCode(null != wcEquipment ? wcEquipment.getEquipmentCode() : null);
workCellScanMonitorLog.setEquipmentName(null != wcEquipment ? wcEquipment.getEquipmentName() : null);
}
ConvertBean.serviceModelInitialize(workCellScanMonitorLog, resultBean.getUserInfo());
workCellScanMonitorLog.setCreateDatetime(resultBean.getCreateDatetime());

Loading…
Cancel
Save