Exemplo n.º 1
0
        public ActionResult List(string filter, int?page, string id, string sortField, int?sortOrder)
        {
            //SortField + SortOrder settings
            if (string.IsNullOrEmpty(sortField))
            {
                sortField = "RelatedToValue";
            }
            ViewData["CurrentSortField"] = sortField;

            if (sortOrder == 1)
            {
                ViewData["NewSortOrder"]     = 0;
                ViewData["CurrentSortOrder"] = 1;
            }
            else
            {
                ViewData["NewSortOrder"]     = 1;
                ViewData["CurrentSortOrder"] = 0;
                sortOrder = 0;
            }


            ClientSubUnitCDRsVM clientSubUnitCDRsVM = new ClientSubUnitCDRsVM();

            clientSubUnitCDRsVM.ClientDefinedReferences = clientSubUnitCDRRepository.PageClientSubUnitCDRs(page ?? 1, filter ?? "", id, sortField, sortOrder);

            RolesRepository rolesRepository = new RolesRepository();

            clientSubUnitCDRsVM.HasWriteAccess         = rolesRepository.HasWriteAccessToClientSubUnit(id);
            clientSubUnitCDRsVM.HasCDRLinkImportAccess = rolesRepository.HasWriteAccessToCDRLinkImport();

            /*
             * DisplayName
             * The ClientSubUnit may only be asscoiated with one Itemtype of ClientDefinedReference
             * Therefore, we show Itemtype value if it has ClientDefinedReferenceItems assigned, otherwise a list of available Itemtype
             */
            ClientDefinedReferenceItemRepository cdrItemRepository          = new ClientDefinedReferenceItemRepository();
            ClientDefinedReferenceItem           clientDefinedReferenceItem = new ClientDefinedReferenceItem();

            if (clientSubUnitCDRsVM.ClientDefinedReferences.Count == 0)
            {
                clientSubUnitCDRsVM.ClientDefinedReferenceItemId = null;
            }
            else
            {
                clientSubUnitCDRsVM.DisplayName = clientSubUnitCDRsVM.ClientDefinedReferences[0].DisplayName;
            }

            //ClientSubUnit
            ClientSubUnit clientSubUnit = new ClientSubUnit();

            clientSubUnit = clientSubUnitRepository.GetClientSubUnit(id);
            if (clientSubUnit == null)
            {
                ViewData["ActionMethod"] = "List";
                return(View("RecordDoesNotExistError"));
            }

            clientSubUnitCDRsVM.ClientSubUnit = clientSubUnit;

            //RelatedToDisplayName
            if (clientSubUnitCDRsVM.ClientDefinedReferences.Count > 0)
            {
                int clientSubUnitClientDefinedReferenceId = clientSubUnitCDRsVM.ClientDefinedReferences[0].ClientSubUnitClientDefinedReferenceId;

                ClientSubUnitCDRItemRepository clientSubUnitCDRItemRepository = new ClientSubUnitCDRItemRepository();

                List <ClientSubUnitClientDefinedReferenceItem> clientSubUnitClientDefinedReferenceItems = new List <ClientSubUnitClientDefinedReferenceItem>();
                clientSubUnitClientDefinedReferenceItems = clientSubUnitCDRItemRepository.GetClientSubUnitCDRItems(clientSubUnitClientDefinedReferenceId);

                if (clientSubUnitClientDefinedReferenceItems != null && clientSubUnitClientDefinedReferenceItems.Count > 0)
                {
                    clientSubUnitCDRsVM.RelatedToDisplayName = clientSubUnitClientDefinedReferenceItems[0].RelatedToDisplayName;
                }
            }

            //return items
            return(View(clientSubUnitCDRsVM));
        }
Exemplo n.º 2
0
        public ActionResult Create(ClientSubUnitCDRsVM clientSubUnitCDRsVM, string btnSubmit)
        {
            string clientSubUnitGuid    = clientSubUnitCDRsVM.ClientSubUnitGuid;
            string displayName          = clientSubUnitCDRsVM.DisplayName;
            string relatedToDisplayName = clientSubUnitCDRsVM.RelatedToDisplayName ?? "";

            if (btnSubmit == "Import")
            {
                return(RedirectToAction("ImportStep1", new { id = clientSubUnitGuid, displayName = displayName, relatedToDisplayName = relatedToDisplayName }));
            }

            //Get ClientSubUnit
            ClientSubUnit clientSubUnit = new ClientSubUnit();

            clientSubUnit = clientSubUnitRepository.GetClientSubUnit(clientSubUnitGuid);

            //Check Exists
            if (clientSubUnit == null)
            {
                ViewData["ActionMethod"] = "CreateGet";
                return(View("RecordDoesNotExistError"));
            }



            //Check Exists
            //if (clientdefinedReferenceItem2 == null)
            //{
            //    ViewData["ActionMethod"] = "CreateGet";
            //    return View("RecordDoesNotExistError");
            //}


            //Access Rights
            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToClientSubUnit(clientSubUnitGuid))
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            ClientSubUnitCDRVM clientSubUnitCDRVM = new ClientSubUnitCDRVM();

            clientSubUnitCDRVM.ClientSubUnit = clientSubUnit;

            //Get ClientSubUnit/ClientDefinedReferenceItem
            ClientDefinedReferenceItem clientdefinedReferenceItem2 = new ClientDefinedReferenceItem();
            //if(string.IsNullOrEmpty(displayName)){
            //clientdefinedReferenceItem2. = ClientDefinedReferenceItemId;// clientDefinedReferenceItemRepository.GetCSUClientDefinedReferenceItemByCDRId(clientSubUnitGuid, ClientDefinedReferenceItemId);
            //     ClientSubUnitClientDefinedReference clientSubUnitClientDefinedReference = new ClientSubUnitClientDefinedReference();
            //     clientSubUnitClientDefinedReference.DisplayName = displayName;
            //     clientSubUnitCDRVM.ClientSubUnitClientDefinedReference = clientSubUnitClientDefinedReference;
            //}else{

            //   clientdefinedReferenceItem2 = clientDefinedReferenceItemRepository.GetCSUClientDefinedReferenceItem(clientSubUnitGuid,displayName);
            //   clientSubUnitCDRVM.ClientDefinedReferenceItemId = clientdefinedReferenceItem2.ClientDefinedReferenceItemId;
            //}

            //Add MaskedCreditCardNumber and CreditCardHolderName into Select List
            CreditCardClientSubUnitRepository creditCardClientSubUnitRepository = new CreditCardClientSubUnitRepository();
            List <CreditCard>     creditCards    = creditCardClientSubUnitRepository.GetAllCreditCardsBySubUnit(clientSubUnitGuid).ToList();
            List <SelectListItem> creditCardList = new List <SelectListItem>();

            foreach (CreditCard creditCardItem in creditCards)
            {
                creditCardList.Add(new SelectListItem
                {
                    Value = creditCardItem.CreditCardId.ToString(),
                    Text  = string.Format("{0}\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0{1}", creditCardItem.MaskedCreditCardNumber, creditCardItem.CreditCardHolderName)                    //Space out items
                });
            }
            clientSubUnitCDRVM.CreditCardSelectList = new SelectList(creditCardList, "Value", "Text");

            ClientSubUnitClientAccountRepository clientSubUnitClientAccountRepository = new ClientSubUnitClientAccountRepository();

            clientSubUnitCDRVM.ClientAccountSelectList = clientSubUnitClientAccountRepository.GetClientAccountsBySubUnit(clientSubUnitGuid, "");
            clientSubUnitCDRVM.CreditCardValidTo       = null;

            //Show Create Form
            return(View(clientSubUnitCDRVM));
        }