Browse Source

调整。

master
yibo 7 years ago
parent
commit
a12ab9b937
2 changed files with 46 additions and 15 deletions
  1. +4
    -0
      B3ButcherManageToSale.Web/B3ButcherManageToSale.Web.csproj
  2. +42
    -15
      B3ButcherManageToSale.Web/Pages/B3ButcherManageToSale/Reports/OutputToSaleOutDiff_/OutputToSaleOutDiff.cs

+ 4
- 0
B3ButcherManageToSale.Web/B3ButcherManageToSale.Web.csproj View File

@ -50,6 +50,10 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\BwpB3Project\tsref\Debug\B3Sale.dll</HintPath>
</Reference>
<Reference Include="B3Sale.Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3a973053c7ebf11c, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\tsref\Debug\B3Sale.Web.dll</HintPath>
</Reference>
<Reference Include="B3System, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a04fa581c0f74d43, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\BwpB3Project\tsref\Debug\B3System.dll</HintPath>


+ 42
- 15
B3ButcherManageToSale.Web/Pages/B3ButcherManageToSale/Reports/OutputToSaleOutDiff_/OutputToSaleOutDiff.cs View File

@ -4,8 +4,10 @@ using BWP.B3Frameworks.BO.NamedValueTemplate;
using BWP.B3Frameworks.Utils;
using BWP.B3Sale.BO;
using BWP.B3UnitedInfos.BO;
using BWP.Web.Pages.B3Sale.Reports;
using BWP.Web.Utils;
using BWP.Web.WebControls;
using Forks.EnterpriseServices.DataForm;
using Forks.EnterpriseServices.DomainObjects2;
using Forks.EnterpriseServices.DomainObjects2.DQuery;
using Forks.EnterpriseServices.SqlDoms;
@ -21,8 +23,13 @@ using TSingSoft.WebPluginFramework;
namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
{
class OutputToSaleOutDiff : DFBrowseGridReportPage<Output>
class OutputToSaleOutDiff : B3SaleDFGridReportPage
{
protected override void InitForm(System.Web.UI.HtmlControls.HtmlForm form)
{
base.InitForm(form);
mDFGrid.AllowColGroup = true;
}
protected override string AccessRoleName
{
get { return "B3ButcherManageToSale.报表分析.订单完成情况"; }
@ -39,6 +46,7 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
queryPanel.ConditonPanel.EAdd(CreateDataRangePanel());
}
readonly DFInfo mDFInfo = DFInfo.Get(typeof(Output));
DFDropDownList stateDp;
HLayoutPanel CreateDataRangePanel()
{
@ -73,28 +81,41 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
query.Columns.Add(DQSelectColumn.Field("Code", goods, "编码"));
query.Columns.Add(DQSelectColumn.Field("Name", goods, "名称"));
query.Columns.Add(DQSelectColumn.Field("Spec", goods, "规格"));
query.Columns.Add(DQSelectColumn.Sum("UnitNum", "订货|数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("OrderNumber")), "原订单|数量"));
SumColumnNames.Add("原订单|数量");
GroupSumColumnNamnes.Add("原订单|数量");
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("OrderSecondNumber")), "原订单|辅数量"));
SumColumnNames.Add("原订单|辅数量");
GroupSumColumnNamnes.Add("原订单|辅数量");
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("UnitNum")), "订货|数量"));
SumColumnNames.Add("订货|数量");
GroupSumColumnNamnes.Add("订货|数量");
query.Columns.Add(DQSelectColumn.Field("MainUnit", goods, "订货|单位"));
query.Columns.Add(DQSelectColumn.Sum("SecondNumber", "订货|辅数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("SecondNumber")), "订货|辅数量"));
SumColumnNames.Add("订货|辅数量");
GroupSumColumnNamnes.Add("订货|辅数量");
query.Columns.Add(DQSelectColumn.Field("SecondUnit", goods, "订货|辅单位"));
query.Columns.Add(DQSelectColumn.Sum("OutUnitNum", "产出|数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
query.Columns.Add(DQSelectColumn.Sum("OutSecondNumber", "产出|辅数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("OutUnitNum")), "产出|数量"));
SumColumnNames.Add("产出|数量");
GroupSumColumnNamnes.Add("产出|数量");
query.Columns.Add(DQSelectColumn.Create(DQExpression.Sum(DQExpression.Field("OutSecondNumber")), "产出|辅数量"));
SumColumnNames.Add("产出|辅数量");
GroupSumColumnNamnes.Add("产出|辅数量");
query.Columns.Add(DQSelectColumn.Create(DQExpression.Subtract(DQExpression.IfNull(DQExpression.Sum(DQExpression.Field("UnitNum")), DQExpression.Value(0)), DQExpression.IfNull(DQExpression.Sum(DQExpression.Field("OutUnitNum")), DQExpression.Value(0))).ECastType<Money<decimal>?>(), "差异|数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
GroupSumColumnIndexs.Add(query.Columns.Count - 1);
SumColumnNames.Add("差异|数量");
GroupSumColumnNamnes.Add("差异|数量");
query.Columns.Add(DQSelectColumn.Create(DQExpression.Subtract(DQExpression.IfNull(DQExpression.Sum(DQExpression.Field("SecondNumber")), DQExpression.Value(0)), DQExpression.IfNull(DQExpression.Sum(DQExpression.Field("OutSecondNumber")), DQExpression.Value(0))).ECastType<Money<decimal>?>(), "差异|辅数量"));
SumColumnIndexs.Add(query.Columns.Count - 1);
GroupSumColumnIndexs.Add(query.Columns.Count - 1);
SumColumnNames.Add("差异|辅数量");
GroupSumColumnNamnes.Add("差异|辅数量");
query.GroupBy.Expressions.Add(DQExpression.Field(goods, "Code"));
query.GroupBy.Expressions.Add(DQExpression.Field(goods, "Name"));
query.GroupBy.Expressions.Add(DQExpression.Field(goods, "Spec"));
query.GroupBy.Expressions.Add(DQExpression.Field(goods, "MainUnit"));
query.GroupBy.Expressions.Add(DQExpression.Field(goods, "SecondUnit"));
foreach (var c in query.Columns)
ColumnNames.Add(c.Name);
return query;
}
}
@ -102,6 +123,8 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
class UnionTemp
{
public long Goods_ID { get; set; }
public Money<decimal>? OrderNumber { get; set; }
public Money<decimal>? OrderSecondNumber { get; set; }
public Money<decimal>? UnitNum { get; set; }
public Money<decimal>? SecondNumber { get; set; }
public Money<decimal>? OutUnitNum { get; set; }
@ -112,18 +135,20 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
var query = GetSaleOutStore(minDate, maxDate, billState);
query.UnionNext.Select = GetOutput(minDate, maxDate);
OrganizationUtil.RegisterOrganizationQueryTable(root);
root.RegisterQueryTable(typeof(UnionTemp), new string[] { "Goods_ID", "UnitNum", "SecondNumber", "OutUnitNum", "OutSecondNumber" }, query);
root.RegisterQueryTable(typeof(UnionTemp), new string[] { "Goods_ID", "OrderNumber", "OrderSecondNumber", "UnitNum", "SecondNumber", "OutUnitNum", "OutSecondNumber" }, query);
}
static DQueryDom GetSaleOutStore(DateTime minDate, DateTime maxDate, int? billState)
{
var main = new JoinAlias(typeof(SaleOutStore));
var detail = new JoinAlias(typeof(SaleOutStore_Detail));
var config = new JoinAlias("_gvc1",typeof(GoodsViewConfig));
var config = new JoinAlias("_gvc1", typeof(GoodsViewConfig));
var query = new DQueryDom(main);
query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(main, "ID", detail, "SaleOutStore_ID"));
query.From.AddJoin(JoinType.Inner, new DQDmoSource(config), DQCondition.EQ(detail, "SaleGoods_ID", config, "Goods_ID"));
query.Columns.Add(DQSelectColumn.Field("SaleGoods_ID", detail));
query.Columns.Add(DQSelectColumn.Field("Order_Detail_UnitNum", detail, "OrderNumber"));
query.Columns.Add(DQSelectColumn.Field("Order_Detail_SecondNumber", detail, "OrderSecondNumber"));
query.Columns.Add(DQSelectColumn.Field("UnitNum", detail));
query.Columns.Add(DQSelectColumn.Field("SecondNumber", detail));
query.Columns.Add(DQSelectColumn.Create(DQExpression.NULL, "OutUnitNum"));
@ -146,6 +171,8 @@ namespace BWP.Web.Pages.B3ButcherManageToSale.Reports.OutputToSaleOutDiff_
query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(main, "ID", detail, "Output_ID"));
query.From.AddJoin(JoinType.Inner, new DQDmoSource(config), DQCondition.EQ(config, "Goods_ID", detail, "Goods_ID"));
query.Columns.Add(DQSelectColumn.Field("Goods_ID", detail));
query.Columns.Add(DQSelectColumn.Create(DQExpression.NULL, "OrderNumber"));
query.Columns.Add(DQSelectColumn.Create(DQExpression.NULL, "OrderSecondNumber"));
query.Columns.Add(DQSelectColumn.Create(DQExpression.NULL, "UnitNum"));
query.Columns.Add(DQSelectColumn.Create(DQExpression.NULL, "SecondNumber"));
query.Columns.Add(DQSelectColumn.Field("Number", detail));


Loading…
Cancel
Save