Advertisement
Guest User

Untitled

a guest
Nov 2nd, 2015
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 128.04 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4. * news actions.
  5. *
  6. * @package damimas
  7. * @subpackage news
  8. * @author Your name here
  9. * @version SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
  10. */
  11. class toolsActions extends sfActions {
  12.  
  13. public function executeReminder(sfWebRequest $request) {
  14.  
  15.  
  16.  
  17.  
  18. $rekening = "ACC 2-003-04454-9";
  19. echo "You are access executeReminder funtion";
  20. $tipe = $request->getParameter('tipe');
  21. //$delivery_ke = $request->getParameter('delivery_ke');
  22. // URL : http://damimas.com/new/web/tools/reminder?tipe=XXX
  23. // jenis parameter tipe:
  24. // verifikasi_order -> crontab setiap 1 menit sekali
  25. // tempo_dp1, tempo_dp2, tempo_final -> crontab setiap 12 jam sekali
  26. // http://damimas.com/new/web/tools/reminder?tipe=verifikasi_order
  27. // http://damimas.com/new/web/tools/reminder?tipe=tempo_dp1
  28. // http://damimas.com/new/web/tools/reminder?tipe=tempo_dp2
  29. // http://damimas.com/new/web/tools/reminder?tipe=tempo_final&delivery_ke=1
  30. // http://damimas.com/new/web/tools/reminder?tipe=tempo_final&delivery_ke=2
  31. // http://damimas.com/new/web/tools/reminder?tipe=tempo_final&delivery_ke=3
  32. // URL : http://damimas.com/new/web/tools/paymentconfirmation
  33. // crontab setiap 1 menit sekali
  34. // http://damimas.com/new/web/tools/paymentproblem -> 1 hari 2 kali
  35. // http://damimas.com/new/web/tools/reminder?tipe=verifikasi_order -> 12 jam sekali
  36. // khusus Verifikasi Order
  37. // get Currencies active // 18 February 2015
  38. /* $currencies = Doctrine::getTable('Currencies')
  39. ->createQuery('a')
  40. ->where('a.active_on_price = ?', 'Yes')
  41. ->andWhere('a.deleted = ?', 0)
  42. ->fetchOne();
  43. $matauang = $currencies->getSymbol(); */
  44.  
  45. //------------------------------
  46. // alamat email from custom parameter
  47. $cp = Doctrine::getTable('CustomParameter')
  48. ->createQuery('a')
  49. ->execute();
  50. foreach ($cp as $c) {
  51. if ($c->getId() == 34) {
  52. $alamatemail = $c->getValue();
  53. }
  54. }
  55. //---------------------
  56.  
  57. if ($tipe == "verifikasi_order") {
  58. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh(); // conect to db
  59. // add payterms_c for pay terms conditional
  60. $query = "
  61. select acc.name, opp.date_closed, acc.id, opp.id as id_op, opp.sales_stage, accF.usernm_c, ea.email_address, opp.name as opportunity_name, opp.date_entered as opportunity_date_entered, oppF.dp1amt_c as dp1, oppF.dp2amt_c as dp2, oppF.dp3amt_c as dp3, oppF.pono_c, oppF.payterms_c, opp.amount, opp.currency_id as id_currency,
  62. (select ord.delivery_date
  63. from opportunitis_omk_orders_c opporder,
  64. omk_orders ord
  65. where opporder.opportunit3b1f_orders_idb = ord.id and
  66. opporder.opportunit14d7unities_ida = opp.id
  67. order by ord.delivery_date ASC
  68. limit 1) as 1stdel,
  69. (select sum(ord.pay_final)
  70. from opportunitis_omk_orders_c opporder,
  71. omk_orders ord
  72. where opporder.opportunit3b1f_orders_idb = ord.id and
  73. opporder.opportunit14d7unities_ida = opp.id
  74. group by opporder.opportunit14d7unities_ida) as final
  75. from accounts_opportunities aOpp,
  76. opportunities opp,
  77. opportunities_cstm oppF,
  78. accounts acc,
  79. accounts_cstm accF,
  80. email_addr_bean_rel erel,
  81. email_addresses ea
  82. where aOpp.opportunity_id = opp.id and
  83. aOpp.account_id = acc.id and
  84. acc.id = accF.id_c and
  85. opp.id = oppF.id_c and
  86. acc.id = erel.bean_id and
  87. erel.email_address_id = ea.id and
  88. accF.usernm_c !='' and /* only acc with username */
  89. erel.bean_module = 'Accounts' and
  90. oppF.approvedreminder_c = '0' and
  91. opp.sales_stage = 'Approved' and
  92. erel.deleted = '0'
  93. ";
  94.  
  95. $data_payterms = $pdo->prepare($query);
  96. $data_payterms->execute();
  97. $hasil = $data_payterms->fetchAll();
  98. foreach ($hasil as $hasil_payterms) {
  99. $payterms = $hasil_payterms['payterms_c'];
  100. }
  101.  
  102. $dp1x = 'dp1x';
  103. $dp2x = 'dp2x';
  104. $dp3x = 'dp3x';
  105. $no_dp = 'no_dp';
  106. $paylater = 'paylater';
  107.  
  108. // Jika payterm_c DP1
  109. if ($dp1x == $payterms) {
  110. $stmt = $pdo->prepare($query);
  111. $stmt->execute();
  112. $results = $stmt->fetchAll();
  113.  
  114. foreach ($results as $r) {
  115. $company_name = $r['name'];
  116. $username = $r['usernm_c'];
  117. $email = $r['email_address'];
  118. $id_opp = $r['id_op'];
  119. $idcurrency = $r['id_currency']; // 6 Maret 2015
  120. $payterms_c = $r['payterms_c'];
  121. // sent email
  122. //$opportunities = Doctrine_Core::getTable('Opportunities')->find(array($r['id_op']));
  123. $pesan = "<p>Pelanggan Yth,</p>";
  124. $pesan .= "<p>User name: <b>" . $r['usernm_c'] . "</b><br />Pemesanan anda dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b><br />Tanggal Order: <b>" . date('d-m-Y', strtotime($r['opportunity_date_entered'])) . "</b> telah disetujui.
  125. Berikut ini merupakan jadwal pembayaran sesuai aturan yang berlaku:<br>";
  126.  
  127. $pesan .= "
  128. <table border='1'>
  129. <thead>
  130. <th>Type of Payment</th>
  131. <th>Payment Due Date</th>
  132. <th>Total Payment</th>
  133. <th>Quantity</th>
  134. <th>Plantation Location</th>
  135. <th>Delivery Date</th>
  136. </thead>
  137. <tbody>";
  138.  
  139. // get custom parameter
  140. // CALCULATE PAYMENT DUE DATE
  141. $cp = Doctrine::getTable('CustomParameter')
  142. ->createQuery('a')
  143. ->execute();
  144. foreach ($cp as $c) {
  145. if ($c->getId() == 1) {
  146. $nilaidp1 = $c->getValue(); // ambil nilai paramater hitung date
  147. }
  148. if ($c->getId() == 2) {
  149. $finalpaymentdp1 = $c->getValue(); //ambil nilai paramater hitung date
  150. }
  151. if ($c->getId() == 41) {
  152. $dp1_persentase = $c->getValue(); // 25%
  153. }
  154. if ($c->getId() == 42) {
  155. $final_persentase = $c->getValue(); //75%
  156. }
  157. if ($c->getId() == 34) {
  158. $alamatemail = $c->getValue();
  159. }
  160. }
  161. $totPay = 0;
  162.  
  163. // get date interval
  164. $pdo_dp1 = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  165. $tgl_dp1 = $r['date_closed'];
  166. //$query_dp1 = "select adddate('".$tgl_dp1."', ".$nilaidp1.") as tdp1, adddate('".$r['1stdel']."', -".$finalpaymentdp1.") as tdp2";
  167. $query_dp1 = "select adddate('" . $tgl_dp1 . "', " . $nilaidp1 . ") as tdp1";
  168. $stmt_dp1 = $pdo_dp1->prepare($query_dp1);
  169. $stmt_dp1->execute();
  170. $results_dp1 = $stmt_dp1->fetchAll();
  171.  
  172. foreach ($results_dp1 as $rs_dp1) {
  173. $tdp1 = $rs_dp1['tdp1'];
  174. //$tdp2 = $rs_dp1['tdp2'];
  175. }
  176.  
  177. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  178. ->createQuery('a')
  179. ->execute();
  180.  
  181. $ambilcurr = $idcurrency;
  182. foreach ($currencies as $cc) {
  183. if ($cc->getId() == $ambilcurr) {
  184.  
  185. $matauang = $cc->getSymbol();
  186. }
  187. }
  188.  
  189. $pesan .= "<tr><td>Down Payment ( $dp1_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp1)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp1']) . "</td><td>-</td><td>-</td><td>-</td>";
  190.  
  191.  
  192. $totPay_a = $r['dp1'];
  193.  
  194.  
  195. $sql_a = "
  196. select kebun.name as estate, ord.delivery_date, adddate(ord.delivery_date, -" . $finalpaymentdp1 . ") due_date, ord.qty, ord.pay_final, ord.currency_id
  197. from opportunitis_omk_orders_c opporder,
  198. omk_orders ord,
  199. omk_data_kebun kebun
  200. where opporder.opportunit3b1f_orders_idb = ord.id and
  201. ord.omk_data_kebun_id_c = kebun.id and
  202. opporder.opportunit14d7unities_ida = '" . $id_opp . "' " .
  203. "order by ord.delivery_date";
  204.  
  205. $pdo_a = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  206. $stmt_a = $pdo_a->prepare($sql_a);
  207. $stmt_a->execute();
  208. $orders_a = $stmt_a->fetchAll();
  209.  
  210. $totQty_a = 0;
  211.  
  212. foreach ($orders_a as $order_a): // add 30 January 2015
  213. $rowspan+=1;
  214. $ambilcurr2 = $order_a['currency_id']; // 6 Maret 2015
  215. endforeach;
  216.  
  217.  
  218. $currencies_a = Doctrine::getTable('Currencies') // 6 Maret 2015
  219. ->createQuery('a')
  220. ->execute();
  221. foreach ($currencies_a as $cc_a) {
  222. if ($cc_a->getId() == $ambilcurr2) {
  223. $matauang2 = $cc_a->getSymbol();
  224. }
  225. }
  226.  
  227. $pesan.="<tr>
  228. <td rowspan='$rowspan' align = 'left' > Final Payment ( $final_persentase% )</td>
  229. ";
  230.  
  231. foreach ($orders_a as $order_a):
  232.  
  233. $pesan .= "
  234. <td align='right'>" . date('d-m-Y', strtotime($order_a['due_date'])) . "</td>
  235. <td align='right'>" . sprintf($matauang2 . '.%s', number_format($order_a['pay_final'])) . "</td>
  236. <td align='right'>" . number_format($order_a['qty']) . "</td>
  237. <td>" . $order_a['estate'] . "</td>
  238. <td align='right'>" . date('d-m-Y', strtotime($order_a['delivery_date'])) . "</td>
  239. </tr>";
  240. $totQty_a+=$order_a['qty'];
  241. $totPay_a+=$order_a['pay_final'];
  242. endforeach;
  243.  
  244. $pesan .= "
  245. <tr>
  246. <td colspan='2'>Grand Total</td>
  247. <td align='right'>" . $matauang . "." . number_format($totPay_a) . "</td>
  248. <td align='right'>" . number_format($totQty_a) . "</td>
  249. <td></td><td></td>
  250. </tr>
  251. </tbody>
  252. </table><br>";
  253.  
  254. unset($arr_qty_a);
  255. unset($arr_pay_a);
  256.  
  257. //logo damimas.com
  258.  
  259. $pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta
  260. <b>" . $rekening . "</b> atas nama <b>PT Sawit Unggul Sakti.</b><br><br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>.
  261. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>
  262. 1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*)
  263. Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br />
  264. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br />
  265. <span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  266.  
  267.  
  268. $message = $this->getMailer()->compose();
  269. $message->setSubject("Verifikasi Order #" . $r['opportunity_name']);
  270. $message->setTo($email);
  271. $message->setCc("adm@damimas.com");
  272. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  273. $message->setBody($pesan, 'text/html');
  274.  
  275. // kirim email ke customer
  276.  
  277. if ($this->getMailer()->send($message)) {
  278. $qm = Doctrine_Query::create()
  279. ->update('OpportunitiesCstm')
  280. ->set('approvedreminder_c', '?', 1)
  281. ->where('id_c = ?', $r['id_op'])
  282. ->execute();
  283.  
  284. echo "Email Verifikasi Order terkirim ke " . $email . "<br>";
  285. }
  286. echo $pesan;
  287. }
  288. } elseif ($dp2x == $payterms) {
  289. $stmt = $pdo->prepare($query);
  290. $stmt->execute();
  291. $results = $stmt->fetchAll();
  292. foreach ($results as $r) {
  293. $company_name = $r['name'];
  294. $username = $r['usernm_c'];
  295. $email = $r['email_address'];
  296. $id_opp = $r['id_op'];
  297. $idcurrency = $r['id_currency']; // 6 Maret 2015
  298. $payterms_c = $r['payterms_c'];
  299. // sent email
  300. //$opportunities = Doctrine_Core::getTable('Opportunities')->find(array($r['id_op']));
  301. $pesan = "<p>Pelanggan Yth,</p>";
  302. $pesan .= "<p>User name: <b>" . $r['usernm_c'] . "</b><br />Pemesanan anda dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b><br />Tanggal Order: <b>" . date('d-m-Y', strtotime($r['opportunity_date_entered'])) . "</b> telah disetujui. Berikut ini merupakan jadwal pembayaran sesuai aturan yang berlaku:<br>";
  303.  
  304. $pesan .= "
  305. <table border='1'>
  306. <thead>
  307. <th>Type of Payment</th>
  308. <th>Payment Due Date</th>
  309. <th>Total Payment</th>
  310. <th>Quantity</th>
  311. <th>Plantation Location</th>
  312. <th>Delivery Date</th>
  313. </thead>
  314. <tbody>";
  315.  
  316. // get custom parameter
  317. // CALCULATE PAYMENT DUE DATE
  318. $cp = Doctrine::getTable('CustomParameter')
  319. ->createQuery('a')
  320. ->execute();
  321. foreach ($cp as $c) {
  322. if ($c->getId() == 3) {
  323. $nilaidp1 = $c->getValue();
  324. }
  325. if ($c->getId() == 4) {
  326. $nilaidp2 = $c->getValue();
  327. }
  328. if ($c->getId() == 5) {
  329. $finalpaymentdp2 = $c->getValue();
  330. }
  331. if ($c->getId() == 43) {
  332. $dp1_persentase = $c->getValue(); // nilai persentase dp1 sebesar 25
  333. }
  334. if ($c->getId() == 44) {
  335. $dp2_persentase = $c->getValue(); // nilai persentase dp2 sebesar 25
  336. }
  337. if ($c->getId() == 45) {
  338. $final_persentase = $c->getValue(); //nilai persentase final sebesar 50%
  339. }
  340. if ($c->getId() == 34) {
  341. $alamatemail = $c->getValue();
  342. }
  343. }
  344.  
  345. $totPay = 0;
  346.  
  347. // get date interval
  348. $pdo_dp2 = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  349. $tgl_dp2 = $r['date_closed'];
  350. $query_dp2 = "select adddate('" . $tgl_dp2 . "', " . $nilaidp1 . ") as tdp1, adddate('" . $tgl_dp2 . "', " . $nilaidp2 . ") as tdp2";
  351. $stmt_dp2 = $pdo_dp2->prepare($query_dp2);
  352. $stmt_dp2->execute();
  353. $results_dp2 = $stmt_dp2->fetchAll();
  354.  
  355. foreach ($results_dp2 as $rs_dp2) {
  356. $tdp1 = $rs_dp2['tdp1'];
  357. $tdp2 = $rs_dp2['tdp2'];
  358. }
  359.  
  360. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  361. ->createQuery('a')
  362. ->execute();
  363.  
  364. $ambilcurr = $idcurrency;
  365. foreach ($currencies as $cc) {
  366. if ($cc->getId() == $ambilcurr) {
  367.  
  368. $matauang = $cc->getSymbol();
  369. }
  370. }
  371. $pesan .= "<tr><td>Down Payment ( $dp1_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp1)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp1']) . "</td><td>-</td><td>-</td><td>-</td>";
  372. $pesan .= "<tr><td>Additional Payment ( $dp2_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp2)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp2']) . "</td><td>-</td><td>-</td><td>-</td></tr>";
  373.  
  374. $totPay_b = $r['dp1'] + $r['dp2'];
  375.  
  376.  
  377. $sql_b = "
  378. select kebun.name as estate, ord.delivery_date, adddate(ord.delivery_date, -" . $finalpaymentdp2 . ") due_date, ord.qty, ord.pay_final, ord.currency_id
  379. from opportunitis_omk_orders_c opporder,
  380. omk_orders ord,
  381. omk_data_kebun kebun
  382. where opporder.opportunit3b1f_orders_idb = ord.id and
  383. ord.omk_data_kebun_id_c = kebun.id and
  384. opporder.opportunit14d7unities_ida = '" . $id_opp . "' " .
  385. "order by ord.delivery_date";
  386.  
  387. $pdo_b = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  388. $stmt_b = $pdo_b->prepare($sql_b);
  389. $stmt_b->execute();
  390. $orders_b = $stmt_b->fetchAll();
  391.  
  392. $totQty_b = 0;
  393. foreach ($orders_b as $order_b): // add 30 January 2015
  394. $rowspan+=1;
  395. $ambilcurr2 = $order_b['currency_id']; // 6 Maret 2015
  396. endforeach;
  397. $currencies_b = Doctrine::getTable('Currencies') // 6 Maret 2015
  398. ->createQuery('a')
  399. ->execute();
  400. foreach ($currencies_b as $cc_b) {
  401. if ($cc_b->getId() == $ambilcurr2) {
  402. $matauang2 = $cc_b->getSymbol();
  403. }
  404. }
  405.  
  406. $pesan.="<tr>
  407. <td rowspan='$rowspan' align = 'left' > Final Payment ( $final_persentase% )</td>
  408. ";
  409.  
  410. foreach ($orders_b as $order_b):
  411. $pesan .= "
  412.  
  413. <td align='right'>" . date('d-m-Y', strtotime($order_b['due_date'])) . "</td>
  414. <td align='right'>" . sprintf($matauang2 . '.%s', number_format($order_b['pay_final'])) . "</td>
  415. <td align='right'>" . number_format($order_b['qty']) . "</td>
  416. <td>" . $order_b['estate'] . "</td>
  417. <td align='right'>" . date('d-m-Y', strtotime($order_b['delivery_date'])) . "</td>
  418. </tr>";
  419. $totQty_b+=$order_b['qty'];
  420. $totPay_b+=$order_b['pay_final'];
  421. endforeach;
  422.  
  423. $pesan .= "
  424. <tr>
  425. <td colspan='2'>Grand Total</td>
  426. <td align='right'>" . $matauang . "." . number_format($totPay_b) . "</td>
  427. <td align='right'>" . number_format($totQty_b) . "</td>
  428. <td></td><td></td>
  429. </tr>
  430. </tbody>
  431. </table><br>";
  432.  
  433. unset($arr_qty_b);
  434. unset($arr_pay_b);
  435.  
  436. $pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta
  437. <b>" . $rekening . "</b> atas nama <b>PT Dami Mas Sejahtera.</b><br><br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*) Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br />
  438. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  439.  
  440. $message = $this->getMailer()->compose();
  441. $message->setSubject("Verifikasi Order #" . $r['opportunity_name']);
  442. $message->setTo($email);
  443. $message->setCc("adm@damimas.com");
  444. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  445. $message->setBody($pesan, 'text/html');
  446.  
  447. if ($this->getMailer()->send($message)) {
  448. $qm = Doctrine_Query::create()
  449. ->update('OpportunitiesCstm')
  450. ->set('approvedreminder_c', '?', 1)
  451. ->where('id_c = ?', $r['id_op'])
  452. ->execute();
  453.  
  454. echo "Email Verifikasi Order terkirim ke " . $email . "<br>";
  455. }
  456. echo $pesan;
  457. }
  458. } elseif ($dp3x == $payterms) {
  459.  
  460. $stmt = $pdo->prepare($query);
  461. $stmt->execute();
  462. $results = $stmt->fetchAll();
  463. foreach ($results as $r) {
  464. $company_name = $r['name'];
  465. $username = $r['usernm_c'];
  466. $email = $r['email_address'];
  467. $id_opp = $r['id_op'];
  468. $idcurrency = $r['id_currency']; // 6 Maret 2015
  469. $payterms_c = $r['payterms_c'];
  470. // sent email
  471.  
  472. //$opportunities = Doctrine_Core::getTable('Opportunities')->find(array($r['id_op']));
  473.  
  474. $pesan = "<p>Pelanggan Yth,</p>";
  475. $pesan .= "<p>User name: <b>" . $r['usernm_c'] . "</b><br />Pemesanan anda dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b><br />Tanggal Order: <b>" . date('d-m-Y', strtotime($r['opportunity_date_entered'])) . "</b> telah disetujui. Berikut ini merupakan jadwal pembayaran sesuai aturan yang berlaku:<br>";
  476.  
  477.  
  478.  
  479. $pesan .= "
  480. <table border='1'>
  481. <thead>
  482. <th>Type of Payment</th>
  483. <th>Payment Due Date</th>
  484. <th>Total Payment</th>
  485. <th>Quantity</th>
  486. <th>Plantation Location</th>
  487. <th>Delivery Date</th>
  488. </thead>
  489. <tbody>";
  490.  
  491. // get custom parameter
  492. // CALCULATE PAYMENT DUE DATE
  493. $cp = Doctrine::getTable('CustomParameter')
  494. ->createQuery('a')
  495. ->execute();
  496. foreach ($cp as $c) {
  497. if ($c->getId() == 6) {
  498. $nilaidp1 = $c->getValue(); // niali 7 hari
  499. }
  500. if ($c->getId() == 7) {
  501. $nilaidp2 = $c->getValue(); // nilai 30 hari
  502. }
  503. if ($c->getId() == 8) {
  504. $nilaidp3 = $c->getValue(); // nilai 60 hari
  505. }
  506. if ($c->getId() == 9) {
  507. $finalpaymentdp3 = $c->getValue(); //
  508. }
  509. if ($c->getId() == 46) {
  510. $dp1_persentase = $c->getValue(); // nilai dp1 25%
  511. }
  512. if ($c->getId() == 47) {
  513. $dp2_persentase = $c->getValue(); // nilai dp1 15%
  514. }
  515. if ($c->getId() == 48) {
  516. $dp3_persentase = $c->getValue(); // nilai dp1 10%
  517. }
  518. if ($c->getId() == 49) {
  519. $final_persentase = $c->getValue(); // nilai persentase final 50%
  520. }
  521. if ($c->getId() == 34) {
  522. $alamatemail = $c->getValue();
  523. }
  524. }
  525. $totPay = 0;
  526.  
  527. // get date interval
  528. $pdo_dp3 = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  529. $tgl_dp3 = $r['date_closed'];
  530. $query_dp3 = "select adddate('" . $tgl_dp3 . "', " . $nilaidp1 . ") as tdp1, adddate('" . $tgl_dp3 . "'," . $nilaidp2 . ") as tdp2, adddate('" . $r['1stdel'] . "', -" . $nilaidp3 . ") as tdp3";
  531. $stmt_dp3 = $pdo_dp3->prepare($query_dp3);
  532. $stmt_dp3->execute();
  533. $results_dp3 = $stmt_dp3->fetchAll();
  534.  
  535. foreach ($results_dp3 as $rs_dp3) {
  536. $tdp1 = $rs_dp3['tdp1'];
  537. $tdp2 = $rs_dp3['tdp2'];
  538. $tdp3 = $rs_dp3['tdp3'];
  539. }
  540. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  541. ->createQuery('a')
  542. ->execute();
  543.  
  544. $ambilcurr = $idcurrency;
  545. foreach ($currencies as $cc) {
  546. if ($cc->getId() == $ambilcurr) {
  547.  
  548. $matauang = $cc->getSymbol();
  549. }
  550. }
  551.  
  552. $pesan .= "<tr><td>Down Payment ( $dp1_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp1)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp1']) . "</td><td>-</td><td>-</td><td>-</td>";
  553. $pesan .= "<tr><td>Additional Payment 1 ( $dp2_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp2)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp2']) . "</td><td>-</td><td>-</td><td>-</td></tr>";
  554. $pesan .= "<tr><td>Additional Payment 2 ( $dp3_persentase% )</td><td align='right'>" . date('d-m-Y', strtotime($tdp3)) . "</td><td align='right'>" . $matauang . "." . number_format($r['dp3']) . "</td><td>-</td><td>-</td><td>-</td></tr>";
  555.  
  556. $totPay_c = $r['dp1'] + $r['dp2'] + $r['dp3'];
  557.  
  558.  
  559. $sql_c = "
  560. select kebun.name as estate, ord.delivery_date, adddate(ord.delivery_date, -" . $finalpaymentdp3 . ") due_date, ord.qty, ord.pay_final, ord.currency_id
  561. from opportunitis_omk_orders_c opporder,
  562. omk_orders ord,
  563. omk_data_kebun kebun
  564. where opporder.opportunit3b1f_orders_idb = ord.id and
  565. ord.omk_data_kebun_id_c = kebun.id and
  566. opporder.opportunit14d7unities_ida = '" . $id_opp . "' " .
  567. "order by ord.delivery_date";
  568.  
  569. $pdo_c = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  570. $stmt_c = $pdo_c->prepare($sql_c);
  571. $stmt_c->execute();
  572. $orders_c = $stmt_c->fetchAll();
  573.  
  574. $totQty_c = 0;
  575. foreach ($orders_c as $order_c): // add 30 January 2015
  576. $rowspan+=1;
  577. $ambilcurr2 = $order_c['currency_id']; // 6 Maret 2015
  578. endforeach;
  579. $currencies_c = Doctrine::getTable('Currencies') // 6 Maret 2015
  580. ->createQuery('a')
  581. ->execute();
  582. foreach ($currencies_c as $cc_c) {
  583. if ($cc_c->getId() == $ambilcurr2) {
  584. $matauang2 = $cc_c->getSymbol();
  585. }
  586. }
  587.  
  588. $pesan.="<tr>
  589. <td rowspan='$rowspan' align = 'left' > Final Payment ( $final_persentase% )</td>
  590. ";
  591.  
  592.  
  593. foreach ($orders_c as $order_c):
  594. $pesan .= "
  595.  
  596. <td align='right'>" . date('d-m-Y', strtotime($order_c['due_date'])) . "</td>
  597. <td align='right'>" . sprintf($matauang2 . '.%s', number_format($order_c['pay_final'])) . "</td>
  598. <td align='right'>" . number_format($order_c['qty']) . "</td>
  599. <td>" . $order_c['estate'] . "</td>
  600. <td align='right'>" . date('d-m-Y', strtotime($order_c['delivery_date'])) . "</td>
  601. </tr>";
  602. $totQty_c+=$order_c['qty'];
  603. $totPay_c+=$order_c['pay_final'];
  604. endforeach;
  605.  
  606. $pesan .= "
  607. <tr>
  608. <td colspan='2'>Grand Total</td>
  609. <td align='right'>" . $matauang . "." . number_format($totPay_c) . "</td>
  610. <td align='right'>" . number_format($totQty_c) . "</td>
  611. <td></td><td></td>
  612. </tr>
  613. </tbody>
  614. </table><br>";
  615.  
  616. unset($arr_qty_c);
  617. unset($arr_pay_c);
  618.  
  619. //logo damimas.com
  620.  
  621. $pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta
  622. <b>" . $rekening . "</b> atas nama <b>PT Dami Mas Sejahtera.</b><br><br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*) Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br /><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  623.  
  624.  
  625. $message = $this->getMailer()->compose();
  626. $message->setSubject("Verifikasi Order #" . $r['opportunity_name']);
  627. $message->setTo($email);
  628. $message->setCc("adm@damimas.com");
  629. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  630. $message->setBody($pesan, 'text/html');
  631.  
  632. if ($this->getMailer()->send($message)) {
  633. $qm = Doctrine_Query::create()
  634. ->update('OpportunitiesCstm')
  635. ->set('approvedreminder_c', '?', 1)
  636. ->where('id_c = ?', $r['id_op'])
  637. ->execute();
  638.  
  639. echo "Email Verifikasi Order terkirim ke " . $email . "<br>";
  640. }
  641. echo $pesan;
  642. }
  643. } elseif ($no_dp == $payterms) {
  644. $stmt = $pdo->prepare($query);
  645. $stmt->execute();
  646. $results = $stmt->fetchAll();
  647. foreach ($results as $r) {
  648. $company_name = $r['name'];
  649. $username = $r['usernm_c'];
  650. $email = $r['email_address'];
  651. $id_opp = $r['id_op'];
  652. $idcurrency = $r['id_currency']; // 6 Maret 2015
  653. $payterms_c = $r['payterms_c'];
  654. // sent email
  655.  
  656. $pesan = "<p>Pelanggan Yth,</p>";
  657. $pesan .= "<p>User name: <b>" . $r['usernm_c'] . "</b><br />Pemesanan anda dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b><br />Tanggal Order: <b>" . date('d-m-Y', strtotime($r['opportunity_date_entered'])) . "</b> telah disetujui. Berikut ini merupakan jadwal pembayaran sesuai aturan yang berlaku:<br>";
  658.  
  659.  
  660.  
  661. $pesan .= "
  662. <table border='1'>
  663. <thead>
  664. <th>Type of Payment</th>
  665. <th>Total Payment</th>
  666. <th>Quantity</th>
  667. <th>Plantation Location</th>
  668. <th>Delivery Date</th>
  669. </thead>
  670. <tbody>";
  671.  
  672.  
  673.  
  674. // get custom parameter
  675. // CALCULATE PAYMENT DUE DATE
  676. $cp = Doctrine::getTable('CustomParameter')
  677. ->createQuery('a')
  678. ->execute();
  679. foreach ($cp as $c) {
  680. if ($c->getId() == 28) {
  681. $nodp = $c->getValue(); // No_DP /// belum dihitung
  682. }
  683. if ($c->getId() == 34) {
  684. $alamatemail = $c->getValue();
  685. }
  686. }
  687. $totPay = 0;
  688.  
  689. // get date interval
  690. $pdo_nodp = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  691. $tgl_nodp = $r['date_closed'];
  692. $query_nodp = "select adddate('" . $tgl_nodp . "', " . $nodp . ") as nodp";
  693. $stmt_nodp = $pdo_nodp->prepare($query_nodp);
  694. $stmt_nodp->execute();
  695. $results_nodp = $stmt_nodp->fetchAll();
  696.  
  697. foreach ($results_nodp as $rs_nodp) {
  698. $no_dp_dp = $rs_nodp['nodp'];
  699. }
  700.  
  701. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  702. ->createQuery('a')
  703. ->execute();
  704.  
  705. $ambilcurr = $idcurrency;
  706. foreach ($currencies as $cc) {
  707. if ($cc->getId() == $ambilcurr) {
  708.  
  709. $matauang = $cc->getSymbol();
  710. }
  711. }
  712.  
  713. $sql = "
  714. select kebun.name as estate, ord.delivery_date, adddate(ord.delivery_date, -" . $no_dp_dp . ") due_date, ord.qty, ord.pay_final, ord.currency_id
  715. from opportunitis_omk_orders_c opporder,
  716. omk_orders ord,
  717. omk_data_kebun kebun
  718. where opporder.opportunit3b1f_orders_idb = ord.id and
  719. ord.omk_data_kebun_id_c = kebun.id and
  720. opporder.opportunit14d7unities_ida = '" . $id_opp . "' order by ord.delivery_date";
  721.  
  722. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  723. $stmt = $pdo->prepare($sql);
  724. $stmt->execute();
  725. $orders = $stmt->fetchAll();
  726.  
  727. $totQty = 0;
  728. foreach ($orders as $order): // add 30 January 2015
  729. $rowspan+=1;
  730. $pesan.="<tr>";
  731. endforeach;
  732.  
  733. $pesan.="
  734. <td rowspan='$rowspan' align = 'left' > No Down Payment</td>
  735. <td align='right' rowspan='$rowspan'>" . $matauang . "." . number_format($r['amount']) . "</td>
  736. ";
  737.  
  738. foreach ($orders as $order):
  739. $pesan .= "
  740.  
  741.  
  742. <td align='right'>" . number_format($order['qty']) . "</td>
  743. <td>" . $order['estate'] . "</td>
  744. <td align='right'>" . date('d-m-Y', strtotime($order['delivery_date'])) . "</td>
  745. </tr>";
  746. $totQty+=$order['qty'];
  747. $totPay+=$order['pay_final'];
  748. endforeach;
  749.  
  750. // 30 January 2015
  751. $pesan .= "
  752. <tr>
  753. <td colspan ='4' align ='left'>Total Quantity</td>
  754. <td align='right'>" . number_format($totQty) . "</td>
  755. </tr>
  756. </tbody>
  757. </table><br>";
  758.  
  759. unset($arr_qty);
  760. unset($arr_pay);
  761.  
  762. //logo damimas.com
  763.  
  764. $pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta
  765. <b>" . $rekening . "</b> atas nama <b>PT Dami Mas Sejahtera.</b><br><br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*) Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br /><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  766.  
  767.  
  768.  
  769. $message = $this->getMailer()->compose();
  770. $message->setSubject("Verifikasi Order #" . $r['opportunity_name']);
  771. $message->setTo($email);
  772. $message->setCc("adm@damimas.com");
  773. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  774. $message->setBody($pesan, 'text/html');
  775.  
  776. if ($this->getMailer()->send($message)) {
  777. $qm = Doctrine_Query::create()
  778. ->update('OpportunitiesCstm')
  779. ->set('approvedreminder_c', '?', 1)
  780. ->where('id_c = ?', $r['id_op'])
  781. ->execute();
  782.  
  783. echo "Email Verifikasi Order terkirim ke " . $email . "<br>";
  784. }
  785. echo $pesan;
  786. }
  787. } elseif ($paylater == $payterms) {
  788. $stmt = $pdo->prepare($query);
  789. $stmt->execute();
  790. $results = $stmt->fetchAll();
  791. foreach ($results as $r) {
  792. $company_name = $r['name'];
  793. $username = $r['usernm_c'];
  794. $email = $r['email_address'];
  795. $id_opp = $r['id_op'];
  796. $idcurrency = $r['id_currency']; // 6 Maret 2015
  797. $payterms_c = $r['payterms_c'];
  798. // sent email
  799. //$opportunities = Doctrine_Core::getTable('Opportunities')->find(array($r['id_op']));
  800. $pesan = "<p>Pelanggan Yth,</p>";
  801. $pesan .= "<p>User name: <b>" . $r['usernm_c'] . "</b><br />Pemesanan anda dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b><br />Tanggal Order: <b>" . date('d-m-Y', strtotime($r['opportunity_date_entered'])) . "</b> telah disetujui. Berikut ini merupakan jadwal pembayaran sesuai aturan yang berlaku:<br>";
  802.  
  803. $pesan .= "
  804. <table border='1'>
  805. <thead>
  806. <th>Type of Payment</th>
  807. <th>Total Payment</th>
  808. <th>Payment Due Date</th>
  809. <th>Quantity</th>
  810. <th>Plantation Location</th>
  811. <th>Delivery Date</th>
  812. </thead>
  813. <tbody>";
  814.  
  815.  
  816.  
  817. // get custom parameter
  818. //CALCULATE PAYMENT DUE DATE
  819. $cp = Doctrine::getTable('CustomParameter')
  820. ->createQuery('a')
  821. ->execute();
  822. foreach ($cp as $c) {
  823. if ($c->getId() == 19) {
  824. $_paylater = $c->getValue(); // Pay Later
  825. }
  826. if ($c->getId() == 34) {
  827. $alamatemail = $c->getValue();
  828. }
  829. }
  830. $totPay_p = 0;
  831.  
  832. //get date interval
  833. $pdo_paylater = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  834. $tgl_paylater = $r['date_closed'];
  835. $query_paylater = "select adddate('" . $tgl_paylater . "', " . $_paylater . ") as paylater";
  836. $stmt_paylater = $pdo_paylater->prepare($query_paylater);
  837. $stmt_paylater->execute();
  838. $results_paylater = $stmt_paylater->fetchAll();
  839.  
  840. foreach ($results_paylater as $rs_paylater) {
  841. $paylater = $rs_paylater['paylater'];
  842. }
  843. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  844. ->createQuery('a')
  845. ->execute();
  846.  
  847. $ambilcurr = $idcurrency;
  848. foreach ($currencies as $cc) {
  849. if ($cc->getId() == $ambilcurr) {
  850.  
  851. $matauang = $cc->getSymbol();
  852. }
  853. }
  854.  
  855. $sql = "
  856. select kebun.name as estate, ord.delivery_date, adddate(ord.delivery_date, " . $paylater . ") due_date, ord.qty, ord.pay_final
  857. from opportunitis_omk_orders_c opporder,
  858. omk_orders ord,
  859. omk_data_kebun kebun
  860. where opporder.opportunit3b1f_orders_idb = ord.id and
  861. ord.omk_data_kebun_id_c = kebun.id and
  862. opporder.opportunit14d7unities_ida = '" . $id_opp . "' " .
  863. "order by ord.delivery_date";
  864.  
  865. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  866. $stmt = $pdo->prepare($sql);
  867. $stmt->execute();
  868. $orders_p = $stmt->fetchAll();
  869.  
  870. $totQty_p = 0;
  871.  
  872. foreach ($orders_p as $order_p): // add 30 January 2015
  873. $rowspan_p+=1;
  874. $pesan.="<tr>";
  875. endforeach;
  876.  
  877. $tanggalorder = date('d-m-Y', strtotime($order_p['delivery_date'])); //30 January 2015
  878. $tanggalpaylater = date('d-m-Y', strtotime('+' . $_paylater . ' days', strtotime($tanggalorder))); //operasi penjumlahan tanggal
  879.  
  880. $pesan.="
  881. <td rowspan='$rowspan_p' align = 'left' > Pay Later</td>
  882. <td align='right' rowspan='$rowspan_p'>" . $matauang . "." . number_format($r['amount']) . "</td>
  883. <td align='right' rowspan='$rowspan_p'> " . $tanggalpaylater . " </td>
  884.  
  885. ";
  886.  
  887. foreach ($orders_p as $order_p):
  888. $pesan .= "
  889.  
  890.  
  891. <td align='right'>" . number_format($order_p['qty']) . "</td>
  892. <td>" . $order_p['estate'] . "</td>
  893. <td align='right'>" . date('d-m-Y', strtotime($order_p['delivery_date'])) . "</td>
  894. </tr>";
  895. $totQty_p+=$order_p['qty'];
  896. $totPay_p+=$order_p['pay_final'];
  897. endforeach;
  898.  
  899. // 30 January 2015
  900. $pesan .= "
  901. <tr>
  902. <td colspan ='3'>Total Quantity</td>
  903. <td align='right'>" . number_format($totQty_p) . "</td>
  904. <td colspan ='2'></td>
  905. </tr>
  906. </tbody>
  907. </table><br>";
  908.  
  909. unset($arr_qty);
  910. unset($arr_pay);
  911.  
  912. //logo damimas.com
  913.  
  914. $pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta
  915. <b>" . $rekening . "</b>atas nama <b>PT Dami Mas Sejahtera.</b><br><br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*) Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br /><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  916.  
  917. // logo di localhost
  918. //$pesan .= "<p>Pembayaran dapat ditransfer ke rekening Bank International Indonesia cab. Thamrin, Jakarta <b>ACC 2-003-04454-9</b> atas nama <b>PT Dami Mas Sejahtera.</b><br><br>Bukti transfer harap diemail ke adm@damimas.com atau di fax ke (021) 318 1323. Untuk pengambilan kecambah harus dilengkapi dengan dokumen:<br><br>1. Delivery Order (DO)<br>2. SP2BKS*<br>3. Surat kuasa pengambilan kecambah.<br>*) Diwajibkan untuk pembelian kecambah kelapa sawit di atas 5.000 butir.<br><br>Terima kasih atas kepercayaan anda.</p><br /><img src='http://damimas.localhost/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  919.  
  920.  
  921. $message = $this->getMailer()->compose();
  922. $message->setSubject("Verifikasi Order #" . $r['opportunity_name']);
  923. $message->setTo($email);
  924. $message->setCc("adm@damimas.com");
  925. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  926. $message->setBody($pesan, 'text/html');
  927.  
  928. if ($this->getMailer()->send($message)) {
  929. $qm = Doctrine_Query::create()
  930. ->update('OpportunitiesCstm')
  931. ->set('approvedreminder_c', '?', 1)
  932. ->where('id_c = ?', $r['id_op'])
  933. ->execute();
  934.  
  935. echo "Email Verifikasi Order terkirim ke " . $email . "<br>";
  936. }
  937. echo $pesan;
  938. }
  939. }
  940. }
  941.  
  942.  
  943. /* -------------------------------------------PAYMENT REMINDER -------------------------------------------------------- */
  944. /* -------------------------------------------------------------------------------------------------------------------- */
  945. // untuk email reminder jatuh tempo dp1 , dp2, dp3 dan sisa pembayaran
  946. if ($tipe == "tempo_dp1" || $tipe == "tempo_dp2" || $tipe == "tempo_dp3" || $tipe == "tempo_final" || $tipe == "tempo_paylater" || $tipe == "tempo_nodp") {
  947. if ($tipe == "tempo_dp1") {
  948. $jenis = 29;
  949. } elseif ($tipe == "tempo_dp2") {
  950. $jenis = 30;
  951. } elseif ($tipe == "tempo_dp3") {
  952. $jenis = 31;
  953. } elseif ($tipe == "tempo_paylater") {
  954. $jenis = 32;
  955. } elseif ($tipe == "tempo_final") {
  956. $jenis = 33;
  957. } elseif ($tipe == "tempo_nodp") {
  958. $jenis = 51;
  959. }
  960.  
  961. // get payment reminder value (day)
  962. $cp = Doctrine::getTable('CustomParameter')
  963. ->createQuery('a')
  964. ->where('a.id = ?', array($jenis))
  965. ->execute();
  966.  
  967.  
  968. // 3 = 3 hari sebelum jatuh tempo
  969. $n = $cp[0]['value']; // nilainya 7
  970.  
  971. $reminder = Doctrine::getTable('CustomParameter')
  972. ->createQuery('a')
  973. ->where('a.id = ?', array(15))
  974. ->execute();
  975.  
  976. $reminderDefault = $reminder[0]['value']; // nilainya 3
  977.  
  978. /* -----------------------------------------------------------DP 1 ---------------------------------------------------- */
  979. /* -------------------------------------------------------------------------------------------------------------------- */
  980.  
  981. if ($tipe == "tempo_dp1") :
  982.  
  983. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  984. // query ok
  985. // for going live
  986. $query = "
  987. select opp.name as opportunity_name, oppF.dp1amt_c, date_format(date_add(opp.date_closed, interval " . $n . " day), '%d-%m-%Y') as dp1reminder, ea.email_address, oppF.pono_c, opp.currency_id
  988. from opportunities opp,
  989. accounts acc,
  990. accounts_opportunities aOpp,
  991. email_addr_bean_rel erel,
  992. email_addresses ea,
  993. opportunities_cstm oppF
  994. where opp.id = oppF.id_c and
  995. aOpp.opportunity_id = opp.id and
  996. aOpp.account_id = acc.id and
  997. acc.id = erel.bean_id and
  998. erel.email_address_id = ea.id and
  999. date_add(opp.date_closed, interval " . $n . " - " . $reminderDefault . " day) = current_date and
  1000. oppF.dp1paid_c = 0 and
  1001. opp.sales_stage = 'Approved' and
  1002. erel.bean_module = 'Accounts' and
  1003. erel.deleted = '0' and
  1004. oppF.payterms_c NOT IN ('no_dp','paylater')
  1005. ";
  1006.  
  1007.  
  1008. $stmt = $pdo->prepare($query);
  1009. $stmt->execute();
  1010. $results = $stmt->fetchAll();
  1011.  
  1012. foreach ($results as $r) {
  1013.  
  1014. $subject = "Jatuh Tempo DP Ke-1";
  1015. $jns = "uang muka";
  1016. $nilai_rupiah = floatval($r['dp1amt_c']);
  1017.  
  1018. $idcurrency = $r['currency_id'];
  1019. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1020. ->createQuery('a')
  1021. ->execute();
  1022.  
  1023. $ambilcurr = $idcurrency;
  1024. foreach ($currencies as $cc) {
  1025. if ($cc->getId() == $ambilcurr) {
  1026.  
  1027. $matauang = $cc->getSymbol();
  1028. }
  1029. }
  1030.  
  1031.  
  1032. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran " . $jns . " sebesar <b>" . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['dp1reminder'] . "</b> untuk pemesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br><br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta<br>
  1033. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera.<br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>.</b><br>
  1034. <br>Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br><br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor 021 50338899 ext 6313 atau sales@damimas.com.<br><br><br>
  1035. Terima kasih.<img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1036.  
  1037.  
  1038. $message = $this->getMailer()->compose();
  1039. $message->setSubject($subject);
  1040. $message->setTo($r['email_address']);
  1041. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1042.  
  1043.  
  1044. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1045. $message->setBody($pesan, 'text/html');
  1046. $this->getMailer()->send($message);
  1047.  
  1048. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1049. echo $pesan;
  1050. }
  1051. /* -----------------------------------------------------------DP 2 ---------------------------------------------------- */
  1052. /* -------------------------------------------------------------------------------------------------------------------- */ elseif ($tipe == "tempo_dp2") :
  1053. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1054. // query ok
  1055. $query = "
  1056. select opp.name as opportunity_name, oppF.dp2amt_c, date_format(date_add(opp.date_closed, interval " . $n . " day), '%d-%m-%Y') as dp2reminder, ea.email_address, oppF.pono_c, opp.currency_id
  1057. from opportunities opp,
  1058. accounts acc,
  1059. accounts_opportunities aOpp,
  1060. email_addr_bean_rel erel,
  1061. email_addresses ea,
  1062. opportunities_cstm oppF
  1063. where opp.id = oppF.id_c and
  1064. aOpp.opportunity_id = opp.id and
  1065. aOpp.account_id = acc.id and
  1066. acc.id = erel.bean_id and
  1067. erel.email_address_id = ea.id and
  1068. date_add(opp.date_closed, interval " . $n . " - " . $reminderDefault . " day) = current_date and
  1069. oppF.dp2paid_c = 0 and
  1070. oppF.dp1paid_c = 1 and
  1071. opp.sales_stage = 'Approved' and
  1072. erel.bean_module = 'Accounts' and
  1073. erel.deleted = '0' and
  1074. oppF.payterms_c NOT IN ('no_dp','paylater','dp1x')
  1075. ";
  1076.  
  1077.  
  1078.  
  1079. $stmt = $pdo->prepare($query);
  1080. $stmt->execute();
  1081. $results = $stmt->fetchAll();
  1082.  
  1083. foreach ($results as $r) {
  1084.  
  1085. $subject = "Jatuh Tempo DP Ke-2";
  1086. $jns = "Additional Payment";
  1087. $nilai_rupiah = floatval($r['dp2amt_c']);
  1088. $idcurrency = $r['currency_id'];
  1089. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1090. ->createQuery('a')
  1091. ->execute();
  1092.  
  1093. $ambilcurr = $idcurrency;
  1094. foreach ($currencies as $cc) {
  1095. if ($cc->getId() == $ambilcurr) {
  1096.  
  1097. $matauang = $cc->getSymbol();
  1098. }
  1099. }
  1100.  
  1101.  
  1102.  
  1103.  
  1104. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran " . $jns . " sebesar <b>" . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['dp2reminder'] . "</b> untuk pemesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br><br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta<br>
  1105. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera.<br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>.</b><br>
  1106. <br>Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br><br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor 021 50338899 ext 6313 atau sales@damimas.com.<br><br><br>
  1107. Terima kasih.<br>
  1108. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1109.  
  1110. $message = $this->getMailer()->compose();
  1111. $message->setSubject($subject);
  1112. $message->setTo($r['email_address']);
  1113. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1114.  
  1115. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1116. $message->setBody($pesan, 'text/html');
  1117. $this->getMailer()->send($message);
  1118.  
  1119. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1120. echo $pesan;
  1121. }
  1122. /* -----------------------------------------------------------DP 3 ---------------------------------------------------- */
  1123. /* -------------------------------------------------------------------------------------------------------------------- */ elseif ($tipe == "tempo_dp3") :
  1124. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1125.  
  1126.  
  1127. $query = "
  1128. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty, oppD.dp3amt_c, oppD.opportunity_name, date_format(date_add(ord.delivery_date, interval -" . $n . " day), '%d-%m-%Y') as dp3reminder, ea.email_address, ord.qty, oppD.currency_id
  1129. from omk_orders ord,
  1130. opportunitis_omk_orders_c opporder,
  1131. omk_data_kebun kebun,
  1132. accounts acc,
  1133. accounts_opportunities aOpp,
  1134. email_addr_bean_rel erel,
  1135. email_addresses ea,
  1136. (select oppF.dp3amt_c, opp.name as opportunity_name, opp.id,oppF.pono_c, opp.currency_id,
  1137. (select ord.id
  1138. from opportunitis_omk_orders_c opporder,
  1139. omk_orders ord
  1140. where opporder.opportunit3b1f_orders_idb = ord.id and
  1141. opporder.opportunit14d7unities_ida = opp.id
  1142. order by ord.delivery_date ASC
  1143. limit 1) as ord_id
  1144. from opportunities opp,
  1145. opportunities_cstm oppF
  1146. where opp.id = oppF.id_c and
  1147. oppF.dp_3_paid_c = 0 and
  1148. oppF.dp1paid_c = 1 and
  1149. oppF.dp2paid_c = 1 and
  1150. oppF.payterms_c NOT IN ('no_dp','paylater','dp1x','dp2x') and
  1151. opp.sales_stage = 'Approved' and
  1152. opp.deleted = 0) oppD
  1153. where ord.id = oppD.ord_id and
  1154. opporder.opportunit3b1f_orders_idb = ord.id and
  1155. date_add(ord.delivery_date, interval -" . $n . " - " . $reminderDefault . " day) = current_date and
  1156. aOpp.opportunity_id = oppD.id and
  1157. aOpp.account_id = acc.id and
  1158. acc.id = erel.bean_id and
  1159. erel.email_address_id = ea.id and
  1160. erel.bean_module = 'Accounts' and
  1161. erel.deleted = '0' and
  1162. ord.omk_data_kebun_id_c = kebun.id
  1163. ";
  1164.  
  1165.  
  1166.  
  1167.  
  1168. $stmt = $pdo->prepare($query);
  1169. $stmt->execute();
  1170. $results = $stmt->fetchAll();
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176. foreach ($results as $r) {
  1177.  
  1178. $subject = "Jatuh Tempo DP Ke-3";
  1179. $jns = "Additional Payment";
  1180. $nilai_rupiah = floatval($r['dp3amt_c']);
  1181. $idcurrency = $r['currency_id'];
  1182.  
  1183. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1184. ->createQuery('a')
  1185. ->execute();
  1186.  
  1187. $ambilcurr = $idcurrency;
  1188. foreach ($currencies as $cc) {
  1189. if ($cc->getId() == $ambilcurr) {
  1190.  
  1191. $matauang = $cc->getSymbol();
  1192. }
  1193. }
  1194.  
  1195. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran " . $jns . " sebesar <b>" . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['dp3reminder'] . "</b> untuk pemesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br><br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta<br>
  1196. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera.<br>Bukti transfer harap diemail ke <b>sales@damimas.com</b>
  1197. atau di fax ke </b>(021) 318 1323.</b><br><br>Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br><br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor </b>021 50338899</b> ext <b>6313</b> atau <b>sales@damimas.com.</b><br><br><br>
  1198. Terima kasih.<br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1199.  
  1200. $message = $this->getMailer()->compose();
  1201. $message->setSubject($subject);
  1202. $message->setTo($r['email_address']);
  1203. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1204.  
  1205. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1206. $message->setBody($pesan, 'text/html');
  1207. $this->getMailer()->send($message);
  1208.  
  1209. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1210. echo $pesan;
  1211. }
  1212. /* ----------------------------------------------------------- Tempo_final ---------------------------------------------------- */
  1213. /* -------------------------------------------------------------------------------------------------------------------- */ elseif ($tipe == "tempo_final") :
  1214. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1215. // query ok
  1216. $query = "
  1217. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty,ord.pay_final, opp.name as opportunity_name, date_format(date_add(ord.delivery_date, interval -" . $n . " day), '%d-%m-%Y') as finalreminder, ea.email_address, ord.qty, oppF.pono_c, opp.currency_id
  1218. from opportunitis_omk_orders_c opporder,
  1219. omk_orders ord,
  1220. omk_data_kebun kebun,
  1221. opportunities opp,
  1222. accounts acc,
  1223. accounts_opportunities aOpp,
  1224. email_addr_bean_rel erel,
  1225. email_addresses ea,
  1226. opportunities_cstm oppF
  1227. where opporder.opportunit3b1f_orders_idb = ord.id and
  1228. ord.omk_data_kebun_id_c = kebun.id and
  1229. date_add(ord.delivery_date, interval -" . $n . " - " . $reminderDefault . " day) = current_date and
  1230. opp.id = oppF.id_c and
  1231. aOpp.opportunity_id = opp.id and
  1232. aOpp.account_id = acc.id and
  1233. acc.id = erel.bean_id and
  1234. erel.email_address_id = ea.id and
  1235. ord.paid_final = 0 and
  1236. opp.sales_stage = 'Approved' and
  1237. erel.bean_module = 'Accounts' and
  1238. erel.deleted = '0' and
  1239. opporder.opportunit14d7unities_ida = opp.id and
  1240. oppF.payterms_c NOT IN ('no_dp','paylater')
  1241. ";
  1242.  
  1243.  
  1244.  
  1245. $stmt = $pdo->prepare($query);
  1246. $stmt->execute();
  1247. $results = $stmt->fetchAll();
  1248.  
  1249. foreach ($results as $r) {
  1250.  
  1251. $subject = "Final Payment untuk Pengiriman " . $r['estate'] . " Tanggal " . $r['delivery_date'];
  1252. $jns = "pelunasanan pengiriman ke " . $r['estate'] . " Tanggal " . $r['delivery_date'];
  1253. $nilai_rupiah = floatval($r['pay_final']);
  1254. $idcurrency = $r['currency_id'];
  1255.  
  1256. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1257. ->createQuery('a')
  1258. ->execute();
  1259.  
  1260. $ambilcurr = $idcurrency;
  1261. foreach ($currencies as $cc) {
  1262. if ($cc->getId() == $ambilcurr) {
  1263.  
  1264. $matauang = $cc->getSymbol();
  1265. }
  1266. }
  1267.  
  1268.  
  1269.  
  1270. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran untuk <b>" . $jns . "</b> Sebesar <b> " . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['finalreminder'] . "</b> untuk pemesanan <b>" . number_format($r['qty']) . "</b> Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br><br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta
  1271. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera. Bukti transfer harap diemail ke <b>sales@damimas.com</b>.</b><br><br>
  1272. Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br>
  1273. <br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor <b>021 50338899</b> ext <b>6313</b> atau <b>sales@damimas.com.</b><br><br><br>Terima kasih.
  1274. <br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1275.  
  1276. $message = $this->getMailer()->compose();
  1277. $message->setSubject($subject);
  1278. $message->setTo($r['email_address']);
  1279. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1280. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1281. $message->setBody($pesan, 'text/html');
  1282. $this->getMailer()->send($message);
  1283.  
  1284. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1285. //echo $pesan;
  1286. }
  1287. /* -----------------------------------------------------------NO DP ---------------------------------------------------- */
  1288. /* -------------------------------------------------------------------------------------------------------------------- */ elseif ($tipe == "tempo_nodp") :
  1289.  
  1290. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1291. // query ok
  1292. // for going live
  1293. $query = "
  1294. select opp.name as opportunity_name, oppF.dp1amt_c, date_format(date_add(opp.date_closed, interval " . $n . " day), '%d-%m-%Y') as nodpreminder, ea.email_address, oppF.pono_c, opp.currency_id, opp.amount
  1295. from opportunities opp,
  1296. accounts acc,
  1297. accounts_opportunities aOpp,
  1298. email_addr_bean_rel erel,
  1299. email_addresses ea,
  1300. opportunities_cstm oppF
  1301. where opp.id = oppF.id_c and
  1302. aOpp.opportunity_id = opp.id and
  1303. aOpp.account_id = acc.id and
  1304. acc.id = erel.bean_id and
  1305. erel.email_address_id = ea.id and
  1306. date_add(opp.date_closed, interval " . $n . " - " . $reminderDefault . " day) = current_date and
  1307. opp.sales_stage = 'Approved' and
  1308. erel.bean_module = 'Accounts' and
  1309. erel.deleted = '0' and
  1310. oppF.payterms_c ='no_dp' and
  1311. oppF.paylater_paid_c = 0
  1312. ";
  1313.  
  1314.  
  1315. $stmt = $pdo->prepare($query);
  1316. $stmt->execute();
  1317. $results = $stmt->fetchAll();
  1318.  
  1319. foreach ($results as $r) {
  1320.  
  1321. $subject = "Jatuh Tempo Pembayaran";
  1322. $jns = "full";
  1323. $nilai_rupiah = floatval($r['amount']);
  1324.  
  1325. $idcurrency = $r['currency_id'];
  1326. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1327. ->createQuery('a')
  1328. ->execute();
  1329.  
  1330. $ambilcurr = $idcurrency;
  1331. foreach ($currencies as $cc) {
  1332. if ($cc->getId() == $ambilcurr) {
  1333.  
  1334. $matauang = $cc->getSymbol();
  1335. }
  1336. }
  1337.  
  1338.  
  1339. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran " . $jns . " sebesar <b>" . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['nodpreminder'] . "</b> untuk pemesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br><br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta
  1340. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera. Bukti transfer harap diemail ke <b>sales@damimas.com</b>. <br><br>
  1341. Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br><br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor 021 50338899 ext 6313 atau sales@damimas.com.<br><br><br>Terima kasih.<br>
  1342. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1343.  
  1344.  
  1345. $message = $this->getMailer()->compose();
  1346. $message->setSubject($subject);
  1347. $message->setTo($r['email_address']);
  1348. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1349.  
  1350.  
  1351. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1352. $message->setBody($pesan, 'text/html');
  1353. $this->getMailer()->send($message);
  1354.  
  1355. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1356. echo $pesan;
  1357. }
  1358. /* -----------------------------------------------------------Tempo Paylater ---------------------------------------------------- */
  1359. /* -------------------------------------------------------------------------------------------------------------------- */ elseif ($tipe == "tempo_paylater") :
  1360. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1361. // query ok
  1362. $query = "
  1363. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty,ord.pay_final, opp.name as opportunity_name, date_format(date_add(ord.delivery_date, interval " . $n . " day), '%d-%m-%Y') as paylater_payment, ea.email_address, ord.qty, oppF.pono_c, opp.amount grand_total, opp.currency_id
  1364. from opportunitis_omk_orders_c opporder,
  1365. omk_orders ord,
  1366. omk_data_kebun kebun,
  1367. opportunities opp,
  1368. accounts acc,
  1369. accounts_opportunities aOpp,
  1370. email_addr_bean_rel erel,
  1371. email_addresses ea,
  1372. opportunities_cstm oppF
  1373. where opporder.opportunit3b1f_orders_idb = ord.id and
  1374. ord.omk_data_kebun_id_c = kebun.id and
  1375. date_add(ord.delivery_date, interval " . $n . " - " . $reminderDefault . " day) = current_date and
  1376. opp.id = oppF.id_c and
  1377. aOpp.opportunity_id = opp.id and
  1378. aOpp.account_id = acc.id and
  1379. acc.id = erel.bean_id and
  1380. erel.email_address_id = ea.id and
  1381. ord.paid_final = 0 and
  1382. oppF.payterms_c = 'paylater' and
  1383. opp.sales_stage = 'Approved' and
  1384. erel.bean_module = 'Accounts' and
  1385. erel.deleted = '0' and
  1386. opporder.opportunit14d7unities_ida = opp.id
  1387. ";
  1388.  
  1389.  
  1390.  
  1391. $stmt = $pdo->prepare($query);
  1392. $stmt->execute();
  1393. $results = $stmt->fetchAll();
  1394.  
  1395. foreach ($results as $r) {
  1396.  
  1397. $subject = "Pengiriman ke " . $r['estate'] . " Tanggal " . $r['delivery_date']; // love
  1398. $jns = "pelunasan pengiriman ke " . $r['estate'] . " Tanggal " . $r['delivery_date'];
  1399. $nilai_rupiah = floatval($r['pay_final']);
  1400. $idcurrency = $r['currency_id'];
  1401. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1402. ->createQuery('a')
  1403. ->execute();
  1404.  
  1405. $ambilcurr = $idcurrency;
  1406. foreach ($currencies as $cc) {
  1407. if ($cc->getId() == $ambilcurr) {
  1408.  
  1409. $matauang = $cc->getSymbol();
  1410. }
  1411. }
  1412.  
  1413. $pesan = "Pelanggan Yth,<br>Silahkan segera melakukan transaksi pembayaran untuk " . $jns . " Sebesar <b>" . $matauang . "." . number_format($nilai_rupiah) . "</b> sebelum tanggal <b>" . $r['paylater_payment'] . "</b> untuk pemesanan <b>" . number_format($r['qty']) . "</b> Benih Unggul DxP Dami Mas dengan nomor pemesanan: <b>" . $r['pono_c'] . "</b>.<br>
  1414. <br>Pembayaran dapat ditransfer ke rekening Bank International Indonesia Cab. Thamrin, Jakarta
  1415. <b>" . $rekening . "</b> atas nama PT Dami Mas Sejahtera. Bukti transfer harap diemail ke <b>sales@damimas.com</b> .</b><br><br>
  1416. Pengaturan persentase pembayaran disesuaikan dengan aturan pasal 4 ayat 5 surat perjanjian jual beli pengadaan kecambah kelapa sawit. Dapat dilihat pada <a href='http://damimas.com/new/web/terms-and-conditions'>Terms & Conditions</a> bagian Persyaratan Prosedur Standar Pembelian Kecambah poin 2, 3, 4, 5, dan 6.<br><br>NB:<br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor 021 50338899 ext 6313 atau sales@damimas.com.<br><br>
  1417. <br>Terima kasih.<br>
  1418. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1419.  
  1420. $message = $this->getMailer()->compose();
  1421. $message->setSubject($subject);
  1422. $message->setTo($r['email_address']);
  1423. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1424. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1425. $message->setBody($pesan, 'text/html');
  1426. $this->getMailer()->send($message);
  1427.  
  1428. $status_sent .= "Email Terkirim " . $subject . " ke " . $r['email_address'] . "<br>";
  1429. //echo $pesan;
  1430. }
  1431. endif;
  1432.  
  1433. echo $status_sent;
  1434. }
  1435.  
  1436. return sfView::NONE;
  1437. }
  1438.  
  1439. /* -------------------------------------------REPORT ORDER DETAILS ---------------------------------------------------- */
  1440. /* -------------------------------------------------------------------------------------------------------------------- */
  1441.  
  1442. public function executeOrderreport(sfWebRequest $request) {
  1443. $period = $request->getParameter('period');
  1444. if (strtoupper(date('d-M-Y', strtotime('01-' . $period))) != strtoupper('01-' . $period))
  1445. echo "ERROR: Parameter Period " . $period . " wrong format. Format: MON-YYYY (e.g. MAY-2012)";
  1446.  
  1447. $cp = Doctrine::getTable('CustomParameter')
  1448. ->createQuery('a')
  1449. ->execute();
  1450.  
  1451. foreach ($cp as $c) {
  1452. if ($c->getId() == 3) {
  1453. $ntdp1 = $c->getValue();
  1454. }
  1455.  
  1456. if ($c->getId() == 4) {
  1457. $ntdp2 = $c->getValue();
  1458. }
  1459.  
  1460. if ($c->getId() == 5) {
  1461. $ntdp3 = $c->getValue(); //final payment
  1462. }
  1463. if ($c->getId() == 13) {
  1464. $doReminder = $c->getValue(); //final payment
  1465. }
  1466. }
  1467.  
  1468.  
  1469. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1470. $query = "
  1471. select acc.name acc_name, acc.account_type, accF.npwp_no_c, accF.sppkp_no_c,
  1472. concat(acc.billing_address_street, '\n', accF.billing_address_kabupaten_c, '\n', acc.billing_address_city, ' ', acc.billing_address_postalcode) addr, oppF.pono_c po, opp.sales_stage, oppF.dirapprovalletternumber_c dir_letter, con.first_name contact_name, conF.contact_type_c, con.phone_mobile, con.phone_home, opp.id opp_id, date_format(oppF.paiddate1_c,'%d-%m-%Y') paiddate1, date_format(oppF.paiddate2_c,'%d-%m-%Y') paiddate2, oppF.dp1amt_c, oppF.dp2amt_c, date_format(date_add(opp.date_closed, interval " . $ntdp1 . " day), '%d-%m-%Y') jadwal_dp1,
  1473. date_format(date_add(
  1474. (select ord.delivery_date
  1475. from opportunitis_omk_orders_c opporder,
  1476. omk_orders ord
  1477. where opporder.opportunit3b1f_orders_idb = ord.id and
  1478. opporder.opportunit14d7unities_ida = opp.id
  1479. order by ord.delivery_date ASC
  1480. limit 1), interval -" . $ntdp2 . " day),'%d-%m-%Y') jadwal_dp2, date_format(opp.date_closed,'%d-%m-%Y') date_closed from opportunities opp,
  1481. accounts acc,
  1482. contacts con,
  1483. accounts_opportunities aOpp,
  1484. accounts_contacts aCon,
  1485. opportunities_cstm oppF,
  1486. accounts_cstm accF,
  1487. contacts_cstm conF
  1488. where opp.id = oppF.id_c and
  1489. acc.id = accF.id_c and
  1490. con.id = conF.id_c and
  1491. aCon.contact_id = con.id and
  1492. aCon.account_id = acc.id and
  1493. aOpp.opportunity_id = opp.id and
  1494. aOpp.account_id = acc.id and
  1495. conF.contact_type_c = 'PenanggungJawab' and
  1496. opp.date_closed between str_to_date('01-" . $period . "', '%d-%M-%Y') and last_day(str_to_date('01-" . $period . "', '%d-%M-%Y'))
  1497. ";
  1498.  
  1499. $stmt = $pdo->prepare($query);
  1500. $stmt->execute();
  1501. $results = $stmt->fetchAll();
  1502.  
  1503. foreach ($results as $r) {
  1504. $lines = $lines . "Nama;:;" . $r['acc_name'] . ";;;;No. NPWP;:;" . $r['npwp_no_c'] . "<br/>" .
  1505. "Tipe;:;" . $r['account_type'] . ";;;;No. SPPKP;:;" . $r['sppkp_no_c'] . "<br/>" .
  1506. "<br/>" .
  1507. "Tanggal Pemesanan;:;" . $r['date_closed'] . "<br/>" .
  1508. "No PO;:" . "<br/>" .
  1509. "Status;:;" . $r['sales_stage'] . ";;;;No. Telp;:;" . $r['phone_home'] . "<br/>" .
  1510. "Surat Dir;:;;;;;No. HP;:;" . $r['phone_mobile'] . "<br/>" .
  1511. "Tanggal Surat Dir;:;;;;;Penanggung Jawab;:;" . $r['contact_name'] . "<br/>" .
  1512. "<br/><br/>" .
  1513. "Dokumen SP2BKS" . "<br/>" .
  1514. "No;;;Qty;Tanggal Berlaku" . "<br/>" .
  1515. "<br/><br/><br/><br/>" .
  1516. "No;Jadwal Pengambilan (Approved by Dir);;Jadwal Bayar;;Reschedule Pengambilan;;Realisasi Pembayaran;;;Delivery Order;;;;;Invoice" . "<br/>" .
  1517. ";;;Tanggal;Jumlah Tagihan;;;Tanggal;Jumlah Bayar;Keterangan;Tanggal;Nomor;Qty;Unit Ambil;No. SP2BKS;Nomor;Qty;Jumlah" . "<br/>" .
  1518. ";Uang Muka 1;;" . number_format($r['dp1amt_c']) . ";" . $r['jadwal_dp1'] . ";;;" . $r['paiddate1'] . "<br/>" .
  1519. ";Uang Muka 2;;" . number_format($r['dp2amt_c']) . ";" . $r['jadwal_dp2'] . ";;;" . $r['paiddate2'] . "<br/>" .
  1520. ";Tanggal;Qty;;;Tanggal;Qty;" . "<br/>";
  1521.  
  1522. $ordDetails = "
  1523. select kebun.name as estate, date_format(ord.delivery_date, '%d/%m/%Y') delivery_date, ord.qty, opp.name as opportunity_name, ord.pay_final, date_format(date_add(ord.delivery_date, interval -" . $ntdp3 . " day), '%d/%m/%Y') jadwal_final, date_format(ordF.finalpaiddate_c, '%d-%m-%Y') finalpaiddate, ordF.dono_c, date_format(date_add(ord.delivery_date, interval -" . $doReminder . " day),'%d/%m/%Y') do_date
  1524. from opportunitis_omk_orders_c opporder,
  1525. omk_orders ord,
  1526. omk_data_kebun kebun,
  1527. opportunities opp,
  1528. opportunities_cstm oppF,
  1529. omk_orders_cstm ordF
  1530. where opporder.opportunit3b1f_orders_idb = ord.id and
  1531. ord.omk_data_kebun_id_c = kebun.id and
  1532. opp.id = oppF.id_c and
  1533. ord.id = ordF.id_c and
  1534. opporder.opportunit14d7unities_ida = opp.id and
  1535. opp.id = '" . $r['opp_id'] . "' and
  1536. opp.deleted = 0
  1537. ";
  1538.  
  1539. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1540. $stmt = $pdo->prepare($ordDetails);
  1541. $stmt->execute();
  1542. $orders = $stmt->fetchAll();
  1543. $i = 1;
  1544. foreach ($orders as $o) {
  1545. $lines = $lines . $i . ";" . $o['delivery_date'] . ";" . $o['qty'] . ";" . $o['jadwal_final'] . ";" . number_format($o['pay_final']) . ";;;" . $o['finalpaiddate'] . ";;" . $o['estate'] . ";" . $o['do_date'] . ";" . $o['dono_c'] . ";" . $o['qty'] . ";" . "<br/>";
  1546.  
  1547. $i++;
  1548. }
  1549.  
  1550. $lines = $lines . "<br/><br/><br/>" .
  1551. "Ketentuan:<br/>" .
  1552. "Pembayaran 2 minggu sebelum jadwal pengambilan<br/>" .
  1553. "Transfer ke PT.Dami Mas Sejahtera BII Thamrin, Jakarta AC :2-003-044549<br/>" .
  1554. "Fax bukti transfer ke 021-3181390 (lt 28), 31990309 (lt 10)<br/>" .
  1555. "<br/><br/><br/><br/>=======================================================================<br/>";
  1556. }
  1557.  
  1558. echo $lines;
  1559.  
  1560. return sfView::NONE;
  1561. }
  1562.  
  1563. /* -------------------------------------------PAYMENT CONFIRMATION ---------------------------------------------------- */
  1564. /* -------------------------------------------------------------------------------------------------------------------- */
  1565.  
  1566. public function executePaymentconfirmation(sfWebRequest $request) {
  1567. // alamat email from custom parameter
  1568. $cp = Doctrine::getTable('CustomParameter')
  1569. ->createQuery('a')
  1570. ->execute();
  1571. foreach ($cp as $c) {
  1572. if ($c->getId() == 34) {
  1573. $alamatemail = $c->getValue();
  1574. }
  1575. }
  1576. //---------------------
  1577. //DP 1 Paid & not sent // DP1 sudah di paid dan DP1 belum di remainder
  1578. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1579. // query ok
  1580. $query = "
  1581. select opp.name as opportunity_name, ea.email_address, acc.name, opp.id
  1582. from opportunities_cstm oppF,
  1583. opportunities opp,
  1584. accounts acc,
  1585. accounts_opportunities aOpp,
  1586. email_addr_bean_rel erel,
  1587. email_addresses ea
  1588. where oppF.dp1paid_reminder_c = 0 and oppF.dp1paid_c = 1 and
  1589. opp.id = oppF.id_c and
  1590. aOpp.opportunity_id = opp.id and
  1591. aOpp.account_id = acc.id and
  1592. acc.id = erel.bean_id and
  1593. erel.email_address_id = ea.id and
  1594. opp.sales_stage = 'Approved' and
  1595. erel.bean_module = 'Accounts' and
  1596. erel.deleted = '0'
  1597. ";
  1598.  
  1599.  
  1600. $stmt = $pdo->prepare($query);
  1601. $stmt->execute();
  1602. $results = $stmt->fetchAll();
  1603.  
  1604. foreach ($results as $r) {
  1605. $jns = "Down Payment Ke-1";
  1606. $oppId = $r['id'];
  1607.  
  1608. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br><br>Terima kasih anda telah melakukan pembayaran <b>" . $jns . "</b> untuk nomor pemesanan <b>" . $r['opportunity_name'] . "</b>.
  1609. <br><br>Status pemesanan anda dapat dilihat pada akun anda di website www.damimas.com.<br>
  1610. <br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1611.  
  1612. $message = $this->getMailer()->compose();
  1613. $message->setSubject('Informasi Pembayaran DP 1');
  1614. $message->setTo($r['email_address']);
  1615. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1616. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1617. $message->setBody($pesan, 'text/html');
  1618.  
  1619. if ($this->getMailer()->send($message)) {
  1620.  
  1621. $qm = Doctrine_Query::create()
  1622. ->update('OpportunitiesCstm a')
  1623. ->set('dp1paid_reminder_c', '?', 1)
  1624. ->where('id_c = ?', $oppId)
  1625. ->execute();
  1626. }
  1627. echo $pesan;
  1628. }
  1629.  
  1630. //DP 2 Paid and not sent
  1631. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1632. // query ok
  1633. $query = "
  1634. select opp.name as opportunity_name, ea.email_address, acc.name, opp.id
  1635. from opportunities_cstm oppF,
  1636. opportunities opp,
  1637. accounts acc,
  1638. accounts_opportunities aOpp,
  1639. email_addr_bean_rel erel,
  1640. email_addresses ea
  1641. where oppF.dp2paid_reminder_c = 0 and oppF.dp2paid_c = 1 and
  1642. opp.id = oppF.id_c and
  1643. aOpp.opportunity_id = opp.id and
  1644. aOpp.account_id = acc.id and
  1645. acc.id = erel.bean_id and
  1646. erel.email_address_id = ea.id and
  1647. opp.sales_stage = 'Approved' and
  1648. erel.bean_module = 'Accounts' and
  1649. erel.deleted = '0'
  1650. ";
  1651.  
  1652. $stmt = $pdo->prepare($query);
  1653. $stmt->execute();
  1654. $results = $stmt->fetchAll();
  1655.  
  1656. foreach ($results as $r) {
  1657.  
  1658. $jns = "Down Payment Ke-2";
  1659. $oppId = $r['id'];
  1660.  
  1661. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br><br>Terima kasih anda telah melakukan pembayaran <b>" . $jns . "</b> untuk nomor pemesanan <b>" . $r['opportunity_name'] . "</b>.<br><br>Status pemesanan anda dapat dilihat pada akun anda di website www.damimas.com.<br>
  1662. <br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1663.  
  1664. $message = $this->getMailer()->compose();
  1665. $message->setSubject('Informasi Pembayaran DP 2');
  1666. $message->setTo($r['email_address']);
  1667. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1668. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1669. $message->setBody($pesan, 'text/html');
  1670.  
  1671. if ($this->getMailer()->send($message)) {
  1672.  
  1673. $qm = Doctrine_Query::create()
  1674. ->update('OpportunitiesCstm a')
  1675. ->set('dp2paid_reminder_c', '?', 1)
  1676. ->where('id_c = ?', $oppId)
  1677. ->execute();
  1678. }
  1679. }
  1680. echo $pesan;
  1681. echo "sent to " . $r['name'] . " > " . $r['email_address'] . "<br>";
  1682. echo "<hr>";
  1683.  
  1684. //DP 3 Paid and not sent
  1685. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1686. // query ok
  1687. $query = "
  1688. select opp.name as opportunity_name, ea.email_address, acc.name, opp.id
  1689. from opportunities_cstm oppF,
  1690. opportunities opp,
  1691. accounts acc,
  1692. accounts_opportunities aOpp,
  1693. email_addr_bean_rel erel,
  1694. email_addresses ea
  1695. where oppF.dp3paid_reminder_c = 0 and oppF.dp_3_paid_c = 1 and
  1696. opp.id = oppF.id_c and
  1697. aOpp.opportunity_id = opp.id and
  1698. aOpp.account_id = acc.id and
  1699. acc.id = erel.bean_id and
  1700. erel.email_address_id = ea.id and
  1701. opp.sales_stage = 'Approved' and
  1702. erel.bean_module = 'Accounts' and
  1703. erel.deleted = '0'
  1704. ";
  1705.  
  1706. $stmt = $pdo->prepare($query);
  1707. $stmt->execute();
  1708. $results = $stmt->fetchAll();
  1709.  
  1710. echo "ts";
  1711. foreach ($results as $r) {
  1712.  
  1713. $jns = "Down Payment Ke-3";
  1714. $oppId = $r['id'];
  1715.  
  1716. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br><br>Terima kasih anda telah melakukan pembayaran " . $jns . " untuk nomor pemesanan <b>" . $r['opportunity_name'] . "</b>.<br><br>
  1717. Status pemesanan anda dapat dilihat pada akun anda di website www.damimas.com.<br>
  1718. <br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br />
  1719. <span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1720.  
  1721. $message = $this->getMailer()->compose();
  1722. $message->setSubject('Informasi Pembayaran DP 3');
  1723. $message->setTo($r['email_address']);
  1724. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1725. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1726. $message->setBody($pesan, 'text/html');
  1727.  
  1728. if ($this->getMailer()->send($message)) {
  1729.  
  1730. $qm = Doctrine_Query::create()
  1731. ->update('OpportunitiesCstm a')
  1732. ->set('dp3paid_reminder_c', '?', 1)
  1733. ->where('id_c = ?', $oppId)
  1734. ->execute();
  1735. }
  1736. }
  1737. echo $pesan;
  1738. //echo "sent to ".$r['name']." > ".$r['email_address']."<br>";
  1739. echo "<hr>";
  1740.  
  1741. //NO DP PAID and not sent
  1742. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1743. // query ok
  1744. $query = "
  1745. select opp.name as opportunity_name, ea.email_address, acc.name, opp.id
  1746. from opportunities_cstm oppF,
  1747. opportunities opp,
  1748. accounts acc,
  1749. accounts_opportunities aOpp,
  1750. email_addr_bean_rel erel,
  1751. email_addresses ea
  1752. where oppF.nodp_paid_reminder_c = 0 and oppF.paylater_paid_c = 1 and
  1753. oppF.payterms_c = 'no_dp' and
  1754. opp.id = oppF.id_c and
  1755. aOpp.opportunity_id = opp.id and
  1756. aOpp.account_id = acc.id and
  1757. acc.id = erel.bean_id and
  1758. erel.email_address_id = ea.id and
  1759. opp.sales_stage = 'Approved' and
  1760. erel.bean_module = 'Accounts' and
  1761. erel.deleted = '0'
  1762. ";
  1763.  
  1764. $stmt = $pdo->prepare($query);
  1765. $stmt->execute();
  1766. $results = $stmt->fetchAll();
  1767.  
  1768. foreach ($results as $r) {
  1769. $jns = "Pay Full";
  1770. $oppId = $r['id'];
  1771.  
  1772. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br><br>Terima kasih anda telah melakukan pembayaran " . $jns . " untuk nomor pemesanan <b>" . $r['opportunity_name'] . "</b>.<br><br>
  1773. Status pemesanan anda dapat dilihat pada akun anda di website www.damimas.com.<br>
  1774. <br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br />
  1775. <span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1776.  
  1777. $message = $this->getMailer()->compose();
  1778. $message->setSubject('Informasi Pembayaran No DP');
  1779. $message->setTo($r['email_address']);
  1780. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1781. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1782. $message->setBody($pesan, 'text/html');
  1783.  
  1784. if ($this->getMailer()->send($message)) {
  1785.  
  1786. $qm = Doctrine_Query::create()
  1787. ->update('OpportunitiesCstm a')
  1788. ->set('nodp_paid_reminder_c', '?', 1)
  1789. ->where('id_c = ?', $oppId)
  1790. ->execute();
  1791. }
  1792. }
  1793. echo $pesan;
  1794. //echo "sent to ".$r['name']." > ".$r['email_address']."<br>";
  1795. echo "<hr>";
  1796.  
  1797. //Notofikasi final payment
  1798. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1799.  
  1800. $query = "
  1801. select kebun.name as estate, date_format(ord.delivery_date, '%d/%m/%Y')delivery_date,
  1802. ord.qty, opp.name as opportunity_name,ord.pay_final,
  1803. date_format(ordF.finalpaiddate_c, '%d-%m-%Y') finalpaiddate,
  1804. ordF.dono_c,opp.name as opportunity_name, ea.email_address, acc.name, ordF.id_c
  1805. from opportunitis_omk_orders_c opporder,omk_orders ord,omk_data_kebun kebun,
  1806. opportunities opp,accounts acc,accounts_opportunities aOpp,
  1807. opportunities_cstm oppF,omk_orders_cstm ordF,email_addr_bean_rel erel,
  1808. email_addresses ea
  1809. where opporder.opportunit3b1f_orders_idb = ord.id
  1810. and ord.omk_data_kebun_id_c = kebun.id and opp.id = oppF.id_c and ord.id = ordF.id_c
  1811. and opporder.opportunit14d7unities_ida = opp.id and opp.deleted = 0
  1812. and ord.paid_final = 1 and ordF.paid_final_reminder_c = 0 and opp.sales_stage = 'Approved'
  1813. and aOpp.opportunity_id = opp.id and aOpp.account_id = acc.id
  1814. and acc.id = erel.bean_id and erel.email_address_id = ea.id
  1815. and erel.bean_module = 'Accounts' and erel.deleted = '0'
  1816. ";
  1817.  
  1818. $stmt = $pdo->prepare($query);
  1819. $stmt->execute();
  1820. $results = $stmt->fetchAll();
  1821.  
  1822.  
  1823. foreach ($results as $r) {
  1824.  
  1825. $jns = "Final Payment";
  1826. $oppId = $r['id_c'];
  1827. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br><br>Terima kasih anda telah melakukan pembayaran " . $jns . " untuk nomor pemesanan <b>" . $r['opportunity_name'] . "</b>.
  1828. <br><br>Status pemesanan anda dapat dilihat pada akun anda di website www.damimas.com.<br>
  1829. <br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1830.  
  1831. $message = $this->getMailer()->compose();
  1832. $message->setSubject('Informasi Final Payment');
  1833. $message->setTo($r['email_address']);
  1834. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1835. //echo "setFrom " . var_dump($alamatemail);
  1836. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1837. $message->setBody($pesan, 'text/html');
  1838.  
  1839. if ($this->getMailer()->send($message)) {
  1840. try {
  1841. echo "tes";
  1842. $qm = Doctrine_Query::create()
  1843. ->update('OmkOrdersCstm a')
  1844. ->set('paid_final_reminder_c', '?', 1)
  1845. ->where('id_c = ?', $oppId)
  1846. ->execute();
  1847. } catch (Exception $e) {
  1848. echo "ERR " . $e->getMessage();
  1849. }
  1850. }
  1851. echo $pesan;
  1852. //echo "sent to ".$r['name']." > ".$r['email_address']."<br>";
  1853. echo "<hr>";
  1854. }
  1855.  
  1856. //Notofikasi final payment
  1857. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1858.  
  1859. $query = "
  1860. select kebun.name as estate, date_format(ord.delivery_date, '%d/%m/%Y')delivery_date,
  1861. ord.qty, opp.name as opportunity_name,ord.pay_final,
  1862. date_format(ordF.finalpaiddate_c, '%d-%m-%Y') finalpaiddate,
  1863. ordF.dono_c,opp.name as opportunity_name, ea.email_address, acc.name, oppF.id_c,ord.paid_final,count(ord.paid_final),sum(ord.paid_final)
  1864. from opportunitis_omk_orders_c opporder,omk_orders ord,omk_data_kebun kebun,
  1865. opportunities opp,accounts acc,accounts_opportunities aOpp,
  1866. opportunities_cstm oppF,omk_orders_cstm ordF,email_addr_bean_rel erel,
  1867. email_addresses ea
  1868. where opporder.opportunit3b1f_orders_idb = ord.id
  1869. and ord.omk_data_kebun_id_c = kebun.id and opp.id = oppF.id_c and ord.id = ordF.id_c
  1870. and opporder.opportunit14d7unities_ida = opp.id and opp.deleted = 0
  1871. and oppF.auto_final_payment_c = 0
  1872. and aOpp.opportunity_id = opp.id and aOpp.account_id = acc.id
  1873. and acc.id = erel.bean_id and erel.email_address_id = ea.id
  1874. and erel.bean_module = 'Accounts' and erel.deleted = '0'
  1875. and opp.sales_stage = 'Done'
  1876. group by(opp.name) HAVING count(ord.paid_final) = sum(ord.paid_final)
  1877. ";
  1878.  
  1879. $stmt = $pdo->prepare($query);
  1880. $stmt->execute();
  1881. $results = $stmt->fetchAll();
  1882.  
  1883.  
  1884. foreach ($results as $r) {
  1885.  
  1886. $jns = "Final";
  1887. $oppId_c = $r['id_c'];
  1888. $pesan = "Pelanggan Yth, <br><br><b>" . $r['name'] . "</b><br>Transaksi pembelian Benih Unggul DxP Dami Mas nomor pemesanan telah selesai.<br><br>Terima kasih telah mempercayai produk Benih Unggul DxP Dami Mas untuk hasil terbaik perkebunan kelapa sawit Anda.
  1889. <br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  1890.  
  1891. $message = $this->getMailer()->compose();
  1892. $message->setSubject('Informasi Final');
  1893. $message->setTo($r['email_address']);
  1894. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  1895. //echo "setFrom " . var_dump($alamatemail);
  1896. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  1897. $message->setBody($pesan, 'text/html');
  1898.  
  1899. if ($this->getMailer()->send($message)) {
  1900. try {
  1901. echo "tes";
  1902. $qm = Doctrine_Query::create()
  1903. ->update('OpportunitiesCstm a')
  1904. ->set('auto_final_payment_c', '?', 1)
  1905. ->where('id_c = ?', $oppId_c)
  1906. ->execute();
  1907. } catch (Exception $e) {
  1908. echo "ERR2 " . $e->getMessage();
  1909. }
  1910. }
  1911. echo $pesan;
  1912. //echo "sent to ".$r['name']." > ".$r['email_address']."<br>";
  1913. echo "<hr>";
  1914. }
  1915. return sfView::NONE;
  1916. }
  1917.  
  1918. /* -------------------------------------------PAYMENT PROBLEM --------------------------------------------------------- */
  1919. /* -------------------------------------------------------------------------------------------------------------------- */
  1920.  
  1921. public function executePaymentproblem(sfWebRequest $request) {
  1922. // get Currencies active // 18 February 2015
  1923. /* $currencies = Doctrine::getTable('Currencies')
  1924. ->createQuery('a')
  1925. ->where('a.active_on_price = ?', 'Yes')
  1926. ->andWhere('a.deleted = ?', 0)
  1927. ->fetchOne();
  1928. $matauang = $currencies->getSymbol();
  1929. */
  1930. //------------------------------
  1931.  
  1932.  
  1933. $cp = Doctrine::getTable('CustomParameter')
  1934. ->createQuery('a')
  1935. ->execute();
  1936.  
  1937. foreach ($cp as $c) {
  1938. if ($c->getId() == 29)
  1939. $dp1 = $c->getValue();
  1940. elseif ($c->getId() == 30)
  1941. $dp2 = $c->getValue();
  1942. elseif ($c->getId() == 31)
  1943. $dp3 = $c->getValue();
  1944. elseif ($c->getId() == 32)
  1945. $paylater_problem = $c->getValue();
  1946. elseif ($c->getId() == 33)
  1947. $final = $c->getValue();
  1948. elseif ($c->getId() == 16)
  1949. $reminder = $c->getValue();
  1950. elseif ($c->getId() == 34)
  1951. $alamatemail = $c->getValue();
  1952. }
  1953.  
  1954.  
  1955. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  1956. // DP1 LATE PAYMENT REMINDER
  1957. $query = "
  1958. select opp.name as opportunity_name, oppF.dp1amt_c, date_format(date_add(opp.date_closed, interval " . ($dp1 + $reminder) . " day), '%d-%m-%Y') as dp1latereminder, ea.email_address , accF.usernm_c, opp.currency_id
  1959. from opportunities opp,
  1960. accounts acc,
  1961. accounts_opportunities aOpp,
  1962. email_addr_bean_rel erel,
  1963. email_addresses ea,
  1964. opportunities_cstm oppF,
  1965. accounts_cstm accF
  1966. where opp.id = oppF.id_c and
  1967. aOpp.opportunity_id = opp.id and
  1968. aOpp.account_id = acc.id and
  1969. acc.id = erel.bean_id and
  1970. acc.id = accF.id_c and
  1971. erel.email_address_id = ea.id and
  1972. date_add(opp.date_closed, interval " . $dp1 . " day) = current_date and
  1973. oppF.dp1paid_c = 0 and
  1974. opp.sales_stage = 'Approved' and
  1975. erel.bean_module = 'Accounts' and erel.deleted = '0' and
  1976. oppF.payterms_c NOT IN ('no_dp','paylater')
  1977. ";
  1978.  
  1979.  
  1980. $stmt = $pdo->prepare($query);
  1981. $stmt->execute();
  1982. $results = $stmt->fetchAll();
  1983.  
  1984. //echo $query;
  1985.  
  1986. foreach ($results as $r) :
  1987.  
  1988. $idcurrency = $r['currency_id'];
  1989.  
  1990. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  1991. ->createQuery('a')
  1992. ->execute();
  1993.  
  1994. $ambilcurr = $idcurrency;
  1995. foreach ($currencies as $cc) {
  1996. if ($cc->getId() == $ambilcurr) {
  1997.  
  1998. $matauang = $cc->getSymbol();
  1999. }
  2000. }
  2001.  
  2002.  
  2003. $pesan = "Pelanggan Yth, <br>Username: <b>" . $r['usernm_c'] . "</b><br><br>Kami memberitahukan bahwa batas waktu pembayaran DP 1 pesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan <b>" . $r['opportunity_name'] . "</b> telah melewati batas waktu yang telah ditentukan. Silahkan segera melakukan pembayaran sebesar <b>" . $matauang . "." . number_format($r['dp1amt_c']) . "</b><br><br>Apabila anda tidak melakukan transaksi pembayaran sampai pada tanggal <b>" . $r['dp1latereminder'] . "</b> maka pemesanan anda akan dibatalkan dan atau uang yang telah dibayarkan akan hangus sesuai dengan aturan dalam surat perjanjian yang telah disetujui pasal 4 ayat 5 mengenai Prosedur Jual Beli dan Pengambilan dalam Surat Perjanjian Jual Beli tentang Pengadaan Kecambah Kelapa Sawit.<br><br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor <b>021 50338899 ext 6313</b> atau <b>sales@damimas.com.</b><br><br>Terima kasih atas kepercayaan anda.<br><br>
  2004. <img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  2005.  
  2006.  
  2007. $message = $this->getMailer()->compose();
  2008. $message->setSubject('Reminder DP1 Payment');
  2009. $message->setTo($r['email_address']);
  2010. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  2011. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2012. $message->setBody($pesan, 'text/html');
  2013.  
  2014. if ($this->getMailer()->send($message)) {
  2015. echo "Email \"Payment Problem\" DP 1 sent to " . $r['email_address'] . " <br>";
  2016. }
  2017.  
  2018.  
  2019. endforeach; //foreach late dp1 reminder
  2020. // DP2 LATE PAYMENT REMINDER
  2021. $query = "
  2022. select opp.name as opportunity_name, oppF.dp2amt_c, date_format(date_add(opp.date_closed, interval " . ($dp2 + $reminder) . " day), '%d-%m-%Y') as dp2latereminder, ea.email_address , accF.usernm_c, opp.currency_id
  2023. from opportunities opp,
  2024. accounts acc,
  2025. accounts_opportunities aOpp,
  2026. email_addr_bean_rel erel,
  2027. email_addresses ea,
  2028. opportunities_cstm oppF,
  2029. accounts_cstm accF
  2030. where opp.id = oppF.id_c and
  2031. aOpp.opportunity_id = opp.id and
  2032. aOpp.account_id = acc.id and
  2033. acc.id = erel.bean_id and
  2034. acc.id = accF.id_c and
  2035. erel.email_address_id = ea.id and
  2036. date_add(opp.date_closed, interval " . $dp2 . " day) = current_date and
  2037. oppF.dp1paid_c = 1 and
  2038. oppF.dp2paid_c = 0 and
  2039. opp.sales_stage = 'Approved' and
  2040. erel.bean_module = 'Accounts' and erel.deleted = '0' and
  2041. oppF.payterms_c NOT IN ('no_dp','paylater','dp1x')
  2042. ";
  2043.  
  2044. $stmt = $pdo->prepare($query);
  2045. $stmt->execute();
  2046. $results = $stmt->fetchAll();
  2047.  
  2048. //echo $query;
  2049.  
  2050. foreach ($results as $r) :
  2051.  
  2052. $idcurrency = $r['currency_id'];
  2053. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  2054. ->createQuery('a')
  2055. ->execute();
  2056.  
  2057. $ambilcurr = $idcurrency;
  2058. foreach ($currencies as $cc) {
  2059. if ($cc->getId() == $ambilcurr) {
  2060.  
  2061. $matauang = $cc->getSymbol();
  2062. }
  2063. }
  2064. $pesan = "Pelanggan Yth, <br>Username: <b>" . $r['usernm_c'] . "</b><br><br>
  2065. Kami memberitahukan bahwa batas waktu pembayaran DP 2 pesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan <b>" . $r['opportunity_name'] . "</b>
  2066. telah melewati batas waktu yang telah ditentukan. Silahkan segera melakukan pembayaran sebesar <b>" . $matauang . "." . number_format($r['dp2amt_c']) . "</b><br><br>
  2067. Apabila anda tidak melakukan transaksi pembayaran sampai pada tanggal <b>" . $r['dp2latereminder'] . "</b>
  2068. maka pemesanan anda akan dibatalkan dan atau uang yang telah dibayarkan akan hangus sesuai dengan aturan dalam surat perjanjian yang telah disetujui pasal 4 ayat 5 mengenai Prosedur Jual Beli dan Pengambilan dalam Surat Perjanjian Jual Beli tentang Pengadaan Kecambah Kelapa Sawit.<br><br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor 021 50338899 ext 6313 atau sales@damimas.com.<br><br>Terima kasih atas kepercayaan anda.<br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  2069.  
  2070. $message = $this->getMailer()->compose();
  2071. $message->setSubject('Reminder DP2 Payment');
  2072. $message->setTo($r['email_address']);
  2073. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  2074. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2075. $message->setBody($pesan, 'text/html');
  2076.  
  2077. if ($this->getMailer()->send($message)) {
  2078. echo "Email \"Payment Problem\" DP 2 sent to " . $r['email_address'] . " <br>";
  2079. }
  2080.  
  2081.  
  2082. endforeach;
  2083. //foreach late dp2 reminder
  2084.  
  2085. $query = "
  2086. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty, oppD.dp3amt_c, oppD.opportunity_name, date_format(date_add(ord.delivery_date, interval -" . $dp3 . " + " . $reminder . " day), '%d-%m-%Y') as dp3reminder, ea.email_address, accF.usernm_c, oppD.currency_id
  2087. from omk_orders ord,
  2088. opportunitis_omk_orders_c opporder,
  2089. omk_data_kebun kebun,
  2090. accounts acc,
  2091. accounts_cstm accF,
  2092. accounts_opportunities aOpp,
  2093. email_addr_bean_rel erel,
  2094. email_addresses ea,
  2095. (select oppF.dp3amt_c, opp.name as opportunity_name, opp.id, opp.currency_id,
  2096. (select ord.id
  2097. from opportunitis_omk_orders_c opporder,
  2098. omk_orders ord
  2099. where opporder.opportunit3b1f_orders_idb = ord.id and
  2100. opporder.opportunit14d7unities_ida = opp.id
  2101. order by ord.delivery_date ASC
  2102. limit 1) as ord_id
  2103. from opportunities opp,
  2104. opportunities_cstm oppF
  2105. where opp.id = oppF.id_c and
  2106. oppF.dp_3_paid_c = 0 and
  2107. oppF.dp1paid_c = 1 and
  2108. oppF.dp2paid_c = 1 and
  2109. oppF.payterms_c NOT IN ('no_dp','paylater','dp1x','dp2x') and
  2110. opp.sales_stage = 'Approved' and
  2111. opp.deleted = 0) oppD
  2112. where ord.id = oppD.ord_id and
  2113. opporder.opportunit3b1f_orders_idb = ord.id and
  2114. date_add(ord.delivery_date, interval -" . $dp3 . " day) = current_date and
  2115. aOpp.opportunity_id = oppD.id and
  2116. aOpp.account_id = acc.id and
  2117. acc.id = accF.id_c and
  2118. acc.id = erel.bean_id and
  2119. erel.email_address_id = ea.id and
  2120. erel.bean_module = 'Accounts' and
  2121. erel.deleted = '0' and
  2122. ord.omk_data_kebun_id_c = kebun.id
  2123. ";
  2124.  
  2125.  
  2126. $stmt = $pdo->prepare($query);
  2127. $stmt->execute();
  2128. $results = $stmt->fetchAll();
  2129.  
  2130. //echo $query;
  2131.  
  2132. foreach ($results as $r) :
  2133.  
  2134. $idcurrency = $r['currency_id'];
  2135. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  2136. ->createQuery('a')
  2137. ->execute();
  2138.  
  2139. $ambilcurr = $idcurrency;
  2140. foreach ($currencies as $cc) {
  2141. if ($cc->getId() == $ambilcurr) {
  2142.  
  2143. $matauang = $cc->getSymbol();
  2144. }
  2145. }
  2146.  
  2147.  
  2148. $pesan = "Pelanggan Yth, <br>Username: <b>" . $r['usernm_c'] . "</b><br><br>
  2149. Kami memberitahukan bahwa batas waktu pembayaran DP 3 pesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan
  2150. <b>" . $r['opportunity_name'] . "</b> telah melewati batas waktu yang telah ditentukan.
  2151. Silahkan segera melakukan pembayaran sebesar <b>" . $matauang . "." . number_format($r['dp3amt_c']) . "</b><br>
  2152. <br>Apabila anda tidak melakukan transaksi pembayaran sampai pada tanggal <b>" . $r['dp3latereminder'] . "</b>
  2153. maka pemesanan anda akan dibatalkan dan atau uang yang telah dibayarkan akan hangus sesuai dengan aturan dalam surat perjanjian yang telah disetujui pasal 4 ayat 5 mengenai Prosedur Jual Beli dan Pengambilan dalam Surat Perjanjian Jual Beli tentang Pengadaan Kecambah Kelapa Sawit.<br>
  2154. <br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor <b>021 50338899</b> ext <b>6313</b> atau <b>sales@damimas.com</b>.<br><br>Terima kasih atas kepercayaan anda.<br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  2155.  
  2156. $message = $this->getMailer()->compose();
  2157. $message->setSubject('Reminder DP3 Payment');
  2158. $message->setTo($r['email_address']);
  2159. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  2160. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2161. $message->setBody($pesan, 'text/html');
  2162.  
  2163. if ($this->getMailer()->send($message)) {
  2164. echo "Email \"Payment Problem\" DP 3 sent to " . $r['email_address'] . " <br>";
  2165. }
  2166.  
  2167.  
  2168. endforeach; //foreach late dp3 reminder
  2169. // FINAL PAY LATE PAYMENT REMINDER
  2170. $query = "
  2171. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty,ord.pay_final, opp.name as opportunity_name, date_format(date_add(ord.delivery_date, interval -" . $final . " + " . $reminder . " day), '%d-%m-%Y') as finalreminder, ea.email_address, accF.usernm_c, opp.currency_id
  2172. from opportunitis_omk_orders_c opporder,
  2173. omk_orders ord,
  2174. omk_data_kebun kebun,
  2175. opportunities opp,
  2176. accounts acc,
  2177. accounts_cstm accF,
  2178. accounts_opportunities aOpp,
  2179. email_addr_bean_rel erel,
  2180. email_addresses ea,
  2181. opportunities_cstm oppF
  2182. where opporder.opportunit3b1f_orders_idb = ord.id and
  2183. ord.omk_data_kebun_id_c = kebun.id and
  2184. date_add(ord.delivery_date, interval -" . $final . " day) = current_date and
  2185. opp.id = oppF.id_c and
  2186. acc.id = accF.id_c and
  2187. aOpp.opportunity_id = opp.id and
  2188. aOpp.account_id = acc.id and
  2189. acc.id = erel.bean_id and
  2190. erel.email_address_id = ea.id and
  2191. ord.paid_final = 0 and
  2192. opp.sales_stage = 'Approved' and
  2193. erel.bean_module = 'Accounts' and
  2194. erel.deleted = '0' and
  2195. opporder.opportunit14d7unities_ida = opp.id and
  2196. oppF.payterms_c NOT IN ('no_dp','paylater')
  2197. ";
  2198.  
  2199.  
  2200.  
  2201. $stmt = $pdo->prepare($query);
  2202. $stmt->execute();
  2203. $results = $stmt->fetchAll();
  2204.  
  2205. //echo $query;
  2206.  
  2207. foreach ($results as $r) :
  2208.  
  2209. $idcurrency = $r['currency_id'];
  2210. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  2211. ->createQuery('a')
  2212. ->execute();
  2213.  
  2214. $ambilcurr = $idcurrency;
  2215. foreach ($currencies as $cc) {
  2216. if ($cc->getId() == $ambilcurr) {
  2217.  
  2218. $matauang = $cc->getSymbol();
  2219. }
  2220. }
  2221.  
  2222.  
  2223.  
  2224. $pesan = "Pelanggan Yth, <br>Username: <b>" . $r['usernm_c'] . "</b><br><br>
  2225. Kami memberitahukan bahwa batas waktu pembayaran Final pesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan
  2226. <b>" . $r['opportunity_name'] . "</b> telah melewati batas waktu yang telah ditentukan.
  2227. Silahkan segera melakukan pembayaran sebesar <b>" . $matauang . "." . number_format($r['pay_final']) . "</b><br><br>Apabila anda tidak melakukan transaksi pembayaran sampai pada tanggal <b>" . $r['finalreminder'] . "</b> maka pemesanan anda akan dibatalkan dan atau uang yang telah dibayarkan akan hangus sesuai dengan aturan dalam surat perjanjian yang telah disetujui pasal 4 ayat 5 mengenai Prosedur Jual Beli dan Pengambilan dalam Surat Perjanjian Jual Beli tentang Pengadaan Kecambah Kelapa Sawit.<br><br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. Silahkan menghubungi Sales Officer kami pada nomor <b>021 50338899</b> ext <b>6313</b> atau <b>sales@damimas.com.</b><br><br>Terima kasih atas kepercayaan anda.<br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  2228.  
  2229. $message = $this->getMailer()->compose();
  2230. $message->setSubject('Reminder Final Payment');
  2231. $message->setTo($r['email_address']);
  2232. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  2233. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2234. $message->setBody($pesan, 'text/html');
  2235.  
  2236. if ($this->getMailer()->send($message)) {
  2237. echo "Email \"Payment Problem\" Final sent to " . $r['email_address'] . " <br>";
  2238. }
  2239.  
  2240.  
  2241. endforeach; //foreach late final pay reminder
  2242. // PAY LATER LATE PAYMENT REMINDER
  2243. $query = "
  2244. select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty,ord.pay_final, opp.name as opportunity_name, date_format(date_add(ord.delivery_date, interval " . $paylater_problem . " + " . $reminder . " day), '%d-%m-%Y') as paylater_pay, ea.email_address, accF.usernm_c, opp.amount grand_total, opp.currency_id
  2245. from opportunitis_omk_orders_c opporder,
  2246. omk_orders ord,
  2247. omk_data_kebun kebun,
  2248. opportunities opp,
  2249. accounts acc,
  2250. accounts_cstm accF,
  2251. accounts_opportunities aOpp,
  2252. email_addr_bean_rel erel,
  2253. email_addresses ea,
  2254. opportunities_cstm oppF
  2255. where opporder.opportunit3b1f_orders_idb = ord.id and
  2256. ord.omk_data_kebun_id_c = kebun.id and
  2257. date_add(ord.delivery_date, interval " . $paylater_problem . " day) = current_date and
  2258. opp.id = oppF.id_c and
  2259. acc.id = accF.id_c and
  2260. aOpp.opportunity_id = opp.id and
  2261. aOpp.account_id = acc.id and
  2262. acc.id = erel.bean_id and
  2263. erel.email_address_id = ea.id and
  2264. ord.paid_final = 0 and
  2265. oppF.payterms_c = 'paylater' and
  2266. opp.sales_stage = 'Approved' and
  2267. erel.bean_module = 'Accounts' and
  2268. erel.deleted = '0' and
  2269. opporder.opportunit14d7unities_ida = opp.id
  2270. ";
  2271.  
  2272.  
  2273. $stmt = $pdo->prepare($query);
  2274. $stmt->execute();
  2275. $results = $stmt->fetchAll();
  2276.  
  2277. //echo $query;
  2278.  
  2279. foreach ($results as $r) :
  2280.  
  2281. $idcurrency = $r['currency_id'];
  2282. $currencies = Doctrine::getTable('Currencies') // 6 Maret 2015
  2283. ->createQuery('a')
  2284. ->execute();
  2285.  
  2286. $ambilcurr = $idcurrency;
  2287. foreach ($currencies as $cc) {
  2288. if ($cc->getId() == $ambilcurr) {
  2289.  
  2290. $matauang = $cc->getSymbol();
  2291. }
  2292. }
  2293.  
  2294. $pesan = "Pelanggan Yth, <br>Username: <b>" . $r['usernm_c'] . "</b><br><br>
  2295. Kami memberitahukan bahwa batas waktu pembayaran Final pesanan Benih Unggul DxP Dami Mas dengan nomor pemesanan <b>" . $r['opportunity_name'] . "</b> telah melewati batas waktu yang telah ditentukan.
  2296. Silahkan segera melakukan pembayaran sebesar <b>" . $matauang . "." . number_format($r['pay_final']) . ".</b><br>
  2297. <br><br>Silahkan abaikan pemberitahuan ini apabila anda telah melakukan pembayaran. <br>
  2298. Silahkan menghubungi Sales Officer kami pada nomor <b>021 50338899</b> ext <b>6313</b> atau <b>sales@damimas.com</b>.<br>
  2299. <br>Terima kasih atas kepercayaan anda.<br><br><img src='http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png' /><br /><span style='color:#006600;'>Sustainable Growth and Yield with Dami Mas</span>";
  2300.  
  2301. $message = $this->getMailer()->compose();
  2302. $message->setSubject('Reminder Pay Later');
  2303. $message->setTo($r['email_address']);
  2304. $message->setCc("adm@damimas.com"); // send to admin/webmaster
  2305. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2306. $message->setBody($pesan, 'text/html');
  2307.  
  2308. if ($this->getMailer()->send($message)) {
  2309. echo "Email \"Payment Problem\" Pay Later sent to " . $r['email_address'] . " <br>";
  2310. }
  2311.  
  2312.  
  2313. endforeach; //foreach PAY LATER pay reminder
  2314.  
  2315.  
  2316. return sfView::NONE;
  2317. }
  2318.  
  2319. /* -------------------------------------------DELIVERY ORDER ---------------------------------------------------------- */
  2320. /* -------------------------------------------------------------------------------------------------------------------- */
  2321.  
  2322. public function executeDeliveryorder(sfWebRequest $request) {
  2323. // alamat email from custom parameter
  2324. $cp = Doctrine::getTable('CustomParameter')
  2325. ->createQuery('a')
  2326. ->execute();
  2327. foreach ($cp as $c) {
  2328. if ($c->getId() == 34) {
  2329. $alamatemail = $c->getValue();
  2330. }
  2331. }
  2332. //---------------------
  2333.  
  2334. $cp = Doctrine::getTable('CustomParameter')
  2335. ->createQuery('a')
  2336. ->where('a.id = ?', array(13)) // DO reminder
  2337. ->execute();
  2338.  
  2339. foreach ($cp as $c) {
  2340. $reminder = $c->getValue();
  2341. }
  2342.  
  2343. $cp = Doctrine::getTable('CustomParameter')
  2344. ->createQuery('a')
  2345. ->where('a.id = ?', array(14)) // allowance
  2346. ->execute();
  2347.  
  2348. foreach ($cp as $c) {
  2349. $defaultPercentageAllowance = $c->getValue();
  2350. }
  2351.  
  2352. $pdo = Doctrine_Manager::getInstance()->getCurrentConnection()->getDbh();
  2353. // query ok
  2354. $query = "select kebun.name as estate, date_format(ord.delivery_date, '%d-%m-%Y') delivery_date, ord.qty, opp.name as opportunity_name, ea.email_address, ceiling(ord.qty + (ord.qty * ifnull(accF.percentageallowance_c, " . $defaultPercentageAllowance . ")/100)) total, ceiling(ord.qty * ifnull(accF.percentageallowance_c, " . $defaultPercentageAllowance . ")/100) allowance, ifnull(accF.percentageallowance_c, " . $defaultPercentageAllowance . ") percent_allowance, oppF.pono_C po, ordF.dono_c dono, acc.name acc_name, date_format(ordF.finalpaiddate_c, '%d-%m-%Y') final_date, ordF.sp2bks_c sp2bks
  2355. from opportunitis_omk_orders_c opporder,
  2356. omk_orders ord,
  2357. omk_data_kebun kebun,
  2358. opportunities opp,
  2359. accounts acc,
  2360. accounts_opportunities aOpp,
  2361. email_addr_bean_rel erel,
  2362. email_addresses ea,
  2363. opportunities_cstm oppF,
  2364. accounts_cstm accF,
  2365. omk_orders_cstm ordF
  2366. where opporder.opportunit3b1f_orders_idb = ord.id and
  2367. opporder.opportunit14d7unities_ida = opp.id and
  2368. ord.omk_data_kebun_id_c = kebun.id and
  2369. date_add(ord.delivery_date, interval -" . $reminder . " day) = current_date and
  2370. opp.id = oppF.id_c and
  2371. acc.id = accF.id_c and
  2372. ord.id = ordF.id_c and
  2373. aOpp.opportunity_id = opp.id and
  2374. aOpp.account_id = acc.id and
  2375. acc.id = erel.bean_id and
  2376. erel.email_address_id = ea.id and
  2377. ((oppF.payterms_c = 'dp1x' and
  2378. oppF.dp1paid_c = 1) or
  2379. (oppF.payterms_c = 'dp2x' and
  2380. oppF.dp1paid_c = 1 and
  2381. oppF.dp2paid_c = 1) or
  2382. (oppF.payterms_c = 'dp3x' and
  2383. oppF.dp1paid_c = 1 and
  2384. oppF.dp2paid_c = 1 and
  2385. oppF.dp_3_paid_c =1) or
  2386. (oppF.payterms_c = 'paylater' and
  2387. ord.paid_final = 0) or
  2388. (oppF.payterms_c = 'no_dp' and
  2389. oppF.paylater_paid_c = 1)) and
  2390. opp.sales_stage = 'Approved' and
  2391. erel.bean_module = 'Accounts' and
  2392. erel.deleted = '0'
  2393. order by ord.delivery_date";
  2394.  
  2395.  
  2396. $stmt = $pdo->prepare($query);
  2397. $stmt->execute();
  2398. $results = $stmt->fetchAll();
  2399. $cthKarantina = 10;
  2400.  
  2401. foreach ($results as $r) :
  2402. $pesan = '
  2403. <style type="text/css">
  2404. td { padding: 2px 5px;vertical-align: top;}
  2405. </style>
  2406. <table width="100%"><tr><td width="50%" align="left"><img src="http://letterdrestaurant.com/new/web/uploads/logo-damimas-small.png" /></td><td width="50%" align="right"><img src="http://damimas.com/new/web/uploads/iso_logo.png" /></td></tr><tr><td colspan="2" style="border-top:solid 2px #000; border-bottom:solid 2px #000;"><table width="100%"><tr><td width="25%" style="font-size:10px;">Kantor Pusat:</td><td width="75%" style="font-size:10px;">Gedung BII Menara 2 Lt. 30, Jl. M.H. Thamrin Kav. 22, Jakarta 10350 Phone: 021-50338899 Fax : 021-3181323</td></tr><tr><td width="25%" style="font-size:10px;">Kantor Perwakilan:</td><td width="75%" style="font-size:10px;">Jl.Teuku Umar No.19 Kota Tinggi – PekanBaru. Riau. Indonesia. 28112. Ph.0761-32986, Fax 0761-32593</td></tr><tr><td width="25%" style="font-size:10px;">DMSE:</td><td width="75%" style="font-size:10px;">Dami Mas Seed Estate, Desa Beringin Lestari Kecamatan Tapung Kabupaten Kampar-Riau.</td></tr></table></td></tr><tr><td colspan="2" align="center" style="font-size:16px; font-weight:bold;">DELIVERY ORDER</td></tr><tr><td>
  2407. <table width="100%" cellspacing="0">
  2408. <tr>
  2409. <td>Kepada</td>
  2410. <td>' . $r['acc_name'] . '</td>
  2411. </tr>
  2412. <tr>
  2413. <td>PO No.</td>
  2414. <td>' . $r['po'] . '</td>
  2415. </tr>
  2416. <tr>
  2417. <td>No SP2BKS</td>
  2418. <td>' . $r['sp2bks'] . '</td>
  2419. </tr>
  2420. </table>
  2421. </td>
  2422. <td>
  2423. <table width="100%">
  2424. <tr>
  2425. <td>DO No.</td>
  2426. <td>' . $r['dono'] . '</td>
  2427. </tr>
  2428. <tr>
  2429. <td>Tanggal</td>
  2430. <td>' . $r['delivery_date'] . '</td>
  2431. </tr>
  2432. <tr>
  2433. <td></td>
  2434. <td></td>
  2435. </tr>
  2436. </table>
  2437. </td>
  2438. </tr>
  2439. <tr>
  2440. <td colspan="2" align="center" style="font-weight:bold;font-style:uppercase"><u>SALE OF ' . number_format($r['qty']) . ' GERMINATED OIL PALM SEEDS TO ' . $r['acc_name'] . '</u><br>PENJUALAN ' . number_format($r['qty']) . ' KECAMBAH KELAPA SAWIT KE ' . $r['acc_name'] . '</td>
  2441. </tr>
  2442. <tr>
  2443. <td>Harap segera diambil ' . number_format($r['total']) . ' kecambah ditambah dengan ' . $cthKarantina . ' untuk contoh Karantina (Total = ' . number_format($r['total'] + $cthKarantina) . ' sebagaimana yang dipesan dari SPS PT Dami Mas Sejahtera, Pekan Baru</td>
  2444. <td>Please collect ' . number_format($r['total']) . ' germinated oil palms seeds and a sample of ' . $cthKarantina . ' seeds for Karantina (total = ' . number_format($r['total'] + $cthKarantina) . ' ) as your order from SPS PT Dami Mas Sejahtera, Pekan Baru</td>
  2445. </tr>
  2446. <tr>
  2447. <td>
  2448. <table>
  2449. <tr>
  2450. <td>Date of delivery:</td>
  2451. <td>' . $r['delivery_date'] . '</td>
  2452. </tr>
  2453. <tr>
  2454. <td>Quantity</td>
  2455. <td>' . number_format($r['qty']) . '</td>
  2456. </tr>
  2457. <tr>
  2458. <td></td>
  2459. <td>(+' . number_format($r['allowance']) . ' seeds allowance + ' . $cthKarantina . ' seeds sample for Karantina)</td>
  2460. </tr>
  2461. </table>
  2462. </td>
  2463. <td>
  2464. <table>
  2465. <tr>
  2466. <td>Payment Date</td>
  2467. <td>' . $r['final_date'] . '</td>
  2468. </tr>
  2469. <tr>
  2470. <td></td>
  2471. <td></td>
  2472. </tr>
  2473. </table>
  2474. </td>
  2475. </tr>
  2476. <tr>
  2477. <td colspan="2">To be collected (' . $r['delivery_date'] . ') ' . number_format($r['total'] + $cthKarantina) . ' seeds (including ' . number_format($r['allowance']) . ' free allowance and ' . $cthKarantina . ' seeds sample for Karantina)
  2478. </td>
  2479. </tr>
  2480. <tr>
  2481. <td style="text-align:justify;">' . $r['acc_name'] . ' mengirim wakilnya dengan membawa surat kuasa, untuk mengecek kondisi benih sebelum serah terima di SPS PT Dami Mas Sejahtera. <br><br>
  2482. Sebanyak ' . $r['percent_allowance'] . '% kecambah diberikan secara extra, gratis untuk mengganti bila ada kerusakan / kehilangan.
  2483. Maksud Loco kebun DMSE, pembeli menyediakan transportasi sendiri. Dengan menunjukkan "<b>Delivery Order</b>" ini oleh pembeli, sudah cukup bagi SPS untuk mengeluarkan benih tersebut.</td>
  2484. <td style="text-align:justify;">Representative from ' . $r['acc_name'] . ' with letter of attorney, expected to check the condition of the seeds at SPS PT Dami Mas Sejahtera before acceptance of the seeds.<br><br>A ' . $r['percent_allowance'] . '% free allowance is provided to offset any minor losses. The term of <b>Loco Estate DMSE</b> means that the buyer should provide his own transport. Presentation of the buyers "<b>Delivery Order</b>" will be sufficient authorization for SPS to deliver the consignment.
  2485. </td>
  2486. </tr>
  2487. <tr>
  2488. <td><br><br>Approved:</td>
  2489. <td>&nbsp;</td>
  2490. </tr>
  2491. <tr>
  2492. <td>Tony Liwang<br>Direktur</td>
  2493. <td>Seed Sales Officer</td>
  2494. </tr>
  2495. <tr>
  2496. <td colspan="2"><br><br>CC:
  2497. <ul>
  2498. <li>Manager DMSE</li>
  2499. <li>Accounts (Adm) section - Jakarta</li>
  2500. <li>BP2MB Pekan Baru</li>
  2501. <li>SPS/File</li>
  2502. </ul>
  2503. </td>
  2504. </tr>
  2505. </table>';
  2506.  
  2507. $message = $this->getMailer()->compose();
  2508. $message->setSubject("Delivery Order #" . $r['dono']);
  2509. $message->setTo($r['email_address']);
  2510. //$message->setCc("sales@damimas.com");
  2511. //$message->addCc("adm@damimas.com"); // send to admin/webmaster
  2512. //$message->addCc("tony-liwang@damimas.com");
  2513. //$message->addCc("hairinsyah@damimas.com");
  2514. //$message->addCc("corry-k-neryceka@damimas.com");
  2515. ///$message->setBcc("sales@damimas.com"); // send to admin/webmaster
  2516.  
  2517. $message->setCc(array(
  2518. 'sales@damimas.com')); /* ,
  2519. 'adm@damimas.com',
  2520. 'tony-liwang@damimas.com',
  2521. 'hairinsyah@damimas.com',
  2522. 'chen_toshiya@yahoo.com',
  2523. 'ckkorita@gmail.com',
  2524. 'corry-k-neryceka@damimas.com')); */
  2525.  
  2526. $message->setFrom(array($alamatemail => "PT Dami Mas Sejahtera"));
  2527. $message->setBody($pesan, 'text/html');
  2528.  
  2529. if ($this->getMailer()->send($message)) {
  2530. echo "Email Delivery Order sent to " . $r['email_address'] . " <br>";
  2531. }
  2532. echo $pesan;
  2533. endforeach;
  2534.  
  2535. return sfView::NONE;
  2536. }
  2537.  
  2538. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement