From 77208dba5d2d0e0adc3524fae722a2b0bf7a2e41 Mon Sep 17 00:00:00 2001 From: yibo <361071264@qq.com> Date: Mon, 4 Jun 2018 22:54:08 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9C=80=E6=B1=82=E5=8D=95No.140086=201?= =?UTF-8?q?=E3=80=81=E4=BB=98=E6=AC=BE=E5=8D=95=E6=95=B0=E6=8D=AE=E5=88=86?= =?UTF-8?q?=E6=9E=90=20=E2=80=9C=E4=BB=98=E6=AC=BE=E5=AF=B9=E8=B1=A1?= =?UTF-8?q?=E2=80=9D=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=EF=BC=8C=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E9=BB=98=E8=AE=A4=E9=80=89=E6=8B=A9=E7=A9=BA=EF=BC=8C?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=89=80=E6=9C=89=E7=9A=84=E4=BB=98=E6=AC=BE?= =?UTF-8?q?=E5=8D=95=EF=BC=9B=204=E3=80=81=E7=BB=93=E7=AE=97=E5=8D=95-?= =?UTF-8?q?=E5=85=BB=E6=AE=96=E6=88=B7=E4=BF=A1=E6=81=AF-=E9=87=8D?= =?UTF-8?q?=E9=87=8F=E4=BF=9D=E7=95=992=E4=BD=8D=E5=B0=8F=E6=95=B0?= =?UTF-8?q?=EF=BC=8C=E5=9B=9B=E8=88=8D=E4=BA=94=E5=85=A5=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../B3QingDaoWanFu/Overlays/PayAnalyse_Ext.cs | 21 ++++++++----------- B3QingDaoWanFu/TypeIOCs/StatPayBLTypeIoc.cs | 4 ++++ 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayAnalyse_Ext.cs b/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayAnalyse_Ext.cs index e77e7c3..b07dec9 100644 --- a/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayAnalyse_Ext.cs +++ b/B3QingDaoWanFu.Web/Pages/B3QingDaoWanFu/Overlays/PayAnalyse_Ext.cs @@ -25,7 +25,6 @@ namespace BWP.Web.Pages.B3QingDaoWanFu.Overlays { base.AddCustomerCondition(layout); payTag = layout.Add("PayTarget", QueryCreator.DFNameValueInput<付款对象>(mDFInfo.Fields["PayTarget"])); - payTag.EnableTopItem = false; payTag.Fill("0", "供应商"); var c = layout.Config as AutoLayoutConfig; c.Add("PayTarget"); @@ -35,21 +34,19 @@ namespace BWP.Web.Pages.B3QingDaoWanFu.Overlays { var query = base.GetQueryDom(); var tag = DQSelectColumn.Create(DQExpression.Field("Supplier_Name"), "供应商"); - if (payTag.Value == 付款对象.养殖户) + var detail = new JoinAlias(typeof(Pay_FarmerDetail)); + query.From.AddJoin(JoinType.Left, new DQDmoSource(detail), DQCondition.EQ(query.From.RootSource.Alias, "ID", detail, "Pay_ID")); + tag = DQSelectColumn.Create(DQExpression.Field(detail, "Farmer_Name"), "养殖户"); + var last = query.Columns.Last(); + if (last.Name == "付款金额") { - var detail = new JoinAlias(typeof(Pay_FarmerDetail)); - query.From.AddJoin(JoinType.Left, new DQDmoSource(detail), DQCondition.EQ(query.From.RootSource.Alias, "ID", detail, "Pay_ID")); - tag = DQSelectColumn.Create(DQExpression.Field(detail, "Farmer_Name"), "养殖户"); - var last = query.Columns.Last(); - if (last.Name == "付款金额") - { - query.Columns.Remove(last); - query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field(detail, "Money")), "付款金额")); - } + query.Columns.Remove(last); + query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.LogicCase(DQCondition.EQ("PayTarget", 付款对象.供应商), DQExpression.Field("Money"), DQExpression.Field(detail, "Money"))), "付款金额")); } query.Columns.Insert(0, tag); query.GroupBy.Expressions.Add(tag.Expression); - query.Where.Conditions.Add(DQCondition.EQ("PayTarget", payTag.Value)); + if (!payTag.IsEmpty) + query.Where.Conditions.Add(DQCondition.EQ("PayTarget", payTag.Value)); if (query.Columns.Last().Name == "付款金额") { SumColumnIndexs.Clear(); diff --git a/B3QingDaoWanFu/TypeIOCs/StatPayBLTypeIoc.cs b/B3QingDaoWanFu/TypeIOCs/StatPayBLTypeIoc.cs index 2cfa0ab..770c00d 100644 --- a/B3QingDaoWanFu/TypeIOCs/StatPayBLTypeIoc.cs +++ b/B3QingDaoWanFu/TypeIOCs/StatPayBLTypeIoc.cs @@ -41,6 +41,8 @@ namespace BWP.B3QingDaoWanFu.TypeIOCs if ((dmo.RealNumber ?? 0) != 0) { detail.ExeWeight = dmo.RealWeight * detail.Number / dmo.RealNumber; + if (detail.ExeWeight.HasValue) + detail.ExeWeight = decimal.Round(detail.ExeWeight.Value, 2); var money = detail.Money; if (dmo.PurchaseType_Name == "业务" && dmo.PayTarget == 付款对象.供应商) { @@ -113,6 +115,8 @@ namespace BWP.B3QingDaoWanFu.TypeIOCs if ((dmo.RealNumber ?? 0) != 0) { detail.ExeWeight = dmo.RealWeight * detail.Number / dmo.RealNumber; + if (detail.ExeWeight.HasValue) + detail.ExeWeight = decimal.Round(detail.ExeWeight.Value, 2); var money = detail.Money; if (dmo.PurchaseType_Name == "业务" && dmo.PayTarget == 付款对象.供应商) {