provider.refill.balance.php 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749
  1. <?php defined('InShopNC') or exit('Access Invalid!'); ?>
  2. <style>
  3. .page .fixed-bar .item-title h3 {
  4. margin-top: 18px !important;
  5. margin-bottom: 10px !important;
  6. font-weight: 700 !important;
  7. }
  8. .tab-base li span {
  9. font-size: 12px !important;
  10. }
  11. .layui-form-select .layui-input {
  12. height: 26px;
  13. }
  14. input::placeholder {
  15. color: #333;
  16. }
  17. .row_q ul li {
  18. height: 30px;
  19. line-height: 30px;
  20. }
  21. .row_w {
  22. float: left;
  23. margin-right: 40px;
  24. }
  25. #createDate,
  26. #createItemStartDate,
  27. #createItemEndDate {
  28. height: 30px;
  29. }
  30. .createTaskDate {
  31. display: flex;
  32. align-items: center;
  33. margin-bottom: 10px;
  34. }
  35. .createTaskDate span {
  36. white-space: nowrap;
  37. margin-right: 10px;
  38. }
  39. .table {
  40. width: 100%;
  41. table-layout: fixed;
  42. display: block;
  43. max-height: calc(100vh - 220px);
  44. overflow: auto;
  45. white-space: nowrap;
  46. }
  47. .table thead tr:first-child {
  48. position: sticky;
  49. top: -1px;
  50. left: 0;
  51. background: #fff;
  52. box-shadow: 0 2px 5px rgb(0 0 0 / 10%);
  53. z-index: 10;
  54. }
  55. .table thead tr th:first-child,
  56. .table tbody tr td:first-child {
  57. position: sticky;
  58. left: 0;
  59. background: #fff;
  60. z-index: 1;
  61. width: 30px;
  62. box-shadow: 2px 0 2px rgba(0, 0, 0, 0.1);
  63. }
  64. .table tbody tr:last-child {
  65. border-bottom: 1px dotted #CBE9F3;
  66. }
  67. .table td:last-child,
  68. .table th:last-child {
  69. position: sticky;
  70. right: 0;
  71. background: #fff;
  72. box-shadow: -2px 0 2px #cbe9f3;
  73. width: 170px;
  74. height: 30px;
  75. line-height: 30px;
  76. display: inline-block;
  77. }
  78. .editStatTypeTable {
  79. display: block;
  80. /* width: 500px; */
  81. height: calc(100vh - 200px);
  82. overflow: auto;
  83. table-layout: fixed;
  84. border-spacing: 0;
  85. border-collapse: collapse;
  86. }
  87. .editStatTypeTable thead tr {
  88. position: sticky;
  89. top: -1px;
  90. left: 0;
  91. background: #fff;
  92. box-shadow: 0 1px 5px rgb(0 0 0 / 10%);
  93. z-index: 1;
  94. }
  95. .editStatTypeTable th,
  96. .editStatTypeTable td {
  97. height: 26px;
  98. padding: 6px !important;
  99. border: 1px solid #CBE9F3;
  100. }
  101. .editStatTypeTable label {
  102. display: block;
  103. }
  104. .layui-form-label {
  105. width: 90px !important;
  106. }
  107. </style>
  108. <div class="page">
  109. <div class="fixed-bar">
  110. <div class="item-title">
  111. <h3>对账管理</h3>
  112. <ul class="tab-base">
  113. <li><a href="index.php?act=OrderStats&op=index&type=system"><span>平台对账记录</span></a></li>
  114. <li><a href="index.php?act=OrderStats&op=index&type=provider"><span>上游对账记录</span></a></li>
  115. <li><a href="index.php?act=OrderStats&op=index&type=merchant"><span>下游对账记录</span></a></li>
  116. <li><a href="index.php?act=OrderStats&op=refill_balance&type=system"><span>平台结余记录</span></a></li>
  117. <li><a href="JavaScript:void(0);" class="current"><span>上游结余记录</span></a></li>
  118. <li><a href="index.php?act=OrderStats&op=refill_balance&type=merchant"><span>下游结余记录</span></a></li>
  119. </ul>
  120. </div>
  121. </div>
  122. <div class="fixed-empty"></div>
  123. <form method="get" name="formSearch" id="formSearch" class="layui-form">
  124. <input type="hidden" value="OrderStats" name="act">
  125. <input type="hidden" value="refill_balance" name="op">
  126. <input type="hidden" value="provider" name="type">
  127. <input type="hidden" name="cid" value="" />
  128. <input type="hidden" name="default_no_mch" value="<?php echo $_GET['cid']; ?>" />
  129. <table class="tb-type1 noborder search">
  130. <tbody>
  131. <tr>
  132. <th><label for="query_start_time">统计时间</label></th>
  133. <td>
  134. <input class="txt date" type="text" value="<?php echo $_GET['query_start_time']; ?>" id="startTime" name="query_start_time" autocomplete="off" style="width:120px" />
  135. <label for="query_start_time">~</label>
  136. <input class="txt date" type="text" value="<?php echo $_GET['query_end_time']; ?>" id="endTime" name="query_end_time" autocomplete="off" style="width:120px" />
  137. </td>
  138. <th><label>统计日期类型</label></th>
  139. <td>
  140. <select name="order_time_type" id="order_time_type">
  141. <option value="">请选择...</option>
  142. <option value="notify_time" <?php if ($_GET['order_time_type'] == 'notify_time') {
  143. echo 'selected';
  144. } ?>>回调日期</option>
  145. <option value="order_time" <?php if ($_GET['order_time_type'] == 'order_time') {
  146. echo 'selected';
  147. } ?>>下单日期</option>
  148. </select>
  149. </td>
  150. <th><label>通道名称</label></th>
  151. <td>
  152. <div id="selest_nc"></div>
  153. </td>
  154. <td><a href="javascript:void(0);" id="ncsubmit" class="btn-search " title="<?php echo $lang['nc_query']; ?>">&nbsp;</a>
  155. <?php if ($output['mch_name'] != '') { ?>
  156. <a href="index.php?act=OrderStats&op=index" class="btns " title="<?php echo $lang['nc_cancel_search']; ?>"><span><?php echo $lang['nc_cancel_search']; ?></span></a>
  157. <?php } ?>
  158. </td>
  159. <td>
  160. <a href="javascript:void(0);" id="editStatType" class="btn">
  161. <span>编辑统计类型</span>
  162. </a>
  163. </td>
  164. </tr>
  165. <tr>
  166. <td>
  167. <a href="#" class="btn export" title="所选中记录导出">
  168. <span><i class="icon-export"></i>导出</span>
  169. </a>
  170. </td>
  171. </tr>
  172. </tbody>
  173. </table>
  174. </form>
  175. <!-- <table class="table tb-type2" id="prompt">-->
  176. <!-- <tbody>-->
  177. <!-- <tr class="space odd">-->
  178. <!-- <th colspan="12"><div class="title">-->
  179. <!-- <h5>总量统计</h5>-->
  180. <!-- <span class="arrow"></span></div></th>-->
  181. <!-- </tr>-->
  182. <!-- <tr>-->
  183. <!-- <td class="row_q">-->
  184. <!-- <ul class="row_w">-->
  185. <!-- <li>回调日期统计</li>-->
  186. <!-- <li class="lineLi" style="color:#000;">总计成功订单量: --><?php //echo $output['total_stats']['notify_time']['success_count_total'] ?? 0
  187. ?>
  188. <!--</li>-->
  189. <!-- <li class="lineLi" style="color:#000;">总计充值中订单量: --><?php //echo $output['total_stats']['notify_time']['send_count_total'] ?? 0
  190. ?>
  191. <!--</li>-->
  192. <!-- <li class="lineLi" style="color:#000;">总计成功订单金额:--><?php //echo $output['total_stats']['notify_time']['success_refill_amounts_total'] ?? 0
  193. ?>
  194. <!--</li>-->
  195. <!-- <li class="lineLi" style="color:#000;">总计下游扣款金额:--><?php //echo $output['total_stats']['notify_time']['success_mch_amounts_toatl'] ?? 0
  196. ?>
  197. <!--</li>-->
  198. <!-- <li class="lineLi" style="color:#000;">总计上游扣款金额:--><?php //echo $output['total_stats']['notify_time']['success_channel_amounts_total'] ?? 0
  199. ?>
  200. <!--</li>-->
  201. <!-- </ul>-->
  202. <!-- <ul>-->
  203. <!-- <li>下单日期统计</li>-->
  204. <!-- <li class="lineLi" style="color:#000;">总计成功订单量: --><?php //echo $output['total_stats']['order_time']['success_count_total'] ?? 0
  205. ?>
  206. <!--</li>-->
  207. <!-- <li class="lineLi" style="color:#000;">总计充值中订单量: --><?php //echo $output['total_stats']['order_time']['send_count_total'] ?? 0
  208. ?>
  209. <!--</li>-->
  210. <!-- <li class="lineLi" style="color:#000;">总计成功订单金额:--><?php //echo $output['total_stats']['order_time']['success_refill_amounts_total'] ?? 0
  211. ?>
  212. <!--</li>-->
  213. <!-- <li class="lineLi" style="color:#000;">总计下游扣款金额:--><?php //echo $output['total_stats']['order_time']['success_mch_amounts_toatl'] ?? 0
  214. ?>
  215. <!--</li>-->
  216. <!-- <li class="lineLi" style="color:#000;">总计上游扣款金额:--><?php //echo $output['total_stats']['order_time']['success_channel_amounts_total'] ?? 0
  217. ?>
  218. <!--</li>-->
  219. <!-- </ul>-->
  220. <!-- </td>-->
  221. <!-- </tr>-->
  222. <!-- </tbody>-->
  223. <!-- </table>-->
  224. <script>
  225. var stats_list_data = <?php echo json_encode($output['stats_list']) ?>
  226. </script>
  227. <form method="post" id="merchant_name_form">
  228. <input type="hidden" name="form_submit" value="ok" />
  229. <div>
  230. <table class="table tb-type2">
  231. <thead>
  232. <tr class="thead">
  233. <th class="align-center" id="selectAll"><input type="checkbox" name="chbox" value=""></th>
  234. <th>记录ID</th>
  235. <th>父ID</th>
  236. <th>主体名称</th>
  237. <th>主体ID</th>
  238. <th class="align-center">统计开始日期</th>
  239. <th class="align-center">统计结束日期</th>
  240. <th class="align-center">成功订单数</th>
  241. <th class="align-center">成功金额</th>
  242. <th class="align-center">下游金额</th>
  243. <th class="align-center">上游金额</th>
  244. <th class="align-center">利润</th>
  245. <th class="align-center">银行转入</th>
  246. <th class="align-center">银行转出</th>
  247. <th class="align-center">返销金额</th>
  248. <th class="align-center">异常金额</th>
  249. <th class="align-center">累计结余</th>
  250. <th class="align-center">本次结余</th>
  251. <th class="align-center">更新日期</th>
  252. <th class="align-center">确认状态</th>
  253. <th class="align-center">统计日期类型</th>
  254. <th class="align-center">备注</th>
  255. <th class="align-center">操作</th>
  256. </tr>
  257. </thead>
  258. <tbody>
  259. <?php if (!empty($output['stats_list']) && is_array($output['stats_list'])) { ?>
  260. <?php foreach ($output['stats_list'] as $k => $v) { ?>
  261. <tr class="trFlex">
  262. <td class="align-center">
  263. <input type="checkbox" id="checkBoxList" name="checkbox" value="<?php echo $v['balance_id']; ?>">
  264. </td>
  265. <td><?php echo $v['balance_id']; ?></td>
  266. <td><?php echo $v['parent_id']; ?></td>
  267. <td><?php echo $v['cname']; ?></td>
  268. <td><?php echo $v['cid']; ?></td>
  269. <td class="align-center"><?php echo $v['start_stamp'] ? date('Y-m-d H:i', $v['start_stamp']) : '/'; ?></td>
  270. <td class="align-center"><?php echo $v['end_text']; ?></td>
  271. <td class="align-center"><?php echo $v['success_count']; ?></td>
  272. <td class="align-center"><?php echo $v['refill_amount']; ?></td>
  273. <td class="align-center"><?php echo $v['mch_amount']; ?></td>
  274. <td class="align-center"><?php echo $v['channel_amount']; ?></td>
  275. <td class="align-center"><?php echo $v['profit_amount']; ?></td>
  276. <td class="align-center"><?php echo $v['transfer_in']; ?></td>
  277. <td class="align-center"><?php echo $v['transfer_out']; ?></td>
  278. <td class="align-center"><?php echo $v['refund_amount']; ?></td>
  279. <td class="align-center"><?php echo $v['except_amount']; ?></td>
  280. <td class="align-center"><?php echo $v['accumulate_balance']; ?></td>
  281. <td class="align-center"><?php echo $v['balance']; ?></td>
  282. <td class="align-center"><?php echo date("Y-m-d H:i:s", $v['update_time']); ?></td>
  283. <td class="align-center">
  284. <?php if ($v['confirmed'] == 0) { ?>
  285. <span style="color: #fd9d0e">未确认</span>
  286. <?php } else { ?>
  287. <span style="color: #0bb20c">已确认</span>
  288. <?php } ?>
  289. </td>
  290. <td class="align-center"><?php echo $output['order_time_type_text'][$v['time_type']]; ?></td>
  291. <td class="align-center"><?php echo $v['remark']; ?></td>
  292. <td style="text-align: center;color:#0D93BF;">
  293. <a href="javascript:void(0);" class="item_create_btn" style="color:#0D93BF;">新建</a>
  294. <span> | </span>
  295. <a href="javascript:void(0);" class="handleBtn" data-index="<?php echo $k ?>" style="color:#0D93BF;">编辑</a>
  296. <span>|</span>
  297. <a style="margin:0 5px;color:#0D93BF;" href="index.php?act=orderstats&op=refill_balance_rebuild&balance_id=<?php echo $v['balance_id']; ?>" data-index="<?php echo $k ?>" class="rebuildBtn">重新生成</a>
  298. <?php if ($v['confirmed'] == 0) { ?>
  299. <span>|</span>
  300. <a style="color:#0D93BF;" href="index.php?act=orderstats&op=refill_balance_confirm&balance_id=<?php echo $v['balance_id']; ?>" data-index="<?php echo $k ?>" class="checkBtn">确认</a>
  301. <?php } ?>
  302. </td>
  303. <!-- <td class="align-center w200">-->
  304. <!-- <a href="index.php?act=merchant&op=OrderStatsReload&stat_id=--><?php //echo $v['stat_id'];
  305. ?>
  306. <!--">重新统计</a>-->
  307. <!-- |<a href="index.php?act=merchant&op=OrderStatsCheck&stat_id=--><?php //echo $v['stat_id']
  308. ?>
  309. <!--">编辑</a>-->
  310. <!-- </td>-->
  311. </tr>
  312. <?php } ?>
  313. <?php } else { ?>
  314. <tr class="no_data">
  315. <td colspan="22"><?php echo $lang['nc_no_record']; ?></td>
  316. </tr>
  317. <?php } ?>
  318. </tbody>
  319. <!-- <tfoot>
  320. <tr class="tfoot">
  321. <td></td>
  322. </tr>
  323. </tfoot> -->
  324. </table>
  325. <div class="pagination"><?php echo $output['show_page']; ?></div>
  326. </div>
  327. </form>
  328. </div>
  329. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/dialog/dialog.js" id="dialog_js" charset="utf-8"></script>
  330. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery-ui/jquery.ui.js"></script>
  331. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/ajaxfileupload/ajaxfileupload.js"></script>
  332. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.Jcrop/jquery.Jcrop.js"></script>
  333. <link href="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.Jcrop/jquery.Jcrop.min.css" rel="stylesheet" type="text/css" id="cssfile2" />
  334. <script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL; ?>/js/xm-select.js"></script>
  335. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/js/jquery.edit.js" charset="utf-8"></script>
  336. <script type="text/javascript" src="<?php echo RESOURCE_SITE_URL; ?>/laydate/laydate.js"></script>
  337. <script type="text/javascript" src="<?php echo ADMIN_TEMPLATES_URL; ?>/layui/layui.js"></script>
  338. <link rel="stylesheet" type="text/css" href="<?php echo ADMIN_TEMPLATES_URL; ?>/layui/css/layui.css" />
  339. <script>
  340. $(function() {
  341. $('#create').on('click', function() {
  342. var selectEndDate = '';
  343. layui.use(['layer', 'laydate'], function() {
  344. const selectDateHTML = '<label class="createTaskDate"><span>结束日期:</span><input type="text" class="layui-input" id="createDate"></label>'
  345. layer.confirm(selectDateHTML, {
  346. title: '新建'
  347. }, function(index) {
  348. console.log('确认')
  349. layer.close(index);
  350. }, function() {
  351. console.log('取消')
  352. });
  353. laydate.render({
  354. elem: '#createDate',
  355. type: 'datetime',
  356. done: function(value) {
  357. console.log('选中的日期...', value)
  358. selectEndDate = value;
  359. }
  360. });
  361. })
  362. //
  363. })
  364. $('.item_create_btn').on('click', function() {
  365. var selectStartDate = '';
  366. var selectEndDate = '';
  367. var balance_id = $(this).attr('data-balance_id');
  368. layui.use(['layer', 'laydate'], function() {
  369. const selectDateHTML = `<label class="createTaskDate"><span>开始日期:</span><input type="text" class="layui-input" id="createItemStartDate"></label>
  370. <label class="createTaskDate"><span>结束日期:</span><input type="text" class="layui-input" id="createItemEndDate"></label>`
  371. layer.confirm(selectDateHTML, {
  372. title: '新建'
  373. }, function(index) {
  374. console.log('确认')
  375. if (!selectStartDate) {
  376. layer.msg('请选择开始日期');
  377. return;
  378. }
  379. if (!selectEndDate) {
  380. layer.msg('请选择结束日期');
  381. return;
  382. }
  383. console.log(balance_id, selectStartDate, selectEndDate)
  384. var index = layer.load();
  385. $.ajax({
  386. url: `index.php?act=orderstats&op=refill_balance_create`,
  387. data: {
  388. balance_id,
  389. selectStartDate,
  390. selectEndDate
  391. },
  392. dataType: 'json',
  393. mothod: 'get',
  394. success: function(res) {
  395. layer.close(index);
  396. console.log('success', res);
  397. if (res.code) {
  398. layer.msg(res.msg)
  399. } else {
  400. layer.alert(res.msg)
  401. }
  402. }
  403. })
  404. layer.close(index);
  405. }, function() {
  406. console.log('取消')
  407. });
  408. laydate.render({
  409. elem: '#createItemStartDate',
  410. type: 'datetime',
  411. done: function(value) {
  412. console.log('选中的开始日期...', value)
  413. selectStartDate = value;
  414. }
  415. });
  416. laydate.render({
  417. elem: '#createItemEndDate',
  418. type: 'datetime',
  419. done: function(value) {
  420. console.log('选中的结束日期...', value)
  421. selectEndDate = value;
  422. }
  423. });
  424. })
  425. })
  426. $('#ncsubmit').click(function() {
  427. let selectArr = selest_nc.getValue();
  428. let selectStr = ''
  429. for (let i = 0; i < selectArr.length; i++) {
  430. selectStr += selectArr[i].value + ','
  431. }
  432. selectStr = selectStr.substr(0, selectStr.length - 1)
  433. $('input[name="cid"]').val(selectStr);
  434. $('#formSearch').submit();
  435. $('input[name="cid"]').val('');
  436. });
  437. // 日期选择器
  438. laydate.render({
  439. elem: '#startTime',
  440. type: 'datetime'
  441. });
  442. laydate.render({
  443. elem: '#endTime',
  444. type: 'datetime'
  445. });
  446. // 表格hover时背景
  447. $('.trFlex').each(function() {
  448. $(this).hover(function() {
  449. $(this)[0].style.backgroundColor = '#cbe9f3'
  450. }, function() {
  451. $(this)[0].style.backgroundColor = '#fff'
  452. })
  453. })
  454. //多选
  455. let selest_nc
  456. let default_no_mch = $('input[name="default_no_mch"]').val().split(',');
  457. $.get('index.php?act=refill_order&op=provider_data', function(data) {
  458. data = JSON.parse(data)
  459. if (default_no_mch) {
  460. for (let index = 0; index < default_no_mch.length; index++) {
  461. for (let j = 0; j < data.length; j++) {
  462. if (default_no_mch[index] == data[j].value) {
  463. data[j].selected = true
  464. }
  465. }
  466. }
  467. }
  468. selest_nc = xmSelect.render({
  469. el: '#selest_nc',
  470. size: 'mini',
  471. filterable: true,
  472. style: {
  473. minHeight: '27px',
  474. lineHeight: '27px',
  475. marginLeft: '4px',
  476. width: '250px'
  477. },
  478. language: 'zn',
  479. data: data
  480. })
  481. })
  482. $('#selectAll').click(function() {
  483. if ($("input[name='chbox']").is(':checked')) {
  484. $("input[name='checkbox']").each(function() {
  485. this.checked = true;
  486. })
  487. } else {
  488. $("input[name='checkbox']").each(function() {
  489. this.checked = false;
  490. })
  491. }
  492. })
  493. $('.export').click(function() {
  494. layer.confirm('您确定要导出所选记录吗', {
  495. btn: ['确定', '取消'],
  496. title: '记录导出'
  497. }, function() {
  498. let arr = [];
  499. $("input:checkbox:checked").each(function(i) {
  500. arr[i] = $(this).val();
  501. })
  502. let str = arr.join(",");
  503. let strr = str.substring(0, 1);
  504. let number = Number(strr);
  505. if (isNaN(number)) {
  506. let strrr = str.substring(1, str.length);
  507. window.location.href = `index.php?act=orderstats&op=refill_balance_export&balance_ids= ${strrr ? strrr : ''}`
  508. } else if (!isNaN(number) && str !== '') {
  509. window.location.href = `index.php?act=orderstats&op=refill_balance_export&balance_ids= ${str ? str : ''}`
  510. } else {
  511. layer.msg('请还没有任何操作,请先选择');
  512. }
  513. }, function() {
  514. layer.msg('取消成功');
  515. });
  516. })
  517. $('#editStatType').click(function() {
  518. $.get('index.php?act=OrderStats&op=balance_cfg_data&type=provider', function(res) {
  519. console.log('provider_data', JSON.parse(res));
  520. if (res) {
  521. const datas = JSON.parse(res);
  522. let tableHTML = `<form id="editStatTypeForm" method="post" action="index.php?act=OrderStats&op=refill_balance_stat_cfg">
  523. <div style="width:500px;">
  524. <table class="editStatTypeTable">
  525. <input type="hidden" value="provider" name="type">
  526. <thead>
  527. <th>主体名称</th>
  528. <th style="width:100px;">回调时间</th>
  529. <th style="width:100px;">下单时间</th>
  530. </thead>`;
  531. datas.map((item, index) => {
  532. tableHTML += `<tr>
  533. <td>${item.name}</td>
  534. <td style="width:100px;">
  535. <label>
  536. <input ${item.order_time_type.indexOf('order_time') >= 0 ? 'checked':''} type="checkbox" name="statType[${item.value}][]" value="order_time"/>
  537. </label>
  538. </td>
  539. <td style="width:100px;">
  540. <label>
  541. <input ${item.order_time_type.indexOf('notify_time') >= 0 ? 'checked':''} type="checkbox" name="statType[${item.value}][]" value="notify_time"/>
  542. </label>
  543. </td>
  544. </tr>`
  545. })
  546. tableHTML += '</table></div></form>'
  547. layui.use('layer', function() {
  548. var layer = layui.layer;
  549. layer.open({
  550. btn: ['确定', '取消'],
  551. yes: function() {
  552. $('#editStatTypeForm').submit();
  553. },
  554. btn2: function() {
  555. console.log('取消');
  556. },
  557. title: '编辑统计类型',
  558. content: tableHTML
  559. })
  560. })
  561. }
  562. })
  563. })
  564. $('.handleBtn').on('click', function() {
  565. var index = $(this).attr('data-index');
  566. var data = stats_list_data[index];
  567. layui.use(['form', 'layer', 'laydate'], function() {
  568. var layer = layui.layer;
  569. var form = layui.form;
  570. layer.confirm(`
  571. <div>
  572. <form id="editStatDataForm" class="layui-form" method="post" action="index.php?act=Orderstats&op=refill_balance_edit">
  573. <input type="hidden" value="${data.balance_id}" name="balance_id">
  574. <div class="layui-form-item">
  575. <div class="layui-inline">
  576. <label class="layui-form-label">统计开始日期:</label>
  577. <div class="layui-input-inline">
  578. <input type="text" value="${data.start_stamp}" style="height:38px;" name="start_stamp" required lay-verify="required" placeholder="统计开始日期" autocomplete="off" class="layui-input" id="editItemStartDate">
  579. </div>
  580. </div>
  581. <div class="layui-inline">
  582. <label class="layui-form-label">统计结束日期:</label>
  583. <div class="layui-input-inline">
  584. <input type="text" value="${data.end_text}" style="height:38px;" name="end_text" required lay-verify="required" placeholder="统计结束日期" autocomplete="off" class="layui-input" id="editItemEndDate">
  585. </div>
  586. </div>
  587. </div>
  588. <div class="layui-form-item">
  589. <div class="layui-inline">
  590. <label class="layui-form-label">成功订单数:</label>
  591. <div class="layui-input-inline">
  592. <input type="text" value="${data.success_count}" style="height:38px;" name="success_count" required lay-verify="required" placeholder="成功订单数" autocomplete="off" class="layui-input">
  593. </div>
  594. </div>
  595. <div class="layui-inline">
  596. <label class="layui-form-label">成功金额:</label>
  597. <div class="layui-input-inline">
  598. <input type="text" value="${data.refill_amount}" style="height:38px;" name="refill_amount" required lay-verify="required" placeholder="成功金额" autocomplete="off" class="layui-input">
  599. </div>
  600. </div>
  601. </div>
  602. <div class="layui-form-item">
  603. <div class="layui-inline">
  604. <label class="layui-form-label">下游金额:</label>
  605. <div class="layui-input-inline">
  606. <input type="text" value="${data.mch_amount}" style="height:38px;" name="mch_amount" required lay-verify="required" placeholder="下游金额" autocomplete="off" class="layui-input">
  607. </div>
  608. </div>
  609. <div class="layui-inline">
  610. <label class="layui-form-label">上游金额:</label>
  611. <div class="layui-input-inline">
  612. <input type="text" value="${data.channel_amount}" style="height:38px;" name="channel_amount" required lay-verify="required" placeholder="上游金额" autocomplete="off" class="layui-input">
  613. </div>
  614. </div>
  615. </div>
  616. <div class="layui-form-item">
  617. <div class="layui-inline">
  618. <label class="layui-form-label">利润:</label>
  619. <div class="layui-input-inline">
  620. <input type="text" value="${data.profit_amount}" style="height:38px;" name="profit_amount" required lay-verify="required" placeholder="利润" autocomplete="off" class="layui-input">
  621. </div>
  622. </div>
  623. <div class="layui-inline">
  624. <label class="layui-form-label">返销金额:</label>
  625. <div class="layui-input-inline">
  626. <input type="text" value="${data.refund_amount}" style="height:38px;" name="refund_amount" required lay-verify="required" placeholder="返销金额" autocomplete="off" class="layui-input">
  627. </div>
  628. </div>
  629. </div>
  630. <div class="layui-form-item">
  631. <div class="layui-inline">
  632. <label class="layui-form-label">异常金额:</label>
  633. <div class="layui-input-inline">
  634. <input type="text" value="${data.except_amount}" style="height:38px;" name="except_amount" required lay-verify="required" placeholder="异常金额" autocomplete="off" class="layui-input">
  635. </div>
  636. </div>
  637. <div class="layui-inline">
  638. <label class="layui-form-label">累计结余:</label>
  639. <div class="layui-input-inline">
  640. <input type="text" value="${data.accumulate_balance}" style="height:38px;" name="accumulate_balance" required lay-verify="required" placeholder="累计结余" autocomplete="off" class="layui-input">
  641. </div>
  642. </div>
  643. </div>
  644. <div class="layui-form-item">
  645. <div class="layui-inline">
  646. <label class="layui-form-label">本次结余:</label>
  647. <div class="layui-input-inline">
  648. <input type="text" value="${data.balance}" style="height:38px;" name="balance" required lay-verify="required" placeholder="本次结余" autocomplete="off" class="layui-input">
  649. </div>
  650. </div>
  651. <div class="layui-inline">
  652. <label class="layui-form-label">备注:</label>
  653. <div class="layui-input-inline">
  654. <input type="text" value="${data.remark}" style="height:38px;" name="remark" required lay-verify="required" placeholder="备注" autocomplete="off" class="layui-input">
  655. </div>
  656. </div>
  657. </div>
  658. </form>
  659. </div>`, {
  660. area: '800px',
  661. title: '编辑'
  662. }, function(index) {
  663. $('#editStatDataForm').submit();
  664. })
  665. // layer.open({
  666. // area: '500px',
  667. // type: 1,
  668. // title: '编辑',
  669. // content:
  670. // })
  671. form.render();
  672. laydate.render({
  673. elem: '#editItemStartDate',
  674. type: 'datetime',
  675. done: function(value) {
  676. console.log('选中的开始日期...', value)
  677. selectStartDate = value;
  678. }
  679. });
  680. laydate.render({
  681. elem: '#editItemEndDate',
  682. type: 'datetime',
  683. done: function(value) {
  684. console.log('选中的结束日期...', value)
  685. selectEndDate = value;
  686. }
  687. });
  688. })
  689. })
  690. });
  691. </script>