Dashboard sipadu mbip
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

CalculationReportFaulty.php 20KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582
  1. <?php
  2. namespace App\Http\Controllers\Api\Export;
  3. use Illuminate\Http\Request;
  4. use App\Http\Controllers\Api\BaseController;
  5. use Carbon\Carbon;
  6. use App\Model\Module\Compound;
  7. use App\Model\Module\Faulty;
  8. use App\Model\Module\ReportFaulty;
  9. use App\Model\Staff;
  10. use App\Model\StaffDetail;
  11. use App\Model\Module\Department;
  12. class CalculationReportFaulty extends BaseController
  13. {
  14. private function jumlah_kesalahan_bulanan($start_date, $end_date, $month, $jabatan, $faulty_id){
  15. $dateS = Carbon::createFromFormat('Y-m-d', $start_date);
  16. $start = $dateS->copy()->startOfDay();
  17. $dateE = Carbon::createFromFormat('Y-m-d', $end_date);
  18. $end = $dateE->copy()->endOfDay();
  19. $jumlah_kompaun = 0; $amaun_kompaun = 0;
  20. $jumlah_byr = 0; $amaun_byr = 0;
  21. $jum_kompaun_belum_byr = 0; $amaun_tunggakan = 0;
  22. $kompaun_batal = 0; $amaun_batal = 0;
  23. $kompaun_kurang = 0; $amaun_kurang = 0;
  24. $compound = Compound::whereBetween('created_at', array($start, $end))->where('jbkod', $jabatan)->where('seksyen_kesalahan', $faulty_id)->get();
  25. foreach ($compound as $key => $c) {
  26. if(date('m', strtotime($c->created_at)) == $month){
  27. $jumlah_kompaun = $jumlah_kompaun + 1;
  28. $amaun_kompaun = $amaun_kompaun + floatval($c->jumlah_asal_kompaun);
  29. $amaun_tunggakan = $amaun_tunggakan + floatval($c->amount_tunggakan);
  30. if($c->status == 'Berbayar'){
  31. $jumlah_byr = $jumlah_byr + 1;
  32. $amaun_byr = $amaun_byr + floatval($c->amount_payment);
  33. }
  34. if($c->status == 'Belum Bayar'){
  35. $jum_kompaun_belum_byr = $jum_kompaun_belum_byr + 1;
  36. }
  37. if($c->status == 'Batal'){
  38. $kompaun_batal = $kompaun_batal + 1;
  39. $amaun_batal = $amaun_batal + floatval($c->jumlah_asal_kompaun);
  40. }
  41. if($c->jumlah_kemaskini_kompaun != ''){
  42. $kompaun_kurang = $kompaun_kurang + 1;
  43. $amaun_kurang = $amaun_kurang + floatval($c->jumlah_kemaskini_kompaun);
  44. }
  45. }
  46. }
  47. $result = array(
  48. 'jum_kompaun_keluar' => $jumlah_kompaun,
  49. 'amaun_kompaun' => $amaun_kompaun,
  50. 'jumlah_byr' => $jumlah_byr,
  51. 'amaun_byr' => $amaun_byr,
  52. 'jum_kompaun_belum_byr' => $jum_kompaun_belum_byr,
  53. 'amaun_tunggakan' => $amaun_tunggakan,
  54. 'kompaun_batal' => $kompaun_batal,
  55. 'amaun_batal' => $amaun_batal,
  56. 'kompaun_kurang' => $kompaun_kurang,
  57. 'amaun_kurang' => $amaun_kurang,
  58. );
  59. return json_encode($result);
  60. }
  61. public function masukkan_report($start_date, $end_date, $jabatan, $month){
  62. $dateS = Carbon::createFromFormat('Y-m-d', $start_date);
  63. $start = $dateS->copy()->startOfDay();
  64. $dateE = Carbon::createFromFormat('Y-m-d', $end_date);
  65. $end = $dateE->copy()->endOfDay();
  66. $compound = Compound::where('jbkod', $jabatan)->whereBetween('created_at', array($start, $end))->groupBy('seksyen_kesalahan')->get(['created_at','jbkod']);
  67. if($month == 'All'){
  68. foreach ($compound as $key => $c) {
  69. $f = Faulty::find($c->seksyen_kesalahan);
  70. $report = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', date('m',strtotime($c->created_at)))->where('faulty_id', $f->_id)->where('jbkod', $jabatan)->first();
  71. if(empty($report)){
  72. $dataN = new ReportFaulty;
  73. $dataN->start_date = $start_date;
  74. $dataN->end_date = $end_date;
  75. $dataN->month = date('m',strtotime($c->created_at));
  76. $dataN->jbkod = $jabatan;
  77. $dataN->jumlah_kompaun_keluar = '';
  78. $dataN->amaun_kompaun_rm = '';
  79. $dataN->jumlah_bayar = '';
  80. $dataN->amaun_bayar_rm = '';
  81. $dataN->jumlah_kompaun_belum_bayar = '';
  82. $dataN->amaun_tunggakan_rm = '';
  83. $dataN->kompaun_batal = '';
  84. $dataN->amaun_batal_rm = '';
  85. $dataN->kompaun_kurang = '';
  86. $dataN->amaun_kurang_rm = '';
  87. $dataN->faulty_id = $c->seksyen_kesalahan;
  88. $dataN->sketr = $f->sketr;
  89. $dataN->save();
  90. }
  91. $reportTahun = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', 'All')->where('faulty_id', $f->_id)->where('jbkod', $jabatan)->first();
  92. if(empty($reportTahun)){
  93. $dataNt = new ReportFaulty;
  94. $dataNt->start_date = $start_date;
  95. $dataNt->end_date = $end_date;
  96. $dataNt->month = 'All';
  97. $dataNt->jbkod = $jabatan;
  98. $dataNt->jumlah_kompaun_keluar = '';
  99. $dataNt->amaun_kompaun_rm = '';
  100. $dataNt->jumlah_bayar = '';
  101. $dataNt->amaun_bayar_rm = '';
  102. $dataNt->jumlah_kompaun_belum_bayar = '';
  103. $dataNt->amaun_tunggakan_rm = '';
  104. $dataNt->kompaun_batal = '';
  105. $dataNt->amaun_batal_rm = '';
  106. $dataNt->kompaun_kurang = '';
  107. $dataNt->amaun_kurang_rm = '';
  108. $dataNt->faulty_id = $c->seksyen_kesalahan;
  109. $dataNt->sketr = $f->sketr;
  110. $dataNt->save();
  111. }
  112. }
  113. return 'true';
  114. }
  115. }
  116. public function report_faulty($start_date, $end_date, $jabatan, $month){
  117. $masukkan_report = $this->masukkan_report($start_date, $end_date, $jabatan, $month);
  118. if($masukkan_report){
  119. $dateS = Carbon::createFromFormat('Y-m-d', $start_date);
  120. $start = $dateS->copy()->startOfDay();
  121. $dateE = Carbon::createFromFormat('Y-m-d', $end_date);
  122. $end = $dateE->copy()->endOfDay();
  123. $compound = Compound::where('jbkod', $jabatan)->whereBetween('created_at', array($start, $end))->groupBy('seksyen_kesalahan')->get(['created_at','jbkod']);
  124. foreach ($compound as $key => $c) {
  125. $f = Faulty::find($c->seksyen_kesalahan);
  126. $months = date('m',strtotime($c->created_at));
  127. $report = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month',$months)->where('faulty_id', $f->_id)->where('jbkod', $jabatan)->first();
  128. if(!empty($report)){
  129. $data_bulan = json_decode($this->jumlah_kesalahan_bulanan($start_date, $end_date, $months, $jabatan, $c->seksyen_kesalahan));
  130. $report->jumlah_kompaun_keluar = $data_bulan->jum_kompaun_keluar;
  131. $report->amaun_kompaun_rm = $data_bulan->amaun_kompaun;
  132. $report->jumlah_bayar = $data_bulan->jumlah_byr;
  133. $report->amaun_bayar_rm = $data_bulan->amaun_byr;
  134. $report->jumlah_kompaun_belum_bayar = $data_bulan->jum_kompaun_belum_byr;
  135. $report->amaun_tunggakan_rm = $data_bulan->amaun_tunggakan;
  136. $report->kompaun_batal = $data_bulan->kompaun_batal;
  137. $report->amaun_batal_rm = $data_bulan->amaun_batal;
  138. $report->kompaun_kurang = $data_bulan->kompaun_kurang;
  139. $report->amaun_kurang_rm = $data_bulan->amaun_kurang;
  140. $report->save();
  141. }
  142. }
  143. return true;
  144. }
  145. }
  146. public function report_faulty_all($start_date, $end_date, $jabatan, $month){
  147. $dateS = Carbon::createFromFormat('Y-m-d', $start_date);
  148. $start = $dateS->copy()->startOfDay();
  149. $dateE = Carbon::createFromFormat('Y-m-d', $end_date);
  150. $end = $dateE->copy()->endOfDay();
  151. $compound = Compound::where('jbkod', $jabatan)->whereBetween('created_at', array($start, $end))->groupBy('seksyen_kesalahan')->get(['created_at','jbkod']);
  152. foreach ($compound as $key => $c) {
  153. $report = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', '!=', 'All')->where('faulty_id', $c->seksyen_kesalahan)->where('jbkod', $jabatan)->get();
  154. if(count($report) > 0){
  155. foreach ($report as $key => $r) {
  156. $jum_kompaun_keluar = 0; $amaun_kompaun = 0; $jumlah_byr = 0; $amaun_byr = 0;
  157. $jum_kompaun_belum_byr = 0; $amaun_tunggakan = 0; $kompaun_batal = 0; $amaun_batal = 0;
  158. $kompaun_kurang = 0 ; $amaun_kurang = 0;
  159. if ($r->amaun_kompaun_rm == ""){
  160. $temp_amount_rm = 0;
  161. }else {
  162. $temp_amount_rm = $r->amaun_kompaun_rm;
  163. }
  164. if ($r->jumlah_kompaun_keluar == ""){
  165. $temp_kompaun_keluar = 0;
  166. }else {
  167. $temp_kompaun_keluar = $r->jumlah_kompaun_keluar;
  168. }
  169. if ($r->jumlah_bayar == ""){
  170. $temp_jumlah_bayar = 0;
  171. }else {
  172. $temp_jumlah_bayar = $r->jumlah_bayar;
  173. }
  174. if ($r->amaun_bayar_rm == ""){
  175. $temp_amaun_bayar = 0;
  176. }else {
  177. $temp_amaun_bayar = $r->amaun_bayar_rm;
  178. }
  179. if ($r->jumlah_kompaun_belum_bayar == ""){
  180. $temp_kompaun_belum_bayar = 0;
  181. }else {
  182. $temp_kompaun_belum_bayar = $r->jumlah_kompaun_belum_bayar;
  183. }
  184. if ($r->amaun_tunggakan_rm == ""){
  185. $temp_tunggakan = 0;
  186. }else {
  187. $temp_tunggakan = $r->amaun_tunggakan_rm;
  188. }
  189. if ($r->kompaun_batal == ""){
  190. $temp_kompaun_batal = 0;
  191. }else {
  192. $temp_kompaun_batal = $r->kompaun_batal;
  193. }
  194. if ($r->amaun_batal_rm == ""){
  195. $temp_amaun_batal = 0;
  196. }else {
  197. $temp_amaun_batal = $r->amaun_batal_rm;
  198. }
  199. if ($r->kompaun_kurang == ""){
  200. $temp_kompaun_kurang = 0;
  201. }else {
  202. $temp_kompaun_kurang = $r->kompaun_kurang;
  203. }
  204. if ($r->amaun_kurang_rm == ""){
  205. $temp_amaun_kurang = 0;
  206. }else {
  207. $temp_amaun_kurang = $r->amaun_kurang_rm;
  208. }
  209. $jum_kompaun_keluar = $jum_kompaun_keluar + $temp_kompaun_keluar;
  210. $amaun_kompaun = $amaun_kompaun + $temp_amount_rm;
  211. $jumlah_byr = $jumlah_byr + $temp_jumlah_bayar;
  212. $amaun_byr = $amaun_byr + $temp_amaun_bayar;
  213. $jum_kompaun_belum_byr = $jum_kompaun_belum_byr + $temp_kompaun_belum_bayar;
  214. $amaun_tunggakan = $amaun_tunggakan + $temp_tunggakan;
  215. $kompaun_batal = $kompaun_batal + $temp_kompaun_batal;
  216. $amaun_batal = $amaun_batal + $temp_amaun_batal;
  217. $kompaun_kurang = $kompaun_kurang + $temp_kompaun_kurang;
  218. $amaun_kurang = $amaun_kurang + $temp_amaun_kurang;
  219. }
  220. }
  221. $reportTahun = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month','All')->where('faulty_id', $c->seksyen_kesalahan)->where('jbkod', $jabatan)->first();
  222. if(!empty($reportTahun)){
  223. $months = date('m',strtotime($c->created_at));
  224. $data_bulan = json_decode($this->jumlah_kesalahan_bulanan($start_date, $end_date, $months, $jabatan, $c->seksyen_kesalahan));
  225. $reportTahun->jumlah_kompaun_keluar = $jum_kompaun_keluar;
  226. $reportTahun->amaun_kompaun_rm = $amaun_kompaun;
  227. $reportTahun->jumlah_bayar = $jumlah_byr;
  228. $reportTahun->amaun_bayar_rm = $amaun_byr;
  229. $reportTahun->jumlah_kompaun_belum_bayar = $jum_kompaun_belum_byr;
  230. $reportTahun->amaun_tunggakan_rm = $amaun_tunggakan;
  231. $reportTahun->kompaun_batal = $kompaun_batal;
  232. $reportTahun->amaun_batal_rm = $amaun_batal;
  233. $reportTahun->kompaun_kurang = $kompaun_kurang;
  234. $reportTahun->amaun_kurang_rm = $amaun_kurang;
  235. $reportTahun->save();
  236. }
  237. }
  238. return true;
  239. }
  240. private function runCalculation($start_date, $end_date, $jabatan, $month){
  241. $dataFaulty = $this->report_faulty($start_date, $end_date, $jabatan, $month);
  242. if($dataFaulty){
  243. $dataFYear = $this->report_faulty_all($start_date, $end_date, $jabatan, $month);
  244. }
  245. return true;
  246. }
  247. public function returnReportFaulty(Request $request){
  248. $nested_data = array();
  249. $start_date = $request->start_date;
  250. $end_date = $request->end_date;
  251. $month = $request->month;
  252. $jabatan = $request->jabatan;
  253. if($start_date != '' && $end_date != '' && $jabatan != 'null'){
  254. $dataFYear = $this->runCalculation($start_date, $end_date, $jabatan, 'All');
  255. if($dataFYear){
  256. if($month == 'All'){
  257. $data_sketr = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', 'All')->where('jbkod', $jabatan)->groupBy('sketr')->get();
  258. if(count($data_sketr) > 0){
  259. foreach ($data_sketr as $key => $d) {
  260. $jumlah_kompaun_keluar = 0; $amaun_kompaun_rm = 0;
  261. $jumlah_bayar = 0; $amaun_bayar_rm = 0;
  262. $jumlah_kompaun_belum_bayar = 0; $amaun_tunggakan_rm = 0;
  263. $kompaun_batal = 0; $amaun_batal_rm = 0;
  264. $kompaun_kurang = 0; $amaun_kurang_rm = 0;
  265. $name = '';
  266. $ft = Faulty::where('sketr', $d->sketr)->first();
  267. if(strpos($ft->nama, '(RM500)') !== false){
  268. $name = str_replace("(RM500)","",$ft->nama);
  269. }else if(strpos($ft->nama, '(RM100)') !== false){
  270. $name = str_replace("(RM100)","",$ft->nama);
  271. }else if(strpos($ft->nama, '(RM50)') !== false){
  272. $name = str_replace("(RM50)","",$ft->nama);
  273. }else if(strpos($ft->nama, '(RM250)') !== false){
  274. $name = str_replace("(RM250)","",$ft->nama);
  275. }else {
  276. $name = $ft->nama;
  277. }
  278. $data_report = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', 'All')->where('jbkod', $jabatan)->where('sketr', $d->sketr)->get();
  279. if(count($data_report) > 0){
  280. foreach ($data_report as $key => $r) {
  281. if ($r->amaun_kompaun_rm == ""){
  282. $temp_amount_rm = 0;
  283. }else {
  284. $temp_amount_rm = $r->amaun_kompaun_rm;
  285. }
  286. if ($r->jumlah_kompaun_keluar == ""){
  287. $temp_kompaun_keluar = 0;
  288. }else {
  289. $temp_kompaun_keluar = $r->jumlah_kompaun_keluar;
  290. }
  291. if ($r->jumlah_bayar == ""){
  292. $temp_jumlah_bayar = 0;
  293. }else {
  294. $temp_jumlah_bayar = $r->jumlah_bayar;
  295. }
  296. if ($r->amaun_bayar_rm == ""){
  297. $temp_amaun_bayar = 0;
  298. }else {
  299. $temp_amaun_bayar = $r->amaun_bayar_rm;
  300. }
  301. if ($r->jumlah_kompaun_belum_bayar == ""){
  302. $temp_kompaun_belum_bayar = 0;
  303. }else {
  304. $temp_kompaun_belum_bayar = $r->jumlah_kompaun_belum_bayar;
  305. }
  306. if ($r->amaun_tunggakan_rm == ""){
  307. $temp_tunggakan = 0;
  308. }else {
  309. $temp_tunggakan = $r->amaun_tunggakan_rm;
  310. }
  311. if ($r->kompaun_batal == ""){
  312. $temp_kompaun_batal = 0;
  313. }else {
  314. $temp_kompaun_batal = $r->kompaun_batal;
  315. }
  316. if ($r->amaun_batal_rm == ""){
  317. $temp_amaun_batal = 0;
  318. }else {
  319. $temp_amaun_batal = $r->amaun_batal_rm;
  320. }
  321. if ($r->kompaun_kurang == ""){
  322. $temp_kompaun_kurang = 0;
  323. }else {
  324. $temp_kompaun_kurang = $r->kompaun_kurang;
  325. }
  326. if ($r->amaun_kurang_rm == ""){
  327. $temp_amaun_kurang = 0;
  328. }else {
  329. $temp_amaun_kurang = $r->amaun_kurang_rm;
  330. }
  331. $jumlah_kompaun_keluar = $jumlah_kompaun_keluar + $temp_kompaun_keluar;
  332. $amaun_kompaun_rm = $amaun_kompaun_rm + $temp_amount_rm;
  333. $jumlah_bayar = $jumlah_bayar + $temp_jumlah_bayar;
  334. $amaun_bayar_rm = $amaun_bayar_rm + $temp_amaun_bayar;
  335. $jumlah_kompaun_belum_bayar = $jumlah_kompaun_belum_bayar + $temp_kompaun_belum_bayar;
  336. $amaun_tunggakan_rm = $amaun_tunggakan_rm + $temp_tunggakan;
  337. $kompaun_batal = $kompaun_batal + $temp_kompaun_batal;
  338. $amaun_batal_rm = $amaun_batal_rm + $temp_amaun_batal;
  339. $kompaun_kurang = $kompaun_kurang + $temp_kompaun_kurang;
  340. $amaun_kurang_rm = $amaun_kurang_rm + $temp_amaun_kurang;
  341. }
  342. }
  343. array_push($nested_data, array(
  344. 'index' => '',
  345. 'sketr' => $d->sketr,
  346. 'name' => $name.' - '.$ft->sketr,
  347. 'jum_kompaun_keluar' => $jumlah_kompaun_keluar,
  348. 'amaun_kompaun' => $amaun_kompaun_rm,
  349. 'jumlah_byr' => $jumlah_bayar,
  350. 'amaun_byr' => $amaun_bayar_rm,
  351. 'jum_kompaun_belum_byr' => $jumlah_kompaun_belum_bayar,
  352. 'amaun_tunggakan' => $amaun_tunggakan_rm,
  353. 'kompaun_batal' => $kompaun_batal,
  354. 'amaun_batal' => $amaun_batal_rm,
  355. 'kompaun_kurang' => $kompaun_kurang,
  356. 'amaun_kurang' => $amaun_kurang_rm,
  357. ));
  358. }
  359. }
  360. }else {
  361. // Calculate by sketr
  362. $data_sketr = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', $month)->where('jbkod', $jabatan)->groupBy('sketr')->get();
  363. if(count($data_sketr) > 0){
  364. foreach ($data_sketr as $key => $d) {
  365. $jumlah_kompaun_keluar = 0; $amaun_kompaun_rm = 0;
  366. $jumlah_bayar = 0; $amaun_bayar_rm = 0;
  367. $jumlah_kompaun_belum_bayar = 0; $amaun_tunggakan_rm = 0;
  368. $kompaun_batal = 0; $amaun_batal_rm = 0;
  369. $kompaun_kurang = 0; $amaun_kurang_rm = 0;
  370. $name = '';
  371. $ft = Faulty::where('sketr', $d->sketr)->first();
  372. if(strpos($ft->nama, '(RM500)') !== false){
  373. $name = str_replace("(RM500)","",$ft->nama);
  374. }else if(strpos($ft->nama, '(RM100)') !== false){
  375. $name = str_replace("(RM100)","",$ft->nama);
  376. }else if(strpos($ft->nama, '(RM50)') !== false){
  377. $name = str_replace("(RM50)","",$ft->nama);
  378. }else if(strpos($ft->nama, '(RM250)') !== false){
  379. $name = str_replace("(RM250)","",$ft->nama);
  380. }else {
  381. $name = $ft->nama;
  382. }
  383. $data_report = ReportFaulty::where('start_date', $start_date)->where('end_date', $end_date)->where('month', $month)->where('jbkod', $jabatan)->where('sketr', $d->sketr)->get();
  384. if(count($data_report) > 0){
  385. foreach ($data_report as $key => $r) {
  386. if ($r->amaun_kompaun_rm == ""){
  387. $temp_amount_rm = 0;
  388. }else {
  389. $temp_amount_rm = $r->amaun_kompaun_rm;
  390. }
  391. if ($r->jumlah_kompaun_keluar == ""){
  392. $temp_kompaun_keluar = 0;
  393. }else {
  394. $temp_kompaun_keluar = $r->jumlah_kompaun_keluar;
  395. }
  396. if ($r->jumlah_bayar == ""){
  397. $temp_jumlah_bayar = 0;
  398. }else {
  399. $temp_jumlah_bayar = $r->jumlah_bayar;
  400. }
  401. if ($r->amaun_bayar_rm == ""){
  402. $temp_amaun_bayar = 0;
  403. }else {
  404. $temp_amaun_bayar = $r->amaun_bayar_rm;
  405. }
  406. if ($r->jumlah_kompaun_belum_bayar == ""){
  407. $temp_kompaun_belum_bayar = 0;
  408. }else {
  409. $temp_kompaun_belum_bayar = $r->jumlah_kompaun_belum_bayar;
  410. }
  411. if ($r->amaun_tunggakan_rm == ""){
  412. $temp_tunggakan = 0;
  413. }else {
  414. $temp_tunggakan = $r->amaun_tunggakan_rm;
  415. }
  416. if ($r->kompaun_batal == ""){
  417. $temp_kompaun_batal = 0;
  418. }else {
  419. $temp_kompaun_batal = $r->kompaun_batal;
  420. }
  421. if ($r->amaun_batal_rm == ""){
  422. $temp_amaun_batal = 0;
  423. }else {
  424. $temp_amaun_batal = $r->amaun_batal_rm;
  425. }
  426. if ($r->kompaun_kurang == ""){
  427. $temp_kompaun_kurang = 0;
  428. }else {
  429. $temp_kompaun_kurang = $r->kompaun_kurang;
  430. }
  431. if ($r->amaun_kurang_rm == ""){
  432. $temp_amaun_kurang = 0;
  433. }else {
  434. $temp_amaun_kurang = $r->amaun_kurang_rm;
  435. }
  436. $jumlah_kompaun_keluar = $jumlah_kompaun_keluar + $temp_kompaun_keluar;
  437. $amaun_kompaun_rm = $amaun_kompaun_rm + $temp_amount_rm;
  438. $jumlah_bayar = $jumlah_bayar + $temp_jumlah_bayar;
  439. $amaun_bayar_rm = $amaun_bayar_rm + $temp_amaun_bayar;
  440. $jumlah_kompaun_belum_bayar = $jumlah_kompaun_belum_bayar + $temp_kompaun_belum_bayar;
  441. $amaun_tunggakan_rm = $amaun_tunggakan_rm + $temp_tunggakan;
  442. $kompaun_batal = $kompaun_batal + $temp_kompaun_batal;
  443. $amaun_batal_rm = $amaun_batal_rm + $temp_amaun_batal;
  444. $kompaun_kurang = $kompaun_kurang + $temp_kompaun_kurang;
  445. $amaun_kurang_rm = $amaun_kurang_rm + $temp_amaun_kurang;
  446. }
  447. }
  448. array_push($nested_data, array(
  449. 'index' => '',
  450. 'sketr' => $d->sketr,
  451. 'name' => $name.' - '.$ft->sketr,
  452. 'jum_kompaun_keluar' => $jumlah_kompaun_keluar,
  453. 'amaun_kompaun' => $amaun_kompaun_rm,
  454. 'jumlah_byr' => $jumlah_bayar,
  455. 'amaun_byr' => $amaun_bayar_rm,
  456. 'jum_kompaun_belum_byr' => $jumlah_kompaun_belum_bayar,
  457. 'amaun_tunggakan' => $amaun_tunggakan_rm,
  458. 'kompaun_batal' => $kompaun_batal,
  459. 'amaun_batal' => $amaun_batal_rm,
  460. 'kompaun_kurang' => $kompaun_kurang,
  461. 'amaun_kurang' => $amaun_kurang_rm,
  462. ));
  463. }
  464. }
  465. }
  466. }
  467. }
  468. return \DataTables::of($nested_data)->make(true);
  469. }
  470. }