1539
This commit is contained in:
@@ -34,7 +34,6 @@ namespace DOAN.Service.BZFM
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取详情
|
||||
/// </summary>
|
||||
@@ -42,9 +41,7 @@ namespace DOAN.Service.BZFM
|
||||
/// <returns></returns>
|
||||
public MmMaterial GetInfo(int Id)
|
||||
{
|
||||
var response = Queryable()
|
||||
.Where(x => x.Id == Id)
|
||||
.First();
|
||||
var response = Queryable().Where(x => x.Id == Id).First();
|
||||
|
||||
return response;
|
||||
}
|
||||
@@ -76,11 +73,24 @@ namespace DOAN.Service.BZFM
|
||||
/// <returns></returns>
|
||||
private static Expressionable<MmMaterial> QueryExp(MmMaterialQueryDto parm)
|
||||
{
|
||||
var predicate = Expressionable.Create<MmMaterial>()
|
||||
.AndIF(!string.IsNullOrEmpty(parm.CategoryCode), m => m.CategoryCode.Contains(parm.CategoryCode))
|
||||
.AndIF(!string.IsNullOrEmpty(parm.MaterialName), m => m.MaterialName.Contains(parm.MaterialName))
|
||||
.AndIF(!string.IsNullOrEmpty(parm.MaterialCode), m => m.MaterialCode.Contains(parm.MaterialCode))
|
||||
.AndIF(!string.IsNullOrEmpty(parm.Specification), m => m.Specification.Contains(parm.Specification))
|
||||
var predicate = Expressionable
|
||||
.Create<MmMaterial>()
|
||||
.AndIF(
|
||||
!string.IsNullOrEmpty(parm.CategoryCode),
|
||||
m => m.CategoryCode.Contains(parm.CategoryCode)
|
||||
)
|
||||
.AndIF(
|
||||
!string.IsNullOrEmpty(parm.MaterialName),
|
||||
m => m.MaterialName.Contains(parm.MaterialName)
|
||||
)
|
||||
.AndIF(
|
||||
!string.IsNullOrEmpty(parm.MaterialCode),
|
||||
m => m.MaterialCode.Contains(parm.MaterialCode)
|
||||
)
|
||||
.AndIF(
|
||||
!string.IsNullOrEmpty(parm.Specification),
|
||||
m => m.Specification.Contains(parm.Specification)
|
||||
)
|
||||
.AndIF(!string.IsNullOrEmpty(parm.Type), m => m.Type.Contains(parm.Type))
|
||||
.AndIF(!string.IsNullOrEmpty(parm.Status), m => m.Status == parm.Status);
|
||||
return predicate;
|
||||
@@ -92,19 +102,28 @@ namespace DOAN.Service.BZFM
|
||||
/// <param name="parm"></param>
|
||||
/// <returns></returns>
|
||||
/// <exception cref="NotImplementedException"></exception>
|
||||
public List<MmMaterialCategoryOptionsDto> GetMmMaterialCategoryOptions(MmMaterialCategoryDto parm)
|
||||
public List<MmMaterialCategoryOptionsDto> GetMmMaterialCategoryOptions(
|
||||
MmMaterialCategoryDto parm
|
||||
)
|
||||
{
|
||||
try
|
||||
{
|
||||
return Context.Queryable<MmMaterialCategory>()
|
||||
.WhereIF(!string.IsNullOrEmpty(parm.CategoryCode),it => it.CategoryCode.Contains(parm.CategoryCode))
|
||||
.WhereIF(!string.IsNullOrEmpty(parm.CategoryName), it => it.CategoryName.Contains(parm.CategoryName))
|
||||
return Context
|
||||
.Queryable<MmMaterialCategory>()
|
||||
.WhereIF(
|
||||
!string.IsNullOrEmpty(parm.CategoryCode),
|
||||
it => it.CategoryCode.Contains(parm.CategoryCode)
|
||||
)
|
||||
.WhereIF(
|
||||
!string.IsNullOrEmpty(parm.CategoryName),
|
||||
it => it.CategoryName.Contains(parm.CategoryName)
|
||||
)
|
||||
.Select(it => new MmMaterialCategoryOptionsDto
|
||||
{
|
||||
Label = it.CategoryName,
|
||||
Value = it.CategoryCode
|
||||
}
|
||||
).ToList();
|
||||
Value = it.CategoryCode,
|
||||
})
|
||||
.ToList();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
@@ -142,11 +161,12 @@ namespace DOAN.Service.BZFM
|
||||
}
|
||||
x.Description = x.Description.IsEmpty() ? "数据导入" : x.Description;
|
||||
});
|
||||
var x = Context.Storageable(material)
|
||||
var x = Context
|
||||
.Storageable(material)
|
||||
.SplitInsert(it => !it.Any())
|
||||
.WhereColumns(it => new { it.Id, it.MaterialCode })//如果不是主键可以这样实现(多字段it=>new{it.x1,it.x2})
|
||||
.WhereColumns(it => new { it.Id, it.MaterialCode }) //如果不是主键可以这样实现(多字段it=>new{it.x1,it.x2})
|
||||
.ToStorage();
|
||||
var result = x.AsInsertable.ExecuteCommand();//插入可插入部分;
|
||||
var result = x.AsInsertable.ExecuteCommand(); //插入可插入部分;
|
||||
|
||||
var importResult = new ImportResultDto
|
||||
{
|
||||
@@ -156,29 +176,44 @@ namespace DOAN.Service.BZFM
|
||||
ErrorCount = x.ErrorList.Count,
|
||||
IgnoredCount = x.IgnoreList.Count,
|
||||
Deleted = x.DeleteList.Count,
|
||||
Total = x.TotalList.Count
|
||||
Total = x.TotalList.Count,
|
||||
};
|
||||
//输出统计
|
||||
//输出统计
|
||||
Console.WriteLine(importResult);
|
||||
|
||||
// 收集错误与忽略信息
|
||||
foreach (var item in x.ErrorList)
|
||||
{
|
||||
importResult.Errors.Add(new ImportErrorDto { MaterialCode = item.Item.MaterialCode, Message = item.StorageMessage });
|
||||
importResult.Errors.Add(
|
||||
new ImportErrorDto
|
||||
{
|
||||
MaterialCode = item.Item.MaterialCode,
|
||||
Message = item.StorageMessage,
|
||||
}
|
||||
);
|
||||
}
|
||||
foreach (var item in x.IgnoreList)
|
||||
{
|
||||
importResult.Ignored.Add(new ImportErrorDto { MaterialCode = item.Item.MaterialCode, Message = item.StorageMessage });
|
||||
importResult.Ignored.Add(
|
||||
new ImportErrorDto
|
||||
{
|
||||
MaterialCode = item.Item.MaterialCode,
|
||||
Message = item.StorageMessage,
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
return importResult;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导出物料表列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public PagedInfo<MmMaterialExcelDto> SelectMaterialList(MmMaterialQueryDto material, PagerInfo pager)
|
||||
/// 导出物料表列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public PagedInfo<MmMaterialExcelDto> SelectMaterialList(
|
||||
MmMaterialQueryDto material,
|
||||
PagerInfo pager
|
||||
)
|
||||
{
|
||||
// Use the same predicate builder as GetList to support consistent filtering
|
||||
var predicate = QueryExp(material);
|
||||
@@ -186,17 +221,13 @@ namespace DOAN.Service.BZFM
|
||||
var query = Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.Select(it => new MmMaterialExcelDto
|
||||
.Select(it => new MmMaterialCategoryOptionsDto
|
||||
{
|
||||
Label = it.CategoryName,
|
||||
Value = it.CategoryCode
|
||||
}
|
||||
).ToList()
|
||||
;
|
||||
|
||||
|
||||
Id = it.Id,
|
||||
Type = it.Type,
|
||||
MaterialCode = it.MaterialCode,
|
||||
});
|
||||
|
||||
return query.ToPage(pager);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user