|
|
@@ -58,7 +58,7 @@
|
|
|
/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="companyName === undefined || companyName === 1" label="所属销售" prop="companyUserId">
|
|
|
+ <el-form-item label="所属销售" prop="companyUserId">
|
|
|
<el-select v-model="queryParams.companyUserId" clearable filterable remote
|
|
|
placeholder="请输入关键词" :remote-method="loadCompanyUserOptions"
|
|
|
v-select-load-more="loadMoreCompanyUserOptions"
|
|
|
@@ -71,19 +71,6 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item v-if="companyName==2" label="所属销售" prop="companyUserId">
|
|
|
- <el-select v-model="queryParams.companyUserId" clearable filterable remote
|
|
|
- placeholder="请输入关键词"
|
|
|
- v-select-load-more="loadMoreCompanyUserOptions"
|
|
|
- :loading="companyUserOptionsLoading">
|
|
|
- <el-option
|
|
|
- v-for="item in companyUserOptionsByAll"
|
|
|
- :key="item.dictValue"
|
|
|
- :label="item.dictLabel"
|
|
|
- :value="item.dictValue">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
<!-- sop名称 -->
|
|
|
<el-form-item label="SOP名称" prop="sopId" v-if="queryParams.sendType == 2">
|
|
|
<el-autocomplete
|
|
|
@@ -107,67 +94,59 @@
|
|
|
|
|
|
<!-- 营期时间 -->
|
|
|
<el-form-item label="营期时间" prop="scheduleTime">
|
|
|
- <el-input
|
|
|
- v-model="scheduleTimeText"
|
|
|
- placeholder="请选择营期时间"
|
|
|
- readonly
|
|
|
- @click.native="showScheduleCalendar = true"
|
|
|
- />
|
|
|
- <calendar
|
|
|
+ <el-date-picker
|
|
|
v-model="scheduleTime"
|
|
|
- mode="during"
|
|
|
- :show.sync="showScheduleCalendar"
|
|
|
- @change="handleScheduleTimeChange"
|
|
|
- :key="scheduleCalendarKey"
|
|
|
- />
|
|
|
+ size="small"
|
|
|
+ style="width: 220px"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="-"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ @change="handleScheduleTimeChange">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item>
|
|
|
<!-- 创建时间 -->
|
|
|
<el-form-item label="创建时间" prop="createTime">
|
|
|
- <el-input
|
|
|
- v-model="createTimeText"
|
|
|
- placeholder="请选择创建时间"
|
|
|
- readonly
|
|
|
- @click.native="showCreateCalendar = true"
|
|
|
- />
|
|
|
- <calendar
|
|
|
+ <el-date-picker
|
|
|
v-model="createTime"
|
|
|
- mode="during"
|
|
|
- :show.sync="showCreateCalendar"
|
|
|
- @change="createChange"
|
|
|
- :key="createCalendarKey"
|
|
|
- />
|
|
|
+ size="small"
|
|
|
+ style="width: 220px"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="-"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ @change="createChange">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item>
|
|
|
<!-- 最新更新时间 -->
|
|
|
<el-form-item label="最新更新时间" prop="updateTime">
|
|
|
- <el-input
|
|
|
- v-model="updateTimeText"
|
|
|
- placeholder="请选择更新时间"
|
|
|
- readonly
|
|
|
- @click.native="showUpdateCalendar = true"
|
|
|
- />
|
|
|
- <calendar
|
|
|
+ <el-date-picker
|
|
|
v-model="updateTime"
|
|
|
- mode="during"
|
|
|
- :show.sync="showUpdateCalendar"
|
|
|
- @change="updateChange"
|
|
|
- :key="updateCalendarKey"
|
|
|
- />
|
|
|
+ size="small"
|
|
|
+ style="width: 220px"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="-"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ @change="updateChange">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item>
|
|
|
<!-- 进线时间 -->
|
|
|
<el-form-item label="进线时间" prop="qecCreateTime">
|
|
|
- <el-input
|
|
|
- v-model="qecCreateTimeText"
|
|
|
- placeholder="请选择进线时间"
|
|
|
- readonly
|
|
|
- @click.native="showQecCalendar = true"
|
|
|
- />
|
|
|
- <calendar
|
|
|
+ <el-date-picker
|
|
|
v-model="qecCreateTime"
|
|
|
- mode="during"
|
|
|
- :show.sync="showQecCalendar"
|
|
|
- @change="qecCreateTimeChange"
|
|
|
- :key="qecCalendarKey"
|
|
|
- />
|
|
|
+ size="small"
|
|
|
+ style="width: 220px"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ type="daterange"
|
|
|
+ range-separator="-"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ @change="qecCreateTimeChange">
|
|
|
+ </el-date-picker>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="是否为会员" prop="isVip">
|
|
|
<el-select
|
|
|
@@ -501,39 +480,13 @@ import {listLogs} from "@/api/course/courseAnswerlogs";
|
|
|
import {allListTagGroup} from "../../../api/qw/tagGroup";
|
|
|
import {searchTags} from "../../../api/qw/tag";
|
|
|
import {addTagByWatch, delTagByWatch} from "../../../api/qw/externalContact";
|
|
|
-import Vue from 'vue'
|
|
|
-import Calendar from 'vue-mobile-calendar'
|
|
|
import {infoSop} from "@/api/qw/sop";
|
|
|
import {getCompanyUserListLikeName} from "../../../api/company/companyUser";
|
|
|
-Vue.use(Calendar)
|
|
|
|
|
|
export default {
|
|
|
name: "CourseWatchLog",
|
|
|
data() {
|
|
|
return {
|
|
|
- companyName:process.env.VUE_APP_COURSE_COMPANY_NAME,
|
|
|
- // 日历 key 控制刷新
|
|
|
- scheduleCalendarKey: 0,
|
|
|
- createCalendarKey: 0,
|
|
|
- updateCalendarKey: 0,
|
|
|
- qecCalendarKey: 0,
|
|
|
-
|
|
|
- createTimeText: '',
|
|
|
- scheduleTimeText: '', // 新增
|
|
|
- updateTimeText: '', // 新增
|
|
|
- qecCreateTimeText: '', // 新增
|
|
|
-
|
|
|
- scheduleTime: [], // 改为数组
|
|
|
- createTime: [], // 改为数组
|
|
|
- updateTime: [], // 改为数组
|
|
|
- qecCreateTime: [], // 改为数组
|
|
|
-
|
|
|
- // 控制日历显隐
|
|
|
- showScheduleCalendar: false,
|
|
|
- showCreateCalendar: false,
|
|
|
- showUpdateCalendar: false,
|
|
|
- showQecCalendar: false,
|
|
|
-
|
|
|
resultDialogVisible: false,
|
|
|
resultMessage: '',
|
|
|
resultTitle:'',
|
|
|
@@ -674,11 +627,16 @@ export default {
|
|
|
name: undefined,
|
|
|
hasNextPage: false,
|
|
|
pageNum: 1,
|
|
|
- pageSize: 200
|
|
|
+ pageSize: 10
|
|
|
},
|
|
|
companyUserOptions: [],
|
|
|
- companyUserOptionsByAll: [],
|
|
|
companyUserOptionsLoading: false,
|
|
|
+
|
|
|
+ // 时间选择器数据
|
|
|
+ scheduleTime: [],
|
|
|
+ createTime: [],
|
|
|
+ updateTime: [],
|
|
|
+ qecCreateTime: [],
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
@@ -689,7 +647,6 @@ export default {
|
|
|
this.getDicts("sys_course_watch_log_type").then(response => {
|
|
|
this.logTypeOptions = response.data;
|
|
|
});
|
|
|
- this.getCompanyUserListLikeName(true);
|
|
|
},
|
|
|
methods: {
|
|
|
/**
|
|
|
@@ -722,79 +679,30 @@ export default {
|
|
|
/**
|
|
|
* 获取员工列表
|
|
|
*/
|
|
|
- getCompanyUserListLikeName(isAll) {
|
|
|
-
|
|
|
- if (isAll){
|
|
|
-
|
|
|
- getCompanyUserListLikeName(this.companyUserOptionsParams).then(response => {
|
|
|
- this.companyUserOptionsByAll = [...this.companyUserOptions, ...response.data.list]
|
|
|
- this.companyUserOptionsParams.hasNextPage = response.data.hasNextPage
|
|
|
- this.companyUserOptionsLoading = false;
|
|
|
- });
|
|
|
- }else {
|
|
|
- getCompanyUserListLikeName(this.companyUserOptionsParams).then(response => {
|
|
|
- this.companyUserOptions = [...this.companyUserOptions, ...response.data.list]
|
|
|
- this.companyUserOptionsParams.hasNextPage = response.data.hasNextPage
|
|
|
- this.companyUserOptionsLoading = false;
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- },
|
|
|
- // 重置日历组件
|
|
|
- resetCalendars() {
|
|
|
- this.scheduleTime = [];
|
|
|
- this.createTime = [];
|
|
|
- this.updateTime = [];
|
|
|
- this.qecCreateTime = [];
|
|
|
-
|
|
|
- this.scheduleTimeText = '';
|
|
|
- this.createTimeText = '';
|
|
|
- this.updateTimeText = '';
|
|
|
- this.qecCreateTimeText = '';
|
|
|
-
|
|
|
- // 强制刷新日历组件
|
|
|
- this.scheduleCalendarKey++;
|
|
|
- this.createCalendarKey++;
|
|
|
- this.updateCalendarKey++;
|
|
|
- this.qecCalendarKey++;
|
|
|
- },
|
|
|
- formatDateRange(dates) {
|
|
|
- if (!dates || dates.length < 2) return '';
|
|
|
- return dates.map(date => date.format('YYYY-MM-DD')).join(' ~ ');
|
|
|
- },
|
|
|
- courseChange(row){
|
|
|
- this.queryParams.videoId=null;
|
|
|
- if(row === ''){
|
|
|
- this.videoList=[];
|
|
|
- return
|
|
|
- }
|
|
|
- videoList(row).then(response => {
|
|
|
- this.videoList=response.list
|
|
|
+ getCompanyUserListLikeName() {
|
|
|
+ getCompanyUserListLikeName(this.companyUserOptionsParams).then(response => {
|
|
|
+ this.companyUserOptions = [...this.companyUserOptions, ...response.data.list]
|
|
|
+ this.companyUserOptionsParams.hasNextPage = response.data.hasNextPage
|
|
|
+ this.companyUserOptionsLoading = false;
|
|
|
});
|
|
|
},
|
|
|
|
|
|
// 营期时间
|
|
|
handleScheduleTimeChange(scheduleTime) {
|
|
|
- if (scheduleTime && scheduleTime.length >= 2) {
|
|
|
- this.scheduleTimeText = this.formatDateRange(scheduleTime);
|
|
|
- this.queryParams.scheduleStartTime = scheduleTime.map(date => date.format('YYYY-MM-DD'))[0] || null;
|
|
|
- this.queryParams.scheduleEndTime = scheduleTime.map(date => date.format('YYYY-MM-DD'))[1] || null;
|
|
|
- console.log(this.queryParams.scheduleStartTime)
|
|
|
- console.log(this.queryParams.scheduleEndTime)
|
|
|
+ if (scheduleTime && scheduleTime.length === 2) {
|
|
|
+ this.queryParams.scheduleStartTime = scheduleTime[0];
|
|
|
+ this.queryParams.scheduleEndTime = scheduleTime[1];
|
|
|
} else {
|
|
|
- this.scheduleTimeText = '';
|
|
|
this.queryParams.scheduleStartTime = null;
|
|
|
this.queryParams.scheduleEndTime = null;
|
|
|
}
|
|
|
},
|
|
|
// 创建时间
|
|
|
createChange(createTime) {
|
|
|
- if (createTime && createTime.length >= 2) {
|
|
|
- this.createTimeText = this.formatDateRange(createTime);
|
|
|
- this.queryParams.sTime = createTime.map(date => date.format('YYYY-MM-DD'))[0] || null;
|
|
|
- this.queryParams.eTime = createTime.map(date => date.format('YYYY-MM-DD'))[1] || null;
|
|
|
+ if (createTime && createTime.length === 2) {
|
|
|
+ this.queryParams.sTime = createTime[0];
|
|
|
+ this.queryParams.eTime = createTime[1];
|
|
|
} else {
|
|
|
- this.createTimeText = '';
|
|
|
this.queryParams.sTime = null;
|
|
|
this.queryParams.eTime = null;
|
|
|
}
|
|
|
@@ -802,12 +710,10 @@ export default {
|
|
|
|
|
|
// 更新时间
|
|
|
updateChange(updateTime) {
|
|
|
- if (updateTime && updateTime.length >= 2) {
|
|
|
- this.updateTimeText = this.formatDateRange(updateTime);
|
|
|
- this.queryParams.upSTime = updateTime.map(date => date.format('YYYY-MM-DD'))[0] || null;
|
|
|
- this.queryParams.upETime = updateTime.map(date => date.format('YYYY-MM-DD'))[1] || null;
|
|
|
+ if (updateTime && updateTime.length === 2) {
|
|
|
+ this.queryParams.upSTime = updateTime[0];
|
|
|
+ this.queryParams.upETime = updateTime[1];
|
|
|
} else {
|
|
|
- this.updateTimeText = '';
|
|
|
this.queryParams.upSTime = null;
|
|
|
this.queryParams.upETime = null;
|
|
|
}
|
|
|
@@ -815,7 +721,7 @@ export default {
|
|
|
|
|
|
// 进线时间
|
|
|
qecCreateTimeChange(qecCreateTime) {
|
|
|
- if (qecCreateTime && qecCreateTime.length >= 2) {
|
|
|
+ if (qecCreateTime && qecCreateTime.length === 2) {
|
|
|
// 检查选择的日期范围是否超过7天(包括起始和结束日期)
|
|
|
const startDate = new Date(qecCreateTime[0]);
|
|
|
const endDate = new Date(qecCreateTime[1]);
|
|
|
@@ -832,18 +738,14 @@ export default {
|
|
|
this.$message.error('进线时间选择范围不能超过7天');
|
|
|
// 清空选择
|
|
|
this.qecCreateTime = [];
|
|
|
- this.qecCreateTimeText = '';
|
|
|
this.queryParams.qecSTime = null;
|
|
|
this.queryParams.qecETime = null;
|
|
|
- this.qecCalendarKey++;
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- this.qecCreateTimeText = this.formatDateRange(qecCreateTime);
|
|
|
- this.queryParams.qecSTime = qecCreateTime.map(date => date.format('YYYY-MM-DD'))[0] || null;
|
|
|
- this.queryParams.qecETime = qecCreateTime.map(date => date.format('YYYY-MM-DD'))[1] || null;
|
|
|
+ this.queryParams.qecSTime = qecCreateTime[0];
|
|
|
+ this.queryParams.qecETime = qecCreateTime[1];
|
|
|
} else {
|
|
|
- this.qecCreateTimeText = '';
|
|
|
this.queryParams.qecSTime = null;
|
|
|
this.queryParams.qecETime = null;
|
|
|
}
|
|
|
@@ -903,8 +805,6 @@ export default {
|
|
|
scheduleStartTime: null,
|
|
|
scheduleEndTime: null,
|
|
|
};
|
|
|
- // 统一重置日历组件
|
|
|
- this.resetCalendars();
|
|
|
this.resetForm("form");
|
|
|
},
|
|
|
/** 搜索按钮操作 */
|
|
|
@@ -928,8 +828,11 @@ export default {
|
|
|
// 重置SOP搜索
|
|
|
this.handleSopClear();
|
|
|
|
|
|
- // 统一重置日历组件
|
|
|
- this.resetCalendars();
|
|
|
+ // 重置日期选择器
|
|
|
+ this.scheduleTime = [];
|
|
|
+ this.createTime = [];
|
|
|
+ this.updateTime = [];
|
|
|
+ this.qecCreateTime = [];
|
|
|
|
|
|
this.handleQuery();
|
|
|
},
|