datalist.html 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. {extend name="../../base/view/common/base" /}
  2. <!-- 主体 -->
  3. {block name="body"}
  4. <div class="p-page">
  5. <div class="layui-card border-x border-t" style="margin-bottom:0; box-shadow:0 0 0 0 rgb(5 32 96 / 0%)">
  6. <div class="body-table layui-tab layui-tab-brief" lay-filter="tab">
  7. <ul class="layui-tab-title">
  8. <li class="layui-this">全部</li>
  9. <li>我申请的</li>
  10. <li>待我审批</li>
  11. <li>我已审批</li>
  12. <li>抄送我的</li>
  13. </ul>
  14. </div>
  15. </div>
  16. <form class="layui-form gg-form-bar border-x tab-0" id="barsearchform">
  17. <div class="layui-input-inline" style="width:175px;">
  18. <input type="text" class="layui-input" id="diff_time" placeholder="选择发票时间区间" readonly name="diff_time">
  19. </div>
  20. <div class="layui-input-inline search-item" style="width:120px;">
  21. <select name="check_status">
  22. <option value="">选择审批状态</option>
  23. {volist name=":get_check_status()" id="vo"}
  24. <option value="{$key}">{$vo}</option>
  25. {/volist}
  26. </select>
  27. </div>
  28. <div class="layui-input-inline search-item" style="width:120px;">
  29. <select name="open_status">
  30. <option value="">发票状态</option>
  31. <option value="1">正常</option>
  32. <option value="2">作废</option>
  33. </select>
  34. </div>
  35. <div class="layui-input-inline" style="width:150px">
  36. <input type="hidden" name="tab" value="0"/>
  37. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="table-search"><i class="layui-icon layui-icon-search mr-1"></i>搜索</button>
  38. <button type="reset" class="layui-btn layui-btn-reset" lay-filter="table-reset">清空</button>
  39. </div>
  40. </form>
  41. <table class="layui-hide" id="table_ticket" lay-filter="table_ticket"></table>
  42. </div>
  43. <script type="text/html" id="toolbarDemo">
  44. <div class="layui-btn-container">
  45. <button class="layui-btn layui-btn-sm tool-add" type="button" data-href="/finance/ticket/add">+ 添加收票信息</button>
  46. </div>
  47. </script>
  48. {/block}
  49. <!-- /主体 -->
  50. <!-- 脚本 -->
  51. {block name="script"}
  52. <script>
  53. const moduleInit = ['tool','tablePlus','laydatePlus'];
  54. function gouguInit() {
  55. var table = layui.tablePlus, tool = layui.tool, laydatePlus = layui.laydatePlus, element = layui.element;
  56. //tab切换
  57. element.on('tab(tab)', function(data){
  58. $('[name="tab"]').val(data.index);
  59. $("#barsearchform")[0].reset();
  60. layui.pageTable.reload({where:{tab:data.index},page:{curr:1}});
  61. return false;
  62. });
  63. //日期范围
  64. var diff_time = new laydatePlus({'target':'diff_time'});
  65. layui.pageTable = table.render({
  66. elem: "#table_ticket"
  67. ,toolbar: "#toolbarDemo"
  68. ,title: '发票列表'
  69. ,url: "/finance/ticket/datalist"
  70. ,page: true
  71. ,limit: 20
  72. ,cellMinWidth: 80
  73. ,height: 'full-154'
  74. ,cols: [[
  75. {
  76. field: 'id',
  77. title: 'ID号',
  78. align: 'center',
  79. width: 80
  80. },{
  81. field: 'supplier_name',
  82. title: '供应商[发票主体]',
  83. minWidth: 240
  84. },{
  85. field: 'amount',
  86. title: '发票金额(元)',
  87. align: 'right',
  88. width: 100,
  89. },{
  90. field: 'code',
  91. title: '发票号码',
  92. align: 'center',
  93. width: 160
  94. },{
  95. field: 'invoice_type',
  96. title: '开票类型',
  97. align: 'center',
  98. width: 120,
  99. templet:function(d){
  100. var html='-';
  101. if(d.invoice_type==1){
  102. html='<span class="green">增值税专用发票</span>';
  103. }
  104. else if(d.invoice_type==2){
  105. html='<span class="blue">普通发票</span>';
  106. }
  107. else if(d.invoice_type==3){
  108. html='<span class="red">专业发票</span>';
  109. }
  110. return html;
  111. }
  112. },{
  113. field:'check_status',title: '审批状态',width:110, align:'center',templet: function(d){
  114. var html = '<span class="check-status-color-'+d.check_status+'">『'+d.check_status_str+'』</span>';
  115. return html;
  116. }
  117. },
  118. {
  119. field: 'admin_name',
  120. title: '收票员工',
  121. align: 'center',
  122. width: 100
  123. },{
  124. field: 'department',
  125. title: '收票部门',
  126. align: 'center',
  127. width: 120
  128. },{
  129. field: 'create_time',
  130. title: '收取时间',
  131. align: 'center',
  132. width: 150
  133. },{
  134. field: 'check_user',
  135. title: '当前审核人'
  136. },{
  137. field: 'open_status',
  138. title: '发票状态',
  139. align: 'center',
  140. width: 90,
  141. templet:function(d){
  142. var html='';
  143. if(d.check_status==2){
  144. html = '<span class="green">『正常』</span>';
  145. if(d.open_status==2){
  146. html = '<span class="red">『已作废』</span>';
  147. }
  148. }
  149. else{
  150. html='-';
  151. }
  152. return html;
  153. }
  154. },{
  155. field: 'right',
  156. fixed: 'right',
  157. title: '操作',
  158. width: 130,
  159. align: 'center',
  160. templet:function(d){
  161. var html='<div class="layui-btn-group">';
  162. var btn1='<span class="layui-btn layui-btn-normal layui-btn-xs" lay-event="view">详情</span>';
  163. var btn2='<span class="layui-btn layui-btn-xs" lay-event="edit">编辑</span>';
  164. var btn3='<span class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</span>';
  165. html+=btn1;
  166. if((d.check_status==0 ||d.check_status==4) && d.admin_id==login_admin){
  167. html+=btn2+btn3;
  168. }
  169. html+='</div>';
  170. return html;
  171. }
  172. }
  173. ]
  174. ]
  175. });
  176. table.on('tool(table_ticket)',function (obj) {
  177. var checkStatus = table.checkStatus(obj.config.id); //获取选中行状态
  178. var data = obj.data;
  179. if (obj.event === 'view') {
  180. tool.side("/finance/ticket/view?id="+data.id);
  181. return;
  182. }
  183. if (obj.event === 'edit') {
  184. tool.side("/finance/ticket/add?id="+data.id);
  185. return;
  186. }
  187. if (obj.event === 'del') {
  188. layer.confirm('确定要删除该记录吗?', { icon: 3, title: '提示' }, function (index) {
  189. let callback = function (e) {
  190. layer.msg(e.msg);
  191. if (e.code == 0) {
  192. obj.del();
  193. }
  194. }
  195. tool.delete("/finance/ticket/del", { id: data.id }, callback);
  196. layer.close(index);
  197. });
  198. return;
  199. }
  200. });
  201. }
  202. </script>
  203. {/block}
  204. <!-- /脚本 -->