ly 6 mēneši atpakaļ
vecāks
revīzija
1946a305a6

+ 9 - 0
master/pom.xml

@@ -496,6 +496,14 @@
             <version>1.5.31</version> <!-- 或最新版本 -->
         </dependency>
 
+        <dependency>
+            <groupId>com.PolarDB</groupId>
+            <artifactId>my-PolarDB-jar</artifactId>
+            <version>1.0.0</version>
+            <scope>system</scope>
+            <systemPath>${project.basedir}/src/main/resources/lib/PolarDB-JDBC-42.5.4.0.10.5-jre8.jar</systemPath>
+        </dependency>
+
     </dependencies>
 
     <build>
@@ -506,6 +514,7 @@
                 <artifactId>spring-boot-maven-plugin</artifactId>
                 <configuration>
                     <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 -->
+                    <includeSystemScope>true</includeSystemScope>
                 </configuration>
             </plugin>
         </plugins>

+ 9 - 1
master/src/main/java/com/ruoyi/config/ActivitiConfig.java

@@ -1,6 +1,7 @@
 package com.ruoyi.config;
 
 
+import com.ruoyi.framework.config.RuoYiConfig;
 import org.activiti.engine.*;
 import org.activiti.engine.impl.cfg.StandaloneProcessEngineConfiguration;
 import org.activiti.engine.repository.DeploymentBuilder;
@@ -14,6 +15,8 @@ import javax.annotation.PostConstruct;
 import javax.sql.DataSource;
 import java.io.IOException;
 
+import static org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.DATABASE_TYPE_POSTGRES;
+
 /**
  * 使用Java类完成配置文件
  */
@@ -25,7 +28,9 @@ public class ActivitiConfig {
 
     @Autowired
     private ResourcePatternResolver resourceLoader;
-
+    //系统基础配置
+    @Autowired
+    private RuoYiConfig ruoyiConfig;
     /**
      * 初始化配置,将创建28张表
      *
@@ -54,6 +59,9 @@ public class ActivitiConfig {
         configuration.setActivityFontName("宋体");
         configuration.setAnnotationFontName("宋体");
         configuration.setLabelFontName("宋体");
+        if (this.ruoyiConfig.isDemoEnabled()) {
+            configuration.setDatabaseType(DATABASE_TYPE_POSTGRES);
+        }
         return configuration;
     }
 

+ 10 - 1
master/src/main/java/com/ruoyi/framework/config/RuoYiConfig.java

@@ -23,7 +23,8 @@ public class RuoYiConfig
 
     /** 实例演示开关 */
     private boolean demoEnabled;
-
+    /** 实例演示开关 */
+    private boolean isPolar;
     /** 上传路径 */
     private static String profile;
 
@@ -82,6 +83,14 @@ public class RuoYiConfig
         this.demoEnabled = demoEnabled;
     }
 
+    public boolean isPolar() {
+        return isPolar;
+    }
+
+    public void setPolar(boolean polar) {
+        this.isPolar = polar;
+    }
+
     public static String getProfile()
     {
         return profile;

+ 11 - 0
master/src/main/java/com/ruoyi/framework/config/ScheduleConfig.java

@@ -1,11 +1,14 @@
 package com.ruoyi.framework.config;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.quartz.SchedulerFactoryBean;
 import javax.sql.DataSource;
 import java.util.Properties;
 
+import static org.activiti.engine.impl.cfg.ProcessEngineConfigurationImpl.DATABASE_TYPE_POSTGRES;
+
 /**
  * 定时任务配置
  *
@@ -14,6 +17,10 @@ import java.util.Properties;
 @Configuration
 public class ScheduleConfig
 {
+    //系统基础配置
+    @Autowired
+    private RuoYiConfig ruoyiConfig;
+
     @Bean
     public SchedulerFactoryBean schedulerFactoryBean(DataSource dataSource)
     {
@@ -30,6 +37,10 @@ public class ScheduleConfig
         prop.put("org.quartz.threadPool.threadPriority", "5");
         // JobStore配置
         prop.put("org.quartz.jobStore.class", "org.quartz.impl.jdbcjobstore.JobStoreTX");
+        // polarDb 配置
+        if (this.ruoyiConfig.isDemoEnabled()) {
+          prop.put("org.quartz.jobStore.driverDelegateClass", "org.quartz.impl.jdbcjobstore.PostgreSQLDelegate");
+        }
         // 集群配置
         prop.put("org.quartz.jobStore.isClustered", "false");
         prop.put("org.quartz.jobStore.clusterCheckinInterval", "15000");

+ 1 - 2
master/src/main/java/com/ruoyi/framework/task/sems/MeasureThicknessTask.java

@@ -120,7 +120,7 @@ public class MeasureThicknessTask extends BaseController {
         for (TMeasureThickness t: sendList
              ) {
             t.setIsSend(1);
-            this.measureThicknessService.updateTMeasureThickness(t);
+//            this.measureThicknessService.updateTMeasureThickness(t);
         }
     }
 
@@ -176,7 +176,6 @@ public class MeasureThicknessTask extends BaseController {
                 "亲爱的 username</font><br><font style=\"line-height: 22px; \" size=\"4\">" +
                 "<p>您有一条预警信息:<br>" +
                 "预警类型:<b>alarmType</b><br>" +
-                "预警等级:<b>warningLevel</b><br>" +
                 "预警内容contenFormat:<b>warningContent</b><br>" +
                 "请前往<a href=\"requestJumpPath/urlSuffix\">alarmType</a>查看。<br>" +
                 "<p align=\"right\">date</p>" +

+ 3 - 2
master/src/main/resources/application.yml

@@ -7,7 +7,8 @@ ruoyi:
   # 版权年份
   copyrightYear: 2020
   # 实例演示开关
-  demoEnabled: true
+  demoEnabled: false
+  isPolar: true
   # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /u03/cpmsfile/uploadPath)
   profile: D:/ruoyi/uploadPath
   # 邮件中链接跳转路径 示例(本地:http://localhost/cpms/index.html#,服务器:http://47.114.101.16:8080/cpms/index.html# https://cpms.basf-ypc.net.cn/cpms/index.html#)
@@ -83,7 +84,7 @@ spring:
       enabled: true
   # redis 配置
   redis:
-#    # 地址
+    # 地址
     host: 47.114.101.16
 #    host: localhost
     # 端口,默认为6379

+ 7 - 7
master/src/main/resources/mybatis/plant/TStaffmgrMapper.xml

@@ -52,7 +52,7 @@
         from t_staffmgr d
         left join sys_dept s on s.dept_id = d.dept_id
         Left join SYS_DICT_DATA s0 on d.UNIT = s0.DICT_VALUE and s0.DICT_TYPE ='STAFF_UNIT'
-        LEFT JOIN SYS_DICT_DATA s on d.ACTUALPOST = s.DICT_VALUE and s.DICT_TYPE = 'ACTUALPOST'
+        LEFT JOIN SYS_DICT_DATA s2 on d.ACTUALPOST = s2.DICT_VALUE and s2.DICT_TYPE = 'ACTUALPOST'
         LEFT JOIN SYS_DICT_DATA s1 on d.team = s1.DICT_VALUE and s1.DICT_TYPE = 'TEAM_DIVIDE'
 
         where
@@ -116,7 +116,7 @@
     <select id="selectTStaffmgrList" parameterType="TStaffmgr" resultMap="TStaffmgrResult">
         <include refid="selectTStaffmgrVo"/>
         Left join SYS_DICT_DATA s0 on d.UNIT = s0.DICT_VALUE and s0.DICT_TYPE ='STAFF_UNIT'
-        LEFT JOIN SYS_DICT_DATA s on d.ACTUALPOST = s.DICT_VALUE and s.DICT_TYPE = 'ACTUALPOST'
+        LEFT JOIN SYS_DICT_DATA s2 on d.ACTUALPOST = s2.DICT_VALUE and s2.DICT_TYPE = 'ACTUALPOST'
         LEFT JOIN SYS_DICT_DATA s1 on d.team = s1.DICT_VALUE and s1.DICT_TYPE = 'TEAM_DIVIDE'
         <where>
             <if test="name != null  and name != ''"> and name like concat(concat('%', #{name}), '%')</if>
@@ -178,7 +178,7 @@
         </where>
         <!-- 数据范围过滤 -->
         ${params.dataScope}
-        ORDER BY s0.DICT_SORT, s1.DICT_SORT ,s.DICT_SORT , d.staffid
+        ORDER BY s0.DICT_SORT, s1.DICT_SORT ,s2.DICT_SORT , d.staffid
     </select>
 
 
@@ -203,7 +203,7 @@
     <select id="selectAllTStaffmgrList" parameterType="TStaffmgr" resultMap="TStaffmgrResult">
         <include refid="selectTStaffmgrVo"/>
         Left join SYS_DICT_DATA s0 on d.UNIT = s0.DICT_VALUE and s0.DICT_TYPE ='STAFF_UNIT'
-        LEFT JOIN SYS_DICT_DATA s on d.ACTUALPOST = s.DICT_VALUE and s.DICT_TYPE = 'ACTUALPOST'
+        LEFT JOIN SYS_DICT_DATA s2 on d.ACTUALPOST = s2.DICT_VALUE and s2.DICT_TYPE = 'ACTUALPOST'
         LEFT JOIN SYS_DICT_DATA s1 on d.team = s1.DICT_VALUE and s1.DICT_TYPE = 'TEAM_DIVIDE'
         <where>
             <if test="name != null  and name != ''"> and name like concat(concat('%', #{name}), '%')</if>
@@ -265,18 +265,18 @@
         </where>
         <!-- 数据范围过滤 -->
         ${params.dataScope}
-        ORDER BY d.del_flag, s0.DICT_SORT, s1.DICT_SORT ,s.DICT_SORT
+        ORDER BY d.del_flag, s0.DICT_SORT, s1.DICT_SORT ,s2.DICT_SORT
     </select>
 
     <select id="selectTStaffmgrListAll" parameterType="TStaffmgr" resultMap="TStaffmgrResult">
         <include refid="selectTStaffmgrVo"/>
         Left join SYS_DICT_DATA s0 on d.UNIT = s0.DICT_VALUE and s0.DICT_TYPE ='STAFF_UNIT'
-        LEFT JOIN SYS_DICT_DATA s on d.ACTUALPOST = s.DICT_VALUE and s.DICT_TYPE = 'ACTUALPOST'
+        LEFT JOIN SYS_DICT_DATA s2 on d.ACTUALPOST = s2.DICT_VALUE and s2.DICT_TYPE = 'ACTUALPOST'
         LEFT JOIN SYS_DICT_DATA s1 on d.team = s1.DICT_VALUE and s1.DICT_TYPE = 'TEAM_DIVIDE'
         <where>
             and d.del_flag in (0 , 9)
         </where>
-        ORDER BY s0.DICT_SORT, s1.DICT_SORT ,s.DICT_SORT
+        ORDER BY s0.DICT_SORT, s1.DICT_SORT ,s2.DICT_SORT
     </select>
 
     <select id="selectRecordList" parameterType="TStaffmgr" resultMap="TStaffmgrResult">

+ 55 - 1
ui/src/views/sems/specCc/index.vue

@@ -97,6 +97,17 @@
         >{{ $t('修改') }}
         </el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="multiple"
+          @click="handleBatch"
+          v-hasPermi="['sems:specCc:edit']"
+        >{{ $t('批量') + $t('修改') }}
+        </el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -480,6 +491,29 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
+
+    <!-- 批量修改 -->
+    <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
+      <el-form ref="form" :model="form" label-width="160px">
+        <el-form-item>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
+        </el-form-item>
+        <el-form-item :label="$t('装置维修工程师')" prop="engineer">
+          <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注')" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注2')" prop="remarks2">
+          <el-input v-model="form.remarks2" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormBatch">{{ $t('确 定') }}</el-button>
+        <el-button @click="cancelBatch">{{ $t('取 消') }}</el-button>
+      </div>
+    </el-dialog>
+
     <!-- 用户导入对话框 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
       <div style="margin-bottom: 20px;">
@@ -596,7 +630,8 @@ import {
   updateSpecCc,
   updateSpecCcPre,
   exportSpecList,
-  duplicate
+  duplicate,
+  updateSpecCcBatch
 } from "@/api/sems/specCc";
 import {treeselect} from "@/api/system/dept";
 import {getToken} from "@/utils/auth";
@@ -609,6 +644,7 @@ import HisCheck from "../check/check"
 import {addModify} from "@/api/sems/his/modify";
 import {listPostUser} from "@/api/system/user";
 import HisReform from "./specCc-hisReform";
+import {updateSpecDtBatch} from "@/api/sems/specDt";
 
 export default {
   name: "SpecCc",
@@ -652,6 +688,7 @@ export default {
       clientHeight: 300,
       // 是否显示弹出层
       open: false,
+      openBatch: false,
       // 状态字典
       statusOptions: [],
       plantOptions: [],
@@ -921,6 +958,23 @@ export default {
         }
       });
     },
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改') + this.$t('特种设备叉车台账');
+      this.openBatch = true
+    },
+    submitFormBatch(){
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.form.ids = this.ids
+          updateSpecCcBatch(this.form).then(response => {
+            this.msgSuccess("修改成功");
+            this.open = false;
+            this.getList();
+          });
+        }
+      });
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;

+ 55 - 1
ui/src/views/sems/specDt/index.vue

@@ -107,6 +107,17 @@
         >{{ $t('修改') }}
         </el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="multiple"
+          @click="handleBatch"
+          v-hasPermi="['sems:specDt:edit']"
+        >{{ $t('批量') + $t('修改') }}
+        </el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -436,6 +447,29 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
+
+    <!-- 批量修改 -->
+    <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
+      <el-form ref="form" :model="form" label-width="160px">
+        <el-form-item>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
+        </el-form-item>
+        <el-form-item :label="$t('装置维修工程师')" prop="engineer">
+          <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注')" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注2')" prop="remarks2">
+          <el-input v-model="form.remarks2" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormBatch">{{ $t('确 定') }}</el-button>
+        <el-button @click="cancelBatch">{{ $t('取 消') }}</el-button>
+      </div>
+    </el-dialog>
+
     <!-- 用户导入对话框 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
       <div style="margin-bottom: 20px;">
@@ -554,7 +588,8 @@ import {
   getSpecDt,
   listSpecDt,
   updateSpecDt,
-  exportSpecList
+  exportSpecList,
+  updateSpecDtBatch
 } from "@/api/sems/specDt";
 import {treeselect} from "@/api/system/dept";
 import {getToken} from "@/utils/auth";
@@ -567,6 +602,7 @@ import HisCheck from "../check/check"
 import {listPostUser} from "@/api/system/user";
 import {addModify} from "@/api/sems/his/modify";
 import HisReform from "./specDt-hisReform";
+import {updateSpecDzsbBatch} from "@/api/sems/specDzsb";
 
 export default {
   name: "SpecDt",
@@ -609,6 +645,7 @@ export default {
       clientHeight: 300,
       // 是否显示弹出层
       open: false,
+      openBatch: false,
       // 状态字典
       statusOptions: [],
       // 申请状态字典
@@ -886,6 +923,23 @@ export default {
         }
       });
     },
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改') + this.$t('特种设备电梯台账');
+      this.openBatch = true
+    },
+    submitFormBatch(){
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.form.ids = this.ids
+          updateSpecDtBatch(this.form).then(response => {
+            this.msgSuccess("修改成功");
+            this.open = false;
+            this.getList();
+          });
+        }
+      });
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;

+ 55 - 1
ui/src/views/sems/specDzsb/index.vue

@@ -106,6 +106,17 @@
         >{{ $t('修改') }}
         </el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="multiple"
+          @click="handleBatch"
+          v-hasPermi="['sems:specDzsb:edit']"
+        >{{ $t('批量') + $t('修改') }}
+        </el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -459,6 +470,29 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
+
+    <!-- 批量修改 -->
+    <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
+      <el-form ref="form" :model="form" label-width="160px">
+        <el-form-item>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
+        </el-form-item>
+        <el-form-item :label="$t('装置维修工程师')" prop="engineer">
+          <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注')" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注2')" prop="remarks2">
+          <el-input v-model="form.remarks2" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormBatch">{{ $t('确 定') }}</el-button>
+        <el-button @click="cancelBatch">{{ $t('取 消') }}</el-button>
+      </div>
+    </el-dialog>
+
     <!-- 用户导入对话框 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
       <div style="margin-bottom: 20px;">
@@ -574,7 +608,8 @@ import {
   exportSpecDzsb,
   getSpecDzsb,
   listSpecDzsb,
-  updateSpecDzsb, duplicate
+  updateSpecDzsb, duplicate,
+  updateSpecDzsbBatch
 } from "@/api/sems/specDzsb";
 import {treeselect} from "@/api/system/dept";
 import {getToken} from "@/utils/auth";
@@ -587,6 +622,7 @@ import HisCheck from "../check/check";
 import {addModify} from "@/api/sems/his/modify";
 import {listPostUser} from "@/api/system/user";
 import HisReform from "./specDzsb-hisReform";
+import {updateSpecGlBatch} from "@/api/sems/specGl";
 
 export default {
   name: "SpecDzsb",
@@ -629,6 +665,7 @@ export default {
       clientHeight: 300,
       // 是否显示弹出层
       open: false,
+      openBatch: false,
       // 状态字典
       statusOptions: [],
       plantOptions: [],
@@ -909,6 +946,23 @@ export default {
         }
       });
     },
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改') + this.$t('特种设备起重机械台账');
+      this.openBatch = true
+    },
+    submitFormBatch(){
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.form.ids = this.ids
+          updateSpecDzsbBatch(this.form).then(response => {
+            this.msgSuccess("修改成功");
+            this.open = false;
+            this.getList();
+          });
+        }
+      });
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;

+ 55 - 1
ui/src/views/sems/specGl/index.vue

@@ -124,6 +124,17 @@
         >{{ $t('修改') }}
         </el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="multiple"
+          @click="handleBatch"
+          v-hasPermi="['sems:specGl:edit']"
+        >{{ $t('批量') + $t('修改') }}
+        </el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -534,6 +545,29 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
+
+    <!-- 批量修改 -->
+    <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
+      <el-form ref="form" :model="form" label-width="160px">
+        <el-form-item>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
+        </el-form-item>
+        <el-form-item :label="$t('装置维修工程师')" prop="engineer">
+          <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注')" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注2')" prop="remarks2">
+          <el-input v-model="form.remarks2" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormBatch">{{ $t('确 定') }}</el-button>
+        <el-button @click="cancelBatch">{{ $t('取 消') }}</el-button>
+      </div>
+    </el-dialog>
+
     <!-- 用户导入对话框 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
       <div style="margin-bottom: 20px;">
@@ -652,7 +686,8 @@ import {
   listSpecGl,
   updateSpecGl,
   updateSpecGlPre,
-  duplicate
+  duplicate,
+  updateSpecGlBatch
 } from "@/api/sems/specGl";
 import {treeselect} from "@/api/system/dept";
 import {getToken} from "@/utils/auth";
@@ -665,6 +700,7 @@ import HisCheck from "../check/check"
 import {listPostUser} from "@/api/system/user";
 import {addModify} from "@/api/sems/his/modify";
 import HisReform from "./specGl-hisReform";
+import {updateSpecYlgdBatch} from "@/api/sems/specYlgd";
 
 export default {
   name: "SpecGl",
@@ -707,6 +743,7 @@ export default {
       clientHeight: 300,
       // 是否显示弹出层
       open: false,
+      openBatch: false,
       // 状态字典
       statusOptions: [],
       // 申请状态字典
@@ -998,6 +1035,23 @@ export default {
         }
       });
     },
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改特种设备锅炉台账');
+      this.openBatch = true
+    },
+    submitFormBatch(){
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.form.ids = this.ids
+          updateSpecGlBatch(this.form).then(response => {
+            this.msgSuccess("修改成功");
+            this.open = false;
+            this.getList();
+          });
+        }
+      });
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;

+ 53 - 0
ui/src/views/sems/specYlgd/index.vue

@@ -168,6 +168,17 @@
         >{{ $t('修改') }}
         </el-button>
       </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="success"
+          icon="el-icon-edit"
+          size="mini"
+          :disabled="multiple"
+          @click="handleBatch"
+          v-hasPermi="['sems:specYlgd:edit']"
+        >{{ $t('批量') + $t('修改') }}
+        </el-button>
+      </el-col>
       <el-col :span="1.5">
         <el-button
           type="danger"
@@ -664,6 +675,28 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
+    <!-- 批量修改 -->
+    <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
+      <el-form ref="form" :model="form" label-width="160px">
+        <el-form-item>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
+        </el-form-item>
+        <el-form-item :label="$t('装置维修工程师')" prop="engineer">
+          <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注')" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+        <el-form-item :label="$t('备注2')" prop="remarks2">
+          <el-input v-model="form.remarks2" type="textarea" :placeholder="$t('请输入')+ $t('内容')"/>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitFormBatch">{{ $t('确 定') }}</el-button>
+        <el-button @click="cancelBatch">{{ $t('取 消') }}</el-button>
+      </div>
+    </el-dialog>
+
     <!-- 用户导入对话框 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
       <div style="margin-bottom: 20px;">
@@ -782,6 +815,7 @@ import {
   exportSpecYlgd,
   updateSpecYlgdPre,
   duplicate,
+  updateSpecYlgdBatch
 } from "@/api/sems/specYlgd";
 import {treeselect} from "@/api/system/dept";
 import {getToken} from "@/utils/auth";
@@ -794,6 +828,7 @@ import HisCheck from "../check/check"
 import {addModify} from "@/api/sems/his/modify";
 import {listPostUser} from "@/api/system/user";
 import HisReform from "./specYlgd-hisReform";
+import {updateSpecYlrqBatch} from "@/api/sems/specYlrq";
 
 export default {
   name: "SpecYlgd",
@@ -831,6 +866,7 @@ export default {
       specYlgdList: [],
       // 弹出层标题
       title: "",
+      openBatch: false,
       // 部门树选项
       deptOptions: undefined,
       clientHeight: 300,
@@ -1148,6 +1184,23 @@ export default {
         }
       });
     },
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改') + this.$t('特种设备压力管道台账');
+      this.openBatch = true
+    },
+    submitFormBatch(){
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          this.form.ids = this.ids
+          updateSpecYlgdBatch(this.form).then(response => {
+            this.msgSuccess("修改成功");
+            this.open = false;
+            this.getList();
+          });
+        }
+      });
+    },
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;

+ 9 - 9
ui/src/views/sems/specYlrq/index.vue

@@ -608,11 +608,11 @@
         <el-button @click="cancel">{{ $t('取 消') }}</el-button>
       </div>
     </el-dialog>
-
+    <!-- 批量修改 -->
     <el-dialog  :close-on-click-modal="false" v-dialogDrag :title="title" :visible.sync="openBatch" width="50%" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="160px">
+      <el-form ref="form" :model="form"  label-width="160px">
         <el-form-item>
-          <h3>已选择 {{ ids.length }} 条数据 </h3> <span>(不填内容的字段不进行修改)</span>
+          <h3>已选择 {{ ids.length }} 条数据 </h3>
         </el-form-item>
             <el-form-item :label="$t('装置维修工程师')" prop="engineer">
               <el-input v-model="form.engineer" :placeholder="$t('请输入')+ $t('装置维修工程师')"/>
@@ -1032,11 +1032,7 @@ export default {
       this.open = true;
       this.title = this.$t('添加特种设备压力容器台账');
     },
-    handleBatch(){
-      this.reset();
-      this.title = this.$t('修改特种设备压力容器台账');
-      this.openBatch = true
-    },
+
     // 取消按钮
     cancelBatch() {
       this.openBatch = false;
@@ -1098,7 +1094,11 @@ export default {
         }
       });
     },
-
+    handleBatch(){
+      this.reset();
+      this.title = this.$t('修改特种设备压力容器台账');
+      this.openBatch = true
+    },
     submitFormBatch(){
       this.$refs["form"].validate(valid => {
         if (valid) {