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);
            }
        }
Exemple #5
0
        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);
        }
Exemple #7
0
        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");
            }
        }