index.php 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617
  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" id="guojiyinlian">
  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 " id="RMBcode"><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. <div id="otczhifu_bank_code" style="display: none">
  224. <br>
  225. <div class="row">
  226. <div class="col-sm-1"></div>
  227. <div class="col-sm-4">
  228. <div class="input-group">
  229. <span class="input-group-btn">
  230. <button type="button" class="btn btn-primary"><i class="fa fa-dollar"></i>支付方式</button>
  231. </span>
  232. <select id="otczhifuBankCode" name="otczhifuBankCode" class="form-control">
  233. <option value="OTC_PAY">otc支付</option>
  234. </select>
  235. </div>
  236. </div>
  237. <div class="col-sm-4" style="text-align:center;">
  238. <!-- <span style="line-height: 2.5;color:red">此通道单笔转账金额必须大于7500美元</span> -->
  239. </div>
  240. <div class="col-sm-1"></div>
  241. </div>
  242. </div>
  243. <br>
  244. <div class="row">
  245. <div class="col-sm-1"></div>
  246. <div class="col-sm-10">
  247. <table class="table invoice-total">
  248. <tbody>
  249. <tr>
  250. <td><strong>账户 :</strong></td>
  251. <td id="loginTd"></td>
  252. </tr>
  253. <tr class="guojiyinlian">
  254. <td><strong>汇率 :</strong></td>
  255. <td id="sellRate"><?= isset($rate['sellRate']) ? $rate['sellRate'] : 0 ?></td>
  256. </tr>
  257. <tr class="guojiyinlian">
  258. <td><strong>合计 :</strong></td>
  259. <td id="amount">¥0</td>
  260. </tr>
  261. </tbody>
  262. </table>
  263. <div class="text-right">
  264. <button type="submit" class="btn btn-danger"><i class="fa fa-cny"></i> 马上支付
  265. </button>
  266. </div>
  267. <div class="well m-t"><strong>友情提示:</strong>
  268. 银联入金,1个工作日到账。
  269. </div>
  270. </div>
  271. <div class="col-sm-1"></div>
  272. </div>
  273. <?= Html::endForm() ?>
  274. <br><br>
  275. </div>
  276. </div>
  277. <div id="tab-2" class="tab-pane">
  278. <div class="panel-body">
  279. <div class="table-responsive" style="margin:30px 10px 0px 10px;">
  280. <table id="datatables"
  281. class="table table-striped table-bordered table-hover">
  282. <thead>
  283. <tr>
  284. <th>ID</th>
  285. <th>状态</th>
  286. <th>金额</th>
  287. <th>账户</th>
  288. <th>入金时间</th>
  289. </tr>
  290. </thead>
  291. </table>
  292. </div>
  293. </div>
  294. </div>
  295. </div>
  296. </div>
  297. </div>
  298. </div>
  299. <?php $this->beginBlock('footer_script'); ?>
  300. <script src="<?= STATIC_URL ?>/ui/js/plugins/dataTables/datatables.min.js"></script>
  301. <script src="<?= STATIC_URL ?>/ui/js/plugins/validate/messages.cn.js"></script>
  302. <script>
  303. $('#login').change(function () {
  304. var v = $(this).val();
  305. $('#loginTd').html(v)
  306. });
  307. function calculate() {
  308. var usd = parseFloat($('#usd').val());
  309. var payMethod = $("#payMethod").val();
  310. var money = isNaN(usd) ? 0 : (usd * <?= isset($rate['sellRate']) ? $rate['sellRate'] : 0 ?>).toFixed(2);
  311. if(payMethod == 'yinliantiaozhuan' || payMethod == 'yinliantiaozhuan2' || payMethod == 'yinliantiaozhuan3' || payMethod == 'jiedeng' || payMethod == 'eagle' ){
  312. var money = isNaN(usd) ? 0 : (usd * <?= isset($rate['exchangeRate']) ? $rate['exchangeRate'] : 0 ?>).toFixed(2);
  313. $('#guojiyinlian').css('display','none');
  314. $('.guojiyinlian').css('display','none');
  315. $('.well').text('入金,1个工作日到账。');
  316. }
  317. if(payMethod == 'otczhifu'){
  318. var money = usd;
  319. }
  320. $('#cny').val(money);
  321. $('#amount').html('¥' + money)
  322. }
  323. var changeBank = function () {
  324. var payMethod = $("#payMethod").val();
  325. if (payMethod == 'renren') {
  326. $("#renren_bank_code").attr("style", "display:block");
  327. } else {
  328. $("#renren_bank_code").attr("style", "display:none");
  329. }
  330. if (payMethod == 'sand') {
  331. $("#sand_bank_code").attr("style", "display:block");
  332. } else {
  333. $("#sand_bank_code").attr("style", "display:none");
  334. }
  335. if (payMethod == 'kexing') {
  336. $("#kexing_bank_code").attr("style", "display:block");
  337. } else {
  338. $("#kexing_bank_code").attr("style", "display:none");
  339. }
  340. //银联支付
  341. if (payMethod == 'yinliantiaozhuan' || payMethod == 'yinliantiaozhuan2' || payMethod == 'yinliantiaozhuan3' || payMethod == 'jiedeng' || payMethod == 'eagle') {
  342. let num = <?= isset($rate['exchangeRate']) ? $rate['exchangeRate'] : 0 ?>;
  343. $("#sellRate").text(num);
  344. $('#RMBcode').text('港币');
  345. $('#guojiyinlian').css('display','none');
  346. $('.guojiyinlian').css('display','none');
  347. $('.well').text('友情提示:1个工作日到账。');
  348. calculate();
  349. } else {
  350. let numm = <?= isset($rate['sellRate']) ? $rate['sellRate'] : 0 ?>;
  351. $("#sellRate").text(numm);
  352. $('#RMBcode').text('人民币');
  353. $('#guojiyinlian').css('display','block');
  354. $('.guojiyinlian').css('display','');
  355. $('.well').text('友情提示:银联入金,1个工作日到账。');
  356. calculate();
  357. }
  358. //otc支付
  359. if (payMethod == 'otczhifu') {
  360. $("#otczhifu_bank_code").attr("style", "display:block");
  361. $('#RMBcode').text('USDT');
  362. $('.guojiyinlian').css('display','none');
  363. $('.well').text('友情提示: 1个工作日到账。');
  364. } else {
  365. $("#otczhifu_bank_code").attr("style", "display:none");
  366. $('#RMBcode').text('人民币');
  367. $('.well').text('友情提示:银联入金,1个工作日到账。');
  368. }
  369. }
  370. changeBank()
  371. $("#payMethod").on("change", changeBank);
  372. var table,table2;
  373. $(document).ready(function () {
  374. $('#form1').validate({
  375. rules: {
  376. 'amount': {
  377. required: true,
  378. //min:500,
  379. },
  380. 'login': {
  381. required: true
  382. },
  383. "bankCode": {
  384. required: true
  385. },
  386. "huayinBankCode": {
  387. required: true
  388. },
  389. "aotuBankCode": {
  390. required: true
  391. },
  392. "balpalBankCode": {
  393. required: true
  394. }
  395. },
  396. /*messages:{
  397. amount:{
  398. min:"最小入金500美金!",
  399. },
  400. }, */
  401. /* 重写错误显示消息方法 */
  402. showErrors: function(errorMap, errorList) {
  403. var msg = "";
  404. $.each( errorList, function(i,v){
  405. msg += (v.message+"\r\n");
  406. });
  407. if(msg!="") {
  408. toastr.error(msg, "提示");
  409. }
  410. },
  411. onfocusout: false,
  412. onclick:false,
  413. onkeyup:false,
  414. });
  415. table = $('#datatables').DataTable({
  416. 'aLengthMenu': [[20, 50, 100, 500, 999999999], [20, 50, 100, 500, 'ALL']],
  417. language: {
  418. 'sProcessing': '处理中...',
  419. 'sLengthMenu': '显示 _MENU_ 项结果',
  420. 'sZeroRecords': '没有匹配结果',
  421. 'sInfo': '显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项',
  422. 'sInfoEmpty': '显示第 0 至 0 项结果,共 0 项',
  423. 'sInfoFiltered': '(由 _MAX_ 项结果过滤)',
  424. 'sInfoPostFix': '',
  425. 'sSearch': '搜索:',
  426. 'sUrl': '',
  427. 'sEmptyTable': '表中数据为空',
  428. 'sLoadingRecords': '载入中...',
  429. 'sInfoThousands': ',',
  430. 'oPaginate': {
  431. 'sFirst': '首页',
  432. 'sPrevious': '上页',
  433. 'sNext': '下页',
  434. 'sLast': '末页'
  435. },
  436. 'oAria': {
  437. 'sSortAscending': ': 以升序排列此列',
  438. 'sSortDescending': ': 以降序排列此列'
  439. }
  440. },
  441. 'processing': true,
  442. 'serverSide': true,
  443. 'ajax': '<?= Url::to(['ajax']) ?>',
  444. 'order': [[0, 'desc']],
  445. 'columns': [{
  446. 'data': 'id'
  447. }, {
  448. 'data': 'type'
  449. }, {
  450. 'data': 'amount'
  451. }, {
  452. 'data': 'login'
  453. }, {
  454. 'data': 'in_time'
  455. }],
  456. columnDefs: [{
  457. targets: 1,
  458. render: function (data, type, row, meta) {
  459. if (data == 0) {
  460. return '<span class="label label-danger">等待</span>'
  461. } else if (data == 1) {
  462. return '<span class="label label-primary">成功</span>'
  463. } else if(data==2){
  464. return '<span class="label label-warning">创建中</span>'
  465. }
  466. },
  467. 'orderable': true
  468. }, {
  469. targets: 4,
  470. render: function (data, type, row, meta) {
  471. if (data != 0) {
  472. return timeStamp2String(data)
  473. } else {
  474. return ''
  475. }
  476. },
  477. 'orderable': true
  478. }],
  479. 'sPaginationType': 'full_numbers',
  480. dom: '<"html5buttons"B>lTfgitp',
  481. buttons: [{
  482. extend: 'copy'
  483. },
  484. {
  485. extend: 'csv'
  486. },
  487. {
  488. extend: 'excel'
  489. },
  490. {
  491. extend: 'pdf'
  492. },
  493. {
  494. extend: 'print',
  495. customize: function (win) {
  496. $(win.document.body).addClass('white-bg');
  497. $(win.document.body).css('font-size', '10px');
  498. $(win.document.body).find('table').addClass('compact').css('font-size', 'inherit')
  499. }
  500. }]
  501. });
  502. table2 = $('#datatables2').DataTable({
  503. 'aLengthMenu': [[20, 50, 100, 500, 999999999], [20, 50, 100, 500, 'ALL']],
  504. language: {
  505. 'sProcessing': '处理中...',
  506. 'sLengthMenu': '显示 _MENU_ 项结果',
  507. 'sZeroRecords': '没有匹配结果',
  508. 'sInfo': '显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项',
  509. 'sInfoEmpty': '显示第 0 至 0 项结果,共 0 项',
  510. 'sInfoFiltered': '(由 _MAX_ 项结果过滤)',
  511. 'sInfoPostFix': '',
  512. 'sSearch': '搜索:',
  513. 'sUrl': '',
  514. 'sEmptyTable': '表中数据为空',
  515. 'sLoadingRecords': '载入中...',
  516. 'sInfoThousands': ',',
  517. 'oPaginate': {
  518. 'sFirst': '首页',
  519. 'sPrevious': '上页',
  520. 'sNext': '下页',
  521. 'sLast': '末页'
  522. },
  523. 'oAria': {
  524. 'sSortAscending': ': 以升序排列此列',
  525. 'sSortDescending': ': 以降序排列此列'
  526. }
  527. },
  528. 'processing': true,
  529. 'serverSide': true,
  530. 'ajax': '<?= Url::to(['ssac-ajax']) ?>',
  531. 'order': [[0, 'desc']],
  532. 'columns': [{
  533. 'data': 'id'
  534. }, {
  535. 'data': 'type'
  536. }, {
  537. 'data': 'amount'
  538. }, {
  539. 'data': 'login'
  540. }, {
  541. 'data': 'in_time'
  542. }],
  543. columnDefs: [{
  544. targets: 1,
  545. render: function (data, type, row, meta) {
  546. if (data == 0) {
  547. return '<span class="label label-danger">等待</span>'
  548. } else if (data == 1) {
  549. return '<span class="label label-primary">成功</span>'
  550. }
  551. },
  552. 'orderable': true
  553. }, {
  554. targets: 4,
  555. render: function (data, type, row, meta) {
  556. if (data != 0) {
  557. return timeStamp2String(data)
  558. } else {
  559. return ''
  560. }
  561. },
  562. 'orderable': true
  563. }],
  564. 'sPaginationType': 'full_numbers',
  565. dom: '<"html5buttons"B>lTfgitp',
  566. buttons: [{
  567. extend: 'copy'
  568. },
  569. {
  570. extend: 'csv'
  571. },
  572. {
  573. extend: 'excel'
  574. },
  575. {
  576. extend: 'pdf'
  577. },
  578. {
  579. extend: 'print',
  580. customize: function (win) {
  581. $(win.document.body).addClass('white-bg');
  582. $(win.document.body).css('font-size', '10px');
  583. $(win.document.body).find('table').addClass('compact').css('font-size', 'inherit')
  584. }
  585. }]
  586. });
  587. $('#datatables tbody,#datatables2 tbody').on('click', 'tr',
  588. function () {
  589. if ($(this).hasClass('selected')) {
  590. $(this).removeClass('selected')
  591. } else {
  592. table.$('tr.selected').removeClass('selected');
  593. $(this).addClass('selected')
  594. }
  595. })
  596. })
  597. </script>
  598. <?php $this->endBlock(); ?>