public async Task <IActionResult> PreviewEdit(ApproveOrderModel model) { var order = await _processOrderService.GetOrderById(model.OrdersId); if (order == null) { return(RedirectToAction("ApprovedOrders")); } if (ModelState.IsValid) { var result = await _processOrderService.UpdateOrder(order, model); if (result != null) { SuccessNotification("The order data has been updated successfully."); return(RedirectToAction("PreviewEdit", "ProcessOrders", new { OrdersID = model.OrdersId })); } else { ModelState.AddModelError("", "Something went wrong while saving record."); } } return(View(model)); }
public async Task <Orders> UpdateOrder(Orders orders, ApproveOrderModel model) { orders.OsellingPrice = model.OsellingPrice; orders.Oqty = model.Oqty; orders.Ofor = model.Ofor; orders.OsalesTaxRate = model.OsalesTaxRate; orders.Oby = model.Oby; orders.Ogl = model.Ogl; orders.Onote = model.Onote; orders.Odate = model.Odate; orders = await _orderRepository.UpdateAsync(orders); return(orders); }
/// <summary> /// 统计审批人审批(待审批和已审批)申请单 /// </summary> /// <param name="userId">审批人</param> /// <param name="status">申请单状态</param> /// <returns>审批人审批申请单</returns> public List <ApproveOrderModel> SummaryApproveOrders(int userId, OrderStatus?status = null) { if (userId < 1) { throw new InvalidOperationException("无效的审批人Id。"); } if (status == null) { status = OrderStatus.Invalid; } using (var dbContext = new MissionskyOAEntities()) { var entities = dbContext.Orders.SqlQuery(string.Format(SUMMARY_APPROVE_ORDERS, userId)).ToList(); //查询审批人所有审批单(已审批和待审批) entities = entities.Where( it => status == OrderStatus.Invalid || (!it.Status.HasValue && status == OrderStatus.Apply) || it.Status == (int)status) .ToList(); var approveOrders = new List <ApproveOrderModel>(); var users = dbContext.Users; //所有用户 var details = dbContext.OrderDets; //所有申请详细 entities.ToList().ForEach(entity => { if (approveOrders.Any(o => o.OrderNo == entity.OrderNo) == false) //过滤批量申请单 { var detail = details.FirstOrDefault(it => it.OrderId == entity.Id); //申请单详细 var user = users.FirstOrDefault(it => it.Id == entity.UserId); //申请人 //构造审批单列表 if (detail != null && entity.Status.HasValue && user != null) { var order = new ApproveOrderModel() { OrderNo = entity.OrderNo, Status = (OrderStatus)entity.Status.Value, OrderType = (OrderType)entity.OrderType, OrderUsers = _userService.GetOrderUsers(dbContext, entity.OrderNo), //申请单用户 IsRevoked = entity.RefOrderId.HasValue, //StartDate = Convert.ToDateTime(detail.StartDate.ToShortDateString() +" "+ detail.StartTime.ToString()), //EndDate = Convert.ToDateTime(detail.EndDate.ToShortDateString() +" "+ detail.EndTime.ToString()), AppliedTime = detail.StartDate, IOHours = detail.IOHours, IsApproved = true //已审批 }; if (entity.NextAudit.HasValue && entity.NextAudit.Value == userId) //是否当前用户未审批 { order.IsApproved = false; } approveOrders.Add(order); } } }); return(approveOrders.OrderByDescending(it => it.AppliedTime).ToList()); } }