wanggang 1 year ago
parent
commit
f6263a35a6
  1. 36
      code/src/Modules/SettleAccount/src/SettleAccount.Application.Contracts/Entities/BQ/Dtos/INVOICE_GRP_DTO.cs
  2. 11
      code/src/Modules/SettleAccount/src/SettleAccount.Application/Bases/BA_SERVICE.cs
  3. 12
      code/src/Modules/SettleAccount/src/SettleAccount.Application/Entities/BQ/INVOICE_SERVICE.cs
  4. 3
      code/src/Modules/SettleAccount/src/SettleAccount.Domain/Entities/BQ/Managers/INV_MNG.cs
  5. 3
      code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/JisBBACSeEdiCompareExportService.cs
  6. 12
      code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/PubSaSeCompareExportService.cs
  7. 88
      code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/SaSeCompareExportBaseService.cs

36
code/src/Modules/SettleAccount/src/SettleAccount.Application.Contracts/Entities/BQ/Dtos/INVOICE_GRP_DTO.cs

@ -38,7 +38,7 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos
/// </summary> /// </summary>
[Display(Name = "税后金额")] [Display(Name = "税后金额")]
public decimal TaxAmt { get; set; } public decimal TaxAmt { get; set; }
[Display(Name = "发票金额")] [Display(Name = "税额")]
public decimal RealAmt { get; set; } public decimal RealAmt { get; set; }
/// <summary> /// <summary>
///发票分组号 ///发票分组号
@ -57,9 +57,12 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos
[Display(Name = "发票状态")] [Display(Name = "发票状态")]
public InvoiceBillState InvoiceState { get; set; } public InvoiceBillState InvoiceState { get; set; }
[Display(Name = "发票税后尾差")] [Display(Name = "发票尾差")]
public decimal TaxDiff { get; set; } public decimal TaxDiff { get; set; }
[Display(Name = "发票金额含尾差")]
public decimal TaxAmtDiff { get; set; }
[Display(Name = "客户代码")] [Display(Name = "客户代码")]
public string ClientCode { get; set; } public string ClientCode { get; set; }
} }
@ -77,12 +80,9 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos
[Display(Name = "未税金额")] [Display(Name = "未税金额")]
public decimal Amt { get; set; } public decimal Amt { get; set; }
/// <summary>
///未税金额
/// </summary>
[Display(Name = "税率")]
public decimal Tax { get; set; }
[Display(Name = "税额")]
public decimal RealAmt { get; set; }
/// <summary> /// <summary>
///税后金额 ///税后金额
@ -90,8 +90,13 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos
[Display(Name = "税后金额")] [Display(Name = "税后金额")]
public decimal TaxAmt { get; set; } public decimal TaxAmt { get; set; }
[Display(Name = "税额")]
public decimal RealAmt { get; set; } [Display(Name = "税率")]
public decimal Tax { get; set; }
/// <summary> /// <summary>
///发票分组号 ///发票分组号
/// </summary> /// </summary>
@ -123,16 +128,25 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Dtos
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "未税金额")] [ExporterHeader(DisplayName = "未税金额")]
public decimal Amt { get; set; } public decimal Amt { get; set; }
[Display(Name = "税额")]
public decimal RealAmt { get; set; }
/// <summary> /// <summary>
///税额 ///税额
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "税率")] //[ExporterHeader(DisplayName = "税率")]
public decimal Tax { get; set; } //public decimal Tax { get; set; }
/// <summary> /// <summary>
///税后金额 ///税后金额
/// </summary> /// </summary>
[ExporterHeader(DisplayName = "税后金额")] [ExporterHeader(DisplayName = "税后金额")]
public decimal TaxAmt { get; set; } public decimal TaxAmt { get; set; }
[ExporterHeader(DisplayName = "发票尾差")]
public decimal TaxDiff { get; set; }
[ExporterHeader(DisplayName = "发票金额含尾差")]
public decimal TaxAmtDiff { get; set; }
/// <summary> /// <summary>
///业务类别 ///业务类别
/// </summary> /// </summary>

11
code/src/Modules/SettleAccount/src/SettleAccount.Application/Bases/BA_SERVICE.cs

@ -140,6 +140,11 @@ namespace Win.Sfs.SettleAccount.Bases
var entitys = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, input.MaxResultCount, input.SkipCount); var entitys = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, input.MaxResultCount, input.SkipCount);
var totalCount = await _repository.GetCountByFilterAsync(input.Filters); var totalCount = await _repository.GetCountByFilterAsync(input.Filters);
var dtos = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_DTO>>(entitys); var dtos = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_DTO>>(entitys);
foreach (var itm in dtos)
{
itm.TaxAmtDiff = itm.TaxAmt + itm.TaxDiff;
}
return new PagedResultDto<INVOICE_GRP_DTO>(totalCount, dtos); return new PagedResultDto<INVOICE_GRP_DTO>(totalCount, dtos);
} }
/// <summary> /// <summary>
@ -305,6 +310,12 @@ namespace Win.Sfs.SettleAccount.Bases
IExporter _excel = new ExcelExporter(); IExporter _excel = new ExcelExporter();
var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, int.MaxValue, 0, true); var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, int.MaxValue, 0, true);
var dtoDetails = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_EXP_DTO>>(entities); var dtoDetails = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_EXP_DTO>>(entities);
foreach (var itm in dtoDetails)
{
itm.TaxAmtDiff = itm.TaxAmt + itm.TaxDiff;
}
var classDisplayName = typeof(INVOICE_GRP_DTO).GetCustomAttribute<DisplayAttribute>()?.Name ?? typeof(INVOICE_GRP_DTO).Name; var classDisplayName = typeof(INVOICE_GRP_DTO).GetCustomAttribute<DisplayAttribute>()?.Name ?? typeof(INVOICE_GRP_DTO).Name;
string _fileName = $"{classDisplayName}_{Guid.NewGuid().ToString()}.xlsx"; string _fileName = $"{classDisplayName}_{Guid.NewGuid().ToString()}.xlsx";
byte[] result = null; byte[] result = null;

12
code/src/Modules/SettleAccount/src/SettleAccount.Application/Entities/BQ/INVOICE_SERVICE.cs

@ -142,6 +142,10 @@ namespace Win.Sfs.SettleAccount.Entities.BQ
var entitys = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, input.MaxResultCount, input.SkipCount); var entitys = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, input.MaxResultCount, input.SkipCount);
var totalCount = await _repository.GetCountByFilterAsync(input.Filters); var totalCount = await _repository.GetCountByFilterAsync(input.Filters);
var dtos = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_DTO>>(entitys); var dtos = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_DTO>>(entitys);
foreach (var itm in dtos)
{
itm.TaxAmtDiff = itm.TaxAmt + itm.TaxDiff;
}
return new PagedResultDto<INVOICE_GRP_DTO>(totalCount, dtos); return new PagedResultDto<INVOICE_GRP_DTO>(totalCount, dtos);
} }
/// <summary> /// <summary>
@ -316,6 +320,12 @@ namespace Win.Sfs.SettleAccount.Entities.BQ
var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, int.MaxValue, 0, true); var entities = await _repository.GetListByFilterAsync(input.Filters, input.Sorting, int.MaxValue, 0, true);
var dtoDetails = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_EXP_DTO>>(entities); var dtoDetails = ObjectMapper.Map<List<INVOICE_GRP>, List<INVOICE_GRP_EXP_DTO>>(entities);
foreach (var itm in dtoDetails)
{
itm.TaxAmtDiff = itm.TaxAmt + itm.TaxDiff;
}
var classDisplayName = typeof(INVOICE_GRP_DTO).GetCustomAttribute<DisplayAttribute>()?.Name ?? typeof(INVOICE_GRP_DTO).Name; var classDisplayName = typeof(INVOICE_GRP_DTO).GetCustomAttribute<DisplayAttribute>()?.Name ?? typeof(INVOICE_GRP_DTO).Name;
string _fileName = $"{classDisplayName}_{Guid.NewGuid().ToString()}.xlsx"; string _fileName = $"{classDisplayName}_{Guid.NewGuid().ToString()}.xlsx";
byte[] result = null; byte[] result = null;
@ -655,7 +665,7 @@ namespace Win.Sfs.SettleAccount.Entities.BQ
// inv.RealAmt = newinv.RealAmt; // inv.RealAmt = newinv.RealAmt;
inv.TaxDiff =inv.TaxAmt+ newinv.PreTaxDiff; inv.TaxDiff =inv.TaxAmt+ newinv.PreTaxDiff;
inv.ClientCode = newinv.ClientCode; // inv.ClientCode = newinv.ClientCode;
} }
foreach (var detail in invdetail) foreach (var detail in invdetail)
{ {

3
code/src/Modules/SettleAccount/src/SettleAccount.Domain/Entities/BQ/Managers/INV_MNG.cs

@ -1392,8 +1392,9 @@ namespace Win.Sfs.SettleAccount.Entities.BQ.Managers
EndDate = itm.Key.EndDate EndDate = itm.Key.EndDate
}).ToList(); }).ToList();
decimal amt = detailDtos.Sum(k => k.Amt);//金额 decimal amt = detailDtos.Sum(k => k.Amt);//金额
decimal txtAmt =detailDtos.Sum(k => k.Amt) + Math.Round(detailList.Sum(k => k.Amt) * 0.13m, 2);//税后金额 decimal txtAmt =detailDtos.Sum(k => k.Amt) + Math.Round(detailDtos.Sum(k => k.Amt) * 0.13m, 2);//税后金额
decimal realAmt = Math.Round(detailDtos.Sum(k => k.Amt) * 0.13m, 2);//税额 decimal realAmt = Math.Round(detailDtos.Sum(k => k.Amt) * 0.13m, 2);//税额
//decimal amt = detailDtos.Sum(k => k.Amt); //decimal amt = detailDtos.Sum(k => k.Amt);
//decimal txtAmt = Math.Round(detailDtos.Sum(k => k.Amt), 2); //decimal txtAmt = Math.Round(detailDtos.Sum(k => k.Amt), 2);
var mapList = new List<INVOICE_MAP_GROUP>(); var mapList = new List<INVOICE_MAP_GROUP>();

3
code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/JisBBACSeEdiCompareExportService.cs

@ -3,8 +3,6 @@ using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.Linq; using System.Linq;
using System.Linq.Dynamic.Core; using System.Linq.Dynamic.Core;
using Magicodes.ExporterAndImporter.Core.Extension;
using Magicodes.ExporterAndImporter.Excel;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
using Microsoft.OpenApi.Extensions; using Microsoft.OpenApi.Extensions;
using SettleAccount.Domain.BQ; using SettleAccount.Domain.BQ;
@ -17,7 +15,6 @@ using Volo.Abp.DependencyInjection;
using Volo.Abp.ObjectMapping; using Volo.Abp.ObjectMapping;
using Win.Sfs.BaseData.ImportExcelCommon; using Win.Sfs.BaseData.ImportExcelCommon;
using Win.Sfs.SettleAccount; using Win.Sfs.SettleAccount;
using Win.Sfs.SettleAccount.Consts;
using Win.Sfs.SettleAccount.Reports; using Win.Sfs.SettleAccount.Reports;
namespace SettleAccount.Job.Services.Report namespace SettleAccount.Job.Services.Report

12
code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/PubSaSeCompareExportService.cs

@ -1,15 +1,12 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.Drawing;
using System.Linq; using System.Linq;
using Magicodes.ExporterAndImporter.Excel; using Magicodes.ExporterAndImporter.Excel;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
using Microsoft.OpenApi.Extensions; using Microsoft.OpenApi.Extensions;
using SettleAccount.Bases;
using SettleAccount.Domain.BQ; using SettleAccount.Domain.BQ;
using SettleAccount.Job.SignalR; using SettleAccount.Job.SignalR;
using ShardingCore.Extensions;
using Shouldly; using Shouldly;
using TaskJob.EventArgs; using TaskJob.EventArgs;
using TaskJob.Interfaces; using TaskJob.Interfaces;
@ -19,8 +16,8 @@ using Volo.Abp.ObjectMapping;
using Win.Sfs.BaseData.ImportExcelCommon; using Win.Sfs.BaseData.ImportExcelCommon;
using Win.Sfs.SettleAccount; using Win.Sfs.SettleAccount;
using Win.Sfs.SettleAccount.Entities.BQ; using Win.Sfs.SettleAccount.Entities.BQ;
using Win.Sfs.SettleAccount.Enums;
using Win.Sfs.SettleAccount.Reports; using Win.Sfs.SettleAccount.Reports;
using Win.Sfs.SettleAccount.Repository.SettleAccountJob.Report;
using Win.Sfs.Shared.RepositoryBase; using Win.Sfs.Shared.RepositoryBase;
namespace SettleAccount.Job.Services.Report namespace SettleAccount.Job.Services.Report
@ -174,7 +171,7 @@ namespace SettleAccount.Job.Services.Report
} }
//结算 //结算
var saGroup = from sa in _settleAccountDbContext.Set<PUB_SA_DETAIL>() var saGroup = from sa in _settleAccountDbContext.Set<PUB_SA_DETAIL>()
where sa.BusinessType == businessType where sa.BusinessType == businessType && sa.MappingType == EnumMappingType.None
group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem
select new select new
{ {
@ -201,6 +198,7 @@ namespace SettleAccount.Job.Services.Report
}; };
//发运 //发运
var seGroup = from se in _settleAccountDbContext.Set<PUB_SE_DETAIL>() var seGroup = from se in _settleAccountDbContext.Set<PUB_SE_DETAIL>()
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
{ {
@ -278,12 +276,13 @@ namespace SettleAccount.Job.Services.Report
/// <summary> /// <summary>
/// 获取比对数据 /// 获取比对数据
/// 印度件根据客户零件号对比
/// </summary> /// </summary>
private List<SaSeCompareDiff> GetSaSeCompareDataYinDu(int version) private List<SaSeCompareDiff> GetSaSeCompareDataYinDu(int version)
{ {
//结算 //结算
var saGroup = from sa in _settleAccountDbContext.Set<PUB_SA_DETAIL>() var saGroup = from sa in _settleAccountDbContext.Set<PUB_SA_DETAIL>()
where sa.BusinessType == EnumBusinessType.YinDuJian where sa.BusinessType == EnumBusinessType.YinDuJian && sa.MappingType == EnumMappingType.None
group sa by new { sa.CustomerPartCodeNoSpace } into groupItem group sa by new { sa.CustomerPartCodeNoSpace } into groupItem
select new select new
{ {
@ -308,6 +307,7 @@ namespace SettleAccount.Job.Services.Report
}; };
//发运 //发运
var seGroup = from se in _settleAccountDbContext.Set<PUB_SE_DETAIL>() var seGroup = from se in _settleAccountDbContext.Set<PUB_SE_DETAIL>()
where se.BusinessType == EnumBusinessType.YinDuJian
group se by new { se.CustomerPartCodeNoSpace } into groupItem group se by new { se.CustomerPartCodeNoSpace } into groupItem
select new select new
{ {

88
code/src/Modules/SettleAccount/src/SettleAccount.Job/Services/Report/SaSeCompareExportBaseService.cs

@ -5,6 +5,7 @@ using EFCore.BulkExtensions;
using Magicodes.ExporterAndImporter.Core.Extension; using Magicodes.ExporterAndImporter.Core.Extension;
using Magicodes.ExporterAndImporter.Excel; using Magicodes.ExporterAndImporter.Excel;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using SettleAccount.Bases; using SettleAccount.Bases;
using SettleAccount.Domain.BQ; using SettleAccount.Domain.BQ;
using SettleAccount.Job.SignalR; using SettleAccount.Job.SignalR;
@ -44,7 +45,7 @@ namespace SettleAccount.Job.Services.Report
{ {
//结算 //结算
var saGroup = from sa in _settleAccountDbContext.Set<TSaDetail>() var saGroup = from sa in _settleAccountDbContext.Set<TSaDetail>()
where sa.BusinessType == businessType where sa.BusinessType == businessType && sa.MappingType == EnumMappingType.None
group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem group sa by new { sa.PN, sa.CustomerPartCodeNoSpace } into groupItem
select new select new
{ {
@ -71,6 +72,7 @@ namespace SettleAccount.Job.Services.Report
}; };
//发运 //发运
var seGroup = from se in _settleAccountDbContext.Set<TSeDetail>() var seGroup = from se in _settleAccountDbContext.Set<TSeDetail>()
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
{ {
@ -211,32 +213,64 @@ namespace SettleAccount.Job.Services.Report
}); });
}); });
//获取二次比对上的数据 if (businessType != EnumBusinessType.YinDuJian)
secondMatchHaveSaHaveSes = (from notHaveSaHaveSe in notHaveSaHaveSes {
join haveSaNotHaveSe in haveSaNotHaveSes //获取二次比对上的数据
on new { notHaveSaHaveSe.PN, notHaveSaHaveSe.ReplaceFactoryPartCode } equals new { haveSaNotHaveSe.PN, haveSaNotHaveSe.ReplaceFactoryPartCode } secondMatchHaveSaHaveSes = (from notHaveSaHaveSe in notHaveSaHaveSes
select new SaSeCompareDiff() join haveSaNotHaveSe in haveSaNotHaveSes
{ on new { notHaveSaHaveSe.PN, notHaveSaHaveSe.ReplaceFactoryPartCode } equals new { haveSaNotHaveSe.PN, haveSaNotHaveSe.ReplaceFactoryPartCode }
WmsBillNum = notHaveSaHaveSe.WmsBillNum, select new SaSeCompareDiff()
ShippingDate = notHaveSaHaveSe.ShippingDate, {
SeqNumber = notHaveSaHaveSe.SeqNumber, WmsBillNum = notHaveSaHaveSe.WmsBillNum,
PJISSeqNumber = notHaveSaHaveSe.PJISSeqNumber, ShippingDate = notHaveSaHaveSe.ShippingDate,
CustomerOfflineTime = haveSaNotHaveSe.CustomerOfflineTime, SeqNumber = notHaveSaHaveSe.SeqNumber,
SAQty = haveSaNotHaveSe.SAQty, PJISSeqNumber = notHaveSaHaveSe.PJISSeqNumber,
SEQty = notHaveSaHaveSe.SEQty, CustomerOfflineTime = haveSaNotHaveSe.CustomerOfflineTime,
PN = haveSaNotHaveSe.PN, SAQty = haveSaNotHaveSe.SAQty,
ToLocCode = notHaveSaHaveSe.ToLocCode, SEQty = notHaveSaHaveSe.SEQty,
ToErpLocCode = notHaveSaHaveSe.ToErpLocCode, PN = haveSaNotHaveSe.PN,
Category = EnumPubSaSeCompareCategory.HaveSaHaveSe, ToLocCode = notHaveSaHaveSe.ToLocCode,
SeCustomerPartCode = notHaveSaHaveSe.SeCustomerPartCode, ToErpLocCode = notHaveSaHaveSe.ToErpLocCode,
SeFactoryPartCode = notHaveSaHaveSe.SeFactoryPartCode, Category = EnumPubSaSeCompareCategory.HaveSaHaveSe,
SaCustomerPartCode = haveSaNotHaveSe.SaCustomerPartCode, SeCustomerPartCode = notHaveSaHaveSe.SeCustomerPartCode,
SaFactoryPartCode = haveSaNotHaveSe.SaFactoryPartCode, SeFactoryPartCode = notHaveSaHaveSe.SeFactoryPartCode,
CustomerPartCode = haveSaNotHaveSe.CustomerPartCode, SaCustomerPartCode = haveSaNotHaveSe.SaCustomerPartCode,
PartCodeDesc = haveSaNotHaveSe.PartCodeDesc, SaFactoryPartCode = haveSaNotHaveSe.SaFactoryPartCode,
FactoryPartCode = haveSaNotHaveSe.FactoryPartCode, CustomerPartCode = haveSaNotHaveSe.CustomerPartCode,
ReplaceFactoryPartCode = haveSaNotHaveSe.ReplaceFactoryPartCode PartCodeDesc = haveSaNotHaveSe.PartCodeDesc,
}).ToList(); FactoryPartCode = haveSaNotHaveSe.FactoryPartCode,
ReplaceFactoryPartCode = haveSaNotHaveSe.ReplaceFactoryPartCode
}).ToList();
}
else
{
//获取二次比对上的数据
secondMatchHaveSaHaveSes = (from notHaveSaHaveSe in notHaveSaHaveSes
join haveSaNotHaveSe in haveSaNotHaveSes
on new { notHaveSaHaveSe.ReplaceFactoryPartCode } equals new { haveSaNotHaveSe.ReplaceFactoryPartCode }
select new SaSeCompareDiff()
{
WmsBillNum = notHaveSaHaveSe.WmsBillNum,
ShippingDate = notHaveSaHaveSe.ShippingDate,
SeqNumber = notHaveSaHaveSe.SeqNumber,
PJISSeqNumber = notHaveSaHaveSe.PJISSeqNumber,
CustomerOfflineTime = haveSaNotHaveSe.CustomerOfflineTime,
SAQty = haveSaNotHaveSe.SAQty,
SEQty = notHaveSaHaveSe.SEQty,
PN = haveSaNotHaveSe.PN,
ToLocCode = notHaveSaHaveSe.ToLocCode,
ToErpLocCode = notHaveSaHaveSe.ToErpLocCode,
Category = EnumPubSaSeCompareCategory.HaveSaHaveSe,
SeCustomerPartCode = notHaveSaHaveSe.SeCustomerPartCode,
SeFactoryPartCode = notHaveSaHaveSe.SeFactoryPartCode,
SaCustomerPartCode = haveSaNotHaveSe.SaCustomerPartCode,
SaFactoryPartCode = haveSaNotHaveSe.SaFactoryPartCode,
CustomerPartCode = haveSaNotHaveSe.CustomerPartCode,
PartCodeDesc = haveSaNotHaveSe.PartCodeDesc,
FactoryPartCode = haveSaNotHaveSe.FactoryPartCode,
ReplaceFactoryPartCode = haveSaNotHaveSe.ReplaceFactoryPartCode
}).ToList();
}
return secondMatchHaveSaHaveSes; return secondMatchHaveSaHaveSes;
} }

Loading…
Cancel
Save