index.php 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548
  1. <?php
  2. /* @var $this \yii\web\View */
  3. /* @var $content string */
  4. use yii\helpers\Html;
  5. use yii\helpers\Url;
  6. /** @var \backend\models\MemberIdentity $identity */
  7. $identity = Yii::$app->getUser()->getIdentity(false);
  8. $this->title = '入金';
  9. ?>
  10. <?php $this->beginBlock('header_script'); ?>
  11. <link href="<?= STATIC_URL ?>/ui/css/plugins/dataTables/datatables.min.css" rel="stylesheet">
  12. <style>
  13. label.error {
  14. display: none !important;
  15. }
  16. #datatables,#datatables2 {
  17. width: 100% !important;
  18. }
  19. </style>
  20. <?php $this->endBlock(); ?>
  21. <div class="row">
  22. <div class="col-md-3">
  23. <?= $this->render('/common/_left_menu.php') ?>
  24. </div>
  25. <div class="col-md-9">
  26. <div class="tabs-container">
  27. <ul class="nav nav-tabs">
  28. <li class="active" style="background:none;">
  29. <a data-toggle="tab" href="#tab-1"><i class="fa fa-download"></i> 入金</a>
  30. </li>
  31. <li class="" style="background:none;">
  32. <a data-toggle="tab" href="#tab-2"><i class="fa fa-th"></i>入金记录</a>
  33. </li>
  34. </ul>
  35. <div class="tab-content">
  36. <div id="tab-1" class="tab-pane active">
  37. <div class="panel-body">
  38. <br><br><br><br>
  39. <?= Html::beginForm(['/user/pay/outpay'], 'post', ['id' => 'form1', 'target' => '_blank']) ?>
  40. <div class="row">
  41. <div class="col-sm-1"></div>
  42. <div class="col-sm-4">
  43. <div class="input-group">
  44. <span class="input-group-btn">
  45. <button type="button" class="btn btn-primary"><i class="fa fa-dollar"></i> 美元</button>
  46. </span>
  47. <input onkeyup="calculate()" id="usd" type="number" name="amount" class="form-control ">
  48. </div>
  49. </div>
  50. <div class="col-sm-2" style="text-align:center;">
  51. <div class="btn btn-default ">=</div>
  52. </div>
  53. <div class="col-sm-4">
  54. <div class="input-group">
  55. <span class="input-group-btn">
  56. <button type="button" class="btn btn-primary "><i class="fa fa-cny"></i> 人民币</button>
  57. </span>
  58. <input type="number" id="cny" class="form-control " readonly>
  59. </div>
  60. </div>
  61. <div class="col-sm-1"></div>
  62. </div>
  63. <br>
  64. <div class="row">
  65. <div class="col-sm-1"></div>
  66. <div class="col-sm-4">
  67. <div class="input-group">
  68. <span class="input-group-btn">
  69. <button type="button" class="btn btn-primary "><i class="fa fa-dollar"></i> 通道</button>
  70. </span>
  71. <select id="payMethod" name="payMethod" class="form-control ">
  72. <?php foreach ($payMethods as $payMethod) :?>
  73. <option value="<?= $payMethod['name'] ?>"><?= $payMethod['label'] ?></option>
  74. <?php endforeach;?>
  75. </select>
  76. </div>
  77. </div>
  78. <div class="col-sm-2" style="text-align:center;">
  79. </div>
  80. <div class="col-sm-4">
  81. <div class="input-group">
  82. <span class="input-group-btn">
  83. <button type="button" class="btn btn-primary"><i class="fa fa-user"></i> &nbsp;&nbsp;&nbsp;账户</button>
  84. </span>
  85. <select name="login" id="login" class="form-control ">
  86. <option value="">请选择</option>
  87. <?php foreach (explode(',', $identity->logins) as $login):?>
  88. <option value="<?= $login ?>"><?= $login ?></option>
  89. <?php endforeach;?>
  90. </select>
  91. </div>
  92. </div>
  93. <div class="col-sm-1"></div>
  94. </div>
  95. <div id="renren_bank_code" style="display: none">
  96. <br>
  97. <div class="row">
  98. <div class="col-sm-1"></div>
  99. <div class="col-sm-4">
  100. <div class="input-group">
  101. <span class="input-group-btn">
  102. <button type="button" class="btn btn-primary "><i class="fa fa-dollar"></i> 银行</button>
  103. </span>
  104. <select id="renrenBankCode" name="renrenBankCode" class="form-control ">
  105. <option value="">请选择</option>
  106. <option value="102">工商银行</option>
  107. <option value="103">农业银行</option>
  108. <option value="104">中国银行</option>
  109. <option value="105">建设银行</option>
  110. <option value="308">招商银行</option>
  111. <option value="301">交通银行</option>
  112. <option value="305">民生银行</option>
  113. <option value="302">中信银行</option>
  114. <option value="303">光大银行</option>
  115. <option value="309">兴业银行</option>
  116. <option value="4031000">北京银行</option>
  117. <option value="306">广发银行</option>
  118. <option value="304">华夏银行</option>
  119. <option value="403">邮储银行</option>
  120. <option value="310">浦发银行</option>
  121. <option value="4105840">平安银行</option>
  122. <option value="4012900">上海银行</option>
  123. <option value="4233310">杭州银行</option>
  124. <option value="316">浙商银行</option>
  125. <option value="4504520">青岛银行</option>
  126. <option value="4083320">宁波银行</option>
  127. <option value="4341100">天津银行</option>
  128. <option value="4478210">兰州银行</option>
  129. <option value="4243010">南京银行</option>
  130. <option value="4296510">成都银行</option>
  131. <option value="322">上海农商银行</option>
  132. <option value="4021000">北京农村商业银行</option>
  133. </select>
  134. </div>
  135. </div>
  136. <div class="col-sm-2" style="text-align:center;">
  137. </div>
  138. <div class="col-sm-1"></div>
  139. </div>
  140. </div>
  141. <br>
  142. <div id="sand_bank_code" style="display: none">
  143. <br>
  144. <div class="row">
  145. <div class="col-sm-1"></div>
  146. <div class="col-sm-4">
  147. <div class="input-group">
  148. <span class="input-group-btn">
  149. <button type="button" class="btn btn-primary btn-lg"><i class="fa fa-dollar"></i> 银行</button>
  150. </span>
  151. <select id="sandBankCode" name="sandBankCode" class="form-control input-lg">
  152. <option value="">请选择</option>
  153. <option value="01020000" >工商银行</option>
  154. <option value="01050000" selected="selected">建设银行</option>
  155. <option value="01030000">农业银行</option>
  156. <option value="03010000">交通银行</option>
  157. <option value="01040000">中国银行</option>
  158. <option value="03030000">光大银行</option>
  159. <option value="03050000">民生银行</option>
  160. <option value="04031000">北京银行</option>
  161. <option value="03060000">广发银行</option>
  162. <option value="01000000">中国邮储银行</option>
  163. <!--<option value="03090000">兴业银行</option>
  164. <option value="03020000">中信银行</option>
  165. <option value="03080000">招商银行</option>
  166. <option value="03100000">浦发银行</option>
  167. <option value="03070000">平安银行</option>
  168. <option value="03040000">华夏银行</option>
  169. <option value="04083320">宁波银行</option>
  170. <option value="03200000">东亚银行</option>
  171. <option value="04012900">上海银行</option>
  172. <option value="04243010">南京银行</option>
  173. <option value="65012900">上海农商行</option>
  174. <option value="03170000">渤海银行</option>
  175. <option value="64296510">成都银行</option>
  176. <option value="64296511">徽商银行</option>
  177. <option value="04341101">天津银行</option>-->
  178. </select>
  179. </div>
  180. </div>
  181. <div class="col-sm-2" style="text-align:center;">
  182. </div>
  183. <div class="col-sm-1"></div>
  184. </div>
  185. </div>
  186. <div id="kexing_bank_code" style="display: none">
  187. <br>
  188. <div class="row">
  189. <div class="col-sm-1"></div>
  190. <div class="col-sm-4">
  191. <div class="input-group">
  192. <span class="input-group-btn">
  193. <button type="button" class="btn btn-primary btn-lg"><i class="fa fa-dollar"></i> 银行</button>
  194. </span>
  195. <select id="kexingBankCode" name="kexingBankCode" class="form-control input-lg">
  196. <option value="">请选择</option>
  197. <option value="BOC" >中国银行</option>
  198. <option value="ICBC" >工商银行</option>
  199. <option value="CCB">建设银行</option>
  200. <option value="ABC">农业银行</option>
  201. <option value="BOCM">交通银行</option>
  202. <option value="PSBC">邮储银行</option>
  203. <option value="CEBB">光大银行</option>
  204. <option value="CMBC">民生银行</option>
  205. <option value="GDB">广发银行</option>
  206. <option value="CIB">兴业银行</option>
  207. <option value="CNCB">中信银行</option>
  208. <option value="CMB">招商银行</option>
  209. <option value="SPDB">浦发银行</option>
  210. <option value="PAB">平安银行</option>
  211. <option value="HXB">华夏银行</option>
  212. <option value="BOB">北京银行</option>
  213. <option value="BOS">上海银行</option>
  214. <option value="GZCB">广州银行</option>
  215. </select>
  216. </div>
  217. </div>
  218. <div class="col-sm-2" style="text-align:center;">
  219. </div>
  220. <div class="col-sm-1"></div>
  221. </div>
  222. </div>
  223. <br>
  224. <div class="row">
  225. <div class="col-sm-1"></div>
  226. <div class="col-sm-10">
  227. <table class="table invoice-total">
  228. <tbody>
  229. <tr>
  230. <td><strong>账户 :</strong></td>
  231. <td id="loginTd"></td>
  232. </tr>
  233. <tr>
  234. <td><strong>汇率 :</strong></td>
  235. <td><?= isset($rate['sellRate']) ? $rate['sellRate'] : 0 ?></td>
  236. </tr>
  237. <tr>
  238. <td><strong>合计 :</strong></td>
  239. <td id="amount">¥0</td>
  240. </tr>
  241. </tbody>
  242. </table>
  243. <div class="text-right">
  244. <button type="submit" class="btn btn-danger"><i class="fa fa-cny"></i> 马上支付
  245. </button>
  246. </div>
  247. <div class="well m-t"><strong>友情提示:</strong>
  248. 银联入金,1个工作日到账。
  249. </div>
  250. </div>
  251. <div class="col-sm-1"></div>
  252. </div>
  253. <?= Html::endForm() ?>
  254. <br><br>
  255. </div>
  256. </div>
  257. <div id="tab-2" class="tab-pane">
  258. <div class="panel-body">
  259. <div class="table-responsive" style="margin:30px 10px 0px 10px;">
  260. <table id="datatables"
  261. class="table table-striped table-bordered table-hover">
  262. <thead>
  263. <tr>
  264. <th>ID</th>
  265. <th>状态</th>
  266. <th>金额</th>
  267. <th>账户</th>
  268. <th>入金时间</th>
  269. </tr>
  270. </thead>
  271. </table>
  272. </div>
  273. </div>
  274. </div>
  275. </div>
  276. </div>
  277. </div>
  278. </div>
  279. <?php $this->beginBlock('footer_script'); ?>
  280. <script src="<?= STATIC_URL ?>/ui/js/plugins/dataTables/datatables.min.js"></script>
  281. <script src="<?= STATIC_URL ?>/ui/js/plugins/validate/messages.cn.js"></script>
  282. <script>
  283. $('#login').change(function () {
  284. var v = $(this).val();
  285. $('#loginTd').html(v)
  286. });
  287. function calculate() {
  288. var usd = parseFloat($('#usd').val());
  289. var money = isNaN(usd) ? 0 : (usd * <?= isset($rate['sellRate']) ? $rate['sellRate'] : 0 ?>).toFixed(2)
  290. $('#cny').val(money);
  291. $('#amount').html('¥' + money)
  292. }
  293. var changeBank = function () {
  294. var payMethod = $("#payMethod").val();
  295. if (payMethod == 'renren') {
  296. $("#renren_bank_code").attr("style", "display:block");
  297. } else {
  298. $("#renren_bank_code").attr("style", "display:none");
  299. }
  300. if (payMethod == 'sand') {
  301. $("#sand_bank_code").attr("style", "display:block");
  302. } else {
  303. $("#sand_bank_code").attr("style", "display:none");
  304. }
  305. if (payMethod == 'kexing') {
  306. $("#kexing_bank_code").attr("style", "display:block");
  307. } else {
  308. $("#kexing_bank_code").attr("style", "display:none");
  309. }
  310. }
  311. changeBank()
  312. $("#payMethod").on("change", changeBank);
  313. var table,table2;
  314. $(document).ready(function () {
  315. $('#form1').validate({
  316. rules: {
  317. 'amount': {
  318. required: true,
  319. //min:500,
  320. },
  321. 'login': {
  322. required: true
  323. },
  324. "bankCode": {
  325. required: true
  326. },
  327. "huayinBankCode": {
  328. required: true
  329. },
  330. "aotuBankCode": {
  331. required: true
  332. },
  333. "balpalBankCode": {
  334. required: true
  335. }
  336. },
  337. /*messages:{
  338. amount:{
  339. min:"最小入金500美金!",
  340. },
  341. }, */
  342. /* 重写错误显示消息方法 */
  343. showErrors: function(errorMap, errorList) {
  344. var msg = "";
  345. $.each( errorList, function(i,v){
  346. msg += (v.message+"\r\n");
  347. });
  348. if(msg!="") {
  349. toastr.error(msg, "提示");
  350. }
  351. },
  352. onfocusout: false,
  353. onclick:false,
  354. onkeyup:false,
  355. });
  356. table = $('#datatables').DataTable({
  357. 'aLengthMenu': [[20, 50, 100, 500, 999999999], [20, 50, 100, 500, 'ALL']],
  358. language: {
  359. 'sProcessing': '处理中...',
  360. 'sLengthMenu': '显示 _MENU_ 项结果',
  361. 'sZeroRecords': '没有匹配结果',
  362. 'sInfo': '显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项',
  363. 'sInfoEmpty': '显示第 0 至 0 项结果,共 0 项',
  364. 'sInfoFiltered': '(由 _MAX_ 项结果过滤)',
  365. 'sInfoPostFix': '',
  366. 'sSearch': '搜索:',
  367. 'sUrl': '',
  368. 'sEmptyTable': '表中数据为空',
  369. 'sLoadingRecords': '载入中...',
  370. 'sInfoThousands': ',',
  371. 'oPaginate': {
  372. 'sFirst': '首页',
  373. 'sPrevious': '上页',
  374. 'sNext': '下页',
  375. 'sLast': '末页'
  376. },
  377. 'oAria': {
  378. 'sSortAscending': ': 以升序排列此列',
  379. 'sSortDescending': ': 以降序排列此列'
  380. }
  381. },
  382. 'processing': true,
  383. 'serverSide': true,
  384. 'ajax': '<?= Url::to(['ajax']) ?>',
  385. 'order': [[0, 'desc']],
  386. 'columns': [{
  387. 'data': 'id'
  388. }, {
  389. 'data': 'type'
  390. }, {
  391. 'data': 'amount'
  392. }, {
  393. 'data': 'login'
  394. }, {
  395. 'data': 'in_time'
  396. }],
  397. columnDefs: [{
  398. targets: 1,
  399. render: function (data, type, row, meta) {
  400. if (data == 0) {
  401. return '<span class="label label-danger">等待</span>'
  402. } else if (data == 1) {
  403. return '<span class="label label-primary">成功</span>'
  404. }
  405. },
  406. 'orderable': true
  407. }, {
  408. targets: 4,
  409. render: function (data, type, row, meta) {
  410. if (data != 0) {
  411. return timeStamp2String(data)
  412. } else {
  413. return ''
  414. }
  415. },
  416. 'orderable': true
  417. }],
  418. 'sPaginationType': 'full_numbers',
  419. dom: '<"html5buttons"B>lTfgitp',
  420. buttons: [{
  421. extend: 'copy'
  422. },
  423. {
  424. extend: 'csv'
  425. },
  426. {
  427. extend: 'excel'
  428. },
  429. {
  430. extend: 'pdf'
  431. },
  432. {
  433. extend: 'print',
  434. customize: function (win) {
  435. $(win.document.body).addClass('white-bg');
  436. $(win.document.body).css('font-size', '10px');
  437. $(win.document.body).find('table').addClass('compact').css('font-size', 'inherit')
  438. }
  439. }]
  440. });
  441. table2 = $('#datatables2').DataTable({
  442. 'aLengthMenu': [[20, 50, 100, 500, 999999999], [20, 50, 100, 500, 'ALL']],
  443. language: {
  444. 'sProcessing': '处理中...',
  445. 'sLengthMenu': '显示 _MENU_ 项结果',
  446. 'sZeroRecords': '没有匹配结果',
  447. 'sInfo': '显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项',
  448. 'sInfoEmpty': '显示第 0 至 0 项结果,共 0 项',
  449. 'sInfoFiltered': '(由 _MAX_ 项结果过滤)',
  450. 'sInfoPostFix': '',
  451. 'sSearch': '搜索:',
  452. 'sUrl': '',
  453. 'sEmptyTable': '表中数据为空',
  454. 'sLoadingRecords': '载入中...',
  455. 'sInfoThousands': ',',
  456. 'oPaginate': {
  457. 'sFirst': '首页',
  458. 'sPrevious': '上页',
  459. 'sNext': '下页',
  460. 'sLast': '末页'
  461. },
  462. 'oAria': {
  463. 'sSortAscending': ': 以升序排列此列',
  464. 'sSortDescending': ': 以降序排列此列'
  465. }
  466. },
  467. 'processing': true,
  468. 'serverSide': true,
  469. 'ajax': '<?= Url::to(['ssac-ajax']) ?>',
  470. 'order': [[0, 'desc']],
  471. 'columns': [{
  472. 'data': 'id'
  473. }, {
  474. 'data': 'type'
  475. }, {
  476. 'data': 'amount'
  477. }, {
  478. 'data': 'login'
  479. }, {
  480. 'data': 'in_time'
  481. }],
  482. columnDefs: [{
  483. targets: 1,
  484. render: function (data, type, row, meta) {
  485. if (data == 0) {
  486. return '<span class="label label-danger">等待</span>'
  487. } else if (data == 1) {
  488. return '<span class="label label-primary">成功</span>'
  489. }
  490. },
  491. 'orderable': true
  492. }, {
  493. targets: 4,
  494. render: function (data, type, row, meta) {
  495. if (data != 0) {
  496. return timeStamp2String(data)
  497. } else {
  498. return ''
  499. }
  500. },
  501. 'orderable': true
  502. }],
  503. 'sPaginationType': 'full_numbers',
  504. dom: '<"html5buttons"B>lTfgitp',
  505. buttons: [{
  506. extend: 'copy'
  507. },
  508. {
  509. extend: 'csv'
  510. },
  511. {
  512. extend: 'excel'
  513. },
  514. {
  515. extend: 'pdf'
  516. },
  517. {
  518. extend: 'print',
  519. customize: function (win) {
  520. $(win.document.body).addClass('white-bg');
  521. $(win.document.body).css('font-size', '10px');
  522. $(win.document.body).find('table').addClass('compact').css('font-size', 'inherit')
  523. }
  524. }]
  525. });
  526. $('#datatables tbody,#datatables2 tbody').on('click', 'tr',
  527. function () {
  528. if ($(this).hasClass('selected')) {
  529. $(this).removeClass('selected')
  530. } else {
  531. table.$('tr.selected').removeClass('selected');
  532. $(this).addClass('selected')
  533. }
  534. })
  535. })
  536. </script>
  537. <?php $this->endBlock(); ?>