Esempio n. 1
0
        public static TruckingOrderVm NewTruckingOrderByOperation(int operationId, byte orderFrom = 1, int houseBillId = 0)
        {
            EasyFreightEntities db        = new EasyFreightEntities();
            OperationsEntities  db1       = new OperationsEntities();
            TruckingOrderVm     trkoVmObj = new TruckingOrderVm(orderFrom);
            //Get House Bill status
            var hbInfo = db1.HouseBills.Where(x => x.HouseBillId == houseBillId)
                         .Select(x => new { x.StatusId, x.OperationDate }).FirstOrDefault();
            //Check if has trucking  order .. Get its details for edit
            TruckingOrder truckingOrderDb;

            if (hbInfo.StatusId == 3 || hbInfo.StatusId == 4)
            {
                truckingOrderDb = db.TruckingOrders
                                  .Where(x => x.HouseBillId == houseBillId && (x.StatusId == 3 || x.StatusId == 4)).FirstOrDefault();
            }
            else
            {
                truckingOrderDb = db.TruckingOrders
                                  .Where(x => x.HouseBillId == houseBillId && (x.StatusId == 1 || x.StatusId == 2)).FirstOrDefault();
            }

            if (truckingOrderDb != null)
            {
                Mapper.CreateMap <TruckingOrder, TruckingOrderVm>().IgnoreAllNonExisting();
                Mapper.Map(truckingOrderDb, trkoVmObj);
                trkoVmObj.OperationDate = hbInfo.OperationDate.Value;
            }
            else
            {
                var houseBillVm = HouseBillHelper.GetHbContent(operationId, orderFrom, houseBillId);

                Mapper.CreateMap <HouseBillVm, TruckingOrderVm>()
                .ForMember(x => x.StatusId, y => y.Ignore())
                .IgnoreAllNonExisting();
                Mapper.Map(houseBillVm, trkoVmObj);

                trkoVmObj.BookingNo = db1.Operations.Where(x => x.OperationId == operationId)
                                      .FirstOrDefault().BookingNumber;
            }

            return(trkoVmObj);
        }
Esempio n. 2
0
        public ActionResult AddTruckingOrder(int operationId, byte orderFrom = 1, int houseBillId = 0)
        {
            #region Check Rights
            bool hasRights;
            if (orderFrom == 1) //Check export rights
            {
                hasRights = AdminHelper.CheckUserAction(ScreenEnum.ExportHB, ActionEnum.AddEditTruckingOrder);
            }
            else
            {
                hasRights = AdminHelper.CheckUserAction(ScreenEnum.ImportHB, ActionEnum.AddEditTruckingOrder);
            }

            if (!hasRights)
            {
                return(PartialView("~/Views/Shared/_UnAuthorized.cshtml"));
            }

            #endregion

            // remember that cannot create more than one tracking order unless status canceled

            TruckingOrderVm trkoVmObj = TruckingHelper.NewTruckingOrderByOperation(operationId, orderFrom, houseBillId);
            if (trkoVmObj.OrderFrom == 1)
            {
                var shipperObj = ShipperHelper.GetShipperInfo(trkoVmObj.ShipperId);
                ViewBag.ClientName        = shipperObj.ShipperNameEn;
                trkoVmObj.ShipFromAddress = shipperObj.ShipperAddressEn;
            }
            else
            {
                var consigneeObj = ConsigneeHelper.GetConsigneeInfo(trkoVmObj.ConsigneeId);
                ViewBag.ClientName        = consigneeObj.ConsigneeNameEn;
                trkoVmObj.ShipFromAddress = consigneeObj.ConsigneeAddressEn;
            }

            ViewData["AreaList"]     = ListCommonHelper.GetAreaGrouped();
            ViewBag.ContainerSummary = OperationHelper.GetContainersSummary(trkoVmObj.OperationId);

            return(PartialView("~/Views/Trucking/AddTruckingOrder.cshtml", trkoVmObj));
        }
Esempio n. 3
0
        public static string AddTruckingOrder(TruckingOrderVm truckingOrderVm)
        {
            string isSaved         = "true";
            EasyFreightEntities db = new EasyFreightEntities();

            TruckingOrder truckingOrderDb = new TruckingOrder();

            Mapper.CreateMap <TruckingOrderVm, TruckingOrder>().IgnoreAllNonExisting();
            Mapper.Map(truckingOrderVm, truckingOrderDb);
            //Get carrier Id from operation
            OperationsEntities db1 = new OperationsEntities();
            int operationId        = truckingOrderDb.OperationId;

            truckingOrderDb.CarrierId = db1.Operations.Where(x => x.OperationId == operationId).FirstOrDefault().CarrierId;

            var op_DeliveryNeeded = db1.Operations.Where(x => x.OperationId == operationId).FirstOrDefault();

            op_DeliveryNeeded.DeliveryNeeded = true;

            if (truckingOrderVm.TruckingOrderId == 0)
            {
                db.TruckingOrders.Add(truckingOrderDb);
            }

            try
            {
                db.SaveChanges();
                db1.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                isSaved = "false " + e.Message;
            }
            catch (Exception e)
            {
                isSaved = "false " + e.InnerException.InnerException;
            }

            return(isSaved);
        }
Esempio n. 4
0
        /// <summary>
        /// Post action to create truckign order from operation
        /// </summary>
        /// <param name="truckingOrderVm">TruckingOrderVm</param>
        /// <returns>strign "true" if saved successfully</returns>
        public ActionResult NewTruckingOrder(TruckingOrderVm truckingOrderVm)
        {
            string isSaved = TruckingHelper.AddTruckingOrder(truckingOrderVm);

            return(Json(isSaved));
        }