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>
<HintPath>..\..\..\tsref\Debug\B3Sale.Web.dll</HintPath>
</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="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">


+ 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 ChoiceBox _goodsProperty;
private DFChoiceBox _storeInput, _accInput, _customerInput;
private DFChoiceBox _storeInput, _accInput, _customerCatalogt, _customerInput;
protected override void InitForm(HtmlForm form) {
_queryContainer = QueryContainer.FromResource(GetType().FullName + ".xml", GetType().Assembly);
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("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();
config.Add("OrderDate");
@ -65,19 +68,25 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
config.Add("Store_ID");
config.Add("GoodsProperty_ID");
config.Add("GoodsPropertyCatalog_ID");
config.Add("CustomerCatalog_ID");
layoutManager.Config = config;
var section = mPageLayoutManager.AddSection("BaseProperties", "查询条件");
section.ApplyLayout(layoutManager, config, mPageLayoutManager, _dFInfo);
section.SetDisplayName("GoodsProperty_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("开始查询");
tsbtn.Click += delegate {
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("订单明细", "订单明细")));
var vPanel = new VLayoutPanel();
@ -119,10 +128,9 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
DFBrowseGrid _grid;
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();
_grid = new DFBrowseGrid(editor) {
Width = Unit.Percentage(100),
@ -265,11 +273,13 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
var goodsPropertyCatalog = new JoinAlias(typeof(GoodsPropertyCatalog));
var goodsProperty = new JoinAlias(typeof(GoodsProperty));
var goods = new JoinAlias(typeof(SaleGoods));
var customer = new JoinAlias(typeof(Customer));
dom.From.AddJoin(JoinType.Inner, new DQDmoSource(detail),
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(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(customer), DQCondition.EQ(bill, "Customer_ID", customer, "ID"));
AddGoodsCondition(goodsPropertyCatalog, goodsProperty, dom);
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", .));
OrganizationUtil.AddOrganizationLimit(dom, typeof(Order));
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;
}


+ 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.B3UnitedInfos.BO;
using BWP.Web.Utils;
using Forks.EnterpriseServices;
using Forks.EnterpriseServices.BusinessInterfaces;
using Forks.EnterpriseServices.DataForm;
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 {
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; }
}
@ -162,15 +163,15 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_dfContainer = new DFContainer();
_dfContainer.ID = "DFContainer";
form.Controls.Add(_dfContainer);
var panel = new HLayoutPanel();
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("合计订货数量"));
_l1 = new Label();
@ -194,7 +195,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
}
private void CreateGrid(VLayoutPanel vPanel) {
var editor = new DFCollectionEditor<Order_Detail>(() => Details);
var editor = new DFCollectionEditor<Order_DetailExt>(() => Details);
editor.CanDeleteFunc = detail => true;
editor.IsEditableFunc = (field, detail) => {
@ -213,6 +214,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_goodsGrid.ShowLineNo = true;
_goodsGrid.Columns.Add(new DFEditGridColumn<DFValueLabel>("Order_ID"));
_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_Name"));
@ -234,8 +236,7 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
_goodsGrid.ValueColumns.Add("Goods_SecondUnitRatio");
_goodsGrid.ValueColumns.Add("LeftRatio");
_goodsGrid.ValueColumns.Add("RightRatio");
vPanel.Add(_goodsGrid);
new MainToSecondConvertRowManger(_goodsGrid);
_dfContainer.AddNonDFControl(_goodsGrid, "$Grid");
@ -246,10 +247,10 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
saveBt.Click += SaveBtClick;
hl.Add(new LiteralControl("&nbsp;"));
TSButton back;
hl.Add(back=new TSButton("返回", delegate {
hl.Add(back = new TSButton("返回", delegate {
DialogUtil.SetCachedObj(this, "");
}));
back.Width = Unit.Pixel(80);
back.Width = Unit.Pixel(80);
}
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("GoodsBatch_ID", detailAlias));
dom.Columns.Add(DQSelectColumn.Field("GoodsBatch_Name", detailAlias));
dom.Columns.Add(DQSelectColumn.Field("LoadTime", order));
if (GoodsProperty_ID != null) {
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 reader = context.Session.ExecuteReader(dom)) {
while (reader.Read()) {
var detail = new Order_Detail {
var detail = new Order_DetailExt {
ID = (long)reader[0],
UnitNum = (Money<decimal>?)reader[1],
SecondNumber = (Money<decimal>?)reader[2],
@ -393,7 +394,8 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
Customer_Name = (string)reader[9],
Order_ID = (long)reader[10],
GoodsBatch_ID = (long?)reader[11],
GoodsBatch_Name = (string)reader[12]
GoodsBatch_Name = (string)reader[12],
LoadTime = (DateTime?)reader[13]
};
Details.Add(detail);
}
@ -402,11 +404,16 @@ namespace BWP.Web.Pages.B3_DongFangWanQi.Tools {
foreach (var detail in Details) {
Dmo.RefreshDependency(detail, "SaleGoods_ID");
}
_goodsGrid.DataBind();
_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();
}
[DFClass,Serializable]
class Order_DetailExt : Order_Detail {
[LogicName("发货时间")]
public DateTime? LoadTime { get; set; }
}
}
}

Loading…
Cancel
Save