| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317 |
- @extends('layouts.base')
- @section('title', '会员合并记录')
- @section('content')
- <link href="{{static_url('yunshop/css/total.css')}}" media="all" rel="stylesheet" type="text/css" />
- <style scoped>
- /* 设置input宽度 */
- .input-w {
- width: 200px;
- margin-right: 22px;
- }
- .input_box,
- .button_box {
- display: inline-block;
- }
- /* 会员合并记录列表 */
- .vue-title-content span {
- opacity: .6;
- margin-left: 14px;
- }
- .el-table .cell {
- color: #333;
- font-family: inherit;
- }
- .el-table td div {
- font-family: "微软雅黑";
- font-weight: 400;
- }
- /* 分页 */
- .pagination-right {
- text-align: center;
- margin: 50px auto;
- }
- /* 选项卡部分 */
- .nav {
- cursor: default;
- user-select: none;
- }
- .new {
- display: flex;
- width: 1000px;
- margin-left: 0px;
- }
- .nav-btn {
- cursor: pointer;
- color: #666666;
- font-size: 14px;
- font-family: SourceHanSansCN-Regular;
- padding: 9px;
- border-radius: 5px;
- margin-right: 10px;
- background-color: white;
- font-weight: normal;
- font-stretch: normal;
- letter-spacing: 2px;
- }
- .nav-btn-back {
- color: #FFF;
- background-color: #29BA9C;
- }
- </style>
- <div class="all">
- <div id="app">
- <div class="nav total-head">
- <ul class="new">
- <li @click="btnEvent(i)" class="nav-btn " :class="{'nav-btn-back': isIndex===i}" v-for='(item,i) in navlist' :key="i">[[item]]</li>
- </ul>
- </div>
- <div class="total-head">
- <el-form>
- <!-- 会员合并记录-->
- <el-form-item>
- <div class="vue-title">
- <div class="vue-title-left"></div>
- <div class="vue-title-content">会员合并记录</div>
- </div>
- </el-form-item>
- <el-form-item>
- <div class="input_box">
- <el-input clearable class="input-w" v-model="merge.beforeId" placeholder="合并前会员id"></el-input>
- <el-input clearable class="input-w" v-model="merge.afterId" placeholder="合并后会员id">
- </el-input>
- </div>
- <div class="button_box">
- <el-button @click="submit" @keyup.enter="submit" type="primary">搜索</el-button>
- </div>
- </el-form-item>
- </el-form>
- </div>
- <!-- 邀请码列表 -->
- <div class="total-floo">
- <div class="vue-title">
- <div class="vue-title-left"></div>
- <div class="vue-title-content">合并记录<span>总数: [[total]]</span></div>
- </div>
- <!-- 列表+分页查询 -->
- <el-table v-loading="loading" style="width:100%; padding-bottom:1px;" :data="mergeList" :header-cell-style='{"text-align":"center"}' :cell-style='{"text-align":"center"}'>
- <el-table-column label="ID">
- <template slot-scope="scope">
- <p>[[scope.row.id]]</p>
- </template>
- </el-table-column>
- <el-table-column label="合并前会员id">
- <template slot-scope="scope">
- <p v-if="isIndex==0">[[scope.row.member_id]]</p>
- <p v-else-if="isIndex==1">[[scope.row.old_uid]]</p>
- <p v-else>[[scope.row.mark_member_id]]</p>
- </template>
- </el-table-column>
- <el-table-column label="合并后会员id">
- <template slot-scope="scope">
- <p v-if="isIndex==0">[[scope.row.member_id_after]]</p>
- <p v-else-if="isIndex==1">[[scope.row.new_uid]]</p>
- <p v-else>[[scope.row.member_id]]</p>
- </template>
- </el-table-column>
- <el-table-column label="合并时间">
- <template slot-scope="scope">
- <p>[[scope.row.created_at | createdAt]]</p>
- </template>
- </el-table-column>
- </el-table>
- </div>
- <!-- 分页 -->
- <div v-if="mergeList.length!==0" class="fixed total-floo">
- <div class="fixed_box">
- <el-pagination background style="text-align: right;" @current-change="handleCurrentChange" :current-page.sync="currentPage" :page-size="pagesize" layout="prev, pager, next, jumper" :total="total">
- </el-pagination>
- </div>
- </div>
- </div>
- </div>
- <script>
- const vm = new Vue({
- el: "#app",
- name: "auth",
- delimiters: ["[[", "]]"],
- data() {
- return {
- merge: {
- beforeId: "",
- afterId: ""
- },
- mergeList: [],
- //总人数
- mergeListSum: 0,
- currentPage: 1, //当前的页码
- pagesize: 5, //每页显示的行数
- total: 0, //总数
- //导航头部标签
- navlist: ["自动合并记录", "绑定手机合并记录", "点击合并记录"],
- //切换选项卡标识
- isIndex: 0,
- loading: true
- }
- },
- created() {
- g = this;
- //优化在不同设备固定定位挡住的现象设置父元素的内边距
- window.onload = function() {
- let all = document.querySelector(".all");
- let h = window.innerHeight * 0.04;
- all.style.paddingBottom = h + "px";
- }
- //获取当前数据总数
- this.mergeListSum = this.mergeList.length;
- //全局监听searchBtnt enter事件
- document.onkeydown = (e) => {
- let key = window.event.keyCode;
- if (key == 13) {
- g.submit();
- }
- }
- if (this.isIndex == 0) {
- this.postAuto(1);
- } else if (i == 1) {
- this.postBind(1);
- } else {
- this.postMerge(1);
- }
- },
- filters: {
- createdAt(date) {
- if (date !== null && date) {
- if (g.isIndex == 1) {
- return g.timeDate(date * 1000)
- } else {
- return date
- }
- } else {
- return ""
- }
- }
- },
- methods: {
- //点击选项卡函数
- btnEvent(i) {
- //点击切换清空数据
- this.merge.beforeId = "";
- this.merge.afterId = "";
- this.mergeList = [];
- this.isIndex = i;
- window.sessionStorage.setItem("iMerge", this.isIndex);
- if (i === 0) {
- this.postAuto(1);
- } else if (i === 1) {
- this.postBind(1);
- } else {
- this.postMerge(1);
- }
- },
- //自动合并记录
- postAuto(page) {
- this.$http.post("{!!yzWebFullUrl('member.merge-log.auth-merge')!!}", {
- page: page,
- search: {
- member_id: this.merge.beforeId,
- mark_member_id: this.merge.afterId
- }
- }).then(res => {
- this.infoAll(res)
- })
- },
- //绑定手机合并记录
- postBind(page) {
- this.$http.post("{!!yzWebFullUrl('member.merge-log.bind-tel')!!}", {
- page: page,
- search: {
- member_id: this.merge.beforeId,
- mark_member_id: this.merge.afterId
- }
- }).then(res => {
- this.infoAll(res)
- })
- },
- //点击合并记录
- postMerge(page) {
- this.$http.post("{!!yzWebFullUrl('member.merge-log.click-merge')!!}", {
- page: page,
- search: {
- member_id: this.merge.beforeId,
- mark_member_id: this.merge.afterId
- }
- }).then(res => {
- this.infoAll(res)
- })
- },
- infoAll(res) {
- if (res.data.result == 1) {
- this.loading = true;
- setTimeout(() => {
- this.loading = false;
- }, 300)
- let {
- data,
- current_page,
- per_page,
- total
- } = res.body.data.list;
- if (data !== null && data.length !== 0) {
- this.mergeList = data;
- } else {
- this.mergeList = [];
- }
- this.currentPage = current_page;
- this.pagesize = per_page;
- this.total = total;
- } else {
- this.$message.error(res.data.msg);
- }
- },
- isTypeNull(str) {
- // 如果对象 或者为空则返回
- if (str === null) {
- return false
- } else {
- return true;
- }
- },
- //页面切换的方式
- handleCurrentChange(page) {
- if (this.isIndex === 0) {
- this.postAuto(page);
- } else if (this.isIndex === 1) {
- this.postBind(page);
- } else {
- this.postMerge(page)
- }
- },
- //请求当前合并列表
- submit() {
- if (this.isIndex == 0) {
- this.postAuto(this.currentPage);
- } else if (this.isIndex == 1) {
- this.postBind(this.currentPage);
- } else {
- this.postMerge(this.currentPage)
- }
- },
- //时间的转换
- timeDate(date) {
- let d = new Date(date);
- let resDate = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate() + ' ' + d.getHours() + ':' + d.getMinutes() + ':' + d.getSeconds();;
- return resDate;
- }
- }
- })
- </script>@endsection
|