|
|
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;
|
|
|
}
|
|
|
}
|
|
|
}
|