|
|
|
@ -19,6 +19,8 @@ using Forks.EnterpriseServices.SqlDoms; |
|
|
|
using BWP.B3_YunKen.BO; |
|
|
|
using BWP.B3UnitedInfos; |
|
|
|
using Forks.Utils; |
|
|
|
using TSingSoft.WebPluginFramework; |
|
|
|
using BWP.B3Frameworks.BO.MoneyTemplate; |
|
|
|
|
|
|
|
namespace BWP.Web.Pages.B3YunKen.Reports |
|
|
|
{ |
|
|
|
@ -326,15 +328,22 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
case "BrandItem_Name": |
|
|
|
case "Goods_SecondUnit": |
|
|
|
case "Unit": |
|
|
|
case "PolicyPrice": |
|
|
|
case "AcceptPrice": |
|
|
|
|
|
|
|
case "Goods_Spec": |
|
|
|
case "ProductLine_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(detail, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(detail, field)); |
|
|
|
|
|
|
|
|
|
|
|
break; |
|
|
|
case "PolicyPrice": |
|
|
|
case "AcceptPrice": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(detail, field).ECastType<Money<金额>?>(), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(detail, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "FreightMoney": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(freightMoney), item.Text)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(freightMoney).ECastType<Money<金额>?>(), item.Text)); |
|
|
|
SumColumnIndexs.Add(dom.Columns.Count - 1); |
|
|
|
break; |
|
|
|
case "Money": |
|
|
|
@ -350,7 +359,7 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
SumColumnIndexs.Add(dom.Columns.Count - 1); |
|
|
|
break; |
|
|
|
case "PackingMoney": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(包装费Exp), item.Text)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(包装费Exp).ECastType<Money<金额>?>(), item.Text)); |
|
|
|
SumColumnIndexs.Add(dom.Columns.Count - 1); |
|
|
|
break; |
|
|
|
case "NetPrice": |
|
|
|
@ -360,11 +369,11 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
var 供方netExp = DQExpression.Divide(DQExpression.Sum(DQExpression.Subtract(DQExpression.Field(detail, "Money"), DQExpression.IfNull(freightMoney, DQExpression.Value(0))).ESubtract(DQExpression.IfNull(包装费Exp, DQExpression.Value(0)))), DQExpression.NullIfZero(DQExpression.Sum(DQExpression.Field(detail, "AcceptNum")))); |
|
|
|
|
|
|
|
var netExp = DQExpression.LogicCase(DQCondition.EQ(outStore, "FreightBear", 运费承担方.购方), 购方netExp, DQCondition.EQ(outStore, "FreightBear", 运费承担方.供方), 供方netExp, DQExpression.Value(null)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(outStore, "FreightBear")); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dom.Columns.Add(DQSelectColumn.Create(netExp, item.Text)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(netExp.ECastType<Money<金额>?>(), item.Text)); |
|
|
|
break; |
|
|
|
case "ToFreightNetPrice": |
|
|
|
// 增加逻辑,当运费承担方为‘购方’:
|
|
|
|
@ -379,7 +388,8 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
var 供方priceExp = DQExpression.Divide(DQExpression.Sum(DQExpression.Subtract(DQExpression.Field(detail, "Money"), DQExpression.IfNull(freightMoney, DQExpression.Value(0)))), DQExpression.NullIfZero(DQExpression.Sum(DQExpression.Field(detail, "AcceptNum")))); |
|
|
|
|
|
|
|
var priceExp = DQExpression.LogicCase(DQCondition.EQ(outStore, "FreightBear", 运费承担方.购方), 购方priceExp, DQCondition.EQ(outStore, "FreightBear", 运费承担方.供方), 供方priceExp, DQExpression.Value(null)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(priceExp, item.Text)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(priceExp.ECastType<Money<金额>?>(), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(outStore, "FreightBear")); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|