Esempio n. 1
0
        // GET: Device
        /// <summary>
        /// 设备列表
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "基础信息"
            };
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("设备信息", "selected", "/device/index"),
                new nav("客户信息", "", "/device/customerList"),
                new nav("建点", "", "/device/Establish"),
            };

            lay.listNav          = listNav;
            ViewBag.lay          = lay;
            ViewBag.operatorList = AllInOne_UserInfoOper.Instance.GetMyOpertor(user);
            ViewBag.fluidList    = AllFunc.Instance.GetFluidList();
            ViewBag.UserLv       = AllFunc.Instance.GetUserSelects(user);
            //ViewBag.pIds = JsonConvert.DeserializeObject<List<int>>(Session["pIds"].ToString());



            return(View());
        }
Esempio n. 2
0
        /// <summary>
        /// 建点。建客户、建表、绑定、开户一体
        /// </summary>
        /// <returns></returns>
        public ActionResult Establish()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "基础信息"
            };
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("建点", "selected", "/device/Establish"),
                new nav("客户信息", "", "/device/customerList"),
                new nav("设备信息", "", "/device/index"),
            };

            lay.listNav           = listNav;
            ViewBag.lay           = lay;
            ViewBag.caliberList   = AllFunc.Instance.GetCaliber();
            ViewBag.fluidNoList   = AllFunc.Instance.GetFluidList();
            ViewBag.meterTypeList = MeterTypeOper.Instance.GetAllList();
            ViewBag.factoryList   = FactoryTypeOper.Instance.GetAllList();

            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            var sons = AllInOne_UserInfoOper.Instance.GetSonAndGrandSon(user);

            //sons.Add(user);
            sons         = sons.OrderByDescending(p => p.level).ToList();
            ViewBag.sons = sons;

            var server = ConfigurationManager.AppSettings.Get("server");

            ViewBag.server = server ?? "";

            return(View());
        }
Esempio n. 3
0
        /// <summary>
        /// 员工账号管理
        /// </summary>
        /// <returns></returns>
        public ActionResult Staff()
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "账号管理"
            };
            var listNav = new List <nav>
            {
                new nav("账号管理", "heading", "/user/userDetail"),
                new nav("员工账号", "selected", "/user/staff"),
                new nav("个人信息", "", "/user/userDetail"),
            };

            if (user.level > 98)
            {
                listNav.Add(new nav("子账号管理", "", "/user/index"));
            }


            lay.listNav     = listNav;
            ViewBag.lay     = lay;
            ViewBag.addName = "添加新员工";
            return(View());
        }
Esempio n. 4
0
        /// <summary>
        /// 地图定位
        /// </summary>
        /// <returns></returns>
        public ActionResult DeviceOnMap()
        {
            var config = AllFunc.Instance.GetConfig();

            ViewBag.time = config.FLMeterDataRefreshRate;
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "数据查询"
            };
            var listNav = new List <nav>
            {
                new nav("数据查询", "heading", ""),
                new nav("地图监控", "selected", "/data/deviceOnMap"),
                new nav("实时数据", "", "/data/meterData"),
                new nav("历史数据", "", "/data/hisData"),
            };

            lay.listNav       = listNav;
            ViewBag.lay       = lay;
            ViewBag.fluidList = AllFunc.Instance.GetFluidList();
            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            var list = AllFunc.Instance.GetSon(user);
            var ids  = list.Select(p => p.id).Distinct().ToList();
            var sons = new List <UserId_areaName>();

            foreach (var item in ids)
            {
                var             temp = list.Where(p => p.id == item).ToList();
                UserId_areaName u    = new UserId_areaName(temp);
                sons.Add(u);
            }

            ViewBag.sons = sons;
            return(View());
        }
Esempio n. 5
0
        /// <summary>
        /// 设备坐标设置视图
        /// </summary>
        /// <returns></returns>
        public ActionResult DeviceLatlng()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "基础信息"
            };
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("坐标设置", "selected", ""),
                new nav("用户和表", "", "/device/index"),
                new nav("建点", "", "/device/Establish"),
                //new nav("子账号管理", "selected", "/user"),
                //new nav("员工账号", "", "/user/staff"),
                //new nav("账号信息", "", "/user/userDetail"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            if (Request["meterNo"] != null)
            {
                var meterNo = Convert.ToInt32(Request["meterNo"]);
                var user    = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
                ViewBag.device  = AllFunc.Instance.GetDeviceByNo(meterNo, user);
                ViewBag.devices = AllFunc.Instance.GetDeviceByUser(user);
            }
            else
            {
                //ViewBag.area = new AllInOne_AreaInfo();
            }

            return(View());
        }
Esempio n. 6
0
        /// <summary>
        /// 实时数据
        /// </summary>
        /// <returns></returns>
        public ActionResult MeterData()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "数据查询"
            };
            var listNav = new List <nav>
            {
                new nav("数据查询", "heading", ""),
                new nav("实时数据", "selected", "/data/meterData"),
                new nav("地图监控", "", "/data/deviceOnMap"),
                new nav("历史数据", "", "/data/hisData"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            var config = AllFunc.Instance.GetConfig();

            ViewBag.time = config.FLMeterDataRefreshRate;
            ViewBag.pIds = JsonConvert.DeserializeObject <List <int> >(Session["pIds"].ToString());
            var server = "";

            server         = ConfigurationManager.AppSettings.Get("server");
            ViewBag.server = server ?? "";

            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());

            ViewBag.UserLv = AllFunc.Instance.GetUserSelects(user);

            return(View());
        }
Esempio n. 7
0
        /// <summary>
        /// 历史数据
        /// </summary>
        /// <returns></returns>
        public ActionResult HisData()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "数据查询"
            };
            var listNav = new List <nav>
            {
                new nav("数据查询", "heading", ""),
                new nav("历史数据", "selected", "/data/hisData"),
                new nav("实时数据", "", "/data/meterData"),
                new nav("地图监控", "", "/data/deviceOnMap"),
            };
            var cno = "0";

            if (Request["cno"] != null)
            {
                cno = Request["cno"];
            }
            ViewBag.cno = cno;
            lay.listNav = listNav;
            ViewBag.lay = lay;
            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());

            //ViewBag.devices = AllFunc.Instance.GetDeviceByUser(user);

            ViewBag.UserLv = AllFunc.Instance.GetUserSelects(user);

            return(View());
        }
Esempio n. 8
0
        // GET: User
        /// <summary>
        /// 子账号管理
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "账号管理"
            };
            var listNav = new List <nav>
            {
                new nav("账号管理", "heading", "/user/userDetail"),
                new nav("子账号管理", "selected", "/user/index"),
                new nav("个人信息", "", "/user/userDetail"),

                new nav("员工账号", "", "/user/staff")
            };

            lay.listNav     = listNav;
            ViewBag.lay     = lay;
            ViewBag.addName = "添加子账号";

            var lv     = Convert.ToInt32(Session["lv"]);
            var userId = Convert.ToInt32(Session["userId"]);

            ViewBag.areaDict = AllFunc.Instance.GetAreaList(userId, lv);
            return(View());
        }
Esempio n. 9
0
        /// <summary>
        /// 区域列表
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "配置"
            };
            var listNav = new List <nav>
            {
                new nav("配置管理", "heading", ""),
                new nav("区域管理", "selected", "/config/index")
            };

            if (user.level == 100)
            {
                //listNav.Add(new nav("设备类型管理", "", "/config/metertype"));
                //listNav.Add(new nav("协议管理", "", "/config/protocol"));
                listNav.Add(new nav("厂家管理", "", "/config/FactoryList"));
                listNav.Add(new nav("参数设置", "", "/config/config"));
            }

            lay.listNav = listNav;
            ViewBag.lay = lay;
            return(View());
        }
Esempio n. 10
0
        /// <summary>
        /// 客户信息,更新或新增
        /// </summary>
        /// <returns></returns>
        public ActionResult Customer()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "基础信息"
            };
            //ViewBag.pIds = JsonConvert.DeserializeObject<List<int>>(Session["pIds"].ToString());
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("客户信息", "selected", "/device/customerList"),
                new nav("设备信息", "", "/device/index"),
                new nav("建点", "", "/device/Establish"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            if (Request["no"] != null)
            {
                var no   = Request["no"].ToString();
                var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
                //ViewBag.customer = AllFunc.Instance.GetCustomerByNo(no, user);
                ViewBag.customer = AllFunc.Instance.GetCustomerViewByNo(no, user);
                ViewBag.isAdd    = 0;
            }
            else
            {
                ViewBag.customerNo = AllFunc.Instance.GetNewCustomerNo();
                ViewBag.isAdd      = 1;
            }
            return(View());
        }
Esempio n. 11
0
        /// <summary>
        /// 操作记录视图
        /// </summary>
        /// <returns></returns>
        public ActionResult OperRecord()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "操作记录"
            };
            var listNav = new List <nav>
            {
                new nav("操作记录", "heading", "/record/operRecord"),
                //new nav("区域管理", "selected", "/config"),
                //new nav("设备类型管理", "", "/config/metertype"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            return(View());
        }
Esempio n. 12
0
        // GET: Main
        public ActionResult Index()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "配置"
            };
            var listNav = new List <nav>
            {
                new nav("配置管理", "heading", ""),
                new nav("区域管理", "selected", "/config"),
                new nav("设备类型管理", "", "/config/metertype"),
                //new nav("员工账号", "", "/user/staff"),
                //new nav("账号信息", "", "/user/userDetail"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            return(View());
        }
Esempio n. 13
0
        /// <summary>
        /// 账号个人信息
        /// </summary>
        /// <returns></returns>
        public ActionResult UserDetail(string userId)
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "账号管理"
            };
            var listNav = new List <nav>
            {
                new nav("账号管理", "heading", "/user/userDetail"),
                new nav("个人信息", "selected", "/user/userDetail"),
            };

            if (user.level > 98)
            {
                listNav.Add(new nav("子账号管理", "", "/user/index"));
            }
            if (user.level > 97)
            {
                listNav.Add(new nav("员工账号", "", "/user/staff"));
            }

            lay.listNav = listNav;
            ViewBag.lay = lay;
            //ViewBag.areaDict = AllFunc.Instance.GetAreaList();
            var id = Convert.ToInt32(Session["userId"]);

            if (userId == null)
            {
                ViewBag.userId = 0;
                var uir = UserPermissionViewOper.Instance.GetListUIR(id);
                ViewBag.uir = uir;
            }
            else
            {
                ViewBag.userId = userId;
                var uir = UserPermissionViewOper.Instance.GetUIRValidate(Convert.ToInt32(userId), id);
                ViewBag.uir = uir;
            }

            return(View());
        }
Esempio n. 14
0
        public ActionResult StdSumReport()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "数据分析"
            };
            var listNav = new List <nav>
            {
                new nav("统计报表", "heading", ""),
                new nav("用量统计", "selected", "/statistics/StdSumReport"),
                new nav("充值统计", "", "/statistics/chargeReport"),
            };
            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());

            ViewBag.UserLv = AllFunc.Instance.GetUserSelects(user);

            //ViewBag.custList = AllFunc.Instance.GetCustomerListByUser(user);
            lay.listNav = listNav;
            ViewBag.lay = lay;
            return(View());
        }
Esempio n. 15
0
        /// <summary>
        /// 协议管理
        /// </summary>
        /// <returns></returns>
        public ActionResult Protocol()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "配置"
            };
            var listNav = new List <nav>
            {
                new nav("配置管理", "heading", ""),
                new nav("协议管理", "selected", "/config/protocol"),
                new nav("区域管理", "", "/config/index"),
                new nav("设备类型管理", "", "/config/metertype"),
                new nav("参数设置", "", "/config/config"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;


            return(View());
        }
Esempio n. 16
0
        public ActionResult GuidePage()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "基础信息"
            };
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("建点", "selected", "/device/Establish"),
                new nav("设备信息", "", "/device/index"),
                new nav("客户信息", "", "/device/customerList"),
            };


            ViewBag.cno = Request["customerNo"] ?? "0";

            lay.listNav = listNav;
            ViewBag.lay = lay;
            return(View());
        }
Esempio n. 17
0
        /// <summary>
        /// 报警历史记录查看
        /// </summary>
        /// <returns></returns>
        public ActionResult List()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "报警信息"
            };
            var listNav = new List <nav>
            {
                new nav("报警信息", "heading", ""),
                new nav("历史记录", "selected", "/alarm/list"),
                //new nav("设备报警值设置", "", "/alarm/deviceConfig"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());

            ViewBag.UserLv = AllFunc.Instance.GetUserSelects(user);
            //ViewBag.devices = AllFunc.Instance.GetDeviceByUser(user);
            return(View());
        }
Esempio n. 18
0
        /// <summary>
        /// 员工权限管理
        /// </summary>
        /// <returns></returns>
        public ActionResult Permission()
        {
            var         user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            LayoutIndex lay  = new LayoutIndex
            {
                activeName = "账号管理"
            };
            //var listNav = new List<nav>
            //{
            //    new nav("账号管理", "heading", "/user/userDetail"),
            //    new nav("员工账号", "selected", "/user/staff"),
            //    new nav("子账号管理", "", "/user/index"),
            //    new nav("个人信息", "", "/user/userDetail"),
            //};
            var listNav = new List <nav>
            {
                new nav("账号管理", "heading", "/user/userDetail"),
                new nav("个人信息", "selected", "/user/userDetail"),
            };

            if (user.level > 98)
            {
                listNav.Add(new nav("子账号管理", "", "/user/index"));
            }
            if (user.level > 97)
            {
                listNav.Add(new nav("员工账号", "", "/user/staff"));
            }

            lay.listNav     = listNav;
            ViewBag.lay     = lay;
            ViewBag.addName = "添加新员工";
            var parentId = Convert.ToInt32(Session["userId"]);
            var id       = Convert.ToInt32(Request["staffid"]);

            ViewBag.list = AllFunc.Instance.GetPermissionByUserId(id, parentId);

            return(View());
        }
Esempio n. 19
0
        /// <summary>
        /// 具体报警信息
        /// </summary>
        /// <returns></returns>
        public ActionResult AlarmInfo()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "报警信息"
            };
            var listNav = new List <nav>
            {
                new nav("报警信息", "heading", ""),
                new nav("报警时间轴", "selected", ""),
                new nav("历史记录", "", "/alarm/list"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            var user    = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());
            var meterNo = Convert.ToInt32(Request["meterNo"]);
            var list    = AllFunc.Instance.GetAlarmByMeterNo(meterNo, user);

            ViewBag.list = list;
            return(View());
        }
Esempio n. 20
0
 public static double[,] ComputeLayoutElevation(IEnumerable<Vector2D> layout, LayoutSettings layoutSettings, int matrixRows, int matrixCols,
     double sigma, double r, bool normalize, bool cut, double cutStdevMult)
 {
     Utils.ThrowException(layout == null ? new ArgumentNullException("layout") : null);
     Utils.ThrowException(layoutSettings == null ? new ArgumentNullException("layoutSettings") : null);
     Utils.ThrowException(matrixRows < 1 ? new ArgumentOutOfRangeException("matrixRows") : null);
     Utils.ThrowException(matrixCols < 1 ? new ArgumentOutOfRangeException("matrixCols") : null);
     Utils.ThrowException(sigma <= 0 ? new ArgumentOutOfRangeException("sigma") : null);
     LayoutSettings nrmLayoutSettings = layoutSettings.Clone();
     double fX = 1.0 / (layoutSettings.Width - 2.0 * layoutSettings.MarginHoriz);
     double fY = 1.0 / (layoutSettings.Height - 2.0 * layoutSettings.MarginVert);
     nrmLayoutSettings.Width *= fX;
     nrmLayoutSettings.MarginHoriz *= fX;
     nrmLayoutSettings.Height *= fY;
     nrmLayoutSettings.MarginVert *= fY;
     Vector2D[] nrmLayout = nrmLayoutSettings.AdjustLayout(layout);
     LayoutIndex layoutIndex = new LayoutIndex();
     layoutIndex.MaxPointsPerLeaf = 100; // *** hardcoded max points per leaf
     if (r > 0)
     {
         layoutIndex.BuildIndex(nrmLayout);
     }
     double[,] zMtx = new double[matrixRows, matrixCols];
     Vector2D pixSz = new Vector2D(nrmLayoutSettings.Width / (double)matrixCols, nrmLayoutSettings.Height / (double)matrixRows);
     double maxZ = 0;
     double avgZ = 0;
     int row = 0;
     for (double y = pixSz.Y / 2.0; y < nrmLayoutSettings.Height; y += pixSz.Y, row++)
     {
         int col = 0;
         for (double x = pixSz.X / 2.0; x < nrmLayoutSettings.Width; x += pixSz.X, col++)
         {
             Vector2D pt0 = new Vector2D(x, y);
             double z = 0;
             if (r <= 0)
             {
                 foreach (Vector2D pt in nrmLayout)
                 {
                     double dist = (pt - pt0).GetLength();
                     z += Math.Exp(-sigma * dist * dist);
                 }
             }
             else
             {
                 foreach (IdxDat<Vector2D> pt in layoutIndex.GetPoints(pt0, r))
                 {
                     double dist = (pt.Dat - pt0).GetLength();
                     z += Math.Exp(-sigma * dist * dist);
                 }
             }
             zMtx[row, col] = z;
             if (z > maxZ) { maxZ = z; }
             avgZ += z;
         }
     }
     avgZ /= (double)(matrixRows * matrixCols);
     if (avgZ > 0)
     {
         if (cut)
         {
             double stdev = 0;
             for (row = 0; row < zMtx.GetLength(0); row++)
             {
                 for (int col = 0; col < zMtx.GetLength(1); col++)
                 {
                     stdev += (zMtx[row, col] - avgZ) * (zMtx[row, col] - avgZ);
                 }
             }
             stdev = Math.Sqrt(stdev / (double)(matrixRows * matrixCols));
             maxZ = avgZ + stdev * cutStdevMult;
             for (row = 0; row < zMtx.GetLength(0); row++)
             {
                 for (int col = 0; col < zMtx.GetLength(1); col++)
                 {
                     if (zMtx[row, col] > maxZ) { zMtx[row, col] = maxZ; }
                 }
             }
         }
         if (normalize && maxZ > 0)
         {
             for (row = 0; row < zMtx.GetLength(0); row++)
             {
                 for (int col = 0; col < zMtx.GetLength(1); col++)
                 {
                     zMtx[row, col] /= maxZ;
                 }
             }
         }
     }
     return zMtx;
 }
Esempio n. 21
0
        /// <summary>
        /// 表具信息,更新或新增
        /// </summary>
        /// <returns></returns>
        public ActionResult Device()
        {
            LayoutIndex lay = new LayoutIndex
            {
                activeName = "基础信息"
            };
            var listNav = new List <nav>
            {
                new nav("信息管理", "heading", "/device/index"),
                new nav("设备信息", "selected", "/device/index"),
                new nav("建点", "", "/device/Establish"),
                new nav("客户信息", "", "/device/customerList"),
            };

            lay.listNav = listNav;
            ViewBag.lay = lay;
            var no = -1;

            var deviceView = new DeviceView {
                meterNo = 0
            };

            var user = JsonConvert.DeserializeObject <AllInOne_UserInfo>(Session["user"].ToString());

            var sons = AllInOne_UserInfoOper.Instance.GetSonAndGrandSon(user);

            //sons.Add(user);
            sons                  = sons.OrderByDescending(p => p.level).ToList();
            ViewBag.sons          = sons;
            ViewBag.meterTypeList = MeterTypeOper.Instance.GetAllList();
            //更新
            if (Request["no"] != null)
            {
                no = Convert.ToInt32(Request["no"]);

                //ViewBag.device = AllFunc.Instance.GetDeviceByNo(no, user);
                deviceView = DeviceInfoOper.Instance.GetViewByNo(no, user);
            }
            //新建
            else
            {
                ViewBag.newId = AllFunc.Instance.GetNewDeviceId();
            }

            //var sons = AllInOne_UserInfoOper.Instance.GetSonAndGrandSon(user);
            //sons.Add(user);
            //sons = sons.OrderByDescending(p => p.level).ToList();
            //ViewBag.sons = sons;

            ViewBag.device = deviceView;

            //ViewBag.pIds = JsonConvert.DeserializeObject<List<int>>(Session["pIds"].ToString());
            ViewBag.no          = no;
            ViewBag.caliberList = AllFunc.Instance.GetCaliber();
            ViewBag.fluidNoList = AllFunc.Instance.GetFluidList();

            var fn = new Factory_No();


            var server = ConfigurationManager.AppSettings.Get("server");

            ViewBag.server = server ?? "";
            //if (server == "gt")
            //{
            //    fn.name = "杭州鸿鹄";
            //    fn.no = "03";
            //}
            //else {
            //    fn.name = "上海信东";
            //    fn.no = "08";
            //}
            //ViewBag.fn = fn;
            return(View());
        }