示例#1
0
        public async Task <UpdateMedicalRecordRes> UpdateFinalExaminationResult(FinalExaminationResult result, string mRecordId)
        {
            try
            {
                var medicalRecordRaw = await _medicalRecordRepository.GetMedicalRecordById(mRecordId);

                if (medicalRecordRaw != null)
                {
                    var medicalRecord = Helper.AutoDTO <MedicalRecord, MedicalRecordModel>(medicalRecordRaw);
                    if (medicalRecord.Details.FinalExaminationResult == null)
                    {
                        medicalRecord.Details.FinalExaminationResult = result;
                    }
                    var user = _userService.GetUserById(medicalRecord.Details.FinalExaminationResult.DoctorId);
                    if (user == null)
                    {
                        return(null);
                    }
                    medicalRecord.Details.FinalExaminationResult = result;
                    DateTime utc = DateTime.UtcNow;
                    medicalRecordRaw.DateCompleted = Helper.ConvertToTimeStamp(utc);
                    medicalRecordRaw.Details       = Helper.AutoDTO <MedicalRecordDetails, string>(medicalRecord.Details);
                    return(await _medicalRecordRepository.UpdateMedicalRecord(medicalRecordRaw));
                }
                return(null);
            }
            catch (Exception)
            {
                return(null);
            }
        }
        public async Task <IActionResult> UpdateFinalExaminationResult([FromBody] FinalExaminationResult result, string mRecordId)
        {
            if (ModelState.IsValid)
            {
                var response = await _medicalRecordService.UpdateFinalExaminationResult(result, mRecordId);

                if (response != null)
                {
                    return(Ok(response));
                }
            }
            return(BadRequest());
        }