|
|
@@ -230,24 +230,28 @@ public class MesMaterialRkController extends BaseController {
|
|
|
}
|
|
|
String unit=list.get(0).getUnit();
|
|
|
|
|
|
- // 入库前校验:必须已报检且已来料检查,否则不允许入库
|
|
|
- MesMaterialReport reportQuery = new MesMaterialReport();
|
|
|
- reportQuery.setSn(materialCode.trim());
|
|
|
- reportQuery.setStatus(DataEntity.STATUS_NORMAL);
|
|
|
- MesMaterialReport report = mesMaterialReportService.findInfo(reportQuery);
|
|
|
- if (report == null) {
|
|
|
- resp.setResult(Global.FALSE);
|
|
|
- resp.setMessage("该来料码未报检,无法入库!");
|
|
|
- return resp;
|
|
|
- }
|
|
|
- MesMaterialCheckRecord checkQuery = new MesMaterialCheckRecord();
|
|
|
- checkQuery.setSn(materialCode.trim());
|
|
|
- checkQuery.setStatus(DataEntity.STATUS_NORMAL);
|
|
|
- MesMaterialCheckRecord checkRecord = mesMaterialCheckRecordService.findInfo(checkQuery);
|
|
|
- if (checkRecord == null) {
|
|
|
- resp.setResult(Global.FALSE);
|
|
|
- resp.setMessage("该来料码未检查,无法入库!");
|
|
|
- return resp;
|
|
|
+ // 入库(无生产订单号)才校验报检/检查;领料传 orderId,不做该限制
|
|
|
+ boolean isInbound = StringUtils.isBlank(orderId);
|
|
|
+ MesMaterialCheckRecord checkRecord = null;
|
|
|
+ if (isInbound) {
|
|
|
+ MesMaterialReport reportQuery = new MesMaterialReport();
|
|
|
+ reportQuery.setSn(materialCode.trim());
|
|
|
+ reportQuery.setStatus(DataEntity.STATUS_NORMAL);
|
|
|
+ MesMaterialReport report = mesMaterialReportService.findInfo(reportQuery);
|
|
|
+ if (report == null) {
|
|
|
+ resp.setResult(Global.FALSE);
|
|
|
+ resp.setMessage("该来料码未报检,无法入库!");
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+ MesMaterialCheckRecord checkQuery = new MesMaterialCheckRecord();
|
|
|
+ checkQuery.setSn(materialCode.trim());
|
|
|
+ checkQuery.setStatus(DataEntity.STATUS_NORMAL);
|
|
|
+ checkRecord = mesMaterialCheckRecordService.findInfo(checkQuery);
|
|
|
+ if (checkRecord == null) {
|
|
|
+ resp.setResult(Global.FALSE);
|
|
|
+ resp.setMessage("该来料码未检查,无法入库!");
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
HashMap<String, Object> data = new HashMap<>();
|
|
|
@@ -263,11 +267,11 @@ public class MesMaterialRkController extends BaseController {
|
|
|
data.put("unit", unit); // 单位
|
|
|
|
|
|
// 按来料码关联来料检查记录,带回合格/不合格数量,仅供 PDA 入库页初始显示(不覆盖手填,不参与 mesToErp)
|
|
|
- String hgQty = StringUtils.defaultIfBlank(checkRecord.getHgQty(), "");
|
|
|
- String bhgQty = StringUtils.defaultIfBlank(checkRecord.getBhgQty(), "");
|
|
|
+ String hgQty = checkRecord != null ? StringUtils.defaultIfBlank(checkRecord.getHgQty(), "") : "";
|
|
|
+ String bhgQty = checkRecord != null ? StringUtils.defaultIfBlank(checkRecord.getBhgQty(), "") : "";
|
|
|
data.put("hgQty", hgQty); // 合格数量(来自检查记录)
|
|
|
data.put("bhgQty", bhgQty); // 不合格数量(来自检查记录)
|
|
|
- if (orderId!=null){
|
|
|
+ if (StringUtils.isNotBlank(orderId)){
|
|
|
mesMaterialBl = mesMaterialLlService.findBlByMoAndItem(orderId, erpSn);
|
|
|
if (mesMaterialBl == null) {
|
|
|
throw new ServiceException(text("未找到对应备料信息!"));
|