Beispiel #1
0
        public JsonResult encryptpatientlogin(string patientloginid, string PIN)
        {
            try
            {
                PatientLoginView _result        = null;
                User             luser          = null;
                string           loginsessionId = "";
                if (!string.IsNullOrEmpty(patientloginid) && !string.IsNullOrEmpty(PIN))
                {
                    luser = lIUserRepository.getUserWithEncryptPassword(patientloginid, PIN, 5);
                }
                if (luser == null && !string.IsNullOrEmpty(patientloginid))
                {
                    luser = lIUserRepository.getUser(patientloginid);
                }
                if (luser != null && !string.IsNullOrEmpty(luser.EncryptPasswrod))
                {
                    _result = IPatient.PatientLoginsReturnPatientLoginViewUsingPatientLoginIdWithEncryptPin(patientloginid.ToLower(), PIN);
                    if (_result != null)
                    {
                        loginsessionId = luser.LoginSessionId;
                        if (!string.IsNullOrEmpty(loginsessionId))
                        {
                            lISessionAuditTrailRepository.UpdateSessionAuditTrail(luser.UserId, "API", "Forced Logout");
                        }
                        luser = lIUserRepository.getUserWithEncryptPassword(patientloginid, PIN, 5);

                        lISessionAuditTrailRepository.InsertSessionAuditTrail(luser, "API", "Open", loginsessionId);

                        _result.PatientFirstName = _result.PatientFirstName.Split(new char[0]).Length > 0 ? _result.PatientFirstName.Split(new char[0])[0] : _result.PatientFirstName;
                        return(Json(new { Status = (int)HttpStatusCode.OK, SessionId = _result.LoginSessionId, Patient = _result, result = "success", TimeZone = DateTime.UtcNow.ToString("s") }));
                    }
                    else
                    {
                        return(Json(new { Status = (int)1, SessionId = "", result = "UserID or Password does not match", TimeZone = DateTime.UtcNow.ToString("s") }));
                    }
                }
                else if (luser != null && string.IsNullOrEmpty(luser.Password))
                {
                    if (luser.Type == ConstantsVar.Patient)
                    {
                        return(Json(new { Status = (int)3, SessionId = "", result = "Patient's Encrypt PIN has not been set", TimeZone = DateTime.UtcNow.ToString("s") }));
                    }
                    else
                    {
                        return(Json(new { Status = (int)3, SessionId = "", result = "User's Encrypt Password has not been set", TimeZone = DateTime.UtcNow.ToString("s") }));
                    }
                }
                else
                {
                    return(Json(new { Status = (int)2, SessionId = "", result = "Patient Details is not found", TimeZone = DateTime.UtcNow.ToString("s") }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Status = (int)HttpStatusCode.InternalServerError, SessionId = "", result = "failed", TimeZone = DateTime.UtcNow.ToString("s") }));
            }
        }