Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 9.73 KB | None | 0 0
  1. <?php include ('header.php');?>
  2. <?php
  3. include ('../../db/db_connect.php');
  4.  
  5. $query="SELECT  DISTINCT(USE_USERSCODE),
  6. STA_STAFFNAME
  7. FROM STKN.TKN_LWTPRIKSA,
  8. STKN.TKN_LWTAKAUNS,
  9. SADM.ADM_USERSCODE,
  10. SADM.VPY_STAFFLIST
  11. WHERE LAW_ACMTABLES='E'
  12. AND LAW_NODAFTARS = LWT_NODAFTARS
  13. AND LAW_ENTRYOPER = USE_USERSCODE
  14. AND STA_PAYNUMBER = USE_USERSCODE
  15. AND STA_JAWATNAME ='PEMBANTU PENILAIAN'
  16. AND to_char(LAW_LWTTARIKH,'yyyy') = '2019'
  17. ORDER BY
  18. STA_STAFFNAME";
  19. $query = ociparse($db_conn, $query);
  20. oci_execute($query);    
  21. $counter=1;
  22.  
  23.  
  24. $query1="SELECT
  25. USE_USERSCODE,
  26. STA_STAFFNAME,
  27. COUNT (*) LAW_ENTRYOPER,
  28. to_char(LAW_LWTTARIKH,'yyyy-mm-dd') AS LAW_LWTTARIKH
  29. FROM STKN.TKN_LWTPRIKSA,
  30. STKN.TKN_LWTAKAUNS,
  31. SADM.ADM_USERSCODE,
  32. SADM.VPY_STAFFLIST
  33. WHERE LAW_ACMTABLES='E'
  34. AND LAW_NODAFTARS = LWT_NODAFTARS
  35. AND LAW_ENTRYOPER = USE_USERSCODE
  36. AND STA_PAYNUMBER = USE_USERSCODE
  37. AND STA_JAWATNAME ='PEMBANTU PENILAIAN'
  38. AND to_char(LAW_LWTTARIKH,'yyyy') = '2019'
  39. AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') >= '2019-01-01' AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') <= '2019-07-31'
  40. GROUP BY
  41. USE_USERSCODE,
  42. STA_STAFFNAME,
  43. LAW_LWTTARIKH,
  44. LAW_ENTRYOPER
  45. ORDER BY
  46. STA_STAFFNAME";
  47. $query1 = ociparse($db_conn, $query1);
  48. oci_execute($query1);  
  49. $dataRow1 = [];
  50. while ($row1= oci_fetch_array($query1) ) {
  51.     $dataRow1[] = $row1;
  52. }
  53.  
  54. $query2="SELECT
  55. DISTINCT(USE_USERSCODE),
  56. COUNT (*) LAW_ENTRYOPER
  57. FROM STKN.TKN_LWTPRIKSA,
  58. STKN.TKN_LWTAKAUNS,
  59. SADM.ADM_USERSCODE,
  60. SADM.VPY_STAFFLIST
  61. WHERE LAW_ACMTABLES='E'
  62. AND LAW_NODAFTARS = LWT_NODAFTARS
  63. AND LAW_ENTRYOPER = USE_USERSCODE
  64. AND STA_PAYNUMBER = USE_USERSCODE
  65. AND STA_JAWATNAME ='PEMBANTU PENILAIAN'
  66. AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') >= '2019-01-01' AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') <= '2019-07-31'
  67. GROUP BY
  68. USE_USERSCODE";
  69. $query2 = ociparse($db_conn, $query2);
  70. oci_execute($query2);  
  71. $dataRow2 = [];
  72. while ($row2= oci_fetch_array($query2) ) {
  73.     $dataRow2[] = $row2;
  74. }
  75.  
  76. $query3="SELECT
  77. COUNT (*) LAW_ENTRYOPER,
  78. to_char(LAW_LWTTARIKH,'yyyy-mm-dd') AS LAW_LWTTARIKH
  79. FROM STKN.TKN_LWTPRIKSA,
  80. STKN.TKN_LWTAKAUNS,
  81. SADM.ADM_USERSCODE,
  82. SADM.VPY_STAFFLIST
  83. WHERE LAW_ACMTABLES='E'
  84. AND LAW_NODAFTARS = LWT_NODAFTARS
  85. AND LAW_ENTRYOPER = USE_USERSCODE
  86. AND STA_PAYNUMBER = USE_USERSCODE
  87. AND STA_JAWATNAME ='PEMBANTU PENILAIAN'
  88. AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') >= '2019-01-01' AND to_char(LAW_LWTTARIKH,'yyyy-mm-dd') <= '2019-07-31'
  89. GROUP BY
  90. USE_USERSCODE,
  91. LAW_LWTTARIKH";
  92. $query3 = ociparse($db_conn, $query3);
  93. oci_execute($query3);  
  94. $dataRow3 = [];
  95. while ($row3= oci_fetch_array($query3) ) {
  96.     $dataRow3[] = $row3;
  97. }
  98. $rowTarikh = array(
  99.     'JANUARY' => array(
  100.         array(
  101.             'start' => '2019-01-01',
  102.             'end' => '2019-01-17',
  103.         ),
  104.         array(
  105.             'start' => '2019-01-18',
  106.             'end' => '2019-01-31',
  107.         ),
  108.     ),
  109.     'FEBUARY' => array(
  110.         array(
  111.             'start' => '2019-02-01',
  112.             'end' => '2019-02-17',
  113.         ),
  114.         array(
  115.             'start' => '2019-02-18',
  116.             'end' => '2019-02-28',
  117.         ),
  118.     ),
  119.     'MARCH' => array(
  120.         array(
  121.             'start' => '2019-03-01',
  122.             'end' => '2019-03-13',
  123.         ),
  124.         array(
  125.             'start' => '2019-03-14',
  126.             'end' => '2019-03-27',
  127.         ),
  128.     ),
  129.     'APRIL' => array(
  130.         array(
  131.             'start' => '2019-03-28',
  132.             'end' => '2019-04-09',
  133.         ),
  134.         array(
  135.             'start' => '2019-04-10',
  136.             'end' => '2019-04-23',
  137.         ),
  138.        
  139.     ),
  140.  
  141.     'MAY' => array(
  142.         array(
  143.             'start' => '2019-04-24',
  144.             'end' => '2019-05-08',
  145.         ),
  146.         array(
  147.             'start' => '2019-05-09',
  148.             'end' => '2019-05-22',
  149.         ),
  150.     ),
  151.     'JUNE' => array(
  152.         array(
  153.             'start' => '2019-05-23',
  154.             'end' => '2019-06-05',
  155.         ),
  156.         array(
  157.             'start' => '2019-06-06',
  158.             'end' => '2019-06-19',
  159.         ),
  160.     ),
  161.     'JULY' => array(
  162.         array(
  163.             'start' => '2019-06-20',
  164.             'end' => '2019-07-03',
  165.         ),
  166.         array(
  167.             'start' => '2019-07-04',
  168.             'end' => '2019-07-17',
  169.         ),
  170.         array(
  171.             'start' => '2019-07-18',
  172.             'end' => '2019-07-31',
  173.         ),
  174.     ),
  175. );
  176.  
  177. ?>
  178. <div class="content-wrapper">
  179.  
  180.     <style>
  181.        
  182.         @page {
  183.    size: 7in 9.25in;
  184.    margin: 27mm 16mm 27mm 16mm;
  185. }
  186.        
  187.        
  188.         th, td {
  189.   padding: 1px;
  190. }
  191.        
  192.         * {
  193.             box-sizing: border-box;
  194.         }
  195.  
  196.         input[type=text], select, textarea {
  197.             width: 30%;
  198.             padding: 12px;
  199.             border: 1px solid #ccc;
  200.             border-radius: 4px;
  201.             resize: vertical;
  202.         }
  203.  
  204.         label {
  205.             padding: 10px 10px 10px 0;
  206.             display: inline-block;
  207.         }
  208.  
  209.         input[type=submit] {
  210.             background-color: #4CAF50;
  211.             color: white;
  212.             padding: 12px 20px;
  213.             border: none;
  214.             border-radius: 4px;
  215.             cursor: pointer;
  216.             float: right;
  217.         }
  218.  
  219.         input[type=submit]:hover {
  220.             background-color: #45a049;
  221.         }
  222.  
  223.         .container {
  224.             border-radius: 5px;
  225.             background-color: #ffffff;
  226.             padding: 20px;
  227.         }
  228.  
  229.         .col-25 {
  230.             float: left;
  231.             width: 15%;
  232.             margin-top: 6px;
  233.         }
  234.  
  235.         .col-75 {
  236.             float: left;
  237.             width: 75%;
  238.             margin-top: 6px;
  239.         }
  240.  
  241.         /* Clear floats after the columns */
  242.         .row:after {
  243.             content: "";
  244.             display: table;
  245.             clear: both;
  246.         }
  247.         @media screen and (max-width: 100px) {
  248.             .col-25, .col-75, input[type=submit] {
  249.                 width: 70%;
  250.                 margin-top: 0;
  251.             }
  252.         }
  253.     </style>
  254.     <section class="content-header">
  255.     </section>
  256.     <div class="container">
  257.         <table width="100%" border="0" class="bott">
  258.             <tr>
  259.                 <td></td>
  260.             </tr>
  261.         </table>
  262.         <br>
  263.         <table width="100%" border="0" class="bott">
  264.             <tr>
  265.                 <td style="text-align: center;"><b>BORANG SEMAKAN MAKLUMAT PEGANGAN</b>
  266.                 </td>
  267.             </tr>
  268.         </table>
  269.         <br>
  270.   <table width="100%" border=1>
  271.     <thead >
  272.         <tr align="center">
  273.                 <th rowspan="2">BIL</th>
  274.             <th rowspan="2">STAFF</th>
  275.             <?php
  276.             // loop tarikh untuk kira colspan table th
  277.             foreach ($rowTarikh as $key => $value) { ?>
  278.                 <th colspan="<?php echo count($value) ?>"><?php echo $key ?></th>
  279.             <?php } ?>
  280.                 <th align="center" rowspan="2">JUMLAH UNIT</th>
  281.         </tr>
  282.         <tr>
  283.             <?php
  284.             // loop data dalam satu bulan untuk papar tarikh. Untuk ni, just papar tarikh end
  285.             foreach ($rowTarikh as $key => $value) { ?>
  286.                
  287.                 <?php foreach ($value as $k => $v) { ?>
  288.                     <th><?php echo $v['end']?></th>
  289.            
  290.                 <?php } ?>
  291.                
  292.             <?php } ?>
  293.         </tr>
  294.     </thead>
  295.     <tbody >
  296.         <?php
  297.                     // loop setiap staff di sini
  298.       while ($row = oci_fetch_array($query)) { ?>
  299.             <tr>
  300.                      <td><?php echo $counter++;?></td>
  301.                 <td><?php  echo $row['STA_STAFFNAME'] ; ?></td>
  302.                    
  303.                 <?php
  304.                 // loop setiap bulan
  305.                 foreach ($rowTarikh as $key => $value) { ?>
  306.                
  307.                     <?php
  308.                     $grandTotal = []; // haezal
  309.                     // loop setiap tarikh dalam satu bulan
  310.                     foreach ($value as $k => $v) { ?>
  311.                         <th align="center">
  312.                             <?php
  313.                             $total=0;
  314.                             $grandTotal[$k] = 0; // haezal
  315.                     $tot=0;
  316.                                    foreach ($dataRow1 as $row1) {
  317.  
  318.                                 // make sure kiraan pada row data pada row staff yang berkenaan
  319.                                      
  320.                                 if ($row1['USE_USERSCODE'] == $row['USE_USERSCODE']) {
  321.                                    
  322.  
  323.                                 // make sure kiraan pada row data pada row staff yang berkenaan
  324.                            
  325.                        
  326.                                 if ($v['start'] <= $row1['LAW_LWTTARIKH'] && $v['end'] >= $row1['LAW_LWTTARIKH']) {
  327.  
  328.                                     // bila tarikh row data tu in between tarikh yang di loop, count 1
  329.                            
  330.                                    
  331.                                         $total=+$row1['LAW_ENTRYOPER'];
  332.                                         $grandTotal[$k]+=$total; // haezal
  333.                                    
  334.                                                                     }
  335.                                 }
  336.                                        
  337.                                 }
  338.                                                     echo $total;  // display result
  339.                             ?>
  340.  
  341.                         </th>
  342.                         <?php } ?>
  343.                 <?php } ?>
  344.                
  345.                <?php
  346.                                                $t=0;
  347.                                              
  348.         foreach ($dataRow2 as $row2) {
  349.                                      
  350.                                 if ($row['USE_USERSCODE'] == $row2['USE_USERSCODE']) {
  351.                                
  352.                                         $tot=$row2['LAW_ENTRYOPER'];
  353.                                 }    
  354.                                 }
  355.        ?>
  356.    <th bgcolor="#98AFC7"> <?php echo $tot; ?> </th>
  357.             </tr>
  358.                
  359.         <?php } ?>
  360.            <td></td>
  361.     <td bgcolor="#98AFC7"> <B>JUMLAH PENGHANTARAN</B></td>
  362.  
  363.         <?php
  364.             // haezal tambah
  365.                 // loop setiap bulan
  366.                 foreach ($rowTarikh as $key => $value) { ?>
  367.                
  368.                     <?php
  369.                     // loop setiap tarikh dalam satu bulan
  370.                     foreach ($value as $k => $v) { ?>
  371.                         <td align="center">
  372.                             <?php echo $grandTotal[$k] ?>
  373.                         </td>
  374.  
  375.                     <?php } ?>
  376.  
  377.                 <?php } ?>
  378.  
  379.     <?php /*<td bgcolor="#98AFC7">
  380.        
  381.                <?php   foreach ($dataRow3 as $row3) {
  382.  
  383.                                 if ( $row3['LAW_LWTTARIKH'] >= '2019-01-01' && $row3['LAW_LWTTARIKH'] <= '2019-01-17'  ) {
  384.  
  385.                                
  386.                                         $t=+$row3['LAW_ENTRYOPER'];
  387.                                                                                                     }
  388.                                 }
  389.             echo $t;
  390.        
  391.         ?>
  392.         */ ?>
  393.         </td>
  394.     </tbody>
  395. </table>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement