using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Web.UI.HtmlControls;
|
|
using TSingSoft.WebPluginFramework.Controls;
|
|
using TSingSoft.WebPluginFramework.Pages;
|
|
using TSingSoft.WebControls2;
|
|
using BWP.B3Frameworks.Utils;
|
|
using System.Web.UI.WebControls;
|
|
using Forks.EnterpriseServices.DataForm;
|
|
using Forks.EnterpriseServices.DomainObjects2.DQuery;
|
|
using BWP.B3UnitedInfos.BO;
|
|
using Forks.EnterpriseServices.DomainObjects2;
|
|
using Forks.EnterpriseServices.SqlDoms;
|
|
using BWP.B3Frameworks.BO;
|
|
using BWP.B3Frameworks;
|
|
using BWP.Web.WebControls;
|
|
|
|
namespace BWP.Web.Pages.B3ButcherManageToSale.Overlays
|
|
{
|
|
class StoreDetailPage : ServerPage
|
|
{
|
|
long? ProductAvgWeightSet_ID
|
|
{
|
|
get
|
|
{
|
|
var str = Request.QueryString["ID"];
|
|
if (string.IsNullOrEmpty(str))
|
|
return null;
|
|
return long.Parse(str);
|
|
}
|
|
}
|
|
|
|
protected override void InitForm(HtmlForm form)
|
|
{
|
|
form.EAdd(new PageTitle("库存明细"));
|
|
CreateBrowseGrid(form.EAdd(new TitlePanel("库存明细")));
|
|
}
|
|
|
|
DFBrowseGrid mGrid;
|
|
private void CreateBrowseGrid(TitlePanel titlePanel)
|
|
{
|
|
mGrid = titlePanel.EAdd(new DFBrowseGrid(new DFDataTableEditor()) { Width = Unit.Percentage(100), EnableRowsGroup = true });
|
|
mGrid.Columns.Add(new DFBrowseGridAutoColumn());
|
|
}
|
|
|
|
List<int> SumColumnIndex
|
|
{
|
|
get
|
|
{
|
|
if (ViewState["sc"] == null)
|
|
ViewState["sc"] = new List<int>();
|
|
return (List<int>)ViewState["sc"];
|
|
}
|
|
}
|
|
|
|
DQueryDom GetQueryDom()
|
|
{
|
|
var main = new JoinAlias(typeof(StoreDetail));
|
|
var store = new JoinAlias(typeof(Store));
|
|
var temp = new JoinAlias(typeof(ProductAvgWeightSetTemp));
|
|
var query = new DQueryDom(main);
|
|
ProductAvgWeightSetTemp.Register(query);
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(store), DQCondition.EQ(main, "Store_ID", store, "ID"));
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(temp), DQCondition.EQ(main, "Goods_ID", temp, "Goods_ID"));
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("Goods_Name", main));
|
|
query.Columns.Add(DQSelectColumn.Field("Goods_Code", main));
|
|
query.Columns.Add(DQSelectColumn.Sum(main, "Number"));
|
|
SumColumnIndex.Add(query.Columns.Count - 1);
|
|
query.Columns.Add(DQSelectColumn.Field("Goods_MainUnit", main));
|
|
query.Columns.Add(DQSelectColumn.Sum(main, "SecondNumber"));
|
|
SumColumnIndex.Add(query.Columns.Count - 1);
|
|
query.Columns.Add(DQSelectColumn.Field("Goods_SecondUnit", main));
|
|
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(main, "Goods_Name"));
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(main, "Goods_Code"));
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(main, "Goods_MainUnit"));
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(main, "Goods_SecondUnit"));
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(store, "Domain_ID", DomainContext.Current.ID));
|
|
if (ProductAvgWeightSet_ID.HasValue)
|
|
query.Where.Conditions.Add(DQCondition.EQ(temp, "ProductAvgWeightSet_ID", ProductAvgWeightSet_ID));
|
|
else
|
|
query.Where.Conditions.Add(DQCondition.IsNull(DQExpression.Field(temp, "ProductAvgWeightSet_ID")));
|
|
|
|
return query;
|
|
}
|
|
|
|
protected override void OnLoad(EventArgs e)
|
|
{
|
|
base.OnLoad(e);
|
|
if (!IsPostBack)
|
|
{
|
|
var args = new LoadArguments(GetQueryDom());
|
|
foreach (var idx in SumColumnIndex)
|
|
args.SumColumns.Add(idx);
|
|
mGrid.LoadArguments = args;
|
|
mGrid.DataBind();
|
|
}
|
|
}
|
|
}
|
|
}
|