示例#1
0
        public IHttpActionResult DeviceAddChart(HomeConfigurationModel model)
        {
            UserApi api     = new UserApi();
            var     userApi = api.GetUserInfoByToken();

            model.DashBoardType = "1";
            model.CreateUserID  = userApi.Data.UserId;
            model.OrgID         = userApi.Data.OrgID.ToString();
            HomeConfigurationBLL   device        = new HomeConfigurationBLL();
            DashBoardDataListModel DashBoardData = new DashBoardDataListModel()
            {
                x = 0,
                y = 0,
                w = Convert.ToInt32(model.Width),
                h = Convert.ToInt32(model.Height)
            };

            model.DashBoardData = JsonConvert.SerializeObject(DashBoardData);
            model.DatabaseType  = "0";//默认设备源
            DashBoardChartConfigModel ChartConfig = new DashBoardChartConfigModel()
            {
                DatabaseType        = model.DatabaseType,
                DataType            = model.DataType,
                RecentInterval      = model.RecentInterval,
                RecentUnit          = model.RecentUnit,
                StartTime           = model.StartTime.ToString(),
                EndTime             = model.EndTime.ToString(),
                StatisticalInterval = model.StatisticalInterval,
                IntervalUnit        = model.IntervalUnit,
                MinValue            = model.MinValue,
                MaxValue            = model.MaxValue,
                ValueType           = model.ValueType,
                TextColor           = model.TextColor,
                BackgroundColor     = model.BackgroundColor
            };
            List <HomeDeviceInfo> HomeDeviceInfoList = new List <HomeDeviceInfo>();

            if (model.DeviceItemList != null)
            {
                for (int i = 0; i < model.DeviceItemList.Count; i++)
                {
                    HomeDeviceInfo HomeDeviceInfo = new HomeDeviceInfo();
                    HomeDeviceInfo.DeviceID     = model.DeviceID;
                    HomeDeviceInfo.DeviceItemID = model.DeviceItemList[i].DeviceItemID;
                    HomeDeviceInfoList.Add(HomeDeviceInfo);
                }
            }
            ChartConfig.HomeDeviceInfoList = HomeDeviceInfoList;
            model.ChartConfig = JsonConvert.SerializeObject(ChartConfig);

            var add = device.AddChart(model);

            return(InspurJson <RetHomeConfiguration>(add));
        }
示例#2
0
        public IHttpActionResult EditChart(HomeConfigurationModel model)
        {
            HomeConfigurationBLL   device        = new HomeConfigurationBLL();
            DashBoardDataListModel DashBoardData = new DashBoardDataListModel()
            {
                x = Convert.ToInt32(model.XAxis),
                y = Convert.ToInt32(model.YAxis),
                w = Convert.ToInt32(model.Width),
                h = Convert.ToInt32(model.Height),
                i = model.ID.ToString()
            };

            model.DashBoardData = JsonConvert.SerializeObject(DashBoardData);
            model.DatabaseType  = "0";//默认设备源
            DashBoardChartConfigModel ChartConfig = new DashBoardChartConfigModel()
            {
                DatabaseType        = model.DatabaseType,
                DataType            = model.DataType,
                RecentInterval      = model.RecentInterval,
                RecentUnit          = model.RecentUnit,
                StartTime           = model.StartTime.ToString(),
                EndTime             = model.EndTime.ToString(),
                StatisticalInterval = model.StatisticalInterval,
                IntervalUnit        = model.IntervalUnit,
                MinValue            = model.MinValue,
                MaxValue            = model.MaxValue,
                ValueType           = model.ValueType,
                TextColor           = model.TextColor,
                BackgroundColor     = model.BackgroundColor
            };
            List <HomeDeviceInfo> HomeDeviceInfoList = new List <HomeDeviceInfo>();

            if (model.DeviceItemList != null)
            {
                for (int i = 0; i < model.DeviceItemList.Count; i++)
                {
                    HomeDeviceInfo HomeDeviceInfo = new HomeDeviceInfo();
                    HomeDeviceInfo.DeviceID     = model.DeviceID;
                    HomeDeviceInfo.DeviceItemID = model.DeviceItemList[i].DeviceItemID;
                    HomeDeviceInfoList.Add(HomeDeviceInfo);
                }
            }
            ChartConfig.HomeDeviceInfoList = HomeDeviceInfoList;
            model.ChartConfig = JsonConvert.SerializeObject(ChartConfig);

            var update = device.EditChart(model);

            return(InspurJson <RetHomeConfiguration>(update));
        }
        /// <summary>
        /// 保存布局
        /// </summary>
        public ReturnItem <RetHomeConfiguration> SaveLayout(List <DashBoardDataListModel> list)
        {
            ReturnItem <RetHomeConfiguration> r = new ReturnItem <RetHomeConfiguration>();

            using (UserEntities user = new UserEntities())
            {
                try
                {
                    foreach (var item in list)
                    {
                        var id        = Convert.ToInt32(item.i);
                        var savechart = user.U_HomeConfiguration.Where(s => s.ID == id).FirstOrDefault();
                        if (savechart != null)
                        {
                            DashBoardDataListModel DashBoardData = new DashBoardDataListModel()
                            {
                                x = item.x,
                                y = item.y,
                                w = item.w,
                                h = item.h,
                                i = item.i
                            };
                            savechart.DashBoardData = JsonConvert.SerializeObject(DashBoardData);
                            user.SaveChanges();
                        }
                    }
                    r.Msg  = "布局保存成功";
                    r.Code = 0;
                }
                catch (Exception e)
                {
                    r.Msg = "内部错误请重试";
                    log.ErrorFormat("内部错误:{0},{1}", e.Message, e.StackTrace);
                    r.Code = -1;
                }
            }
            return(r);
        }
        /// <summary>
        /// 新增图表
        /// </summary>
        public ReturnItem <RetHomeConfiguration> AddChart(HomeConfigurationModel parameter)
        {
            ReturnItem <RetHomeConfiguration> r = new ReturnItem <RetHomeConfiguration>();

            using (UserEntities user = new UserEntities())
            {
                try
                {
                    var OrgID         = Convert.ToInt32(parameter.OrgID);
                    var DashBoardType = Convert.ToInt32(parameter.DashBoardType);
                    var addchart      = user.U_HomeConfiguration.Where(s => s.ChartName == parameter.ChartName && s.OrgID == OrgID && s.DashBoardType == DashBoardType).FirstOrDefault();
                    if (addchart != null)
                    {
                        r.Data = null;
                        r.Code = -1;
                        r.Msg  = "设备图表已存在";
                        return(r);
                    }
                    if (addchart == null)
                    {
                        U_HomeConfiguration newChart = new U_HomeConfiguration()
                        {
                            DashBoardType = Convert.ToInt32(parameter.DashBoardType),
                            ChartName     = parameter.ChartName,
                            ChartType     = Convert.ToInt32(parameter.ChartType),
                            ChartConfig   = parameter.ChartConfig,
                            DashBoardData = parameter.DashBoardData,
                            Remark        = parameter.Remark,
                            SortID        = Convert.ToInt32(parameter.SortID),
                            CreateTime    = DateTime.Now,
                            CreateUserID  = Convert.ToInt32(parameter.CreateUserID),
                            OrgID         = Convert.ToInt32(parameter.OrgID)
                        };
                        if (parameter.DeviceID != "" && parameter.DeviceID != null)
                        {
                            newChart.DeviceID = Convert.ToInt32(parameter.DeviceID);
                        }
                        user.U_HomeConfiguration.Add(newChart);
                        user.SaveChanges();

                        var getchart = user.U_HomeConfiguration.Where(s => s.ChartName == parameter.ChartName && s.OrgID == OrgID).FirstOrDefault();
                        if (getchart != null)
                        {
                            DashBoardDataListModel DashBoardData = new DashBoardDataListModel();
                            if (getchart.DashBoardData != "" && getchart.DashBoardData != null)
                            {
                                DashBoardData = JsonConvert.DeserializeObject <DashBoardDataListModel>(getchart.DashBoardData);
                            }
                            DashBoardData.i        = getchart.ID.ToString();
                            getchart.DashBoardData = JsonConvert.SerializeObject(DashBoardData);
                        }
                        user.SaveChanges();
                        r.Msg  = "设备信息新增成功";
                        r.Code = 0;
                    }
                }
                catch (Exception e)
                {
                    r.Msg = "内部错误请重试";
                    log.ErrorFormat("内部错误:{0},{1}", e.Message, e.StackTrace);
                    r.Code = -1;
                }
            }
            return(r);
        }
示例#5
0
        public IHttpActionResult IndexEditChart(HomeConfigurationModel model)
        {
            HomeConfigurationBLL device = new HomeConfigurationBLL();

            model.DashBoardType = "0";//首页
            DashBoardDataListModel DashBoardData = new DashBoardDataListModel()
            {
                x = Convert.ToInt32(model.XAxis),
                y = Convert.ToInt32(model.YAxis),
                w = Convert.ToInt32(model.Width),
                h = Convert.ToInt32(model.Height),
                i = model.ID.ToString()
            };

            model.DashBoardData = JsonConvert.SerializeObject(DashBoardData);

            DashBoardChartConfigModel ChartConfig = new DashBoardChartConfigModel()
            {
                DatabaseType        = model.DatabaseType,
                DataType            = model.DataType,
                RecentInterval      = model.RecentInterval,
                RecentUnit          = model.RecentUnit,
                StartTime           = model.StartTime.ToString(),
                EndTime             = model.EndTime.ToString(),
                StatisticalInterval = model.StatisticalInterval,
                IntervalUnit        = model.IntervalUnit,
                MinValue            = model.MinValue,
                MaxValue            = model.MaxValue,
                ValueType           = model.ValueType,
                TextColor           = model.TextColor,
                BackgroundColor     = model.BackgroundColor
            };
            List <HomeDeviceInfo> HomeDeviceInfoList = new List <HomeDeviceInfo>();

            if (model.Property != null)
            {
                if (model.Property.Count == 1) //设备,总览,表格
                {
                    if (model.Property[0].data[0] == "1")
                    {
                        // 设备
                        ChartConfig.SelectionType = "1";
                        HomeDeviceInfo HomeDeviceInfo = new HomeDeviceInfo();
                        HomeDeviceInfo.DeviceID     = model.Property[0].data[1];
                        HomeDeviceInfo.DeviceItemID = model.Property[0].data[2];
                        HomeDeviceInfoList.Add(HomeDeviceInfo);
                    }
                    else if (model.Property[0].data[0] == "2")
                    {
                        // 总览
                        ChartConfig.SelectionType = "2";
                    }
                    else if (model.Property[0].data[0] == "3")
                    {
                        // 表格
                        ChartConfig.SelectionType = "3";
                    }
                }
                else if (model.Property.Count > 1) //只可能设备
                {
                    for (int i = 0; i < model.Property.Count; i++)
                    {
                        ChartConfig.SelectionType = "1";
                        HomeDeviceInfo HomeDeviceInfo = new HomeDeviceInfo();
                        HomeDeviceInfo.DeviceID     = model.Property[i].data[1];
                        HomeDeviceInfo.DeviceItemID = model.Property[i].data[2];
                        HomeDeviceInfoList.Add(HomeDeviceInfo);
                    }
                }
            }
            ChartConfig.HomeDeviceInfoList = HomeDeviceInfoList;
            model.ChartConfig = JsonConvert.SerializeObject(ChartConfig);

            var update = device.EditChart(model);

            return(InspurJson <RetHomeConfiguration>(update));
        }