add_a.html 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250
  1. {extend name="../../base/view/common/base" /}
  2. {block name="style"}
  3. <style>
  4. .layui-table-min th{font-size:13px; text-align:center; background-color:#f8f8f8;}
  5. .layui-table-min td{font-size:13px; padding:6px;text-align:center;}
  6. </style>
  7. {/block}
  8. <!-- 主体 -->
  9. {block name="body"}
  10. <div class="layui-form p-page">
  11. <h3 class="pb-3">无发票付款详情</h3>
  12. <table class="layui-table layui-table-form">
  13. <tr>
  14. <td class="layui-td-gray-2">预付款金额(元)</td>
  15. <td class="blue">{$detail.amount}</td>
  16. <td class="layui-td-gray">付款方</td>
  17. <td>{$detail.subject}</td>
  18. </tr>
  19. <tr>
  20. <td class="layui-td-gray-3">收款方(供应商)</td>
  21. <td colspan="3">{$detail.supplier_name}</td>
  22. </tr>
  23. {notempty name="$detail.remark"}
  24. <tr>
  25. <td class="layui-td-gray">备注信息</td>
  26. <td colspan="5">{$detail.remark}</td>
  27. </tr>
  28. {/notempty}
  29. {notempty name="$detail.file_ids"}
  30. <tr>
  31. <td class="layui-td-gray">关联附件</td>
  32. <td colspan="5">
  33. <div class="layui-row">
  34. {volist name="$detail.file_array" id="vo"}
  35. <div class="layui-col-md4" id="uploadFile{$vo.id}">{:file_card($vo,'view')}</div>
  36. {/volist}
  37. </div>
  38. </td>
  39. </tr>
  40. {/notempty}
  41. </table>
  42. <h3 class="py-3">付款信息</h3>
  43. <form class="layui-form">
  44. <table class="layui-table layui-table-form">
  45. <tr>
  46. <td class="layui-td-gray">付款状态</td>
  47. <td>
  48. {if condition="($detail.pay_status == 0)"}
  49. <span class="red">未付款</span>
  50. {elseif condition="($detail.pay_status == 1)"}
  51. <span class="blue">部分付款</span>
  52. {elseif condition="($detail.pay_status == 2)"}
  53. <span class="green">全部付款</span>
  54. {/if}
  55. </td>
  56. <td class="layui-td-gray-2">未付款金额(元)</td>
  57. <td style="color:#FF5722">{$detail.not_pay}</td>
  58. <td class="layui-td-gray-2">已付款金额(元)</td>
  59. <td style="color:#1E9FFF">{$detail.pay_amount}</td>
  60. </tr>
  61. <tr>
  62. <td class="layui-td-gray">付款记录</td>
  63. <td colspan="5">
  64. <table id="interfix" class="layui-table layui-table-min" style="margin:0">
  65. <tr>
  66. <th style="width:200px;">付款日期</th>
  67. <th style="width:200px;">付款金额(元)</th>
  68. <th>备注</th>
  69. <th style="width:100px;">操作</th>
  70. </tr>
  71. {empty name="$detail.payment"}
  72. <tr class="none_interfix">
  73. <td colspan="4" style="text-align: center;">暂无付款记录</td>
  74. </tr>
  75. {else/}
  76. {volist name="$detail.payment" id="vo"}
  77. <tr class="more_interfix">
  78. <td>{$vo.pay_time | date='Y-m-d'}</td>
  79. <td>{$vo.amount}</td>
  80. <td style="text-align:left;">{$vo.remarks}</td>
  81. <td><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove" data-id="{$vo.id}" data-tiid="{$id}">删除</a></td>
  82. </tr>
  83. {/volist}
  84. {/empty}
  85. </table>
  86. {if condition="($detail.pay_status lt 2)"}
  87. <div class="pt-3"><button class="layui-btn layui-btn-sm" type="button" id="addInterfix">+ 添加付款记录</button></div>
  88. {/if}
  89. </td>
  90. </tr>
  91. </table>
  92. <div class="pt-3">
  93. <input name="ticket_id" id="ticket_id" type="hidden" value="{$id}">
  94. <input name="pay_type" id="pay_type" type="hidden" value="1">
  95. {if condition="($detail.pay_status lt 2)"}
  96. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="webform">保存付款记录</button>
  97. <button type="reset" class="layui-btn layui-btn-primary">重置</button>
  98. {/if}
  99. {if condition="($detail.pay_status eq 0)"}
  100. <span class="layui-btn layui-btn-danger" lay-event="all">全部付款</span>
  101. {/if}
  102. {if condition="($detail.pay_status eq 1)"}
  103. <span class="layui-btn layui-btn-danger" lay-event="all">剩余部分全部付款</span>
  104. {/if}
  105. {if condition="($detail.pay_status gt 0)"}
  106. <span class="layui-btn layui-btn-warm" lay-event="refue">全部反付款</span>
  107. {/if}
  108. </div>
  109. </form>
  110. <input type="hidden" name="id" value="{$detail.id}">
  111. </div>
  112. {/block}
  113. <!-- /主体 -->
  114. <!-- 脚本 -->
  115. {block name="script"}
  116. <script>
  117. const moduleInit = ['tool'];
  118. function gouguInit() {
  119. var form = layui.form,tool=layui.tool,laydate = layui.laydate;
  120. //添加表格行
  121. $('#addInterfix').on('click',function(){
  122. var html = '';
  123. html += '<tr class="more_interfix">';
  124. html += '<td><input type="text" class="layui-input tool-time" name="pay_time[]" readonly lay-verify="required" lay-reqText="请选择付款日期">';
  125. html += '<td><input type="text" class="layui-input" name="amount[]" lay-verify="required|number" lay-reqText="请输入付款金额,数字"></td>';
  126. html += '<td><input type="text" class="layui-input" name="remarks[]"></td>';
  127. html += '<td><a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a></td>';
  128. html += '</tr>';
  129. $("#interfix").find('.none_interfix').remove();
  130. $("#interfix").append(html);
  131. form.render();
  132. });
  133. //删除表格
  134. $('#interfix').on('click', '[lay-event="del"]', function() {
  135. $(this).parents(".more_interfix").remove();
  136. if($("#interfix").find('.more_interfix').length<1){
  137. $("#interfix").append('<tr class="none_interfix"><td colspan="4" style="text-align: center;">暂无付款记录</td></tr>');
  138. }
  139. });
  140. //删除付款记录
  141. $('#interfix').on('click', '[lay-event="remove"]', function() {
  142. var that=$(this);
  143. var id=that.data('id');
  144. var ticket_id=that.data('tiid');
  145. layer.confirm('确定要删除该付款记录?', {icon: 3, title:'提示'}, function(index){
  146. $.ajax({
  147. url: "/finance/payment/del",
  148. type:'post',
  149. data:{id:id,ticket_id:ticket_id},
  150. success:function(res){
  151. layer.msg(res.msg);
  152. if(res.code==0){
  153. parent.layui.pageTable.reload();
  154. window.setTimeout(function(){
  155. location.reload();
  156. },1200)
  157. }
  158. }
  159. })
  160. })
  161. });
  162. //监听提交
  163. form.on('submit(webform)', function(data){
  164. console.log(data.field);
  165. if($("#interfix").find('.tool-time').length<1){
  166. layer.msg('请添加付款记录');
  167. return false;
  168. }
  169. $.ajax({
  170. url: "/finance/payment/add",
  171. type:'post',
  172. data:data.field,
  173. success:function(res){
  174. layer.msg(res.msg);
  175. if(res.code==0){
  176. parent.layui.pageTable.reload();
  177. window.setTimeout(function(){
  178. location.reload();
  179. },1200)
  180. }
  181. }
  182. })
  183. return false;
  184. });
  185. $('.layui-form').on('click', '[lay-event="refue"]', function () {
  186. var ticket_id=$('#ticket_id').val();
  187. layer.confirm('确定要全部反付款?', {icon: 3, title:'提示'}, function(index){
  188. $.ajax({
  189. url: "/finance/payment/add",
  190. type:'post',
  191. data:{ticket_id:ticket_id,pay_type:3},
  192. success:function(res){
  193. layer.msg(res.msg);
  194. if(res.code==0){
  195. parent.layui.pageTable.reload();
  196. window.setTimeout(function(){
  197. location.reload();
  198. },1200)
  199. }
  200. }
  201. })
  202. })
  203. return false;
  204. })
  205. $('.layui-form').on('click', '[lay-event="all"]', function () {
  206. var ticket_id=$('#ticket_id').val();
  207. layer.confirm('确定已经全部付款?', {icon: 3, title:'提示'}, function(idx){
  208. layer.prompt({title: '选择付款日期', formType: 3,value :'',success: function(layero, index){
  209. $('.layui-layer-input').attr('readonly',true);
  210. lay('.layui-layer-input').each(function () {
  211. laydate.render({
  212. elem: this,
  213. trigger: 'click',
  214. showBottom:false
  215. });
  216. });
  217. layer.close(idx);
  218. }
  219. }, function(pay_time, index){
  220. if(pay_time ==''){
  221. layer.msg('选择付款日期');
  222. return false;
  223. }
  224. $.ajax({
  225. url: "/finance/payment/add",
  226. type:'post',
  227. data:{ticket_id:ticket_id,pay_type:2,pay_time:pay_time},
  228. success:function(res){
  229. layer.msg(res.msg);
  230. if(res.code==0){
  231. parent.layui.pageTable.reload();
  232. window.setTimeout(function(){
  233. location.reload();
  234. },1200)
  235. }
  236. }
  237. })
  238. })
  239. })
  240. return false;
  241. })
  242. }
  243. </script>
  244. {/block}
  245. <!-- /脚本 -->