|
|
|
@ -12,6 +12,7 @@ using Forks.EnterpriseServices.DomainObjects2; |
|
|
|
using Forks.EnterpriseServices.DomainObjects2.DQuery; |
|
|
|
using Forks.Utils; |
|
|
|
using TSingSoft.WebPluginFramework; |
|
|
|
using Forks.EnterpriseServices.SqlDoms; |
|
|
|
|
|
|
|
namespace BWP.B3_YunKen.TypeIoc |
|
|
|
{ |
|
|
|
@ -24,7 +25,7 @@ namespace BWP.B3_YunKen.TypeIoc |
|
|
|
|
|
|
|
foreach (var detail in dmo.Details) |
|
|
|
{ |
|
|
|
var list = GetGoods_PackageCount(detail.SaleGoods_ID); |
|
|
|
var list = GetGoods_PackageCount(detail.SaleGoods_ID,dmo.AccountingUnit_ID); |
|
|
|
if (list.Count <= 0) |
|
|
|
{ |
|
|
|
string msg = "存货【" + detail.Goods_Name + "】没有在【产品包装物设置】界面设置包装物"; |
|
|
|
@ -35,19 +36,41 @@ 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) |
|
|
|
private List<Tuple<long?, int?>> GetGoods_PackageCount(long? goodID, long? accID) |
|
|
|
{ |
|
|
|
var main = new JoinAlias(typeof(Goods_Package)); |
|
|
|
var gpackage = new JoinAlias(typeof(Goods_Package)); |
|
|
|
var package = new JoinAlias(typeof(Wrappage)); |
|
|
|
|
|
|
|
var query = new DQueryDom(gpackage); |
|
|
|
|
|
|
|
var query = new DQueryDom(main); |
|
|
|
query.From.AddJoin(JoinType.Left, new DQDmoSource(package), DQCondition.EQ(package, "ID", gpackage, "Package_ID")); |
|
|
|
|
|
|
|
query.Columns.Add(DQSelectColumn.Field("Package_ID", main)); |
|
|
|
query.Columns.Add(DQSelectColumn.Field("Package_ID", gpackage)); |
|
|
|
query.Columns.Add(DQSelectColumn.Create(DQExpression.Count(), "Count")); |
|
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(main, "Package_ID")); |
|
|
|
query.GroupBy.Expressions.Add(DQExpression.Field(gpackage, "Package_ID")); |
|
|
|
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(main, "Goods_ID", goodID)); |
|
|
|
//query.Where.Conditions.Add(DQCondition.EQ(main, "Stopped", 0));
|
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(gpackage, "Goods_ID", goodID)); |
|
|
|
query.Where.Conditions.Add(DQCondition.EQ(package, "AccountingUnit_ID", accID)); |
|
|
|
|
|
|
|
|
|
|
|
return query.EExecuteList<long?, int?>(); |
|
|
|
|