From 5d5142b0374d0b507f0d435cba121622aa73502c Mon Sep 17 00:00:00 2001 From: yibo <361071264@qq.com> Date: Thu, 26 Apr 2018 15:17:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=92=A4=E9=94=802018=E3=80=824.25=E5=81=9A?= =?UTF-8?q?=E5=87=BA=E7=9A=84=E4=BF=AE=E6=94=B9=E3=80=82=E6=96=B9=E6=A1=88?= =?UTF-8?q?=E4=B8=8D=E5=90=88=E7=90=86=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B3QingDaoWanFu.Web/B3QingDaoWanFu.Web.csproj | 3 - .../B3QingDaoWanFu/Overlays/PayEdit_Ext.cs | 129 ------------------ .../B3QingDaoWanFu/Reports/PayInfoExport.cs | 25 ++-- B3QingDaoWanFu.Web/PluginClass.cs | 1 - B3QingDaoWanFu/B3QingDaoWanFu.csproj | 1 - B3QingDaoWanFu/TypeIOCs/PayBLTypeIoc.cs | 27 ---- 6 files changed, 13 insertions(+), 173 deletions(-) delete mode 100644 B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayEdit_Ext.cs delete mode 100644 B3QingDaoWanFu/TypeIOCs/PayBLTypeIoc.cs diff --git a/B3QingDaoWanFu.Web/B3QingDaoWanFu.Web.csproj b/B3QingDaoWanFu.Web/B3QingDaoWanFu.Web.csproj index 3b28cc9..a20880f 100644 --- a/B3QingDaoWanFu.Web/B3QingDaoWanFu.Web.csproj +++ b/B3QingDaoWanFu.Web/B3QingDaoWanFu.Web.csproj @@ -169,9 +169,6 @@ ASPXCodeBehind - - ASPXCodeBehind - ASPXCodeBehind diff --git a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayEdit_Ext.cs b/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayEdit_Ext.cs deleted file mode 100644 index cfc3903..0000000 --- a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayEdit_Ext.cs +++ /dev/null @@ -1,129 +0,0 @@ -using BWP.B3ButcherManage.BO; -using BWP.Web.Layout; -using BWP.Web.Pages.B3ButcherManage.Bills.Pay_; -using BWP.Web.WebControls; -using Forks.EnterpriseServices.DataForm; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Web.UI.WebControls; -using TSingSoft.WebControls2; -using Forks.Utils.Collections; -using BWP.B3ButcherManage.NamedValueTemplate; -using Forks.EnterpriseServices.DomainObjects2.DQuery; -using Forks.EnterpriseServices.DomainObjects2; -using Forks.EnterpriseServices.SqlDoms; - -namespace BWP.Web.Pages.B3QingDaoWanFu.Overlays -{ - class PayEdit_Ext : PayEdit - { - protected override void CustomerAddBasePropertys(Layout.LayoutManager layoutManager) - { - base.CustomerAddBasePropertys(layoutManager); - ((AutoLayoutConfig)layoutManager.Config).Add("PayTarget"); - } - - protected override void BuildBody(System.Web.UI.Control control) - { - base.BuildBody(control); - if (CanSave) - { - dialogButton.BeforeClientClick += " var pt=__DFContainer.getValue('PayTarget'); if (pt == '') { alert('先选择付款对象');return false;}"; - } - AddFarmerDetails(control.EAdd(new TitlePanel("养殖户明细", "养殖户明细"))); - } - - DFEditGrid _farmerGrid; - private void AddFarmerDetails(TitlePanel titlePanel) - { - var vPanel = titlePanel.EAdd(new VLayoutPanel()); - var editor = new DFCollectionEditor(() => Dmo.FarmerDetails); - editor.AllowDeletionFunc = () => CanSave; - editor.CanSelectFunc = (detail) => CanSave; - editor.CanDeleteFunc = detail => CanSave; - editor.IsEditableFunc = (field, detail) => CanSave; - - _farmerGrid = titlePanel.EAdd(new DFEditGrid(editor) { Width = Unit.Percentage(100) }); - - _farmerGrid.Columns.Add(new DFEditGridColumn("Farmer_Name")); - _farmerGrid.Columns.Add(new DFEditGridColumn("Farmer_IDCard")); - _farmerGrid.Columns.Add(new DFEditGridColumn("Farmer_BankAccount")); - _farmerGrid.Columns.EAdd(new DFEditGridColumn("Number")).SumMode = SumMode.Sum; - _farmerGrid.Columns.EAdd(new DFEditGridColumn("Weight")).SumMode = SumMode.Sum; - _farmerGrid.Columns.EAdd(new DFEditGridColumn("Money")).SumMode = SumMode.Sum; - - var section = mPageLayoutManager.AddSection("FarmerDetaiColumns", "养殖户明细"); - titlePanel.SetPageLayoutSetting(mPageLayoutManager, section.Name); - section.ApplyLayout(_farmerGrid, mPageLayoutManager, DFInfo.Get(typeof(Pay_FarmerDetail))); - } - - protected override void AfterSelectedStatPay(IList payDetails) - { - _farmerGrid.GetFromUI(); - mDFContainer.GetFromUIParitially("PayTarget"); - if (Dmo.PayTarget != 付款对象.养殖户) - return; - var ids = payDetails.Select(x => x.StatPay_ID).Where(x => x.HasValue); - if (ids.Count() == 0) - return; - AddFarmerDetails(ids); - _farmerGrid.DataBind(); - } - - void AddFarmerDetails(IEnumerable statpayIDs) - { - var stat = new JoinAlias(typeof(StatPay)); - var detail = new JoinAlias(typeof(Weigh_FarmerDetail)); - var query = new DQueryDom(stat); - query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(stat, "Weigh_ID", detail, "Weigh_ID")); - query.Columns.Add(DQSelectColumn.Field("ID", stat)); - query.Columns.Add(DQSelectColumn.Field("ID", detail)); - query.Columns.Add(DQSelectColumn.Field("Farmer_ID", detail)); - query.Columns.Add(DQSelectColumn.Field("Number", detail)); - query.Columns.Add(DQSelectColumn.Field("ExeWeight", detail)); - query.Columns.Add(DQSelectColumn.Field("ExtMoney", detail)); - query.Columns.Add(DQSelectColumn.Field("Farmer_Name", detail)); - query.Columns.Add(DQSelectColumn.Field("Farmer_IDCard", detail)); - query.Columns.Add(DQSelectColumn.Field("Farmer_BankAccount", detail)); - query.Where.Conditions.Add(DQCondition.InList(DQExpression.Field("ID"), statpayIDs.Select(x => DQExpression.Value(x)).ToArray())); - using (var session = Forks.EnterpriseServices.DomainObjects2.Dmo.NewSession()) - { - using (var reader = session.ExecuteReader(query)) - { - while (reader.Read()) - { - var did = (long)reader[1]; - if (Dmo.FarmerDetails.Any(x => x.Weight_FarmerDetail_ID == did)) - continue; - - var entity = new Pay_FarmerDetail(); - entity.StatPay_ID = (long)reader[0]; - entity.Weight_FarmerDetail_ID = did; - entity.Farmer_ID = (long?)reader[2]; - entity.Number = (int?)reader[3]; - entity.Weight = (decimal?)reader[4]; - entity.Money = (decimal?)reader[5]; - entity.Farmer_Name = (string)reader[6]; - entity.Farmer_IDCard = (string)reader[7]; - entity.Farmer_BankAccount = (string)reader[8]; - Dmo.FarmerDetails.Add(entity); - } - } - } - } - - public override void GetFromUI() - { - base.GetFromUI(); - _farmerGrid.GetFromUI(); - } - - public override void AppToUI() - { - base.AppToUI(); - _farmerGrid.DataBind(); - } - } -} diff --git a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Reports/PayInfoExport.cs b/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Reports/PayInfoExport.cs index 22af9c2..ba31fcf 100644 --- a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Reports/PayInfoExport.cs +++ b/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Reports/PayInfoExport.cs @@ -1,6 +1,5 @@ using BWP.B3ButcherManage; using BWP.B3ButcherManage.BO; -using BWP.B3ButcherManage.NamedValueTemplate; using BWP.B3Frameworks; using BWP.Web.Layout; using BWP.Web.Utils; @@ -33,14 +32,12 @@ namespace BWP.Web.Pages.B3QingDaoWanFu.Reports queryPanel.ConditonPanel.EAdd(CreateExportTypePanel()); } - DFNamedValueInput<付款对象> payTarget; + DFBoolComboBox payTarget; private HLayoutPanel CreateExportTypePanel() { var panel = new HLayoutPanel(); panel.Add(new SimpleLabel("付款对象")); - payTarget = panel.Add(QueryCreator.DFNameValueInput<付款对象>(mDFInfo.Fields["PayTarget"])); - payTarget.Value = 付款对象.供应商; - payTarget.EnableTopItem = false; + payTarget = panel.Add(new DFBoolComboBox() { TrueDisplayValue = "供应商", FalseDisplayValue = "养殖户" }); return panel; } @@ -74,17 +71,22 @@ namespace BWP.Web.Pages.B3QingDaoWanFu.Reports var t = string.Format(SubTitle, GetMinDate()); var query = base.GetQueryDom(); query.Columns.Add(DQSelectColumn.Create(DQExpression.Snippet("ROW_NUMBER() OVER(order by [_bill].[ID])"), t + "序号")); - if (payTarget.Value==付款对象.养殖户) + if (!payTarget.Value.Value) { var root = query.From.RootSource.Alias; - var detail = new JoinAlias(typeof(Pay_FarmerDetail)); + var detail = new JoinAlias(typeof(Pay_Detail)); + var rel = new JoinAlias(typeof(Pay_Advance_Relate)); + var adv = new JoinAlias(typeof(AdvancePay_Detail)); query.From.AddJoin(JoinType.Left, new DQDmoSource(detail), DQCondition.EQ(root, "ID", detail, "Pay_ID")); + query.From.AddJoin(JoinType.Left, new DQDmoSource(rel), DQCondition.EQ(detail, "ID", rel, "Pay_Detail_ID")); + query.From.AddJoin(JoinType.Left, new DQDmoSource(adv), DQCondition.EQ(rel, "AdvancePay_Detail_ID", adv, "ID")); query.Columns.Add(DQSelectColumn.Field("ID", root, t + "付款单号")); - query.Columns.Add(DQSelectColumn.Field("Farmer_Bank", detail, t + "开户银行")); - query.Columns.Add(DQSelectColumn.Field("Farmer_BankAccount", detail, t + "卡号")); - query.Columns.Add(DQSelectColumn.Field("Farmer_Name", detail, t + "姓名")); - query.Columns.Add(DQSelectColumn.Field("Money", detail, t + "金额")); + query.Columns.Add(DQSelectColumn.Field("Farmer_Bank", adv, t + "开户银行")); + query.Columns.Add(DQSelectColumn.Field("Farmer_BankAccount", adv, t + "卡号")); + query.Columns.Add(DQSelectColumn.Field("Farmer_Name", adv, t + "姓名")); + query.Columns.Add(DQSelectColumn.Field("Money", adv, t + "金额")); SumColumnNames.Add("Money"); + query.Where.Conditions.Add(DQCondition.IsNotNull(DQExpression.Field(adv, "ID"))); } else { @@ -96,7 +98,6 @@ namespace BWP.Web.Pages.B3QingDaoWanFu.Reports query.Columns.Add(DQSelectColumn.Field("Remark", t + "备注")); if (!purchaseType.IsEmpty) DetailTemp.AddPurchaseTypeCondition(query, long.Parse(purchaseType.Value)); - query.Where.Conditions.Add(DQCondition.EQ("PayTarget", payTarget.Value)); foreach (var c in query.Columns) ColumnNames.Add(c.Name); return query; diff --git a/B3QingDaoWanFu.Web/PluginClass.cs b/B3QingDaoWanFu.Web/PluginClass.cs index 5dee340..edb2af1 100644 --- a/B3QingDaoWanFu.Web/PluginClass.cs +++ b/B3QingDaoWanFu.Web/PluginClass.cs @@ -21,7 +21,6 @@ namespace BWP.B3QingDaoWanFu WpfPageFactory.RegisterPageOverlay(typeof(StatPayAnalyse).FullName, typeof(StatPayAnalyse_Ext).FullName); WpfPageFactory.RegisterPageOverlay(typeof(SaleOutStoreEdit).FullName, typeof(SaleOutStoreEdit_Ext).FullName); WpfPageFactory.RegisterPageOverlay(typeof(StatPayList).FullName, typeof(StatPayList_Ext).FullName); - WpfPageFactory.RegisterPageOverlay(typeof(BWP.Web.Pages.B3ButcherManage.Bills.Pay_.PayEdit).FullName, typeof(PayEdit_Ext).FullName); GlobalFlags.On(B3ButcherManageConsts.GlobalFlags.StatPayAddRewardWithButcherUseWeight); GlobalFlags.On(B3SaleConsts.Flags.MarketingActivityEnableAdjustPrice); GlobalFlags.On(B3SaleConsts.Flags.SendOutStoreNoAvailableStorage); diff --git a/B3QingDaoWanFu/B3QingDaoWanFu.csproj b/B3QingDaoWanFu/B3QingDaoWanFu.csproj index e341de4..6582a48 100644 --- a/B3QingDaoWanFu/B3QingDaoWanFu.csproj +++ b/B3QingDaoWanFu/B3QingDaoWanFu.csproj @@ -159,7 +159,6 @@ - diff --git a/B3QingDaoWanFu/TypeIOCs/PayBLTypeIoc.cs b/B3QingDaoWanFu/TypeIOCs/PayBLTypeIoc.cs deleted file mode 100644 index e245a98..0000000 --- a/B3QingDaoWanFu/TypeIOCs/PayBLTypeIoc.cs +++ /dev/null @@ -1,27 +0,0 @@ -using BWP.B3ButcherManage.BL; -using BWP.B3ButcherManage.BO; -using BWP.B3ButcherManage.NamedValueTemplate; -using BWP.B3Frameworks; -using Forks.EnterpriseServices.BusinessInterfaces; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using TSingSoft.WebPluginFramework; - -namespace BWP.B3QingDaoWanFu.TypeIOCs -{ - [TypeIOC(typeof(PayBL), typeof(PayBL.BillBLIOCs.BeforeCheck))] - public class PayBLTypeIoc : PayBL.BillBLIOCs.BeforeCheck - { - public void Invoke(IDmoContext context, Pay dmo) - { - if (dmo.PayTarget != 付款对象.养殖户) - return; - var farmerMoney = dmo.FarmerDetails.Sum(x => x.Money.EToDecimal() ?? 0); - var tMoney = dmo.Details.Sum(x => x.Money.EToDecimal() ?? 0); - if (farmerMoney != tMoney) - throw new Exception("养殖户金额不等于本次付款金额"); - } - } -}