public async Task <Report> AddReport(long userId, AddReportModel model) { if (await CheckUserAndRole(userId, CommonConstants.MODERATOR) == false && await CheckUserAndRole(userId, CommonConstants.ADMIN) == false && await CheckUserAndRole(userId, CommonConstants.RENTER) == false) { throw new ServiceException("Tài khoản không có quyền truy cập"); } var user = userManager.Users.Where(x => x.Id == userId && x.IsConfirm).FirstOrDefault(); if (user == null) { throw new ServiceException("Tài khoản không tồn tại"); } var post = context.Posts.Where(p => p.PublicTime < DateTime.Now && p.PostStatus == Enums.PostStatusEnum.Accepted && p.PostId == model.PostId); if (post == null) { throw new ServiceException("Bài đăng không tồn tại"); } Report report = new Report() { UserName = user.UserName, Reason = model.Reason, PostId = model.PostId, IsDelete = false }; await context.Reports.AddAsync(report); await context.SaveChangesAsync(); return(report); }
public ActionResult Index(AddReportModel model) { if (!ModelState.IsValid) { return(View(new IndexViewModel { Formularz = model, IndexList = _formService.GetList().ToList() })); } _formService.RegisterForm(model); return(RedirectToAction("Index")); }
public async Task <ActionResult <Report> > PostAsync(AddReportModel report) { _logger.LogInformation("Creating report..."); var created = await _service.CreateReportAsync( _mapper.Map <DAL.Entities.Report>(report)); _logger.LogInformation($"Created report [{created.Id}]."); return(CreatedAtAction( "GetReport", new { id = created.Id }, _mapper.Map <Report>(created))); }
public async Task <IActionResult> AddReport(AddReportModel model) { var session = HttpContext.Session; var userId = session.GetString(CommonConstants.USER_SESSION); if (userId == null) { return(Unauthorized()); } var accessId = Convert.ToInt64(userId); var result = await reportService.AddReport(accessId, model); if (result == null) { return(BadRequest()); } return(Ok(result)); }
public void RegisterForm(AddReportModel model) { _formRepository.Add(new Formularz { AuthorEmail = model.AuthorEmail, AuthorLastName = model.AuthorLastName, AuthorName = model.AuthorName, DefenderLastName = model.DefenderLastName, DefenderName = model.DefenderName, ReportSummary = model.ReportSummary, ReportTitle = model.ReportTitle, SubAuthorName = model.SubAuthorName, SubAuthorLastName = model.SubAuthorLastName, UniversityAddress = model.UniversityAddress, UniversityName = model.UniversityName }); UnitOfWork.Commit(); }
public Task <Report> CreateReportAsync(AddReportModel report) { return(_clientFactory.CreateClient().PostAsync(report)); }