public ResModel UpdatePartsReturn(PartsReturnDto partsReturnDto, UserDto operationUser) { using (var db = new ModelContext()) { var partsReturn = db.PartsReturn.FirstOrDefault(i => i.Id == partsReturnDto.Id); if (partsReturn == null) { return(new ResModel() { Msg = "更新配件出库失败,未找到该配件出库", Success = false }); } var partsOuts = partsReturnDto.PartsOuts.Select(i => new PartsOut() { Id = Guid.NewGuid(), PartsReturnId = partsReturn.Id, PartsId = i.PartsId, Count = i.Count, Description = i.Description }); using (var scope = new TransactionScope()) { try { partsReturn.SupplierId = partsReturnDto.SupplierId; partsReturn.ApplyUser = operationUser.Name; partsReturn.OperationTime = DateTime.Now; partsReturn.Description = partsReturnDto.Description; db.PartsOut.RemoveRange(partsReturn.PartsOuts); db.SaveChanges(); db.PartsOut.AddRange(partsOuts); db.SaveChanges(); scope.Complete(); } catch (Exception e) { return(new ResModel() { Msg = "更新配件出库失败", Success = false }); } return(new ResModel() { Msg = "更新配件出库成功", Success = true }); } } }
public ActionResult Update(PartsReturnDto partsReturnDto) { var currentUser = Session["LogUser"] as UserDto; return(Json(_partsReturnService.UpdatePartsReturn(partsReturnDto, currentUser))); }
public ResModel UpdatePartsReturn(PartsReturnDto partsReturnDto, UserDto operationUser) { return(_partsReturnRepository.UpdatePartsReturn(partsReturnDto, operationUser)); }
public ResModel AddPartsReturn(PartsReturnDto partsReturnDto, UserDto operationUser) { using (var db = new ModelContext()) { var billNo = ""; var lastPartsReturnIndex = 0; var dateFormat = ""; var index = 0; var indexStr = ""; var partsReturnBill = db.BillNoSetting.FirstOrDefault(i => i.Name == BillTypeName.配件出库.ToString()); if (partsReturnBill.DailyReset) { var lastPartsReturn = db.PartsReturn.Where(i => i.CreateTime.Value.Day == DateTime.Now.Day).OrderByDescending(i => i.CreateTime).FirstOrDefault(); lastPartsReturnIndex = lastPartsReturn?.BillNoIndex ?? 0; } else { var lastPartsReturn = db.PartsReturn.OrderByDescending(i => i.CreateTime).FirstOrDefault(); lastPartsReturnIndex = lastPartsReturn?.BillNoIndex ?? 0; } index = lastPartsReturnIndex + 1; indexStr = index.ToString(); switch (partsReturnBill.SerNoLength) { case BillSerNoLength.两位: indexStr = indexStr.PadLeft(2, '0'); break; case BillSerNoLength.位: indexStr = indexStr.PadLeft(3, '0'); break; case BillSerNoLength.四位: indexStr = indexStr.PadLeft(4, '0'); break; case BillSerNoLength.五位: indexStr = indexStr.PadLeft(5, '0'); break; case BillSerNoLength.六位: indexStr = indexStr.PadLeft(6, '0'); break; } switch (partsReturnBill.DateFormat) { case BillDateFormat.简洁年月日: dateFormat = DateTime.Now.ToString("yyMMdd"); break; case BillDateFormat.完整年月日: dateFormat = DateTime.Now.ToString("yyyyMMdd"); break; case BillDateFormat.无: dateFormat = ""; break; } billNo = partsReturnBill.Prefix + dateFormat + indexStr; var partsReturn = new PartsReturn() { Id = Guid.NewGuid(), SupplierId = partsReturnDto.SupplierId, BillNo = billNo, BillNoIndex = index, State = PartsReturnState.未审核, ApplyUser = operationUser.Name, OperationTime = DateTime.Now, Description = partsReturnDto.Description, CreateTime = DateTime.Now }; var partsOuts = partsReturnDto.PartsOuts.Select(i => new PartsOut() { Id = Guid.NewGuid(), PartsReturnId = partsReturn.Id, PartsId = i.PartsId, Count = i.Count, Description = i.Description }); using (var scope = new TransactionScope()) { try { db.PartsReturn.Add(partsReturn); db.SaveChanges(); db.PartsOut.AddRange(partsOuts); db.SaveChanges(); scope.Complete(); } catch (Exception e) { return(new ResModel() { Msg = "添加配件出库单失败", Success = false }); } return(new ResModel() { Msg = "添加配件出库单成功", Success = true }); } } }