Ejemplo n.º 1
0
        public ActionResult AssignIP(IPCreateViewModel icvm)
        {
            if (icvm.NewIP == null)
            {
                return(RedirectToAction("AssignIP", new { rCode = icvm.RequestCode, OldIP = icvm.OldIP, ServerCode = icvm.ServerCode, FailMessage = "Select IP to assign!" }));
            }
            var ip = IPAddressPoolBLO.Current.GetByKeys(new IPAddressPool {
                IPAddress = icvm.NewIP
            });

            if (ip.StatusCode == Constants.StatusCode.IP_USED)
            {
                return(RedirectToAction("AssignIP", new { rCode = icvm.RequestCode, OldIP = icvm.OldIP, ServerCode = icvm.ServerCode, FailMessage = "Assign IP Fail! Try Again!" }));
            }

            var x = IPAddressPoolBLO.Current.UpdateIP(icvm.ServerCode, icvm.NewIP, icvm.RequestCode, icvm.OldIP);

            if (x == false)
            {
                return(RedirectToAction("AssignIP", new { rCode = icvm.RequestCode, OldIP = icvm.OldIP, ServerCode = icvm.ServerCode, FailMessage = "Assign IP Fail! Try Again!" }));
            }
            else
            {
                return(RedirectToAction("Detail", "ProcessRequest", new { code = icvm.RequestCode }));
            }
        }
Ejemplo n.º 2
0
        public ActionResult AssignIP(string rType, string rCode, string OldIP, string ServerCode, string FailMessage)
        {
            var data = new IPCreateViewModel();

            data.RequestCode = rCode;
            data.OldIP       = OldIP;
            data.ServerCode  = ServerCode;
            data.FailMessage = FailMessage;
            var ips           = IPAddressPoolBLO.Current.GetAvailableIPs();
            var listNetworkIP =
                ips.OrderBy(x => x.NetworkIP).GroupBy(x => x.NetworkIP).Select(x => x.FirstOrDefault());

            data.NetworkIPs = listNetworkIP.Select(x => new SelectListItem
            {
                Value = x.NetworkIP,
                Text  = "Network " + x.NetworkIP
            }).ToList();
            return(View(data));
        }