index.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. {include file='common/_js_css'}
  2. <link href="__CSS__/common.css" rel="stylesheet">
  3. <div class="container-fluid">
  4. <div class="row">
  5. <div class="col-lg-12">
  6. <div class="card" id="select_card_caviar" style="display: none">
  7. <div class="card-header">{$Think.lang.condition}</div>
  8. <div class="card-body">
  9. <form action="{:url('admin/order_report/index')}" method="post" class="form-horizontal form-search">
  10. <div class="row">
  11. <div class="col-md-3">
  12. <div class="form-group">
  13. <label class="w-120 pull-left control-label">{:lang("Invoice No")}</label>
  14. <div class="pull-left w-120-calc">
  15. <input type="text" class="form-control pull-left" name="order_no" id="order_no"
  16. value="{$params.order_no}" placeholder='{:lang("Invoice No")}'/>
  17. </div>
  18. </div>
  19. </div>
  20. <div class="col-md-3">
  21. <div class="form-group">
  22. <label class="w-120 pull-left control-label">{:lang("Bar code")}</label>
  23. <div class="pull-left w-120-calc">
  24. <input type="text" class="form-control pull-left" name="bar_code" id="bar_code"
  25. value="{$params.bar_code}" placeholder="{:lang('Bar code')}"/>
  26. </div>
  27. </div>
  28. </div>
  29. <div class="col-md-3">
  30. <div class="form-group">
  31. <label class="w-120 pull-left control-label">{:lang("Product")}{:lang("Name")}</label>
  32. <div class="pull-left w-120-calc">
  33. <input type="text" class="form-control pull-left" name="product_name"
  34. id="product_name"
  35. value="{$params.product_name}"
  36. placeholder='{:lang("Product")}{:lang("Name")}'/>
  37. </div>
  38. </div>
  39. </div>
  40. <div class="col-md-3">
  41. <div class="form-group">
  42. <label class="w-120 pull-left control-label">{:lang("Belong Company")}</label>
  43. <div class="pull-left w-120-calc">
  44. <div class="layui-form-item"
  45. style="">
  46. <div class="layui-inline layui-form">
  47. <select name="company_id" lay-search="" id="company_id">
  48. <option value="" selected>{:lang("Unknown")}</option>
  49. {volist name="companys" id="item"}
  50. <option value="{$item.id}" {if $item.id== $params.company_id}
  51. selected {/if}>{$item.name}</option>
  52. {/volist}
  53. </select>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. </div>
  59. <div class="col-md-3">
  60. <div class="form-group">
  61. <label class="w-120 pull-left control-label">{:lang("Adviser")}</label>
  62. <div class="pull-left w-120-calc">
  63. <div class="layui-form-item"
  64. style="">
  65. <div class="layui-inline layui-form">
  66. <select name="adviser_id" lay-search="" id="adviser_id">
  67. <option value="" selected>{:lang("Unknown")}</option>
  68. {volist name="admins" id="item"}
  69. <option value="{$item.id}" {if $item.id== $params.adviser_id}
  70. selected {/if}>{$item.nickname}</option>
  71. {/volist}
  72. </select>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. </div>
  78. <div class="col-md-3">
  79. <div class="form-group">
  80. <label class="w-120 pull-left control-label">{:lang("Teacher")}</label>
  81. <div class="pull-left w-120-calc">
  82. <div class="layui-form-item"
  83. style="">
  84. <div class="layui-inline layui-form">
  85. <select name="teacher_id" lay-search="" id="teacher_id">
  86. <option value="" selected>{:lang("Unknown")}</option>
  87. {volist name="admins" id="item"}
  88. <option value="{$item.id}" {if $item.id== $params.teacher_id}
  89. selected {/if}>{$item.nickname}</option>
  90. {/volist}
  91. </select>
  92. </div>
  93. </div>
  94. </div>
  95. </div>
  96. </div>
  97. <div class="col-md-3">
  98. <div class="form-group">
  99. <label class="w-120 pull-left control-label">{:lang("统计时间")}</label>
  100. <div class="pull-left w-120-calc">
  101. <input type="text" class="layui-input" name="date_range" id="date_range"
  102. placeholder="{if $params.date_range == ''}{:lang('Start Time')} / {:lang('End Time')}{else /}{$params.date_range}{/if}"
  103. value="{$params.date_range}">
  104. </div>
  105. </div>
  106. </div>
  107. <div class="col-md-3">
  108. <div class="form-group">
  109. <label class="w-120 pull-left control-label">{:lang("支付方式")}</label>
  110. <div class="pull-left w-120-calc">
  111. <div class="layui-form-item"
  112. style="">
  113. <div class="layui-inline layui-form">
  114. <select name="channel_id" lay-search="" id="channel_id">
  115. <option value="" selected>{:lang("Unknown")}</option>
  116. {volist name="channels" id="item"}
  117. <option value="{$item.id}" {if $item.id== $params.channel_id}
  118. selected {/if}>{$item.name}</option>
  119. {/volist}
  120. </select>
  121. </div>
  122. </div>
  123. </div>
  124. </div>
  125. </div>
  126. <div class="col-md-4">
  127. <div class="form-group">
  128. <label class="w-120 pull-left control-label"></label>
  129. <div class="pull-left w-120-calc">
  130. <button class="btn btn-success m-r-5" id="caviar_send_btn" type="submit"
  131. href="#">{:lang('search')}
  132. </button>
  133. <button type="reset" class="layui-btn layui-btn-primary">{:lang("Reset")}
  134. </button>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. </form>
  140. </div>
  141. </div>
  142. <div class="card">
  143. <div class="card-toolbar clearfix">
  144. <div class="toolbar-btn-action">
  145. <a class="btn btn-success m-r-5" id="caviar_search_btn" href="#!"
  146. onclick="select_card_switch()">{$Think.lang.unfold_search}</a>
  147. <a class="btn btn-primary m-r-5" onclick="caviar_report()">{:lang('Report')}</a>
  148. </div>
  149. </div>
  150. <div class="card-body">
  151. <div class="table-responsive">
  152. <table class="table table-bordered">
  153. <thead>
  154. <tr>
  155. <th>{:lang('Invoice No')}</th>
  156. <th>{:lang('Store')}{:lang('Abbr')}</th>
  157. <th>{:lang('Date')}</th>
  158. <th>{:lang('Bar code')}</th>
  159. <th>{:lang('Product')}{:lang("Name")}</th>
  160. <th>{:lang("Belong Company")}</th>
  161. <th>{:lang('Sale price')}</th>
  162. <th>{:lang('Consumption tax')}</th>
  163. <th>{:lang('Quantity')}</th>
  164. <th>{:lang('Real Price')}</th>
  165. <th>{:lang('Royalties')}</th>
  166. <th>{:lang('Payment Channel')}</th>
  167. <th>{:lang('Adviser')}1</th>
  168. <th>{:lang('Adviser')}2</th>
  169. <th>{:lang('Teacher')}1</th>
  170. <th>{:lang('Teacher')}2</th>
  171. </tr>
  172. </thead>
  173. <tbody>
  174. {volist name="list" id="item"}
  175. <tr>
  176. <td>{$item.order_no}</td>
  177. <td>{:preg_replace("/\\d+/",'', $item.order_no)}</td>
  178. <td>{$item.create_time}</td>
  179. <td>{$item.product.bar_code}</td>
  180. <td>{$item.product_name}</td>
  181. <td>{:fmtN_A($item.product.company.name)}</td>
  182. <td>{$item.product.real_price}</td>
  183. <td>{$item.sales_tax}</td>
  184. <td>1</td>
  185. <td>{$item.transaction_price}</td>
  186. <td>{:fmtN_A("")}</td>
  187. <td>{$item.payment_names}</td>
  188. <td>{:fmtN_A($item.adviser_1_name)}</td>
  189. <td>{:fmtN_A($item.adviser_2_name)}</td>
  190. <td>{:fmtN_A($item.teacher_1_name)}</td>
  191. <td>{:fmtN_A($item.teacher_2_name)}</td>
  192. </tr>
  193. {/volist}
  194. </tbody>
  195. </table>
  196. </div>
  197. {$list|raw}
  198. </div>
  199. </div>
  200. </div>
  201. </div>
  202. </div>
  203. <script type="text/javascript">
  204. function caviar_report() {
  205. const form_data = {
  206. order_no: $("#order_no").val(),
  207. bar_code: $("#bar_code").val(),
  208. product_name: $("#product_name").val(),
  209. company_id: $("#company_id").val(),
  210. adviser_id: $("#adviser_id").val(),
  211. teacher_id: $("#teacher_id").val(),
  212. date_range: $("#date_range").val(),
  213. channel_id: $("#channel_id").val(),
  214. };
  215. const data_str = Object.keys(form_data).map((key) => `${key}=${form_data[key]}`).join("&");
  216. window.location.href = "{:url('admin/order_report/report')}?" + data_str;
  217. }
  218. if (check_params([
  219. '{$params.order_no}',
  220. '{$params.bar_code}',
  221. '{$params.product_name}',
  222. "{$params.company_id}",
  223. "{$params.adviser_id}",
  224. "{$params.teacher_id}",
  225. "{$params.date_range}",
  226. "{$params.channel_id}"
  227. ]))
  228. $('#select_card_caviar').css('display', 'block');
  229. layui.use(['laydate', 'form'], () => {
  230. const laydate = layui.laydate;
  231. const form = layui.form;
  232. //监听提交
  233. form.on('submit(caviar_send_btn)', function (data) {
  234. layer.msg(JSON.stringify(data.field));
  235. return false;
  236. });
  237. laydate.render({
  238. elem: '#date_range',
  239. type: 'datetime',
  240. range: '/',
  241. });
  242. });
  243. </script>