44399 工位表的工位图的file_ID取 mes_media_file_cfg表的ID

dev-temp-nht-202502180000-customprint
王杰 5 months ago
parent 103f2dcd07
commit 4a3e42f31f

@ -1,5 +1,6 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesMediaFileCfgService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesAssemblyExtService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionCustomContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
@ -11,7 +12,10 @@ import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.*;
import cn.estsh.i3plus.pojo.mes.repository.*;
import cn.estsh.i3plus.pojo.mes.repository.MesAssemblyNosortCfgRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProductionAssemblyRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProductionAssemblyUniqueRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesWorkOrderAssemblyRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -47,7 +51,7 @@ public class MesAssemblyExtService implements IMesAssemblyExtService {
private IMesProductionProcessContextStepService productionProcessContextStepService;
@Autowired
private MesFileRepository fileRepository;
private IMesMediaFileCfgService mediaFileCfgService;
//【排序线】获取生产工单装配件绑定记录
@Override
@ -69,7 +73,7 @@ public class MesAssemblyExtService implements IMesAssemblyExtService {
o.getAssemblyStatus().compareTo(MesExtEnumUtil.ASSEMBLY_STATUS.ASSEMBLY_STATUS_20.getValue()) == 0))).collect(Collectors.toList());
//获取排序FILE文件URL
Map<Long, String> fileMap = getFileMap(prodRuleContext.getOrganizeCode(), filterSortFileIdList(unBindList));
Map<Long, String> fileMap = mediaFileCfgService.getMediaFileCfgMap(prodRuleContext.getOrganizeCode(), filterSortFileIdList(unBindList));
List<MesProductionAssemblySortContext> productionAssemblySortContextList = new ArrayList<>();
@ -177,7 +181,7 @@ public class MesAssemblyExtService implements IMesAssemblyExtService {
if (CollectionUtils.isEmpty(assemblyNosortCfgList)) return null;
//获取非排序FILE文件URL
Map<Long, String> fileMap = getFileMap(prodRuleContext.getOrganizeCode(), filterNosortFileIdList(assemblyNosortCfgList));
Map<Long, String> fileMap = mediaFileCfgService.getMediaFileCfgMap(prodRuleContext.getOrganizeCode(), filterNosortFileIdList(assemblyNosortCfgList));
List<MesProductionAssemblyNosortContext> productionAssemblyNosortContextList = new ArrayList<>();
@ -271,17 +275,6 @@ public class MesAssemblyExtService implements IMesAssemblyExtService {
return imageFileIdList;
}
//获取FILE文件URL
private Map<Long, String> getFileMap(String organizeCode, List<Long> fileIdList) {
if (StringUtils.isEmpty(organizeCode) || CollectionUtils.isEmpty(fileIdList)) return null;
fileIdList = fileIdList.stream().filter(o -> !StringUtils.isEmpty(o)).distinct().collect(Collectors.toList());
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
if (fileIdList.size() == 1) DdlPreparedPack.getNumEqualPack(fileIdList.get(0), MesPcnExtConstWords.ID, packBean);
DdlPreparedPack.getInPackList(fileIdList, MesPcnExtConstWords.ID, packBean);
List<MesFile> fileDbList = fileRepository.findByHqlWhere(packBean);
return CollectionUtils.isEmpty(fileIdList) ? null : fileDbList.stream().filter(o -> (null != o && !StringUtils.isEmpty(o.getFileUrl()))).collect(Collectors.toMap(MesFile::getId, MesFile::getFileUrl));
}
//根据生产工单装配件清单ID分组
private Map<Long, List<MesProductionAssembly>> groupProductionAssembly(List<MesProductionAssembly> productionAssemblyList) {
return CollectionUtils.isEmpty(productionAssemblyList) ? null :

@ -1,35 +1,29 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.station;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesMediaFileCfgService;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesProdShiftRecordService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionCustomContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionDispatchContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderExtService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.station.function.MesFunctionProductionStatisticsService;
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProdShiftContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPartContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseModuleService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.IStepService;
import cn.estsh.i3plus.mes.pcn.util.StationKvBeanUtil;
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.MesFile;
import cn.estsh.i3plus.pojo.mes.bean.MesStateMachineStatus;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrder;
import cn.estsh.i3plus.pojo.mes.model.StationKvBean;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
import cn.estsh.i3plus.pojo.mes.repository.MesFileRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import cn.estsh.impp.framework.boot.util.SpringContextsUtil;
import com.alibaba.fastjson.JSONObject;
import com.google.common.base.Objects;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -39,7 +33,6 @@ import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.StringJoiner;
/**
* @Description :
@ -65,7 +58,7 @@ public class MesProductionNoSortModuleService extends BaseModuleService {
private IMesWorkOrderExtService workOrderExtService;
@Autowired
private MesFileRepository mesFileRepository;
private IMesMediaFileCfgService mediaFileCfgService;
@Override
public void init(StationRequestBean reqBean) {
@ -165,10 +158,7 @@ public class MesProductionNoSortModuleService extends BaseModuleService {
//判断是否配置的是展示文件
String url = null;
if (!StringUtils.isEmpty(workCell.getIsShowMsg()) && !StringUtils.isEmpty(MesExtEnumUtil.WORK_FILE_TYPE.valueOfDescription(workCell.getIsShowMsg()))) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getNumEqualPack(Long.parseLong(workCell.getFileId()), MesPcnExtConstWords.ID, packBean);
MesFile mesFile = mesFileRepository.getByProperty(packBean);
url = (null != mesFile && !StringUtils.isEmpty(mesFile.getFileUrl())) ? mesFile.getFileUrl() : null;
url = mediaFileCfgService.getMediaFileUrl(reqBean.getOrganizeCode(), workCell.getFileId());
if (!StringUtils.isEmpty(url)) {
JSONObject reqJson = new JSONObject();
if (workCell.getIsShowMsg().compareTo(MesExtEnumUtil.WORK_FILE_TYPE.WORK_CELL_PICTURE.getValue()) == 0) resultBean.setDataType(MesPcnEnumUtil.STATION_DATA_TYPE.IMAGE.getValue());

@ -1,5 +1,6 @@
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.station.function;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesMediaFileCfgService;
import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesProdShiftRecordService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionCustomContextStepService;
import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService;
@ -7,17 +8,13 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProdShiftContext;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtConstWords;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.BaseSwsService;
import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.function.IFsmModuleFunctionService;
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.MesFile;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.mes.model.ButtonDynamicModel;
import cn.estsh.i3plus.pojo.mes.model.StationKvBean;
import cn.estsh.i3plus.pojo.mes.model.StationRequestBean;
import cn.estsh.i3plus.pojo.mes.model.StationResultBean;
import cn.estsh.i3plus.pojo.mes.repository.MesFileRepository;
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -35,7 +32,7 @@ public class MesFunctionProductionStatisticsService extends BaseSwsService imple
private IMesProductionCustomContextStepService productionCustomContextStepService;
@Autowired
private MesFileRepository mesFileRepository;
private IMesMediaFileCfgService mediaFileCfgService;
@Autowired
private IMesProductionProcessContextStepService productionProcessContextStepService;
@ -68,10 +65,7 @@ public class MesFunctionProductionStatisticsService extends BaseSwsService imple
//判断是否配置的是展示文件
String url = null;
if (!StringUtils.isEmpty(workCell.getIsShowMsg()) && !StringUtils.isEmpty(MesExtEnumUtil.WORK_FILE_TYPE.valueOfDescription(workCell.getIsShowMsg()))) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getNumEqualPack(Long.parseLong(workCell.getFileId()), MesPcnExtConstWords.ID, packBean);
MesFile mesFile = mesFileRepository.getByProperty(packBean);
url = (null != mesFile && !StringUtils.isEmpty(mesFile.getFileUrl())) ? mesFile.getFileUrl() : null;
url = mediaFileCfgService.getMediaFileUrl(reqBean.getOrganizeCode(), workCell.getFileId());
}
//如果不存在文件, 且当前工位配置需要统计加工数的情况下才进行重置加工数

Loading…
Cancel
Save