From e47446cc24707e6e157ff41025f661d552e13a0c Mon Sep 17 00:00:00 2001 From: lyx <2027667395@qq.com> Date: Mon, 8 Apr 2024 15:49:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=90=88=E5=90=8C=E6=96=B9=E6=A1=88?= =?UTF-8?q?=E7=A7=9F=E9=87=91=E8=A1=A8=E6=B7=BB=E5=8A=A0=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .changeset/modern-chicken-compare.md | 5 +++++ .../src/server/services/contract-rule-service.ts | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 .changeset/modern-chicken-compare.md diff --git a/.changeset/modern-chicken-compare.md b/.changeset/modern-chicken-compare.md new file mode 100644 index 000000000..9ff11148d --- /dev/null +++ b/.changeset/modern-chicken-compare.md @@ -0,0 +1,5 @@ +--- +"@hera/plugin-rental": patch +--- + +修改合同方案租赁明细表的添加校验 diff --git a/packages/plugins/@hera/plugin-rental/src/server/services/contract-rule-service.ts b/packages/plugins/@hera/plugin-rental/src/server/services/contract-rule-service.ts index 4a0d5d451..5c9cb9edd 100644 --- a/packages/plugins/@hera/plugin-rental/src/server/services/contract-rule-service.ts +++ b/packages/plugins/@hera/plugin-rental/src/server/services/contract-rule-service.ts @@ -71,14 +71,14 @@ export class ContractRuleService { if (!options.values?.contract_plan && !options.values?.products) return; const plan = await this.db.getRepository('contract_plans').findOne({ where: { - id: options.values.contract_plan.id, + id: options.values?.contract_plan?.id || options.values?.contract_plan_id, }, appends: ['lease_items', 'lease_items.products'], }); const add = options.values.products; - const productData = plan.lease_items.map((item) => item.products).flat(); + const productData = plan.lease_items.filter(item => item.id !== options.values.id && item.products.length === add.length).map((item) => item.products).flat() productData.forEach((item) => { - const isHas = add.find((p) => p.raw_category_id === item.raw_category_id); + const isHas = add.find((p) => (p.id < 99999 && (p.id === item.id || (item.id > 99999 && p.raw_category_id === item.raw_category_id))) || (p.id > 99999 && p.raw_category_id === item.raw_category_id)); if (isHas) { throw new Error('方案中存在此产品'); }