From 5ac6837ef4ab00f93777c28ebc068b2894fbb710 Mon Sep 17 00:00:00 2001 From: mzr Date: Wed, 17 Sep 2025 09:24:53 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E9=A2=86=E6=96=99-=E6=89=93?= =?UTF-8?q?=E5=8D=B0V1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mmpac/issue/action/IssuePrintAction.java | 18 +++++ .../mmpac/issue/config/action/action.xml | 74 +++++++++++++++++++ .../service/IssuePickmPrintOperator.java | 52 +++++++++++++ 3 files changed, 144 insertions(+) create mode 100644 mmpac/src/client/nccloud/web/mmpac/issue/action/IssuePrintAction.java create mode 100644 mmpac/src/client/yyconfig/modules/mmpac/issue/config/action/action.xml create mode 100644 mmpac/src/private/nccloud/pubimpl/mmpac/issue/service/IssuePickmPrintOperator.java diff --git a/mmpac/src/client/nccloud/web/mmpac/issue/action/IssuePrintAction.java b/mmpac/src/client/nccloud/web/mmpac/issue/action/IssuePrintAction.java new file mode 100644 index 0000000..50b6830 --- /dev/null +++ b/mmpac/src/client/nccloud/web/mmpac/issue/action/IssuePrintAction.java @@ -0,0 +1,18 @@ +package nccloud.web.mmpac.issue.action; + +import nccloud.web.platform.print.AbstractPrintAction; + +/** + * 生产领料-备料计划列表打印 + */ +public class IssuePrintAction extends AbstractPrintAction { + @Override + public String getPrintServiceModule() { + return "mmpac"; + } + + @Override + public String getPrintServiceName() { + return "nccloud.pubimpl.mmpac.issue.service.IssuePickmPrintOperator"; + } +} diff --git a/mmpac/src/client/yyconfig/modules/mmpac/issue/config/action/action.xml b/mmpac/src/client/yyconfig/modules/mmpac/issue/config/action/action.xml new file mode 100644 index 0000000..8c800c8 --- /dev/null +++ b/mmpac/src/client/yyconfig/modules/mmpac/issue/config/action/action.xml @@ -0,0 +1,74 @@ + + + + mmpac.issue.issuepickmquery + + nccloud.web.mmpac.issue.action.IssuePickmQueryAction + + + mmpac.issue.issuereqpickmquery + + nccloud.web.mmpac.issue.action.IssueReqPickmQueryAction + + + mmpac.issue.queryIssueObtainStockAccountNum + + nccloud.web.mmpac.issue.action.IssueObtainStockAccountNumAction + + + mmpac.issue.issueDestIssueAction + + nccloud.web.mmpac.issue.action.IssueDestIssueAction + + + mmpac.issue.issueReserveMaterialAction + + nccloud.web.mmpac.issue.action.IssueReserveMaterialAction + + + mmpac.issue.issueQueryFromPickm + + nccloud.web.mmpac.issue.action.IssueQueryFromPickmAction + + + mmpac.issue.isseQueryFromReqPickm + + nccloud.web.mmpac.issue.action.IssueQueryFromReqPickmAction + + + mmpac.issue.isseQueryFromPutPlan + + nccloud.web.mmpac.issue.action.IssueQueryFromPutPlanAction + + + mmpac.issue.isseQueryFromDispatchlist + + nccloud.web.mmpac.issue.action.IssueQueryFromDispatchlistAction + + + mmpac.issue.issueQueryFromDirectTrans + + nccloud.web.mmpac.issue.action.IssueQueryFromDirectTrans + + + mmpac.issue.issueDirectTransQuery + + nccloud.web.mmpac.issue.action.IssueDirectTransQueryAction + + + mmpac.issue.issueDirectTransAction + + nccloud.web.mmpac.issue.action.IssueDirectTransAction + + + mmpac.issue.issueQueryFromPutPlanDirectTrans + + nccloud.web.mmpac.issue.action.IssueQueryFromPutPlanDirectTrans + + + mmpac.issue.checkIsNccNative + + nccloud.web.mmpac.issue.action.IssueCheckIsNccNative + + + \ No newline at end of file diff --git a/mmpac/src/private/nccloud/pubimpl/mmpac/issue/service/IssuePickmPrintOperator.java b/mmpac/src/private/nccloud/pubimpl/mmpac/issue/service/IssuePickmPrintOperator.java new file mode 100644 index 0000000..5daf0d0 --- /dev/null +++ b/mmpac/src/private/nccloud/pubimpl/mmpac/issue/service/IssuePickmPrintOperator.java @@ -0,0 +1,52 @@ +package nccloud.pubimpl.mmpac.issue.service; + +import nc.impl.pubapp.pattern.data.bill.BillQuery; +import nc.vo.mmpac.reqpickm.consts.ReqPickmLangConsts; +import nc.vo.mmpac.reqpickm.entity.AggReqPickmVO; +import nc.vo.mmpac.reqpickm.entity.ReqPickmItemVO; +import nc.vo.mmpac.reqpickm.entity.ReqPickmSumVO; +import nc.vo.mmpub.util.BillBodySortUtils; +import nc.vo.pubapp.pattern.exception.ExceptionUtils; +import nccloud.pubitf.mmpub.pub.print.BaseMetaPrintService; + +import java.util.ArrayList; +import java.util.List; + +/** + * 生产领料-备料计划列表打印服务类 + */ +public class IssuePickmPrintOperator extends BaseMetaPrintService { + @Override + public Object[] getDatas(String[] ids) { + BillQuery query = new BillQuery(AggReqPickmVO.class); + String[] uniqueIds = this.removeDuplicates(ids); + AggReqPickmVO[] vos = query.query(uniqueIds); + if (null == vos || vos.length == 0) { + ExceptionUtils.wrappBusinessException(ReqPickmLangConsts.getEdit_msg()); + } + + BillBodySortUtils.sort(vos, "vrowno", ReqPickmItemVO.class); + BillBodySortUtils.sort(vos, "vrowno", ReqPickmSumVO.class); + return vos; + } + + private String[] removeDuplicates(String[] ids) { + if (null == ids) { + return new String[0]; + } else if (ids.length <= 1) { + return ids; + } else { + List uniqueIdList = new ArrayList(); + + for (int i = 0; i < ids.length; ++i) { + String id = ids[i]; + if (!uniqueIdList.contains(id)) { + uniqueIdList.add(id); + } + } + + String[] uniqueIds = (String[]) uniqueIdList.toArray(new String[0]); + return uniqueIds; + } + } +}