public string AddShiftingRequest(TelephoneRequestInfo aInfo)
        {
            if (!menuRequestType.Keys.ToList().Exists(i => i.ToLower() == "shifting"))
            {
                return "Error! Request Type Not Found in Database. Please Contact with Application Administrator";
            }

            int index = menuRequestType.Keys.ToList().FindIndex(i => i.ToLower() == "shifting");
            aInfo.MenuRequestTypeId = Convert.ToInt32(menuRequestType[menuRequestType.Keys.ToList()[index]]);

            string insertString = "INSERT INTO `signalappdb`.`pendingrequest` (`MenuRequestTypeID`, `PhoneUserPersonalInfoID`, " +
                              "`AllPhoneInfoID`, `LetterNo`, `AddressType`, `Comment`,`RequestDate`,`NewAddressForShifting`) VALUES (@MenuRequestTypeID, " +
                              "@PhoneUserPersonalInfoID, " +
                              "@AllPhoneInfoID, @LetterNo, @AddressType, @Comment,@RequestDate,@NewAddressForShifting);";

            Hashtable aHashtable = new Hashtable()
            {
                {"MenuRequestTypeID",aInfo.MenuRequestTypeId},
                {"AllPhoneInfoID",aInfo.AllPhoneInfoID},
                {"PhoneUserPersonalInfoID",aInfo.PhoneUserPersonalInfoID} ,
                {"LetterNo",aInfo.LetterNo},
                {"AddressType",aInfo.AddressType},
                {"Comment",aInfo.Comment},
                { "RequestDate",aInfo.RequestDate.ToString("yyyy-MM-dd")+" " +DateTime.Now.ToString("HH:mm:ss")},
                {"NewAddressForShifting",aInfo.Address}

            };
            aGateway.Insert(insertString, aHashtable);

            return "Shifing Request Successfully Submitted";
        }
        public string AddNewConnectionRequest(TelephoneRequestInfo aInfo)
        {
            if (!menuRequestType.Keys.ToList().Exists(i => i.ToLower() == "new connection"))
            {
                return "Error! Request Type Not Found in Database. Please Contact with Application Administrator";
            }

            int index = menuRequestType.Keys.ToList().FindIndex(i => i.ToLower() == "new connection");
            aInfo.MenuRequestTypeId = Convert.ToInt32(menuRequestType[menuRequestType.Keys.ToList()[index]]);

            string insertString = "INSERT INTO `signalappdb`.`pendingrequest` (`MenuRequestTypeID`, `PhoneUserPersonalInfoID`, " +
                                  "`AllPhoneInfoID`, `LetterNo`, `AddressType`, `Comment`,`RequestDate`) VALUES (@MenuRequestTypeID, " +
                                  "@PhoneUserPersonalInfoID, " +
                                  "@AllPhoneInfoID, @LetterNo, @AddressType, @Comment,@RequestDate);";

            Hashtable aHashtable = new Hashtable()
            {
                {"MenuRequestTypeID",aInfo.MenuRequestTypeId},
                {"AllPhoneInfoID",aInfo.AllPhoneInfoID},
                {"PhoneUserPersonalInfoID",aInfo.PhoneUserPersonalInfoID} ,
                {"LetterNo",aInfo.LetterNo},
                {"AddressType",aInfo.AddressType},
                {"Comment",aInfo.Comment},
                { "RequestDate",aInfo.RequestDate.ToString("yyyy-MM-dd")+" " +DateTime.Now.ToString("HH:mm:ss")}

            };
            aGateway.Insert(insertString,aHashtable);
            string updateString = "UPDATE `signalappdb`.`allphoneinfo` SET `ServiceStatus`='Active' WHERE  `ID`='"+aInfo.AllPhoneInfoID+"';";
            aGateway.Update(updateString);

            return "New Connection Request Successfully Submitted";
        }
        public ActionResult AddNewRequest()
        {
            string BANumberID = Request["BANumberID"].ToString().Trim();

            if (BANumberID.Trim().Length == 0)
            {
                ViewData["Message"] = "Error! Complete Search Fields";
                return View("Index");
            }
            string BANumber = Request["BANumber"].ToString().Trim();
            string ApplicationNumber = Request["ApplicationNumber"].ToString().Trim();
            string ConnectionType = Request["ConnectionType"].ToString().Trim();
            string AddressType = Request["AddressType"].ToString().Trim();
            string PhoneNumber = Request["PhoneNumber"].ToString().Trim();
            string Address = Request["Address"].ToString().Trim();
            string Comment = Request["Comment"].ToString().Trim();
            string RequestType = Request["RequestType"].ToString().Trim();

            ViewData["baNumber"] = BANumber;
            ViewData["reqType"] = RequestType;
            ViewData["addressType"] = AddressType;
            ViewData["connectionType"] = ConnectionType;

            TelephoneRequestInfo aInfo = new TelephoneRequestInfo()
            {
                PhoneUserPersonalInfoID = Convert.ToInt32(BANumberID),
                LetterNo = ApplicationNumber,
                AllPhoneInfoID =  Convert.ToInt32(PhoneNumber),
                AddressType = AddressType,
                Address = Address ,
                Comment = Comment,
                RequestDate = DateTime.Now
            };

            string message = string.Empty;
            if (RequestType.ToLower() == "new connection")
            {
                TelephoneRequest aTelephoneRequest = new TelephoneRequest();
                message = aTelephoneRequest.AddNewConnectionRequest(aInfo);
            }

            if (RequestType.ToLower() == "shifting")
            {
                TelephoneRequest aTelephoneRequest = new TelephoneRequest();
                message = aTelephoneRequest.AddShiftingRequest(aInfo);
            }

            if (RequestType.ToLower() == "termination")
            {
                TelephoneRequest aTelephoneRequest = new TelephoneRequest();
                message = aTelephoneRequest.AddTerminationRequest(aInfo);
            }

            ViewData["Message"] = message;
            return View("Index");
        }