|
@@ -3,7 +3,6 @@
|
|
|
<!-- Tab 切换 -->
|
|
<!-- Tab 切换 -->
|
|
|
<el-tabs v-model="activeTab" @tab-click="handleTabClick">
|
|
<el-tabs v-model="activeTab" @tab-click="handleTabClick">
|
|
|
<el-tab-pane label="公司" name="company"></el-tab-pane>
|
|
<el-tab-pane label="公司" name="company"></el-tab-pane>
|
|
|
- <el-tab-pane label="项目" name="project"></el-tab-pane>
|
|
|
|
|
<el-tab-pane label="课程" name="course"></el-tab-pane>
|
|
<el-tab-pane label="课程" name="course"></el-tab-pane>
|
|
|
<el-tab-pane label="公开课" name="common"></el-tab-pane>
|
|
<el-tab-pane label="公开课" name="common"></el-tab-pane>
|
|
|
</el-tabs>
|
|
</el-tabs>
|
|
@@ -17,13 +16,6 @@
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
|
|
|
|
|
- <!-- 项目选择 -->
|
|
|
|
|
- <el-form-item label="项目" v-if="activeTab === 'all' || activeTab === 'project'">
|
|
|
|
|
- <el-select v-model="queryParams.project" placeholder="请选择项目" filterable clearable size="small">
|
|
|
|
|
- <el-option v-for="dict in projectOptions" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
|
|
|
|
|
- </el-select>
|
|
|
|
|
- </el-form-item>
|
|
|
|
|
-
|
|
|
|
|
<!-- 课程选择 -->
|
|
<!-- 课程选择 -->
|
|
|
<el-form-item label="课程" v-if="activeTab === 'all' || activeTab === 'course'">
|
|
<el-form-item label="课程" v-if="activeTab === 'all' || activeTab === 'course'">
|
|
|
<el-select v-model="queryParams.courseId" placeholder="请选择课程" filterable clearable size="small">
|
|
<el-select v-model="queryParams.courseId" placeholder="请选择课程" filterable clearable size="small">
|
|
@@ -52,6 +44,7 @@
|
|
|
<el-form-item>
|
|
<el-form-item>
|
|
|
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
|
<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-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
|
|
|
|
+ <el-button icon="el-icon-download" size="mini" @click="handleExport">导出</el-button>
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-form>
|
|
</el-form>
|
|
|
|
|
|
|
@@ -60,8 +53,6 @@
|
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
<el-table-column type="selection" width="55" align="center" />
|
|
|
<!-- 公司列 -->
|
|
<!-- 公司列 -->
|
|
|
<el-table-column label="公司" align="center" prop="companyName" v-if="activeTab === 'all' || activeTab === 'company'" />
|
|
<el-table-column label="公司" align="center" prop="companyName" v-if="activeTab === 'all' || activeTab === 'company'" />
|
|
|
- <!-- 项目列 -->
|
|
|
|
|
- <el-table-column label="项目" align="center" prop="projectName" v-if="activeTab === 'all' || activeTab === 'project'" />
|
|
|
|
|
<!-- 课程列 -->
|
|
<!-- 课程列 -->
|
|
|
<el-table-column label="课程" align="center" prop="courseName" v-if="activeTab === 'all' || activeTab === 'course'||activeTab === 'common'" />
|
|
<el-table-column label="课程" align="center" prop="courseName" v-if="activeTab === 'all' || activeTab === 'course'||activeTab === 'common'" />
|
|
|
<el-table-column label="日期" align="center" prop="month" />
|
|
<el-table-column label="日期" align="center" prop="month" />
|
|
@@ -184,7 +175,19 @@ export default {
|
|
|
getAllCompany() {
|
|
getAllCompany() {
|
|
|
allList().then(res => this.companyList = res.rows);
|
|
allList().then(res => this.companyList = res.rows);
|
|
|
},
|
|
},
|
|
|
|
|
+ //校验日期范围的私有方法
|
|
|
|
|
+ validateDateRange() {
|
|
|
|
|
+ if (!this.timeRange || this.timeRange.length !== 2) {
|
|
|
|
|
+ this.$message.warning("请选择日期范围!");
|
|
|
|
|
+ return false; // 校验失败
|
|
|
|
|
+ }
|
|
|
|
|
+ return true; // 校验成功
|
|
|
|
|
+ },
|
|
|
getList() {
|
|
getList() {
|
|
|
|
|
+ if (!this.validateDateRange()) {
|
|
|
|
|
+ this.loading = false; // 确保加载状态被关闭
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
this.loading = true;
|
|
this.loading = true;
|
|
|
listCourseTrafficLog(this.queryParams).then(res => {
|
|
listCourseTrafficLog(this.queryParams).then(res => {
|
|
|
this.courseTrafficLogList = res.rows;
|
|
this.courseTrafficLogList = res.rows;
|
|
@@ -194,6 +197,9 @@ export default {
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
handleQuery() {
|
|
handleQuery() {
|
|
|
|
|
+ if (!this.validateDateRange()) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
this.queryParams.tabType = this.activeTab
|
|
this.queryParams.tabType = this.activeTab
|
|
|
this.queryParams.pageNum = 1;
|
|
this.queryParams.pageNum = 1;
|
|
|
this.getList();
|
|
this.getList();
|