示例#1
0
        public ActionResult Add(int id = 0)
        {
            var Users = UserService.GetAll();

            string str = "";

            foreach (var item in Users)
            {
                str += "{'value':'" + item.Id + "','title':'" + item.RealName + "'},";
            }
            if (!string.IsNullOrWhiteSpace(str))
            {
                str = str.Remove(str.Length - 1, 1);
            }
            str = "[" + str + "]";
            ViewData["Users"] = str;
            var    roleusers = TableUserRoleService.GetByWhere(" where TableId=" + id);
            string rolestr   = "";

            foreach (var user in roleusers)
            {
                rolestr += "'" + user.UserId + "',";
            }
            if (!string.IsNullOrWhiteSpace(rolestr))
            {
                rolestr = rolestr.Remove(rolestr.Length - 1, 1);
            }
            ViewData["PrivateUsers"] = "[" + rolestr + "]";
            return(View());
        }
示例#2
0
        public ActionResult DesignTable(int Id = 0)
        {
            var            rowModel   = TableRowService.GetByWhere("where TableId=" + Id);
            var            tableUsers = TableUserRoleService.GetByWhere("where TableId=" + Id);
            var            tableModel = TableService.GetById(Id);
            TableEditModel model      = new TableEditModel();

            model.TableId = Id;
            model.Title   = tableModel != null ? tableModel.Title : "";
            model.RowNum  = tableModel != null ? tableModel.RowNum : 100;

            var AllUsers = UserService.GetAll();

            model.AllUserJson = JsonConvert.SerializeObject(AllUsers);//获取当前的所有用户
            List <UserModel> privatemodels = new List <UserModel>();

            foreach (var item in tableUsers)
            {
                var whereItems = AllUsers.Where(x => x.Id == item.UserId);
                if (whereItems.Count() > 0)
                {
                    var extItem = whereItems.First();
                    privatemodels.Add(extItem);
                }
            }
            model.PrivateUserJson = JsonConvert.SerializeObject(privatemodels); //获取当前的所有用户
                                                                                //获取表的列宽度
            List <string> fontwidthmodels = new List <string>();

            if (tableModel != null && !string.IsNullOrWhiteSpace(tableModel.ColimnWidths))
            {
                fontwidthmodels = tableModel.ColimnWidths.Split(',').ToList();
            }
            else
            {
                for (int i = 0; i < 26; i++)
                {
                    fontwidthmodels.Add("120");
                }
            }

            model.colwidthmodels = JsonConvert.SerializeObject(fontwidthmodels);
            //获取列标题
            //获取表的列宽度
            List <string> columntitlemodels = new List <string>();

            if (tableModel != null && !string.IsNullOrWhiteSpace(tableModel.ColumnTitles))
            {
                columntitlemodels = tableModel.ColumnTitles.Split(',').ToList();
            }
            else
            {
                for (int i = 0; i < 26; i++)
                {
                    columntitlemodels.Add(ExcelConvert.ToName(i));
                }
            }
            model.coltitlesmodels = JsonConvert.SerializeObject(columntitlemodels);
            return(View(model));
        }
示例#3
0
        public JsonResult Delete(int id)
        {
            bool res = TableService.DeleteById(id);

            if (res)
            {
                TableUserRoleService.DeleteByWhere(" where TableId=" + id);
                TableRowService.DeleteByWhere(" where TableId=" + id);
            }
            var result = res ? SuccessTip("删除成功") : ErrorTip("删除失败");

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
示例#4
0
        public JsonResult AddTable(ScadaTableModel model)
        {
            model.CreateTime   = DateTime.Now;
            model.CreateUserId = Operator.UserId;
            model.UpdateTime   = DateTime.Now;
            model.UpdateUserId = Operator.UserId;
            model.ColNum       = 26;
            List <int>    colWidths = new List <int>();
            List <string> colTitles = new List <string>();

            for (int i = 0; i < model.ColNum; i++)
            {
                colTitles.Add(ExcelConvert.ToName(i));
                colWidths.Add(120);
            }

            model.ColimnWidths = string.Join(",", colWidths.ToArray());
            model.ColumnTitles = string.Join(",", colTitles.ToArray());
            model.RowNum       = 100;
            model.FilterRule   = "";
            int  id    = 0;
            bool isres = TableService.Insert(model, out id);

            if (isres)
            {
                TableUserRoleService.DeleteByWhere(" where TableId=" + id);
                if (model.RoleUserID != null)
                {
                    string[] users = model.RoleUserID.Split(',');
                    for (int i = 0; i < users.Length; i++)
                    {
                        ScadaTableUserRoleModel role = new ScadaTableUserRoleModel();
                        role.CreateTime   = DateTime.Now;
                        role.CreateTime   = DateTime.Now;
                        role.CreateUserId = Operator.UserId;
                        role.UpdateTime   = DateTime.Now;
                        role.UpdateUserId = Operator.UserId;
                        role.SortCode     = i + 1;
                        role.TableId      = id;
                        role.UserId       = int.Parse(users[i]);
                        TableUserRoleService.Insert(role);
                    }
                }
            }
            var result = isres ? SuccessTip("添加成功") : ErrorTip("添加失败");

            return(Json(result));
        }
示例#5
0
        public JsonResult EditTable(ScadaTableModel model)
        {
            var sourmodel = TableService.GetById(model.Id);

            model.CreateTime   = DateTime.Now;
            model.CreateUserId = Operator.UserId;
            model.UpdateTime   = DateTime.Now;
            model.UpdateUserId = Operator.UserId;
            model.RowNum       = 100;
            model.ColNum       = 26;
            if (sourmodel != null)
            {
                model.ColimnWidths = sourmodel.ColimnWidths;
                model.ColumnTitles = sourmodel.ColumnTitles;
            }

            bool isres = TableService.UpdateById(model);

            if (isres)
            {
                TableUserRoleService.DeleteByWhere(" where TableId=" + model.Id);
                if (model.RoleUserID != null)
                {
                    string[] users = model.RoleUserID.Split(',');
                    for (int i = 0; i < users.Length; i++)
                    {
                        ScadaTableUserRoleModel role = new ScadaTableUserRoleModel();
                        role.CreateTime   = DateTime.Now;
                        role.CreateTime   = DateTime.Now;
                        role.CreateUserId = Operator.UserId;
                        role.UpdateTime   = DateTime.Now;
                        role.UpdateUserId = Operator.UserId;
                        role.SortCode     = i + 1;
                        role.TableId      = model.Id;
                        role.UserId       = int.Parse(users[i]);
                        TableUserRoleService.Insert(role);
                    }
                }
            }
            var result = isres ? SuccessTip("保存成功") : ErrorTip("保存失败");

            return(Json(result));
        }
示例#6
0
        public override ActionResult Index(int?id)
        {
            string para  = Request.QueryString["id"].Split('?')[0];
            string idstr = Request.QueryString["id"].Split('?')[1].Split('=')[1];

            base.Index(int.Parse(idstr));



            var            rowModel   = TableRowService.GetByWhere("where TableId=" + int.Parse(para)).First();
            var            tableUsers = TableUserRoleService.GetByWhere("where TableId=" + int.Parse(para));
            var            tableModel = TableService.GetById(int.Parse(para));
            TableRealModel model      = new TableRealModel();

            model.TableId = int.Parse(para);
            model.Title   = tableModel != null ? tableModel.Title : "";
            model.RowNum  = tableModel != null ? tableModel.RowNum : 100;

            var AllUsers = UserService.GetAll();

            model.AllUserJson = JsonConvert.SerializeObject(AllUsers);//获取当前的所有用户
            List <UserModel> privatemodels = new List <UserModel>();

            foreach (var item in tableUsers)
            {
                var whereItems = AllUsers.Where(x => x.Id == item.UserId);
                if (whereItems.Count() > 0)
                {
                    var extItem = whereItems.First();
                    privatemodels.Add(extItem);
                }
            }
            model.PrivateUserJson = JsonConvert.SerializeObject(privatemodels); //获取当前的所有用户
                                                                                //获取表的列宽度
            List <string> fontwidthmodels = new List <string>();

            if (tableModel != null && !string.IsNullOrWhiteSpace(tableModel.ColimnWidths))
            {
                fontwidthmodels = tableModel.ColimnWidths.Split(',').ToList();
            }
            else
            {
                for (int i = 0; i < 26; i++)
                {
                    fontwidthmodels.Add("120");
                }
            }

            model.colwidthmodels = JsonConvert.SerializeObject(fontwidthmodels);
            //获取列标题
            //获取表的列宽度
            List <string> columntitlemodels = new List <string>();

            if (tableModel != null && !string.IsNullOrWhiteSpace(tableModel.ColumnTitles))
            {
                columntitlemodels = tableModel.ColumnTitles.Split(',').ToList();
            }
            else
            {
                for (int i = 0; i < 26; i++)
                {
                    columntitlemodels.Add(ExcelConvert.ToName(i));
                }
            }
            model.coltitlesmodels = JsonConvert.SerializeObject(columntitlemodels);
            model.ScadaTable      = tableModel;
            model.FieldBackColors = rowModel.FieldBackColors;
            model.FieldColors     = rowModel.FieldColors;
            model.FieldFontSizes  = rowModel.FieldFontSizes;
            model.FieldIOPaths    = rowModel.FieldIOPaths;
            model.FieldWeights    = rowModel.FieldWeights;
            ///获取设备列表
            JavaScriptSerializer    js              = new JavaScriptSerializer(); //实例化一个能够序列化数据的类
            List <ExcelModel>       excelModels     = js.Deserialize <List <ExcelModel> >(rowModel.FieldIOPaths);
            List <DeviceGroupModel> deviceAllModels = DeviceGroupService.GetAll().ToList();
            List <DeviceGroupModel> deviceModels    = new List <DeviceGroupModel>();

            for (int i = 0; i < excelModels.Count; i++)
            {
                PropertyInfo[] properties = excelModels[i].GetType().GetProperties(BindingFlags.Instance | BindingFlags.Public);
                if (properties.Length <= 0)
                {
                    continue;
                }
                foreach (PropertyInfo item in properties)
                {
                    string name  = item.Name;
                    object value = item.GetValue(excelModels[i], null);
                    if (value != null && value.ToString() != "")
                    {
                        if (value.ToString().Split('/').Length >= 8)
                        {
                            try
                            {
                                DeviceGroupModel groupDevice = new DeviceGroupModel();
                                groupDevice.GroupId      = int.Parse(value.ToString().Split('/')[1]);
                                groupDevice.IO_SERVER_ID = value.ToString().Split('/')[2];
                                groupDevice.IO_COMM_ID   = value.ToString().Split('/')[3];
                                groupDevice.IO_DEVICE_ID = value.ToString().Split('/')[4];
                                groupDevice.UpdateCycle  = int.Parse(value.ToString().Split('/')[6]);
                                groupDevice.CurrentIO    = value.ToString().Split('/')[5];//当前的iO
                                DeviceGroupModel exitItem = deviceAllModels.Find(x => x.IO_SERVER_ID == groupDevice.IO_SERVER_ID && x.IO_COMM_ID == groupDevice.IO_COMM_ID && x.IO_DEVICE_ID == groupDevice.IO_DEVICE_ID && x.GroupId == groupDevice.GroupId);
                                if (exitItem != null)
                                {
                                    if (!deviceModels.Exists(x => x.IO_SERVER_ID == groupDevice.IO_SERVER_ID && x.IO_COMM_ID == groupDevice.IO_COMM_ID && x.IO_DEVICE_ID == groupDevice.IO_DEVICE_ID && x.GroupId == groupDevice.GroupId))
                                    {
                                        exitItem.CurrentIO = groupDevice.CurrentIO;
                                        deviceModels.Add(exitItem);
                                    }
                                }
                            }
                            catch
                            {
                                continue;
                            }
                        }
                    }
                }
            }
            model.Devices     = deviceModels;
            model.JsonDevices = js.Serialize(deviceModels);
            return(View(model));
        }