| 
					
				 | 
			
			
				@@ -0,0 +1,393 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class="app-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="用户昵称" prop="nickname"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-model="queryParams.nickname" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="请输入用户昵称" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          clearable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @keyup.enter.native="handleQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="手机号码" prop="phone"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-model="queryParams.phone" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="请输入手机号码" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          clearable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @keyup.enter.native="handleQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="所属公司" prop="companyName"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-model="queryParams.companyName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="请输入所属公司" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          clearable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @keyup.enter.native="handleQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item label="所属销售" prop="companyUserNickName"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-input 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-model="queryParams.companyUserName" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          placeholder="请输入所属销售" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          clearable 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @keyup.enter.native="handleQuery" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-row :gutter="10" class="mb8"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-col :span="1.5">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-button--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          type="primary"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          plain--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          icon="el-icon-plus"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          size="mini"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          @click="handleAdd"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          v-hasPermi="['store:userOnlineState:add']"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        >新增</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-col>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-col :span="1.5">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-button--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          type="success"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          plain--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          icon="el-icon-edit"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          size="mini"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          :disabled="single"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          @click="handleUpdate"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          v-hasPermi="['store:userOnlineState:edit']"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        >修改</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-col>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-col :span="1.5">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-button--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          type="danger"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          plain--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          icon="el-icon-delete"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          size="mini"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          :disabled="multiple"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          @click="handleDelete"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          v-hasPermi="['store:userOnlineState:remove']"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        >删除</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-col>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="1.5"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type="warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          plain 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          icon="el-icon-download" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          size="mini" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          :loading="exportLoading" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          @click="handleExport" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          v-hasPermi="['store:userOnlineState:export']" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        >导出</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-table border v-loading="loading" :data="userOnlineStateList" @selection-change="handleSelectionChange"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column type="selection" width="55" align="center" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="用户id" align="center" prop="userId" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="用户昵称" align="center" prop="nickname" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="用户头像" align="center" width="80"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <template slot-scope="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <el-popover 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            placement="right" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            title="" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            trigger="hover" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <img slot="reference" :src="scope.row.avatar" width="50" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <img :src="scope.row.avatar" style="max-width: 120px;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </el-popover> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="手机号码" align="center" prop="phone" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="所属公司" align="center" prop="companyName" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="所属销售" align="center" prop="companyUserName" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-table-column label="上线状态" align="center" prop="onlineStatus"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <template slot-scope="scope"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-tag prop="onlineStatus"  v-if="scope.row.onlineStatus === 1" type="success">已上线</el-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <el-tag prop="onlineStatus"  v-if="scope.row.onlineStatus === 2" type="primary">未上线</el-tag> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-table-column> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-table-column label="上线时间" align="center" prop="onlineTime" width="180">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <template slot-scope="scope">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <span>{{ parseTime(scope.row.onlineTime, '{y}-{m}-{d}') }}</span>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </template>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-table-column>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-table-column label="看课数量" align="center" prop="watchCourseCount" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-table-column label="参与营期数量" align="center" prop="partCourseCount" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-table-column label="最后一次看课时间" align="center" prop="lastWatchDate" width="180">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <template slot-scope="scope">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <span>{{ parseTime(scope.row.lastWatchDate, '{y}-{m}-{d}') }}</span>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </template>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-table-column>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <template slot-scope="scope">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-button--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            size="mini"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            type="text"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            icon="el-icon-edit"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            @click="handleUpdate(scope.row)"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            v-hasPermi="['store:userOnlineState:edit']"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          >修改</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-button--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            size="mini"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            type="text"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            icon="el-icon-delete"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            @click="handleDelete(scope.row)"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            v-hasPermi="['store:userOnlineState:remove']"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          >删除</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </template>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-table-column>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-table> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <pagination 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      v-show="total>0" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :total="total" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :page.sync="queryParams.pageNum" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      :limit.sync="queryParams.pageSize" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @pagination="getList" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--    <!– 添加或修改用户上线情况对话框 –>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <el-form ref="form" :model="form" :rules="rules" label-width="80px">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="用户昵称" prop="nickname">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.nickname" placeholder="请输入用户昵称" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="用户头像" prop="avatar">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.avatar" placeholder="请输入用户头像" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="微信小程序OPENID" prop="maOpenId">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.maOpenId" placeholder="请输入微信小程序OPENID" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="微信公众号OPENID" prop="mpOpenId">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.mpOpenId" placeholder="请输入微信公众号OPENID" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="关联ID" prop="unionId">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.unionId" placeholder="请输入关联ID" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="公司id" prop="companyId">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.companyId" placeholder="请输入公司id" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="销售id" prop="companyUserId">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.companyUserId" placeholder="请输入销售id" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="上线状态,1-已上线;2-未上线">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-radio-group v-model="form.onlineStatus">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            <el-radio label="1">请选择字典生成</el-radio>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          </el-radio-group>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="上线时间" prop="onlineTime">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-date-picker clearable size="small"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            v-model="form.onlineTime"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            type="date"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            value-format="yyyy-MM-dd"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            placeholder="选择上线时间">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          </el-date-picker>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="看课数量" prop="watchCourseCount">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.watchCourseCount" placeholder="请输入看课数量" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="参与营期数量" prop="partCourseCount">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-input v-model="form.partCourseCount" placeholder="请输入参与营期数量" />--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-form-item label="最后一次看课时间" prop="lastWatchDate">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          <el-date-picker clearable size="small"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            v-model="form.lastWatchDate"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            type="date"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            value-format="yyyy-MM-dd"--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--            placeholder="选择最后一次看课时间">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--          </el-date-picker>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        </el-form-item>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </el-form>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      <div slot="footer" class="dialog-footer">--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-button type="primary" @click="submitForm">确 定</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--        <el-button @click="cancel">取 消</el-button>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--      </div>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<!--    </el-dialog>--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { listUserOnlineState, getUserOnlineState, delUserOnlineState, addUserOnlineState, updateUserOnlineState, exportUserOnlineState } from "@/api/store/userOnlineState"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  name: "UserOnlineState", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 遮罩层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      loading: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 导出遮罩层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      exportLoading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 选中数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ids: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 非单个禁用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      single: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 非多个禁用 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      multiple: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 显示搜索条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      showSearch: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 总条数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      total: 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 用户上线情况表格数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      userOnlineStateList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 弹出层标题 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      title: "", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 是否显示弹出层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      open: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 查询参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      queryParams: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageNum: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageSize: 10, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        nickname: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        avatar: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        phone: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        maOpenId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        mpOpenId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        unionId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyUserId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onlineStatus: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onlineTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        watchCourseCount: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        partCourseCount: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        lastWatchDate: null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 表单参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      form: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 表单校验 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      rules: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  created() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 查询用户上线情况列表 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      listUserOnlineState(this.queryParams).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.userOnlineStateList = response.rows; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.total = response.total; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 取消按钮 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    cancel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 表单重置 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    reset() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.form = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        userId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        nickname: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        avatar: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        phone: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        createTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        maOpenId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        mpOpenId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        unionId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        companyUserId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onlineStatus: 0, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onlineTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        watchCourseCount: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        partCourseCount: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        lastWatchDate: null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetForm("form"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 搜索按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleQuery() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.pageNum = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 重置按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    resetQuery() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.resetForm("queryForm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.handleQuery(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 多选框选中数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleSelectionChange(selection) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.ids = selection.map(item => item.userId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.single = selection.length!==1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.multiple = !selection.length 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 新增按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleAdd() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.open = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.title = "添加用户上线情况"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 修改按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleUpdate(row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.reset(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const userId = row.userId || this.ids 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      getUserOnlineState(userId).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.form = response.data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.open = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.title = "修改用户上线情况"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 提交按钮 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    submitForm() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs["form"].validate(valid => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (valid) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (this.form.userId != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            updateUserOnlineState(this.form).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.msgSuccess("修改成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            addUserOnlineState(this.form).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.msgSuccess("新增成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.open = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 删除按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleDelete(row) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const userIds = row.userId || this.ids; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$confirm('是否确认删除用户上线情况编号为"' + userIds + '"的数据项?', "警告", { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          confirmButtonText: "确定", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cancelButtonText: "取消", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type: "warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).then(function() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return delUserOnlineState(userIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.msgSuccess("删除成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).catch(() => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 导出按钮操作 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleExport() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const queryParams = this.queryParams; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$confirm('是否确认导出所有用户上线情况数据项?', "警告", { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          confirmButtonText: "确定", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          cancelButtonText: "取消", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          type: "warning" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).then(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.exportLoading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return exportUserOnlineState(queryParams); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).then(response => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.download(response.msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.exportLoading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).catch(() => {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 |