|
|
|
@ -0,0 +1,138 @@ |
|
|
|
using BWP.B3ButcherManage; |
|
|
|
using BWP.B3ButcherManage.BO; |
|
|
|
using BWP.B3Frameworks; |
|
|
|
using BWP.B3Frameworks.BO.MoneyTemplate; |
|
|
|
using BWP.Web.Layout; |
|
|
|
using BWP.Web.Utils; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2.DQuery; |
|
|
|
using Forks.EnterpriseServices.SqlDoms; |
|
|
|
using Forks.Utils; |
|
|
|
using System; |
|
|
|
using System.Collections.Generic; |
|
|
|
using System.Linq; |
|
|
|
using System.Text; |
|
|
|
using TSingSoft.WebControls2; |
|
|
|
using TSingSoft.WebPluginFramework; |
|
|
|
|
|
|
|
namespace BWP.Web.Pages.B3QingDaoWanFu.Reports |
|
|
|
{ |
|
|
|
class StatPayAnalyse : DFGridReportPage<StatPay> |
|
|
|
{ |
|
|
|
protected override string AccessRoleName |
|
|
|
{ |
|
|
|
get { return "B3QingDaoWanFu.报表.结算单分析"; } |
|
|
|
} |
|
|
|
|
|
|
|
protected override string Caption |
|
|
|
{ |
|
|
|
get { return "结算单分析"; } |
|
|
|
} |
|
|
|
|
|
|
|
protected override string QueryOptionsTabName |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return "显示字段"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
protected override void InitForm(System.Web.UI.HtmlControls.HtmlForm form) |
|
|
|
{ |
|
|
|
base.InitForm(form); |
|
|
|
mDFGrid.AllowRowGroup = true; |
|
|
|
} |
|
|
|
|
|
|
|
public override Forks.EnterpriseServices.DataForm.PagedDFDataTable GetPagedDFDataTable(TSingSoft.WebControls2.DFGrids.QuerySettings settings) |
|
|
|
{ |
|
|
|
var result = base.GetPagedDFDataTable(settings); |
|
|
|
if (ColumnNames.Contains("实付金额")) |
|
|
|
result.Data.SumRow["实付金额"] = GetTotalActualMoney(); |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
Money<金额>? GetTotalActualMoney() |
|
|
|
{ |
|
|
|
var query = base.GetQueryDom(); |
|
|
|
var n = new DQueryDom(new JoinAlias(typeof(StatPay))); |
|
|
|
n.Where.Conditions.Add(DQCondition.And(query.Where.Conditions)); |
|
|
|
n.Columns.Add(DQSelectColumn.Sum("ActualMoney")); |
|
|
|
return n.EExecuteScalar<Money<金额>?>(); |
|
|
|
} |
|
|
|
|
|
|
|
public override Forks.EnterpriseServices.DataForm.DFDataTable GetDFDataTable(TSingSoft.WebControls2.DFGrids.QuerySettings settings) |
|
|
|
{ |
|
|
|
var result = base.GetDFDataTable(settings); |
|
|
|
if (ColumnNames.Contains("实付金额")) |
|
|
|
result.SumRow["实付金额"] = GetTotalActualMoney(); |
|
|
|
return result; |
|
|
|
} |
|
|
|
|
|
|
|
protected override void InitQueryPanel(WebControls.QueryPanel queryPanel) |
|
|
|
{ |
|
|
|
base.InitQueryPanel(queryPanel); |
|
|
|
queryPanel.ConditonPanel.EAdd(CreateDatePanel()); |
|
|
|
} |
|
|
|
|
|
|
|
private HLayoutPanel CreateDatePanel() |
|
|
|
{ |
|
|
|
var panel = new HLayoutPanel(); |
|
|
|
panel.Add(new SimpleLabel("核算日期")); |
|
|
|
panel.Add(QueryCreator.DateRange(mDFInfo.Fields["Date"], mQueryContainer, "MinDate", "MaxDate", DateTime.Today, null)); |
|
|
|
return panel; |
|
|
|
} |
|
|
|
|
|
|
|
protected override void AddQueryControls(VLayoutPanel vPanel) |
|
|
|
{ |
|
|
|
var layout = new LayoutManager("Main", mDFInfo, mQueryContainer); |
|
|
|
|
|
|
|
var config = new AutoLayoutConfig { Cols = 4 }; |
|
|
|
config.Add("ID"); |
|
|
|
config.Add("BillState"); |
|
|
|
config.Add("Supplier_ID"); |
|
|
|
config.Add("Employee_ID"); |
|
|
|
config.Add("PurchaseType_ID"); |
|
|
|
config.Add("Weigh_ID"); |
|
|
|
config.Add("WeighTime"); |
|
|
|
|
|
|
|
layout.Config = config; |
|
|
|
vPanel.Add(layout.CreateLayout()); |
|
|
|
} |
|
|
|
|
|
|
|
ReportDisplayOptionHelper mDisplayHelper = new ReportDisplayOptionHelper(); |
|
|
|
protected override void AddQueryOptions(VLayoutPanel vPanel)//显示字段
|
|
|
|
{ |
|
|
|
mDisplayHelper.AddOptionItem("结算单号", "_bill", "ID", false); |
|
|
|
mDisplayHelper.AddOptionItem("结算日期", "_bill", "Date", false); |
|
|
|
mDisplayHelper.AddOptionItem("过磅单号", "_bill", "Weigh_ID", false); |
|
|
|
mDisplayHelper.AddOptionItem("过磅日期", "_bill", "WeighTime", false); |
|
|
|
mDisplayHelper.AddOptionItem("实付金额", "_bill", "ActualMoney", false); |
|
|
|
|
|
|
|
mDisplayHelper.AddOptionItem("养殖户", "_detail", "Farmer_Name", false); |
|
|
|
mDisplayHelper.AddOptionItem("身份证号", "_detail", "Farmer_IDCard", false); |
|
|
|
mDisplayHelper.AddOptionItem("地址", "_detail", "Farmer_Address", false); |
|
|
|
mDisplayHelper.AddOptionItem("电话", "_detail", "Farmer_Tel", false); |
|
|
|
mDisplayHelper.AddOptionItem("棚前头数", "_detail", "Number", false, true); |
|
|
|
mDisplayHelper.AddOptionItem("棚前重量", "_detail", "ExeWeight", false, true); |
|
|
|
mDisplayHelper.AddOptionItem("棚前金额", "_detail", "ExtMoney", false, true); |
|
|
|
AddQueryOption("选项", mDisplayHelper.GetAllDisplayNames(), mDisplayHelper.GetDefaultSelelectedDisplayNames()); |
|
|
|
|
|
|
|
base.AddQueryOptions(vPanel); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
protected override DQueryDom GetQueryDom() |
|
|
|
{ |
|
|
|
var query = base.GetQueryDom(); |
|
|
|
var root = query.From.RootSource.Alias; |
|
|
|
var detail = new JoinAlias("_detail", typeof(Weigh_FarmerDetail)); |
|
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(detail), DQCondition.EQ(root, "Weigh_ID", detail, "Weigh_ID")); |
|
|
|
mDisplayHelper.AddAlias("_bill", JoinAlias.Create("_bill")); |
|
|
|
mDisplayHelper.AddAlias("_detail", JoinAlias.Create("_detail")); |
|
|
|
|
|
|
|
mDisplayHelper.AddSelectColumns(query, (name) => OptionIsSelected("选项", name), SumColumnNames, ColumnNames); |
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(root, "Domain_ID", DomainContext.Current.ID)); |
|
|
|
return query; |
|
|
|
} |
|
|
|
} |
|
|
|
} |