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

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