Advertisement
ma39isy

Untitled

Jan 21st, 2024
850
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const dataMasterPermohonanquery = knex('master_permohonan as mp')
  2.         .select('mp.*', 'res.id_elevation', 'res.kode_aksi', 'ra.nama', 'res.tanggal_approve', 'res.pemutus', 'res.catatan as catatan', 'res.update_is_direksi')
  3.         .leftJoin('ref_elevation_status as res', 'res.id_ref_status','mp.status')
  4.         .leftJoin('ref_action as ra', 'ra.kode_aksi', 'res.kode_aksi')
  5.         .where('mp.id', requestBody.idPermohonan)
  6.         .where('res.kode_aksi', requestBody.kodeAksi)
  7.  
  8. const dataMasterPermohonan = await dataMasterPermohonanquery
  9.         .first()
  10.  
  11.         let update_catatan = dataMasterPermohonan.catatan
  12.         let update_pemutus = dataMasterPermohonan.pemutus
  13.         let tanggal_approve = dataMasterPermohonan.tanggal_approve
  14.            
  15.  
  16.             if (dataMasterPermohonan.update_is_direksi === true) {
  17.                 if(dataMasterPermohonan.status === 15){
  18.                     dataMasterPermohonanquery.where('master_permohonan.is_direksi', knex.raw('ref_elevation_status.check_direksi'));
  19.                     const tes = await dataMasterPermohonanquery.first()
  20.                     console.log(tes)
  21.                 }
  22.  
  23.                 await knex('master_permohonan')
  24.                     .where('id', '=', requestBody.idPermohonan)
  25.                     .update({
  26.                     status : dataMasterPermohonan.id_elevation,
  27.                     [update_catatan]: requestBody.catatan,
  28.                     [update_pemutus]: user.FullName,
  29.                     is_direksi:requestBody.isDireksi,
  30.                     [tanggal_approve] : currentDate
  31.                 });
  32.                
  33.                 if (dataMasterPermohonan.id_elevation === 7) {
  34.                     const innerDataMasterPermohonan = await knex('master_permohonan as mp')
  35.                            .select(
  36.                                'mp.id',
  37.                                'mp.no_rekening',
  38.                                'mp.nama_nasabah',
  39.                                'mp.nominal',
  40.                                'mp.eq',
  41.                                'mp.nisbah',
  42.                                'mp.tanggal',
  43.                                'mp.idcabang',
  44.                                'mp.idinduk',
  45.                                'rj.jangka_waktu',
  46.                                'rj.hari',
  47.                                'rs.status',
  48.                                'rs.id as idstatus',
  49.                                knex.raw(`
  50.                                    case
  51.                                        when mp.jenis_permohonan = 1
  52.                                        then 'Penempatan Baru'
  53.    
  54.                                        else 'Perpanjangan'
  55.                                    end as pengajuan
  56.                                `),
  57.                                knex.raw(`
  58.                                    case
  59.                                        when mp.jenis_kepemilikan = 1
  60.                                        then 'Ritel'
  61.    
  62.                                        else 'Korporasi'
  63.                                    end as pemilik
  64.                                `),
  65.                                knex.raw(`
  66.                                    case
  67.                                        when jenis_deposito = 1
  68.                                        then 'Bagi Hasil'
  69.    
  70.                                        else 'Jualah'
  71.                                    end as deposito
  72.                                `)
  73.                            )
  74.                            .leftJoin('ref_jangka as rj', 'rj.id', 'mp.idjangka')
  75.                            .leftJoin('ref_status as rs', 'rs.id', 'mp.status')
  76.                            .where('mp.id', '=', requestBody.idPermohonan)
  77.                            .first();
  78.    
  79.                        const innerDataMasterEmail = await knex('master_email as me')
  80.                            .leftJoin('master_permohonan as mp', 'mp.id', 'me.id_pemohon')
  81.                            .where('me.id_pemohon', '=', requestBody.idPermohonan)
  82.                            .select('me.email')
  83.                            .first();
  84.    
  85.                        console.log('innerDataMasterEmail.email : ', innerDataMasterEmail.email);
  86.                        const innerCcEmail = innerDataMasterEmail.email.split(',');
  87.                        console.log('innerccEmail : ', innerCcEmail);
  88.    
  89.                        const htmlTemplate = `
  90.                            <html>
  91.                                <body>
  92.                                    <p><i><strong> Assalamualaikum wr wb </strong></i></p>
  93.                                    <p> Berikut data permohonan special nisbah : </p>
  94.                                    </br>
  95.                                    <p> Jenis Permohonan : ${innerDataMasterPermohonan.pengajuan} </p>
  96.                                    <p> Segmentasi : ${innerDataMasterPermohonan.pemilik} </p>
  97.                                    <p> Jenis Deposito : ${innerDataMasterPermohonan.deposito} </p>
  98.                                    <p> Nama Nasabah : ${innerDataMasterPermohonan.nama_nasabah} </p>
  99.                                    <p> Nominal : ${innerDataMasterPermohonan.nominal.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1,")} </p>
  100.                                    <p> Jangka Waktu : ${innerDataMasterPermohonan.jangka_waktu} </p>
  101.                                    <p> Nisbah : ${innerDataMasterPermohonan.nisbah} % </p>
  102.                                    <p> Indikasi E.q rate dimohon : ${innerDataMasterPermohonan.eq} % </p>
  103.                                    <p> Email ini dibuat secara otomatis. Mohon tidak mengirimkan balasan ke email ini. </p>
  104.                                    </br>
  105.                                    <p><i><strong> Wassalamualaikum wr wb </strong></i></p>
  106.                                    <p> Bank BJB Syariah </p>
  107.                                </body>
  108.                            </html>
  109.                        `;
  110.    
  111.                        await kirimEmail(
  112.                            innerCcEmail,
  113.                            innerCcEmail,
  114.                            'SPECIAL NISBAH IB MASLAHAH',
  115.                            htmlTemplate
  116.                        );
  117.                 }
  118.             }else{
  119.                 if(dataMasterPermohonan.kode_aksi === 'A'){
  120.                     await knex('master_permohonan')
  121.                     .where('id', '=', requestBody.idPermohonan)
  122.                     .update({
  123.                     status : dataMasterPermohonan.id_elevation,
  124.                     [update_catatan]: requestBody.catatan,
  125.                     [update_pemutus]: user.FullName,
  126.                     [tanggal_approve] : currentDate
  127.                     });
  128.                    
  129.                 }else{
  130.                     await knex('master_permohonan')
  131.                     .where('id', '=', requestBody.idPermohonan)
  132.                     .update({
  133.                     status : dataMasterPermohonan.id_elevation,
  134.                     [update_catatan]: requestBody.catatan,
  135.                     });
  136.  
  137.                 }
  138.             }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement