list.blade.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. @extends('layouts.base')
  2. @section('title', '股东管理')
  3. @section('content')
  4. <style xmlns:v-bind="http://www.w3.org/1999/xhtml">
  5. .rightlist #app .rightlist-head{padding:15px 0;line-height:50px;}
  6. .rightlist #app{margin-left:30px;}
  7. .rightlist-head-con{float:left;padding-right:20px;font-size:16px;color:#888;}
  8. .el-form-item__label{padding-right:30px;}
  9. .mouse-active{cursor:pointer;border:1px dotted #409EFF;border-radius: 4px;}
  10. /* 滑块选择小白点 */
  11. .el-switch.is-checked .el-switch__core::after {left: 100%;margin-left: -17px;}
  12. .el-switch__core::after {content: "";position: absolute;top: 1px;left: 1px;border-radius: 100%;transition: all .3s;width: 16px;height: 16px;background-color: #fff;}
  13. </style>
  14. <link rel="stylesheet" href="//at.alicdn.com/t/font_913727_zrmdutznqpd.css">
  15. <div id="app">
  16. <template>
  17. <el-container>
  18. <el-header height="auto">
  19. <div class="">
  20. <h4 class="card-title">股东管理</h4>
  21. <el-button type="primary" icon="el-icon-plus" @click="addPartner()">添加股东</el-button>
  22. <div style="padding-top: 24px">
  23. <el-form v-loading="loading" ref="form" :model="form" :inline="true">
  24. <el-form-item label="会员ID">
  25. <el-input v-model="searchParams.uid" placeholder="会员ID"></el-input>
  26. </el-form-item>
  27. <el-form-item label="会员昵称/姓名/手机号码">
  28. <el-input v-model="searchParams.member" placeholder="请输入..."></el-input>
  29. </el-form-item>
  30. <el-form-item label="创建时间">
  31. <template>
  32. <div class="block">
  33. <span class="demonstration"></span>
  34. <el-date-picker
  35. v-model="searchParams.create_time"
  36. type="datetimerange"
  37. range-separator="至"
  38. start-placeholder="开始日期"
  39. end-placeholder="结束日期"
  40. align="right">
  41. </el-date-picker>
  42. </div>
  43. </template>
  44. </el-form-item>
  45. <el-button type="primary" icon="el-icon-search" @click="searchData()">搜索</el-button>
  46. </el-form>
  47. </div>
  48. </div>
  49. </el-header>
  50. {{--表格start--}}
  51. <el-main>
  52. <template>
  53. <el-table :data="list">
  54. <el-table-column prop="id" label="ID" width="auto"></el-table-column>
  55. <el-table-column prop="uid" label="会员id" width="auto"></el-table-column>
  56. <el-table-column prop="created_at" label="成为股东时间" width="auto"></el-table-column>
  57. <el-table-column label="股东" align="center" width="auto">
  58. <template slot-scope="scope">
  59. <img style='width:40px;height:40px':src=scope.row.member.avatar style="max-width:100px">
  60. <div>[[scope.row.member?scope.row.member.nickname:'未更新']]</div>
  61. </template>
  62. </el-table-column>
  63. <el-table-column prop="partner_reward_total" label="累计股东奖励金额" width="auto"></el-table-column>
  64. <el-table-column prop="same_level_reward_total" label="累计平级奖励金额" width="auto"></el-table-column>
  65. <el-table-column label="操作" width="auto">
  66. <template slot-scope="scope">
  67. <a href="#" title="删除">
  68. <i class="el-icon-delete" style="font-size:28px;color:#606266" @click="del(scope.row.id)"></i>
  69. </a>
  70. {{--<a v-bind:href="'{{ yzWebUrl('plugin.business-activity.admin.controllers.activity.add-activity', array('id' => '')) }}'+[[scope.row.id]]" title="编辑">--}}
  71. {{--<el-button type="primary" class="" style="font-size:28px;color:#606266">奖励记录</el-button>--}}
  72. {{--</a>--}}
  73. </template>
  74. </el-table-column>
  75. </el-table>
  76. </template>
  77. </el-main>
  78. {{--表格end--}}
  79. <el-footer>
  80. <el-pagination
  81. layout="prev, pager, next"
  82. @current-change="currentChange"
  83. :current-page.sync="current_page"
  84. :total="page_total"
  85. :page-size="page_size"
  86. background v-loading="loading">
  87. </el-pagination>
  88. </el-footer>
  89. </el-container>
  90. </template>
  91. </div>
  92. <script>
  93. var app = new Vue({
  94. el: '#app',
  95. delimiters: ['[[', ']]'],
  96. data() {
  97. let data = {!! $pageList ?: '{}'!!};
  98. console.log(data)
  99. return {
  100. form : {},
  101. loading : false,
  102. searchParams: {
  103. 'id' : '',
  104. 'name' : '',
  105. 'create_time' : '',
  106. },
  107. real_search_form: {
  108. 'id' : '',
  109. 'name' : '',
  110. 'create_time' : '',
  111. },
  112. list : data.data,
  113. current_page : data.current_page,
  114. page_total : data.total,
  115. page_size : data.per_page,
  116. }
  117. },
  118. methods: {
  119. del(id) {
  120. this.$confirm('是否删除', '提示', {
  121. confirmButtonText: '确定',
  122. cancelButtonText: '取消',
  123. type: 'warning'
  124. }).then(() => {
  125. this.$http.post('{!! yzWebFullUrl('plugin.partner-reward.admin.controllers.partner.del') !!}',{id:id}).then(function (response) {
  126. if (response.data.result) {
  127. this.$message({
  128. type: 'success',
  129. message: '删除成功!'
  130. });
  131. window.open("{!! yzWebUrl('plugin.partner-reward.admin.controllers.partner.index') !!}", '_self');
  132. }
  133. });
  134. }).catch(() => {
  135. this.$message({
  136. type: 'info',
  137. message: '已取消删除'
  138. });
  139. });
  140. },
  141. searchData() {
  142. this.loading = true;
  143. if(this.searchParams.create_time){
  144. this.searchParams.create_time[0] = Math.round(this.searchParams.create_time[0]/1000).valueOf();
  145. this.searchParams.create_time[1] = Math.round(this.searchParams.create_time[1]/1000).valueOf();
  146. }
  147. this.$http.post('{!! yzWebFullUrl('plugin.partner-reward.admin.controllers.partner.search') !!}',{search_data:this.searchParams}
  148. ).then(function (response) {
  149. if (response.data.result){
  150. let datas = response.data.data;
  151. this.page_total = datas.total;
  152. this.list = datas.data;
  153. this.page_size = datas.per_page;
  154. this.current_page = datas.current_page;
  155. this.real_search_form = this.searchParams;
  156. }
  157. else {
  158. this.$message({message: response.data.msg,type: 'error'});
  159. }
  160. this.loading = false;
  161. },function (response) {
  162. this.loading = false;
  163. this.$message({message: response.data.msg,type: 'error'});
  164. }
  165. );
  166. },
  167. addPartner(){
  168. window.open("{!! yzWebUrl('plugin.partner-reward.admin.controllers.partner.add') !!}", '_self');
  169. },
  170. currentChange(val) {
  171. this.loading = true;
  172. this.$http.post('{!! yzWebFullUrl('plugin.partner-reward.admin.controllers.partner.search') !!}',{page:val,search:this.real_search_form}).then(function (response) {
  173. if (response.data.result){
  174. let datas = response.data.data;
  175. this.page_total = datas.total;
  176. this.list = datas.data;
  177. this.page_size = datas.per_page;
  178. this.current_page = datas.current_page;
  179. }
  180. else {
  181. this.$message({message: response.data.msg,type: 'error'});
  182. }
  183. this.loading = false;
  184. },function (response) {
  185. this.loading = false;
  186. this.$message({message: response.data.msg,type: 'error'});
  187. }
  188. );
  189. }
  190. },
  191. });
  192. </script>
  193. @endsection