Beispiel #1
0
        /// <summary>
        /// 添加设备类型
        /// </summary>
        /// <param name="jc_Devrequest"></param>
        /// <returns></returns>
        public BasicResponse AddDeviceDefine(DeviceDefineAddRequest DeviceDefineRequest)
        {
            BasicResponse Result = new BasicResponse();
            Jc_DevInfo    item   = DeviceDefineRequest.Jc_DevInfo;
            //重复判断
            DeviceDefineCacheGetByKeyRequest DeviceDefineCacheRequest = new DeviceDefineCacheGetByKeyRequest();

            DeviceDefineCacheRequest.Devid = item.Devid;
            var result = _DeviceDefineCacheService.GetPointDefineCacheByKey(DeviceDefineCacheRequest);

            if (result.Data != null)
            {
                //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前添加的设备类型已存在!";
                return(Result);
            }
            //向网关同步数据
            List <Jc_DevInfo> SendItemList = new List <Jc_DevInfo>();

            SendItemList.Add(item);
            var resultSync = SynchronousDataToGateway(SendItemList);

            if (!resultSync)
            {
                Result.Code    = 1;
                Result.Message = "向网关同步数据失败!";
                return(Result);
            }
            //保存数据库
            var _jc_Dev      = ObjectConverter.Copy <Jc_DevInfo, Jc_DevModel>(DeviceDefineRequest.Jc_DevInfo);
            var resultjc_Dev = _Repository.AddDeviceDefine(_jc_Dev);
            //更新缓存
            DeviceDefineCacheAddRequest deviceDefineCacheRequest = new DeviceDefineCacheAddRequest();

            deviceDefineCacheRequest.DeviceDefineInfo = item;
            _DeviceDefineCacheService.AddPointDefineCache(deviceDefineCacheRequest);

            return(Result);
        }
Beispiel #2
0
 public BasicResponse AddPointDefineCache(DeviceDefineCacheAddRequest deviceDefineCacheRequest)
 {
     DeviceDefineCache.DeviceDefineCahceInstance.AddItem(deviceDefineCacheRequest.DeviceDefineInfo);
     return(new BasicResponse());
 }