生产报告保存校验齐套检查-正式环境代码同步
This commit is contained in:
parent
214cfc40f7
commit
66f419cbc3
|
|
@ -1,22 +1,25 @@
|
||||||
package nccloud.openapi.mmpac.wr;
|
package nccloud.openapi.mmpac.wr;
|
||||||
|
|
||||||
|
|
||||||
import nc.bs.dao.BaseDAO;
|
import nc.bs.dao.BaseDAO;
|
||||||
import nc.bs.framework.common.InvocationInfoProxy;
|
import nc.bs.framework.common.InvocationInfoProxy;
|
||||||
import nc.bs.framework.common.NCLocator;
|
import nc.bs.framework.common.NCLocator;
|
||||||
import nc.bs.logging.Log;
|
import nc.bs.logging.Log;
|
||||||
import nc.bs.uif2.validation.ValidationFailure;
|
import nc.bs.uif2.validation.ValidationFailure;
|
||||||
|
import nc.itf.mmpac.wr.IWrBusinessService;
|
||||||
import nc.jdbc.framework.SQLParameter;
|
import nc.jdbc.framework.SQLParameter;
|
||||||
import nc.jdbc.framework.processor.ColumnProcessor;
|
import nc.jdbc.framework.processor.ColumnProcessor;
|
||||||
import nc.util.mmf.framework.base.MMArrayUtil;
|
import nc.util.mmf.framework.base.MMArrayUtil;
|
||||||
import nc.util.mmf.framework.base.MMCollectionUtil;
|
import nc.util.mmf.framework.base.MMCollectionUtil;
|
||||||
import nc.util.mmf.framework.base.MMNumberUtil;
|
import nc.util.mmf.framework.base.MMNumberUtil;
|
||||||
import nc.util.mmf.framework.base.MMValueCheck;
|
import nc.util.mmf.framework.base.MMValueCheck;
|
||||||
|
import nc.vo.bd.bom.bom0202.enumeration.OutputTypeEnum;
|
||||||
|
import nc.vo.mmpac.wr.consts.WrptLangConst;
|
||||||
import nc.vo.mmpac.wr.entity.*;
|
import nc.vo.mmpac.wr.entity.*;
|
||||||
import nc.vo.mmpac.wr.enumeration.WrBillStatusEnum;
|
import nc.vo.mmpac.wr.enumeration.WrBillStatusEnum;
|
||||||
import nc.vo.pub.BusinessException;
|
import nc.vo.pub.BusinessException;
|
||||||
import nc.vo.pub.VOStatus;
|
import nc.vo.pub.VOStatus;
|
||||||
import nc.vo.pub.billtype.BilltypeVO;
|
import nc.vo.pub.billtype.BilltypeVO;
|
||||||
|
import nc.vo.pub.lang.UFBoolean;
|
||||||
import nc.vo.pub.lang.UFDate;
|
import nc.vo.pub.lang.UFDate;
|
||||||
import nc.vo.pubapp.AppContext;
|
import nc.vo.pubapp.AppContext;
|
||||||
import nc.vo.pubapp.pattern.exception.ExceptionUtils;
|
import nc.vo.pubapp.pattern.exception.ExceptionUtils;
|
||||||
|
|
@ -24,6 +27,7 @@ import nc.ws.opm.pub.utils.result.APIErrCodeEnum;
|
||||||
import nccloud.api.mmpac.wr.IAPIWrMaintain;
|
import nccloud.api.mmpac.wr.IAPIWrMaintain;
|
||||||
import nccloud.api.rest.utils.NCCRestUtils;
|
import nccloud.api.rest.utils.NCCRestUtils;
|
||||||
import nccloud.api.rest.utils.ResultMessageUtil;
|
import nccloud.api.rest.utils.ResultMessageUtil;
|
||||||
|
import nccloud.framework.service.ServiceLocator;
|
||||||
import nccloud.openapi.scmpub.pub.TransferCodeToPKTool;
|
import nccloud.openapi.scmpub.pub.TransferCodeToPKTool;
|
||||||
import nccloud.ws.rest.resource.AbstractNCCRestResource;
|
import nccloud.ws.rest.resource.AbstractNCCRestResource;
|
||||||
import org.json.JSONString;
|
import org.json.JSONString;
|
||||||
|
|
@ -379,7 +383,50 @@ public class WrResource extends AbstractNCCRestResource {
|
||||||
aggWrVO.getParentVO().setVtrantypeid(collection.get(0).getPk_billtypeid());
|
aggWrVO.getParentVO().setVtrantypeid(collection.get(0).getPk_billtypeid());
|
||||||
aggWrVO.getParentVO().setDbilldate(new UFDate());
|
aggWrVO.getParentVO().setDbilldate(new UFDate());
|
||||||
}
|
}
|
||||||
AggWrVO[] aggvos = server.newsave(voList.toArray(new AggWrVO[0]));
|
|
||||||
|
/*
|
||||||
|
* edit by xc 2025-10-22
|
||||||
|
* 齐套检查前置 从产品入库 前置 完工报告
|
||||||
|
* 考虑标品接口扩展性 表头增加校验参数 isdonecheck:Y/N
|
||||||
|
*/
|
||||||
|
AggWrVO[] wrVOS = voList.toArray(new AggWrVO[0]);
|
||||||
|
if (headInfo.containsKey("isdonecheck") && "Y".equals(headInfo.get("isdonecheck").toString())) {
|
||||||
|
IWrBusinessService service = (IWrBusinessService) ServiceLocator.find(IWrBusinessService.class);
|
||||||
|
AggWrVO[] resultvos = service.setCheck(wrVOS);
|
||||||
|
if (!MMValueCheck.isEmpty(resultvos)) {
|
||||||
|
StringBuilder errorMessagesSB = new StringBuilder();
|
||||||
|
|
||||||
|
for (AggWrVO aggWrVO : resultvos) {
|
||||||
|
if (!WrBillStatusEnum.FREEDOM.equalsValue(aggWrVO.getParentVO().getFbillstatus())) {
|
||||||
|
StringBuilder notThroughSB = new StringBuilder();
|
||||||
|
String billCode = aggWrVO.getParentVO().getVbillcode();
|
||||||
|
WrItemVO[] itemVOs = (WrItemVO[]) aggWrVO.getChildren(WrItemVO.class);
|
||||||
|
if (!MMValueCheck.isEmpty(itemVOs)) {
|
||||||
|
for (WrItemVO itemVO : itemVOs) {
|
||||||
|
if (!MMValueCheck.isEmpty(itemVO.getCbmoid()) && OutputTypeEnum.MAIN_PRODUCT.equalsValue(itemVO.getFbproducttype()) && !UFBoolean.TRUE.equals(itemVO.getBbsetmark())) {
|
||||||
|
notThroughSB.append(itemVO.getVbrowno());
|
||||||
|
notThroughSB.append(",");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!MMValueCheck.isEmpty(notThroughSB)) {
|
||||||
|
notThroughSB.setLength(notThroughSB.length() - 1);
|
||||||
|
String message = WrptLangConst.getSetCheckError_Msg(new String[]{billCode, notThroughSB.toString()});
|
||||||
|
errorMessagesSB.append(message);
|
||||||
|
errorMessagesSB.append("\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!MMValueCheck.isEmpty(errorMessagesSB)) {
|
||||||
|
ExceptionUtils.wrappBusinessException(errorMessagesSB.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
* end 齐套检查
|
||||||
|
* edit by xc 2025-10-22
|
||||||
|
*/
|
||||||
|
AggWrVO[] aggvos = server.newsave(wrVOS);
|
||||||
boolean successFlag = true;
|
boolean successFlag = true;
|
||||||
StringBuilder errMsg = new StringBuilder();
|
StringBuilder errMsg = new StringBuilder();
|
||||||
if (MMArrayUtil.isNotEmpty(aggvos)) {
|
if (MMArrayUtil.isNotEmpty(aggvos)) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue