|
@@ -23,13 +23,48 @@
|
|
|
:semester-id="filter.semesterId"
|
|
|
></exam-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="印刷计划:">
|
|
|
- <print-plan-select
|
|
|
- v-model.trim="filter.printPlanId"
|
|
|
- placeholder="印刷计划"
|
|
|
+ <el-form-item label="学院:">
|
|
|
+ <college-select
|
|
|
+ v-model="filter.orgId"
|
|
|
+ placeholder="学院"
|
|
|
+ ></college-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="推送状态:">
|
|
|
+ <el-select
|
|
|
+ v-model="filter.syncStatus"
|
|
|
+ style="width: 120px;"
|
|
|
+ placeholder="推送状态"
|
|
|
clearable
|
|
|
- ></print-plan-select>
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="(val, key) in PUSH_TYPE"
|
|
|
+ :key="key"
|
|
|
+ :value="key"
|
|
|
+ :label="val"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
+ <el-form-item label="课程名称:">
|
|
|
+ <el-input
|
|
|
+ v-model="filter.courseName"
|
|
|
+ placeholder="课程名称"
|
|
|
+ clearable
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-date-picker
|
|
|
+ v-model="createTime"
|
|
|
+ type="datetimerange"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="考试开始时间"
|
|
|
+ end-placeholder="考试结束时间"
|
|
|
+ value-format="timestamp"
|
|
|
+ align="right"
|
|
|
+ unlink-panels
|
|
|
+ >
|
|
|
+ </el-date-picker>
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
<el-form-item label-width="0px">
|
|
|
<el-button type="primary" @click="search">查询</el-button>
|
|
|
</el-form-item>
|
|
@@ -54,32 +89,55 @@
|
|
|
type="selection"
|
|
|
width="55"
|
|
|
align="center"
|
|
|
- :selectable="row => row.canPush"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column prop="name" label="课程名称(代码)" min-width="140">
|
|
|
+ <span slot-scope="scope"
|
|
|
+ >{{ scope.row.courseName }}({{ scope.row.courseCode }})</span
|
|
|
+ >
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="sequence"
|
|
|
+ label="序号"
|
|
|
+ width="60"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="name"
|
|
|
- label="印刷计划"
|
|
|
- min-width="180"
|
|
|
+ prop="paperNumber"
|
|
|
+ label="试卷编号"
|
|
|
+ min-width="100"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="totalSubjects"
|
|
|
- label="课程数"
|
|
|
+ prop="paperType"
|
|
|
+ label="卷型"
|
|
|
+ width="60"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="syncCardType"
|
|
|
+ label="题卡类型"
|
|
|
width="100"
|
|
|
></el-table-column>
|
|
|
+ <el-table-column prop="examDate" label="考试日期" width="160">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="examTime" label="考试时间" width="120">
|
|
|
+ </el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="syncSuccessCount"
|
|
|
- label="推送成功课程数"
|
|
|
- width="140"
|
|
|
+ prop="totalSubjects"
|
|
|
+ label="科次"
|
|
|
+ width="60"
|
|
|
+ ></el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="syncStatusDisplay"
|
|
|
+ label="推送状态"
|
|
|
+ width="100"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="syncFailCount"
|
|
|
- label="推送失败课程数"
|
|
|
- width="140"
|
|
|
+ prop="syncUserName"
|
|
|
+ label="推送人"
|
|
|
+ width="120"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
- prop="syncInitCount"
|
|
|
- label="未推送课程数"
|
|
|
- width="140"
|
|
|
+ prop="thirdRelateId"
|
|
|
+ label="考试ID"
|
|
|
+ width="100"
|
|
|
></el-table-column>
|
|
|
<el-table-column
|
|
|
class-name="action-column"
|
|
@@ -126,7 +184,7 @@
|
|
|
<!-- PrintPlanBatchPushDialog -->
|
|
|
<print-plan-batch-push-dialog
|
|
|
ref="PrintPlanBatchPushDialog"
|
|
|
- :ids="curSelectedPlanIds"
|
|
|
+ :courses="curSelectedCourses"
|
|
|
@modified="mergePushed"
|
|
|
></print-plan-batch-push-dialog>
|
|
|
<!-- DataSyncDialog -->
|
|
@@ -138,6 +196,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import { PUSH_TYPE } from "@/constants/enumerate";
|
|
|
import { printPlanPushListQuery } from "../api";
|
|
|
import { examSemesterList } from "../../base/api";
|
|
|
import PrintPlanBatchPushDialog from "../components/PrintPlanBatchPushDialog.vue";
|
|
@@ -150,9 +209,14 @@ export default {
|
|
|
return {
|
|
|
filter: {
|
|
|
semesterId: "",
|
|
|
- printPlanId: "",
|
|
|
- examId: ""
|
|
|
+ examId: "",
|
|
|
+ orgId: "",
|
|
|
+ syncStatus: "",
|
|
|
+ courseName: "",
|
|
|
+ startTime: "",
|
|
|
+ endTime: ""
|
|
|
},
|
|
|
+ PUSH_TYPE,
|
|
|
current: 1,
|
|
|
size: this.GLOBAL.pageSize,
|
|
|
total: 0,
|
|
@@ -161,7 +225,8 @@ export default {
|
|
|
dataList: [],
|
|
|
curPrintPlan: {},
|
|
|
multipleSelection: [],
|
|
|
- curSelectedPlanIds: []
|
|
|
+ curSelectedCourses: [],
|
|
|
+ createTime: []
|
|
|
};
|
|
|
},
|
|
|
mounted() {
|
|
@@ -173,11 +238,15 @@ export default {
|
|
|
await this.getList();
|
|
|
},
|
|
|
async getList() {
|
|
|
- const datas = {
|
|
|
+ let datas = {
|
|
|
...this.filter,
|
|
|
pageNumber: this.current,
|
|
|
pageSize: this.size
|
|
|
};
|
|
|
+ if (this.createTime) {
|
|
|
+ datas.startTime = this.createTime[0];
|
|
|
+ datas.endTime = this.createTime[1];
|
|
|
+ }
|
|
|
const data = await printPlanPushListQuery(datas);
|
|
|
this.dataList = data.records;
|
|
|
this.total = data.total;
|
|
@@ -204,18 +273,18 @@ export default {
|
|
|
this.filter.semesterId = curSemester.id;
|
|
|
},
|
|
|
handleSelectionChange(val) {
|
|
|
- this.multipleSelection = val.map(item => item.id);
|
|
|
+ this.multipleSelection = val;
|
|
|
},
|
|
|
toBatchPush() {
|
|
|
if (!this.multipleSelection.length) {
|
|
|
- this.$message.error("请选择要批量推送的印刷计划");
|
|
|
+ this.$message.error("请选择要批量推送的数据");
|
|
|
return;
|
|
|
}
|
|
|
- this.curSelectedPlanIds = [...this.multipleSelection];
|
|
|
+ this.curSelectedCourses = this.multipleSelection;
|
|
|
this.$refs.PrintPlanBatchPushDialog.open();
|
|
|
},
|
|
|
toPush(row) {
|
|
|
- this.curSelectedPlanIds = [row.id];
|
|
|
+ this.curSelectedCourses = [row];
|
|
|
this.$refs.PrintPlanBatchPushDialog.open();
|
|
|
},
|
|
|
mergePushed() {
|