生成bom版本号唯一性校验

This commit is contained in:
2023-05-23 08:58:34 +08:00
parent 486d76e3d0
commit 38b98060fb

View File

@@ -133,6 +133,7 @@ namespace Tnb.BasicData
[HttpPost]
public async Task<string> SaveData(MbomSaveDataInput mbomSaveDataInput)
{
ErrorCode errorCode = ErrorCode.COM1008;
DbResult<bool> result = await _repository.AsSugarClient().Ado.UseTranAsync(async () =>
{
//新增
@@ -158,6 +159,13 @@ namespace Tnb.BasicData
create_time = DateTime.Now,
};
if (await _repository.IsAnyAsync(x =>
x.material_id == mbomSaveDataInput.material_id && x.version == mbomSaveDataInput.version))
{
errorCode = ErrorCode.COM1004;
throw Oops.Oh(ErrorCode.COM1004);
}
await _repository.InsertAsync(mbom);
List<BasMbomProcess> processes = new List<BasMbomProcess>();
List<BasMbomInput> inputs = new List<BasMbomInput>();
@@ -233,6 +241,13 @@ namespace Tnb.BasicData
}
else//修改
{
if (await _repository.IsAnyAsync(x =>
x.material_id == mbomSaveDataInput.material_id && x.version == mbomSaveDataInput.version && x.id!=mbomSaveDataInput.id))
{
errorCode = ErrorCode.COM1004;
throw Oops.Oh(ErrorCode.COM1004);
}
string orgId = _userManager.GetUserInfo().Result.organizeId;
await _repository.UpdateAsync(x=>new BasMbom()
{
@@ -334,11 +349,25 @@ namespace Tnb.BasicData
{
if (!string.IsNullOrEmpty(mbomSaveDataInput.id))
{
throw Oops.Oh(ErrorCode.COM1001);
if (errorCode != ErrorCode.COM1004)
{
throw Oops.Oh(ErrorCode.COM1001);
}
else
{
throw Oops.Oh(errorCode);
}
}
else
{
throw Oops.Oh(ErrorCode.COM1000);
if (errorCode != ErrorCode.COM1004)
{
throw Oops.Oh(ErrorCode.COM1000);
}
else
{
throw Oops.Oh(errorCode);
}
}
}