|
|
|
@ -231,13 +231,16 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
|
|
|
|
protected override DQueryDom GetQueryDom() |
|
|
|
{ |
|
|
|
var dom = base.GetQueryDom(); |
|
|
|
//CustomerAccept
|
|
|
|
var dom = base.GetQueryDom(); |
|
|
|
var main = JoinAlias.Create("main"); |
|
|
|
var detail = new JoinAlias(typeof(CustomerAccept_Detail)); |
|
|
|
var goods = new JoinAlias(typeof(SaleGoods)); |
|
|
|
var packageData = new JoinAlias(typeof(PackageData)); |
|
|
|
var outStore = new JoinAlias(typeof(SaleOutStore)); |
|
|
|
var outDetail = new JoinAlias(typeof(SaleOutStore_Detail)); |
|
|
|
//var cus = new JoinAlias(typeof(Customer));
|
|
|
|
|
|
|
|
dom.RegisterQueryTable(typeof(PackageData), new string[] { "Goods_ID", "Price", "AccountingUnit_ID" }, GetGoods_Package()); |
|
|
|
dom.From.AddJoin(JoinType.Left, new DQDmoSource(detail), |
|
|
|
DQCondition.EQ(main, "ID", detail, "CustomerAccept_ID")); |
|
|
|
@ -249,6 +252,7 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
DQCondition.And(DQCondition.EQ(packageData, "Goods_ID", detail, "SaleGoods_ID"), DQCondition.EQ(packageData, "AccountingUnit_ID", main, "AccountingUnit_ID"))); |
|
|
|
dom.From.AddJoin(JoinType.Left, new DQDmoSource(goods), |
|
|
|
DQCondition.EQ(goods, "ID", detail, "SaleGoods_ID")); |
|
|
|
//dom.From.AddJoin(JoinType.Left, new DQDmoSource(cus), DQCondition.EQ(main, "", cus));
|
|
|
|
|
|
|
|
var freightMoney = DQExpression.Multiply(DQExpression.Field(main, "FreightPrice"), DQExpression.Divide(DQExpression.Field(detail, "AcceptNum"), DQExpression.NullIfZero(DQExpression.Field(main, "AcceptNumber")))); |
|
|
|
var 包装费Exp = DQExpression.Multiply(DQExpression.Field(packageData, "Price"), DQExpression.Field(detail, "AcceptSecondNumber")); |
|
|
|
@ -344,7 +348,7 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
|
|
|
|
case "FreightMoney": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(freightMoney).ECastType<Money<金额>?>(), item.Text)); |
|
|
|
SumColumnIndexs.Add(dom.Columns.Count - 1); |
|
|
|
//SumColumnIndexs.Add(dom.Columns.Count - 1);
|
|
|
|
break; |
|
|
|
case "Money": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field(detail, field)), item.Text)); |
|
|
|
@ -360,7 +364,7 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
break; |
|
|
|
case "PackingMoney": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(包装费Exp).ECastType<Money<金额>?>(), item.Text)); |
|
|
|
SumColumnIndexs.Add(dom.Columns.Count - 1); |
|
|
|
//SumColumnIndexs.Add(dom.Columns.Count - 1);
|
|
|
|
break; |
|
|
|
case "NetPrice": |
|
|
|
|
|
|
|
@ -390,6 +394,7 @@ B3SaleDataSources.经销商), s => long.Parse(s)), "CustomerDealer_ID")); |
|
|
|
var priceExp = DQExpression.LogicCase(DQCondition.EQ(outStore, "FreightBear", 运费承担方.购方), 购方priceExp, DQCondition.EQ(outStore, "FreightBear", 运费承担方.供方), 供方priceExp, DQExpression.Value(null)); |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(priceExp.ECastType<Money<金额>?>(), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(outStore, "FreightBear")); |
|
|
|
dom.GroupBy.Expressions.Add(购方priceExp); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|