|
|
|
@ -1,6 +1,9 @@ |
|
|
|
using BWP.B3Frameworks.BO.NamedValueTemplate; |
|
|
|
using BWP.B3Frameworks; |
|
|
|
using BWP.B3Frameworks.BO.NamedValueTemplate; |
|
|
|
using BWP.B3Sale.BO; |
|
|
|
using BWP.B3Sale.Utils; |
|
|
|
using BWP.Web.Layout; |
|
|
|
using BWP.Web.Utils; |
|
|
|
using BWP.Web.WebControls; |
|
|
|
using Forks.EnterpriseServices.DataForm; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2; |
|
|
|
@ -11,6 +14,7 @@ using System.Linq; |
|
|
|
using System.Text; |
|
|
|
using System.Web.UI.WebControls; |
|
|
|
using TSingSoft.WebControls2; |
|
|
|
using TSingSoft.WebControls2.QBELinks; |
|
|
|
|
|
|
|
namespace BWP.Web.Pages.B3YunKen.Reports |
|
|
|
{ |
|
|
|
@ -48,7 +52,8 @@ namespace BWP.Web.Pages.B3YunKen.Reports |
|
|
|
list.Add(new Tuple<string, string>("Driver_Name", "司机姓名")); |
|
|
|
list.Add(new Tuple<string, string>("Driver_Telephone", "司机电话")); |
|
|
|
list.Add(new Tuple<string, string>("HandcarNumber", "车牌号")); |
|
|
|
list.Add(new Tuple<string, string>("Carrier_Name", "货站名称"));//承运方(还没有添加)
|
|
|
|
list.Add(new Tuple<string, string>("DriverCard", "司机驾驶证号")); |
|
|
|
list.Add(new Tuple<string, string>("Carrier_Name", "货站名称"));//承运方 Carrier_Name
|
|
|
|
list.Add(new Tuple<string, string>("LinkManTel", "货站电话"));//电话
|
|
|
|
list.Add(new Tuple<string, string>("CustomerSaleZone_Name", "地区"));//销售地区
|
|
|
|
list.Add(new Tuple<string, string>("Car_Name", "车主姓名")); |
|
|
|
@ -76,17 +81,43 @@ namespace BWP.Web.Pages.B3YunKen.Reports |
|
|
|
protected override void AddQueryControls(VLayoutPanel vPanel) |
|
|
|
{ |
|
|
|
var layout = new LayoutManager("main", mDFInfo, mQueryContainer); |
|
|
|
|
|
|
|
layout.Add("AccountingUnit_ID", mQueryContainer.AddLink(new ChoiceBoxMultiSelectLink(QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["AccountingUnit_ID"], |
|
|
|
B3FrameworksConsts.DataSources.授权会计单位全部), s => long.Parse(s)), "AccountingUnit_ID")); |
|
|
|
layout["AccountingUnit_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layout.Add("Carrier_ID", mQueryContainer.AddLink(new ChoiceBoxMultiSelectLink(QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["Carrier_ID"], |
|
|
|
B3SaleDataSources.授权承运方), s => long.Parse(s)), "Carrier_ID")); |
|
|
|
layout["Carrier_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layout.Add("CustomerSaleZone_ID", mQueryContainer.AddLink(new ChoiceBoxMultiSelectLink(QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["CustomerSaleZone_ID"], |
|
|
|
B3SaleDataSources.授权销售地区), s => long.Parse(s)), "CustomerSaleZone_ID")); |
|
|
|
layout["CustomerSaleZone_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layout.Add("Customer_ID", mQueryContainer.AddLink(new ChoiceBoxMultiSelectLink(QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["Customer_ID"], |
|
|
|
B3SaleDataSources.用户配置客户), s => long.Parse(s)), "Customer_ID")); |
|
|
|
layout["Customer_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
layout.Add("AccountCustomer_ID", mQueryContainer.AddLink(new ChoiceBoxMultiSelectLink(QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["AccountCustomer_ID"], |
|
|
|
B3SaleDataSources.结账客户), s => long.Parse(s)), "AccountCustomer_ID")); |
|
|
|
layout["AccountCustomer_ID"].NotAutoAddToContainer = true; |
|
|
|
|
|
|
|
|
|
|
|
var config = layout.CreateDefaultConfig(2); |
|
|
|
config.Expand = false; |
|
|
|
|
|
|
|
config.Add("LoadTime"); |
|
|
|
config.Add("AccountingUnit_ID"); |
|
|
|
|
|
|
|
//config.Add("AccountingUnit_ID");
|
|
|
|
|
|
|
|
config.Add("Driver_ID"); |
|
|
|
config.Add("HandcarNumber"); ; |
|
|
|
config.Add("Carrier_ID"); |
|
|
|
config.Add("CustomerSaleZone_ID"); |
|
|
|
config.Add("Customer_ID"); |
|
|
|
config.Add("AccountCustomer_ID"); |
|
|
|
config.Add("DriverCard"); |
|
|
|
|
|
|
|
//config.Add("Carrier_ID");
|
|
|
|
//config.Add("Customer_ID");
|
|
|
|
//config.Add("CustomerSaleZone_ID");
|
|
|
|
//config.Add("AccountCustomer_ID");
|
|
|
|
|
|
|
|
config.Add("Car_ID"); |
|
|
|
config.Add("TakeGoods_Type"); |
|
|
|
config.Add("FreightBear"); |
|
|
|
@ -105,10 +136,105 @@ namespace BWP.Web.Pages.B3YunKen.Reports |
|
|
|
protected override DQueryDom GetQueryDom() |
|
|
|
{ |
|
|
|
var dom = base.GetQueryDom(); |
|
|
|
var bill = JoinAlias.Create("main"); |
|
|
|
var main = JoinAlias.Create("main"); |
|
|
|
|
|
|
|
foreach (ListItem item in checkbox.Items) |
|
|
|
{ |
|
|
|
if (!item.Selected) { continue; } |
|
|
|
var field = item.Value; |
|
|
|
switch (field) |
|
|
|
{ |
|
|
|
|
|
|
|
case "LoadTime": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "Customer_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "AccountCustomer_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "Driver_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "Driver_Telephone": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "HandcarNumber": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "Carrier_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "LinkManTel": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "CustomerSaleZone_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "Car_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "FreightUnitPrice": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "AccountingUnit_Name": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "TakeGoods_Type": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "FreightBear": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "FreightPayment": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
|
|
|
|
case "承运次数": |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Count(DQExpression.Field(main, "ID")), item.Text)); |
|
|
|
break; |
|
|
|
|
|
|
|
default: |
|
|
|
dom.Columns.Add(DQSelectColumn.Create(DQExpression.Field(main, field), item.Text)); |
|
|
|
dom.GroupBy.Expressions.Add(DQExpression.Field(main, field)); |
|
|
|
break; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
dom.Where.Conditions.Add(DQCondition.EQ(bill, "BillState", 单据状态.已审核)); |
|
|
|
dom.Where.Conditions.Add(DQCondition.EQ(main, "BillState", 单据状态.已审核)); |
|
|
|
|
|
|
|
return dom; |
|
|
|
} |
|
|
|
|