Exemple #1
0
        public async Task EditWeChatDomainAsync(EditWeChatDomainModel model)
        {
            if (string.IsNullOrEmpty(model.Url))
            {
                throw new InvalidOperationException("Url为空");
            }
            if (string.IsNullOrEmpty(model.Name))
            {
                throw new InvalidOperationException("名称为空");
            }
            if (await _weChatDomainRepository.CountAsync(m => m.ID != model.ID && m.Url == model.Url) > 0)
            {
                throw new InvalidOperationException("Url已存在");
            }
            WeChatDomain weChatDomainFromDB = await _weChatDomainRepository.FirstOrDefaultAsync(model.ID);

            if (weChatDomainFromDB == null)
            {
                throw new InvalidOperationException("微信域名不存在");
            }
            model.CopyProperties(weChatDomainFromDB);
            weChatDomainFromDB.UpdateTime = DateTime.Now;
            _weChatServiceUnitOfWork.RegisterEdit(weChatDomainFromDB);
            await _weChatServiceUnitOfWork.CommitAsync();

            _weChatDomainRepository.ClearCache();
        }
Exemple #2
0
        public async Task <WeChatDomainDTO> GetWeChatDomainInfoAsync(Guid id)
        {
            WeChatDomain weChatDomainFromDB = await _weChatDomainRepository.FirstOrDefaultAsync(id);

            if (weChatDomainFromDB == null)
            {
                throw new InvalidOperationException("微信域名不存在");
            }
            return(_mapper.Map <WeChatDomainDTO>(weChatDomainFromDB));
        }
Exemple #3
0
        public async Task DeleteWeChatDomainAsync(Guid id)
        {
            WeChatDomain weChatDomainFromDB = await _weChatDomainRepository.FirstOrDefaultAsync(id);

            if (weChatDomainFromDB == null)
            {
                throw new InvalidOperationException("微信域名不存在");
            }
            _weChatServiceUnitOfWork.RegisterDelete(weChatDomainFromDB);
            await _weChatServiceUnitOfWork.CommitAsync();

            _weChatDomainRepository.ClearCache();
        }
Exemple #4
0
        /// <summary>
        /// 根据位序获取同级的位序内信息
        /// </summary>
        /// <param name="weChatDomain1"></param>
        /// <param name="weChatDomain2"></param>
        /// <returns></returns>
        private async Task <List <WeChatDomain> > GetWeChatDomainsByIndex(WeChatDomain weChatDomain1, WeChatDomain weChatDomain2)
        {
            var weChatDomains = new List <WeChatDomain>
            {
                weChatDomain1,
                weChatDomain2
            };

            weChatDomains = weChatDomains.OrderBy(m => m.Index).ToList();
            WeChatDomain firstWeChatDomain = weChatDomains[0];
            WeChatDomain lastWeChatDomain  = weChatDomains[1];

            weChatDomains.AddRange(await _weChatDomainRepository.WhereAsync(m => m.Index > firstWeChatDomain.Index && m.Index < lastWeChatDomain.Index).ToList());
            weChatDomains = weChatDomains.OrderBy(m => m.Index).ToList();
            return(weChatDomains);
        }