This commit is contained in:
tongfei
2024-04-17 16:33:51 +08:00
parent 7700bc37fb
commit 2e87e970a4
4 changed files with 56 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ using Microsoft.EntityFrameworkCore.Storage;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Core;
@@ -762,7 +763,18 @@ namespace WMS.Web.Repositories
}
if (dto.SerialNumbers != null && dto.SerialNumbers.Count != 0)
{
var tids= await _context.InStockDetails.Where(w => w.SerialNumbers.SequenceEqual(dto.SerialNumbers)).GroupBy(x => x.TaskId).Select(x => x.Key).ToListAsync();
//var tids= await _context.InStockDetails.Where(a => a.SerialNumbers.Intersect(dto.SerialNumbers).Count() == dto.SerialNumbers.Count).GroupBy(x => x.TaskId).Select(x => x.Key).ToListAsync();
string str = $"select * from t_wms_instock_details where ";
for (int i = 0; i < dto.SerialNumbers.Count(); i++)
{
if (i == 0)
str += $"SerialNumbers like '%\"{dto.SerialNumbers[i]}\"%'";
else
str += $" or SerialNumbers like '%\"{dto.SerialNumbers[i]}\"%'";
}
var fs = FormattableStringFactory.Create(str);
var InStockDetails = _context.Set<InStockDetails>().FromSqlInterpolated(fs).ToList();
var tids=InStockDetails.GroupBy(x => x.TaskId).Select(x => x.Key).ToList();
taskIds.AddRange(tids);
}