/// <summary>
        ///添加安装位置
        /// </summary>
        /// <param name="PositionRequest"></param>
        /// <returns></returns>
        public BasicResponse AddPosition(PositionAddRequest PositionRequest)
        {
            BasicResponse Result  = new BasicResponse();
            Jc_WzInfo     item    = PositionRequest.PositionInfo;
            Jc_WzInfo     olditem = null;

            PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest();

            positionCacheRequest.PositionId = item.ID;
            var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest);

            olditem = result.Data;

            //增加重复判断
            if (result.Data != null)
            { //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前添加的安装位置已存在!";
                return(Result);
            }
            //保存数据库
            var _jc_Wz      = ObjectConverter.Copy <Jc_WzInfo, Jc_WzModel>(PositionRequest.PositionInfo);
            var resultjc_Wz = _Repository.AddPosition(_jc_Wz);

            //保存缓存
            PositionCacheAddRequest AddPositionCacheRequest = new PositionCacheAddRequest();

            AddPositionCacheRequest.PositionInfo = item;
            _PositionCacheService.AddPositionCache(AddPositionCacheRequest);

            return(Result);
        }
        /// <summary>
        /// 安装位置更新
        /// </summary>
        /// <param name="PositionRequest"></param>
        /// <returns></returns>
        public BasicResponse UpdatePosition(PositionUpdateRequest PositionRequest)
        {
            BasicResponse Result = new BasicResponse();
            Jc_WzInfo     item   = PositionRequest.PositionInfo;

            PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest();

            positionCacheRequest.PositionId = item.WzID;
            var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest);

            //增加判断
            if (result.Data == null)
            { //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前更新的安装位置不存在!";
                return(Result);
            }
            //保存数据库
            var _jc_Wz = ObjectConverter.Copy <Jc_WzInfo, Jc_WzModel>(PositionRequest.PositionInfo);

            _Repository.UpdatePosition(_jc_Wz);
            //保存缓存
            PositionCacheUpdateRequest UpdatePositionCacheRequest = new PositionCacheUpdateRequest();

            UpdatePositionCacheRequest.PositionInfo = item;
            _PositionCacheService.UpdatePositionCache(UpdatePositionCacheRequest);

            return(Result);
        }
        public BasicResponse DeletePosition(PositionDeleteRequest PositionRequest)
        {
            BasicResponse Result = new BasicResponse();
            Jc_WzInfo     item   = new Jc_WzInfo();

            PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest();

            positionCacheRequest.PositionId = PositionRequest.Id;
            var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest);

            item = result.Data;
            //增加判断
            if (result.Data == null)
            { //缓存中存在此测点
                Result.Code    = 1;
                Result.Message = "当前删除的安装位置不存在!";
                return(Result);
            }

            //数据库操作
            _Repository.DeletePosition(item.WzID);

            //保存缓存
            PositionCacheDeleteRequest positionDeleteCacheRequest = new PositionCacheDeleteRequest();

            positionDeleteCacheRequest.PositionInfo = item;
            _PositionCacheService.DeletePositionCache(positionDeleteCacheRequest);

            return(Result);
        }
        public BasicResponse <Jc_WzInfo> GetPositionCacheByKey(PositionCacheGetByKeyRequest positionCacheRequest)
        {
            var positionCache         = PositionCache.PositionCahceInstance.Query(position => position.WzID == positionCacheRequest.PositionId).FirstOrDefault();
            var positionCacheResponse = new BasicResponse <Jc_WzInfo>();

            positionCacheResponse.Data = positionCache;
            return(positionCacheResponse);
        }