# Sistem Informasi Administrasi Perusahaan (SIAP BINA ARTHA)
### Powered by AWHome Creator

# Nomor Registrasi Arisan
### Nomor Registrasi Arisan Heboh
Nomor Registrasi Kelompok Arisan : 2421043 <br>
24 = Tahun Arisan<br>
2  = Kategori Produk Arisan<br>
1  = Kategori Jenis Arisan<br>
043 = Nama Arisan<br><br>
### Nomor Registrasi Anggota Arisan Heboh
Nomor Registrasi Kelompok Arisan : 2421043001<br>
24 = Tahun Arisan<br>
2  = Kategori Produk Arisan<br>
1  = Kategori Jenis Arisan<br>
043 = Nama Arisan<br>
001 = No mor Undian / Nomor Lelang<br><br><br>

### Menu Kelompok Arisan Motor
Nomor Registrasi Kelompok Arisan : 2422043<br>
24 = Tahun Arisan<br>
2  = Kategori Produk Arisan<br>
2  = Kategori Jenis Arisan Motor<br>
043 = Nama Arisan<br><br>
### Nomor Registrasi Anggota Arisan Heboh
Nomor Registrasi Kelompok Arisan : 2422043001<br>
24 = Tahun Arisan<br>
2  = Kategori Produk Arisan<br>
2  = Kategori Jenis Arisan Motor<br>
043 = Nama Arisan Motor<br><br><br>

# Nomor Registrasi Koperasi
## Nomor Registrasi Pinjaman
### Nomor Kontrak Pinjaman Mingguan
2411011<br>
24   = Tahun Pinjaman<br>
11   = Kode Pinjaman Mingguan<br>
01   = Total Pernah Ambil Pinjaman yang sama<br>
1    = ID Anggota<br><br>
### Nomor Kontrak Pinjaman 2 Mingguan
2412011<br>
24   = Tahun Pinjaman<br>
12   = Kode Pinjaman Mingguan<br>
01   = Total Pernah Ambil Pinjaman yang sama<br>
1    = ID Anggota<br><br>
### Nomor Kontrak Pinjaman Bulanan
2413011<br>
24   = Tahun Pinjaman<br>
13   = Kode Pinjaman Bulanan<br>
01   = Total Pernah Ambil Pinjaman yang sama<br>
1    = ID Anggota<br><br>
### Nomor Kontrak Pinjaman Bulanan
2414011<br>
24   = Tahun Pinjaman<br>
14   = Kode Pinjaman Tempo<br>
01   = Total Pernah Ambil Pinjaman yang sama<br>
1    = ID Anggota<br><br><br>

https://www.rumahweb.com/journal/dompdf-codeigniter-3/

# Nomor Laporan
## Nomor Laporan Produk Arisan Heboh Bulanan
LAP-21/001/24/2405/01<br>
LAP     = Laporan<br>
21      = Jenis Produk & Nama Produk<br>
001     = Kode Kelompok<br>
24      = Tahun Mulai Arisan<br>
2405    = Tahun dan bulan Undian / Lelang / Pembuatan Laporan<br>
01      = Pengundian Ke - <br><br><br>

# Nomor Tagihan
## Nomor Tagihan / Invoice Arisan
240522-21-001
( Tanggal - Kode Produk - Urutan Bayar)

# Logika Inputan Data
## Buat Arisan Baru
    1. Cek data pada sistem_subkategori untuk mendapatkan kategori produk
    2. Memasukkan data pada tabel tbl_arisan dengan kode kategori masing-masing
## Memasukkan data anggota
    1. Cek apakah anggota sudah ada di dalam tbl_anggota dengan mencocokkan nik
    2. Jika belum ada di tabel tbl_anggota, cek terlebih dahulu nomor telepon
    3. Jika ternyata nomor telepon sudah digunakan, maka data tidak jadi diinputkan
    4. Jika nomor telepon tidak ada yang memakai dan pada tbl_anggota juga tidak ada data
    5. Maka inputan di mulai pada tabel tbl_anggota, kemudian tbl_arisan_anggota
    6. Bawa informasi subkategori_id, id_anggota dari tbl_anggota dan no_regist
    7. Inputkan pada tabel tbl_anggota_produk



## Mencari Nomor Regist dan Nomor Undian Selanjutnya

```
        $no_undian    = $this->select_model->getDataNomorUndian($kode_regist);
        $no_undian_selanjutnya = $no_undian['no_arisan'] + 1;
        $total_huruf = strlen($no_undian_selanjutnya);
        if ($total_huruf == 1) :
            $data = array(
                'No Undian'             => $no_undian['no_arisan'],
                'Undian Selanjutnya'    => $no_undian_selanjutnya,
                'No Regist Selanjutnya' => $kode_regist . '00' . $no_undian_selanjutnya
            );
        elseif ($total_huruf == 2) :
            $data = array(
                'No Undian'             => $no_undian['no_arisan'],
                'Undian Selanjutnya'    => $no_undian_selanjutnya,
                'No Regist Selanjutnya' => $kode_regist . '0' . $no_undian_selanjutnya
            );
        else :
            $data = array(
                'No Undian'             => $no_undian['no_arisan'],
                'Undian Selanjutnya'    => $no_undian_selanjutnya,
                'No Regist Selanjutnya' => $kode_regist . $no_undian_selanjutnya
            );
        endif;
        echo '<pre>';
        var_dump($data);
        die;
```

## Membuat Otomatis Form Modal terisi dari database
### Bagian View dan di bawah modal form
    1. Buat Terlebih dahulu modal form kemudian pada inputan berikan kode onkeyup="ceknik()" :

```
<input type="number" class="form-control" onkeyup="ceknik()" id="nik" name="nik"
                        placeholder="Nomor Induk Kependudukan ( NIK )" required>
```

    2. Buat Ajax Query di bawah modal form :
    
```java
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
function ceknik() {
    var nik = $("#nik").val();
    $.ajax({
        type: "POST",
        url: '<?= base_url('arisan/data/cek_anggota') ?>',
        data: 'nik=' + nik,
        success: function(data) {
            var json = data,
                obj = JSON.parse(json);
            if (obj > 1) {
                $('#nm_anggota').val();
                $('#jk').val();
                $('#alamat_lengkap').val();
                $('#kode_pos').val();
                $('#nm_rt').val();
                $('#nm_rw').val();
                $('#tempat_lahir').val();
                $('#tgl_lahir').val();
                $('#no_hp').val();
                $('#pekerjaan').val();
                $('#suami_istri').val();
                $('#foto_ktplama').val();
            } else {
                $('#nm_anggota').val(obj.nm_anggota);
                $('#jk').val(obj.jk);
                $('#alamat_lengkap').val(obj.alamat_lengkap);
                $('#kode_pos').val(obj.kd_pos);
                $('#nm_rt').val(obj.nm_rt);
                $('#nm_rw').val(obj.nm_rw);
                $('#tempat_lahir').val(obj.tempat_lahir);
                $('#tgl_lahir').val(obj.tgl_lahir);
                $('#no_hp').val(obj.no_hp);
                $('#pekerjaan').val(obj.pekerjaan);
                $('#suami_istri').val(obj.suami_istri);
                $('#foto_ktplama').val(obj.foto_ktp);
            }
        }
    })
} </script>
```

    3. url untuk mengirim data NIK ada di <?= base_url('arisan/data/cek_anggota') ?> , maka buatlah route sesuai dengan url untuk mengirim data inputan.
    4. Kemudian buatlah Controller dengan rujukan link dari route

### Bagian Controller
    1. Setelah membuat controller sesuai dengan rujukan link di atas, isilah controller dengan kode dibawah ini :
```
public function data_anggota()
    {
        $nik = $this->input->post('nik');
        $identitas_anggota = $this->select_model->getDataAnggota($nik);
        if ($identitas_anggota > 0) :
            echo json_encode($identitas_anggota);
        else :
            $data_new = array(
                'nm_anggota' => '',
                'jk' => 'ok',
                'alamat_lengkap' => '',
                'kode_pos' => '',
                'nm_rt' => 'ok',
                'nm_rw' => 'ok',
                'tempat_lahir' => '',
                'tgl_lahir' =>  '',
                'no_hp' =>  '',
                'pekerjaan' =>  '',
                'suami_istri' =>  '',
                'foto_ktplama' =>  ''
            );
            echo json_encode($data_new);
        endif;
    }
```

    // public function tagihan($id, $id2)
    // {
    //     $kode_arisan            = $this->encrypt->decode($id);
    //     $kode_undian            = $this->encrypt->decode($id2);
    //     echo '<Pre>';
    //     var_dump($kode_arisan, $kode_undian);
    //     die;
    //     // Data Login Identitas Karyawan
    //     $data_id_login          = $this->session->userdata('isloggedin');
    //     $data_login             = $this->userlogin->user_login();
    //     // Query SQL Data atau isi data page.
    //     // $data_arisan            = $this->select_model->getDataArisanHeboh($kode_regist); //Data Identitas Arisan
    //     // $data_anggota           = $this->select_model->getDataAnggotaArisanHeboh($kode_regist); // Data Anggota Arisan Heboh
    //     // $data_pemenang          = $this->select_model->getDataAnggotaArisanHebohMenang($kode_regist); // Data Anggota Pemenang Arisan
    //     // $anggota                = count($this->select_model->getDataAnggotaArisanHebohAktif($kode_regist)); // Data Anggota Aktif Arisan
    //     // $anggota_mundur         = count($this->select_model->getDataAnggotaArisanHebohMundur($kode_regist)); // Data Anggota Mundur Arisan
    //     // $anggota_menang         = count($data_pemenang);
    //     // $realisasi_tagihan      = $this->select_model->getDataRealisasiTagihan($kode_regist); // Data Realisasi Tagihan bulan dan tahun berjalan
    //     // $data_saldo             = $this->select_model->getDataSaldoKelompok($kode_regist); // Data Saldo Kelompok
    //     // if ($data_saldo > 0) :
    //     //     $saldo_kelompok = $data_saldo['saldo_akhir'];
    //     // else :
    //     //     $saldo_kelompok = 0;
    //     // endif;
    //     // $jadwal_undian          = $this->db->get_where('tbl_jadwal_undian', ['regist_arisan' => $kode_regist])->result();
    //     // // echo '<pre>';
    //     // // var_dump($jadwal_undian);
    //     // // die;
    //     // $data = array(
    //     //     // Untuk memanggil halaman sesuai menu
    //     //     'folder'              => 'aktifitas/tagihan',
    //     //     'page'                => 'index',
    //     //     'judul'               => 'Jadwal Arisan ' . $kode_regist . ' || Bagian Arisan',
    //     //     'data_id_login'       => $data_id_login,
    //     //     'data_login'          => $data_login,
    //     //     // Isi data
    //     //     'data_arisan'         => $data_arisan,
    //     //     'data_pemenang'       => $data_pemenang,
    //     //     'saldo_kelompok'      => $saldo_kelompok,
    //     //     'anggota_aktif'       => $anggota,
    //     //     'anggota_mundur'      => $anggota_mundur,
    //     //     'anggota_menang'      => $anggota_menang,
    //     //     'realisasi'           => $realisasi_tagihan,
    //     //     'jadwal_undian'       => $jadwal_undian
    //     // );
    //     // $this->load->view('arisan/index', $data);
    // }

ServerSide
https://www.codekop.com/read/tutorial-cara-membuat-datatables-serverside-dengan-codeigniter.html

https://github.com/fauzan1892/datatables-serverside-ci3/tree/master


wa notif
https://notif.kspbinaartha.com
https://clients.anymhost.id/clientarea.php