diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/dbinterface/WmsSAPDbQuery.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/dbinterface/WmsSAPDbQuery.java index f1d75b6..5792c9f 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/dbinterface/WmsSAPDbQuery.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/dbinterface/WmsSAPDbQuery.java @@ -14,6 +14,8 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.sql.Connection; +import java.util.List; +import java.util.Map; /** * @Description : @@ -102,4 +104,25 @@ public class WmsSAPDbQuery { } return String.format(LocaleUtils.getLocaleRes(msg), args); } + + /** + * 根据物料编码查询物料名称 + * + * @param organizeCode 工厂代码 + * @param partNo 物料编码 + * @return 物料名称 + * @throws Exception + */ + public String partName(String organizeCode, String partNo) throws Exception { + String sqlString = "select part_name from mes_part where organize_code='" + organizeCode + + "' and part_no='" + partNo + + "' and is_deleted=2 and is_valid=1"; + + List> result = mesDataSourceProxy.queryMapList(sqlString, srcConn); + + if (result == null || result.size() == 0) { + return ""; + } + return result.get(0).get("part_name").toString(); + } } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java index a9e548f..321010f 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java @@ -34,6 +34,8 @@ public class MesShiftService extends BaseMesService implements IMesShi ValidatorBean.checkNotNull(item.getShiftName(), "班次名称不能为空"); ValidatorBean.checkNotNull(item.getStartTime(), "开始时间不能为空"); ValidatorBean.checkNotNull(item.getEndTime(), "结束时间不能为空"); + ValidatorBean.checkNotNull(item.getBeginDate(), "执行开始日期不能为空"); + ValidatorBean.checkNotNull(item.getEndDate(), "执行结束日期不能为空"); /* ValidatorBean.checkNotNull(item.getWorkerQty(), "作业人数不能为空"); */ @@ -42,12 +44,16 @@ public class MesShiftService extends BaseMesService implements IMesShi DdlPreparedPack.getStringEqualPack(item.getAreaCode(), "areaCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getShiftCode(), "shiftCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getWorkCenterCode(), "workCenterCode", cellBinPackBean); + cellBinPackBean.setWhereAppend(cellBinPackBean.getWhereAppend()+" " + + " and ((model.beginDate <= '"+item.getBeginDate()+"' and model.endDate >= '"+item.getBeginDate()+"')"+ + " or (model.beginDate <= '"+item.getEndDate()+"' and model.endDate >= '"+item.getEndDate()+"')" + + " or (model.beginDate >= '"+item.getBeginDate()+"' and model.endDate <= '"+item.getEndDate()+"'))" ); boolean flg = baseRDao.isExitByHql(cellBinPackBean); if (flg) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) - .setErrorDetail("【%s】区域【%s】产线【%s】班次代码已经存在,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) + .setErrorDetail("【%s】区域【%s】产线【%s】班次代码生效时间内已经存在有效数据,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) .build(); } } @@ -61,6 +67,8 @@ public class MesShiftService extends BaseMesService implements IMesShi ValidatorBean.checkNotNull(item.getShiftName(), "班次名称不能为空"); ValidatorBean.checkNotNull(item.getStartTime(), "开始时间不能为空"); ValidatorBean.checkNotNull(item.getEndTime(), "结束时间不能为空"); + ValidatorBean.checkNotNull(item.getBeginDate(), "执行开始日期不能为空"); + ValidatorBean.checkNotNull(item.getEndDate(), "执行结束日期不能为空"); /* ValidatorBean.checkNotNull(item.getWorkerQty(), "作业人数不能为空"); */ @@ -69,13 +77,17 @@ public class MesShiftService extends BaseMesService implements IMesShi DdlPreparedPack.getStringEqualPack(item.getAreaCode(), "areaCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getShiftCode(), "shiftCode", cellBinPackBean); DdlPreparedPack.getStringEqualPack(item.getWorkCenterCode(), "workCenterCode", cellBinPackBean); + cellBinPackBean.setWhereAppend(cellBinPackBean.getWhereAppend()+" " + + " and ((model.beginDate <= '"+item.getBeginDate()+"' and model.endDate >= '"+item.getBeginDate()+"')"+ + " or (model.beginDate <= '"+item.getEndDate()+"' and model.endDate >= '"+item.getEndDate()+"')" + + " or (model.beginDate >= '"+item.getBeginDate()+"' and model.endDate <= '"+item.getEndDate()+"'))" ); DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean); boolean flg = baseRDao.isExitByHql(cellBinPackBean); if (flg) { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) - .setErrorDetail("【%s】区域【%s】产线【%s】班次代码已经存在,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) + .setErrorDetail("【%s】区域【%s】产线【%s】班次代码生效时间内已经存在有效数据,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) .build(); } }