/// <summary>
        /// 批量添加
        /// </summary>
        /// <param name="NetworkModuleRequest"></param>
        /// <returns></returns>
        public BasicResponse AddNetworkModules(NetworkModulesRequest NetworkModuleRequest)
        {
            BasicResponse     Result = new BasicResponse();
            List <Jc_MacInfo> items  = NetworkModuleRequest.NetworkModulesInfo;
            List <Jc_MacInfo> NetworkModuleCaches = new List <Jc_MacInfo>();
            Jc_MacInfo        olditem             = null;

            NetworkModuleCacheGetAllRequest NetworkModuleCacheRequest = new NetworkModuleCacheGetAllRequest();
            var result = _NetworkModuleCacheService.GetAllNetworkModuleCache(NetworkModuleCacheRequest);

            NetworkModuleCaches = result.Data;

            foreach (Jc_MacInfo item in items)
            {
                olditem = NetworkModuleCaches.Find(a => a.MAC == item.MAC);
                //增加重复判断
                if (olditem != null)
                { //缓存中存在此测点
                    Result.Code    = 1;
                    Result.Message = "当前添加列表中的数据在数据库中已经存在!";
                    return(Result);
                }
            }

            //向网关同步数据
            List <Jc_MacInfo> SendItemList = items;
            var resultSync = SynchronousDataToGateway(SendItemList);

            if (!resultSync)
            {
                Result.Code    = 1;
                Result.Message = "向网关同步数据失败!";
                return(Result);
            }

            TransactionsManager.BeginTransaction(() =>
            {
                foreach (Jc_MacInfo item in items)
                {
                    item.IsMemoryData = false;
                    //保存数据库
                    var _jc_Mac = ObjectConverter.Copy <Jc_MacInfo, Jc_MacModel>(item);
                    //保存数据库不存连接号  20170713
                    _jc_Mac.NetID    = 0;
                    var resultjc_Def = _Repository.AddNetworkModule(_jc_Mac);
                }


                //添加到缓存
                NetworkModuleCacheBatchAddRequest BatchAddNetworkModuleCacheRequest = new NetworkModuleCacheBatchAddRequest();
                BatchAddNetworkModuleCacheRequest.NetworkModuleInfos = items;
                _NetworkModuleCacheService.BacthAddNetworkModuleCache(BatchAddNetworkModuleCacheRequest);
            });

            return(Result);
        }
 public BasicResponse BacthAddNetworkModuleCache(NetworkModuleCacheBatchAddRequest networkModuleCacheRequest)
 {
     NetworkModuleCache.NetworModuleCahceInstance.AddItems(networkModuleCacheRequest.NetworkModuleInfos);
     return(new BasicResponse());
 }