public async Task <ActionResult <BLL.ViewModels.Form> > PostForm(PostFormModel formModel) { if (string.IsNullOrEmpty(formModel.name)) { return(BadRequest()); } var userId = User.Claims.First(c => c.Type == "UserID").Value; if (userId == null) { return(NotFound()); } var form = _mapper.Map <PostFormModel, BLL.ViewModels.Form>(formModel); form.Url = Hash(DateTime.Now + formModel.name); form = await _formDomain.Create(form); var userForm = new BLL.ViewModels.User_form { Form_id = form.Id, User_id = userId, Can_edit = true }; await new User_form(_config).Create(userForm); return(Ok()); }
public async Task <IActionResult> PutForm(PostFormModel formModel) { if (string.IsNullOrEmpty(formModel.name)) { return(BadRequest()); } var userId = User.Claims.First(c => c.Type == "UserID").Value; if (userId == null) { return(NotFound()); } var form = await _formDomain.Get(formModel.url); if (form == null) { return(NotFound()); } var uf = await _userFormDomain.Get(userId, form.Id); if (uf == null) { return(NotFound()); } if (!uf.Can_edit) { return(BadRequest()); } var formNew = _mapper.Map <BLL.ViewModels.Form>(formModel); await _formDomain.Update(formNew); (await _userFormDomain.Get(form.Id)).ForAll(usf => _userFormDomain.Delete(usf.Id)); var userForm = new BLL.ViewModels.User_form { Form_id = form.Id, User_id = userId, Can_edit = true }; await new User_form(_config).Create(userForm); return(Ok()); }
public async Task <ActionResult <AnswerModel> > PostAnswer(AnswerModel answer) { var uf = new BLL.ViewModels.User_form(); uf.User_id = User.Claims.First(c => c.Type == "UserID").Value; if (uf.User_id == null) { return(NotFound()); } var form = await _formDomain.Get(answer.FormUrl); if (form == null) { return(NotFound()); } uf.Form_id = form.Id; uf.AnswerDate = answer.AnswerDate; uf.jsonAnswer = answer.jAnswer; await _userFormDomain.Create(uf); return(Ok()); }