This commit is contained in:
DEVICE8\12494
2023-05-17 13:59:04 +08:00

View File

@@ -84,7 +84,7 @@ namespace Tnb.BasicData
public async Task<dynamic> GetMaterialSelectInfo(MaterialSelectQueryInput queryInput)
{
var db = _repository.AsSugarClient();
List<string> ids = await GetAllChildrenMaterialId(queryInput.ebom_id);
List<string> ids = await GetAllChildrenMaterialId(queryInput.ebom_id,0);
BasEbomH ebom = await db.Queryable<BasEbomH>().Where(x => x.id == queryInput.ebom_id).SingleAsync();
ids.Add(ebom.material_id);
var result = await db.Queryable<BasMaterial>()
@@ -109,10 +109,11 @@ namespace Tnb.BasicData
/// 获取物料清单下所子集物料id
/// </summary>
/// <returns></returns>
private async Task<List<string>> GetAllChildrenMaterialId(string ebomId)
private async Task<List<string>> GetAllChildrenMaterialId(string ebomId,int index)
{
if (string.IsNullOrEmpty(ebomId)) return new List<string>();
List<string> ids = new List<string>();
if (index++ > 10) return ids;
var list = await _repository.AsSugarClient().Queryable<BasEbomD>().Where(x => x.ebom_id == ebomId)
.Select<string>(x => x.material_id).ToListAsync();
if (list != null && list.Count > 0)
@@ -121,7 +122,7 @@ namespace Tnb.BasicData
{
//获取最新创建的物料清单
var ebom = await _repository.AsSugarClient().Queryable<BasEbomH>().Where(x=>x.material_id==id).OrderByDescending(x=>x.create_time).FirstAsync();
ids.AddRange(await GetAllChildrenMaterialId(ebom?.id));
ids.AddRange(await GetAllChildrenMaterialId(ebom?.id,index));
}
ids.AddRange(list);
}