Quellcode durchsuchen

LY byx优化邮件发送

ly vor 2 Jahren
Ursprung
Commit
c8536cebc0

+ 8 - 4
master/src/main/java/com/ruoyi/framework/task/byx/ApprovalBYXTask.java

@@ -2,6 +2,7 @@ package com.ruoyi.framework.task.byx;
 
 import com.ruoyi.common.sendEmail.IMailService;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.framework.config.RuoYiConfig;
 import com.ruoyi.framework.web.controller.BaseController;
 import com.ruoyi.project.document.domain.TPlantproglist;
 import com.ruoyi.project.ehs.domain.TEnvironapproval;
@@ -41,7 +42,8 @@ public class ApprovalBYXTask extends BaseController {
      */
     @Autowired
     private IMailService mailService;
-
+    @Autowired
+    private RuoYiConfig ruoyiConfig;
     /**
      * 注入报警类型的接口
      */
@@ -452,7 +454,7 @@ public class ApprovalBYXTask extends BaseController {
                 "预警类型:<b>批文管理(alarmType)</b><br>" +
                 "预警等级:<b>warningLevel</b><br>" +
                 "预警内容contenFormat:<b>warningContent</b><br>" +
-                "请前往<a href=\"http://47.114.101.16:8080/cpms/index.html#/ehs/approval/alarmTypeEn\">批文管理(alarmType)</a>查看。<br>" +
+                "请前往<a href=\"requestJumpPath/ehs/alarmTypeEn\">alarmType</a>查看。<br>" +
                 "<p align=\"right\">date</p>" +
                 "<div style=\"width:700px;margin:0 auto;\">" +
                 "<div style=\"padding:10px 10px 0;border-top:1px solid #ccc;color:#747474;margin-bottom:20px;line-height:1.3em;font-size:12px;\">" +
@@ -463,13 +465,15 @@ public class ApprovalBYXTask extends BaseController {
         String three = two.replaceFirst("warningLevel", warningLevel);
         String four = three.replaceFirst("contenFormat", contenFormat);
         String five = four.replaceFirst("warningContent", warningContent);
-        String six = five.replaceFirst("alarmTypeEn", alarmTypeEn);
+        String six = five.replaceFirst("alarmTypeEn", alarmTypeEn + "?reviewer=" + user.getStaffId());
         String seven = six.replaceFirst("alarmType", alarmType);
-        String result = seven.replaceFirst("date", String.valueOf(new Date()));
+        String eight = seven.replace("requestJumpPath", this.ruoyiConfig.getRequestJumpPath());
+        String result = eight.replaceFirst("date", String.valueOf(new Date()));
         prime = prime + result;
         //拼接html
         String html = start + prime + end;
         mailService.sendHtmlMail(email, "CPMS:您有一条预警信息", html,emailCc);
+//        mailService.sendHtmlMail("735032128@qq.com", "CPMS:您有一条预警信息", html, "ly@seashoreept.com");
         String level = warningLevel.substring(0, 1);
         insertHistory(alarmPrincipal, level, warningContent, typeId, alarmType);
     }

+ 6 - 3
master/src/main/java/com/ruoyi/framework/task/byx/PlantproglistBYXTask.java

@@ -140,7 +140,7 @@ public class PlantproglistBYXTask extends BaseController {
                 for (TPlantproglist t : plantproglists) {
                     if (t.getNextreviewdate() != null) {
                         long now = System.currentTimeMillis();
-                        if (t.getNexteditdate() == null) {//回顾日期为空的情况
+                        if (t.getNextreviewdate() == null) {//回顾日期为空的情况
                             continue;
                         }
                         long diff = t.getNextreviewdate().getTime() - now;
@@ -233,6 +233,7 @@ public class PlantproglistBYXTask extends BaseController {
                 String firstwarningContent = "";
                 String secondwarningContent = "";
                 String thirdwarningContent = "";
+                String ids = "";
                 for (TPlantproglist t : plantproglists) {
                     if (t.getNexteditdate() != null) {
                         long now = System.currentTimeMillis();
@@ -271,6 +272,7 @@ public class PlantproglistBYXTask extends BaseController {
         return alarmContent;
     }
 
+
     /**
      * 分级预警
      */
@@ -303,7 +305,7 @@ public class PlantproglistBYXTask extends BaseController {
         username = user.getNickName();
         email = user.getEmail();
         String emailCc = alarmPrincipal.getPrincipalEmail();
-//            email = "924846500@qq.com";
+//        email = "735032128@qq.com";
         //表html中间内容
         String prime = "";
         String firstcenter = "<tr><td><div style=\"padding:25px 35px 40px; background-color:#fff;\"><h2 style=\"margin: 5px 0px; \">" +
@@ -324,7 +326,7 @@ public class PlantproglistBYXTask extends BaseController {
         String three = two.replaceFirst("warningLevel", warningLevel);
         String four = three.replaceFirst("contenFormat", contenFormat);
         String five = four.replaceFirst("warningContent", warningContent);
-        String six = five.replaceFirst("alarmTypeEn", alarmTypeEn);
+        String six = five.replaceFirst("alarmTypeEn", alarmTypeEn + "?responsibility=" + username);
         String seven = six.replaceFirst("alarmType", alarmType);
         String eight = seven.replace("requestJumpPath", this.ruoyiConfig.getRequestJumpPath());
         String result = eight.replaceFirst("date", String.valueOf(new Date()));
@@ -332,6 +334,7 @@ public class PlantproglistBYXTask extends BaseController {
         //拼接html
         String html = start + prime + end;
         mailService.sendHtmlMail(email, "CPMS:您有一条预警信息", html, emailCc);
+//        mailService.sendHtmlMail("735032128@qq.com", "CPMS:您有一条预警信息", html, "ly@seashoreept.com");
         String level = warningLevel.substring(0, 1);
         insertHistory(alarmPrincipal, level, warningContent, typeId, alarmType);
 

+ 15 - 15
master/src/main/resources/application.yml

@@ -11,7 +11,7 @@ ruoyi:
   # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /u03/cpmsfile/uploadPath)
   profile: D:/ruoyi/uploadPath
   # 邮件中链接跳转路径 示例(本地:http://localhost/#,服务器:http://47.114.101.16:8080/cpms/index.html#)
-  requestJumpPath: https://cpms.basf-ypc.net.cn/cpms/index.html#
+  requestJumpPath: http://localhost/#
   # 获取ip地址开关
   addressEnabled: false
   # 验证码类型 math 数组计算 char 字符验证
@@ -99,24 +99,24 @@ spring:
         max-wait: -1ms
   # 邮箱配置
   mail:
-    host: smtpout.basf-it-services.com
-    protocol: smtp
-    default-encoding: UTF-8
-    password:
-    username:
-    port: 25
-    properties.mail.stmp.socketFactory.class: javax.net.ssl.SSLSocketFactory
-    properties.mail.debug: true
-    from: CPMS.byc@BASF-YPC.com.cn
-#    host: smtp.exmail.qq.com
+#    host: smtpout.basf-it-services.com
 #    protocol: smtp
 #    default-encoding: UTF-8
-#    password: vvTAT8hciG7FLk4C
-#    username: email@seashoreept.com
-#    port: 587
+#    password:
+#    username:
+#    port: 25
 #    properties.mail.stmp.socketFactory.class: javax.net.ssl.SSLSocketFactory
 #    properties.mail.debug: true
-#    from: email@seashoreept.com
+#    from: CPMS.byc@BASF-YPC.com.cn
+    host: smtp.exmail.qq.com
+    protocol: smtp
+    default-encoding: UTF-8
+    password: vvTAT8hciG7FLk4C
+    username: email@seashoreept.com
+    port: 587
+    properties.mail.stmp.socketFactory.class: javax.net.ssl.SSLSocketFactory
+    properties.mail.debug: true
+    from: email@seashoreept.com
 # token配置
 token:
     # 令牌自定义标识

+ 1 - 0
master/src/main/resources/mybatis/ehs/TEnvironapprovalMapper.xml

@@ -56,6 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="approvalname != null  and approvalname != ''"> and approvalname like concat(concat('%', #{approvalname}), '%')</if>
             <if test="certno != null  and certno != ''"> and certno like concat(concat('%', #{certno}), '%')</if>
             <if test="effetiveYear != null ">  and to_char(effetivedate,'yyyy') = #{effetiveYear}</if>
+            <if test="reviewer != null">and reviewer = #{reviewer}</if>
             and d.del_flag = 0
         </where>
         <!-- 数据范围过滤 -->

+ 1 - 0
master/src/main/resources/mybatis/ehs/TFireapprovalMapper.xml

@@ -50,6 +50,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="approvalname != null  and approvalname != ''"> and approvalname like concat(concat('%', #{approvalname}), '%')</if>
             <if test="fileno != null  and fileno != ''"> and fileno like concat(concat('%', #{fileno}), '%')</if>
             <if test="effetiveYear != null ">  and to_char(effetivedate,'yyyy') = #{effetiveYear}</if>
+            <if test="reviewer != null">and reviewer = #{reviewer}</if>
             and d.del_flag = 0
         </where>
         <!-- 数据范围过滤 -->

+ 1 - 0
master/src/main/resources/mybatis/ehs/THealthapprovalMapper.xml

@@ -48,6 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="approvalname != null  and approvalname != ''"> and approvalname like concat(concat('%', #{approvalname}), '%')</if>
             <if test="certno != null  and certno != ''"> and certno like concat(concat('%', #{certno}), '%')</if>
             <if test="effetiveYear != null ">  and to_char(effetivedate,'yyyy') = #{effetiveYear}</if>
+            <if test="reviewer != null">and reviewer = #{reviewer}</if>
             and d.del_flag = 0
         </where>
         <!-- 数据范围过滤 -->

+ 1 - 0
master/src/main/resources/mybatis/ehs/TSafetyapprovalMapper.xml

@@ -52,6 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="approvalname != null  and approvalname != ''"> and approvalname like concat(concat('%', #{approvalname}), '%')</if>
             <if test="certno != null  and certno != ''"> and certno like concat(concat('%', #{certno}), '%')</if>
             <if test="effetiveYear != null ">  and to_char(effetivedate,'yyyy') = #{effetiveYear}</if>
+            <if test="reviewer != null">and reviewer = #{reviewer}</if>
             and d.del_flag = 0
         </where>
         <!-- 数据范围过滤 -->

+ 27 - 4
ui/src/views/components/PlantProgList/index.vue

@@ -102,6 +102,7 @@
     <form ref="downloadExportForm" :action="downloadExportAction" target="FORMSUBMIT">
     </form>
     <el-table v-loading="loading" class="table" :data="plantproglistList" @selection-change="handleSelectionChange"
+              @sort-change="sortList"
               :cell-class-name="tableCellClassName" :height="clientHeight" border>
       <el-table-column type="selection" width="55" align="center"/>
       <el-table-column :label="$t('文件编号')" align="center" prop="fileno" width="150" :show-overflow-tooltip="true"/>
@@ -114,7 +115,7 @@
           <span>{{ parseTime(scope.row.filedate, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
-      <el-table-column :label="$t('下次修订日期')" align="center" prop="nexteditdate" width="100">
+      <el-table-column :label="$t('下次修订日期')" align="center" sortable="custom" prop="nexteditdate" width="100">
         <template slot-scope="scope">
           <span style="vertical-align:middle">{{ parseTime(scope.row.nexteditdate, '{y}-{m}-{d}') }}</span>
           <svg-icon  :icon-class="changeColorPiont(scope.row.nexteditdate)"
@@ -130,7 +131,7 @@
       </el-table-column>
       <el-table-column :label="$t('回顾结果')" align="center" prop="reviewResult" width="150" :show-overflow-tooltip="true"
                        v-if="this.itemNum !== '5'"/>
-      <el-table-column :label="$t('下次回顾日期')" align="center" prop="nextreviewdate" width="100"
+      <el-table-column :label="$t('下次回顾日期')" align="center" sortable="custom" prop="nextreviewdate" width="100"
                        v-if="this.itemNum !== '5'">
         <template slot-scope="scope">
           <span style="vertical-align:middle">{{ parseTime(scope.row.nextreviewdate, '{y}-{m}-{d}') }}</span>
@@ -654,7 +655,10 @@ export default {
         attachmentNo: null,
         attachmentName: null,
         attachmentRevision: null,
-        revisionDate: null
+        revisionDate: null,
+        orderByColumn: null,
+        isAsc: null,
+        allNo: null
       },
       // 表单参数
       form: {},
@@ -713,7 +717,9 @@ export default {
     this.$nextTick(() => {
       this.clientHeight = (document.body.clientHeight - 80) * 0.8
     })
-
+    console.log('============================')
+    let responsibility = this.$route.query.responsibility
+    this.queryParams.responsibility = responsibility
     this.getList();
     this.getTreeselect();
     this.getDicts("CLASSIFY").then(response => {
@@ -742,6 +748,21 @@ export default {
         this.loading = false;
       });
     },
+    //element表格排序
+    sortList(val) {
+      var sort = "asc";
+      let sortTip = val.order
+      this.queryParams.orderByColumn = val.prop;
+      if (sortTip === 'descending') {
+        this.queryParams.isAsc = 'desc' // 降序
+      } else if (sortTip === 'ascending') {
+        this.queryParams.isAsc = 'asc' // 升序
+      } else if (sortTip === null) {
+        this.queryParams.isAsc = null;
+        this.queryParams.orderByColumn = null;
+      }
+      this.getList();
+    },
     //根据分数显示颜色提示
     tableCellClassName({row, column, rowIndex, columnIndex}) {
       // if (columnIndex == 7 && row.item !== 5) {
@@ -765,6 +786,7 @@ export default {
       } else if (timeInterval <= 30 * 24 * 3600 * 1000) {
         return 'roundYellow'
       }
+      return ''
     },
     /** 查询部门下拉树结构 */
     getTreeselect() {
@@ -847,6 +869,7 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
+      this.queryParams.responsibility = null
       this.resetForm("queryForm");
       this.handleQuery();
     },

+ 24 - 3
ui/src/views/ehs/environapproval/index.vue

@@ -85,7 +85,7 @@
 	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="environapprovalList" @selection-change="handleSelectionChange" :height="clientHeight" border>
+    <el-table v-loading="loading" :data="environapprovalList" @selection-change="handleSelectionChange" :height="clientHeight" @sort-change="sortList" border>
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column :label="$t('批文名称')" align="center" width="300" prop="approvalname" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('证书编号')" align="center" width="300" prop="certno" :show-overflow-tooltip="true"/>
@@ -147,7 +147,7 @@
         </template>
       </el-table-column>
       <el-table-column :label="$t('回顾结果')" align="center" prop="reviewResult" :show-overflow-tooltip="true"/>
-      <el-table-column :label="$t('下次回顾日期')" align="center" prop="nextreviewdate" width="100">
+      <el-table-column :label="$t('下次回顾日期')" align="center" sortable="custom" prop="nextreviewdate" width="100">
         <template slot-scope="scope">
           <span style="vertical-align:middle;margin-right: 3px">{{ parseTime(scope.row.nextreviewdate, '{y}-{m}-{d}') }}</span>
           <svg-icon :icon-class="changeColorPiont(scope.row.nextreviewdate)" style="font-size: 8px"></svg-icon>
@@ -708,7 +708,11 @@ export default {
         pageSize: 20,
         approvalname: null,
         certno: null,
-        effetiveYear: null
+        effetiveYear: null,
+        reviewer: null,
+        orderByColumn: null,
+        isAsc: null,
+        allNo: null
       },
       //人员表查询参数
       staffmgrQueryParams: {},
@@ -772,6 +776,7 @@ export default {
     this.$nextTick(() => {
         this.clientHeight = (document.body.clientHeight - 80) * 0.8
     })
+    this.queryParams.reviewer = this.$route.query.reviewer
     this.getList();
     this.getReviewer();
     this.getTreeselect();
@@ -837,6 +842,21 @@ export default {
         this.loading = false;
       });
     },
+    //element表格排序
+    sortList(val) {
+      var sort = "asc";
+      let sortTip = val.order
+      this.queryParams.orderByColumn = val.prop;
+      if (sortTip === 'descending') {
+        this.queryParams.isAsc = 'desc' // 降序
+      } else if (sortTip === 'ascending') {
+        this.queryParams.isAsc = 'asc' // 升序
+      } else if (sortTip === null) {
+        this.queryParams.isAsc = null;
+        this.queryParams.orderByColumn = null;
+      }
+      this.getList();
+    },
     getReviewer(year) {
       this.staffmgrQueryParams.leftYear = year
       listAllStaffmgr(this.staffmgrQueryParams).then(response => {
@@ -928,6 +948,7 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
+      this.queryParams.reviewer = null
       this.resetForm("queryForm");
       this.handleQuery();
     },

+ 24 - 3
ui/src/views/ehs/fireapproval/index.vue

@@ -85,7 +85,7 @@
 	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="fireapprovalList" @selection-change="handleSelectionChange" :height="clientHeight" border>
+    <el-table v-loading="loading" :data="fireapprovalList" @sort-change="sortList" @selection-change="handleSelectionChange" :height="clientHeight" border>
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column :label="$t('批文名称')" align="center" width="300" prop="approvalname" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('文件编号')" align="center" width="300" prop="fileno" :show-overflow-tooltip="true"/>
@@ -111,7 +111,7 @@
         </template>
       </el-table-column>
       <el-table-column :label="$t('回顾结果')" align="center" prop="reviewResult" :show-overflow-tooltip="true"/>
-      <el-table-column :label="$t('下次回顾日期')" align="center" prop="nextreviewdate" width="100">
+      <el-table-column :label="$t('下次回顾日期')" align="center" sortable="custom" prop="nextreviewdate" width="100">
         <template slot-scope="scope">
           <span style="vertical-align:middle;margin-right: 3px">{{ parseTime(scope.row.nextreviewdate, '{y}-{m}-{d}') }}</span>
           <svg-icon :icon-class="changeColorPiont(scope.row.nextreviewdate)" style="font-size: 8px"></svg-icon>
@@ -583,7 +583,11 @@ export default {
         pageSize: 20,
         approvalname: null,
         fileno: null,
-        effetiveYear: null
+        effetiveYear: null,
+        reviewer: null,
+        orderByColumn: null,
+        isAsc: null,
+        allNo: null
       },
       //人员表查询参数
       staffmgrQueryParams: {},
@@ -656,6 +660,7 @@ export default {
     this.$nextTick(() => {
         this.clientHeight = (document.body.clientHeight - 80) * 0.8
     })
+    this.queryParams.reviewer = this.$route.query.reviewer
     this.getList();
     this.getReviewer();
     this.getTreeselect();
@@ -679,6 +684,21 @@ export default {
         this.loading = false;
       });
     },
+    //element表格排序
+    sortList(val) {
+      var sort = "asc";
+      let sortTip = val.order
+      this.queryParams.orderByColumn = val.prop;
+      if (sortTip === 'descending') {
+        this.queryParams.isAsc = 'desc' // 降序
+      } else if (sortTip === 'ascending') {
+        this.queryParams.isAsc = 'asc' // 升序
+      } else if (sortTip === null) {
+        this.queryParams.isAsc = null;
+        this.queryParams.orderByColumn = null;
+      }
+      this.getList();
+    },
     changeColorPiont (value) {
       var timeInterval = Date.parse(value) - Date.parse(new Date());
       if (timeInterval <= 15 * 24 * 3600 * 1000){
@@ -768,6 +788,7 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
+      this.queryParams.reviewer = null
       this.resetForm("queryForm");
       this.handleQuery();
     },

+ 23 - 2
ui/src/views/ehs/healthapproval/index.vue

@@ -85,7 +85,7 @@
 	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="healthapprovalList" @selection-change="handleSelectionChange" :height="clientHeight" border>
+    <el-table v-loading="loading" :data="healthapprovalList" @sort-change="sortList" @selection-change="handleSelectionChange" :height="clientHeight" border>
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column :label="$t('批文名称')" align="center" width="300" prop="approvalname" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('证书编号')" align="center" width="300" prop="certno" :show-overflow-tooltip="true"/>
@@ -115,7 +115,7 @@
         </template>
       </el-table-column>
       <el-table-column :label="$t('回顾结果')" align="center" prop="reviewResult" :show-overflow-tooltip="true"/>
-      <el-table-column :label="$t('下次回顾日期')" align="center" prop="nextreviewdate" width="100">
+      <el-table-column :label="$t('下次回顾日期')" align="center" sortable="custom" prop="nextreviewdate" width="100">
         <template slot-scope="scope">
           <span style="vertical-align:middle;margin-right: 3px">{{ parseTime(scope.row.nextreviewdate, '{y}-{m}-{d}') }}</span>
           <svg-icon :icon-class="changeColorPiont(scope.row.nextreviewdate)" style="font-size: 8px"></svg-icon>
@@ -559,6 +559,10 @@ export default {
         approvalname: null,
         certno: null,
         effetiveYear: null,
+        reviewer: null,
+        orderByColumn: null,
+        isAsc: null,
+        allNo: null
       },
       // 表单参数
       form: {},
@@ -587,6 +591,7 @@ export default {
     this.$nextTick(() => {
         this.clientHeight = document.body.clientHeight -250
     })
+    this.queryParams.reviewer = this.$route.query.reviewer
     this.getList();
     this.getReviewer();
     this.getTreeselect();
@@ -607,6 +612,21 @@ export default {
         this.loading = false;
       });
     },
+    //element表格排序
+    sortList(val) {
+      var sort = "asc";
+      let sortTip = val.order
+      this.queryParams.orderByColumn = val.prop;
+      if (sortTip === 'descending') {
+        this.queryParams.isAsc = 'desc' // 降序
+      } else if (sortTip === 'ascending') {
+        this.queryParams.isAsc = 'asc' // 升序
+      } else if (sortTip === null) {
+        this.queryParams.isAsc = null;
+        this.queryParams.orderByColumn = null;
+      }
+      this.getList();
+    },
     changeColorPiont (value) {
       var timeInterval = Date.parse(value) - Date.parse(new Date());
       if (timeInterval <= 15 * 24 * 3600 * 1000){
@@ -689,6 +709,7 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
+      this.queryParams.reviewer = null
       this.resetForm("queryForm");
       this.handleQuery();
     },

+ 24 - 3
ui/src/views/ehs/safetyapproval/index.vue

@@ -85,7 +85,7 @@
 	  <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="safetyapprovalList" @selection-change="handleSelectionChange" :height="clientHeight" border>
+    <el-table v-loading="loading" :data="safetyapprovalList" @sort-change="sortList" @selection-change="handleSelectionChange" :height="clientHeight" border>
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column :label="$t('批文名称')" align="center" width="300" prop="approvalname" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('证书编号')" align="center" width="300" prop="certno" :show-overflow-tooltip="true"/>
@@ -123,7 +123,7 @@
         </template>
       </el-table-column>
       <el-table-column :label="$t('回顾结果')" align="center" prop="reviewResult" :show-overflow-tooltip="true"/>
-      <el-table-column :label="$t('下次回顾日期')" align="center" prop="nextreviewdate" width="100">
+      <el-table-column :label="$t('下次回顾日期')" align="center" sortable="custom" prop="nextreviewdate" width="100">
         <template slot-scope="scope">
           <span style="vertical-align:middle;margin-right: 3px">{{ parseTime(scope.row.nextreviewdate, '{y}-{m}-{d}') }}</span>
           <svg-icon :icon-class="changeColorPiont(scope.row.nextreviewdate)" style="font-size: 8px"></svg-icon>
@@ -617,7 +617,11 @@ export default {
         pageSize: 20,
         approvalname: null,
         certno: null,
-        effetiveYear: null
+        effetiveYear: null,
+        reviewer: null,
+        orderByColumn: null,
+        isAsc: null,
+        allNo: null
       },
       //人员表查询参数
       staffmgrQueryParams: {
@@ -706,6 +710,7 @@ export default {
     this.$nextTick(() => {
         this.clientHeight = (document.body.clientHeight - 80) * 0.8
     })
+    this.queryParams.reviewer = this.$route.query.reviewer
     this.getList();
     this.getReviewer();
     this.getTreeselect();
@@ -741,6 +746,21 @@ export default {
         this.loading = false;
       });
     },
+    //element表格排序
+    sortList(val) {
+      var sort = "asc";
+      let sortTip = val.order
+      this.queryParams.orderByColumn = val.prop;
+      if (sortTip === 'descending') {
+        this.queryParams.isAsc = 'desc' // 降序
+      } else if (sortTip === 'ascending') {
+        this.queryParams.isAsc = 'asc' // 升序
+      } else if (sortTip === null) {
+        this.queryParams.isAsc = null;
+        this.queryParams.orderByColumn = null;
+      }
+      this.getList();
+    },
     changeColorPiont (value) {
       var timeInterval = Date.parse(value) - Date.parse(new Date());
       if (timeInterval <= 15 * 24 * 3600 * 1000){
@@ -824,6 +844,7 @@ export default {
     },
     /** 重置按钮操作 */
     resetQuery() {
+      this.queryParams.reviewer = null
       this.resetForm("queryForm");
       this.handleQuery();
     },