|
@ -76,19 +76,25 @@ namespace SettleAccount.Job.Services.Report |
|
|
|
|
|
|
|
|
HandleSaSeEdiCompareDiffList(saSeEdiCompareDiffs); |
|
|
HandleSaSeEdiCompareDiffList(saSeEdiCompareDiffs); |
|
|
|
|
|
|
|
|
|
|
|
//var sa1 = saSeEdiCompareDiffs.FindAll(t => t.PN == "3819841").ToList();
|
|
|
|
|
|
//var sa2 = sa1.FindAll(t => t.SaCustomerPartCode == "A2068808405").ToList();
|
|
|
|
|
|
|
|
|
|
|
|
//saSeEdiCompareDiffs = saSeEdiCompareDiffs.FindAll(t => t.PN == "3819841").ToList();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region 二次对比
|
|
|
#region 二次对比
|
|
|
//二次匹配上的记录
|
|
|
//二次匹配上的记录
|
|
|
var secondMatchHaveSaHaveSes = HandleSecondCompare(saSeEdiCompareDiffs, businessType); |
|
|
//var secondMatchHaveSaHaveSes = HandleSecondCompare(saSeEdiCompareDiffs, businessType);
|
|
|
if (secondMatchHaveSaHaveSes.Any()) |
|
|
//if (secondMatchHaveSaHaveSes.Any())
|
|
|
{ |
|
|
//{
|
|
|
//二次匹配 匹配上的厂内零件号、PN
|
|
|
// //二次匹配 匹配上的厂内零件号、PN
|
|
|
var secondMatchFPartCodePNs = secondMatchHaveSaHaveSes.Select(t => new { t.ReplaceFactoryPartCode, t.PN }); |
|
|
// var secondMatchFPartCodePNs = secondMatchHaveSaHaveSes.Select(t => new { t.ReplaceFactoryPartCode, t.PN });
|
|
|
saSeEdiCompareDiffs.RemoveAll<SaSeEdiCompareDiff>(t => secondMatchFPartCodePNs.Contains(new { t.ReplaceFactoryPartCode, t.PN })); |
|
|
// saSeEdiCompareDiffs.RemoveAll<SaSeEdiCompareDiff>(t => secondMatchFPartCodePNs.Contains(new { t.ReplaceFactoryPartCode, t.PN }));
|
|
|
saSeEdiCompareDiffs.AddRange(secondMatchHaveSaHaveSes); |
|
|
// saSeEdiCompareDiffs.AddRange(secondMatchHaveSaHaveSes);
|
|
|
//二次对比比对上的数据入库
|
|
|
// //二次对比比对上的数据入库
|
|
|
var seCDetailEntitys = _objectMapper.Map<List<SaSeEdiCompareDiff>, List<BBAC_SEC_DETAIL>>(secondMatchHaveSaHaveSes); |
|
|
// var seCDetailEntitys = _objectMapper.Map<List<SaSeEdiCompareDiff>, List<BBAC_SEC_DETAIL>>(secondMatchHaveSaHaveSes);
|
|
|
_settleAccountDbContext.Set<BBAC_SEC_DETAIL>().AddRange(seCDetailEntitys); |
|
|
// _settleAccountDbContext.Set<BBAC_SEC_DETAIL>().AddRange(seCDetailEntitys);
|
|
|
} |
|
|
//}
|
|
|
#endregion
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
#region 结算数据处理
|
|
|
#region 结算数据处理
|
|
@ -155,7 +161,7 @@ namespace SettleAccount.Job.Services.Report |
|
|
// Site = groupItem.Max(t => t.Site),
|
|
|
// Site = groupItem.Max(t => t.Site),
|
|
|
// Price = groupItem.Max(t => t.Price),
|
|
|
// Price = groupItem.Max(t => t.Price),
|
|
|
// };
|
|
|
// };
|
|
|
var saGroup = from sa in _settleAccountDbContext.Set<BBAC_SA_DETAIL>() |
|
|
var saGroup = from sa in _settleAccountDbContext.Set<BBAC_SA_DETAIL>() |
|
|
where sa.BusinessType == businessType |
|
|
where sa.BusinessType == businessType |
|
|
group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem |
|
|
group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem |
|
|
select new |
|
|
select new |
|
@ -186,8 +192,8 @@ namespace SettleAccount.Job.Services.Report |
|
|
// ToLoc = groupItem.Max(t => t.ToLoc),
|
|
|
// ToLoc = groupItem.Max(t => t.ToLoc),
|
|
|
// ErpToLoc = groupItem.Max(t => t.ErpToLoc)
|
|
|
// ErpToLoc = groupItem.Max(t => t.ErpToLoc)
|
|
|
// }).Where(t => t.Qty != 0M);
|
|
|
// }).Where(t => t.Qty != 0M);
|
|
|
var seGroup = (from se in _settleAccountDbContext.Set<BBAC_SE_DETAIL>() |
|
|
var seGroup = (from se in _settleAccountDbContext.Set<BBAC_SE_DETAIL>() |
|
|
where se.BusinessType == businessType |
|
|
where se.BusinessType == businessType |
|
|
group se by new { se.PN, se.CustomerPartCodeNoSpace } into groupItem |
|
|
group se by new { se.PN, se.CustomerPartCodeNoSpace } into groupItem |
|
|
select new |
|
|
select new |
|
|
{ |
|
|
{ |
|
@ -200,7 +206,7 @@ namespace SettleAccount.Job.Services.Report |
|
|
FactoryPartCode = groupItem.Max(t => t.FactoryPartCode), |
|
|
FactoryPartCode = groupItem.Max(t => t.FactoryPartCode), |
|
|
ToLoc = groupItem.Max(t => t.ToLoc), |
|
|
ToLoc = groupItem.Max(t => t.ToLoc), |
|
|
ErpToLoc = groupItem.Max(t => t.ErpToLoc) |
|
|
ErpToLoc = groupItem.Max(t => t.ErpToLoc) |
|
|
}).Where(t => t.Qty != 0M); |
|
|
}).Where(t => t.Qty > 0M); |
|
|
//Edi
|
|
|
//Edi
|
|
|
//var ediGroup = from edi in _settleAccountDbContext.Set<BBAC_SE_EDI>()
|
|
|
//var ediGroup = from edi in _settleAccountDbContext.Set<BBAC_SE_EDI>()
|
|
|
// where edi.IsDeleted == false && edi.IsHaveSeData == true && edi.State == 0
|
|
|
// where edi.IsDeleted == false && edi.IsHaveSeData == true && edi.State == 0
|
|
|