public void UpdateDataPasien(PASIEN selectedPasien)
 {
     try
     {
         textBoxNamaPasien.Text   = selectedPasien.NAMA;
         textBoxAlamatPasien.Text = selectedPasien.ALAMAT;
     }
     catch (Exception)
     {
         throw;
     }
 }
        public void cariPasien(string nomorMR)
        {
            Koneksi koneksi = new Koneksi();

            DCMedismartToolsDataContext context = koneksi.DataContext;

            try
            {
                pasien = (from pasien_ in context.PASIENs
                          where pasien_.KD_PASIEN == nomorMR
                          select pasien_).FirstOrDefault();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
示例#3
0
        public async Task <IHttpActionResult> PostRegisterKasus(RegisterKasusRequest registerKasusRequest)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest("Data yang dikirim tidak lengkap"));
                }

                var registerKasus = new REGISTER_KASUS();
                var transactKasus = new T_KASUS();
                var kasus         = new KASU();
                var kasusStat     = new KASUS_STAT();
                registerKasus.NAMA = registerKasusRequest.Nama;

                string registerNumber = string.Empty;
                while (true)
                {
                    registerNumber = GenerateRegisterNumber();
                    var count = db.REGISTER_KASUS.Where(rk => rk.REG_NO == registerNumber).Count();

                    if (count == 0)
                    {
                        break;
                    }
                }

                while (true)
                {
                    kasus.ID_KASUS = _random.Next(1, 999999999);
                    var count = db.KASUS.Where(k => k.ID_KASUS == kasus.ID_KASUS).Count();

                    if (count == 0)
                    {
                        break;
                    }
                }

                registerKasus.REG_NO       = registerNumber;
                registerKasus.KELUHAN      = registerKasusRequest.Keluhan;
                registerKasus.TINGGI_BADAN = registerKasusRequest.TinggiBadan;
                registerKasus.BERAT_BADAN  = registerKasusRequest.BeratBadan;
                registerKasus.TENSI_DARAH  = registerKasusRequest.TensiDarah;
                registerKasus.ID_KLINIK    = registerKasusRequest.Klinik;

                transactKasus.REG_NO    = registerKasus.REG_NO;
                transactKasus.ID_KASUS  = kasus.ID_KASUS;
                transactKasus.TGL_MASUK = DateTime.Now;

                db.REGISTER_KASUS.Add(registerKasus);

                var pasien = new PASIEN();
                var user   = new USER();

                if (registerKasusRequest.JenisPasien == "1")
                {
                    while (true)
                    {
                        pasien.ID_PASIEN = _random.Next(1, 999999999);
                        var count = db.PASIENs.Where(rk => rk.ID_PASIEN == pasien.ID_PASIEN).Count();

                        if (count == 0)
                        {
                            break;
                        }
                    }

                    while (true)
                    {
                        user.ID_USER = _random.Next(1, 999999999);
                        var count = db.USERS.Where(rk => rk.ID_USER == user.ID_USER).Count();

                        if (count == 0)
                        {
                            break;
                        }
                    }

                    pasien.ID_USER       = user.ID_USER;
                    pasien.ALAMAT        = registerKasusRequest.Alamat;
                    pasien.NAMA          = registerKasusRequest.Nama;
                    pasien.TGL_LAHIR     = registerKasusRequest.TglLahir;
                    pasien.TEMPAT_LAHIR  = registerKasusRequest.TempatLahir;
                    pasien.TELP          = registerKasusRequest.Telp;
                    pasien.JENIS_KELAMIN = registerKasusRequest.JenisKelamin;

                    db.PASIENs.Add(pasien);

                    user.ACTIVE_YN = "Y";
                    user.EMAIL     = registerKasusRequest.Email;

                    var indexAt = registerKasusRequest.Email.IndexOf("@");
                    if (indexAt == -1)
                    {
                        return(BadRequest("Email Tidak Valid"));
                    }

                    user.USERNAME  = registerKasusRequest.Email.Substring(0, indexAt);
                    user.FULL_NAME = registerKasusRequest.Nama;

                    var tempPassword = "******";
                    user.PASSWORD = Encryptor.Base64Encode(Encryptor.MD5Hash(tempPassword));

                    db.USERS.Add(user);

                    transactKasus.ID_PASIEN = pasien.ID_PASIEN;
                    kasus.STATUS_KASUS      = Kasus.StatusKasus.Registered.ToString();

                    kasusStat.ID_KASUS     = kasus.ID_KASUS;
                    kasusStat.STATUS_KASUS = kasus.STATUS_KASUS;
                    kasusStat.TGL          = DateTime.Now;

                    db.T_KASUS.Add(transactKasus);
                    db.KASUS.Add(kasus);
                    db.KASUS_STAT.Add(kasusStat);

                    await db.SaveChangesAsync();

                    db.Database.ExecuteSqlCommand($"INSERT INTO ROLE_USERS (ID_USER, ID_ROLE) VALUES ({user.ID_USER}, 4)");

                    await db.SaveChangesAsync();

                    SendEmail(registerKasusRequest.Email, user.USERNAME, tempPassword);

                    return(Ok());
                }

                pasien = db.PASIENs.Where(x => x.ID_PASIEN == registerKasusRequest.IdPasien).FirstOrDefault();
                user   = db.USERS.Where(x => x.ID_USER == registerKasusRequest.IdUser).FirstOrDefault();

                transactKasus.ID_PASIEN = pasien.ID_PASIEN;
                kasus.STATUS_KASUS      = Kasus.StatusKasus.Registered.ToString();

                kasusStat.ID_KASUS     = kasus.ID_KASUS;
                kasusStat.STATUS_KASUS = kasus.STATUS_KASUS;
                kasusStat.TGL          = DateTime.Now;

                db.T_KASUS.Add(transactKasus);
                db.KASUS.Add(kasus);
                db.KASUS_STAT.Add(kasusStat);

                await db.SaveChangesAsync();

                return(Ok());
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }