diff --git a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/ProduceFinishEdit_Ext.cs b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/ProduceFinishEdit_Ext.cs index 5140ca5..7916805 100644 --- a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/ProduceFinishEdit_Ext.cs +++ b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/ProduceFinishEdit_Ext.cs @@ -3,13 +3,16 @@ using System.Collections.Generic; using System.Linq; using System.Text; using BWP.B3Butchery.BO; +using BWP.B3Frameworks; using BWP.B3Frameworks.Utils; using BWP.B3Sale.BO; using BWP.Web.Pages.B3Butchery.Bills.ProduceFinish_; using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2.DQuery; using Forks.EnterpriseServices.SqlDoms; +using Forks.Utils; using TSingSoft.WebControls2; +using TSingSoft.WebPluginFramework; namespace BWP.Web.Pages.B3YunKen.Overlays { @@ -35,22 +38,35 @@ namespace BWP.Web.Pages.B3YunKen.Overlays { var list=new List(); + using (var session = Forks.EnterpriseServices.DomainObjects2.Dmo.NewSession()) + { + var maxid = GetMaxId(session); + var bill = new JoinAlias(typeof(ProductionGoodsTable)); var detail = new JoinAlias(typeof(ProductionGoodsTable_Detail)); var query = new DQueryDom(bill); query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(bill, "ID", detail, "ProductionGoodsTable_ID")); - query.Where.Conditions.Add(DQCondition.EQ("AccountingUnit_ID", Dmo.AccountingUnit_ID)); - query.Where.Conditions.Add(DQCondition.EQ("ProductionUnit_ID", Dmo.ProductionUnit_ID)); - query.Columns.Add(DQSelectColumn.Field("SaleGoods_ID", detail)); - query.Columns.Add(DQSelectColumn.Field("Goods_Name", detail)); - query.Columns.Add(DQSelectColumn.Field("Goods_Brand", detail)); - using (var session = Forks.EnterpriseServices.DomainObjects2.Dmo.NewSession()) - { + query.Where.Conditions.Add(DQCondition.EQ("ID", maxid)); + + query.Columns.Add(DQSelectColumn.Field("SaleGoods_ID", detail)); + query.Columns.Add(DQSelectColumn.Field("BrandItem_ID", detail)); + query.Columns.Add(DQSelectColumn.Field("BrandItem_Name", detail)); + query.Columns.Add(DQSelectColumn.Field("Number ", detail)); + query.Columns.Add(DQSelectColumn.Field("SecondNumber ", detail)); + using (var reader = session.ExecuteReader(query)) { while (reader.Read()) { - list.Add(new ProduceFinish_Detail() { Goods_ID = (long)reader[0], Goods_Name = (string)reader[1],Goods_Brand = (string)reader[2]}); + var dmodetail = new ProduceFinish_Detail() + { + Goods_ID = (long)reader[0], + BrandItem_ID = (long?)reader[1], + BrandItem_Name = (string)reader[2], + Number = (Money?)reader[3], + SecondNumber = (Money?)reader[4], + }; + list.Add(dmodetail); } } } @@ -62,5 +78,19 @@ namespace BWP.Web.Pages.B3YunKen.Overlays return list; } + private long? GetMaxId(IDmoSession session) + { + var bill = new JoinAlias(typeof(ProductionGoodsTable)); + var query = new DQueryDom(bill); + query.Where.Conditions.Add(DQCondition.EQ("AccountingUnit_ID", Dmo.AccountingUnit_ID)); + query.Where.Conditions.Add(DQCondition.EQ("ProductionUnit_ID", Dmo.ProductionUnit_ID)); + query.EAddCheckedCondition(bill); + query.Where.Conditions.Add(DQCondition.EQ("Domain_ID", DomainContext.Current.ID)); + query.OrderBy.Expressions.Add(DQOrderByExpression.Create("ID", true)); + query.Range = SelectRange.Top(1); + + query.Columns.Add(DQSelectColumn.Field("ID")); + return query.EExecuteScalar(session); + } } } diff --git a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleForecastEdit_Ext.cs b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleForecastEdit_Ext.cs index 350e12a..e353fcc 100644 --- a/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleForecastEdit_Ext.cs +++ b/BWP.B3_YunKen.Web/Pages/B3YunKen/Overlays/SaleForecastEdit_Ext.cs @@ -3,13 +3,16 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; +using BWP.B3Frameworks; using BWP.B3Frameworks.Utils; using BWP.B3Sale.BO; using BWP.Web.Layout; using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2.DQuery; using Forks.EnterpriseServices.SqlDoms; +using Forks.Utils; using TSingSoft.WebControls2; +using TSingSoft.WebPluginFramework; namespace BWP.Web.Pages.B3YunKen.Overlays { @@ -40,32 +43,39 @@ namespace BWP.Web.Pages.B3YunKen.Overlays List LoadList() { var list=new List(); - - var bill = new JoinAlias(typeof(CustomerGoodsTable)); - var detail = new JoinAlias(typeof(CustomerGoodsTable_Detail)); - var query = new DQueryDom(bill); - query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(bill, "ID", detail, "CustomerGoodsTable_ID")); - query.Where.Conditions.Add(DQCondition.EQ("AccountingUnit_ID", Dmo.AccountingUnit_ID)); - query.Where.Conditions.Add(DQCondition.EQ("Customer_ID", Dmo.Customer_ID)); - query.Columns.Add(DQSelectColumn.Field("SaleGoods_ID", detail)); - query.Columns.Add(DQSelectColumn.Field("Goods_Name", detail)); - query.Columns.Add(DQSelectColumn.Field("Goods_Brand", detail)); using (var session=Forks.EnterpriseServices.DomainObjects2.Dmo.NewSession()) { - using (var reader=session.ExecuteReader(query)) - { - while (reader.Read()) + var maxid = GetMaxId(session); + var bill = new JoinAlias(typeof(CustomerGoodsTable)); + var detail = new JoinAlias(typeof(CustomerGoodsTable_Detail)); + var query = new DQueryDom(bill); + query.From.AddJoin(JoinType.Inner, new DQDmoSource(detail), DQCondition.EQ(bill, "ID", detail, "CustomerGoodsTable_ID")); + query.Where.Conditions.Add(DQCondition.EQ("ID", maxid)); + + query.Columns.Add(DQSelectColumn.Field("SaleGoods_ID", detail)); + query.Columns.Add(DQSelectColumn.Field("BrandItem_ID", detail)); + query.Columns.Add(DQSelectColumn.Field("BrandItem_Name", detail)); + query.Columns.Add(DQSelectColumn.Field("Unit", detail)); + query.Columns.Add(DQSelectColumn.Field("UnitNum ", detail)); + query.Columns.Add(DQSelectColumn.Field("SecondNumber ", detail)); + + using (var reader = session.ExecuteReader(query)) { - var dmodetail = new SaleForecast_Detail() + while (reader.Read()) { - SaleGoods_ID = (long) reader[0], - Goods_Name = (string) reader[1], - Goods_Brand = (string) reader[2] - }; - list.Add(dmodetail); + var dmodetail = new SaleForecast_Detail() + { + SaleGoods_ID = (long)reader[0], + BrandItem_ID = (long?)reader[1], + BrandItem_Name = (string)reader[2], + Unit = (string)reader[3], + UnitNum = (Money?)reader[4], + SecondNumber = (Money?)reader[5], + }; + list.Add(dmodetail); + } } } - } foreach (SaleForecast_Detail forecastDetail in list) { @@ -75,5 +85,19 @@ namespace BWP.Web.Pages.B3YunKen.Overlays return list; } + private long? GetMaxId(IDmoSession session) + { + var bill = new JoinAlias(typeof(CustomerGoodsTable)); + var query = new DQueryDom(bill); + query.Where.Conditions.Add(DQCondition.EQ("AccountingUnit_ID", Dmo.AccountingUnit_ID)); + query.Where.Conditions.Add(DQCondition.EQ("Customer_ID", Dmo.Customer_ID)); + query.EAddCheckedCondition(bill); + query.Where.Conditions.Add(DQCondition.EQ("Domain_ID",DomainContext.Current.ID)); + query.OrderBy.Expressions.Add(DQOrderByExpression.Create("ID",true)); + query.Range=SelectRange.Top(1); + + query.Columns.Add(DQSelectColumn.Field("ID")); + return query.EExecuteScalar(session); + } } }