6 次代码提交 b90c5f0409 ... 8f3fc66334

作者 SHA1 备注 提交日期
  caoliqin 8f3fc66334 Merge branch 'refs/heads/master-fby' 1 周之前
  caoliqin cd6f0a5747 feat:会员管理和小黑屋页面调整 1 周之前
  caoliqin 8f3b63dae5 feat:小黑屋 1 周之前
  caoliqin 15aa1d84e9 Merge branch 'refs/heads/master-fby' 1 周之前
  caoliqin 713621de7b feat:三个表格添加“上线率”统计 3 周之前
  caoliqin f9c8f0348f feat:需求调整-营期添加“线”,并用于三张表统计 3 周之前

+ 25 - 3
src/views/course/userCourseComplaintRecord/index.vue

@@ -1,15 +1,36 @@
 <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-form-item label="用户ID" prop="userId">
         <el-input
-          v-model="queryParams.nickName"
-          placeholder="请输入用户昵称"
+          v-model="queryParams.userId"
+          placeholder="请输入用户ID"
           clearable
           size="small"
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
+      <el-form-item label="投诉类型" prop="complaintTypeName">
+        <el-input
+          v-model="queryParams.complaintTypeName"
+          placeholder="请输入投诉类型"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="创建时间" prop="dateRange">
+        <el-date-picker
+          v-model="dateRange"
+          type="daterange"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+          value-format="yyyy-MM-dd"
+          style="width: 260px"
+          @change="handleDateRangeChange"
+        />
+      </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>
@@ -65,6 +86,7 @@
 
     <el-table border v-loading="loading" :data="userCourseComplaintRecordList" @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" prop="complaintTypeName" />
       <el-table-column label="所属课程" align="center" prop="courseName" />

+ 19 - 0
src/views/course/userCoursePeriod/index.vue

@@ -165,6 +165,7 @@
           <el-table-column label="营期名称" align="center" prop="periodName" />
           <el-table-column label="公司名称" align="center" prop="companyName" />
           <el-table-column label="营期状态" align="center" prop="periodStatus" width="100" :formatter="periodStatusFormatter" />
+          <el-table-column label="营期线" align="center" prop="periodLine" width="180" />
           <el-table-column label="开营开始时间" align="center" prop="periodStartingTime" width="180" />
           <el-table-column label="开营结束时间" align="center" prop="periodEndTime" width="180" />
           <el-table-column label="创建时间" align="center" prop="createTime" width="180" />
@@ -291,6 +292,21 @@
           >
           </el-date-picker>
         </el-form-item>
+        <el-form-item prop="periodLine">
+          <span slot="label">
+            营期线
+            <el-tooltip content="营期首次播放课程的日期" placement="top">
+              <i class="el-icon-question" style="margin-left: 5px; color: #909399; cursor: help;"></i>
+            </el-tooltip>
+          </span>
+          <el-date-picker
+            v-model="form.periodLine"
+            type="date"
+            placeholder="请选择营期线"
+            value-format="yyyy-MM-dd"
+            :clearable="false">
+          </el-date-picker>
+        </el-form-item>
       </el-form>
       <div class="drawer-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -714,6 +730,9 @@ export default {
         ],
         periodStartingTime: [
           { required: true, message: '开营日期不能为空', trigger: 'change' }
+        ],
+        periodLine:  [
+          { required: true, message: '营期线不能为空', trigger: 'change' }
         ]
       },
       // 公司选项

+ 4 - 3
src/views/course/userWatchCourseStatistics/index.vue

@@ -11,12 +11,12 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="营期日期" prop="periodStartingTime">
+      <el-form-item label="营期线" prop="periodStartingTime">
         <el-date-picker clearable size="small"
                         v-model="queryParams.periodStartingTime"
                         type="date"
                         value-format="yyyy-MM-dd"
-                        placeholder="选择营期开始日期">
+                        placeholder="选择营期线">
         </el-date-picker>
       </el-form-item>
       <el-form-item label="播出时间" prop="courseStartDateTime">
@@ -81,7 +81,7 @@
     <el-table border v-loading="loading" :data="userWatchCourseStatisticsList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="营期名称" align="center" prop="periodName" />
-      <el-table-column label="营期日期" align="center" prop="periodStartingTime" />
+      <el-table-column label="营期线" align="center" prop="periodStartingTime" />
       <el-table-column label="播出时间" align="center" prop="courseStartDateTime" />
       <el-table-column label="课程名称" align="center" prop="courseName" />
       <el-table-column label="视频小节" align="center" prop="videoTitle" />
@@ -90,6 +90,7 @@
       <el-table-column label="新增会员" align="center" prop="newUserNum" />
       <el-table-column label="会员数量" align="center" prop="userNum" />
       <el-table-column label="观看人数" align="center" prop="watchNum" />
+      <el-table-column label="上线率" align="center" prop="onlineRatePercent" />
       <el-table-column label="完播人数" align="center" prop="completeWatchNum" />
       <el-table-column label="完播率" align="center" prop="completeWatchRatePercent" />
       <el-table-column label="答题人数" align="center" prop="answerNum" />

+ 4 - 3
src/views/course/userWatchCourseTotalStatistics/index.vue

@@ -11,12 +11,12 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="营期日期" prop="periodStartingTime">
+      <el-form-item label="营期线" prop="periodStartingTime">
         <el-date-picker clearable size="small"
                         v-model="queryParams.periodStartingTime"
                         type="date"
                         value-format="yyyy-MM-dd"
-                        placeholder="选择营期开始日期">
+                        placeholder="选择营期线">
         </el-date-picker>
       </el-form-item>
       <el-form-item label="播出时间" prop="courseStartDateTime">
@@ -89,7 +89,7 @@
     <el-table border v-loading="loading" :data="userWatchCourseStatisticsList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="营期名称" align="center" prop="periodName" />
-      <el-table-column label="营期日期" align="center" prop="periodStartingTime" />
+      <el-table-column label="营期线" align="center" prop="periodStartingTime" />
       <el-table-column label="播出时间" align="center" prop="courseStartDateTime" />
       <el-table-column label="课程名称" align="center" prop="courseName" />
       <el-table-column label="视频小节" align="center" prop="videoTitle" />
@@ -98,6 +98,7 @@
       <el-table-column label="新增会员" align="center" prop="newUserNum" />
       <el-table-column label="会员数量" align="center" prop="userNum" />
       <el-table-column label="观看人数" align="center" prop="watchNum" />
+      <el-table-column label="上线率" align="center" prop="onlineRatePercent" />
       <el-table-column label="完播人数" align="center" prop="completeWatchNum" />
       <el-table-column label="完播率" align="center" prop="completeWatchRatePercent" />
       <el-table-column label="红包领取个数" align="center" prop="redPacketNum" />

+ 4 - 3
src/views/course/userWatchStatistics/index.vue

@@ -11,12 +11,12 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="营期日期" prop="periodStartingTime">
+      <el-form-item label="营期线" prop="periodStartingTime">
         <el-date-picker clearable size="small"
           v-model="queryParams.periodStartingTime"
           type="date"
           value-format="yyyy-MM-dd"
-          placeholder="选择营期开始日期">
+          placeholder="选择营期线">
         </el-date-picker>
       </el-form-item>
 
@@ -55,7 +55,7 @@
     <el-table border v-loading="loading" :data="userWatchStatisticsList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="营期名称" align="center" prop="periodName" />
-      <el-table-column label="营期开始日期" align="center" prop="periodStartingTime" width="180">
+      <el-table-column label="营期线" align="center" prop="periodStartingTime" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.periodStartingTime, '{y}-{m}-{d}') }}</span>
         </template>
@@ -64,6 +64,7 @@
       <el-table-column label="新增会员" align="center" prop="newUserNum" />
       <el-table-column label="会员数量" align="center" prop="userNum" />
       <el-table-column label="观看人数" align="center" prop="watchNum" />
+      <el-table-column label="上线率" align="center" prop="onlineRatePercent" />
       <el-table-column label="完播人数" align="center" prop="completeWatchNum" />
       <el-table-column label="完播率" align="center" prop="completeWatchRatePercent" />
 

+ 1 - 1
src/views/store/user/index.vue

@@ -237,7 +237,7 @@
               <img slot="reference" :src="form.avatar" width="80" style="border-radius: 8px; border: 2px solid #ddd;">
               <img :src="form.avatar" style="max-width: 200px; border-radius: 8px;">
             </el-popover>
-            
+
             <div>
               <el-upload
                 class="avatar-uploader"

+ 20 - 20
src/views/user/darkRoom/index.vue

@@ -45,25 +45,25 @@
       </el-table-column>
       <el-table-column label="手机号码" align="center" prop="phone" width="160px"/>
       <el-table-column label="注册时间" align="center" prop="createTime" width="160px"/>
-      <el-table-column label="看课数量" align="center" prop="watchCourseCount" />
-      <el-table-column label="缺课数量" align="center" prop="missCourseCount" />
-      <el-table-column label="缺课状态" align="center" prop="missCourseStatus">
-        <template slot-scope="scope">
-          <el-tag effect="dark" type="danger"  v-if="scope.row.missCourseStatus === 1">已缺课</el-tag>
-          <el-tag effect="dark" type="success" v-else>未缺课</el-tag>
-        </template>
-      </el-table-column>
-      <el-table-column label="参与营期数量" align="center" prop="partCourseCount" width="100px"/>
+<!--      <el-table-column label="看课数量" align="center" prop="watchCourseCount" />-->
+<!--      <el-table-column label="缺课数量" align="center" prop="missCourseCount" />-->
+<!--      <el-table-column label="缺课状态" align="center" prop="missCourseStatus">-->
+<!--        <template slot-scope="scope">-->
+<!--          <el-tag effect="dark" type="danger"  v-if="scope.row.missCourseStatus === 1">已缺课</el-tag>-->
+<!--          <el-tag effect="dark" type="success" v-else>未缺课</el-tag>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+<!--      <el-table-column label="参与营期数量" align="center" prop="partCourseCount" width="100px"/>-->
       <el-table-column label="最后一次看课时间" align="center" prop="lastWatchDate"  width="160px"/>
-      <el-table-column label="看课状态" align="center" prop="courseCountStatus">
-        <template slot-scope="scope">
-          <el-tag effect="dark" type="success" v-if="scope.row.courseCountStatus === 1">正常</el-tag>
-          <el-tag effect="dark" type="info"    v-else-if="scope.row.courseCountStatus === 2">停止</el-tag>
-          <el-tag effect="dark" type="danger"  v-else>未看</el-tag>
-        </template>
-      </el-table-column>
-      <el-table-column label="停课天数" align="center" prop="stopWatchDays" />
-      <el-table-column label="完播时间" align="center" prop="completeWatchDate" width="160px"/>
+<!--      <el-table-column label="看课状态" align="center" prop="courseCountStatus">-->
+<!--        <template slot-scope="scope">-->
+<!--          <el-tag effect="dark" type="success" v-if="scope.row.courseCountStatus === 1">正常</el-tag>-->
+<!--          <el-tag effect="dark" type="info"    v-else-if="scope.row.courseCountStatus === 2">停止</el-tag>-->
+<!--          <el-tag effect="dark" type="danger"  v-else>未看</el-tag>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+<!--      <el-table-column label="停课天数" align="center" prop="stopWatchDays" />-->
+<!--      <el-table-column label="完播时间" align="center" prop="completeWatchDate" width="160px"/>-->
       <el-table-column label="标签名称" align="center" prop="tag" />
       <el-table-column label="所属销售名称" align="center" prop="companyUserNickName" width="120px"/>
       <el-table-column label="是否重粉" align="center" prop="isRepeatFans" width="120px">
@@ -73,7 +73,7 @@
         </template>
       </el-table-column>
       <el-table-column label="备注" align="center" prop="remark" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
 <!--        <template slot-scope="scope">-->
 <!--          <el-button-->
 <!--            size="mini"-->
@@ -83,7 +83,7 @@
 <!--            v-if="scope.row.isRepeatFans !== 1"-->
 <!--          >启用</el-button>-->
 <!--        </template>-->
-      </el-table-column>
+<!--      </el-table-column>-->
     </el-table>
 
     <pagination