Esempio n. 1
0
        private async Task UpdateDefect(Defect defect, Status status)
        {
            defect.AssignedDefect.Status          = status;
            defect.AssignedDefect.StatusChangedAt = DateTime.Now;

            if (status == Status.Solved)
            {
                defect.AssignedDefect.ClosedAt = DateTime.Now;
            }

            await _defectRepository.UpdateAsync(defect);
        }
        public async Task <IActionResult> UpdateDefect([FromBody] DefectViewModel defectViewModel)
        {
            var defect = await _repo.GetDefectWithAssignedDefectByIdAsync(defectViewModel.Id);

            defect.Description           = defectViewModel.Description;
            defect.RoomNumber            = defectViewModel.RoomNumber;
            defect.AssignedDefect.Status = (Status)Enum.Parse(typeof(Status), defectViewModel.DefectStatus);

            var worker = await _userRepo.GetByIdAsync(defectViewModel.AssignedWorkerId);

            if (worker != null)
            {
                defect.AssignedDefect.AssignedWorker = worker;
                await _repo.UpdateAsync(defect);

                return(Ok());
            }
            return(BadRequest());
        }