/// <summary> /// 更新制造清单信息 /// </summary> /// <param name="inputDtos"></param> /// <returns></returns> public async Task <OperationResult> Update(params ProManufacturingBillInfoInputDto[] inputDtos) { inputDtos.CheckNotNull("inputDtos"); foreach (var dtoData in inputDtos) { if (string.IsNullOrEmpty(dtoData.BillCode)) { return(new OperationResult(OperationResultType.Error, "请正确填写清单编号!")); } if (string.IsNullOrEmpty(dtoData.BillName)) { return(new OperationResult(OperationResultType.Error, "请正确填写清单名称!")); } if (ProManufacturingBillInfoRepository.CheckExists(x => x.BillCode == dtoData.BillCode && x.Id != dtoData.Id)) { return(new OperationResult(OperationResultType.Error, "该清单编号已存在,无法保存!")); } if (ProManufacturingBillInfoRepository.CheckExists(x => x.BillName == dtoData.BillName && x.Id != dtoData.Id)) { return(new OperationResult(OperationResultType.Error, "该清单名称已存在,无法保存!")); } dtoData.Product = ProductInfoRepository.TrackEntities.Where(m => m.Id == dtoData.Product_Id).FirstOrDefault(); if (Equals(dtoData.Product, null)) { return(new OperationResult(OperationResultType.Error, "对应的产品不存在,无法保存!")); } dtoData.ProductionRule = ProductionRuleInfoRepository.TrackEntities.Where(m => m.Id == dtoData.ProductionRule_Id).FirstOrDefault(); if (Equals(dtoData.ProductionRule, null)) { return(new OperationResult(OperationResultType.Error, "对应的配方不存在,无法保存!")); } if (Equals(dtoData.BillType, null) || dtoData.BillType == 0) { return(new OperationResult(OperationResultType.Error, "请选择制造清单类型!")); } } ProManufacturingBillInfoRepository.UnitOfWork.BeginTransaction(); var result = await ProManufacturingBillInfoRepository.UpdateAsync(inputDtos); ProManufacturingBillInfoRepository.UnitOfWork.Commit(); return(result); }