Пример #1
0
        public async Task <IActionResult> Post([FromBody] TaskRequest model)
        {
            Task newRecord = null;

            if (ModelState.IsValid)
            {
                InitUserCredentials();

                newRecord = new Task
                {
                    Guid             = Guid.NewGuid(),
                    UserGuid         = UserGuid,
                    CompanyGuid      = CompanyGuid,
                    CreationTime     = DateTime.UtcNow,
                    CreationUserGuid = UserGuid
                };

                newRecord = _mapper.Map(model, newRecord);

                try
                {
                    await _taskService.Save(newRecord);
                }
                catch (Exception e)
                {
                    Log.Error(e.StackTrace);
                    throw;
                }
            }

            return(CreatedAtAction(nameof(Post), _mapper.Map(newRecord, new TaskResponse())));
        }
Пример #2
0
        public async Task <IActionResult> Put([FromBody] TaskRequest model, Guid guid)
        {
            if (ModelState.IsValid)
            {
                if (guid == Guid.Empty)
                {
                    return(new BadRequestResult());
                }

                Task record = await _taskService.Get(guid);

                if (record == null)
                {
                    return(new NoContentResult());
                }

                InitUserCredentials();

                if (record.UserGuid != UserGuid)
                {
                    return(new UnauthorizedResult());
                }

                var mapped = _mapper.Map(model, record);
                mapped.LastUpdateTime     = DateTime.Now;
                mapped.LastUpdateUserGuid = UserGuid;

                try
                {
                    await _taskService.Save(mapped);
                }
                catch (Exception e)
                {
                    Log.Error(e.StackTrace);
                    throw;
                }
            }

            return(new OkResult());
        }
Пример #3
0
        public async Task <IActionResult> Delete(Guid guid)
        {
            if (ModelState.IsValid)
            {
                if (guid == Guid.Empty)
                {
                    return(new BadRequestResult());
                }

                Task record = await _taskService.Get(guid);

                if (record == null)
                {
                    return(new NoContentResult());
                }

                InitUserCredentials();

                if (record.UserGuid != UserGuid)
                {
                    return(new UnauthorizedResult());
                }

                record.Deleted = true;

                try
                {
                    await _taskService.Save(record);
                }
                catch (Exception e)
                {
                    Log.Error(e.StackTrace);
                    throw;
                }
            }

            return(new OkResult());
        }
Пример #4
0
        public async Task <IActionResult> Get(Guid guid)
        {
            if (ModelState.IsValid)
            {
                Task record = await _taskService.Get(guid);

                if (record == null)
                {
                    return(new NoContentResult());
                }

                InitUserCredentials();

                if (record.CompanyGuid != CompanyGuid)
                {
                    return(Unauthorized());
                }

                return(Ok(_mapper.Map(record, new TaskResponse())));
            }

            return(new NoContentResult());
        }