Example #1
0
 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);
 }
Example #2
0
        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);
        }
Example #3
0
        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));
        }
Example #4
0
 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);
 }
Example #5
0
 public ActionResult Save(SlsBuyerOrder model)
 {
     _userId        = Convert.ToInt32(Session["UserID"]);
     _validationMsg = _dalSlsBuyerOrder.SaveAck(model, _userId);
     return(Json(_validationMsg, JsonRequestBehavior.AllowGet));
 }