private ECollateralSettings ToECollateralSettings(eCollateralItem dbItem)
        {
            var retItem = new ECollateralSettings()
            {
                ItemID            = dbItem.ItemID,
                IsTemplate        = dbItem.IsTemplate,
                FileName          = dbItem.FileName,
                Status            = StatusTypes.StatusList[dbItem.Status],
                UpdateStatus      = dbItem.Status,
                CustomURL         = dbItem.URLText,
                CreatedByUserName = dbItem.CreatedByUser.FullName
            };

            if (!dbItem.IsTemplate)
            {
                retItem.PaoliSalesRepGroupID   = dbItem.DealershipID.HasValue ? dbItem.Company.Territory.SalesRepCompanyID : null;
                retItem.DealershipID           = dbItem.DealershipID;
                retItem.DealershipPOCID        = dbItem.DealershipPOCID;
                retItem.ProjectID              = dbItem.ProjectID;
                retItem.CustomerID             = dbItem.ProjectID.HasValue ? dbItem.Project.EndCustomerID : null;
                retItem.RealCustomerName       = dbItem.ProjectID.HasValue ? (dbItem.Project.EndCustomerID.HasValue ? dbItem.Project.EndCustomerCompany.Name : null) : null;
                retItem.RealProjectName        = dbItem.ProjectID.HasValue ? dbItem.Project.ProjectName : null;
                retItem.PaoliSalesRepGroupName = dbItem.DealershipID.HasValue ? dbItem.Company.Territory.SalesRepCompanyName : null;
                retItem.DealershipName         = dbItem.DealershipID.HasValue ? dbItem.Company.Name : null;
                retItem.DealershipPOCMember    = dbItem.DealershipPOCID.HasValue ? dbItem.DealershipPOC.FullName : null;
            }

            return(retItem);
        }
Пример #2
0
        public ActionResult EditSettings(ECollateralSettings settings)
        {
            if (ModelState.IsValid)
            {
                using (var eRepository = new ECollateralRepository())
                {
                    eRepository.EditSettings(settings, PaoliWebUser.CurrentUser.UserId);

                    return(RedirectToAction("EditLayout", new { id = settings.ItemID }));
                }
            }

            return(View(settings));
        }
Пример #3
0
        public ActionResult Add(ECollateralSettings settings)
        {
            if (ModelState.IsValid)
            {
                using (var eRepository = new ECollateralRepository())
                {
                    int itemId = 0;
                    eRepository.AddSettings(settings, PaoliWebUser.CurrentUser.UserId, out itemId);

                    return(RedirectToAction("SetLayout", new { id = itemId }));
                }
            }

            return(View(settings));
        }
        public bool AddSettings(ECollateralSettings settings, int userId, out int itemId)
        {
            itemId = 0;

            if (!ValidateURL(0, settings.CustomURL))
            {
                throw new Exception("URL is invalid");
            }

            var newItem = new eCollateralItem();

            newItem.CreatedByUserID        = userId;
            newItem.CreatedByDateTime      = DateTime.UtcNow;
            newItem.LastModifiedByUserID   = userId;
            newItem.LastModifiedByDateTime = DateTime.UtcNow;

            newItem.IsTemplate = settings.IsTemplate;
            newItem.FileName   = settings.FileName;
            newItem.URLText    = settings.CustomURL;
            if (settings.DealershipID != 0)
            {
                newItem.DealershipID = settings.DealershipID;
                if (settings.DealershipPOCID != 0)
                {
                    newItem.DealershipPOCID = settings.DealershipPOCID;
                }
            }
            newItem.ProjectID = settings.ProjectID;

            newItem.IncludeDealerImage = false;

            newItem.Status = StatusTypes.Incomplete;

            database.eCollateralItems.Add(newItem);

            if (database.SaveChanges() > 0)
            {
                database.Entry(newItem).Reload();

                itemId = newItem.ItemID;

                return(true);
            }

            throw new Exception("Unable to save eCollateral Item");
        }
        public bool EditSettings(ECollateralSettings settings, int userId)
        {
            if (!ValidateURL(settings.ItemID, settings.CustomURL))
            {
                throw new Exception("URL is invalid");
            }

            var dbItem = database.eCollateralItems.FirstOrDefault(i => i.ItemID == settings.ItemID);

            if (dbItem != null)
            {
                dbItem.LastModifiedByUserID   = userId;
                dbItem.LastModifiedByDateTime = DateTime.UtcNow;

                dbItem.IsTemplate = settings.IsTemplate;
                dbItem.FileName   = settings.FileName;
                dbItem.URLText    = settings.CustomURL;
                if (settings.DealershipID != 0)
                {
                    dbItem.DealershipID = settings.DealershipID;
                    if (settings.DealershipPOCID != 0)
                    {
                        dbItem.DealershipPOCID = settings.DealershipPOCID;
                    }
                    else
                    {
                        dbItem.DealershipPOCID = null;
                    }
                }
                else
                {
                    dbItem.DealershipID    = null;
                    dbItem.DealershipPOCID = null;
                }
                dbItem.ProjectID = settings.ProjectID;

                dbItem.Status = (dbItem.Status == StatusTypes.Incomplete) ? dbItem.Status : StatusTypes.New;

                return(database.SaveChanges() > 0);
            }
            throw new Exception("Unable to save eCollateral Item");
        }