From f0a0ccc70783198023ecbb4680d787df941373b3 Mon Sep 17 00:00:00 2001 From: yibo <361071264@qq.com> Date: Mon, 17 Dec 2018 16:43:25 +0800 Subject: [PATCH] . --- .../BL/Bill/ButcherBL/ButcherBL.cs | 13 +++++++++++-- .../BL/Bill/HurryButcherBL/HurryButcherBL.cs | 16 ++++++++++++++-- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/B3SheepButcherManage/BL/Bill/ButcherBL/ButcherBL.cs b/B3SheepButcherManage/BL/Bill/ButcherBL/ButcherBL.cs index 215f663..413b527 100644 --- a/B3SheepButcherManage/BL/Bill/ButcherBL/ButcherBL.cs +++ b/B3SheepButcherManage/BL/Bill/ButcherBL/ButcherBL.cs @@ -411,10 +411,19 @@ namespace BWP.B3SheepButcherManage.BL protected override void doNullify(Butcher dmo) { - if (dmo.Details.Any()) - throw new Exception("单据有屠宰明细,不允许作废"); + CheckHasDetail(dmo); base.doNullify(dmo); } + + void CheckHasDetail(Butcher dmo) + { + var query = new DQueryDom(new JoinAlias(typeof(Butcher_Detail))); + query.Where.Conditions.Add(DQCondition.EQ("Butcher_ID", dmo.ID)); + query.Columns.Add(DQSelectColumn.Create(DQExpression.Value(1), "c")); + query.Range = SelectRange.Top(1); + if (query.EExecuteScalar(Session) != null) + throw new Exception("单据有屠宰明细,不允许作废"); + } } class tempWeightTable diff --git a/B3SheepButcherManage/BL/Bill/HurryButcherBL/HurryButcherBL.cs b/B3SheepButcherManage/BL/Bill/HurryButcherBL/HurryButcherBL.cs index 51220dc..c14da2e 100644 --- a/B3SheepButcherManage/BL/Bill/HurryButcherBL/HurryButcherBL.cs +++ b/B3SheepButcherManage/BL/Bill/HurryButcherBL/HurryButcherBL.cs @@ -4,10 +4,13 @@ using BWP.B3SheepButcherManage.BO; using Forks.EnterpriseServices; using Forks.EnterpriseServices.BusinessInterfaces; using Forks.EnterpriseServices.DomainObjects2; +using Forks.EnterpriseServices.DomainObjects2.DQuery; +using Forks.EnterpriseServices.SqlDoms; using System; using System.Collections.Generic; using System.Linq; using System.Text; +using TSingSoft.WebPluginFramework; namespace BWP.B3SheepButcherManage.BL { @@ -53,9 +56,18 @@ namespace BWP.B3SheepButcherManage.BL protected override void doNullify(HurryButcher dmo) { - if (dmo.Details.Any()) - throw new Exception("单据有急宰明细,不允许作废"); + CheckHasDetail(dmo); base.doNullify(dmo); } + + void CheckHasDetail(HurryButcher dmo) + { + var query = new DQueryDom(new JoinAlias(typeof(HurryButcher_Detail))); + query.Where.Conditions.Add(DQCondition.EQ("HurryButcher_ID", dmo.ID)); + query.Columns.Add(DQSelectColumn.Create(DQExpression.Value(1), "c")); + query.Range = SelectRange.Top(1); + if (query.EExecuteScalar(Session) != null) + throw new Exception("单据有急宰明细,不允许作废"); + } } }