示例#1
0
        public ActionResult Index()
        {
            IAnnexContractsRepository annexContractsRepository = new AnnexContractsRepository(db);
            IContractsRepository      contractsRepository      = new ContractsRepository(db);

            int    page       = !String.IsNullOrWhiteSpace(Request.QueryString["page"]) ? Convert.ToInt32(Request.QueryString["page"]) : 1;
            int    pageSize   = !String.IsNullOrWhiteSpace(Request.QueryString["pageSize"]) ? Convert.ToInt32(Request.QueryString["pageSize"]) : Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["ResultsPerPage"]);
            string sortOrder  = !String.IsNullOrWhiteSpace(Request.QueryString["sortOrder"]) ? Request.QueryString["sortOrder"] : "DESC";
            string sortColumn = !String.IsNullOrWhiteSpace(Request.QueryString["sortColumn"]) ? Request.QueryString["sortColumn"] : "AnnexContractPK";
            string ordering   = sortColumn + " " + sortOrder;

            ordering = ordering.Trim();

            IQueryable <AnnexContractView> annexContracts = AnnexContractView.GetAnnexContractView(annexContractsRepository.GetValid(), contractsRepository.GetValid())
                                                            .OrderBy(ordering);

            //contracts ddl
            ViewBag.Contracts = new SelectList(contractsRepository.GetValid().OrderBy("Name ASC").ToList(), "ContractPK", "Name", Request.QueryString["contractFK"]);

            if (!String.IsNullOrWhiteSpace(Request.QueryString["searchString"]))
            {
                string searchString = Request.QueryString["searchString"].ToString();
                annexContracts = annexContracts.Where(c => c.Name.Contains(searchString) || c.Number.Contains(searchString));
            }

            if (!String.IsNullOrWhiteSpace(Request.QueryString["contractFK"]))
            {
                int contractFK = Convert.ToInt32(Request.QueryString["contractFK"]);
                annexContracts = annexContracts.Where(c => c.ContractFK == contractFK);
            }

            annexContracts = annexContracts.Page(page, pageSize);

            if (!String.IsNullOrWhiteSpace(Request.QueryString["searchString"]))
            {
                string searchString = Request.QueryString["searchString"].ToString();
                ViewData["numberOfRecords"] = annexContractsRepository.GetValid().Where(c => c.Name.Contains(searchString) || c.Number.Contains(searchString)).Count();
            }
            else
            {
                ViewData["numberOfRecords"] = annexContractsRepository.GetValid().Count();
            }

            ViewData["numberOfRecords"] = annexContractsRepository.GetValid().Count();

            int numberOfPages = ((int)ViewData["numberOfRecords"] + pageSize - 1) / pageSize;

            if (page > numberOfPages)
            {
                string url = LinkHelper.getQueryStringArray(new string[] { "page" });
                return(Redirect("AnnexContract?" + url + "page=" + numberOfPages));
            }
            else
            {
                return(View("Index", annexContracts.ToList()));
            }
        }
示例#2
0
        public ActionResult Add(int?contractFK)
        {
            AnnexContractView annexContractView = new AnnexContractView();

            annexContractView.BindDDLs(annexContractView, db);

            if (contractFK != null)
            {
                annexContractView.ContractFK = contractFK;
            }

            return(View(annexContractView));
        }
示例#3
0
        public ActionResult Edit(int?annexContractPK)
        {
            if (annexContractPK != null)
            {
                IAnnexContractsRepository annexContractsRepository = new AnnexContractsRepository(db);
                AnnexContract             annexContract            = annexContractsRepository.GetAnnexContractByPK((int)annexContractPK);
                AnnexContractView         annexContractView        = new AnnexContractView();

                annexContractView.ConvertFrom(annexContract, annexContractView);
                annexContractView.BindDDLs(annexContractView, db);

                return(View(annexContractView));
            }
            else
            {
                return(RedirectToAction("Index", "AnnexContract"));
            }
        }
示例#4
0
        public ActionResult Edit(AnnexContractView annexContractView)
        {
            if (ModelState.IsValid)
            {
                IAnnexContractsRepository annexContractsRepository = new AnnexContractsRepository(db);

                AnnexContract annexContract = annexContractsRepository.GetAnnexContractByPK((int)annexContractView.AnnexContractPK);
                annexContractView.ConvertTo(annexContractView, annexContract);

                annexContractsRepository.SaveChanges();

                TempData["message"] = LayoutHelper.GetMessage("UPDATE", annexContract.AnnexContractPK);

                return(RedirectToAction("Index", "AnnexContract"));
            }
            else
            {
                annexContractView.BindDDLs(annexContractView, db);

                return(View(annexContractView));
            }
        }