Browse Source

需求单No.137418

master
robin 8 years ago
parent
commit
6726a9391b
3 changed files with 56 additions and 29 deletions
  1. +1
    -0
      B3_DongFangWanQi.Web/B3_DongFangWanQi.Web.csproj
  2. +28
    -9
      B3_DongFangWanQi.Web/Pages/B3_DongFangWanQi/Tools/SaleOederUpdateList.cs
  3. +27
    -20
      B3_DongFangWanQi.Web/Pages/B3_DongFangWanQi/Tools/SaleOrderUpdateEdit.cs

+ 1
- 0
B3_DongFangWanQi.Web/B3_DongFangWanQi.Web.csproj View File

@ -44,6 +44,7 @@
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\tsref\Debug\B3Sale.Web.dll</HintPath> <HintPath>..\..\..\tsref\Debug\B3Sale.Web.dll</HintPath>
</Reference> </Reference>
<Reference Include="B3SaleInterface, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3a973053c7ebf11c, processorArchitecture=MSIL" />
<Reference Include="B3UnitedInfos, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a04fa581c0f74d43, processorArchitecture=MSIL" /> <Reference Include="B3UnitedInfos, Version=1.0.0.0, Culture=neutral, PublicKeyToken=a04fa581c0f74d43, processorArchitecture=MSIL" />
<Reference Include="Forks.EnterpriseServices, Version=3.1.0.0, Culture=neutral, PublicKeyToken=7254430f49d10aae, processorArchitecture=MSIL" /> <Reference Include="Forks.EnterpriseServices, Version=3.1.0.0, Culture=neutral, PublicKeyToken=7254430f49d10aae, processorArchitecture=MSIL" />
<Reference Include="Forks.Utils, Version=3.0.0.0, Culture=neutral, PublicKeyToken=6911f69af04f1ecb, processorArchitecture=MSIL"> <Reference Include="Forks.Utils, Version=3.0.0.0, Culture=neutral, PublicKeyToken=6911f69af04f1ecb, processorArchitecture=MSIL">


+ 28
- 9
B3_DongFangWanQi.Web/Pages/B3_DongFangWanQi/Tools/SaleOederUpdateList.cs View File

@ -35,7 +35,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
private DFChoiceBox _goodsPropertyCatalog; private DFChoiceBox _goodsPropertyCatalog;
private ChoiceBox _goodsProperty; private ChoiceBox _goodsProperty;
private DFChoiceBox _storeInput, _accInput, _customerInput;
private DFChoiceBox _storeInput, _accInput, _customerCatalogt, _customerInput;
protected override void InitForm(HtmlForm form) { protected override void InitForm(HtmlForm form) {
_queryContainer = QueryContainer.FromResource(GetType().FullName + ".xml", GetType().Assembly); _queryContainer = QueryContainer.FromResource(GetType().FullName + ".xml", GetType().Assembly);
form.Controls.Add(new PageTitle("销售订单调整")); form.Controls.Add(new PageTitle("销售订单调整"));
@ -56,6 +56,9 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
layoutManager.Add("Store_ID", new SimpleLabel("仓库"), _storeInput = QueryCreator.DFChoiceBox(_dFInfo.Fields["Store_ID"], B3FrameworksConsts.DataSources.), false); layoutManager.Add("Store_ID", new SimpleLabel("仓库"), _storeInput = QueryCreator.DFChoiceBox(_dFInfo.Fields["Store_ID"], B3FrameworksConsts.DataSources.), false);
layoutManager.Add("Customer_ID", _customerInput = QueryCreator.DFChoiceBox(_dFInfo.Fields["Customer_ID"], B3SaleDataSources.)); layoutManager.Add("Customer_ID", _customerInput = QueryCreator.DFChoiceBox(_dFInfo.Fields["Customer_ID"], B3SaleDataSources.));
_customerCatalogt = QueryCreator.DFChoiceBox(_dFInfo.Fields["CustomerCatalog_ID"], B3SaleDataSources.);
layoutManager.Add("CustomerCatalog_ID", new SimpleLabel("客户分类"), _customerCatalogt );
var config = new AutoLayoutConfig(); var config = new AutoLayoutConfig();
config.Add("OrderDate"); config.Add("OrderDate");
@ -65,19 +68,25 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
config.Add("Store_ID"); config.Add("Store_ID");
config.Add("GoodsProperty_ID"); config.Add("GoodsProperty_ID");
config.Add("GoodsPropertyCatalog_ID"); config.Add("GoodsPropertyCatalog_ID");
config.Add("CustomerCatalog_ID");
layoutManager.Config = config; layoutManager.Config = config;
var section = mPageLayoutManager.AddSection("BaseProperties", "查询条件"); var section = mPageLayoutManager.AddSection("BaseProperties", "查询条件");
section.ApplyLayout(layoutManager, config, mPageLayoutManager, _dFInfo); section.ApplyLayout(layoutManager, config, mPageLayoutManager, _dFInfo);
section.SetDisplayName("GoodsProperty_ID", "存货属性"); section.SetDisplayName("GoodsProperty_ID", "存货属性");
section.SetDisplayName("GoodsPropertyCatalog_ID", "存货属性分类"); section.SetDisplayName("GoodsPropertyCatalog_ID", "存货属性分类");
titlePanel.Controls.Add(layoutManager.CreateLayout());
VLayoutPanel vp;
titlePanel.Controls.Add(vp=new VLayoutPanel());
vp.Add(layoutManager.CreateLayout());
var tsbtn = new TSButton("开始查询"); var tsbtn = new TSButton("开始查询");
tsbtn.Click += delegate { tsbtn.Click += delegate {
DataBindGrid(); DataBindGrid();
}; };
titlePanel.Controls.Add(tsbtn);
var hPanel = new HLayoutPanel { Align = HorizontalAlign.Left };
hPanel.Add(tsbtn);
hPanel.Add(new RedirectTSButton("清除条件"));
vp.Add(hPanel);
AddDetails(form.EAdd(new TitlePanel("订单明细", "订单明细"))); AddDetails(form.EAdd(new TitlePanel("订单明细", "订单明细")));
var vPanel = new VLayoutPanel(); var vPanel = new VLayoutPanel();
@ -119,10 +128,9 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
DFBrowseGrid _grid; DFBrowseGrid _grid;
void AddDetails(TitlePanel tPanel) { void AddDetails(TitlePanel tPanel) {
HLayoutPanel hPanel;
tPanel.Controls.Add(new LiteralControl("<br />"));
tPanel.Controls.Add(hPanel = new HLayoutPanel());
tPanel.Controls.Add(new LiteralControl("<br /><br />"));
var editor = new DFDataTableEditor(); var editor = new DFDataTableEditor();
_grid = new DFBrowseGrid(editor) { _grid = new DFBrowseGrid(editor) {
Width = Unit.Percentage(100), Width = Unit.Percentage(100),
@ -265,11 +273,13 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
var goodsPropertyCatalog = new JoinAlias(typeof(GoodsPropertyCatalog)); var goodsPropertyCatalog = new JoinAlias(typeof(GoodsPropertyCatalog));
var goodsProperty = new JoinAlias(typeof(GoodsProperty)); var goodsProperty = new JoinAlias(typeof(GoodsProperty));
var goods = new JoinAlias(typeof(SaleGoods)); var goods = new JoinAlias(typeof(SaleGoods));
var customer = new JoinAlias(typeof(Customer));
dom.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), dom.From.AddJoin(JoinType.Inner, new DQDmoSource(detail),
DQCondition.EQ(bill, "ID", detail, "Order_ID")); DQCondition.EQ(bill, "ID", detail, "Order_ID"));
dom.From.AddJoin(JoinType.Left, new DQDmoSource(goods), DQCondition.EQ(detail, "SaleGoods_ID", goods, "ID")); dom.From.AddJoin(JoinType.Left, new DQDmoSource(goods), DQCondition.EQ(detail, "SaleGoods_ID", goods, "ID"));
dom.From.AddJoin(JoinType.Left, new DQDmoSource(goodsProperty), DQCondition.EQ(goodsProperty, "ID", goods, "GoodsProperty_ID")); dom.From.AddJoin(JoinType.Left, new DQDmoSource(goodsProperty), DQCondition.EQ(goodsProperty, "ID", goods, "GoodsProperty_ID"));
dom.From.AddJoin(JoinType.Left, new DQDmoSource(goodsPropertyCatalog), DQCondition.EQ(goodsProperty, "GoodsPropertyCatalog_ID", goodsPropertyCatalog, "ID")); dom.From.AddJoin(JoinType.Left, new DQDmoSource(goodsPropertyCatalog), DQCondition.EQ(goodsProperty, "GoodsPropertyCatalog_ID", goodsPropertyCatalog, "ID"));
dom.From.AddJoin(JoinType.Left, new DQDmoSource(customer), DQCondition.EQ(bill, "Customer_ID", customer, "ID"));
AddGoodsCondition(goodsPropertyCatalog, goodsProperty, dom); AddGoodsCondition(goodsPropertyCatalog, goodsProperty, dom);
dom.Columns.Add(DQSelectColumn.Field("ID", goodsProperty)); dom.Columns.Add(DQSelectColumn.Field("ID", goodsProperty));
@ -281,7 +291,16 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
dom.Where.Conditions.Add(DQCondition.EQ("BillState", .)); dom.Where.Conditions.Add(DQCondition.EQ("BillState", .));
OrganizationUtil.AddOrganizationLimit(dom, typeof(Order)); OrganizationUtil.AddOrganizationLimit(dom, typeof(Order));
dom.Where.Conditions.Add(DQCondition.EQ(bill, "Domain_ID", DomainContext.Current.ID)); dom.Where.Conditions.Add(DQCondition.EQ(bill, "Domain_ID", DomainContext.Current.ID));
if (!_customerCatalogt.IsEmpty) {
var strs = B3SaleWebUtil.GetDeepByTreeName(_customerCatalogt.DisplayValue);
var conditions = new List<IDQExpression>();
var values = _customerCatalogt.GetValues();
for (int index = 0; index < values.Length; index++) {
var value = values[index];
conditions.Add(DQCondition.EQ(customer, "CustomerCatalog_TreeDeep" + strs[index] + "ID", value));
}
dom.Where.Conditions.Add(DQCondition.Or(conditions));
}
return dom; return dom;
} }


+ 27
- 20
B3_DongFangWanQi.Web/Pages/B3_DongFangWanQi/Tools/SaleOrderUpdateEdit.cs View File

@ -11,6 +11,7 @@ using BWP.B3Sale.BL;
using BWP.B3Sale.BO; using BWP.B3Sale.BO;
using BWP.B3UnitedInfos.BO; using BWP.B3UnitedInfos.BO;
using BWP.Web.Utils; using BWP.Web.Utils;
using Forks.EnterpriseServices;
using Forks.EnterpriseServices.BusinessInterfaces; using Forks.EnterpriseServices.BusinessInterfaces;
using Forks.EnterpriseServices.DataForm; using Forks.EnterpriseServices.DataForm;
using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2;
@ -116,11 +117,11 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
} }
} }
public List<Order_Detail> Details {
List<Order_DetailExt> Details {
get { get {
if (ViewState["Details"] == null) if (ViewState["Details"] == null)
ViewState["Details"] = new List<Order_Detail>();
return (List<Order_Detail>)ViewState["Details"];
ViewState["Details"] = new List<Order_DetailExt>();
return (List<Order_DetailExt>)ViewState["Details"];
} }
set { ViewState["Details"] = value; } set { ViewState["Details"] = value; }
} }
@ -162,15 +163,15 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_dfContainer = new DFContainer(); _dfContainer = new DFContainer();
_dfContainer.ID = "DFContainer"; _dfContainer.ID = "DFContainer";
form.Controls.Add(_dfContainer); form.Controls.Add(_dfContainer);
var panel = new HLayoutPanel(); var panel = new HLayoutPanel();
panel.Add(new SimpleLabel("可用数量")); panel.Add(new SimpleLabel("可用数量"));
var label = new Label();
label.Font.Size = 14;
label.Width = 120;
label.Font.Bold = true;
label.Text = decimal.Parse(Request.QueryString["number"]).ToString("0.00");
panel.Add(label);
var label = new Label();
label.Font.Size = 14;
label.Width = 120;
label.Font.Bold = true;
label.Text = decimal.Parse(Request.QueryString["number"]).ToString("0.00");
panel.Add(label);
panel.Add(new SimpleLabel("合计订货数量")); panel.Add(new SimpleLabel("合计订货数量"));
_l1 = new Label(); _l1 = new Label();
@ -194,7 +195,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
} }
private void CreateGrid(VLayoutPanel vPanel) { private void CreateGrid(VLayoutPanel vPanel) {
var editor = new DFCollectionEditor<Order_Detail>(() => Details);
var editor = new DFCollectionEditor<Order_DetailExt>(() => Details);
editor.CanDeleteFunc = detail => true; editor.CanDeleteFunc = detail => true;
editor.IsEditableFunc = (field, detail) => { editor.IsEditableFunc = (field, detail) => {
@ -213,6 +214,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_goodsGrid.ShowLineNo = true; _goodsGrid.ShowLineNo = true;
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Order_ID")); _goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Order_ID"));
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Customer_Name")); _goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Customer_Name"));
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("LoadTime"));
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Goods_Code")); _goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Goods_Code"));
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Goods_Name")); _goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Goods_Name"));
@ -234,8 +236,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_goodsGrid.ValueColumns.Add("Goods_SecondUnitRatio"); _goodsGrid.ValueColumns.Add("Goods_SecondUnitRatio");
_goodsGrid.ValueColumns.Add("LeftRatio"); _goodsGrid.ValueColumns.Add("LeftRatio");
_goodsGrid.ValueColumns.Add("RightRatio"); _goodsGrid.ValueColumns.Add("RightRatio");
vPanel.Add(_goodsGrid); vPanel.Add(_goodsGrid);
new MainToSecondConvertRowManger(_goodsGrid); new MainToSecondConvertRowManger(_goodsGrid);
_dfContainer.AddNonDFControl(_goodsGrid, "$Grid"); _dfContainer.AddNonDFControl(_goodsGrid, "$Grid");
@ -246,10 +247,10 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
saveBt.Click += SaveBtClick; saveBt.Click += SaveBtClick;
hl.Add(new LiteralControl("&nbsp;")); hl.Add(new LiteralControl("&nbsp;"));
TSButton back; TSButton back;
hl.Add(back=new TSButton("返回", delegate {
hl.Add(back = new TSButton("返回", delegate {
DialogUtil.SetCachedObj(this, ""); DialogUtil.SetCachedObj(this, "");
})); }));
back.Width = Unit.Pixel(80);
back.Width = Unit.Pixel(80);
} }
void SaveBtClick(object sender, EventArgs e) { void SaveBtClick(object sender, EventArgs e) {
@ -340,7 +341,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
dom.Columns.Add(DQSelectColumn.Field("Order_ID", detailAlias)); dom.Columns.Add(DQSelectColumn.Field("Order_ID", detailAlias));
dom.Columns.Add(DQSelectColumn.Field("GoodsBatch_ID", detailAlias)); dom.Columns.Add(DQSelectColumn.Field("GoodsBatch_ID", detailAlias));
dom.Columns.Add(DQSelectColumn.Field("GoodsBatch_Name", detailAlias)); dom.Columns.Add(DQSelectColumn.Field("GoodsBatch_Name", detailAlias));
dom.Columns.Add(DQSelectColumn.Field("LoadTime", order));
if (GoodsProperty_ID != null) { if (GoodsProperty_ID != null) {
dom.Where.Conditions.Add(DQCondition.EQ(goodsProperty, "ID", GoodsProperty_ID)); dom.Where.Conditions.Add(DQCondition.EQ(goodsProperty, "ID", GoodsProperty_ID));
} }
@ -380,7 +381,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
using (var context = new TransactionContext()) { using (var context = new TransactionContext()) {
using (var reader = context.Session.ExecuteReader(dom)) { using (var reader = context.Session.ExecuteReader(dom)) {
while (reader.Read()) { while (reader.Read()) {
var detail = new Order_Detail {
var detail = new Order_DetailExt {
ID = (long)reader[0], ID = (long)reader[0],
UnitNum = (Money<decimal>?)reader[1], UnitNum = (Money<decimal>?)reader[1],
SecondNumber = (Money<decimal>?)reader[2], SecondNumber = (Money<decimal>?)reader[2],
@ -393,7 +394,8 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
Customer_Name = (string)reader[9], Customer_Name = (string)reader[9],
Order_ID = (long)reader[10], Order_ID = (long)reader[10],
GoodsBatch_ID = (long?)reader[11], GoodsBatch_ID = (long?)reader[11],
GoodsBatch_Name = (string)reader[12]
GoodsBatch_Name = (string)reader[12],
LoadTime = (DateTime?)reader[13]
}; };
Details.Add(detail); Details.Add(detail);
} }
@ -402,11 +404,16 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
foreach (var detail in Details) { foreach (var detail in Details) {
Dmo.RefreshDependency(detail, "SaleGoods_ID"); Dmo.RefreshDependency(detail, "SaleGoods_ID");
} }
_goodsGrid.DataBind(); _goodsGrid.DataBind();
_l1.Text = Math.Round(Details.Sum(x => (decimal?)(x.UnitNum) ?? 0), 2).ToString(); _l1.Text = Math.Round(Details.Sum(x => (decimal?)(x.UnitNum) ?? 0), 2).ToString();
_l2.Text = Math.Round(Details.Sum(x => (decimal?)(x.Money) ?? 0), 2).ToString(); _l2.Text = Math.Round(Details.Sum(x => (decimal?)(x.Money) ?? 0), 2).ToString();
} }
[DFClass,Serializable]
class Order_DetailExt : Order_Detail {
[LogicName("发货时间")]
public DateTime? LoadTime { get; set; }
}
} }
} }

Loading…
Cancel
Save