recharge_new.blade.php 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. @extends('layouts.base')
  2. @section('title', trans('会员充值'))
  3. @section('content')
  4. <style>
  5. .content{
  6. background: #eff3f6;
  7. padding: 10px!important;
  8. }
  9. .con{
  10. padding-bottom:40px;
  11. position:relative;
  12. border-radius: 8px;
  13. min-height:100vh;
  14. }
  15. .con .setting .block{
  16. padding:10px;
  17. background-color:#fff;
  18. border-radius: 8px;
  19. }
  20. .con .setting .block .title{
  21. font-size:18px;
  22. margin-bottom:15px;
  23. display:flex;
  24. align-items:center;
  25. }
  26. .confirm-btn{
  27. width: calc(100% - 266px);
  28. position:fixed;
  29. bottom:0;
  30. right:0;
  31. margin-right:10px;
  32. line-height:63px;
  33. background-color: #ffffff;
  34. box-shadow: 0px 8px 23px 1px
  35. rgba(51, 51, 51, 0.3);
  36. background-color:#fff;
  37. text-align:center;
  38. }
  39. .cert{
  40. width: 115px;
  41. height: 42px;
  42. background-color: #29ba9c;
  43. border-radius: 4px;
  44. position:relative;
  45. display:flex;
  46. align-items:center;
  47. justify-content:center;
  48. color:#fff;
  49. font-size: 16px;
  50. display: inline-block;
  51. text-align: center;
  52. }
  53. b{
  54. font-size:14px;
  55. }
  56. input[type=file]{
  57. display:none;
  58. }
  59. </style>
  60. <div id='re_content' >
  61. <div class="con">
  62. <div class="setting">
  63. <el-form ref="form" :model="form" label-width="15%" @submit.native.prevent>
  64. <div class="block">
  65. <div class="title"><span style="width: 4px;height: 18px;background-color: #29ba9c;margin-right:15px;display:inline-block;"></span><b>余额充值</b></div>
  66. <el-form-item label="粉丝">
  67. <div class="image" style="border:solid 1px #ccc;width:100px;height:100px;margin-left:30px;display: inline-block;">
  68. <img :src="memberInfo.avatar" style="width: 100%;height:100%;">
  69. </div>
  70. <div style="display: inline-block;vertical-align: text-top;margin-left:10px;">[[memberInfo.nickname]]</div>
  71. </el-form-item>
  72. <el-form-item label="会员信息">
  73. <div style="margin-left:30px;">
  74. 姓名:[[memberInfo.realname?memberInfo.realname:memberInfo.nicknamename]] / 手机号:[[memberInfo.mobile]]
  75. </div>
  76. </el-form-item>
  77. <el-form-item :label="rechargeMenu.old_value">
  78. <div style="margin-left:30px;">
  79. [[memberInfo.credit2]]
  80. </div>
  81. </el-form-item>
  82. <el-form-item :label="rechargeMenu.charge_value" required>
  83. <el-input v-model="form.num" style="width:70%;"></el-input>
  84. </el-form-item>
  85. <el-form-item label="备注信息" >
  86. <el-input type="textarea" rows="5" v-model="form.remark" placeholder="" style="width:70%;" maxlength="50" show-word-limit></el-input>
  87. </el-form-item>
  88. <el-form-item label="充值说明" v-if="charge_check_swich" required>
  89. <el-input type="textarea" rows="5" v-model="form.explain" placeholder="" style="width:70%;"></el-input>
  90. </el-form-item>
  91. <el-form-item label="附件" v-if="charge_check_swich">
  92. [[form.enclosure_src]]
  93. <el-upload
  94. class="upload-demo"
  95. action="{!! yzWebFullUrl('finance.balance-recharge-check.upload-file') !!}"
  96. name="file"
  97. :show-file-list="false"
  98. :on-success="uploadSuccess"
  99. :on-error="uploadFail"
  100. {{--:http-request="upload"--}}
  101. >
  102. <el-button type="primary">文件上传</el-button>
  103. </el-upload>
  104. </el-form-item>
  105. </div>
  106. </el-form>
  107. </div>
  108. <div class="confirm-btn">
  109. <el-button type="primary" @click="submit">提交</el-button>
  110. </div>
  111. </div>
  112. </div>
  113. <script>
  114. var vm = new Vue({
  115. el: "#re_content",
  116. delimiters: ['[[', ']]'],
  117. data() {
  118. let memberInfo = {!! $memberInfo ? json_encode($memberInfo) : '{}' !!};
  119. let rechargeMenu = {!! $rechargeMenu ? json_encode($rechargeMenu) : '{}' !!};
  120. let charge_check_swich = {!! $charge_check_swich !!};
  121. return {
  122. activeName: 'first',
  123. show:true,
  124. Certshow:true,
  125. weixin_secret_show:true,
  126. weixin_apisecret_show:true,
  127. alipay_transfer_private_show:true,
  128. memberInfo:memberInfo,
  129. rechargeMenu:rechargeMenu,
  130. charge_check_swich:charge_check_swich,
  131. form:{
  132. num:'',
  133. remark:"",
  134. explain:'',
  135. enclosure:"",
  136. enclosure_src:"",
  137. member_id:memberInfo.uid
  138. },
  139. }
  140. },
  141. mounted () {
  142. },
  143. methods: {
  144. uploadFail(res){
  145. this.$message({'上传失败': 'error'});
  146. },
  147. uploadSuccess(res){
  148. console.log(res);
  149. if(res.result){
  150. this.$message({message:res.msg,type: 'success'});
  151. this.form.enclosure = res.data.file;
  152. this.form.enclosure_src = res.data.file_src;
  153. }else{
  154. this.$message({message:res.msg,type: 'error'});
  155. }
  156. },
  157. submit() {
  158. console.log(this.form);
  159. let loading = this.$loading({target:document.querySelector(".content"),background: 'rgba(0, 0, 0, 0)'});
  160. this.$http.post('{!! yzWebFullUrl('balance.recharge.index') !!}',this.form).then(function (response){
  161. if (response.data.result) {
  162. this.$message({message: response.data.msg,type: 'success'});
  163. location.reload();
  164. }else {
  165. this.$message({message: response.data.msg,type: 'error'});
  166. }
  167. loading.close();
  168. },function (response) {
  169. this.$message({message: response.data.msg,type: 'error'});
  170. })
  171. },
  172. },
  173. });
  174. </script>
  175. @endsection