去重
This commit is contained in:
@@ -24,6 +24,9 @@ namespace WMS.Web.Domain.Infrastructure
|
|||||||
Task<List<OutStockTask>> GetEntityList(List<int> ids);
|
Task<List<OutStockTask>> GetEntityList(List<int> ids);
|
||||||
/// 查询实体集合
|
/// 查询实体集合
|
||||||
Task<List<OutStockTask>> GetEntityListByStatus();
|
Task<List<OutStockTask>> GetEntityListByStatus();
|
||||||
|
Task<List<SerialNumbers>> GetEntityList(List<string> serialNumbers);
|
||||||
|
Task<List<SerialNumbers>> GetEntityListBySuitNumber(string suitNumber);
|
||||||
|
|
||||||
/// 查询实体集合(明细Id)
|
/// 查询实体集合(明细Id)
|
||||||
Task<List<OutStockTask>> GetEntityListByDetailIds(List<int> ids);
|
Task<List<OutStockTask>> GetEntityListByDetailIds(List<int> ids);
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -707,8 +707,16 @@ namespace WMS.Web.Domain.Services
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
|
string hadsavel = "";
|
||||||
foreach (var s in d.SerialNumberList)
|
foreach (var s in d.SerialNumberList)
|
||||||
{
|
{
|
||||||
|
//先跟据条码查询对应的
|
||||||
|
List<string> l= new List<string>();
|
||||||
|
l.Add(s.ToString());
|
||||||
|
|
||||||
|
var serialNumbers = await _outStockTaskRepositories.GetEntityList(l);
|
||||||
|
// hadsavel = hadsavel + serialNumbers[0].TwoSerialNumber;
|
||||||
list.Add(new ExportInfoResponse()
|
list.Add(new ExportInfoResponse()
|
||||||
{
|
{
|
||||||
SourceBillNo = response.SourceBillNo,
|
SourceBillNo = response.SourceBillNo,
|
||||||
@@ -727,15 +735,26 @@ namespace WMS.Web.Domain.Services
|
|||||||
BoxWeight = d.BoxWeight,
|
BoxWeight = d.BoxWeight,
|
||||||
Qty = d.Qty,
|
Qty = d.Qty,
|
||||||
AccruedQty = d.AccruedQty,
|
AccruedQty = d.AccruedQty,
|
||||||
SerialNumbers = s
|
SerialNumbers = serialNumbers[0].TwoSerialNumber
|
||||||
});
|
});
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
var list2 = list.GroupBy(p => new { p.SourceBillNo, p.SaleBillNo,p.ReceiptCustomer, p.CreateTime, p.BoxBillNo, p.Specifications, p.MaterialName, p.MaterialNumber, p.BarCode, p.IndexNumber, p.BoxLength, p.BoxWide, p.BoxHigh, p.BoxWeight, p.Qty, p.AccruedQty, p.SerialNumbers }) // Group by Name and Age properties
|
||||||
|
.Select(g => g.First()) // Select the first item of each group (arbitrary choice)
|
||||||
|
.ToList(); // Convert back to list if needed. If you only need the distinct items, you can skip this step.
|
||||||
|
|
||||||
|
// list.Distinct().ToList();
|
||||||
|
|
||||||
var _exportExcelService = scope.ServiceProvider.GetRequiredService<IExportExcelService>();
|
var _exportExcelService = scope.ServiceProvider.GetRequiredService<IExportExcelService>();
|
||||||
await _exportExcelService.Export(list, fileName, loginInfo.UserInfo.StaffId, loginInfo.UserInfo.CompanyId, FileDownLoadOrderType.OutStockTaskInfo);
|
await _exportExcelService.Export(list2, fileName, loginInfo.UserInfo.StaffId, loginInfo.UserInfo.CompanyId, FileDownLoadOrderType.OutStockTaskInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
|
|||||||
@@ -403,7 +403,8 @@ namespace WMS.Web.Domain.Services
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
//序列号操作记录
|
//
|
||||||
|
//操作记录
|
||||||
var res = await this.SerialNumberOperate(sList, false);
|
var res = await this.SerialNumberOperate(sList, false);
|
||||||
//提交事务
|
//提交事务
|
||||||
if (isTransaction)
|
if (isTransaction)
|
||||||
|
|||||||
@@ -374,6 +374,37 @@ namespace WMS.Web.Repositories
|
|||||||
}
|
}
|
||||||
return details;
|
return details;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 根据序列号查询
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="serialNumbers"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<List<SerialNumbers>> GetEntityList(List<string> serialNumbers)
|
||||||
|
{
|
||||||
|
var res = await _context.SerialNumbers
|
||||||
|
// .Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.ToListAsync();
|
||||||
|
var res_c = res.Clone();
|
||||||
|
|
||||||
|
//var s_e = res.Select(s => s.SerialNumber).ToList();
|
||||||
|
var s_e = res.Select(s => s.TwoSerialNumber).ToList();
|
||||||
|
//在序列表里没找到的序列码 则到老ops序列码数据里去处理 list比较 取差集
|
||||||
|
var s_c = serialNumbers.Except(s_e);
|
||||||
|
if (s_c.Count() > 0)
|
||||||
|
{
|
||||||
|
var entitys_ops = serialNumbers.Where(w => s_c.Contains(w)).ToList();
|
||||||
|
var r_o = await _context.SerialNumbers_Ops
|
||||||
|
.Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.ToListAsync();
|
||||||
|
|
||||||
|
res_c.AddRange(_mapper.Map<List<SerialNumbers>>(r_o.Clone()));
|
||||||
|
}
|
||||||
|
|
||||||
|
return res_c;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 根据序列号搜索
|
/// 根据序列号搜索
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -621,6 +621,69 @@ namespace WMS.Web.Repositories
|
|||||||
return res.Clone();
|
return res.Clone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 根据序列号查询
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="serialNumbers"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<List<SerialNumbers>> GetEntityList(List<string> serialNumbers)
|
||||||
|
{
|
||||||
|
var res = await _context.SerialNumbers
|
||||||
|
// .Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.ToListAsync();
|
||||||
|
var res_c = res.Clone();
|
||||||
|
|
||||||
|
//var s_e = res.Select(s => s.SerialNumber).ToList();
|
||||||
|
var s_e = res.Select(s => s.TwoSerialNumber).ToList();
|
||||||
|
//在序列表里没找到的序列码 则到老ops序列码数据里去处理 list比较 取差集
|
||||||
|
var s_c = serialNumbers.Except(s_e);
|
||||||
|
if (s_c.Count() > 0)
|
||||||
|
{
|
||||||
|
var entitys_ops = serialNumbers.Where(w => s_c.Contains(w)).ToList();
|
||||||
|
var r_o = await _context.SerialNumbers_Ops
|
||||||
|
.Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
.ToListAsync();
|
||||||
|
|
||||||
|
res_c.AddRange(_mapper.Map<List<SerialNumbers>>(r_o.Clone()));
|
||||||
|
}
|
||||||
|
|
||||||
|
return res_c;
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// 根据套装码获取序列码
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="boxIds"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<List<SerialNumbers>> GetEntityListBySuitNumber(string suitNumber)
|
||||||
|
{
|
||||||
|
|
||||||
|
return await _context.SerialNumbers.AsNoTracking()
|
||||||
|
.Where(f => f.SerialNumber.Contains(suitNumber))
|
||||||
|
.ToListAsync();
|
||||||
|
|
||||||
|
//var res = await _context.SerialNumbers
|
||||||
|
// .Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
// .ToListAsync();
|
||||||
|
//var res_c = res.Clone();
|
||||||
|
|
||||||
|
//var s_e = res.Select(s => s.SerialNumber).ToList();
|
||||||
|
////在序列表里没找到的序列码 则到老ops序列码数据里去处理 list比较 取差集
|
||||||
|
//var s_c = serialNumbers.Except(s_e);
|
||||||
|
//if (s_c.Count() > 0)
|
||||||
|
//{
|
||||||
|
// var entitys_ops = serialNumbers.Where(w => s_c.Contains(w)).ToList();
|
||||||
|
// var r_o = await _context.SerialNumbers_Ops
|
||||||
|
// .Where(f => serialNumbers.Contains(f.SerialNumber))
|
||||||
|
// .ToListAsync();
|
||||||
|
|
||||||
|
// res_c.AddRange(_mapper.Map<List<SerialNumbers>>(r_o.Clone()));
|
||||||
|
//}
|
||||||
|
|
||||||
|
//return res_c;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public string GetInStock(List<string> codes, int companyId, string orgCode)
|
public string GetInStock(List<string> codes, int companyId, string orgCode)
|
||||||
{
|
{
|
||||||
var list = codes.Where(w => w != null).ToList();
|
var list = codes.Where(w => w != null).ToList();
|
||||||
|
|||||||
Reference in New Issue
Block a user