Ejemplo n.º 1
0
 public string AddHPLCDiagnosisResult(AddHPLCDiagnosisResultRequest aData)
 {
     try
     {
         var stProc = AddHPLCDiagnosisResults;
         var pList  = new List <SqlParameter>()
         {
             new SqlParameter("@UniqueSubjectId", aData.uniqueSubjectId ?? aData.uniqueSubjectId),
             new SqlParameter("@CentralLabId", aData.centralLabId),
             new SqlParameter("@BarcodeNo", aData.barcodeNo ?? aData.barcodeNo),
             new SqlParameter("@HPLCTestResultId", aData.hplcTestResultId),
             new SqlParameter("@ClinicalDiagnosisId", aData.clinicalDiagnosisId ?? aData.clinicalDiagnosisId),
             new SqlParameter("@HPLCResultMasterId", aData.hplcResultMasterId ?? aData.hplcResultMasterId),
             new SqlParameter("@IsNormal", aData.isNormal),
             new SqlParameter("@DiagnosisSummary", aData.diagnosisSummary ?? aData.diagnosisSummary),
             new SqlParameter("@IsConsultSeniorPathologist", aData.isConsultSeniorPathologist),
             new SqlParameter("@SeniorPathologistName", aData.seniorPathologistName ?? aData.seniorPathologistName),
             new SqlParameter("@SeniorPathologistRemarks", aData.seniorPathologistRemarks ?? aData.seniorPathologistRemarks),
             new SqlParameter("@CreatedBy", aData.userId),
             new SqlParameter("@IsDiagnosisComplete", aData.isDiagnosisComplete),
             new SqlParameter("@OthersResult", aData.othersResult.ToCheckNull()),
             new SqlParameter("@OthersDiagnosis", aData.othersDiagnosis.ToCheckNull()),
         };
         UtilityDL.ExecuteNonQuery(stProc, pList);
         return($"HPLC diagnosis result updated successfully");
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Ejemplo n.º 2
0
        public async Task <IActionResult> AddHPLCDiagnosisResult(AddHPLCDiagnosisResultRequest aData)
        {
            _logger.LogInformation($"Invoking endpoint: {this.HttpContext.Request.GetDisplayUrl()}");
            _logger.LogDebug($"Adding hplc diagnosis results data - {JsonConvert.SerializeObject(aData)}");
            var hplcDiagnosis = await _pathologistService.AddHPLCDiagnosisResult(aData);

            return(Ok(new ServiceResponse
            {
                Status = hplcDiagnosis.Status,
                Message = hplcDiagnosis.Message,
            }));
        }
Ejemplo n.º 3
0
        public async Task <ServiceResponse> AddHPLCDiagnosisResult(AddHPLCDiagnosisResultRequest aData)
        {
            var sResponse = new ServiceResponse();

            try
            {
                if (string.IsNullOrEmpty(aData.uniqueSubjectId))
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Uniquesubjectid is missing";
                    return(sResponse);
                }
                else if (string.IsNullOrEmpty(aData.barcodeNo))
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Barcode no is missing";
                    return(sResponse);
                }
                else if (aData.centralLabId <= 0)
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Invalid Central Lab Id";
                    return(sResponse);
                }
                else if (aData.hplcTestResultId <= 0)
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Invalid hplc test result Id";
                    return(sResponse);
                }
                else if (aData.clinicalDiagnosisId == "")
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Lab diagnosis id is missing";
                    return(sResponse);
                }
                else if (string.IsNullOrEmpty(aData.hplcResultMasterId))
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "HPLC result is missing";
                    return(sResponse);
                }
                else if (aData.userId <= 0)
                {
                    sResponse.Status  = "false";
                    sResponse.Message = "Invalid pathologist";
                    return(sResponse);
                }
                else
                {
                    var result = _pathologistData.AddHPLCDiagnosisResult(aData);
                    if (string.IsNullOrEmpty(result))
                    {
                        sResponse.Status  = "false";
                        sResponse.Message = $"Unable to  update the hplc diagnosis result  for this uniquesubjectid - {aData.uniqueSubjectId}";
                        return(sResponse);
                    }
                    else
                    {
                        if (aData.isDiagnosisComplete == true)
                        {
                            if (aData.isNormal == false)
                            {
                                var smsSampleDetails = _sampleCollectionData.FetchSMSSamplesByBarcode(aData.barcodeNo);
                                if (!string.IsNullOrEmpty(smsSampleDetails.barcodeNo))
                                {
                                    var subjectMobileNo = smsSampleDetails.subjectMobileNo;
                                    var subjectName     = smsSampleDetails.subjectName;
                                    var anmName         = smsSampleDetails.anmName;
                                    var anmMobileNo     = smsSampleDetails.anmMobileNo;
                                    var barcodeNo       = smsSampleDetails.barcodeNo;
                                    var subjectId       = smsSampleDetails.subjectId;
                                    var subjectTypeId   = smsSampleDetails.subjectTypeId;

                                    if (subjectTypeId == 1)
                                    {
                                        var smsToANMURL   = _config.GetSection("HPLCResultSMS").GetSection("HPLCPositiveResultSMStoANM").Value;
                                        var smsURLANMLink = smsToANMURL.Replace("#MobileNo", subjectMobileNo).Replace("#SubjectName", subjectName)
                                                            .Replace("#BarcodeNo", barcodeNo).Replace("#ANMName", anmName).Replace("#ANMMobile", anmMobileNo).Replace("#SubjectId", subjectId);
                                        GetResponse(smsURLANMLink);

                                        var smsToSubjectURL   = _config.GetSection("HPLCResultSMS").GetSection("HPLCPositiveResultSMStoANW").Value;
                                        var smsURLSubjectLink = smsToSubjectURL.Replace("#MobileNo", subjectMobileNo).Replace("#SubjectName", subjectName)
                                                                .Replace("#BarcodeNo", barcodeNo).Replace("#ANMName", anmName).Replace("#ANMMobile", anmMobileNo).Replace("#SubjectId", subjectId);
                                        GetResponse(smsURLSubjectLink);
                                    }

                                    if (subjectTypeId == 2)
                                    {
                                        var smsToSubjectURL   = _config.GetSection("HPLCResultSMS").GetSection("HPLCSpousePositiveResultSMStoSpouse").Value;
                                        var smsURLSubjectLink = smsToSubjectURL.Replace("#MobileNo", subjectMobileNo).Replace("#SubjectName", subjectName)
                                                                .Replace("#BarcodeNo", barcodeNo).Replace("#ANMName", anmName).Replace("#ANMMobile", anmMobileNo).Replace("#SubjectId", subjectId);
                                        GetResponse(smsURLSubjectLink);
                                    }
                                }
                            }
                        }

                        sResponse.Status  = "true";
                        sResponse.Message = result;
                        return(sResponse);
                    }
                }
            }
            catch (Exception e)
            {
                sResponse.Status  = "false";
                sResponse.Message = $"Unable to update the hplc diagnosis result  for this uniquesubjectid - {aData.uniqueSubjectId} - {e.Message}";
                return(sResponse);
            }
        }