public ValidationMsg SaveAck(SlsBuyerOrder model, int userId) { try { var entity = _unit.SlsBuyerOrederRepository.GetByID(model.BuyerOrderID); entity.AcknowledgementStatus = model.AcknowledgementStatus; entity.AckDate = model.AckDate == null ? (DateTime?)null : DalCommon.SetDate(model.AckDate); entity.ProposedShipmentDate = model.ProposedShipmentDate == null ? (DateTime?)null : DalCommon.SetDate(model.ProposedShipmentDate); entity.DeliveryLastDate = model.DeliveryLastDate == null ? (DateTime?)null : DalCommon.SetDate(model.DeliveryLastDate); entity.ExpectedProdStartDate = model.ExpectedProdStartDate == null ? (DateTime?)null : DalCommon.SetDate(model.ExpectedProdStartDate); entity.AcknowledgeNote = model.AcknowledgeNote; entity.ModifiedBy = userId; entity.ModifiedOn = DateTime.Now; _unit.SlsBuyerOrederRepository.Update(entity); _save = _unit.IsSaved(); if (_save) { _validationMsg.ReturnId = entity.BuyerOrderID; _validationMsg.Type = Enums.MessageType.Success; _validationMsg.Msg = "Saved successfully."; } } catch { _validationMsg.Type = Enums.MessageType.Error; _validationMsg.Msg = "Failed to save."; } return(_validationMsg); }
private SLS_BuyerOrder ConvertOrder(SlsBuyerOrder model, int userId, string url) { var entity = model.BuyerOrderID == 0 ? new SLS_BuyerOrder() : (from b in _context.SLS_BuyerOrder.AsEnumerable() where b.BuyerOrderID == model.BuyerOrderID select b).FirstOrDefault(); entity.BuyerOrderID = model.BuyerOrderID; entity.BuyerOrderNo = model.BuyerOrderNo ?? DalCommon.GetPreDefineNextCodeByUrl(url); entity.OrderNo = model.OrderNo; entity.BuyerOrderDate = model.BuyerOrderDate == null ? DateTime.Now : DalCommon.SetDate(model.BuyerOrderDate); entity.OrderFrom = model.OrderFrom; entity.BuyerOrderCategory = model.BuyerOrderCategory; entity.BuyerID = model.BuyerID; entity.BuyerAddressID = model.BuyerAddressID; entity.BuyerLocalAgentID = model.BuyerLocalAgentID; entity.BuyerForeignAgentID = model.BuyerForeignAgentID; entity.BuyerRef = model.BuyerRef; entity.ExpectedShipmentDate = model.ExpectedShipmentDate == null ? DateTime.Now : DalCommon.SetDate(model.ExpectedShipmentDate); entity.RevisionNo = model.RevisionNo; entity.RevisionDate = DalCommon.SetDate(model.RevisionDate); entity.OrderCurrency = model.OrderCurrency; entity.BuyerOrderStatus = model.BuyerOrderStatus == null ? "OD" : DalCommon.ReverseOrderStatus(model.BuyerOrderStatus); entity.RecordStatus = model.BuyerOrderID == 0 ? "NCF" : _unit.SlsBuyerOrederRepository.GetByID(model.BuyerOrderID).RecordStatus; entity.SetOn = model.BuyerOrderID == 0 ? DateTime.Now : _unit.SlsBuyerOrederRepository.GetByID(model.BuyerOrderID).SetOn; entity.SetBy = model.BuyerOrderID == 0 ? userId : _unit.SlsBuyerOrederRepository.GetByID(model.BuyerOrderID).SetBy; entity.ModifiedBy = model.BuyerOrderID == 0 ? (int?)null : userId; entity.ModifiedOn = model.BuyerOrderID == 0 ? (DateTime?)null : DateTime.Now; entity.OrderCurrency = model.OrderCurrency; entity.TotalFootQty = model.TotalFootQty; entity.TotalMeterQty = model.TotalMeterQty; entity.PriceLevel = model.PriceLevel; return(entity); }
public ActionResult GetBuyerOrderById(long orderId) { var order = _unit.SlsBuyerOrederRepository.GetByID(orderId); var result = new SlsBuyerOrder { BuyerOrderID = order.BuyerOrderID, BuyerOrderNo = order.BuyerOrderNo, BuyerOrderDate = string.Format("{0:dd/MM/yyyy}", order.BuyerOrderDate), OrderNo = order.OrderNo, BuyerOrderCategory = DalCommon.ReturnOrderCategory(order.BuyerOrderCategory), BuyerOrderStatus = DalCommon.ReturnOrderStatus(order.BuyerOrderStatus), OrderFrom = order.OrderFrom, BuyerID = order.BuyerID, BuyerName = order.BuyerID == null ? "" : _unit.SysBuyerRepository.GetByID(order.BuyerID).BuyerName, BuyerAddressID = order.BuyerAddressID, BuyerAddress = order.BuyerAddressID == null ? "" : _unit.BuyerAddressRepository.GetByID(order.BuyerAddressID).Address, BuyerLocalAgentID = order.BuyerLocalAgentID, LocalAgentName = order.BuyerLocalAgentID == null ? "" : _unit.SysBuyerRepository.GetByID(order.BuyerLocalAgentID).BuyerName, //LocalAgentName = // order.BuyerLocalAgentID == null // ? "" // : _unit.SysBuyerRepository.GetByID(_unit.BuyerAgent.GetByID(order.BuyerLocalAgentID).AgentID) // .BuyerName, BuyerForeignAgentID = order.BuyerForeignAgentID, ForeignAgentName = order.BuyerForeignAgentID == null ? "" : _unit.SysBuyerRepository.GetByID(order.BuyerForeignAgentID).BuyerName, //ForeignAgentName = // order.BuyerForeignAgentID == null // ? "" // : _unit.SysBuyerRepository.GetByID(_unit.BuyerAgent.GetByID(order.BuyerForeignAgentID).AgentID) // .BuyerName, BuyerRef = order.BuyerRef, ExpectedShipmentDate = string.Format("{0:dd/MM/yyyy}", order.ExpectedShipmentDate), ProposedShipmentDate = string.Format("{0:dd/MM/yyyy}", order.ProposedShipmentDate), DeliveryLastDate = string.Format("{0:dd/MM/yyyy}", order.DeliveryLastDate), ExpectedProdStartDate = string.Format("{0:dd/MM/yyyy}", order.ExpectedProdStartDate), RevisionNo = order.RevisionNo, RevisionDate = string.Format("{0:dd/MM/yyyy}", order.RevisionDate), CheckNote = order.CheckNote, ApprovalNote = order.ApprovalNote, AcknowledgeNote = order.AcknowledgeNote, AcknowledgementStatus = order.AcknowledgementStatus, AckDate = string.Format("{0:dd/MM/yyyy}", order.AckDate), RecordStatus = order.RecordStatus, OrderCurrency = order.OrderCurrency, TotalFootQty = order.TotalFootQty, TotalMeterQty = order.TotalMeterQty, PriceLevel = order.PriceLevel, OrderItems = _unit.SlsBuyerOrderItemRepository.Get().Where(ob => ob.BuyerOrderID == order.BuyerOrderID) .Select(item => new SlsBuyerOrderItem { BuyerOrderItemID = item.BuyerOrderItemID, BuyerOrderID = item.BuyerOrderID, commodity = item.commodity, HSCode = item.HSCode, ArticleID = item.ArticleID, ArticleName = item.ArticleID == null ? "" : _unit.ArticleRepository.GetByID(item.ArticleID).ArticleName, ArticleNo = item.ArticleNo, AvgSize = item.AvgSize, AvgSizeUnit = item.AvgSizeUnit, AvgSizeUnitName = item.AvgSizeUnit == null ? "" : _unit.SysUnitRepository.GetByID(item.AvgSizeUnit).UnitName, SideDescription = item.SideDescription, SelectionRange = item.SelectionRange, Thickness = item.Thickness, ThicknessUnit = item.ThicknessUnit, ThicknessUnitName = item.ThicknessUnit == null ? "" : _unit.SysUnitRepository.GetByID(item.ThicknessUnit).UnitName, ThicknessAt = item.ThicknessAt, ItemTypeID = item.ItemTypeID, ItemTypeName = item.ItemTypeID == null ? "" : _unit.SysItemTypeRepository.GetByID(item.ItemTypeID).ItemTypeName, LeatherTypeID = item.LeatherTypeID, LeatherTypeName = item.LeatherTypeID == null ? "" : _unit.SysLeatherTypeRepository.GetByID(item.LeatherTypeID).LeatherTypeName, LeatherStatusID = item.LeatherStatusID, LeatherStatusName = item.LeatherStatusID == null ? "" : _unit.SysLeatherStatusRepo.GetByID(item.LeatherStatusID).LeatherStatusName, ArticleFootQty = item.ArticleFootQty, ArticleMeterQty = item.ArticleMeterQty, AirFootUnitPrice = item.AirFootUnitPrice, AirFootTotalPrice = item.AirFootTotalPrice, RoadFootUnitPrice = item.RoadFootUnitPrice, RoadFootTotalPrice = item.RoadFootTotalPrice, SeaFootUnitPrice = item.SeaFootUnitPrice, SeaFootTotalPrice = item.SeaFootTotalPrice, AirMeterUnitPrice = item.AirMeterUnitPrice, AirMeterTotalPrice = item.AirMeterTotalPrice, RoadMeterUnitPrice = item.RoadMeterUnitPrice, RoadMeterTotalPrice = item.RoadMeterTotalPrice, SeaMeterUnitPrice = item.SeaMeterUnitPrice, SeaMeterTotalPrice = item.SeaMeterTotalPrice, ItemColors = _unit.SlsBuyerOrderItemColorRepository.Get() .Where(ob => ob.BuyerOrderItemID == item.BuyerOrderItemID) .Select(color => new SlsBuyerOrderItemColor { BuyerOrdItemColorID = color.BuyerOrdItemColorID, BuyerOrderItemID = color.BuyerOrderItemID, BuyerOrderID = color.BuyerOrderID, ColorID = color.ColorID, ColorName = color.ColorID == null ? "" : _unit.SysColorRepository.GetByID(color.ColorID).ColorName, ColorFootQty = color.ColorFootQty, ColorMeterQty = color.ColorMeterQty, AirFootUnitPrice = color.AirFootUnitPrice, AirFootTotalPrice = color.AirFootTotalPrice, RoadFootUnitPrice = color.RoadFootUnitPrice, RoadFootTotalPrice = color.RoadFootTotalPrice, SeaFootUnitPrice = color.SeaFootUnitPrice, SeaFootTotalPrice = color.SeaFootTotalPrice, AirMeterUnitPrice = color.AirMeterUnitPrice, AirMeterTotalPrice = color.AirMeterTotalPrice, RoadMeterUnitPrice = color.RoadMeterUnitPrice, RoadMeterTotalPrice = color.RoadMeterTotalPrice, SeaMeterUnitPrice = color.SeaMeterUnitPrice, SeaMeterTotalPrice = color.SeaMeterTotalPrice, }).ToList() }).ToList(), OrderDelivery = _unit.SlsBuyerOrderDeliveryRepository.Get().Where(ob => ob.BuyerOrderID == order.BuyerOrderID).Select(dlvry => new SlsBuyerOrderDelivery { BuyerOrderDeliveryID = dlvry.BuyerOrderDeliveryID, BuyerOrderID = dlvry.BuyerOrderID, ArticleID = dlvry.ArticleID, ArticleName = dlvry.ArticleID == null ? "" : _unit.ArticleRepository.GetByID(dlvry.ArticleID).ArticleName, ColorID = dlvry.ColorID, ColorName = dlvry.ColorID == null ? "" : _unit.SysColorRepository.GetByID(dlvry.ColorID).ColorName, OrdDeliverySL = dlvry.OrdDeliverySL, OrdDeliveryDate = string.Format("{0: dd/MM/yyyy}", dlvry.OrdDeliveryDate), OrdDateFootQty = dlvry.OrdDateFootQty, OrdDateMeterQty = dlvry.OrdDateMeterQty }).OrderBy(ob => ob.OrdDeliverySL).ToList(), }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public ValidationMsg Save(SlsBuyerOrder model, int userId, string url) { try { using (var tx = new TransactionScope()) { using (_context) { var order = ConvertOrder(model, userId, url); if (model.BuyerOrderID == 0) { _context.SLS_BuyerOrder.Add(order); _context.SaveChanges(); _mode = 1; } else { _context.SaveChanges(); _mode = 2; } if (model.OrderItems != null) { foreach (var item in model.OrderItems) { var orderItem = ConvertOrderItem(item, userId, order.BuyerOrderID); if (item.BuyerOrderItemID == 0) { _context.SLS_BuyerOrderItem.Add(orderItem); _context.SaveChanges(); } else { _context.SaveChanges(); } if (item.ItemColors != null) { foreach (var color in item.ItemColors) { var itemColor = ConvertOrderItemColor(color, userId, orderItem.BuyerOrderItemID, order.BuyerOrderID); if (color.BuyerOrdItemColorID == 0) { _context.SLS_BuyerOrderItemColor.Add(itemColor); _context.SaveChanges(); } else { _context.SaveChanges(); } } } } } if (model.OrderDelivery != null) { foreach (var x in model.OrderDelivery) { var orderDelivery = ConvertOrderDelivery(x, userId, order.BuyerOrderID); if (x.BuyerOrderDeliveryID == 0) { _context.SLS_BuyerOrderDelivery.Add(orderDelivery); _context.SaveChanges(); } else { _context.SaveChanges(); } } } tx.Complete(); if (_mode == 1) { _validationMsg.ReturnId = order.BuyerOrderID; _validationMsg.ReturnCode = order.OrderNo; _validationMsg.Type = Enums.MessageType.Success; _validationMsg.Msg = "Saved successfully."; } if (_mode == 2) { _validationMsg.ReturnId = order.BuyerOrderID; _validationMsg.Type = Enums.MessageType.Update; _validationMsg.Msg = "Updated successfully."; } } } } catch (DbEntityValidationException e) { //StringBuilder sb = new StringBuilder(); //foreach (var eve in e.EntityValidationErrors) //{ // sb.AppendLine(string.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", // eve.Entry.Entity.GetType().Name, // eve.Entry.State)); // foreach (var ve in eve.ValidationErrors) // { // sb.AppendLine(string.Format("- Property: \"{0}\", Error: \"{1}\"", // ve.PropertyName, // ve.ErrorMessage)); // } //} //throw new DbEntityValidationException(sb.ToString(), e); _validationMsg.Type = Enums.MessageType.Error; _validationMsg.Msg = "Failed to save."; } return(_validationMsg); }
public ActionResult Save(SlsBuyerOrder model) { _userId = Convert.ToInt32(Session["UserID"]); _validationMsg = _dalSlsBuyerOrder.SaveAck(model, _userId); return(Json(_validationMsg, JsonRequestBehavior.AllowGet)); }