Эх сурвалжийг харах

ly pssr 管道容器 过期标识

ly 2 долоо хоног өмнө
parent
commit
d2610bf9b5

+ 7 - 0
master/src/main/java/com/ruoyi/project/pssr/controller/TPssrPipeController.java

@@ -137,8 +137,15 @@ public class TPssrPipeController extends BaseController {
                     tSpecdevYlgd.setPlantCode("BCC");
                     tSpecdevYlgd.setDevno("-" + unit);
                 }
+                Date now = new Date(); //当前日期
                 for (TSpecdevYlgd t : tSpecdevYlgdMapper.selectTSpecdevYlgdListForPssr(tSpecdevYlgd)) {
+
                     TPssrPipe pipe = new TPssrPipe();
+                    pipe.setWarnFlag(0l);
+                    //判断是否过期
+                    if(t.getNextWarnDate().before(now)) {
+                        pipe.setWarnFlag(1l);
+                    }
                     pipe.setUnit(unit);
                     pipe.setPipelineName(t.getDevname());
                     pipe.setPipelineNo(t.getDevno());

+ 10 - 0
master/src/main/java/com/ruoyi/project/pssr/controller/TPssrVesselController.java

@@ -300,8 +300,18 @@ public class TPssrVesselController extends BaseController {
             for (String unit : subcontent.getUnit().split(",")) {
                 tSpecdevYlrq.setPlantCode("BCC");
                 tSpecdevYlrq.setDevno(unit + "-");
+
+                Date now = new Date(); //当前日期
                 for (TSpecdevYlrq t : tSpecdevYlrqMapper.selectTSpecdevYlrqListForPssr(tSpecdevYlrq)) {
+
+
                     TPssrVessel vessel = new TPssrVessel();
+                    vessel.setWarnFlag(0l);
+                    //判断是否过期
+                    if(t.getNextWarnDate().before(now)) {
+                        vessel.setWarnFlag(1l);
+                    }
+
                     vessel.setUnit(unit);
                     vessel.setVesselName(t.getDevname());
                     vessel.setVesselNo(t.getDevno());

+ 12 - 1
master/src/main/java/com/ruoyi/project/pssr/domain/TPssrPipe.java

@@ -95,6 +95,9 @@ public class TPssrPipe extends BaseEntity
 
     private String deptName;
 
+    /** 预警标识 */
+    private Long warnFlag;
+
     public String getDeptName() {
         return deptName;
     }
@@ -116,7 +119,7 @@ public class TPssrPipe extends BaseEntity
     private List<TPssrFile> fileList;
 
     private String reason;
-    
+
     private Long fileNum;
 
     public Long getFileNum() {
@@ -127,6 +130,14 @@ public class TPssrPipe extends BaseEntity
         this.fileNum = fileNum;
     }
 
+    public Long getWarnFlag() {
+        return warnFlag;
+    }
+
+    public void setWarnFlag(Long warnFlag) {
+        this.warnFlag = warnFlag;
+    }
+
     public String getReason() {
         return reason;
     }

+ 12 - 1
master/src/main/java/com/ruoyi/project/pssr/domain/TPssrVessel.java

@@ -28,7 +28,7 @@ public class TPssrVessel extends BaseEntity
     private List<TPssrFile> fileList;
 
     private String reason;
-    
+
     private Long fileNum;
 
     public Long getFileNum() {
@@ -161,6 +161,9 @@ public class TPssrVessel extends BaseEntity
 
     private Long taskType;
 
+    /** 预警标识 */
+    private Long warnFlag;
+
     public String getDeptName() {
         return deptName;
     }
@@ -366,6 +369,14 @@ public class TPssrVessel extends BaseEntity
         return deptId;
     }
 
+    public Long getWarnFlag() {
+        return warnFlag;
+    }
+
+    public void setWarnFlag(Long warnFlag) {
+        this.warnFlag = warnFlag;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

+ 16 - 13
master/src/main/java/com/ruoyi/project/training/elearn/service/impl/TElPaperServiceImpl.java

@@ -199,11 +199,14 @@ public class TElPaperServiceImpl implements ITElPaperService {
                     }
                 }
             }
+            //通过 Comparator.comparingInt() 直接提取 quType 属性值,并按其自然升序排列(即 1 → 2 → 3):
+            paperQuList.sort(Comparator.comparingLong(TElPaperQu::getQuType));
         } catch (IndexOutOfBoundsException e) {
             throw new IndexOutOfBoundsException("题库无法匹配");
         }
 
 
+
         //保存试卷基本信息
         TElPaper paper = new TElPaper();
         paper.setExamId(exam.getExamId());
@@ -511,25 +514,25 @@ public class TElPaperServiceImpl implements ITElPaperService {
         }
         //添加问题
         //线程池
-        ExecutorService executorService = Executors.newFixedThreadPool(30);
+        ExecutorService executorService = Executors.newFixedThreadPool(1);
         final CountDownLatch latch = new CountDownLatch(quList.size()); //相同线程数量的计数
 
         for (TElPaperQu q : batchQuList
         ) {
-            executorService.execute(() -> {
-                try {
+//            executorService.execute(() -> {
+//                try {
                     tElPaperQuMapper.insertTElPaperQu(q);
-                }finally {
-                    latch.countDown(); //线程计数
-                }
-            });
-        }
-        try {
-            latch.await(); //线程计数完毕后继续执行
-        } catch (InterruptedException e) {
-            e.printStackTrace();
+//                }finally {
+//                    latch.countDown(); //线程计数
+//                }
+//            });
         }
-        executorService.shutdown();
+//        try {
+//            latch.await(); //线程计数完毕后继续执行
+//        } catch (InterruptedException e) {
+//            e.printStackTrace();
+//        }
+//        executorService.shutdown();
 
 
         //批量添加问题答案

+ 6 - 1
master/src/main/resources/mybatis/pssr/TPssrPipeMapper.xml

@@ -28,10 +28,12 @@
         <result property="deptName" column="dept_name" />
         <result property="confirm1Name"    column="confirm1_name"    />
         <result property="confirm2Name"    column="confirm2_name"    />
+        <result property="warnFlag"    column="warn_flag"    />
+
     </resultMap>
 
     <sql id="selectTPssrPipeVo">
-        select d.id, u1.nick_name confirm1_name, u2.nick_name confirm2_name, d.sub_id, d.approve_id, d.unit, d.pipeline_name, d.pipeline_no, d.checked, d.require, d.validity, d.confirmer1, d.confirmer2, d.confirmation_date, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id, d.remarks, d.approve_status ,s.dept_name from t_pssr_pipe d
+        select d.id, u1.nick_name confirm1_name, u2.nick_name confirm2_name, d.sub_id, d.approve_id, d.unit, d.pipeline_name, d.pipeline_no, d.checked, d.require, d.validity, d.confirmer1, d.confirmer2, d.confirmation_date, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id, d.remarks, d.approve_status ,s.dept_name,d.warn_flag from t_pssr_pipe d
            left join sys_user u1 on u1.user_id = d.CONFIRMER1
            left join sys_user u2 on u2.user_id = d.CONFIRMER2                                                                                                                                                                                                                                                                                               left join sys_dept s on s.dept_id = d.dept_id
     </sql>
@@ -133,6 +135,7 @@
             <if test="deptId != null">dept_id,</if>
             <if test="remarks != null">remarks,</if>
             <if test="approveStatus != null">approve_status,</if>
+            <if test="warnFlag != null">warn_flag,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
@@ -155,6 +158,7 @@
             <if test="deptId != null">#{deptId},</if>
             <if test="remarks != null">#{remarks},</if>
             <if test="approveStatus != null">#{approveStatus},</if>
+            <if test="warnFlag != null">#{warnFlag},</if>
         </trim>
     </insert>
 
@@ -180,6 +184,7 @@
             <if test="deptId != null">dept_id = #{deptId},</if>
             <if test="remarks != null ">remarks = #{remarks},</if>
             <if test="approveStatus != null">approve_status = #{approveStatus},</if>
+            <if test="warnFlag != null">warn_flag = #{warnFlag},</if>
         </trim>
         where id = #{id}
     </update>

+ 5 - 1
master/src/main/resources/mybatis/pssr/TPssrVesselMapper.xml

@@ -28,10 +28,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="deptName" column="dept_name" />
         <result property="confirm1Name"    column="confirm1_name"    />
         <result property="confirm2Name"    column="confirm2_name"    />
+        <result property="warnFlag"    column="warn_flag"    />
     </resultMap>
 
     <sql id="selectTPssrVesselVo">
-        select u1.nick_name confirm1_name, u2.nick_name confirm2_name,d.approve_status, d.unit, d.vessel_name, d.vessel_no, d.checked, d.require, d.validity, d.confirmer1, d.confirmer2, d.confirmation_date, d.remarks, d.sub_id, d.id, d.approve_id, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id ,s.dept_name from t_pssr_vessel d
+        select u1.nick_name confirm1_name, u2.nick_name confirm2_name,d.approve_status, d.unit, d.vessel_name, d.vessel_no, d.checked, d.require, d.validity, d.confirmer1, d.confirmer2, d.confirmation_date, d.remarks, d.sub_id, d.id, d.approve_id, d.del_flag, d.creater_code, d.createdate, d.updater_code, d.updatedate, d.dept_id ,s.dept_name,d.warn_flag from t_pssr_vessel d
       left join sys_dept s on s.dept_id = d.dept_id
       left join sys_user u1 on u1.user_id = d.CONFIRMER1
       left join sys_user u2 on u2.user_id = d.CONFIRMER2
@@ -106,6 +107,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="updaterCode != null">updater_code,</if>
             <if test="updatedate != null">updatedate,</if>
             <if test="deptId != null">dept_id,</if>
+            <if test="warnFlag != null">warn_flag,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="approveStatus != null">#{approveStatus},</if>
@@ -128,6 +130,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="updaterCode != null">#{updaterCode},</if>
             <if test="updatedate != null">#{updatedate},</if>
             <if test="deptId != null">#{deptId},</if>
+            <if test="warnFlag != null">#{warnFlag},</if>
          </trim>
     </insert>
 
@@ -163,6 +166,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="updaterCode != null">updater_code = #{updaterCode},</if>
             <if test="updatedate != null">updatedate = #{updatedate},</if>
             <if test="deptId != null">dept_id = #{deptId},</if>
+            <if test="warnFlag != null">warn_flag = #{warnFlag},</if>
         </trim>
         where id = #{id}
     </update>

+ 1 - 1
master/src/main/resources/mybatis/sems/TSpecdevYlgdMapper.xml

@@ -676,7 +676,7 @@
             and DEL_FLAG = 0
             and STATUS = 1
         </where>
-        order by d.plant_code asc
+        order by next_warn_date desc
     </select>
 
     <select id="selectTSpecdevYlgdListByDevNo" parameterType="TSpecdevYlgd" resultMap="TSpecdevYlgdResult">

+ 2 - 4
master/src/main/resources/mybatis/sems/TSpecdevYlrqMapper.xml

@@ -520,7 +520,7 @@
     </update>
 
     <select id="selectTSpecdevYlrqListByDevNo" parameterType="TSpecdevYlrq" resultMap="TSpecdevYlrqResult">
-        select d.id,
+        select d.id
         from t_specdev_ylrq d
         <where>
             <if test="plantCode != null  and plantCode != ''">and plant_code = #{plantCode} </if>
@@ -531,8 +531,6 @@
         order by d.id desc
     </select>
 
-
-
     <select id="selectTSpecdevYlrqListForPssr" parameterType="Integer" resultMap="TSpecdevYlrqResult">
         select d.id,
         d.plant_code,
@@ -593,6 +591,6 @@
             and DEL_FLAG = 0
             and STATUS = 1
         </where>
-        order by d.plant_code asc
+        order by next_warn_date desc
     </select>
 </mapper>

+ 1 - 0
ui/.nvmrc

@@ -0,0 +1 @@
+14.19.0

+ 1 - 1
ui/src/views/approve/approveDetail/spec-detail.vue

@@ -1136,7 +1136,7 @@
       <el-form-item :label="$t('申请时间')" prop="creattime">
         <el-input v-model="dataForm.creattime" disabled></el-input>
       </el-form-item>
-      <el-form-item v-if="[5,7].includes(dataForm.approveType)" :label="$t('原因描述')" prop="content">
+      <el-form-item v-if="[-1,1,2,3,4,5,6].includes(dataForm.approveType)" :label="$t('原因描述')" prop="content">
         <el-input type="textarea" :placeholder="$t('原因描述')"
                   v-model="dataForm.content"
                   maxlength="200"

+ 2 - 2
ui/src/views/login.vue

@@ -261,8 +261,8 @@ export default {
   justify-content: center;
   align-items: center;
   height: 100%;
-  //background-image: url("../assets/image/CPMS20210107.jpg");
-  background-image: url("../assets/image/cpms-test.jpg");
+  background-image: url("../assets/image/CPMS20210107.jpg");
+  //background-image: url("../assets/image/cpms-test.jpg");
   background-size: cover;
 }
 

+ 6 - 1
ui/src/views/pssr/pipe/index.vue

@@ -187,7 +187,12 @@
       <u-table-column label="检查内容" align="center">
         <u-table-column label="已经检验(是/否)" align="center" prop="checked" :show-overflow-tooltip="true"/>
         <u-table-column label="符合要求(是/否)" align="center" prop="require" :show-overflow-tooltip="true"/>
-        <u-table-column label="在有效期内(是/否)" align="center" prop="validity" :show-overflow-tooltip="true"/>
+        <u-table-column label="在有效期内(是/否)" align="center" prop="validity" :show-overflow-tooltip="true">
+          <template slot-scope="scope">
+            {{scope.row.validity}}
+            <el-tag v-hasPermi="['pssr:date:edit']" v-if="scope.row.warnFlag == 1" type="danger">!</el-tag>
+          </template>
+        </u-table-column>
       </u-table-column>
       <u-table-column label="确认人1" align="center" prop="confirmer1" :show-overflow-tooltip="true"
                        width="150">

+ 6 - 3
ui/src/views/pssr/vessel/index.vue

@@ -187,7 +187,12 @@
         <el-table-column label="符合要求(是/否)" align="center" prop="require" :show-overflow-tooltip="true"
                          width="180"/>
         <el-table-column label="在有效期内(是/否)" align="center" prop="validity" :show-overflow-tooltip="true"
-                         width="180"/>
+                         width="180">
+          <template slot-scope="scope">
+            {{scope.row.validity}}
+            <el-tag v-hasPermi="['pssr:date:edit']" v-if="scope.row.warnFlag == 1" type="danger">!</el-tag>
+          </template>
+        </el-table-column>
       </el-table-column>
       <el-table-column label="确认人1" align="center" prop="confirmer1" :show-overflow-tooltip="true"
                        width="150">
@@ -210,12 +215,10 @@
       <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip="true"/>
       <el-table-column label="操作" align="center" fixed="right" width="200" v-if="isApprove==0" class-name="small-padding fixed-width">
         <template slot-scope="scope">
-
           <el-button
             size="mini"
             type="text"
             icon="el-icon-folder"
-
             @click="handleDoc(scope.row)"
           >附件({{scope.row.fileNum}})
           </el-button>

+ 27 - 1
ui/src/views/sems/thickness/thicknessData/index.vue

@@ -181,7 +181,7 @@
 
       <el-table-column :label="$t('单位内编号')" align="center" prop="tagno" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('状态')" align="center" prop="status" :formatter="statusFormat" />
-      <el-table-column :label="$t('测厚部位CML')" align="center" prop="position" :show-overflow-tooltip="true"/>
+      <el-table-column :label="$t('测厚部位CML')" align="center" :render-header="remarksHeader" prop="position" :show-overflow-tooltip="true"/>
       <el-table-column :label="$t('检测编号')" align="center" prop="measureNo" :show-overflow-tooltip="true"/>
 
       <!--      <el-table-column label="记录人" align="center" prop="recorder" :show-overflow-tooltip="true"/>-->
@@ -1730,6 +1730,32 @@ export default {
       a.setAttribute('href', process.env.VUE_APP_BASE_API + url)
       a.click()
     },
+    //备注
+    remarksHeader(h, {column, $index}) {
+      return [
+        column.label,
+        h(
+          "el-tooltip",
+          {
+            props: {
+              content: (function () {
+                return '管道:弯头-W,直管-Z,大小头-Y,三通-S; 设备:管箱,筒体,封头,换热管,罐壁,罐顶,罐底\n' +
+                  '\n'
+              })(),
+              placement: "top"
+            }
+          },
+          [
+            h("span", {
+              class: {
+                "el-icon-question": true,
+                "report-headerTips": true
+              }
+            })
+          ]
+        )
+      ]
+    },
   }
 };
 </script>