예제 #1
0
 public void Save(DevicePanelModel entity)
 {
     using (var db = new HXContext())
     {
         db.Entry <DevicePanelModel>(entity).State = System.Data.Entity.EntityState.Modified;
         db.SaveChanges();
     }
 }
예제 #2
0
 public void Add(DevicePanelModel entity)
 {
     using (var db = new HXContext())
     {
         db.DevicePanel.Add(entity);
         db.SaveChanges();
     }
 }
예제 #3
0
        /// <summary>
        /// 添加设备面板
        /// </summary>
        /// <param name="dpvm"></param>
        /// <returns></returns>
        public DevicePanelViewModel AddDevicePanel(DevicePanelViewModel dpvm)
        {
            //获取关联的设备,验证设备下是否存在此面板,验证用户在此项目下是否有添加删除权限
            DeviceModel dm = GetDeviceInfo(dpvm.Token, dpvm.DeviceSn);

            if (dm == null)
            {
                dpvm.Success = false;
                dpvm.Message = "不存在关联的设备";
                return(dpvm);
            }
            int  projectId = dm.ProjectId.Value;
            bool bRet      = new UserService().IsAuthProject(dpvm.Account, dpvm.Token, projectId, 2);

            if (!bRet)
            {
                dpvm.Success = false;
                dpvm.Message = "该用户无添加设备的权限";
                return(dpvm);
            }
            DevicePanelModel dpm = dm.DevicePanel.Where(a => a.PanelName == dpvm.PanelName).FirstOrDefault();

            if (dpm != null)
            {
                dpvm.Success = false;
                dpvm.Message = "该设备已存在此面板,请选择其他名称";
                return(dpvm);
            }
            dpm           = new DevicePanelModel();
            dpm.DeviceSn  = dm.DeviceSn;
            dpm.PanelName = dpvm.PanelName;
            dpm.TypeId    = dpvm.TypeId;
            try
            {
                _dpr.Add(dpm);
                dpvm.Success = true;
                dpvm.Message = "添加设备面板成功";
            }
            catch (Exception ex)
            {
                dpvm.Success = false;
                dpvm.Message = "添加设备面板失败" + ex.Message;
            }

            return(dpvm);
        }
예제 #4
0
        public ResponseData UpdateDevicePanel(DevicePanelViewModel dpvm)
        {
            ResponseData rd = new ResponseData();
            //获取设备信息
            DeviceModel dm = new DeviceService().FindDevice(dpvm.DeviceSn, dpvm.Token);

            if (dm == null)
            {
                rd.Success = false;
                rd.Message = "设备不存在";
                return(rd);
            }
            #region 验证用户权限
            bool bRet = new DeviceService().CheckDeviceAuth(dm, dpvm.Account, dpvm.Token, 2);
            if (!bRet)
            {
                rd.Success = false;
                rd.Message = "用户没有权限修改设备信息";
                return(rd);
            }
            #endregion
            DevicePanelModel dpm = _dpr.Find(dpvm.DeviceSn, dpvm.Id);
            if (dpm == null)
            {
                rd.Success = false;
                rd.Message = "该设备面板不存在";
                return(rd);
            }
            dpm.PanelName = dpvm.PanelName;
            try
            {
                _dpr.Save(dpm);
                rd.Success = true;
                rd.Message = "修改设备面板名称成功";
            }
            catch (Exception ex)
            {
                rd.Success = false;
                rd.Message = "修改设备面板失败" + ex.Message;
            }
            return(rd);
        }
예제 #5
0
 public void Remove(DevicePanelModel entity)
 {
     using (var db = new HXContext())
     {
         //删除相关的数据
         var ddd = db.DeviceDataDefine.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceDataDefine.RemoveRange(ddd);
         var di = db.DeviceImage.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceImage.RemoveRange(di);
         var dv = db.DeviceVideo.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceVideo.RemoveRange(dv);
         var dbd = db.DeviceBaseData.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceBaseData.RemoveRange(dbd);
         var dm = db.DeviceMap.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceMap.RemoveRange(dm);
         var dcd = db.DeviceControlData.Where(a => a.PanelId == entity.Id).ToList();
         db.DeviceControlData.RemoveRange(dcd);
         db.Entry <DevicePanelModel>(entity).State = System.Data.Entity.EntityState.Deleted;
         db.SaveChanges();
     }
 }