Explorar el Código

首页异常数据 查汇总 权限 savekey

mo hace 4 años
padre
commit
66a33f187a

+ 7 - 0
src/views/indexErrDataRecord/api.js

@@ -20,3 +20,10 @@ export const getHistoryErrCourse = data => request2({
   params: data,
   method: 'get',
 })
+
+// 异常总数
+export const getIndexErrData = data => request2({
+  url: '/api-web/indexErrDataRecord/queryRecord',
+  params: data,
+  method: 'get',
+})

+ 2 - 2
src/views/indexErrDataRecord/components/errorCourse.vue

@@ -180,14 +180,14 @@
               scope.row.isLock ? "是" : "否"
             }}</template>
           </el-table-column>
-          <el-table-column align="center" label="产生时间">
+          <el-table-column align="center" label="异常产生时间">
             <template slot-scope="scope">
               <div>
                 {{ scope.row.generateTime }}
               </div>
             </template>
           </el-table-column>
-          <el-table-column align="center" label="处理时间">
+          <el-table-column align="center" label="异常处理时间">
             <template slot-scope="scope">
               <div>
                 {{ scope.row.dealTime }}

+ 241 - 0
src/views/indexErrDataRecord/components/historyError.vue

@@ -0,0 +1,241 @@
+<template>
+  <div>
+    <save-form
+      :inline="true"
+      :model="searchForm"
+      ref="searchForm"
+      @submit="search"
+      @reset="onReSet"
+      saveKey="/main/main/teamSchedule"
+    >
+      <el-form-item prop="organIds">
+        <el-select
+          class="multiple"
+          v-model.trim="searchForm.organIds"
+          filterable
+          clearable
+          placeholder="请选择分部"
+        >
+          <el-option
+            v-for="(item, index) in selects.branchs"
+            :key="index"
+            :label="item.name"
+            :value="item.id"
+          ></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item prop="timer">
+        <el-date-picker
+          v-model.trim="searchForm.timer"
+          type="daterange"
+          value-format="yyyy-MM-dd"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期"
+          :picker-options="{
+            firstDayOfWeek: 1,
+          }"
+        ></el-date-picker>
+      </el-form-item>
+      <el-form-item>
+        <el-button native-type="submit" type="primary">搜索</el-button>
+        <el-button native-type="reset" type="danger">重置</el-button>
+        <el-button type="primary">导出</el-button>
+      </el-form-item>
+    </save-form>
+    <el-table
+      style="width: 100%"
+      :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
+      :data="tableList"
+    >
+      <el-table-column align="center" prop="month" label="日期">
+        <template slot-scope="scope">
+          <div>
+            {{ scope.row.generateTime }}
+          </div>
+        </template>
+      </el-table-column>
+      <el-table-column align="center" prop="organName" label="分部">
+        <template slot-scope="scope">
+          <div>
+            <copy-text>{{ scope.row.organName }}</copy-text>
+          </div>
+        </template>
+      </el-table-column>
+
+      <el-table-column
+        align="center"
+        prop="userName"
+        label="乐团巡查事项异常剩余/总数"
+      >
+        <template slot-scope="scope">
+          <div>
+            {{ scope.row.musicPatrolItemSurplus?scope.row.musicPatrolItemSurplus:'--'}} / {{ scope.row.musicPatrolItem?scope.row.musicPatrolItem:'--'}}
+          </div>
+        </template>
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="item"
+        label="乐团巡查任务未提交剩余/总数"
+      >
+        <template slot-scope="scope">
+          <div>
+             {{ scope.row.inspectionItemPlanSurplus?scope.row.inspectionItemPlanSurplus:'--'}} / {{ scope.row.inspectionItemPlan?scope.row.inspectionItemPlan:'--'}}
+          </div>
+        </template>
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="times"
+        label="回访任务未完成剩余/总数"
+      >
+           <template slot-scope="scope">
+          <div>
+             {{ scope.row.studentVisitSurplus?scope.row.studentVisitSurplus:'--'}} / {{ scope.row.studentVisit?scope.row.studentVisit:'--'}}
+          </div>
+        </template>
+      </el-table-column>
+
+      <el-table-column
+        align="center"
+        prop="plannedTimes"
+        label="课程考勤异常剩余/总数"
+      >
+            <template slot-scope="scope">
+          <div>
+             {{ scope.row.teacherExceptionAttendanceSurplus?scope.row.teacherExceptionAttendanceSurplus:'--'}} / {{scope.row.teacherExceptionAttendance?scope.row.teacherExceptionAttendance:'--'}}
+          </div>
+        </template>
+      </el-table-column>
+      <el-table-column
+        align="center"
+        prop="submittedTimes"
+        label="课程异常剩余/总数"
+      >
+        <template slot-scope="scope">
+          <div
+
+          >
+            {{ scope.row.teacherNotAClassSurplus?scope.row.teacherNotAClassSurplus:'-'+'/'+ scope.row.teacherNotAClass?scope.row.teacherNotAClass:'-'}}
+          </div>
+        </template>
+      </el-table-column>
+    </el-table>
+    <pagination
+      sync
+      :total.sync="rules.total"
+      save-key="teamSchedule"
+      :page.sync="rules.page"
+      :limit.sync="rules.limit"
+      :page-sizes="rules.page_size"
+      @pagination="getList"
+    />
+  </div>
+</template>
+<script>
+// import { getInspectionItem, resetInspectionItem } from "../api";
+import { permission } from "@/utils/directivePage";
+import pagination from "@/components/Pagination/index";
+import { getIndexErrData } from "../api";
+import dayjs from "dayjs";
+import { getTimes } from "@/utils";
+export default {
+  props: ["searchType"],
+  components: { pagination },
+  data() {
+    return {
+      searchForm: {
+        organIds: "",
+        timer: [],
+      },
+      tableList: [],
+      handleVisible: false,
+      rules: {
+        // 分页规则
+        limit: 10, // 限制显示条数
+        page: 1, // 当前页
+        total: 0, // 总条数
+        page_size: [10, 20, 40, 50], // 选择限制显示条数
+      },
+    };
+  },
+  mounted() {
+    this.$store.dispatch("setBranchs");
+    this.getList();
+  },
+  methods: {
+    permission(str) {
+      return permission(str);
+    },
+    onReSet() {
+      this.$refs.searchForm.resetFields();
+      this.search();
+    },
+    search() {
+      this.rules.page = 1;
+      this.getList();
+    },
+    async getList() {
+      let { timer, ...rest } = this.searchForm;
+      let params = {
+        ...rest,
+        page: this.rules.page,
+        rows: this.rules.limit,
+        ...getTimes(timer, ["startDate", "endDate"]),
+        searchType: this.searchType,
+      };
+      try {
+        const res = await getIndexErrData(params);
+        this.tableList = res.data.rows;
+        this.rules.total = res.data.total;
+      } catch (e) {
+        console.log(e);
+      }
+    },
+    resetLine(row) {
+      let { id, memo } = row;
+      this.handleForm = { id, memo };
+      this.handleVisible = true;
+    },
+    // async submitHandle() {
+    //   try {
+    //     const res = await resetInspectionItem(this.handleForm);
+    //     this.$message.success("提交成功");
+    //     this.getList();
+    //     this.handleVisible = false;
+    //   } catch (e) {
+    //     console.log(e);
+    //   }
+    // },
+    gotoHander(row) {
+      let startTime = dayjs(row.month).startOf("month").format("YYYY-MM-DD");
+      let endTime = dayjs(row.month).endOf("month").format("YYYY-MM-DD");
+      if (row.item == "VISIT") {
+        // 学员回访
+        // 跳到回访页面 搜索条件 教务老师 时间范围
+        this.$router.push({
+          path: "/studentManager/returnVisitList",
+          query: { teacher: row.userName, timer: [startTime, endTime] },
+        });
+      } else {
+        // 下校巡查
+        this.$router.push({
+          path: "/main/scheduleDetail",
+          query: {
+            teacher: row.userId,
+            startTime,
+            endTime,
+            name: row.userName,
+            organId: row.organId,
+            itemId: row.id,
+            times: row.times,
+          },
+        });
+      }
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+</style>

+ 2 - 2
src/views/indexErrDataRecord/components/patrol.vue

@@ -173,14 +173,14 @@
               ></overflow-text>
             </template>
           </el-table-column>
-          <el-table-column align="center" label="产生时间">
+          <el-table-column align="center" label="异常产生时间">
             <template slot-scope="scope">
               <div>
                 {{ scope.row.generateTime }}
               </div>
             </template>
           </el-table-column>
-          <el-table-column align="center" label="处理时间">
+          <el-table-column align="center" label="异常处理时间">
             <template slot-scope="scope">
               <div>
                 {{ scope.row.dealTime }}

+ 2 - 2
src/views/indexErrDataRecord/components/visitError.vue

@@ -106,14 +106,14 @@
           <overflow-text :text="scope.row.memo"></overflow-text>
         </template>
       </el-table-column>
-      <el-table-column align="center" label="产生时间">
+      <el-table-column align="center" label="异常产生时间">
         <template slot-scope="scope">
           <div>
             {{ scope.row.generateTime }}
           </div>
         </template>
       </el-table-column>
-      <el-table-column align="center" label="处理时间">
+      <el-table-column align="center" label="异常处理时间">
         <template slot-scope="scope">
           <div>
             {{ scope.row.dealTime }}

+ 10 - 1
src/views/indexErrDataRecord/index.vue

@@ -12,6 +12,14 @@
     </h2>
     <div class="m-core">
       <tab-router @change="changeKey">
+              <el-tab-pane
+          v-if="permission('/main/main/allData/826')"
+          lazy
+          label="异常数据查询汇总"
+          name="historyError"
+        >
+          <historyError v-if="activeKey === 'historyError'"  />
+        </el-tab-pane>
         <el-tab-pane
           v-if="permission('/main/main/allData/826')"
           lazy
@@ -61,9 +69,10 @@ import { permission } from "@/utils/directivePage";
 import patrol from './components/patrol'
 import visitError from './components/visitError'
 import errorCourse from './components/errorCourse'
+import historyError from './components/historyError'
 export default {
   name: "indexErrDataRecord",
-  components:{patrol,visitError,errorCourse},
+  components:{patrol,visitError,errorCourse,historyError},
   data() {
     return {
       activeKey: "",

+ 1 - 1
src/views/teamDetail/teamCourseList.vue

@@ -950,7 +950,7 @@ export default {
           }
         } else {
           if (this.searchForm[item]) {
-            console.log(this.searchForm[item])
+             this.searchForm.timer = [];
             flag = true;
           }
         }