zhangjie 2 jaren geleden
bovenliggende
commit
89a18427d2
1 gewijzigde bestanden met toevoegingen van 91 en 66 verwijderingen
  1. 91 66
      src/modules/base/views/PrintPlanPushManage.vue

+ 91 - 66
src/modules/base/views/PrintPlanPushManage.vue

@@ -2,78 +2,95 @@
   <div class="print-plan-push-manage">
     <div class="part-box part-box-filter part-box-flex">
       <el-form ref="FilterForm" label-position="left" label-width="85px" inline>
-        <el-form-item label="使用学期:">
-          <el-select
-            v-model.trim="filter.semesterId"
-            placeholder="请选择使用学期"
-            clearable
-            filterable
-          >
-            <el-option
-              v-for="item in semesters"
-              :key="item.id"
-              :value="item.id"
-              :label="item.name"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-        <el-form-item label="考试:">
-          <exam-select
-            v-model="filter.examId"
-            :semester-id="filter.semesterId"
-          ></exam-select>
-        </el-form-item>
-        <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
-          >
-            <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>
+        <template v-if="checkPrivilege('condition', 'condition')">
+          <el-form-item label="使用学期:">
+            <el-select
+              v-model.trim="filter.semesterId"
+              placeholder="请选择使用学期"
+              clearable
+              filterable
+            >
+              <el-option
+                v-for="item in semesters"
+                :key="item.id"
+                :value="item.id"
+                :label="item.name"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="考试:">
+            <exam-select
+              v-model="filter.examId"
+              :semester-id="filter.semesterId"
+            ></exam-select>
+          </el-form-item>
+          <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
+            >
+              <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>
+        </template>
 
         <el-form-item label-width="0px">
-          <el-button type="primary" @click="search">查询</el-button>
+          <el-button
+            v-if="checkPrivilege('button', 'select')"
+            type="primary"
+            @click="search"
+            >查询</el-button
+          >
         </el-form-item>
       </el-form>
       <div class="part-box-action">
-        <el-button icon="el-icon-top-right" type="primary" @click="toBatchPush">
+        <el-button
+          v-if="checkPrivilege('button', 'BatchSend')"
+          icon="el-icon-top-right"
+          type="primary"
+          @click="toBatchPush"
+        >
           批量推送
         </el-button>
-        <el-button type="primary" icon="el-icon-s-order" @click="toResult">
+        <el-button
+          v-if="checkPrivilege('button', 'BatchSend')"
+          type="primary"
+          icon="el-icon-s-order"
+          @click="toResult"
+        >
           推送结果
         </el-button>
       </div>
@@ -147,7 +164,7 @@
         >
           <template slot-scope="scope">
             <el-button
-              v-if="scope.row.canPush"
+              v-if="checkPrivilege('link', 'Send')"
               class="btn-primary"
               type="text"
               @click="toPush(scope.row)"
@@ -183,12 +200,18 @@
 
     <!-- PrintPlanBatchPushDialog -->
     <print-plan-batch-push-dialog
+      v-if="
+        checkPrivilege('link', 'Send') || checkPrivilege('button', 'BatchSend')
+      "
       ref="PrintPlanBatchPushDialog"
       :courses="curSelectedCourses"
       @modified="mergePushed"
     ></print-plan-batch-push-dialog>
     <!-- DataSyncDialog -->
     <data-sync-dialog
+      v-if="
+        checkPrivilege('link', 'Send') || checkPrivilege('button', 'BatchSend')
+      "
       ref="DataSyncDialog"
       sync-type="EXAM_PUSH"
     ></data-sync-dialog>
@@ -238,6 +261,8 @@ export default {
       await this.getList();
     },
     async getList() {
+      if (!this.checkPrivilege("list", "list")) return;
+
       let datas = {
         ...this.filter,
         pageNumber: this.current,