liujq преди 3 години
родител
ревизия
07ca11f018
променени са 46 файла, в които са добавени 316 реда и са изтрити 3 реда
  1. 0 0
      dist/index.html
  2. 0 0
      dist/static/css/chunk-4bc0be42.dfd61804.css
  3. 0 0
      dist/static/js/app.39175f42.js
  4. 0 0
      dist/static/js/app.c188477d.js
  5. 0 0
      dist/static/js/chunk-060a14dc.b84e31ad.js
  6. 0 0
      dist/static/js/chunk-060a14dc.fe80663f.js
  7. 0 0
      dist/static/js/chunk-093b5b3c.5734635c.js
  8. 0 0
      dist/static/js/chunk-093b5b3c.e1e014db.js
  9. 0 0
      dist/static/js/chunk-24b1b024.774857f5.js
  10. 0 0
      dist/static/js/chunk-24b1b024.bbb3ee93.js
  11. 0 0
      dist/static/js/chunk-2a52cf02.2b92dbb9.js
  12. 0 0
      dist/static/js/chunk-2a52cf02.e5b54ed5.js
  13. 1 0
      dist/static/js/chunk-2d0ccfc9.6440bce0.js
  14. 0 1
      dist/static/js/chunk-2d0ccfc9.6dc97524.js
  15. 0 0
      dist/static/js/chunk-36ddeec9.2f1c91aa.js
  16. 0 0
      dist/static/js/chunk-36ddeec9.7ff026ea.js
  17. 0 0
      dist/static/js/chunk-39840469.8f2a318a.js
  18. 0 0
      dist/static/js/chunk-39840469.c818de5e.js
  19. 0 0
      dist/static/js/chunk-43338aec.3ca74f3d.js
  20. 0 0
      dist/static/js/chunk-45d3c434.41eda7ba.js
  21. 0 0
      dist/static/js/chunk-45f420e2.18d28336.js
  22. 0 0
      dist/static/js/chunk-45f420e2.f97c5fd3.js
  23. 0 0
      dist/static/js/chunk-4bc0be42.1cb8223c.js
  24. 0 0
      dist/static/js/chunk-58b3a554.3d6c44fd.js
  25. 0 0
      dist/static/js/chunk-58b3a554.c2c2b640.js
  26. 0 0
      dist/static/js/chunk-593f9664.4fbb5aee.js
  27. 0 0
      dist/static/js/chunk-593f9664.8158c40d.js
  28. 0 0
      dist/static/js/chunk-62b4e03e.794a4b2a.js
  29. 0 0
      dist/static/js/chunk-67a054c9.2277d2da.js
  30. 0 0
      dist/static/js/chunk-67a054c9.8314d638.js
  31. 0 0
      dist/static/js/chunk-7f8b33fa.46131eca.js
  32. 0 0
      dist/static/js/chunk-7f8b33fa.59f821c4.js
  33. 0 0
      dist/static/js/chunk-99416556.2b946256.js
  34. 0 1
      dist/static/js/chunk-9c1e7474.527ca845.js
  35. 1 0
      dist/static/js/chunk-9c1e7474.59596187.js
  36. 0 0
      dist/static/js/chunk-a5caf0ce.60b2c1bf.js
  37. 0 0
      dist/static/js/chunk-a5caf0ce.80ff0b1f.js
  38. 0 0
      dist/static/js/chunk-e6389644.c9e2ed94.js
  39. 0 0
      dist/static/js/chunk-e6389644.d983f6fb.js
  40. 6 0
      src/api/user.js
  41. 1 0
      src/views/mixins/baseTable.js
  42. 48 1
      src/views/user/app.vue
  43. 64 0
      src/views/user/appIntegral.vue
  44. 82 0
      src/views/user/components/popup/AppIntegralDtl.vue
  45. 81 0
      src/views/user/components/popup/AppIntegralEdit.vue
  46. 32 0
      src/views/user/components/searchForm/AppIntegral.vue

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/index.html


+ 0 - 0
dist/static/css/chunk-45d3c434.dfd61804.css → dist/static/css/chunk-4bc0be42.dfd61804.css


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/app.39175f42.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/app.c188477d.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-060a14dc.b84e31ad.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-060a14dc.fe80663f.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-093b5b3c.5734635c.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-093b5b3c.e1e014db.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-24b1b024.774857f5.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-24b1b024.bbb3ee93.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-2a52cf02.2b92dbb9.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-2a52cf02.e5b54ed5.js


+ 1 - 0
dist/static/js/chunk-2d0ccfc9.6440bce0.js

@@ -0,0 +1 @@
+(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0ccfc9"],{"4fef":function(t,a,e){"use strict";e.r(a);var i=e("ade3"),s=e("5530");e("1276"),e("ac1f"),e("a9e3");a["default"]={data:function(){return{listLoading:!1,tableData:[],currentPage:1,pageSize:10,totalRecords:1,listConfig:{},operations:[]}},created:function(){var t=this;this.$nextTick((function(){t.noCreated||t.fetchData()}))},methods:{searchHandle:function(t){this.currentPage=1,this.searchForm=t,this.fetchData()},sizeChange:function(t){this.pageSize=t,this.currentPage=1,this.fetchData()},pageHandle:function(t){this.currentPage=t,this.fetchData()},sortChange:function(t){console.log(t),this.currentPage=1;var a=Object(s["a"])({},this.searchForm);"ascending"===t.order?a.sort=JSON.stringify(Object(i["a"])({},t.prop,"asc")):a.sort=JSON.stringify(Object(i["a"])({},t.prop,"desc")),this.fetchData(a)},fetchData:function(t){var a=this;if(this.apiStr){var e={page:this.currentPage,page_size:this.pageSize};t?e=Object(s["a"])(Object(s["a"])({},e),t):this.searchForm&&(e=Object(s["a"])(Object(s["a"])({},e),this.searchForm)),this.getDataBefore&&this.getDataBefore(e),this.listLoading=!0;var i=this.apiStr.split(".");this.$api[i[0]][i[1]](e).then((function(t){return 1===a.currentPage&&(a.pageSize=t.page_size||1),a.totalRecords=t.total?Number(t.total):0,a.tableData=t.list||[],a.listLoading=!1,a.getMoreData&&a.getMoreData(t,e),t})).catch((function(t){a.listLoading=!1}))}}}}}}]);

+ 0 - 1
dist/static/js/chunk-2d0ccfc9.6dc97524.js

@@ -1 +0,0 @@
-(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0ccfc9"],{"4fef":function(t,a,e){"use strict";e.r(a);var i=e("ade3"),r=e("5530");e("1276"),e("ac1f"),e("a9e3");a["default"]={data:function(){return{listLoading:!1,tableData:[],currentPage:1,pageSize:10,totalRecords:1,listConfig:{},operations:[]}},created:function(){var t=this;this.$nextTick((function(){t.noCreated||t.fetchData()}))},methods:{searchHandle:function(t){this.currentPage=1,this.searchForm=t,this.fetchData()},sizeChange:function(t){this.pageSize=t,this.currentPage=1,this.fetchData()},pageHandle:function(t){this.currentPage=t,this.fetchData()},sortChange:function(t){this.currentPage=1;var a=Object(r["a"])({},this.searchForm);"ascending"===t.order?a.sort=JSON.stringify(Object(i["a"])({},t.prop,"asc")):a.sort=JSON.stringify(Object(i["a"])({},t.prop,"desc")),this.fetchData(a)},fetchData:function(t){var a=this;if(this.apiStr){var e={page:this.currentPage,page_size:this.pageSize};t?e=Object(r["a"])(Object(r["a"])({},e),t):this.searchForm&&(e=Object(r["a"])(Object(r["a"])({},e),this.searchForm)),this.getDataBefore&&this.getDataBefore(e),this.listLoading=!0;var i=this.apiStr.split(".");this.$api[i[0]][i[1]](e).then((function(t){return 1===a.currentPage&&(a.pageSize=t.page_size||1),a.totalRecords=t.total?Number(t.total):0,a.tableData=t.list||[],a.listLoading=!1,a.getMoreData&&a.getMoreData(t,e),t})).catch((function(t){a.listLoading=!1}))}}}}}}]);

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-36ddeec9.2f1c91aa.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-36ddeec9.7ff026ea.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-39840469.8f2a318a.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-39840469.c818de5e.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-43338aec.3ca74f3d.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-45d3c434.41eda7ba.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-45f420e2.18d28336.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-45f420e2.f97c5fd3.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-4bc0be42.1cb8223c.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-58b3a554.3d6c44fd.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-58b3a554.c2c2b640.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-593f9664.4fbb5aee.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-593f9664.8158c40d.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-62b4e03e.794a4b2a.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-67a054c9.2277d2da.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-67a054c9.8314d638.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-7f8b33fa.46131eca.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-7f8b33fa.59f821c4.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-99416556.2b946256.js


+ 0 - 1
dist/static/js/chunk-9c1e7474.527ca845.js

@@ -1 +0,0 @@
-(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-9c1e7474","chunk-2d0ccfc9"],{"4fef":function(t,e,a){"use strict";a.r(e);var i=a("ade3"),n=a("5530");a("1276"),a("ac1f"),a("a9e3");e["default"]={data:function(){return{listLoading:!1,tableData:[],currentPage:1,pageSize:10,totalRecords:1,listConfig:{},operations:[]}},created:function(){var t=this;this.$nextTick((function(){t.noCreated||t.fetchData()}))},methods:{searchHandle:function(t){this.currentPage=1,this.searchForm=t,this.fetchData()},sizeChange:function(t){this.pageSize=t,this.currentPage=1,this.fetchData()},pageHandle:function(t){this.currentPage=t,this.fetchData()},sortChange:function(t){this.currentPage=1;var e=Object(n["a"])({},this.searchForm);"ascending"===t.order?e.sort=JSON.stringify(Object(i["a"])({},t.prop,"asc")):e.sort=JSON.stringify(Object(i["a"])({},t.prop,"desc")),this.fetchData(e)},fetchData:function(t){var e=this;if(this.apiStr){var a={page:this.currentPage,page_size:this.pageSize};t?a=Object(n["a"])(Object(n["a"])({},a),t):this.searchForm&&(a=Object(n["a"])(Object(n["a"])({},a),this.searchForm)),this.getDataBefore&&this.getDataBefore(a),this.listLoading=!0;var i=this.apiStr.split(".");this.$api[i[0]][i[1]](a).then((function(t){return 1===e.currentPage&&(e.pageSize=t.page_size||1),e.totalRecords=t.total?Number(t.total):0,e.tableData=t.list||[],e.listLoading=!1,e.getMoreData&&e.getMoreData(t,a),t})).catch((function(t){e.listLoading=!1}))}}}}},"9d49":function(t,e,a){"use strict";a.r(e),e["default"]={data:function(){return{bigImgSrc:"",bigImgShow:!1}},created:function(){},methods:{openbigImg:function(t){this.bigImgSrc=t,this.bigImgShow=!0},closebigImg:function(t){this.bigImgShow=!1}}}}}]);

+ 1 - 0
dist/static/js/chunk-9c1e7474.59596187.js

@@ -0,0 +1 @@
+(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-9c1e7474","chunk-2d0ccfc9"],{"4fef":function(t,e,a){"use strict";a.r(e);var i=a("ade3"),n=a("5530");a("1276"),a("ac1f"),a("a9e3");e["default"]={data:function(){return{listLoading:!1,tableData:[],currentPage:1,pageSize:10,totalRecords:1,listConfig:{},operations:[]}},created:function(){var t=this;this.$nextTick((function(){t.noCreated||t.fetchData()}))},methods:{searchHandle:function(t){this.currentPage=1,this.searchForm=t,this.fetchData()},sizeChange:function(t){this.pageSize=t,this.currentPage=1,this.fetchData()},pageHandle:function(t){this.currentPage=t,this.fetchData()},sortChange:function(t){console.log(t),this.currentPage=1;var e=Object(n["a"])({},this.searchForm);"ascending"===t.order?e.sort=JSON.stringify(Object(i["a"])({},t.prop,"asc")):e.sort=JSON.stringify(Object(i["a"])({},t.prop,"desc")),this.fetchData(e)},fetchData:function(t){var e=this;if(this.apiStr){var a={page:this.currentPage,page_size:this.pageSize};t?a=Object(n["a"])(Object(n["a"])({},a),t):this.searchForm&&(a=Object(n["a"])(Object(n["a"])({},a),this.searchForm)),this.getDataBefore&&this.getDataBefore(a),this.listLoading=!0;var i=this.apiStr.split(".");this.$api[i[0]][i[1]](a).then((function(t){return 1===e.currentPage&&(e.pageSize=t.page_size||1),e.totalRecords=t.total?Number(t.total):0,e.tableData=t.list||[],e.listLoading=!1,e.getMoreData&&e.getMoreData(t,a),t})).catch((function(t){e.listLoading=!1}))}}}}},"9d49":function(t,e,a){"use strict";a.r(e),e["default"]={data:function(){return{bigImgSrc:"",bigImgShow:!1}},created:function(){},methods:{openbigImg:function(t){this.bigImgSrc=t,this.bigImgShow=!0},closebigImg:function(t){this.bigImgShow=!1}}}}}]);

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-a5caf0ce.60b2c1bf.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-a5caf0ce.80ff0b1f.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-e6389644.c9e2ed94.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/static/js/chunk-e6389644.d983f6fb.js


+ 6 - 0
src/api/user.js

@@ -82,4 +82,10 @@ export default {
   admintegralruledetail: params => { //  积分规则 - 详情
     return getRequestNoSort('/adm/integral/rule/detail', params, 'loading')
   },
+  admwechatuserintegraledit: params => { //  用户积分编辑
+    return getRequestNoSort('/adm/wechat/user/integral/edit', params, 'loading')
+  },
+  admwechatuserintegrallist: params => { //  用户积分明细列表
+    return getRequest('/adm/wechat/user/integral/list', params)
+  },
 }

+ 1 - 0
src/views/mixins/baseTable.js

@@ -31,6 +31,7 @@ export default {
       this.fetchData()
     },
     sortChange(column) {
+      console.log(column)
       this.currentPage = 1
       const obj = { ...this.searchForm }
       if (column.order === 'ascending') {

+ 48 - 1
src/views/user/app.vue

@@ -11,19 +11,34 @@
       :current-page="currentPage"
       :page-size="pageSize"
       :total-records="totalRecords"
+      @sort-change="sortChange"
       @currentChange="pageHandle"
     />
+    <popup-edit
+      :isShow="isDtlShow"
+      :curObj="curObj"
+      @close="closePopup"
+    />
+    <point-dtl
+      :isShow="isPDShow"
+      :curObj="curObj"
+      @close="closePDPopup"
+    />
   </div>
 </template>
 <script>
 import { arrToObj } from '@/utils'
 import SearchForm from './components/searchForm/Index'
+import PopupEdit from './components/popup/AppIntegralEdit'
+import PointDtl from './components/popup/AppIntegralDtl'
 import baseTable from '_m/baseTable.js'
 import xData from './mixin'
 export default {
   name: 'index',
   components: {
     SearchForm,
+    PopupEdit,
+    PointDtl,
   },
   provide() {
     return {
@@ -37,6 +52,7 @@ export default {
       searchForm: null,
       isDtlShow: false,
       curObj: {},
+      isPDShow: false,
       ...xData
     }
   },
@@ -60,13 +76,16 @@ export default {
       rows: [
         { label: '头像', prop: 'avatar', type: 'img' },
         { label: '昵称', prop: 'nickname' },
+        { label: '成长值', prop: 'integral', sortable: 'custom' },
         { label: '手机号', prop: 'phones' },
         { label: '注册时间', prop: 'create_at' },
         { label: '禁言状态', prop: 'is_gag', type: 'tag', tags: arrToObj(this.$dictData.sys_yesno), tagTypeObj: {'2': 'success', '1': 'danger'} },
         { label: '备注', prop: 'tag', type: 'input', width: 100},
-        { label: '操作', width: 220, type: 'handle2', operations:
+        { label: '操作', width: 260, type: 'handle2', operations:
           [
             { label: '保存标签', func: this.saveHandle, btnType: 'primary' },
+            { label: '成长值编辑', func: this.openPopup, btnType: 'success' },
+            { label: '成长值明细', func: this.openPDPopup, btnType: 'success' },
             { labelFor: 'is_gag', func: this.disHandle,
               labelConfig: {
                 texts: {
@@ -86,6 +105,34 @@ export default {
     }
   },
   methods: {
+    openPDPopup(row) {
+      if (row && row.id) {
+        this.curObj = row
+      } else {
+        this.curObj = {}
+      }
+      this.isPDShow = true
+    },
+    closePDPopup(obj) {
+      this.isPDShow = false
+      if (obj) {
+        this.fetchData()
+      }
+    },
+    openPopup(row) {
+      if (row && row.id) {
+        this.curObj = row
+      } else {
+        this.curObj = {}
+      }
+      this.isDtlShow = true
+    },
+    closePopup(obj) {
+      this.isDtlShow = false
+      if (obj) {
+        this.fetchData()
+      }
+    },
     disHandle (row) {
       const is_gag = Number(row.is_gag) === 1 ? 2 : 1
       const msgText = Number(row.is_gag) === 1 ? '解禁' : '禁言'

+ 64 - 0
src/views/user/appIntegral.vue

@@ -0,0 +1,64 @@
+<template>
+  <div class="app-container">
+    <!-- <search-form
+      :list-loading="listLoading"
+      @change="searchHandle"
+    /> -->
+    
+  </div>
+</template>
+<script>
+import SearchForm from './components/searchForm/AppIntegral'
+import baseTable from '_m/baseTable.js'
+export default {
+  name: 'index',
+  components: {
+    SearchForm,
+  },
+  provide() {
+    return {
+      parentData: this
+    }
+  },
+  mixins: [baseTable],
+  data() {
+    return {
+      apiStr: 'user.admwechatuserintegrallist',
+      searchForm: null,
+      isDtlShow: false,
+      curObj: {},
+    }
+  },
+  computed: {
+    tableData2() {
+      const arr = [...this.tableData]
+      arr.map(item => {
+        item.total = this.total
+      })
+      return arr
+    }
+  },
+  created() {
+    const query = this.$route.query
+    this.searchForm = {
+      id: query.id
+    }
+    this.fetchData()
+  },
+  mounted() {
+    this.listConfig = {
+      rows: [
+        { label: '总成长值', prop: 'total' },
+        { label: '成长值变动', prop: 'total_point' },
+        { label: '类型', prop: 'target_type' },
+        { label: '备注', prop: 'remark'},
+      ]
+    }
+  },
+  methods: {
+    getMoreData (res) {
+      this.total = res.surplus_point
+    }
+  }
+}
+</script>

+ 82 - 0
src/views/user/components/popup/AppIntegralDtl.vue

@@ -0,0 +1,82 @@
+<template>
+  <div>
+    <el-dialog
+      v-loading="loading"
+      :show-close="false"
+      :close-on-click-modal="false"
+      :visible.sync="isShow"
+      :title="`总成长值(${total})-明细列表`"
+      :fullscreen="false"
+      width="470px"
+      custom-class="xl-dialog"
+      center
+    >
+      <table-list
+        :list-loading="listLoading"
+        :data="tableData"
+        :columns="listConfig"
+        :current-page="currentPage"
+        :page-size="pageSize"
+        :total-records="totalRecords"
+        @currentChange="pageHandle"
+      />
+      <div class="xl-form">
+        <div class="xl-form-footer">
+          <el-button class="xl-form-btn t2" @click="close">关 闭</el-button>
+        </div>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+<script>
+import baseTable from '_m/baseTable.js'
+export default {
+  components: {},
+  mixins: [baseTable],
+  props: {
+    isShow: Boolean,
+    curObj: Object
+  },
+  inject: ['parentData'],
+  data() {
+    return {
+      apiStr: 'user.admwechatuserintegrallist',
+      searchForm: {},
+      noCreated: true,
+      total: 0,
+      formData: [],
+      loading: true,
+      cObj: {},
+    }
+  },
+  watch: {
+    isShow: function(val) {
+      if (val) {
+        this.searchForm = {
+          id: this.curObj.id
+        }
+        this.fetchData()
+      }
+    },
+  },
+  mounted() {
+    this.listConfig = {
+      rows: [
+        { label: '成长值变动', prop: 'total_point' },
+        { label: '类型', prop: 'target_type' },
+        { label: '备注', prop: 'remark'},
+      ]
+    }
+  },
+  methods: {
+    getMoreData (res) {
+      this.total = res.surplus_point
+    },
+    close(str) {
+      this.$emit('close')
+    },
+  }
+}
+</script>
+<style lang="scss" scoped>
+</style>

+ 81 - 0
src/views/user/components/popup/AppIntegralEdit.vue

@@ -0,0 +1,81 @@
+<template>
+  <div>
+    <el-dialog
+      v-loading="loading"
+      :show-close="false"
+      :close-on-click-modal="false"
+      :visible.sync="isShow"
+      :title="this.curObj && this.curObj.id ? '编辑积分' : '添加积分'"
+      :fullscreen="false"
+      width="470px"
+      custom-class="xl-dialog"
+      center
+    >
+      <base-form ref="ruleForm" :data="formData" :is-inline="false" label-width="110px">
+        <div slot="footer">
+          <el-button class="xl-form-btn t2" @click="close">关 闭</el-button>
+          <el-button class="xl-form-btn t1" @click="close('confirm')">确定</el-button>
+        </div>
+      </base-form>
+    </el-dialog>
+  </div>
+</template>
+<script>
+export default {
+  components: {},
+  mixins: [...mixins],
+  props: {
+    isShow: Boolean,
+    curObj: Object
+  },
+  inject: ['parentData'],
+  data() {
+    return {
+      formData: [],
+      loading: true,
+      cObj: {},
+    }
+  },
+  watch: {
+    isShow: function(val) {
+      if (val) {
+        this.getDef()
+      }
+    },
+  },
+  methods: {
+    getDef() {
+      const params = { ...this.curObj }
+      this.formData = [
+        { label: '成长值', key: 'point', rules: 1 },
+        { label: '备注', key: 'remark', type: 'textarea', rules: 1},
+      ]
+      this.setDefaultValue(params)
+    },
+    close(str) {
+      if (str === 'confirm') {
+        this.$refs['ruleForm'].$refs['baseForm'].validate((valid) => {
+          if (valid) {
+            const oldform = this.$refs.ruleForm.baseForm
+            let newForm = { ...oldform }
+            let apiStr = 'admwechatuserintegraledit'
+            if (this.curObj.id) {
+              apiStr = 'admwechatuserintegraledit'
+              newForm.id = this.curObj.id
+            }
+            this.$api.user[apiStr](newForm).then(data => {
+              this.$msgs(this.curObj.id ? '编辑成功' : '新增成功')
+              this.$emit('close', newForm)
+            })
+          }
+        })
+      } else {
+        this.$emit('close')
+        this.setDefaultValue()
+      }
+    },
+  }
+}
+</script>
+<style lang="scss" scoped>
+</style>

+ 32 - 0
src/views/user/components/searchForm/AppIntegral.vue

@@ -0,0 +1,32 @@
+<template>
+  <base-form slot="content" ref="ruleForm" :data="searchData">
+    <div slot="footer">
+      <el-button :loading="listLoading" icon="el-icon-search" class="xl-form-btn bgc1" @click="searchHandle">查询</el-button>
+      <!-- <el-button :loading="listLoading" icon="el-icon-document" class="xl-form-btn bgc2" @click="toExportExcel">导出{{ this.$route.meta.title }}信息</el-button> -->
+    </div>
+  </base-form>
+</template>
+<script>
+export default {
+  mixins: [],
+  props: {
+    listLoading: Boolean
+  },
+  inject: ['parentData'],
+  data() {
+    return {
+      searchData: [
+        { label: '手机号', key: 'phone' },
+        { label: '昵称', key: 'nickname' },
+      ]
+    }
+  },
+  methods: {
+    searchHandle() {
+      const oldform = this.$refs.ruleForm.baseForm
+      const newForm = { ...oldform }
+      this.$emit('change', newForm)
+    }
+  }
+}
+</script>

Някои файлове не бяха показани, защото твърде много файлове са промени