private Informasi_Kontak MappingRowToObject(NpgsqlDataReader dtr) { Informasi_Kontak ikn = new Informasi_Kontak(); ikn.Nomor_Kontak = dtr["nomor_kontak"] is DBNull ? string.Empty : dtr["nomor_kontak"].ToString(); ikn.Jenis_Kontak = dtr["jenis_kontak"] is DBNull ? string.Empty : dtr["jenis_kontak"].ToString(); ikn.NIK = dtr["nik"] is DBNull ? string.Empty : dtr["nik"].ToString(); ikn.Id_Inform_Kontak = dtr["id_inform_kontak"] is DBNull ? 0 : (int)dtr["id_inform_kontak"]; return(ikn); }
public int Update(Informasi_Kontak ikn) { strSql = "UPDATE informasi_kontak SET nomor_kontak = @1, jenis_kontak = @2 WHERE id_inform_kontak = @3"; using (NpgsqlCommand cmd = new NpgsqlCommand(strSql, conn)) { cmd.Parameters.AddWithValue("@1", ikn.Nomor_Kontak); cmd.Parameters.AddWithValue("@2", ikn.Jenis_Kontak); cmd.Parameters.AddWithValue("@3", ikn.Id_Inform_Kontak); return(cmd.ExecuteNonQuery()); } }
//CRUD Operation -> Insert - Read - Update - Delete public int Save(Informasi_Kontak ikn) { strSql = "INSERT INTO informasi_kontak (nomor_kontak, jenis_kontak, nik, id_inform_kontak) VALUES(@1, @2, @3, DEFAULT)"; using (NpgsqlCommand cmd = new NpgsqlCommand(strSql, conn)) { cmd.Parameters.AddWithValue("@1", ikn.Nomor_Kontak); cmd.Parameters.AddWithValue("@2", ikn.Jenis_Kontak); cmd.Parameters.AddWithValue("@3", ikn.NIK); return(cmd.ExecuteNonQuery()); } }
//Extra method public bool cekRecord(string nik, string noKontak) { Informasi_Kontak ikn = getByNikNByNoKontak(nik, noKontak); if (ikn == null) { return(false); } else { return(true); } }
private void FillToListView(Informasi_Kontak infoKontak) { try { ListViewItem item = new ListViewItem(infoKontak.Id_Inform_Kontak.ToString()); item.SubItems.Add(infoKontak.Nomor_Kontak); item.SubItems.Add(infoKontak.Jenis_Kontak); lvwInfoKontak.Items.Add(item); } catch (Exception ex) { errorDBox(ex.Message.ToString(), "FillToListView"); } }
public Informasi_Kontak getByNikNByNoKontak(string nik, string noKontak) { Informasi_Kontak ikn = null; strSql = "SELECT * FROM informasi_kontak WHERE nik = @1 AND nomor_kontak = @2"; using (NpgsqlCommand cmd = new NpgsqlCommand(strSql, conn)) { cmd.Parameters.AddWithValue("@1", nik); cmd.Parameters.AddWithValue("@2", noKontak); using (NpgsqlDataReader dtr = cmd.ExecuteReader()) { if (dtr.Read()) { ikn = MappingRowToObject(dtr); } } } return(ikn); }
private void btnSimpan_Click(object sender, EventArgs e) { try { if (txtNoKontak.Text == "") { lblMsgStringM("Nomor Kontak belum diisi !", Color.Yellow); } else if (rbHandphone.Checked == false && rbTelpon.Checked == false) { lblMsgStringM("Pilih jenis kontak !", Color.Yellow); } else if (rbUbah.Checked == false && rbTambah.Checked == false) { lblMsgStringM("Pilih operasi Ubah / Tambah !", Color.Yellow); } else { Informasi_Kontak ikn = new Informasi_Kontak(); ikn.NIK = txtNIK.Text; ikn.Nomor_Kontak = txtNoKontak.Text; ikn.Id_Inform_Kontak = this.id_inform_kontak; if (rbHandphone.Checked == true && rbTelpon.Checked == false) { ikn.Jenis_Kontak = "Handphone"; } if (rbHandphone.Checked == false && rbTelpon.Checked == true) { ikn.Jenis_Kontak = "Telpon"; } object[] data = new object[] { ikn.Jenis_Kontak, ikn.Nomor_Kontak }; if (rbTambah.Checked == true && rbUbah.Checked == false) //Operasi Penambahan Record { resultBool = iknDAO.cekRecord(txtNIK.Text, txtNoKontak.Text); //MessageBox.Show("resultBool = " + resultBool.ToString() + ".\nFalse = Record kosong. True = Record Exist"); if (resultBool == false) //Simpan data, karena record masih kosong { result = iknDAO.Save(ikn); if (result > 0) { lblMsgStringM("Data berhasil disimpan.", Color.Green); loadListViewInfoKontak(); refreshMainFormView(data, 0, init); } else { lblMsgStringM("Data gagal disimpan !", Color.Red); loadListViewInfoKontak(); refreshMainFormView(data, 0, init); } } else //Meng-update data informasi kontak { lblMsgStringM("Nomor Kontak sudah ada.\nSilahkan masukkan Nomor yang lain !", Color.Yellow); } } if (rbTambah.Checked == false && rbUbah.Checked == true) //Operasi Pengubahan Record { if (msgBoxWarning("Anda yakin akan mengubah informasi kontak dengan ID = " + id_inform_kontak + "?") == true) { result = iknDAO.Update(ikn); if (result > 0) { lblMsgStringM("Data berhasil diubah.", Color.Green); loadListViewInfoKontak(); } else { lblMsgStringM("Data gagal diubah !", Color.Red); } } } } } catch (Exception ex) { errorDBox(ex.Message.ToString(), "btnSimpan_Click"); } }