物料导入功能TODO增加
This commit is contained in:
@@ -145,6 +145,8 @@ namespace DOAN.Service.BZFM
|
||||
/// <returns></returns>
|
||||
public int Importmaterial(IFormFile formFile)
|
||||
{
|
||||
|
||||
// TODO 1.构建空的待导入数据集合MmMaterialExcelDto,多余部分删除
|
||||
int result = 0;
|
||||
List<ProWorkorder> materialList = new();
|
||||
DateTime dateValue = DateTime.MinValue;
|
||||
@@ -153,6 +155,7 @@ namespace DOAN.Service.BZFM
|
||||
.Queryable<MmMaterialExcelDto>()
|
||||
.Where(it => it.Type == "type")
|
||||
.ToList();
|
||||
// TODO 2.使用NPOI读取Excel内容,填充到MmMaterialExcelDto集合中,注意列的对应关系,id不要忘,且跳过标题行,目前需要从第2行开始读取注意修改row
|
||||
using (var stream = formFile.OpenReadStream())
|
||||
{
|
||||
try
|
||||
@@ -297,6 +300,8 @@ namespace DOAN.Service.BZFM
|
||||
|
||||
|
||||
}
|
||||
// TODO 3.调用SplitInsert方法实现导入操作,注意主键列的配置(建议优化为,ID相同则修改,不同则新增)
|
||||
|
||||
var x = Context
|
||||
.Storageable(material)
|
||||
.SplitInsert(it => !it.Any())
|
||||
@@ -316,8 +321,7 @@ namespace DOAN.Service.BZFM
|
||||
};
|
||||
//输出统计
|
||||
Console.WriteLine(importResult);
|
||||
|
||||
// 收集错误与忽略信息
|
||||
// 4.收集错误与忽略信息,返回导入结果ImportResultDto 提示,需要修改IServer相关返回格式
|
||||
foreach (var item in x.ErrorList)
|
||||
{
|
||||
importResult.Errors.Add(
|
||||
|
||||
Reference in New Issue
Block a user