Merge branch 'dev-temp-ljs-202501091824-44656' into dev

dev
xiangwei.zhang 4 months ago
commit 45c7fe23da

@ -1,6 +1,7 @@
package cn.estsh.i3plus.ext.mes.api.base;
import cn.estsh.i3plus.pojo.mes.bean.MesProdRuleNosortCfg;
import io.swagger.annotations.ApiOperation;
/**
* @Description:
@ -9,6 +10,7 @@ import cn.estsh.i3plus.pojo.mes.bean.MesProdRuleNosortCfg;
*/
public interface IMesProdRuleNosortCfgService extends IBaseMesService<MesProdRuleNosortCfg> {
@ApiOperation(value = "根据产线和物料查询非排序产品加工规则配置", notes = "根据产线和物料查询非排序产品加工规则配置")
MesProdRuleNosortCfg findMesProdRuleNosortCfgByWorkCenterCode(String workCenterCode, String partNo, String organizeCode);
}

@ -2,13 +2,16 @@ package cn.estsh.i3plus.ext.mes.apiservice.dao;
import cn.estsh.i3plus.pojo.mes.bean.MesProdRuleNosortCfg;
import io.swagger.annotations.ApiOperation;
import java.util.List;
public interface IMesProdRuleNosortCfgDao {
@ApiOperation(value = "根据产线和物料查询非排序产品加工规则配置", notes = "根据产线和物料查询非排序产品加工规则配置")
List<MesProdRuleNosortCfg> findMesProdRuleNosortCfgByWorkCenterCode(String workCenterCode, String partNo, String organizeCode);
@ApiOperation(value = "根据工位和物料查询非排序产品加工规则配置", notes = "根据工位和物料查询非排序产品加工规则配置")
List<MesProdRuleNosortCfg> findMesProdRuleNosortCfgByWorkCellCode(String workCellCode, String partNo, String organizeCode);
}

@ -99,7 +99,7 @@ public class MesProdRuleNosortCfgService extends BaseMesService<MesProdRuleNosor
public MesProdRuleNosortCfg findMesProdRuleNosortCfgByWorkCenterCode(String workCenterCode, String partNo, String organizeCode) {
List<MesProdRuleNosortCfg> prodRuleNosortCfgList = mesProdRuleNosortCfgDao.findMesProdRuleNosortCfgByWorkCenterCode(workCenterCode, partNo, organizeCode);
if(CollectionUtils.isEmpty(prodRuleNosortCfgList)){
MesException.throwMesBusiException("产线【%s】产出零件【%s】对应的非排序工艺路线信息不存在",workCenterCode,partNo);
MesException.throwMesBusiException("产线【%s】产出零件【%s】对应的非排序产品加工规则配置不存在",workCenterCode,partNo);
}
return prodRuleNosortCfgList.iterator().next();
}

@ -967,23 +967,10 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
//查询产线信息
MesWorkCenter mesWorkCenter = getMesWorkCenter(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getWorkCenterCode());
String partProdGroupCode = mesWorkOrder.getPartProdGroupCode();
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesWorkOrder.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(partProdGroupCode,"partProdGroupCode",ddlPackBean);
List<MesPartProdGroup> mesPartProdGroupList = mesPartProdGroupRao.findByHqlTopWhere(ddlPackBean, 1);
String bomVersion = "";
MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion());
if (!mesPartProdGroupList.isEmpty()){
MesPartProdGroup mesPartProdGroup = mesPartProdGroupList.get(0);
if (mesPartProdGroup.getEnableBomVersion() == null || mesPartProdGroup.getEnableBomVersion() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){
//获取生产版本
mesProductVersion = getMesProductVersion(mesWorkOrder.getOrganizeCode(), mesWorkOrder.getPartNo(), mesWorkOrder.getProductVersion());
bomVersion = mesProductVersion.getAlternativePartList();
}
}
MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrderDb.getOrganizeCode(),mesWorkOrderDb.getPartNo(),mesWorkOrderDb.getProductVersion());
//物料+生产版本获取bom信息
List<MesBom> mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, bomVersion);
List<MesBom> mesBoms = mesBomService.findBomList(mesPart.getOrganizeCode(), mesPart, mesProductVersion.getAlternativePartList());
//报工类型
if (MesExtEnumUtil.REPORT_TYPE.REPORT.getValue() == mesWorkOrder.getReportType()) {
@ -1107,7 +1094,7 @@ public class MesWorkOrderService extends BaseMesService<MesWorkOrder> implements
//排序工单
if (MesExtEnumUtil.ORDER_TYPE.SORT.getValue() == mesWorkOrder.getWorkOrderType()) {
//排序线不能做报工调整ESD属性类型
if (MesExtEnumUtil.REPORT_TYPE.WRITE_OFF.getValue() == mesWorkOrder.getReportType()) {
if (MesExtEnumUtil.REPORT_TYPE.WRITE_OFF.getValue() == mesWorkOrderNew.getReportType()) {
MesConfig config = mesConfigService.getCfgValueByCode(mesWorkOrder.getOrganizeCode(), MesExtConstWords.NOT_ALLOW_WRITE_OFF);
if (!Objects.isNull(config) && config.getCfgValue().contains(mesPart.getEsd())) {
MesException.throwMesBusiException("物料特殊移库类型为【%s】,不允许冲销", mesPart.getEsd());

Loading…
Cancel
Save