|
|
|
@ -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<Tuple<long?, int?>> 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<long?, int?>();
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
//根据存货查找【包装物设置】中对应的存货设置
|
|
|
|
private List<Tuple<long?, int?>> GetGoods_PackageCount(long? goodID, long? accID) |
|
|
|
{ |
|
|
|
@ -76,5 +60,20 @@ namespace BWP.B3_YunKen.TypeIoc |
|
|
|
return query.EExecuteList<long?, int?>(); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public IList<string> Features |
|
|
|
{ |
|
|
|
get { return new List<string>(); } |
|
|
|
} |
|
|
|
|
|
|
|
public string Name |
|
|
|
{ |
|
|
|
get { return "B3_YunKen.销售出库设置包装物"; } |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|