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

class ControllerPermintaanPinjaman extends CI_Controller
{

    public function __construct()
    {
        parent::__construct();
        check_not_login();
        if ($this->session->userdata('level') != 6) {
            redirect();
        }
        $this->load->library('encrypt');
        $this->load->library('form_validation');
        $this->load->library('mycustom');
        $this->load->library('Notifikasi');
        $this->load->library('pdfgenerator');
        $this->load->model('kabag_marketing/insert_model');
        $this->load->model('kabag_marketing/select_model');
        $this->load->model('kabag_marketing/update_model');
        $this->set_timezone();
    }
    public function set_timezone()
    {
        date_default_timezone_set("Asia/Jakarta");
    }

    public function index()
    {
        $notif                 = $this->notifikasi->notif_kabag_marketing();
        // Data Login
        $data_login            = $this->userlogin->user_login();
        $data_id_login         = $this->session->userdata('isloggedin');
        $data_kotkab           = $this->select_model->vd_kotkab();
        // Data Isian Konten
        // Tampilkan Jenis Pinjaman
        $jenis_pinjaman        = $this->select_model->vd_jenisPinjamanKabag();
        $data_permintaan       = $this->select_model->vd_permintaanPinjaman();
        $data_jaminan          = $this->select_model->vd_jaminanPinjaman();
        $data_marketing_aktif  = $this->select_model->vd_KaryawanMarketing();
        // echo '<pre>';
        // var_dump($data_permintaan);
        // die;
        $data = array(
            // Untuk memanggil halaman sesuai menu
            'folder'              => 'operasional/permintaan',
            'page'                => 'index',
            'judul'               => 'Kegiatan Permintaan Pinjaman || Bagian Kepala Marketing',
            'data_id_login'       => $data_id_login,
            'data_login'          => $data_login,
            'data_kota'           => $data_kotkab,
            'notif'               => $notif,
            'data_marketing'      => $data_marketing_aktif,
            // Isi dalam konten
            'jenis_pinjaman'      => $jenis_pinjaman,
            'data_permintaan'     => $data_permintaan,
            'data_jaminan'        => $data_jaminan
        );
        $this->load->view('kabag_marketing/index', $data);
    }
    public function crud()
    {
        // Verifikasi Pengajuan dari Marketing
        if (isset($_POST['terimaPermintaanPinjaman'])) :
            $kontrak_id = htmlspecialchars($this->input->post('kontrak_id'));
            $marketing_id = htmlspecialchars($this->input->post('marketing_id'));
            if ($marketing_id == 12) :
                $data = array(
                    'status_kontrak' => 'TERIMA',
                    'login_id'       => $marketing_id
                );
                $this->_notifWADiterima($kontrak_id);
            else:
                $data = array(
                    'status_kontrak' => 'SURVEY',
                    'login_id'       => $marketing_id
                );
                $this->_notifWADisurvey($kontrak_id, $marketing_id);
            endif;
            $this->db->where('id', $kontrak_id);
            $this->db->update('p_koperasi_kontrak', $data);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Menerima Pengajuan Pinjaman!</div>');
            redirect('kabag_marketing/kegiatan/permintaan_pinjaman');
        endif;
        if (isset($_POST['tolakPermintaanPinjaman'])) :
            $kontrak_id = htmlspecialchars($this->input->post('kontrak_id'));
            $data = array(
                'status_kontrak' => 'TOLAK'
            );
            $this->db->where('id', $kontrak_id);
            $this->db->update('p_koperasi_kontrak', $data);
            $data_progress = array(
                'tgl_konfirmasi' => date('Y-m-d'),
                'ket_progress'   => htmlspecialchars($this->input->post('alasan_tolak'))
            );
            $this->db->where('kontrak_id', $kontrak_id);
            $this->db->update('p_koperasi_progres', $data_progress);
            $this->_notifWADitolak($kontrak_id);
            $this->session->set_flashdata('pesan_berhasil', '<div class="alert alert-success" id="pesan_berhasil" role="alert">Berhasil Menolak Pengajuan Pinjaman!</div>');
            redirect('kabag_marketing/kegiatan/permintaan_pinjaman');
        endif;
    }
    // Bagian Notifikasi WA
    // Notif WA Pengajuan diterima
    private function _notifWADiterima($kontrak_id)
    {
        $kontrak_detail = $this->select_model->nvd_pengajuanPinjaman($kontrak_id);
        $cek_nomor = substr($kontrak_detail['nomor_anggota'], 0, 1);
        $tgl = date('d', strtotime($kontrak_detail['tgl_konfirmasi'])) . ' ' . $this->mycustom->bulanIndo(date('m', strtotime($kontrak_detail['tgl_konfirmasi']))) . ' ' .  date('Y', strtotime($kontrak_detail['tgl_konfirmasi']));
        if ($cek_nomor == 0) :
            $no_hp = '62' . substr($kontrak_detail['nomor_anggota'], 1, 20);
        else :
            $no_hp = $kontrak_detail['nomor_anggota'];
        endif;
        // echo '<pre>';
        // var_dump($no_hp, $kontrak_detail['nomor_anggota']);
        // die;
        $opt = $this->db->get_where('sistem_option')->row_array();
        $pesan = 'Yth. ' . $kontrak_detail['nm_anggota'] . '

Pengajuan pinjaman sebesar *Rp ' . $kontrak_detail['pokok_pinjaman'] . ',-* di Koperasi Bina Artha Prima Kudus sudah disetujui pada tanggal ' . $tgl . ' dengan Nomor Kontrak Pinjaman : _*' . $kontrak_id . '*_.
Silahkan menghubungi dan menemui marketing pengajuan untuk pencairan pinjaman dan penandatangan kontrak pinjaman.
 

*Info Hub:* ' . $opt['cs_koperasi'] . '
*_PESAN OTOMATIS ROBIN_*';

        $sett_wa = $this->db->get_where('sistem_wa', ['id' => 1])->row_array();
        $footer = '*KSP Bina Artha Prima*';
        $data_inputan = array(
            'api_key'    => $sett_wa['api_key'],
            'sender'     => $sett_wa['no_hp'],
            'number'     => $no_hp,
            'message'    => $pesan,
            'footer'     => $footer
        );
        $curl = curl_init($sett_wa['endpoint_url']);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data_inputan));
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_exec($curl);
        curl_close($curl);
    }
    // Notif Survey
    private function _notifWADisurvey($kontrak_id, $marketing_id)
    {
        $data_marketing = $this->db->get_where('sistem_login', ['id' => $marketing_id])->row_array();
        $kontrak_detail = $this->select_model->nvd_pengajuanPinjaman($kontrak_id);
        $cek_nomor = substr($kontrak_detail['nomor_anggota'], 0, 1);
        $tgl = date('d', strtotime($kontrak_detail['tgl_konfirmasi'])) . ' ' . $this->mycustom->bulanIndo(date('m', strtotime($kontrak_detail['tgl_konfirmasi']))) . ' ' .  date('Y', strtotime($kontrak_detail['tgl_konfirmasi']));
        if ($cek_nomor == 0) :
            $no_hp = '62' . substr($kontrak_detail['nomor_anggota'], 1, 20);
        else :
            $no_hp = $kontrak_detail['nomor_anggota'];
        endif;
        // echo '<pre>';
        // var_dump($no_hp, $kontrak_detail['nomor_anggota']);
        // die;
        $opt = $this->db->get_where('sistem_option')->row_array();
        $pesan = 'Yth. ' . $kontrak_detail['nm_anggota'] . '

Pengajuan pinjaman sebesar *Rp ' . $kontrak_detail['pokok_pinjaman'] . ',-* di Koperasi Bina Artha Prima Kudus akan di survey kebenaran data oleh ' . $data_marketing['nm_panggilan'] . '.
Petugas kami akan mencocokan data anda, silahkan untuk memberikan data yang dibutuhkan oleh petugas kami, Terimakasih!
 

*Info Hub:* ' . $opt['cs_koperasi'] . '
*_PESAN OTOMATIS ROBIN_*';

        $sett_wa = $this->db->get_where('sistem_wa', ['id' => 1])->row_array();
        $footer = '*KSP Bina Artha Prima*';
        $data_inputan = array(
            'api_key'    => $sett_wa['api_key'],
            'sender'     => $sett_wa['no_hp'],
            'number'     => $no_hp,
            'message'    => $pesan,
            'footer'     => $footer
        );
        $curl = curl_init($sett_wa['endpoint_url']);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data_inputan));
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_exec($curl);
        curl_close($curl);
    }
    // Notif WA Pengajuan ditolak
    private function _notifWADitolak($kontrak_id)
    {
        $kontrak_detail = $this->select_model->nvd_pengajuanPinjaman($kontrak_id);
        $cek_nomor = substr($kontrak_detail['nomor_anggota'], 0, 1);
        if ($cek_nomor == 0) :
            $no_hp = '62' . substr($kontrak_detail['nomor_anggota'], 1, 20);
        else :
            $no_hp = $kontrak_detail['nomor_anggota'];
        endif;
        // echo '<pre>';
        // var_dump($no_hp, $kontrak_detail['nomor_anggota']);
        // die;
        $tgl = date('d', strtotime($kontrak_detail['tgl_konfirmasi'])) . ' ' . $this->mycustom->bulanIndo(date('m', strtotime($kontrak_detail['tgl_konfirmasi']))) . ' ' .  date('Y', strtotime($kontrak_detail['tgl_konfirmasi']));
        $opt = $this->db->get_where('sistem_option')->row_array();
        $pesan = 'Yth. ' . $kontrak_detail['nm_anggota'] . '

Mohon Maaf, Pengajuan pinjaman sebesar *Rp ' . $kontrak_detail['pokok_pinjaman'] . ',-* di Koperasi Bina Artha Prima Kudus telah ditolak pada tanggal ' . $tgl . ' dengan alasan :  _*' . $kontrak_detail['ket_progress'] . '*_.


*Info Hub:* ' . $opt['cs_koperasi'] . '
*_PESAN OTOMATIS ROBIN_*';

        $sett_wa = $this->db->get_where('sistem_wa', ['id' => 1])->row_array();
        $footer = '*KSP Bina Artha Prima*';
        $data_inputan = array(
            'api_key'    => $sett_wa['api_key'],
            'sender'     => $sett_wa['no_hp'],
            'number'     => $no_hp,
            'message'    => $pesan,
            'footer'     => $footer
        );
        $curl = curl_init($sett_wa['endpoint_url']);
        curl_setopt($curl, CURLOPT_POST, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data_inputan));
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_exec($curl);
        curl_close($curl);
    }
}

/* End of file ControllerPermintaanPinjaman.php and path \application\controllers\kabag_marketing\operasional\ControllerPermintaanPinjaman.php */