VM暫存
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

327 líneas
16KB

  1. <?php /* ----- 關帳查詢 ----- */?>
  2. <div data-items="check_point_report" class="row" style="display:none;">
  3. <div class="col-lg-12">
  4. <div class="panel panel-default">
  5. <div class="panel-heading">
  6. <form id="check_point_form" role="form">
  7. <label class="input-inline" for="check_point_search_station_no_modify">關帳查詢</label>&nbsp;&nbsp;
  8. <select id="check_point_search_station_no_modify" name="check_point_search_station_no_modify"></select>
  9. &nbsp;<span class="input-inline" >,</span>&nbsp;
  10. <label class="input-inline" for="check_point_search_time_from">開始</label>&nbsp;&nbsp;
  11. <input type="text" class="date" id="check_point_search_time_from" name="check_point_search_time_from">
  12. &nbsp;<span class="input-inline" > ~ </span>&nbsp;
  13. <label class="input-inline" for="check_point_search_time_to">結束</label>&nbsp;&nbsp;
  14. <input type="text" class="date" id="check_point_search_time_to" name="check_point_search_time_to">
  15. &nbsp;&nbsp;
  16. <label class="input-inline"><input type="submit" value="查詢" /></label>
  17. </form>
  18. </div>
  19. <!-- /.panel-heading -->
  20. <div class="panel-body">
  21. <div class="dataTable_wrapper">
  22. <table class="table table-striped table-bordered table-hover">
  23. <thead>
  24. <tr>
  25. <th style="text-align:center;">編號</th>
  26. <th style="text-align:center;">上次關帳時間</th>
  27. <th style="text-align:center;">本次關帳時間</th>
  28. <th style="text-align:center;">上次最後交易代號</th>
  29. <th style="text-align:center;">本次最後交易代號</th>
  30. <th style="text-align:center;">總金額(不含押金)</th>
  31. <th style="text-align:center;">總押金</th>
  32. <th style="text-align:center;">操作種類</th>
  33. <th style="text-align:center;">功能</th>
  34. <th style="text-align:center;">建立時間</th>
  35. <th style="text-align:center;">備註</th>
  36. </tr>
  37. </thead>
  38. <tbody id="check_point_list" style="font-size:18px;"></tbody>
  39. </table>
  40. </div><?php /* ----- end of dataTable_wrapper ----- */?>
  41. </div><?php /* ----- end of panel-body ----- */?>
  42. </div><?php /* ----- end of panel panel-default ----- */?>
  43. </div><?php /* ----- end of col-lg-12 ----- */?>
  44. <div id="check_point_list_detail_box" class="col-lg-12" style="display:none;">
  45. <div class="panel panel-default">
  46. <div class="panel-heading">
  47. 關帳明細(<span id='check_point_list_detail_time_str_1'></span>&nbsp;開始&nbsp;~&nbsp;至&nbsp;<span id='check_point_list_detail_time_str_2'></span>&nbsp;關帳,期間所有交易)
  48. </div>
  49. <!-- /.panel-heading -->
  50. <div class="panel-body">
  51. <div class="dataTable_wrapper">
  52. <table class="table table-striped table-bordered table-hover">
  53. <thead>
  54. <tr>
  55. <th style="text-align:left;">代號</th>
  56. <th style="text-align:center;">入帳日</th>
  57. <th style="text-align:left;">入帳車號</th>
  58. <th style="text-align:left;">目前車號</th>
  59. <th style="text-align:center;">會員開始日</th>
  60. <th style="text-align:center;">上期繳期</th>
  61. <th style="text-align:center;">上期結束日</th>
  62. <th style="text-align:center;">上期租金</th>
  63. <th style="text-align:center;">本期繳期</th>
  64. <th style="text-align:center;">本期開始日</th>
  65. <th style="text-align:center;">本期結束日</th>
  66. <th style="text-align:center;">本期租金</th>
  67. <th style="text-align:center;">押金</th>
  68. <th style="text-align:center;">審核狀態</th>
  69. <th style="text-align:center;">有效期限</th>
  70. <th style="text-align:center;">備註</th>
  71. </tr>
  72. </thead>
  73. <tbody id="check_point_list_detail" style="font-size:18px;"></tbody>
  74. </table>
  75. </div><?php /* ----- end of dataTable_wrapper ----- */?>
  76. </div><?php /* ----- end of panel-body ----- */?>
  77. </div><?php /* ----- end of panel panel-default ----- */?>
  78. </div><?php /* ----- end of col-lg-12 ----- */?>
  79. </div>
  80. <?php /* ----- 關帳查詢(結束) ----- */?>
  81. <script>
  82. // 設定場站資訊
  83. for(station_no in st)
  84. {
  85. $(new Option(st[station_no],station_no)).appendTo('#check_point_search_station_no_modify'); // 場站
  86. }
  87. var initMinDate = moment("00:00", "HH:mm").subtract(10, 'days');
  88. var initMaxDate = moment("23:59", "HH:mm");
  89. var searchTimeFromPicker = $( "#check_point_search_time_from" );
  90. var searchTimeToPicker = $( "#check_point_search_time_to" );
  91. // 日期
  92. /* DatePicker 設定start */
  93. searchTimeFromPicker.datetimepicker({
  94. dateFormat: 'yy-mm-dd',
  95. maxDate: '0',
  96. changeMonth: true,
  97. numberOfMonths: 1,
  98. timeFormat: "HH:mm",
  99. addSliderAccess: true,
  100. sliderAccessArgs: { touchonly: false },
  101. onClose: function( selectedDate ) {
  102. searchTimeToPicker.datetimepicker( "option", "minDate", selectedDate );
  103. console.log("search_time_from: " + selectedDate);
  104. }
  105. });
  106. searchTimeFromPicker.datetimepicker('setDate', initMinDate.toDate());
  107. searchTimeToPicker.datetimepicker({
  108. dateFormat: 'yy-mm-dd',
  109. maxDate: '0',
  110. changeMonth: true,
  111. numberOfMonths: 1,
  112. timeFormat: "HH:mm",
  113. addSliderAccess: true,
  114. sliderAccessArgs: { touchonly: false },
  115. onClose: function( selectedDate ) {
  116. searchTimeFromPicker.datetimepicker( "option", "maxDate", selectedDate );
  117. console.log("search_time_to: " + selectedDate);
  118. }
  119. });
  120. searchTimeToPicker.datetimepicker('setDate', initMaxDate.toDate());
  121. /* DatePicker 設定end */
  122. $("#check_point_form").submit(function(event)
  123. {
  124. event.preventDefault();
  125. var station_no = $("#check_point_search_station_no_modify").val();
  126. var check_point_time_from = $( "#check_point_search_time_from" ).val();
  127. var check_point_time_to = $( "#check_point_search_time_to" ).val();
  128. $("#check_point_list").html("");
  129. $("#check_point_list_detail").html("");
  130. $("#check_point_list_detail_box").hide();
  131. $.ajax
  132. ({
  133. url:APP_URL+"check_point_query",
  134. dataType:"json",
  135. type:"post",
  136. data:
  137. {
  138. "station_no": station_no,
  139. "check_point_time_from": check_point_time_from,
  140. "check_point_time_to": check_point_time_to
  141. },
  142. error:function(xhr, ajaxOptions, thrownError)
  143. {
  144. var error_msg = xhr.responseText ? xhr.responseText : "連線失敗, 請稍候再試";
  145. alertify_msg(error_msg);
  146. console.log("error:"+error_msg+"|"+ajaxOptions+"|"+thrownError);
  147. },
  148. success:function(jdata)
  149. {
  150. var check_point_list = ["<tr>"];
  151. for(idx in jdata)
  152. {
  153. check_no = jdata[idx]['check_no'];
  154. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", check_no, "</td>"]);
  155. check_point_list = check_point_list.concat(["<td id='check_point_data_", check_no,
  156. "' data-station_no='", jdata[idx]['station_no'],
  157. "' data-check_no='", jdata[idx]['check_no'],
  158. "' data-check_time='", jdata[idx]['check_time'],
  159. "' data-check_time_no='", jdata[idx]['check_time_no'],
  160. "' data-check_time_last='", jdata[idx]['check_time_last'],
  161. "' data-check_time_last_no='", jdata[idx]['check_time_last_no'],
  162. "' data-check_type='", jdata[idx]['check_type'],
  163. "' data-check_amt='", jdata[idx]['check_amt'],
  164. "' data-check_deposit='", jdata[idx]['check_deposit'],
  165. "' data-remarks='", jdata[idx]['remarks'],
  166. "' style='text-align:center;'>", jdata[idx]['check_time_last'], "</td>"]);
  167. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['check_time'], "</td>"]);
  168. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['check_time_last_no'], "</td>"]);
  169. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['check_time_no'], "</td>"]);
  170. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['check_amt'], "</td>"]);
  171. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['check_deposit'], "</td>"]);
  172. if(jdata[idx]['check_type'] == 1)
  173. {
  174. check_point_list = check_point_list.concat(["<td style='text-align:center;'>手動關帳</td>"]);
  175. }
  176. else
  177. {
  178. check_point_list = check_point_list.concat(["<td style='text-align:center;'>未知</td>"]);
  179. }
  180. check_point_list = check_point_list.concat(["<td style='color:red;text-align:center;'><button class='btn btn-default' style='color:blue;' onclick='check_point_detail(", check_no + ");'>明細</button></td>"]);
  181. check_point_list = check_point_list.concat(["<td style='text-align:center;'>", jdata[idx]['create_time'], "</td>"]);
  182. check_point_list = check_point_list.concat(["<td style='text-align:left;'>", jdata[idx]['remarks'], "</td>"]);
  183. check_point_list = check_point_list.concat(["</tr>"]);
  184. }
  185. $("#check_point_list").append(check_point_list.join(''));
  186. }
  187. });
  188. });
  189. // 關帳查詢(明細)
  190. function check_point_detail(check_no)
  191. {
  192. $("#check_point_list_detail").html(""); // -- 清除原內容 --
  193. var station_no = $("#check_point_data_"+check_no).data("station_no");
  194. var check_time = $("#check_point_data_"+check_no).data("check_time");
  195. var check_time_no = $("#check_point_data_"+check_no).data("check_time_no");
  196. var check_time_last = $("#check_point_data_"+check_no).data("check_time_last");
  197. var check_time_last_no = $("#check_point_data_"+check_no).data("check_time_last_no");
  198. $.ajax
  199. ({
  200. url: "<?=APP_URL?>check_point_detail_query",
  201. type: "post",
  202. dataType:"json",
  203. data: {
  204. "station_no": station_no,
  205. "check_time_no": check_time_no,
  206. "check_time_last_no": check_time_last_no
  207. },
  208. error:function(xhr, ajaxOptions, thrownError)
  209. {
  210. var error_msg = xhr.responseText ? xhr.responseText : "連線失敗, 請稍候再試";
  211. alertify_msg(error_msg);
  212. console.log("error:"+error_msg+"|"+ajaxOptions+"|"+thrownError);
  213. $("#check_point_list_detail_box").hide();
  214. },
  215. success:function(jdata)
  216. {
  217. $("#check_point_list_detail_time_str_1").text(check_time_last);
  218. $("#check_point_list_detail_time_str_2").text(check_time);
  219. $("#check_point_list_detail_box").show();
  220. var member_list = ["<tr>"];
  221. for(idx in jdata)
  222. {
  223. tx_no = jdata[idx]['tx_no'];
  224. member_list = member_list.concat(["<td style='text-align:center;'>", tx_no, "</td>"]);
  225. member_list = member_list.concat(["<td id='acc_date_", tx_no, "' style='text-align:center;'>", jdata[idx]['acc_date'], "</td>"]);
  226. member_list = member_list.concat(["<td id='check_point_list_detail_data_", tx_no,
  227. "' data-station_no='", jdata[idx]['station_no'],
  228. "' data-member_no='", jdata[idx]['member_no'],
  229. "' data-tx_no='", jdata[idx]['tx_no'],
  230. "' data-member_company_no='", jdata[idx]['member_company_no'],
  231. "' data-company_no='", jdata[idx]['company_no'],
  232. "' data-amt='", jdata[idx]['amt'],
  233. "' data-amt1='", jdata[idx]['amt1'],
  234. "' data-deposit='", jdata[idx]['deposit'],
  235. "' data-start_date_last='", jdata[idx]['start_date_last'],
  236. "' data-end_date='", jdata[idx]['end_date'],
  237. "' data-lpr='", jdata[idx]['lpr'],
  238. "' data-fee_period='", jdata[idx]['fee_period'],
  239. "' style='text-align:left;'>", jdata[idx]['lpr'], "</td>"]);
  240. if(jdata[idx]['current_lpr'])
  241. {
  242. member_list = member_list.concat(["<td id='current_lpr_", tx_no, "' style='text-align:center;'>", jdata[idx]['current_lpr'], "</td>"]);
  243. }
  244. else
  245. {
  246. member_list = member_list.concat(["<td id='current_lpr_", tx_no, "' style='color:black;text-align:center;'>無</td>"]);
  247. }
  248. member_list = member_list.concat(["<td id='sdate_last_", tx_no, "' style='text-align:center;'>", jdata[idx]['start_date_last'], "</td>"]);
  249. member_list = member_list.concat(["<td id='fee_period_last_", tx_no, "' style='text-align:center;'>", period_name[jdata[idx]['fee_period_last']], "</td>"]);
  250. member_list = member_list.concat(["<td id='edate_last_", tx_no, "' style='text-align:center;'>", jdata[idx]['end_date_last'], "</td>"]);
  251. member_list = member_list.concat(["<td id='amt_last_", tx_no, "' style='text-align:center;'>", jdata[idx]['amt_last'], "</td>"]);
  252. member_list = member_list.concat(["<td id='fee_period_", tx_no, "' style='text-align:center;'>", period_name[jdata[idx]['fee_period']], "</td>"]);
  253. member_list = member_list.concat(["<td id='sdate_", tx_no, "' style='text-align:center;'>", jdata[idx]['start_date'], "</td>"]);
  254. member_list = member_list.concat(["<td id='edate_", tx_no, "' style='text-align:center;'>", jdata[idx]['end_date'], "</td>"]);
  255. member_list = member_list.concat(["<td id='amt_", tx_no, "' style='text-align:center;'>", jdata[idx]['amt'], "</td>"]);
  256. member_list = member_list.concat(["<td id='deposit_", tx_no, "' style='text-align:center;'>", jdata[idx]['deposit'], "</td>"]);
  257. if(jdata[idx]['tx_state'] == 4)
  258. {
  259. member_list = member_list.concat(["<td style='color:black;text-align:center;'>已退租</td>"]);
  260. }
  261. else if(jdata[idx]['tx_state'] == 44)
  262. {
  263. member_list = member_list.concat(["<td style='color:black;text-align:center;'>交易取消</td>"]);
  264. }
  265. else if(jdata[idx]['verify_state'] == 0)
  266. {
  267. member_list = member_list.concat(["<td style='color:red;text-align:center;'><button class='btn btn-default' style='color:red;' onclick='member_tx_check(", tx_no + ");'>待審核</button></td>"]);
  268. }
  269. else if(jdata[idx]['verify_state'] == 1)
  270. {
  271. member_list = member_list.concat(["<td style='color:green;text-align:center;'>已審核</td>"]);
  272. }
  273. else
  274. {
  275. member_list = member_list.concat(["<td style='color:red;text-align:center;'><button class='btn btn-default' style='color:blue;' onclick='member_tx_check(", tx_no + ");'>未通過</button></td>"]);
  276. }
  277. member_list = member_list.concat(["<td style='color:red;text-align:center;' id='valid_time_", tx_no, "'>", jdata[idx]['valid_time'], "</td>"]);
  278. member_list = member_list.concat(["<td style='color:blue;text-align:left;' id='remarks_", tx_no, "'>", jdata[idx]['remarks'], "</td>"]);
  279. member_list = member_list.concat(["</tr>"]);
  280. }
  281. $("#check_point_list_detail").append(member_list.join(''));
  282. }
  283. });
  284. }
  285. </script>