Пример #1
0
        public async Task <IHttpActionResult> Register(Account_BenhNhanDTO account)
        {
            var acc = await db.Account_BenhNhan.FirstOrDefaultAsync(q => q.Username == account.MaYTe && q.Status == "ACTIVE");

            if (acc == null)
            {
                var bn = db.SP_DM_BenhNhan_GetByMaYTe(account.MaYTe).FirstOrDefault();
                if (bn != null)
                {
                    if (bn.TenBenhNhan.ToUpper().Equals(account.HoTen.ToUpper()) && bn.NgaySinh?.OnlyDate() == account.NgaySinh.OnlyDate())
                    {
                        var id = db.SP_Account_BenhNhan_Insert(account.Password, account.Email, account.MaYTe).FirstOrDefault();
                        if (id != null)
                        {
                            if (_sendMailConfirm(id.IDAccountBN ?? 0))
                            {
                                return(Ok("Vui lòng xác nhận tài khoản, kiểm tra mail " + account.Email));
                            }
                            return(Content(HttpStatusCode.Created, "Vui lòng xác nhận tài khoản, thử lại gửi mail: " + account.Email));
                        }
                        else
                        {
                            return(BadRequest());
                        }
                    }
                    else
                    {
                        return(Content(HttpStatusCode.NotAcceptable, "Thông tin họ tên và ngày sinh không trùng khớp với Mã Y Tế."));
                    }
                }
                else
                {
                    return(Content(HttpStatusCode.NotAcceptable, "Mã y tế không tồn tại."));
                }
            }
            else
            {
                if (acc.Status == CONFIRM)
                {
                    return(Content(HttpStatusCode.Created, "Vui lòng xác nhận tài khoản với email " + acc.Email));
                }
                else if (acc.Status == ACTIVE)
                {
                    return(Content(HttpStatusCode.NotAcceptable, "Thông tin Mã Y tế đã được sử dụng."));
                }
                return(Content(HttpStatusCode.NotAcceptable, "Tài khoản đã được tạo trước đó."));
            }
        }
        public IHttpActionResult FindBN([FromUri] string MaYTe)
        {
            if (string.IsNullOrWhiteSpace(MaYTe))
            {
                return(NotFound());
            }
            var acc = db.SP_DM_BenhNhan_GetByMaYTe(MaYTe);

            foreach (var item in acc)
            {
                return(Ok(new DM_BenhNhan
                {
                    BenhNhan_Id = item.BenhNhan_Id,
                    ChucVu = item.ChucVu,
                    CMND = item.CMND,
                    DiaChi = item.DiaChi,
                    Email = item.Email,
                    GhiChu = item.GhiChu,
                    GioiTinh = item.GioiTinh,
                    Ho = item.Ho,
                    MaBenhVien = item.MaBenhVien,
                    MaYTe = item.MaYTe,
                    NamSinh = item.NamSinh,
                    NgayHetHieuLuc_BHYT = item.NgayHetHieuLuc_BHYT,
                    NgayHieuLuc_BHYT = item.NgayHieuLuc_BHYT,
                    NgaySinh = item.NgaySinh,
                    SoThe_BHYT = item.SoThe_BHYT,
                    SoVaoVien = item.SoVaoVien,
                    Ten = item.Ten,
                    TenBenhNhan = item.TenBenhNhan,
                    TenKhongDau = item.TenKhongDau,
                    TienSuBenh = item.TienSuBenh,
                    VietKieu = item.VietKieu,
                }));
            }
            return(NotFound());
        }