public async Task <IActionResult> Post([FromBody] Users userModel) { try { //test nanti di pindah ke DAL await _userService.Register(userModel); await _userService.AddUserToRole(userModel); //ambil data role dari yang udah ada // masukan ke pengguna.... Pengguna pengguna = new Pengguna(); pengguna.Username = userModel.Username; pengguna.Email = userModel.Email; pengguna.TenantID = userModel.TenantID; pengguna.rolename = userModel.rolename; ////test it will it be okey if there same username again ? if (userModel.rolename == "Pasien") { pengguna.IdPasien = new Guid().ToString(); await _userService.addpengguna(pengguna); DetailPasien detailpasien = new DetailPasien(); detailpasien.Registrasi = DateTime.Today; detailpasien.IdPasien = pengguna.IdPasien; detailpasien.Username = pengguna.Username; await _detailPasien.CreateAsync(detailpasien); } else { pengguna.IdPasien = null; var tenant = userModel.TenantID; pengguna.TenantID = tenant; await _userService.addpengguna(pengguna); DetailPegawai detailPegawai = new DetailPegawai(); detailPegawai.Username = pengguna.Username; detailPegawai.TanggalJoin = DateTime.Today; detailPegawai.Jabatan = userModel.rolename; await _detailPegawai.CreateAsync(detailPegawai); } TenantPengguna tenantPengguna = new TenantPengguna(); tenantPengguna.Username = userModel.Username; tenantPengguna.TenantID = userModel.TenantID; await _userService.TenantPengguna(tenantPengguna); return(Ok("Pendaftaran Anda Berhasil")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public ActionResult TambahEditDataTenantPengguna(TenantPengguna obj, string Username) { if (ModelState.IsValid) { using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(Helpers.RestAPIAddress.GetUrl()); if (obj.TenantPenggunaID == null) { obj.Username = Username; client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", HttpContext.Session.GetString("JWTtoken")); var token = HttpContext.Session.GetString("JWTtoken"); string stringData = JsonConvert.SerializeObject(obj); var contentData = new StringContent(stringData, System.Text.Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PostAsync("/api/TenantPengguna", contentData).Result; if (response.IsSuccessStatusCode) { TempData["success"] = "success"; TempData["Pesan"] = response.Content.ReadAsStringAsync().Result; } else { TempData["error"] = "error"; TempData["Pesan"] = response.Content.ReadAsStringAsync().Result; } //var data1 = response.Content.ReadAsStringAsync().Result.ToList().ToString(); } else { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", HttpContext.Session.GetString("JWTtoken")); //var token = HttpContext.Session.GetString("JWTtoken"); string stringData = JsonConvert.SerializeObject(obj); var contentData = new StringContent(stringData, System.Text.Encoding.UTF8, "application/json"); HttpResponseMessage response = client.PutAsync("/api/TenantPengguna/" + obj.TenantPenggunaID, contentData).Result; if (response.IsSuccessStatusCode) { TempData["success"] = "success"; TempData["Pesan"] = response.Content.ReadAsStringAsync().Result; } else { TempData["error"] = "error"; TempData["Pesan"] = response.Content.ReadAsStringAsync().Result; } } } } return(Redirect("Pengguna/EditDataUser?Username=" + obj.Username)); }
public async Task <IActionResult> Put([FromBody] TenantPengguna tenantPengguna) { try { await _TenantPengguna.UpdateAsync(tenantPengguna); return(Ok("Data berhasil diupdate")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
//[Authorize(Roles = "Admin,Dokter,Perawat")] public async Task <IActionResult> Post([FromBody] TenantPengguna tenantPengguna) { try { await _TenantPengguna.CreateAsync(tenantPengguna); return(Ok("Tambah Data Berhasil")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public async Task <IActionResult> Register([FromBody] Users userModel) { try { //register kedalam user identity await _userService.Register(userModel); // register kddalam role await _userService.AddUserToRole(userModel); Pengguna pengguna = new Pengguna(); pengguna.Username = userModel.Username; pengguna.Email = userModel.Email; pengguna.Nama = userModel.Nama; pengguna.TenantID = userModel.TenantID; pengguna.rolename = userModel.rolename; pengguna.Alamat = userModel.Alamat; pengguna.Kota = userModel.Kota; pengguna.NoHP = userModel.NoHp; pengguna.NoTelpon = userModel.NoTelpon; pengguna.Prosentase = userModel.Prosentase; pengguna.Umur = userModel.umur; pengguna.Prosentase = 0; pengguna.IdPasien = "Pasien" + pengguna.Username; await _Pengguna.CreateAsync(pengguna); //add detailpasien (manual >) DetailPasien detailpasien = new DetailPasien(); detailpasien.Registrasi = DateTime.Today; detailpasien.IdPasien = pengguna.IdPasien; detailpasien.Username = pengguna.Username; detailpasien.RwPenyakit = userModel.RwPenyakit; detailpasien.Registrasi = userModel.Registrasi; await _detailPasien.CreateAsync(detailpasien); //tenangpengguna manual ? TenantPengguna tenantPengguna = new TenantPengguna(); tenantPengguna.Username = userModel.Username; tenantPengguna.TenantID = userModel.TenantID; await _userService.TenantPengguna(tenantPengguna); return(Ok("Pendaftaran Anda Berhasil")); //1. user identity, 2. pengguna 3. detailpasien, 4.tenantpengguna } catch (Exception ex) { return(BadRequest(ex.Message)); } }
//untuk add tenant pertamakali saat registrasi public async Task TenantPengguna(TenantPengguna tenantPengguna) { var _tenantpengguna = new TenantPengguna { Username = tenantPengguna.Username, TenantID = tenantPengguna.TenantID }; try { var result = _context.Add(_tenantpengguna); await _context.SaveChangesAsync(); } catch (Exception ex) { throw new Exception(ex.InnerException.Message); } }
public async Task CreateAsync(TenantPengguna obj) { var tenantpengguna = await _context.TenantPengguna.Where(r => r.TenantID == obj.TenantID && r.Username == obj.Username).SingleOrDefaultAsync(); //var data = await getuserbytenantid(obj.TenantID);//ini hasilnya list ////stelah data tenant di dapat maka menncari ////var result = data.Where(e => e.Username == obj.Username).ToList(); ////bingung efektif mana //var cara2 = await tenantforusername(obj.TenantID, obj.Username); //mencari data tenant ccc if (tenantpengguna == null) { _context.Add(obj); await _context.SaveChangesAsync(); } else { throw new Exception("Username telah terpakai di tenant/klinik ini"); } }
public async Task UpdateAsync(TenantPengguna obj) { var data = await GetbyTenantPenggunaID(obj.TenantPenggunaID); if (data != null) { try { data.TenantID = obj.TenantID; data.Username = obj.Username; await _context.SaveChangesAsync(); } catch (Exception ex) { throw new Exception($"{ex.Message} {ex.InnerException.Message}"); } } else { throw new Exception("Data tidak ditemukan"); } }
public async Task <IActionResult> Post([FromBody] TenantPengguna tenantPengguna) { try { await _TenantPengguna.CreateAsync(tenantPengguna); var idPegawai = _context.DetailPegawai.Where(r => r.Username == tenantPengguna.Username).SingleOrDefault(); var datauser = await _pengguna.getpenggunausername(tenantPengguna.Username); var jenistindakan = _context.JenisTindakan.Where(r => r.TenantID == tenantPengguna.TenantID).ToList(); if (datauser.rolename == "Dokter") { //mengecek jika dokter ia akan ditambahkan dengan prosentase nya foreach (var item in jenistindakan) { Prosentase dt_pros = new Prosentase(); dt_pros.Username = datauser.Username; dt_pros.IdJenisTindakan = item.IdJenisTindakan; dt_pros.TenantID = tenantPengguna.TenantID; dt_pros.Prosen = datauser.Prosentase; dt_pros.DetailPegawaiID = idPegawai.DetailPegawaiID; await _prosentase.CreateAsync(dt_pros); } } if (datauser.rolename == "Pasien") { } else { throw new Exception("Bukan data dokter"); } return(Ok("Tambah Data Berhasil")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }
public ActionResult TambahEditDataTenantPengguna(string TenantPenggunaID, string Username) { using (HttpClient client = new HttpClient()) { client.BaseAddress = new Uri(Helpers.RestAPIAddress.GetUrl()); if (TenantPenggunaID == null) { return(View(new TenantPengguna())); } else { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", HttpContext.Session.GetString("JWTtoken")); var token = HttpContext.Session.GetString("JWTtoken"); HttpResponseMessage response = client.GetAsync("/api/TenantPengguna/").Result; string stringData = response.Content.ReadAsStringAsync().Result; TenantPengguna data = JsonConvert.DeserializeObject <TenantPengguna>(stringData); TempData["Pesan"] = "Saved Successfully"; return(View(data)); } } }
//[Authorize(Roles = "Admin")] public async Task <IActionResult> Post([FromBody] Users userModel) { try { await _userService.Register(userModel); await _userService.AddUserToRole(userModel); //ambil data role dari yang udah ada // masukan ke pengguna.... Pengguna pengguna = new Pengguna(); pengguna.Username = userModel.Username; pengguna.Email = userModel.Email; pengguna.Nama = userModel.Nama; pengguna.TenantID = userModel.TenantID; pengguna.rolename = userModel.rolename; pengguna.Alamat = userModel.Alamat; pengguna.Kota = userModel.Kota; pengguna.NoHP = userModel.NoHp; pengguna.NoTelpon = userModel.NoTelpon; pengguna.Prosentase = userModel.Prosentase; pengguna.Umur = userModel.umur; if (pengguna.rolename == "Dokter" || pengguna.rolename == "Pasien") { pengguna.Prosentase = userModel.Prosentase; } else { pengguna.Prosentase = 0; } ////test it will it be okey if there same username again ? pengguna.IdPasien = null; var tenant = userModel.TenantID; pengguna.TenantID = tenant; await _userService.addpengguna(pengguna); DetailPegawai detailPegawai = new DetailPegawai(); detailPegawai.Username = pengguna.Username; detailPegawai.TanggalJoin = DateTime.Today; detailPegawai.Jabatan = userModel.rolename; if (pengguna.rolename == "Perawat") { detailPegawai.Gaji = userModel.Gaji; } await _detailPegawai.CreateAsync(detailPegawai); if (pengguna.rolename == "Dokter") { var dt_prosen = await _prosentase.getbytenantid(userModel.TenantID); var dt_jenisTindakan = await _JenisTindakan.getbytenantid(userModel.TenantID); foreach (var dt_jenis in dt_jenisTindakan) { Prosentase prosen = new Prosentase(); prosen.Username = userModel.Username; prosen.IdJenisTindakan = dt_jenis.IdJenisTindakan; prosen.Prosen = userModel.Prosentase; prosen.TenantID = userModel.TenantID; prosen.DetailPegawaiID = detailPegawai.DetailPegawaiID; await _prosentase.CreateAsync(prosen); } } TenantPengguna tenantPengguna = new TenantPengguna(); tenantPengguna.Username = userModel.Username; tenantPengguna.TenantID = userModel.TenantID; await _userService.TenantPengguna(tenantPengguna); return(Ok("Pendaftaran Anda Berhasil")); } catch (Exception ex) { return(BadRequest(ex.Message)); } }