예제 #1
0
        public PageGemDto CreatePageGem(PageGemDto data)
        {
            var pg = Mapper.Map <PageGem>(data);

            _pageGemRepositories.Create(pg);

            if (_pageGemRepositories.SaveChanges() > 0)
            {
                return(data);
            }
            return(null);
        }
        public ActionResult CreateOrUpdateAccount(CreateOrUpdateAccountViewModel data)
        {
            var        path = Server.MapPath(ConfigurationManager.AppSettings["AvatarUrl"]);
            AccountDto createOrpdateResult;

            if (data.AccounId == 0)
            {
                var result = new AccountDto()
                {
                    UserName    = data.UserName,
                    Password    = data.Password,
                    CreatedDate = DateTime.Now,
                    Description = data.Description,
                    Price       = data.Price,
                    RankId      = data.RankId,
                    Avatar      = ConfigurationManager.AppSettings["AvatarUrl"] + FileUlti.SaveFile(data.Avatar, path),
                    IsAvailable = true,
                    IsHot       = true,
                    EventPrice  = data.EventPrice
                };
                createOrpdateResult = _accountService.Create(result, FileUlti.ReadFromTextFile(data.Champs), FileUlti.ReadFromTextFile(data.Skins));
            }
            else
            {
                var accountDto = _accountService.ReadOneById(data.AccounId);
                var url        = FileUlti.SaveFile(data.Avatar, path);
                accountDto.Price       = data.Price;
                accountDto.Description = data.Description;
                accountDto.Password    = data.Password;
                accountDto.UserName    = data.UserName;
                accountDto.RankId      = data.RankId;
                accountDto.EventPrice  = data.EventPrice;
                accountDto.Avatar      = (!string.IsNullOrEmpty(url) ? accountDto.Avatar : ConfigurationManager.AppSettings["AvatarUrl"] + url);

                if (data.PageGem != null && data.PageGem.All(a => a != null))
                {
                    _accountRelationDataService.DeletePageGemByAccountId(data.AccounId);
                }
                createOrpdateResult = _accountService.Update(accountDto, FileUlti.ReadFromTextFile(data.Champs), FileUlti.ReadFromTextFile(data.Skins));

                if (data.PageGem == null || data.PageGem.Length == 1)
                {
                    return(RedirectToAction("AccountManagement"));
                }
            }

            if (createOrpdateResult != null)
            {
                var pathPageGem = Server.MapPath(ConfigurationManager.AppSettings["PageGemUrl"]);
                if (data.PageGem != null)
                {
                    foreach (var item in data.PageGem)
                    {
                        var pageGem = new PageGemDto()
                        {
                            AccountId   = createOrpdateResult.Id,
                            CreatedDate = DateTime.Now,
                            ImageUrl    = ConfigurationManager.AppSettings["PageGemUrl"] + FileUlti.SaveFile(item, pathPageGem)
                        };

                        _accountRelationDataService.CreatePageGem(pageGem);
                    }
                }
            }
            return(RedirectToAction("AccountManagement"));
        }