|
|
|
@ -0,0 +1,195 @@ |
|
|
|
using BWP.B3ButcherManage.BO; |
|
|
|
using BWP.B3ButcherManage.NamedValueTemplate; |
|
|
|
using BWP.B3Frameworks.BO.NamedValueTemplate; |
|
|
|
using BWP.Web.Layout; |
|
|
|
using BWP.Web.Utils; |
|
|
|
using BWP.Web.WebControls; |
|
|
|
using Forks.EnterpriseServices; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2.DQuery; |
|
|
|
using Forks.Utils; |
|
|
|
using System; |
|
|
|
using System.Collections.Generic; |
|
|
|
using System.Linq; |
|
|
|
using System.Text; |
|
|
|
using System.Web.UI.WebControls; |
|
|
|
using TSingSoft.WebControls2; |
|
|
|
|
|
|
|
namespace BWP.Web.Pages.B3QingDaoWanFu.Reports |
|
|
|
{ |
|
|
|
public class ComprehensiveReport : DFBrowseGridReportPage<StatPay> |
|
|
|
{ |
|
|
|
protected override string Caption |
|
|
|
{ |
|
|
|
get { return "收购综合报表"; } |
|
|
|
} |
|
|
|
protected override string QueryOptionsTabName |
|
|
|
{ |
|
|
|
get |
|
|
|
{ |
|
|
|
return "显示字段"; |
|
|
|
} |
|
|
|
} |
|
|
|
protected override string AccessRoleName |
|
|
|
{ |
|
|
|
get { return "B3QingDaoWanFu.报表.收购综合报表"; } |
|
|
|
} |
|
|
|
|
|
|
|
protected override void AddQueryControls(VLayoutPanel vPanel) |
|
|
|
{ |
|
|
|
var layoutManager = new LayoutManager("Main", mDFInfo, mQueryContainer); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DFNamedValueInput<单据状态> input; |
|
|
|
layoutManager.Add("BillState", input = QueryCreator.一般单据状态(mDFInfo.Fields["BillState"], true)); |
|
|
|
input.Value = 单据状态.已审核; |
|
|
|
var config = new AutoLayoutConfig() { Cols = 2 }; |
|
|
|
|
|
|
|
config.Add("AccountingUnit_ID"); |
|
|
|
config.Add("ID"); |
|
|
|
config.Add("BillState"); |
|
|
|
config.Add("Supplier_ID"); |
|
|
|
config.Add("SupplierClass_ID"); |
|
|
|
config.Add("Employee_ID"); |
|
|
|
config.Add("ValuationArea_ID"); |
|
|
|
config.Add("PurchaseType"); |
|
|
|
config.Add("Date"); |
|
|
|
layoutManager.Config = config; |
|
|
|
vPanel.Add(layoutManager.CreateLayout()); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private CheckBoxListWithReverseSelect _checkbox; |
|
|
|
protected override void InitQueryPanel(QueryPanel queryPanel) |
|
|
|
{ |
|
|
|
base.InitQueryPanel(queryPanel); |
|
|
|
var panel = queryPanel.CreateTab("显示字段"); |
|
|
|
_checkbox = new CheckBoxListWithReverseSelect { RepeatColumns = 6, RepeatDirection = RepeatDirection.Horizontal }; |
|
|
|
_checkbox.Items.Add(new ListItem("收购日期", "WeighTime")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购类型", "PurchaseType")); |
|
|
|
_checkbox.Items.Add(new ListItem("供应商", "Supplier_Name")); |
|
|
|
_checkbox.Items.Add(new ListItem("来源地", "Supplier_Address")); |
|
|
|
_checkbox.Items.Add(new ListItem("过磅单号", "Weigh_ID")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购日期", "WeighTime")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购头数", "RealNumber")); |
|
|
|
_checkbox.Items.Add(new ListItem("毛猪等级", ""));//todo
|
|
|
|
_checkbox.Items.Add(new ListItem("棚前重量", "ShackWeight")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购重量", "RealWeight")); |
|
|
|
_checkbox.Items.Add(new ListItem("损耗", "损耗")); |
|
|
|
_checkbox.Items.Add(new ListItem("损耗比%", "损耗比%")); |
|
|
|
_checkbox.Items.Add(new ListItem("烫褪头数", "烫褪头数")); |
|
|
|
_checkbox.Items.Add(new ListItem("工艺", "Technics")); |
|
|
|
_checkbox.Items.Add(new ListItem("头数", "Number")); |
|
|
|
_checkbox.Items.Add(new ListItem("级别重量", "级别重量")); |
|
|
|
|
|
|
|
_checkbox.Items.Add(new ListItem("皮重", "皮重")); |
|
|
|
_checkbox.Items.Add(new ListItem("皮肉重量", "皮肉重量")); |
|
|
|
|
|
|
|
_checkbox.Items.Add(new ListItem("皮肉比%", "皮肉比%")); |
|
|
|
_checkbox.Items.Add(new ListItem("一二级比%", "一二级比%")); |
|
|
|
_checkbox.Items.Add(new ListItem("价格金额", "价格金额")); |
|
|
|
_checkbox.Items.Add(new ListItem("宰前扣款", "宰前扣款")); |
|
|
|
_checkbox.Items.Add(new ListItem("死猪扣款", "死猪扣款")); |
|
|
|
_checkbox.Items.Add(new ListItem("宰后扣款", "宰后扣款")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购金额", "ActualMoney")); |
|
|
|
_checkbox.Items.Add(new ListItem("核算金额", "Money")); |
|
|
|
_checkbox.Items.Add(new ListItem("收购单价", "收购单价")); |
|
|
|
_checkbox.Items.Add(new ListItem("实际单价", "实际单价")); |
|
|
|
_checkbox.Items.Add(new ListItem("核算单价", "RawPrice")); |
|
|
|
_checkbox.Items.Add(new ListItem("合并单元格") { Selected = false }); |
|
|
|
panel.EAdd(_checkbox); |
|
|
|
mQueryControls.Add("显示字段", _checkbox); |
|
|
|
mQueryControls.EnableHoldLastControlNames.Add("显示字段"); |
|
|
|
} |
|
|
|
|
|
|
|
protected override DQueryDom GetQueryDom() |
|
|
|
{ |
|
|
|
var query = base.GetQueryDom(); |
|
|
|
var bill = JoinAlias.Create("bill"); |
|
|
|
|
|
|
|
|
|
|
|
//屠宰明细
|
|
|
|
var detail = new JoinAlias(typeof(StatPay_Butcher)); |
|
|
|
query.From.AddJoin(Forks.EnterpriseServices.SqlDoms.JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(bill, "ID", detail, "StatPay_ID")); |
|
|
|
|
|
|
|
foreach (ListItem field in _checkbox.Items) |
|
|
|
{ |
|
|
|
if (field.Selected) |
|
|
|
{ |
|
|
|
switch (field.Text) |
|
|
|
{ |
|
|
|
case "会计单位": |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//if (UseWeightSumRate2)
|
|
|
|
//{
|
|
|
|
// DetailTemp.Register(query);
|
|
|
|
// var details = new JoinAlias("_temp1", typeof(DetailTemp));
|
|
|
|
// query.From.AddJoin(JoinType.Left, new DQDmoSource(details), DQCondition.EQ(bill, "ID", details, "ID"));
|
|
|
|
// mDisplayOptionHelper.AddAlias("_temp1", details);
|
|
|
|
|
|
|
|
// ButcherTemp.Register(query);
|
|
|
|
// var totaoMao = new JoinAlias("_butcherTemp", typeof(ButcherTemp));
|
|
|
|
// query.From.AddJoin(JoinType.Left, new DQDmoSource(totaoMao), DQCondition.EQ(details, "Butcher_ID", totaoMao, "ID"));
|
|
|
|
// mDisplayOptionHelper.AddAlias("_butcherTemp", totaoMao);
|
|
|
|
|
|
|
|
// ByProductRecordTemp.Register(query);
|
|
|
|
// var bpr = new JoinAlias("_bpr", typeof(ByProductRecordTemp));
|
|
|
|
// query.From.AddJoin(JoinType.Left, new DQDmoSource(bpr), DQCondition.And(DQCondition.EQ(bill, "AccountingUnit_ID", bpr, "AccountingUnit_ID"), DQCondition.EQ(totaoMao, "Date", bpr, "Date")));
|
|
|
|
// mDisplayOptionHelper.AddAlias("_bpr", bpr);
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mDisplayOptionHelper.AddSelectColumns(query, (name) => OptionIsSelected("显示字段", name), SumColumnIndexs, GroupSumColumnIndexs); |
|
|
|
return query; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
class tempUnionButcher |
|
|
|
{ |
|
|
|
public long StatPay_ID { get; set; } |
|
|
|
|
|
|
|
[LogicName("级别")] |
|
|
|
public string Livestock_Name { get; set; } |
|
|
|
|
|
|
|
[LogicName("级别")] |
|
|
|
public long? Livestock_ID { get; set; } |
|
|
|
|
|
|
|
[LogicName("工艺")] |
|
|
|
public NamedValue<工艺>? Technics { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
[LogicName("头数")] |
|
|
|
public int? Number { get; set; } |
|
|
|
|
|
|
|
[LogicName("重量")] |
|
|
|
public Money<decimal>? Weight { get; set; } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void Register(DQueryDom root) |
|
|
|
{ |
|
|
|
var butcher = new JoinAlias("butcher", typeof(StatPay_Butcher)); |
|
|
|
var butcherQuery = new DQueryDom(butcher); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("StatPay_ID")); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("Livestock_ID")); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("Livestock_Name")); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("Technics")); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("Number")); |
|
|
|
butcherQuery.Columns.Add(DQSelectColumn.Field("Weight")); |
|
|
|
root.RegisterQueryTable(typeof(tempUnionButcher), new string[] { "StatPay_ID", "Livestock_ID", "Livestock_Name", "Technics", "Number", "Weight" }, butcherQuery); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |