public async Task <VipTicketLoadModel> Load(VipTicketLoadModel model)
        {
            if (model.Id == 0)
            {
                return(new VipTicketLoadModel()
                {
                    Grid = await _vipTicketRepository.GetAllBy(item => item.OrderByDescending(q => q.Date).Map()),
                    Html = (await _htmlService.HtmlByCode(Const.VT)).Html
                });
            }
            else
            {
                var entity = await _vipTicketRepository.GetById(model.Id);

                return(new VipTicketLoadModel()
                {
                    Id = entity.RVipTicketId,
                    Date = entity.Date.ToString("yyyy-MM-dd"),
                    AltTag = entity.Alt,
                    ImgUrl = entity.Img,
                    Grid = await _vipTicketRepository.GetAllBy(item => item.OrderByDescending(q => q.Date).Map()),
                    Html = (await _htmlService.HtmlByCode(Const.VT)).Html
                });
            }
        }
        public async Task Save_Html(VipTicketLoadModel model)
        {
            var html = await _htmlService.HtmlByCode(Const.VT);

            await _htmlService.Update(new HtmlLoadModel()
            {
                Id   = html.Id,
                Html = model.Html
            });
        }
Пример #3
0
        public async Task <IActionResult> VipTicket_HtmlUpdate(VipTicketLoadModel model)
        {
            await _vipTicketService.Save_Html(model);

            return(RedirectToAction("VipTicket"));
        }
Пример #4
0
        public async Task <IActionResult> VipTicket_Save(VipTicketLoadModel model)
        {
            await _vipTicketService.Save_Update(model);

            return(RedirectToAction("VipTicket", new { id = model.Id }));
        }
        public async Task Save_Update(VipTicketLoadModel model)
        {
            var basePathExists = System.IO.Directory.Exists(GetPathToTickets());

            if (!basePathExists)
            {
                Directory.CreateDirectory(GetPathToTickets());
            }


            if (model.Id == 0)
            {
                if (model.File == null)
                {
                    throw new NullReferenceException($"File not found !!!");
                }

                var fileName = $"{Guid.NewGuid().ToString()}_{DateTime.Now.Date:yyyy-MM-dd}_{model.File.FileName}";
                var path     = Path.Combine(GetPathToTickets(), fileName);

                using (var fileStream = new FileStream(path, FileMode.Create, FileAccess.ReadWrite))
                {
                    model.File.CopyTo(fileStream);
                    fileStream.Close();
                    fileStream.Dispose();
                }

                await _vipTicketRepository.Create(new RVipTicket()
                {
                    Date = Convert.ToDateTime(model.Date),
                    Img  = fileName,
                    Alt  = model.AltTag,
                });
            }
            else
            {
                var entity = await _vipTicketRepository.GetById(model.Id);

                if (model.File != null)
                {
                    var fileName = $"{Guid.NewGuid().ToString()}_{DateTime.Now.Date:yyyy-MM-dd}_{model.File.FileName}";
                    var path     = Path.Combine(GetPathToTickets(), fileName);

                    if (File.Exists(Path.Combine(GetPathToTickets(), entity.Img)))
                    {
                        File.Delete(Path.Combine(GetPathToTickets(), entity.Img));
                    }

                    using (var fileStream = new FileStream(path, FileMode.Create, FileAccess.ReadWrite))
                    {
                        model.File.CopyTo(fileStream);
                        fileStream.Close();
                        fileStream.Dispose();
                    }
                    entity.Img = fileName;
                }

                entity.Alt  = model.AltTag;
                entity.Date = Convert.ToDateTime(model.Date);
                await _vipTicketRepository.Update(entity);
            }
        }