diff --git a/BasicData/Tnb.BasicData/BasMbomService.cs b/BasicData/Tnb.BasicData/BasMbomService.cs index 3ae20b9a..6eaf08fe 100644 --- a/BasicData/Tnb.BasicData/BasMbomService.cs +++ b/BasicData/Tnb.BasicData/BasMbomService.cs @@ -229,6 +229,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 processes = new List(); List inputs = new List(); @@ -304,8 +311,15 @@ namespace Tnb.BasicData } else//修改 { - string orgId = _userManager.GetUserInfo().Result.organizeId; - await _repository.UpdateAsync(x => new BasMbom() + 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() { // org_id = orgId, material_id = mbomSaveDataInput.material_id, @@ -405,13 +419,27 @@ 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); + } } - + } return result.IsSuccess ? "保存成功" : result.ErrorMessage; } diff --git a/BasicData/Tnb.BasicData/BasRouteService.cs b/BasicData/Tnb.BasicData/BasRouteService.cs index d23bb39a..ca2d37fc 100644 --- a/BasicData/Tnb.BasicData/BasRouteService.cs +++ b/BasicData/Tnb.BasicData/BasRouteService.cs @@ -62,6 +62,7 @@ namespace Tnb.BasicData basRouteH.id = newId; basRouteH.code += "_复制的请修改"; basRouteH.name += "_复制的请修改"; + basRouteH.status = "0"; DbResult result = await _repository.AsSugarClient().Ado.UseTranAsync(async () => {