Ver código fonte

隐患相关修改

77681 3 semanas atrás
pai
commit
26a2f2280e

+ 4 - 0
gw-slaj/src/main/java/com/goldenwater/slaj/hidd/domain/ObjHidd.java

@@ -71,4 +71,8 @@ public class ObjHidd {
     private String hiddSort;
     /** 关联危险源guid */
     private String hazGuid;
+    /** 单位名称(查询用) */
+    private String orgName;
+    /** 单位性质(查询用,对应 att_org_ext.wiun_prop) */
+    private String wiunProp;
 }

+ 47 - 0
gw-slaj/src/main/java/com/goldenwater/slaj/hidd/service/impl/ObjHiddServiceImpl.java

@@ -6,6 +6,10 @@ import java.util.List;
 import java.util.Map;
 
 import com.goldenwater.slaj.hidd.domain.ObjHiddVo;
+import com.goldenwater.slaj.hidd.domain.RelBisMed;
+import com.goldenwater.slaj.hidd.domain.AttMedBase;
+import com.goldenwater.slaj.hidd.service.IRelBisMedService;
+import com.goldenwater.slaj.hidd.service.IAttMedBaseService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.goldenwater.slaj.hidd.mapper.ObjHiddMapper;
@@ -26,6 +30,12 @@ public class ObjHiddServiceImpl implements IObjHiddService {
     @Autowired
     private IBisHiddInveService bisHiddInveService;
 
+    @Autowired
+    private IRelBisMedService relBisMedService;
+
+    @Autowired
+    private IAttMedBaseService attMedBaseService;
+
     @Override
     public ObjHidd selectObjHiddByGuid(String guid) {
         return objHiddMapper.selectObjHiddByGuid(guid);
@@ -105,6 +115,8 @@ public class ObjHiddServiceImpl implements IObjHiddService {
         objHidd.setHiddStat((String) params.get("hiddStat"));
         objHidd.setHiddSort((String) params.get("hiddSort"));
         objHidd.setOrgGuid((String) params.get("orgGuid"));
+        objHidd.setTendGuid((String) params.get("tendGuid"));
+        objHidd.setRecPers((String) params.get("inspLeader"));
 
         int result;
         if (params.containsKey("guid") && params.get("guid") != null) {
@@ -139,8 +151,43 @@ public class ObjHiddServiceImpl implements IObjHiddService {
                         inve.setGuid(inveGuid);
                         bisHiddInveService.insertBisHiddInve(inve);
                     }
+                    // 回写 insp_rec_guid 使 JOIN 可查到排查信息
+                    objHidd.setInspRecGuid(inve.getGuid());
+                    objHiddMapper.updateObjHidd(objHidd);
+                }
+            }
+        }
+
+        // 保存附件:先创建 att_med_base 记录,再建立 rel_bis_med 关联
+        if (params.containsKey("fileList") && params.get("fileList") instanceof List) {
+            List<Map<String, String>> fileList = (List<Map<String, String>>) params.get("fileList");
+            // 更新时先清除旧关联及旧文件记录
+            if (params.containsKey("guid") && params.get("guid") != null) {
+                List<RelBisMed> oldRels = relBisMedService.selectRelBisMedByBisInfo("OBJ_HIDD", objHidd.getGuid());
+                for (RelBisMed oldRel : oldRels) {
+                    relBisMedService.deleteRelBisMedByGuid(oldRel.getGuid());
+                    if (oldRel.getMedGuid() != null) {
+                        attMedBaseService.deleteAttMedBaseByGuid(oldRel.getMedGuid());
+                    }
                 }
             }
+            for (Map<String, String> fileInfo : fileList) {
+                String medName = fileInfo.get("name");
+                String medPath = fileInfo.get("path");
+                if (medName == null || medPath == null) continue;
+                String medGuid = java.util.UUID.randomUUID().toString().replace("-", "");
+                AttMedBase attMed = new AttMedBase();
+                attMed.setGuid(medGuid);
+                attMed.setMedName(medName);
+                attMed.setMedPath(medPath);
+                attMedBaseService.insertAttMedBase(attMed);
+                RelBisMed rel = new RelBisMed();
+                rel.setGuid(java.util.UUID.randomUUID().toString().replace("-", ""));
+                rel.setBisGuid(objHidd.getGuid());
+                rel.setBisTablename("OBJ_HIDD");
+                rel.setMedGuid(medGuid);
+                relBisMedService.insertRelBisMed(rel);
+            }
         }
 
         return result;

+ 4 - 0
gw-slaj/src/main/resources/mapper/slaj/hidd/ObjHiddMapper.xml

@@ -72,6 +72,8 @@
             <if test="guid != null and guid != ''">AND h.guid = #{guid}</if>
             <if test="hiddSort != null and hiddSort != ''">AND h.hidd_sort = #{hiddSort}</if>
             <if test="hiddSour != null and hiddSour != ''">AND h.hidd_sour = #{hiddSour}</if>
+            <if test="orgName != null and orgName != ''">AND o.org_name like concat('%', #{orgName}, '%')</if>
+            <if test="wiunProp != null and wiunProp != ''">AND EXISTS (SELECT 1 FROM att_org_ext ext WHERE ext.org_guid = h.org_guid AND ext.wiun_prop = #{wiunProp})</if>
         </where>
     </select>
     <insert id="insertObjHidd" parameterType="com.goldenwater.slaj.hidd.domain.ObjHidd">
@@ -134,6 +136,7 @@
             <if test="orgGuid != null and orgGuid != ''">AND org_guid = #{orgGuid}</if>
             <if test="engGuid != null and engGuid != ''">AND eng_guid = #{engGuid}</if>
             <if test="hiddSort != null and hiddSort != ''">AND hidd_sort = #{hiddSort}</if>
+            <if test="wiunProp != null and wiunProp != ''">AND EXISTS (SELECT 1 FROM att_org_ext ext WHERE ext.org_guid = org_guid AND ext.wiun_prop = #{wiunProp})</if>
         </where>
         order by coll_time desc
     </select>
@@ -146,6 +149,7 @@
             <if test="hiddGrad != null and hiddGrad != ''">AND hidd_grad = #{hiddGrad}</if>
             <if test="hiddStat != null and hiddStat != ''">AND hidd_stat = #{hiddStat}</if>
             <if test="hiddSort != null and hiddSort != ''">AND hidd_sort = #{hiddSort}</if>
+            <if test="wiunProp != null and wiunProp != ''">AND EXISTS (SELECT 1 FROM att_org_ext ext WHERE ext.org_guid = org_guid AND ext.wiun_prop = #{wiunProp})</if>
         </where>
         order by coll_time desc
     </select>

+ 9 - 0
gw-ui/src/api/slaj/hidd.js

@@ -44,6 +44,15 @@ export function compoundSaveHidd(data) {
   })
 }
 
+// 查询工程列表
+export function listAttEngBase(query) {
+  return request({
+    url: '/hidd/engbase/list',
+    method: 'get',
+    params: query
+  })
+}
+
 // 修改隐患
 export function updateObjHidd(data) {
   return request({

+ 2 - 0
gw-ui/src/hooks/useTableHeight.js

@@ -28,6 +28,8 @@ export function useTableHeight() {
   const calcHeight = () => {
     if (!containerRef.value) return false
     const container = containerRef.value
+    // 跳过隐藏的 tab(el-tabs 切换时 inactive 的 pane 被 display:none)
+    if (!container.offsetParent) return false
     const rect = container.getBoundingClientRect()
     // 可用高度 = 视口高度 - 容器到视口顶部的距离
     const ch = window.innerHeight - rect.top

+ 2 - 0
gw-ui/src/store/modules/user.js

@@ -15,6 +15,7 @@ const useUserStore = defineStore(
       name: '',
       realName: '',
       avatar: '',
+      orgGuid: '',
       roles: [],
       permissions: []
     }),
@@ -55,6 +56,7 @@ const useUserStore = defineStore(
             this.name = user.userName
             this.realName = user.realName
             this.avatar = avatar
+            this.orgGuid = user.deptId || ''
             /* 初始密码提示
             if(res.isDefaultModifyPwd) {
               ElMessageBox.confirm('您的密码还是初始密码,请修改密码!',  '安全提示', {  confirmButtonText: '确定',  cancelButtonText: '取消',  type: 'warning' }).then(() => {

Diferenças do arquivo suprimidas por serem muito extensas
+ 660 - 249
gw-ui/src/views/slaj/hidd/orgEngQuery.vue


Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff