<?php

use Google\Service\AndroidPublisher\Timestamp;

defined('BASEPATH') or exit('No direct script access allowed');

class Insert_model extends CI_Model
{
    // Menu Kelola Data -> Arisan Heboh
    // Menambahkan data arisan heboh
    function simpanArisanHeboh()
    {
        $tanggal = date('y');
        $nm_kelompok = htmlspecialchars($this->input->post('nm_kelompok'));
        $cek_kelompok = $this->db->get_where('tbl_arisan', ['id_kategori' => 1, 'nm_kelompok' => $nm_kelompok])->row_array();
        if ($cek_kelompok > 0) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Kelompok Sudah Ada!</div>');
        else :
            $total_angka = strlen($nm_kelompok);
            if ($total_angka == 1) :
                $kode_custom = $tanggal . '2100' . htmlspecialchars($this->input->post('nm_kelompok'));
            elseif ($total_angka == 2) :
                $kode_custom = $tanggal . '210' . htmlspecialchars($this->input->post('nm_kelompok'));
            elseif ($total_angka == 3) :
                $kode_custom = $tanggal . '21' . htmlspecialchars($this->input->post('nm_kelompok'));
            endif;
            $data = array(
                'id'            => $kode_custom,
                'id_kategori'   => 21,
                'nm_kelompok'   => htmlspecialchars($this->input->post('nm_kelompok')),
                'ttl_anggota'   => htmlspecialchars($this->input->post('ttl_anggota')),
                'tagihan_iuran' => htmlspecialchars($this->input->post('tagihan_iuran')),
                'tempo'         => htmlspecialchars($this->input->post('tempo')),
                'hg_modal'      => htmlspecialchars($this->input->post('hg_modal')),
                'hg_jual'       => htmlspecialchars($this->input->post('hg_jual')),
                'fee_admin'     => htmlspecialchars($this->input->post('fee_admin')),
                'status'        => 'PROSES'
            );
            $this->db->insert('tbl_arisan', $data);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Arisan Heboh!</div>');
        endif;
    }
    // Tambah Anggota Calon Koperasi
    function simpanCalonAnggotaKoperasi($data_inputan)
    {
        // Inputan 
        if (strlen($data_inputan['nik']) < 16) {
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">NIK Tidak Sesuai ( Harus 16 Karakter )!</div>');
            redirect('owner');
        }
        $cek_nomorhp = $this->db->get_where('anggota', ['no_hp' => $data_inputan['no_hp']])->row_array();
        if ($cek_nomorhp > 0) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor HP Sudah Terdaftar!</div>');
            redirect('owner');
        endif;
        if ($data_inputan['jk'] == 'ok') :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Jenis Kelamin Tidak Di Isi!</div>');
            redirect('owner');
        endif;
        $config['upload_path']   = './assets/foto_ktp';
        $config['allowed_types'] = 'jpg|jpeg|png';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Gagal Upload Foto KTP</div>');
            redirect('owner');
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadData = $this->upload->data();
            $data_anggota = array(
                'nik'            => $data_inputan['nik'],
                'nm_anggota'     => $data_inputan['nm_anggota'],
                'jk'             => $data_inputan['jk'],
                'alamat_lengkap' => $data_inputan['alamat_lengkap'],
                'id_alamat'      => $data_inputan['alamat_id'],
                'tempat_lahir'   => $data_inputan['tempat_lahir'],
                'tgl_lahir'      => $data_inputan['tgl_lahir'],
                'no_hp'          => $data_inputan['no_hp'],
                'pekerjaan'      => $data_inputan['pekerjaan'],
                'suami_istri'    => $data_inputan['suami_istri'],
                'foto_ktp'       => $uploadData['file_name'],
                'status_anggota' => 'CALON_ANGGOTA'
            );
            $this->db->insert('anggota', $data_anggota);
        endif;
    }
    // Ubah data karyawan
    function tambahDataIdentitasKaryawan($data_inputan, $alamat_id)
    {
        $config['upload_path']   = './assets/ptgs_id';
        $config['allowed_types'] = 'jpg|jpeg|png';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $data_login = array(
                'email'             => $data_inputan['email_baru'],
                'no_hp'             => $data_inputan['no_hp_baru'],
                'nm_panggilan'      => $data_inputan['nm_panggilan']
            );
            $this->db->where('id', $data_inputan['login_id']);
            $this->db->update('sistem_login', $data_login);
            $data_identitas = array(
                'login_id'        => $data_inputan['login_id'],
                'nik'             => $data_inputan['nik'],
                'jk'              => $data_inputan['jk'],
                'tempat_lahir'    => $data_inputan['tempat_lahir'],
                'tgl_lahir'       => $data_inputan['tgl_lahir'],
                'alamat_id'       => $alamat_id,
                'tgl_gabung'      => $data_inputan['tgl_gabung']
            );
            $this->db->insert('sistem_identitas', $data_identitas);
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadData = $this->upload->data();
            // Inputan
            $data_login = array(
                'email'             => $data_inputan['email_baru'],
                'no_hp'             => $data_inputan['no_hp_baru'],
                'nm_panggilan'      => $data_inputan['nm_panggilan']
            );
            $this->db->where('id', $data_inputan['login_id']);
            $this->db->update('sistem_login', $data_login);
            $data_identitas = array(
                'login_id'        => $data_inputan['login_id'],
                'nik'             => $data_inputan['nik'],
                'jk'              => $data_inputan['jk'],
                'tempat_lahir'    => $data_inputan['tempat_lahir'],
                'tgl_lahir'       => $data_inputan['tgl_lahir'],
                'alamat_id'       => $alamat_id,
                'foto_ktp'        => $uploadData['file_name'],
                'tgl_gabung'      => $data_inputan['tgl_gabung']
            );
            $this->db->insert('sistem_identitas', $data_identitas);
        endif;
    }
    // Simpan Bayar Angsuran Beranda.
    function simpanBayarAngsuranBeranda($nomor_invoice, $data_kontrak, $data_aturan)
    {
        $tunggakan     = $this->db->get_where('p_koperasi_angsuran', ['kontrak_id' => $data_kontrak['id'], 'status_angsuran' => 'MACET'])->result();
        $jml_tunggakan = count($tunggakan);
        // Angsuran Asli Sekarang
        $data_nota = array(
            'id'             => $nomor_invoice,
            'produk_id'      => $data_aturan['produk_id'],
            'anggota_id'     => $data_kontrak['anggota_id'],
            'tgl_pembayaran' => date('Y-m-d'),
            'qty_pembayaran' => 1 + $jml_tunggakan,
            'ttl_bayar'      => $data_kontrak['bsr_bayar'],
            'status_kas'     => 'MASUK',
            'status_nota'    => 'TERIMA',
            'petugas'        => $this->session->userdata('isloggedin'),
            'kasir'          => $this->session->userdata('isloggedin'),
            'invoice_pdf'    => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->insert('nota', $data_nota);
        $data_rinci_nota = array(
            'nota_id'        => $nomor_invoice,
            'angsuran_id'    => $data_kontrak['angs_id'],
            'bayar'          => $data_kontrak['bsr_bayar'],
            'status_bayar'   => 'LANCAR'
        );
        $this->db->insert('p_koperasi_nota', $data_rinci_nota);
        $data_simpanan = array(
            'anggota_id'        => $data_kontrak['anggota_id'],
            'tgl_simpanan'      => date('Y-m-d'),
            'status_simpanan'   => 'MASUK',
            'besar_transaksi'   => $data_kontrak['bsr_simpanan'],
            'ket_transaksi'     => 'Simpanan ' . $data_kontrak['id'] . ' angsuran Ke ' . $data_kontrak['angs_ke']
        );
        $this->db->insert('p_simpanan', $data_simpanan);
        $angsuran_update = array(
            'tgl_bayar'       => date('Y-m-d'),
            'status_angsuran' => 'LUNAS_LANCAR',
            'invoice_pdf'     => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->where('id', $data_kontrak['angs_id']);
        $this->db->update('p_koperasi_angsuran', $angsuran_update);
        $angsuran_update_macet = array(
            'tgl_bayar'       => date('Y-m-d'),
            'status_angsuran' => 'LUNAS_MACET',
            'invoice_pdf'     => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->where('kontrak_id', $data_kontrak['kontrak_id']);
        $this->db->where('status_angsuran', 'MACET');
        $this->db->update('p_koperasi_angsuran', $angsuran_update_macet);
    }
    // Simpan Bayar Angsuran Beranda.
    function simpanBayarAngsuranMenu($nomor_invoice, $data_produk, $data_kontrak,  $data_angsuran, $status_angsuran, $status_nota)
    {
        // Angsuran
        $data_nota = array(
            'id'             => $nomor_invoice,
            'produk_id'      => $data_produk['produk_id'],
            'anggota_id'     => $data_kontrak['anggota_id'],
            'tgl_pembayaran' => date('Y-m-d'),
            'qty_pembayaran' => 1,
            'ttl_bayar'      => $data_angsuran['bsr_bayar'],
            'status_kas'     => 'MASUK',
            'status_nota'    => 'TERIMA',
            'petugas'        => $this->session->userdata('isloggedin'),
            'kasir'          => $this->session->userdata('isloggedin'),
            'invoice_pdf'    => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->insert('nota', $data_nota);
        $data_rinci_nota = array(
            'nota_id'        => $nomor_invoice,
            'angsuran_id'    => $data_angsuran['id'],
            'bayar'          => $data_angsuran['bsr_bayar'],
            'status_bayar'   => $status_nota
        );
        $this->db->insert('p_koperasi_nota', $data_rinci_nota);
        $data_simpanan = array(
            'anggota_id'        => $data_kontrak['anggota_id'],
            'tgl_simpanan'      => date('Y-m-d'),
            'status_simpanan'   => 'MASUK',
            'besar_transaksi'   => $data_angsuran['bsr_simpanan'],
            'ket_transaksi'     => 'Simpanan ' . $data_kontrak['id'] . ' angsuran Ke ' . $data_angsuran['angs_ke']
        );
        $this->db->insert('p_simpanan', $data_simpanan);
        $angsuran_update = array(
            'tgl_bayar'       => date('Y-m-d'),
            'status_angsuran' => $status_angsuran,
            'invoice_pdf'     => 'invoice_' . $nomor_invoice . '.pdf',
            'update_at' => date('Y-m-d H:i:s')
        );
        $this->db->where('id', $data_angsuran['id']);
        $this->db->update('p_koperasi_angsuran', $angsuran_update);
    }
    // Menambahkan data nota lunas pinjaman
    function simpanBayarLunasAngsuranBeranda($total_angsuran, $total_tunggakan, $nomor_invoice, $kontrak_id, $data_kontrak, $data_aturan, $data_angsuran, $data_tunggakan)
    {
        if ($total_angsuran['total_bayar'] == null) :
            $ttl_angsuran = 0;
        else:
            $ttl_angsuran = $total_angsuran['total_bayar'];
        endif;
        if ($total_tunggakan['total_bayar'] == null) :
            $ttl_tunggakan = 0;
        else:
            $ttl_tunggakan = $total_tunggakan['total_bayar'];
        endif;
        $data_nota = array(
            'id'             => $nomor_invoice,
            'produk_id'      => $data_aturan['produk_id'],
            'anggota_id'     => $data_kontrak['anggota_id'],
            'tgl_pembayaran' => date('Y-m-d'),
            'qty_pembayaran' => (count($data_angsuran) + count($data_tunggakan)),
            'ttl_bayar'      => $ttl_angsuran + $ttl_tunggakan,
            'status_kas'     => 'MASUK',
            'status_nota'    => 'TERIMA',
            'petugas'        => $this->session->userdata('isloggedin'),
            'kasir'          => $this->session->userdata('isloggedin'),
            'invoice_pdf'    => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->insert('nota', $data_nota);
        // Data Simpanan Calon Anggota Koperasi
        // Data Rincian Nota Angsuran dan Tunggakan
        foreach ($data_angsuran as $Data_angsuran) :
            $rinci_nota_angsuran = array(
                'nota_id'      => $nomor_invoice,
                'angsuran_id'  => $Data_angsuran->id,
                'bayar'        => $Data_angsuran->bsr_bayar,
                'status_bayar' => 'LANCAR'
            );
            $this->db->insert('p_koperasi_nota', $rinci_nota_angsuran);
            $data_simpanan_angsuran = array(
                'anggota_id'      => $data_kontrak['anggota_id'],
                'tgl_simpanan'    => date('Y-m-d'),
                'status_simpanan' => 'MASUK',
                'besar_transaksi' => $Data_angsuran->bsr_simpanan,
                'ket_transaksi'   => 'Simpanan ' . $data_kontrak['id'] . ' angsuran Ke ' . $Data_angsuran->angs_ke
            );
            $this->db->insert('p_simpanan', $data_simpanan_angsuran);
        endforeach;
        foreach ($data_tunggakan as $Data_tunggakan) :
            $rinci_nota_tunggakan = array(
                'nota_id' => $nomor_invoice,
                'angsuran_id' => $Data_tunggakan->id,
                'bayar' => $Data_tunggakan->bsr_bayar,
                'status_bayar' => 'TUNGGAKAN'
            );
            $this->db->insert('p_koperasi_nota', $rinci_nota_tunggakan);
            $data_simpanan_tunggakan = array(
                'anggota_id'      => $data_kontrak['anggota_id'],
                'tgl_simpanan'    => date('Y-m-d'),
                'status_simpanan' => 'MASUK',
                'besar_transaksi' => $Data_angsuran->bsr_simpanan,
                'ket_transaksi'   => 'Simpanan ' . $data_kontrak['id'] . ' angsuran Ke ' . $Data_angsuran->angs_ke
            );
            $this->db->insert('p_simpanan', $data_simpanan_tunggakan);
        endforeach;
        // End Data Simpanan Calon Anggota Koperasi
        // Merubah Data Angsuran
        $data_koperasi_angsuran = array(
            'tgl_bayar'       => date('Y-m-d'),
            'status_angsuran' => 'LUNAS_LANCAR',
            'invoice_pdf'     => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->where('kontrak_id', $kontrak_id);
        $this->db->where('status_angsuran', 'BELUM');
        $this->db->update('p_koperasi_angsuran', $data_koperasi_angsuran);
        // Merubah Data Tunggakan
        $data_koperasi_tunggakan = array(
            'tgl_bayar'       => date('Y-m-d'),
            'status_angsuran' => 'LUNAS_MACET',
            'invoice_pdf'     => 'invoice_' . $nomor_invoice . '.pdf'
        );
        $this->db->where('kontrak_id', $kontrak_id);
        $this->db->where('status_angsuran', 'MACET');
        $this->db->update('p_koperasi_angsuran', $data_koperasi_tunggakan);
        // Merubah data Kontrak
        if ((count($data_angsuran) > count($data_tunggakan))) :
            $status_kontrak = 'LUNAS_LANCAR';
        else :
            $status_kontrak = 'LUNAS_MACET';
        endif;
        $data_kontrak_lunas = array(
            'status_kontrak' =>  $status_kontrak
        );
        $this->db->where('id', $kontrak_id);
        $this->db->update('p_koperasi_kontrak', $data_kontrak_lunas);
    }
    // Menambahkan data Anggota pada Arisan Heboh
    function simpanAnggotaArisanHeboh($alamat_id, $regist_arisan, $undian_arisan)
    {
        // Kode Registrasi Arisan Heboh
        $id_arisan   = htmlspecialchars($this->input->post('id_arisan'));
        // Kode Referal atau orang yang merekomendasikan anggota
        $login_id    = htmlspecialchars($this->input->post('login_id'));
        // Kode Alamat
        $kode_alamat             = $alamat_id;
        $config['upload_path']   = './assets/foto_ktp';
        $config['allowed_types'] = 'jpg|jpeg|png';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['quality']       = '50%';
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Gagal Upload Foto KTP</div>');
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadData = $this->upload->data();
            // Cek Database Anggota Koperasi
            $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik'))])->row_array();
            // Cek Apakah Anggota arisan sudah terdaftar menjadi anggota koperasi
            if ($cek_anggota > 0) :
                // Sudah menjadi anggota koperasi
                // Cek apakah nomor telepon sudah digunakan oleh anggota koperasi yang berbeda
                $cek_nomor_hp = $this->db->get_where('tbl_anggota', ['no_hp' => htmlspecialchars($this->input->post('no_hp'))])->row_array();
                if ($cek_nomor_hp > 0) :
                    // Sudah digunakan oleh anggota lain
                    // Cek apakah anggota tersebut sama dengan anggota arisan?
                    if ($cek_nomor_hp['nik'] == $cek_anggota['nik']) :
                        // Nomor Telepon dan Nik sudah ada
                        // Merubah data anggota yaitu foto KTP diperbarui.
                        $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                        unlink($berkas_lama);
                        $data_tambah_arisan = array(
                            'id_arisan'             => $id_arisan,
                            'id_anggota'            => $cek_anggota['id'],
                            'no_regist'             => $regist_arisan,
                            'no_arisan'             => $undian_arisan,
                            'status'                => 'AKTIF',
                            'login_id'              => $login_id
                        );
                        $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                        $data_tambah_produk = array(
                            'subkategori_id'           => 21,
                            'anggota_id'               => $cek_anggota['id'],
                            'no_regist'                => $regist_arisan,
                            'ket_produk'               => 'Mengikuti Produk Arisan Heboh ' . $regist_arisan
                        );
                        $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Heboh!</div>');
                    else :
                        // Nomor telepon sudah digunakan anggota lain
                        $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                        unlink($berkas_lama);
                        $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor Telepon Sudah di Gunakan Anggota Lain!</div>');
                    endif;
                else :
                    // Nomor telepon tidak ada yang menggunakan
                    // Merubah data nomor telepon baru anggota koperasi
                    $hp_cadangan = array(
                        'anggota_id'             => $cek_anggota['id'],
                        'no_hp'                  => htmlspecialchars($this->input->post('no_hp')),
                        'ket_cadangan'           => 'Nomor Cadangan ' . $regist_arisan
                    );
                    $this->db->insert('tbl_hpcadangan', $hp_cadangan);
                    $data_tambah_arisan = array(
                        'id_arisan'             => $id_arisan,
                        'id_anggota'            => $cek_anggota['id'],
                        'no_regist'             => $regist_arisan,
                        'no_arisan'             => $undian_arisan,
                        'status'                => 'AKTIF',
                        'login_id'              => $login_id
                    );
                    $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                    $data_tambah_produk = array(
                        'subkategori_id'           => 21,
                        'anggota_id'               => $cek_anggota['id'],
                        'no_regist'                => $regist_arisan,
                        'ket_produk'               => 'Mengikuti Produk Arisan Heboh ' . $regist_arisan
                    );
                    $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                    $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Heboh!</div>');
                endif;
            else :
                // Belum menjadi anggota koperasi maka ditambahkan saja dengan status Calon Anggota Koperasi
                // Cek Nomor Telepon sudah digunakan anggota lain atau belum
                $cek_nomor_hp = $this->db->get_where('tbl_anggota', ['no_hp' => htmlspecialchars($this->input->post('no_hp'))])->row_array();
                if ($cek_nomor_hp > 0) :
                    // Sudah ada yang memakai nomor telepon
                    $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                    unlink($berkas_lama);
                    $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor Telepon Sudah di Gunakan Anggota Lain!</div>');
                else :
                    // Belum ada yang memakai nomor telepon dan berhasil menambahkan anggota koperasi
                    $data_anggota_koperasi = array(
                        'nik'               => htmlspecialchars($this->input->post('nik')),
                        'nm_anggota'        => htmlspecialchars($this->input->post('nm_anggota')),
                        'jk'                => htmlspecialchars($this->input->post('jk')),
                        'alamat_lengkap'    => htmlspecialchars($this->input->post('alamat_lengkap')),
                        'id_alamat'         => $kode_alamat,
                        'tempat_lahir'      => htmlspecialchars($this->input->post('tempat_lahir')),
                        'tgl_lahir'         => htmlspecialchars($this->input->post('tgl_lahir')),
                        'no_hp'             => htmlspecialchars($this->input->post('no_hp')),
                        'pekerjaan'         => htmlspecialchars($this->input->post('pekerjaan')),
                        'suami_istri'       => htmlspecialchars($this->input->post('suami_istri')),
                        'foto_ktp'          => $uploadData['file_name'],
                        'status_anggota'    => 'CALON'
                    );
                    $this->db->insert('tbl_anggota', $data_anggota_koperasi);
                    $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik'))])->row_array();
                    $data_tambah_arisan = array(
                        'id_arisan'             => $id_arisan,
                        'id_anggota'            => $cek_anggota['id'],
                        'no_regist'             => $regist_arisan,
                        'no_arisan'             => $undian_arisan,
                        'status'                => 'AKTIF',
                        'login_id'              => $login_id
                    );
                    $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                    $data_tambah_produk = array(
                        'subkategori_id'           => 21,
                        'anggota_id'               => $cek_anggota['id'],
                        'no_regist'                => $regist_arisan,
                        'ket_produk'               => 'Mengikuti Produk Arisan Heboh ' . $regist_arisan
                    );
                    $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                    $hp_cadangan = array(
                        'anggota_id'             => $cek_anggota['id'],
                        'no_hp'                  => htmlspecialchars($this->input->post('no_hp')),
                        'ket_cadangan'           => 'Nomor Cadangan Nomor Registrasi ' . $regist_arisan
                    );
                    $this->db->insert('tbl_hpcadangan', $hp_cadangan);
                    $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Heboh!</div>');
                endif;
            endif;
        endif;
    }
    function terimaAnggota($cek_pengajuan, $regist_arisan, $undian_arisan)
    {
        $data_tambah_arisan = array(
            'id_arisan'             => $cek_pengajuan['regist_arisan'],
            'id_anggota'            => $cek_pengajuan['anggota_id'],
            'no_regist'             => $regist_arisan,
            'no_arisan'             => $undian_arisan,
            'status'                => 'AKTIF',
            'login_id'              => $cek_pengajuan['login_id']
        );
        $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
        $data_tambah_produk = array(
            'subkategori_id'           => 21,
            'anggota_id'               => $cek_pengajuan['anggota_id'],
            'no_regist'                => $regist_arisan,
            'ket_produk'               => 'Mengikuti Produk Arisan Heboh ' . $regist_arisan
        );
        $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
    }
    // Menu Kelola Data -> Arisan Motor
    // Menambahkan data arisan motor
    function simpanArisanMotor($kelompok_berikutnya)
    {
        $tahun = date('y');
        $total_angka = strlen($kelompok_berikutnya);
        if ($total_angka == 1) :
            $regist_arisan = $tahun . '2200' . $kelompok_berikutnya;
        elseif ($total_angka == 2) :
            $regist_arisan = $tahun . '220' . $kelompok_berikutnya;
        elseif ($total_angka == 3) :
            $regist_arisan = $tahun . '22' . $kelompok_berikutnya;
        endif;
        $hg_jual = htmlspecialchars($this->input->post('hg_modal')) + htmlspecialchars($this->input->post('fee_admin')) + htmlspecialchars($this->input->post('dana_kehilangan'));
        $data = array(
            'id'                  => $regist_arisan,
            'id_kategori'         => 22,
            'nm_kelompok'         => $kelompok_berikutnya,
            'ttl_anggota'         => htmlspecialchars($this->input->post('ttl_anggota')),
            'tagihan_iuran'       => htmlspecialchars($this->input->post('tagihan_iuran')),
            'tempo'               => htmlspecialchars($this->input->post('ttl_anggota')),
            'hg_modal'            => htmlspecialchars($this->input->post('hg_modal')),
            'hg_jual'             => $hg_jual,
            'fee_admin'           => htmlspecialchars($this->input->post('fee_admin')),
            'dana_kehilangan'     => htmlspecialchars($this->input->post('dana_kehilangan')),
            'status'              => 'PROSES',
            'ket_arisan'          => htmlspecialchars($this->input->post('nm_kelompok'))
        );
        $this->db->insert('tbl_arisan', $data);
        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Arisan Motor!</div>');
    }
    // Menambahkan data Anggota pada Arisan Motor
    function simpanAnggotaArisanMotor($alamat_id, $regist_arisan, $undian_arisan)
    {
        // Kode Registrasi Arisan Heboh
        $id_arisan   = htmlspecialchars($this->input->post('id_arisan'));
        // Kode Referal atau orang yang merekomendasikan anggota
        $login_id    = htmlspecialchars($this->input->post('login_id'));
        // Kode Alamat
        $kode_alamat             = $alamat_id;
        $config['upload_path']   = './assets/foto_ktp';
        $config['allowed_types'] = 'jpg|jpeg|png';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['quality']       = '50%';
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Gagal Upload Foto KTP</div>');
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadData = $this->upload->data();
            // Cek Database Anggota Koperasi
            $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik'))])->row_array();
            // Cek Apakah Anggota arisan sudah terdaftar menjadi anggota koperasi
            if ($cek_anggota > 0) :
                // Sudah menjadi anggota koperasi
                // Cek apakah nomor telepon sudah digunakan oleh anggota koperasi yang berbeda
                $cek_nomor_hp = $this->db->get_where('tbl_anggota', ['no_hp' => htmlspecialchars($this->input->post('no_hp'))])->row_array();
                if ($cek_nomor_hp > 0) :
                    // Sudah digunakan oleh anggota lain
                    // Cek apakah anggota tersebut sama dengan anggota arisan?
                    if ($cek_nomor_hp['nik'] == $cek_anggota['nik']) :
                        // Nomor Telepon dan Nik sudah ada
                        // Merubah data anggota yaitu foto KTP diperbarui.
                        $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                        unlink($berkas_lama);
                        $data_tambah_arisan = array(
                            'id_arisan'             => $id_arisan,
                            'id_anggota'            => $cek_anggota['id'],
                            'no_regist'             => $regist_arisan,
                            'no_arisan'             => $undian_arisan,
                            'status'                => 'AKTIF',
                            'login_id'              => $login_id
                        );
                        $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                        $data_tambah_produk = array(
                            'subkategori_id'           => 22,
                            'anggota_id'               => $cek_anggota['id'],
                            'no_regist'                => $regist_arisan,
                            'ket_produk'               => 'Mengikuti Produk Arisan Motor ' . $regist_arisan
                        );
                        $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Motor!</div>');
                    else :
                        // Nomor telepon sudah digunakan anggota lain
                        $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                        unlink($berkas_lama);
                        $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor Telepon Sudah di Gunakan Anggota Lain!</div>');
                    endif;
                else :
                    // Nomor telepon tidak ada yang menggunakan
                    // Merubah data nomor telepon baru anggota koperasi
                    $hp_cadangan = array(
                        'anggota_id'             => $cek_anggota['id'],
                        'no_hp'                  => htmlspecialchars($this->input->post('no_hp')),
                        'ket_cadangan'           => 'Nomor Cadangan ' . $regist_arisan
                    );
                    $this->db->insert('tbl_hpcadangan', $hp_cadangan);
                    $data_tambah_arisan = array(
                        'id_arisan'             => $id_arisan,
                        'id_anggota'            => $cek_anggota['id'],
                        'no_regist'             => $regist_arisan,
                        'no_arisan'             => $undian_arisan,
                        'status'                => 'AKTIF',
                        'login_id'              => $login_id
                    );
                    $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                    $data_tambah_produk = array(
                        'subkategori_id'           => 22,
                        'anggota_id'               => $cek_anggota['id'],
                        'no_regist'                => $regist_arisan,
                        'ket_produk'               => 'Mengikuti Produk Arisan Motor ' . $regist_arisan
                    );
                    $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                    $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Motor!</div>');
                endif;
            else :
                // Belum menjadi anggota koperasi maka ditambahkan saja dengan status Calon Anggota Koperasi
                // Cek Nomor Telepon sudah digunakan anggota lain atau belum
                $cek_nomor_hp = $this->db->get_where('tbl_anggota', ['no_hp' => htmlspecialchars($this->input->post('no_hp'))])->row_array();
                if ($cek_nomor_hp > 0) :
                    // Sudah ada yang memakai nomor telepon
                    $berkas_lama = './assets/foto_ktp' . $uploadData['file_name'] . '';
                    unlink($berkas_lama);
                    $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Nomor Telepon Sudah di Gunakan Anggota Lain!</div>');
                else :
                    // Belum ada yang memakai nomor telepon dan berhasil menambahkan anggota koperasi
                    $data_anggota_koperasi = array(
                        'nik'               => htmlspecialchars($this->input->post('nik')),
                        'nm_anggota'        => htmlspecialchars($this->input->post('nm_anggota')),
                        'jk'                => htmlspecialchars($this->input->post('jk')),
                        'alamat_lengkap'    => htmlspecialchars($this->input->post('alamat_lengkap')),
                        'id_alamat'         => $kode_alamat,
                        'tempat_lahir'      => htmlspecialchars($this->input->post('tempat_lahir')),
                        'tgl_lahir'         => htmlspecialchars($this->input->post('tgl_lahir')),
                        'no_hp'             => htmlspecialchars($this->input->post('no_hp')),
                        'pekerjaan'         => htmlspecialchars($this->input->post('pekerjaan')),
                        'suami_istri'       => htmlspecialchars($this->input->post('suami_istri')),
                        'foto_ktp'          => $uploadData['file_name'],
                        'status_anggota'    => 'CALON'
                    );
                    $this->db->insert('tbl_anggota', $data_anggota_koperasi);
                    $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik'))])->row_array();
                    $data_tambah_arisan = array(
                        'id_arisan'             => $id_arisan,
                        'id_anggota'            => $cek_anggota['id'],
                        'no_regist'             => $regist_arisan,
                        'no_arisan'             => $undian_arisan,
                        'status'                => 'AKTIF',
                        'login_id'              => $login_id
                    );
                    $this->db->insert('tbl_arisan_anggota', $data_tambah_arisan);
                    $data_tambah_produk = array(
                        'subkategori_id'           => 22,
                        'anggota_id'               => $cek_anggota['id'],
                        'no_regist'                => $regist_arisan,
                        'ket_produk'               => 'Mengikuti Produk Arisan Motor ' . $regist_arisan
                    );
                    $this->db->insert('tbl_anggota_produk', $data_tambah_produk);
                    $hp_cadangan = array(
                        'anggota_id'             => $cek_anggota['id'],
                        'no_hp'                  => htmlspecialchars($this->input->post('no_hp')),
                        'ket_cadangan'           => 'Nomor Cadangan Nomor Registrasi ' . $regist_arisan
                    );
                    $this->db->insert('tbl_hpcadangan', $hp_cadangan);
                    $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Arisan Motor!</div>');
                endif;
            endif;
        endif;
    }
    // Menambahkan data anggota keluarga
    function simpanAnggotaKeluarga()
    {
        $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik'))])->row_array();
        $data = array(
            'id_kepalakeluarga'     => $cek_anggota['id']
        );
        $this->db->insert('tbl_arisan_keluarga', $data);
        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Keluarga Baru!</div>');
    }
    // Menambahkan data anggota kelompok keluarga
    function simpanDataAnggotaKeluarga()
    {
        $cek_anggota = $this->db->get_where('tbl_anggota', ['nik' => htmlspecialchars($this->input->post('nik_keluarga'))])->row_array();
        $data = array(
            'arisan_keluarga_id' => htmlspecialchars($this->input->post('id_keluarga')),
            'id_anggota'         => $cek_anggota['id'],
            'ket_keluarga'       => 'Saudara/Teman/Yang Bisa Dihubungi'
        );
        $this->db->insert('tbl_arisan_keluarga_detail', $data);
        $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Tambah Anggota Keluarga!</div>');
    }
    // Menambahkan kas keluar koperasi pinjaman
    function pencairanKasKeluar()
    {
        $cek_kontrak   = $this->db->get_where('p_koperasi_kontrak', ['id' => htmlspecialchars($this->input->post('kontrak_id'))])->row_array();
        $cek_aturan    = $this->db->get_where('p_koperasi_aturan', ['id' => $cek_kontrak['aturan_id']])->row_array();
        $cek_progress  = $this->db->get_where('p_koperasi_progres', ['kontrak_id' => htmlspecialchars($this->input->post('kontrak_id'))])->row_array();
        $data_kas = array(
            'id'              => date('ymdhis'),
            'produk_id'       => $cek_aturan['produk_id'],
            'anggota_id'      => $cek_kontrak['anggota_id'],
            'tgl_pembayaran'  => date('Y-m-d'),
            'qty_pembayaran'  => 1,
            'ttl_bayar'       => $cek_kontrak['pokok_pinjaman'],
            'status_kas'      => 'OPERASIONAL',
            'status_nota'     => 'TERIMA',
            'petugas'         => $this->session->userdata('isloggedin'),
            'kasir'           => $this->session->userdata('isloggedin'),
            'ket_nota'        => 'Realisasi Pinjaman Nomor Kontrak ' . htmlspecialchars($this->input->post('kontrak_id')),
            'invoice_pdf'     => $cek_progress['bukti_terima']
        );
        $this->db->insert('nota', $data_kas);
        $kas_data = array(
            'id'              => date('ymdhis') . 10,
            'produk_id'       => 10,
            'anggota_id'      => $cek_kontrak['anggota_id'],
            'tgl_pembayaran'  => date('Y-m-d'),
            'qty_pembayaran'  => 1,
            'ttl_bayar'       => $cek_kontrak['pokok_pinjaman'],
            'status_kas'      => 'OPERASIONAL',
            'status_nota'     => 'TERIMA',
            'petugas'         => $this->session->userdata('isloggedin'),
            'kasir'           => $this->session->userdata('isloggedin'),
            'ket_nota'        => 'Realisasi Pinjaman Nomor Kontrak ' . htmlspecialchars($this->input->post('kontrak_id')),
            'invoice_pdf'     => $cek_progress['bukti_terima']
        );
        $this->db->insert('nota', $kas_data);
    }
    function omsetPencairanKasMasuk($nama_file, $cek_kontrak, $cek_aturan)
    {
        $cek_aturan    = $this->db->get_where('p_koperasi_aturan', ['id' => $cek_kontrak['aturan_id']])->row_array();
        $data_kas2 = array(
            'id'              => date('ymdhiss'),
            'produk_id'       => $cek_aturan['produk_id'],
            'anggota_id'      => $cek_kontrak['anggota_id'],
            'tgl_pembayaran'  => date('Y-m-d'),
            'qty_pembayaran'  => 1,
            'ttl_bayar'       => $cek_kontrak['bsr_admin'] + $cek_kontrak['bsr_rk'],
            'status_kas'      => 'OMSET',
            'status_nota'     => 'TERIMA',
            'petugas'         => $this->session->userdata('isloggedin'),
            'kasir'           => $this->session->userdata('isloggedin'),
            'ket_nota'        => 'Biaya Admin dan RK Pinjaman Nomor Kontrak ' . htmlspecialchars($this->input->post('kontrak_id')),
            'invoice_pdf'     => $nama_file
        );
        $this->db->insert('nota', $data_kas2);
        $kas2_data = array(
            'id'              => date('ymdhiss') . 11,
            'produk_id'       => 10,
            'anggota_id'      => $cek_kontrak['anggota_id'],
            'tgl_pembayaran'  => date('Y-m-d'),
            'qty_pembayaran'  => 1,
            'ttl_bayar'       => $cek_kontrak['bsr_admin'] + $cek_kontrak['bsr_rk'],
            'status_kas'      => 'OMSET',
            'status_nota'     => 'TERIMA',
            'petugas'         => $this->session->userdata('isloggedin'),
            'kasir'           => $this->session->userdata('isloggedin'),
            'ket_nota'        => 'Biaya Admin dan RK Pinjaman Nomor Kontrak ' . htmlspecialchars($this->input->post('kontrak_id')),
            'invoice_pdf'     => $nama_file
        );
        $this->db->insert('nota', $kas2_data);
    }
    // Tambah Data Tambah transaksi yang dilakukan kasir
    function simpanTransaksiKasKasir()
    {
        $status        = htmlspecialchars($this->input->post('status'));
        $ket_transaksi = htmlspecialchars($this->input->post('ket_transaksi'));
        $ttl_transaksi = htmlspecialchars($this->input->post('ttl_transaksi'));
        $bulan = date('m');
        $tahun = date('Y');
        $lokasi        = 'assets/invoice/kas_umum/' . $tahun . '/' . $bulan . '/';
        // Upload Gambar Dulu
        // Upload KTP
        $config['upload_path']   = './assets/invoice/kas_umum/' . $tahun . '/' . $bulan;
        $config['allowed_types'] = 'jpg|jpeg|png|pdf';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['quality']       = '50%';
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Bukti Transaksi Gagal di Upload!</div>');
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadDataKTP = $this->upload->data();
            $data_kas = array(
                'id'             => date("YmdHis"),
                'produk_id'      => 10,
                'tgl_pembayaran' => date('Y-m-d'),
                'qty_pembayaran' => 1,
                'ttl_bayar'      => $ttl_transaksi,
                'status_kas'     => $status,
                'status_nota'    => 'TERIMA',
                'petugas'        => $this->session->userdata('isloggedin'),
                'kasir'          => $this->session->userdata('isloggedin'),
                'ket_nota'       => $ket_transaksi,
                'invoice_pdf'    => $lokasi . $uploadDataKTP['file_name']
            );
            $this->db->insert('nota', $data_kas);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil menambahkan transaksi baru!</div>');
        endif;
    }
    // Tambah Data Pengajuan Pinjaman Koperasi
    function simpanDataPengajuanKoperasi($data_inputan, $alamat_id)
    {
        // Upload Gambar Dulu
        // Upload KTP
        $config['upload_path']   = './assets/foto_ktp';
        $config['allowed_types'] = 'jpg|jpeg|png';
        $config['encrypt_name']  = true;
        $config['overwrite']     = true;
        $config['quality']       = '50%';
        $config['max_size']      = 10024; // 10MB
        $this->load->library('upload', $config);
        if (!$this->upload->do_upload('foto_ktp')) :
            $this->session->set_flashdata('pesan_gagal', '<div class="alert alert-danger" id="pesan_gagal" role="alert">Foto KTP Tidak Berhasil di Upload!</div>');
            redirect('kasir');
        else :
            $_FILES['file']['name'] = $_FILES['foto_ktp']['name'];
            $_FILES['file']['type'] = $_FILES['foto_ktp']['type'];
            $_FILES['file']['tmp_name'] = $_FILES['foto_ktp']['tmp_name'];
            $_FILES['file']['size'] = $_FILES['foto_ktp']['size'];
            $uploadDataKTP = $this->upload->data();
            $data_anggota = array(
                'nik'            => $data_inputan['nik'],
                'nm_anggota'     => $data_inputan['nm_anggota'],
                'jk'             => $data_inputan['jk'],
                'alamat_lengkap' => $data_inputan['alamat_lengkap'],
                'nm_rt'          => $data_inputan['nm_rt'],
                'nm_rw'          => $data_inputan['nm_rw'],
                'id_alamat'      => $alamat_id,
                'tempat_lahir'   => $data_inputan['tempat_lahir'],
                'tgl_lahir'      => $data_inputan['tgl_lahir'],
                'no_hp'          => $data_inputan['no_hp'],
                'pekerjaan'      => $data_inputan['pekerjaan'],
                'suami_istri'    => $data_inputan['suami_istri'],
                'foto_ktp'       => $uploadDataKTP['file_name'],
                'status_anggota' => 'CALON_ANGGOTA'
            );
            $this->db->insert('anggota', $data_anggota);
        endif;
        $cek_anggota = $this->db->get_where('anggota', ['nik' => $data_inputan['nik']])->row_array();
        // Cek KK 
        $cek_kk = $this->db->get_where('anggota_keluarga', ['nomor_kk' => $data_inputan['nomor_kk']])->row_array();
        if ($cek_kk > 0) :
            $data_detail_keluarga = array(
                'kk_id' => $data_inputan['nomor_kk'],
                'anggota_id' => $cek_anggota['id'],
                'status_keluarga' => 'anak'
            );
            $this->db->insert('anggota_keluarga_detail', $data_detail_keluarga);
            $data_keluarga = array(
                'jml_keluarga' => $cek_kk['jml_keluarga'] + 1
            );
            $this->db->where('nomor_kk', $data_inputan['nomor_kk']);
            $this->db->update('anggota_keluarga', $data_keluarga);
        else :
            $data_keluarga = array(
                'nomor_kk' => $data_inputan['nomor_kk'],
                'anggota_id' => $cek_anggota['id'],
                'jml_keluarga' => 1
            );
            $this->db->insert('anggota_keluarga', $data_keluarga);
            $data_detail_keluarga = array(
                'kk_id' => $data_inputan['nomor_kk'],
                'anggota_id' => $cek_anggota['id'],
                'status_keluarga' => 'suami_istri'
            );
            $this->db->insert('anggota_keluarga_detail', $data_detail_keluarga);
        endif;
        $anggota_id = $cek_anggota['id'];
        return $anggota_id;
    }
    // Pengajuan pinjaman Mingguan
    function tambahPengajuanPinjamanMingguan($detail_kontrak)
    {
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'N') :
            $jaminan        = 'N';
        else :
            $jaminan        = 'Y';
        endif;
        $data_kontrak = array(
            'id'             => $detail_kontrak['id'],
            'anggota_id'     => $detail_kontrak['anggota_id'],
            'aturan_id'      => $detail_kontrak['aturan_id'],
            'pokok_pinjaman' => $detail_kontrak['pokok_pinjaman'],
            'bsr_admin'      => $detail_kontrak['bsr_admin'],
            'bsr_rk'         => $detail_kontrak['bsr_rk'],
            'bsr_pokok'      => $detail_kontrak['bsr_pokok'],
            'bsr_simpanan'   => $detail_kontrak['bsr_simpanan'],
            'bsr_jasa'       => $detail_kontrak['bsr_jasa'],
            'bsr_angsuran'   => $detail_kontrak['bsr_angsuran'],
            'tempo_pinjaman' => $detail_kontrak['tempo_pinjaman'],
            'ttl_bayar'      => $detail_kontrak['ttl_bayar'],
            'jaminan'        => $jaminan,
            'status_kontrak' => $detail_kontrak['status_kontrak'],
            'login_id'       => $detail_kontrak['login_id']
        );
        $this->db->insert('p_koperasi_kontrak', $data_kontrak);
        $data_progress = array(
            'kontrak_id' => $detail_kontrak['id'],
            'tgl_pengajuan' => date('Y-m-d')
        );
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'Y') :
            $data_jaminan = array(
                'kontrak_id' =>  $detail_kontrak['id'],
                'nm_agungan' => htmlspecialchars($this->input->post('tambah_pakai_jaminan'))
            );
            $this->db->insert('p_koperasi_agungan', $data_jaminan);
        endif;
        $this->db->insert('p_koperasi_progres', $data_progress);
    }
    // Pengajuan pinjaman Musiman
    function tambahPengajuanPinjamanMusiman($detail_kontrak)
    {
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'N') :
            $jaminan        = 'N';
        else :
            $jaminan        = 'Y';
        endif;
        $data_kontrak = array(
            'id'             => $detail_kontrak['id'],
            'anggota_id'     => $detail_kontrak['anggota_id'],
            'aturan_id'      => $detail_kontrak['aturan_id'],
            'pokok_pinjaman' => $detail_kontrak['pokok_pinjaman'],
            'bsr_admin'      => $detail_kontrak['bsr_admin'],
            'bsr_rk'         => $detail_kontrak['bsr_rk'],
            'bsr_pokok'      => $detail_kontrak['bsr_pokok'],
            'bsr_simpanan'   => $detail_kontrak['bsr_simpanan'],
            'bsr_jasa'       => $detail_kontrak['bsr_jasa'],
            'bsr_angsuran'   => $detail_kontrak['bsr_angsuran'],
            'tempo_pinjaman' => $detail_kontrak['tempo_pinjaman'],
            'ttl_bayar'      => $detail_kontrak['ttl_bayar'],
            'jaminan'        => $jaminan,
            'status_kontrak' => $detail_kontrak['status_kontrak']
        );
        $this->db->insert('p_koperasi_kontrak', $data_kontrak);
        $data_progress = array(
            'kontrak_id' => $detail_kontrak['id'],
            'tgl_pengajuan' => date('Y-m-d')
        );
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'Y') :
            $data_jaminan = array(
                'kontrak_id' =>  $detail_kontrak['id'],
                'nm_agungan' => htmlspecialchars($this->input->post('tambah_pakai_jaminan'))
            );
            $this->db->insert('p_koperasi_agungan', $data_jaminan);
        endif;
        $this->db->insert('p_koperasi_progres', $data_progress);
    }
    // Pengajuan pinjaman
    function tambahPengajuanPinjaman($detail_kontrak)
    {
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'N') :
            $jaminan        = 'N';
        else :
            $jaminan        = 'Y';
        endif;
        $data_kontrak = array(
            'id'             => $detail_kontrak['id'],
            'anggota_id'     => $detail_kontrak['anggota_id'],
            'aturan_id'      => $detail_kontrak['aturan_id'],
            'pokok_pinjaman' => $detail_kontrak['pokok_pinjaman'],
            'bsr_admin'      => $detail_kontrak['bsr_admin'],
            'bsr_rk'         => $detail_kontrak['bsr_rk'],
            'bsr_pokok'      => $detail_kontrak['bsr_pokok'],
            'bsr_simpanan'   => $detail_kontrak['bsr_simpanan'],
            'bsr_jasa'       => $detail_kontrak['bsr_jasa'],
            'bsr_angsuran'   => $detail_kontrak['bsr_angsuran'],
            'tempo_pinjaman' => $detail_kontrak['tempo_pinjaman'],
            'ttl_bayar'      => $detail_kontrak['ttl_bayar'],
            'jaminan'        => $jaminan,
            'status_kontrak' => $detail_kontrak['status_kontrak']
        );
        $this->db->insert('p_koperasi_kontrak', $data_kontrak);
        $data_progress = array(
            'kontrak_id' => $detail_kontrak['id'],
            'tgl_pengajuan' => date('Y-m-d')
        );
        if (htmlspecialchars($this->input->post('pakai_jaminan')) == 'Y') :
            $data_jaminan = array(
                'kontrak_id' =>  $detail_kontrak['id'],
                'nm_agungan' => htmlspecialchars($this->input->post('tambah_pakai_jaminan'))
            );
            $this->db->insert('p_koperasi_agungan', $data_jaminan);
        endif;
        $this->db->insert('p_koperasi_progres', $data_progress);
    }
}
