diff --git a/BWP.B3_YunKen/TypeIoc/SaleOutStoreBeforeSaveTypeIoc.cs b/BWP.B3_YunKen/BLActions/SaleForecastBLIsSetWrappageActions.cs similarity index 63% rename from BWP.B3_YunKen/TypeIoc/SaleOutStoreBeforeSaveTypeIoc.cs rename to BWP.B3_YunKen/BLActions/SaleForecastBLIsSetWrappageActions.cs index b9ffecd..bf1f221 100644 --- a/BWP.B3_YunKen/TypeIoc/SaleOutStoreBeforeSaveTypeIoc.cs +++ b/BWP.B3_YunKen/BLActions/SaleForecastBLIsSetWrappageActions.cs @@ -1,30 +1,36 @@ using BWP.B3_YunKen.BO; -using BWP.B3Frameworks; -using BWP.B3Frameworks.BO.NamedValueTemplate; -using BWP.B3Sale.BL; using BWP.B3Sale.BO; using Forks.EnterpriseServices.BusinessInterfaces; using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2.DQuery; using Forks.EnterpriseServices.SqlDoms; -using Forks.Utils; using System; using System.Collections.Generic; using System.Linq; using System.Text; +using TSingSoft.WebPluginFramework.BIPlugins.BLEvents; using TSingSoft.WebPluginFramework; -namespace BWP.B3_YunKen.TypeIoc +namespace BWP.B3_YunKen.BLActions { - [TypeIOC(typeof(SaleOutStoreBL), typeof(SaleOutStoreBL.BaseBLIOCs.BeforeSave))] - public class SaleOutStoreBeforeSaveTypeIoc : SaleOutStoreBL.BaseBLIOCs.BeforeSave + public class SaleForecastBLIsSetWrappageActions : IBLMethodAction { - public void Invoke(IDmoContext context, SaleOutStore dmo) + + //A:根据存货查找【包装物设置】中对应的存货设置 + //B:若存货没有在【包装物设置】界面设置包装物,则无法保存。 + public string Description + { + get { return "销售预报设置包装物"; } + } + + public void Execute(IDmoContext context, object dmo, object parameter) { - - foreach (var detail in dmo.Details) + var bill = dmo as SaleForecast; + if (bill == null) + return; + foreach (var detail in bill.Details) { - var list = GetGoods_PackageCount(detail.SaleGoods_ID, dmo.AccountingUnit_ID); + var list = GetGoods_PackageCount(detail.SaleGoods_ID, bill.AccountingUnit_ID); if (list.Count <= 0) { string msg = "存货【" + detail.Goods_Name + "】没有在【产品包装物设置】界面设置包装物"; @@ -33,8 +39,6 @@ namespace BWP.B3_YunKen.TypeIoc } } - - //根据存货查找【包装物设置】中对应的存货设置 private List> GetGoods_PackageCount(long? goodID, long? accID) { @@ -53,7 +57,18 @@ namespace BWP.B3_YunKen.TypeIoc query.Where.Conditions.Add(DQCondition.EQ(package, "AccountingUnit_ID", accID)); - return query.EExecuteList(); + return query.EExecuteList(); + } + + + public IList Features + { + get { return new List(); } + } + + public string Name + { + get { return "B3_YunKen.销售预报设置包装物"; } } } diff --git a/BWP.B3_YunKen/TypeIoc/SaleForecastBeforeSaveTypeIoc.cs b/BWP.B3_YunKen/BLActions/SaleOutStoreBLIsSetWrappageActions.c.cs similarity index 58% rename from BWP.B3_YunKen/TypeIoc/SaleForecastBeforeSaveTypeIoc.cs rename to BWP.B3_YunKen/BLActions/SaleOutStoreBLIsSetWrappageActions.c.cs index 6af3753..85b07d2 100644 --- a/BWP.B3_YunKen/TypeIoc/SaleForecastBeforeSaveTypeIoc.cs +++ b/BWP.B3_YunKen/BLActions/SaleOutStoreBLIsSetWrappageActions.c.cs @@ -1,31 +1,36 @@ -using BWP.B3Frameworks; -using BWP.B3Sale.BL; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using BWP.B3_YunKen.BO; -using BWP.B3Frameworks.BO.NamedValueTemplate; +using BWP.B3_YunKen.BO; +using BWP.B3Frameworks.Utils; using BWP.B3Sale.BO; using Forks.EnterpriseServices.BusinessInterfaces; using Forks.EnterpriseServices.DomainObjects2; using Forks.EnterpriseServices.DomainObjects2.DQuery; -using Forks.Utils; -using TSingSoft.WebPluginFramework; using Forks.EnterpriseServices.SqlDoms; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using TSingSoft.WebPluginFramework; +using TSingSoft.WebPluginFramework.BIPlugins.BLEvents; -namespace BWP.B3_YunKen.TypeIoc +namespace BWP.B3_YunKen.BLActions { - [TypeIOC(typeof(SaleForecastBL), typeof(SaleForecastBL.BaseBLIOCs.BeforeSave))] - public class SaleForecastBeforeSaveTypeIoc : SaleForecastBL.BaseBLIOCs.BeforeSave + public class SaleOutStoreBLIsSetWrappageActions : IBLMethodAction { - - public void Invoke(IDmoContext context, SaleForecast dmo) + //A:根据存货查找【包装物设置】中对应的存货设置 + //B:若存货没有在【包装物设置】界面设置包装物,则无法保存。 + public string Description { + get { return "销售出库设置包装物"; } + } - foreach (var detail in dmo.Details) + public void Execute(IDmoContext context, object dmo, object parameter) + { + var bill = dmo as SaleOutStore; + if (bill == null) + return; + foreach (var detail in bill.Details) { - var list = GetGoods_PackageCount(detail.SaleGoods_ID,dmo.AccountingUnit_ID); + var list = GetGoods_PackageCount(detail.SaleGoods_ID, bill.AccountingUnit_ID); if (list.Count <= 0) { string msg = "存货【" + detail.Goods_Name + "】没有在【产品包装物设置】界面设置包装物"; @@ -34,27 +39,6 @@ namespace BWP.B3_YunKen.TypeIoc } } - - - ////根据存货查找【包装物设置】中对应的存货设置 - //private List> GetGoods_PackageCount(long? goodID) - //{ - // var main = new JoinAlias(typeof(Goods_Package)); - - // var query = new DQueryDom(main); - - // query.Columns.Add(DQSelectColumn.Field("Package_ID", main)); - // query.Columns.Add(DQSelectColumn.Create(DQExpression.Count(), "Count")); - // query.GroupBy.Expressions.Add(DQExpression.Field(main, "Package_ID")); - - // query.Where.Conditions.Add(DQCondition.EQ(main, "Goods_ID", goodID)); - // //query.Where.Conditions.Add(DQCondition.EQ(main, "Stopped", 0)); - - - // return query.EExecuteList(); - //} - - //根据存货查找【包装物设置】中对应的存货设置 private List> GetGoods_PackageCount(long? goodID, long? accID) { @@ -76,5 +60,20 @@ namespace BWP.B3_YunKen.TypeIoc return query.EExecuteList(); } + + public IList Features + { + get { return new List(); } + } + + public string Name + { + get { return "B3_YunKen.销售出库设置包装物"; } + } + + } } + + + diff --git a/BWP.B3_YunKen/BWP.B3_YunKen.csproj b/BWP.B3_YunKen/BWP.B3_YunKen.csproj index 6f53a9c..75f7985 100644 --- a/BWP.B3_YunKen/BWP.B3_YunKen.csproj +++ b/BWP.B3_YunKen/BWP.B3_YunKen.csproj @@ -62,14 +62,14 @@ + + - -