瀏覽代碼

20221123_sun项目申报类型新增多选框

15143018065 2 年之前
父節點
當前提交
ae1ff63908

+ 3 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/domain/ZwywXmsbCommon.java

@@ -199,6 +199,9 @@ public class ZwywXmsbCommon extends BaseEntity
     @TableField(exist = false)
     private String shFlg;
 
+    @TableField(exist = false)
+    private String tjFlg;
+
     /**
      * 用来存放关联项目申报备案信息
      */

+ 4 - 1
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/mapper/ZwywXmsbXmlxMapper.java

@@ -1,9 +1,10 @@
 package com.ruoyi.business.mapper;
 
-import java.util.List;
 import com.ruoyi.business.domain.ZwywXmsbXmlx;
 import com.ruoyi.common.datascope.utils.BaseMapperPlus;
 
+import java.util.List;
+
 /**
  * 项目申报项目类型信息Mapper接口
  *
@@ -18,4 +19,6 @@ public interface ZwywXmsbXmlxMapper extends BaseMapperPlus<ZwywXmsbXmlx> {
 
     //根据申报项目类型信息id查询下级关联附件类型信息
     public List<String> zwywXmsbFjlxById(String id);
+
+    public List<String> zwywXmsbPzById(String id);
 }

+ 2 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/service/IZwywXmsbXmlxService.java

@@ -71,4 +71,6 @@ public interface IZwywXmsbXmlxService
      */
     public List<String> zwywXmsbFjlxById(String id);
 
+    public List<String> zwywXmsbPzById(String id);
+
 }

+ 5 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/service/impl/ZwywXmsbCommonServiceImpl.java

@@ -136,6 +136,11 @@ public class ZwywXmsbCommonServiceImpl implements IZwywXmsbCommonService
             if (StringUtils.isEmpty(deptLevel.get(0))) {
                 r.setShFlg(ExamineStatus.SNO.getCode());
             }
+            if (StringUtils.isEmpty(deptLevel.get(0))) {
+                if (StringUtils.equals(r.getCreateUnit(), SecurityUtils.getUserUnitId())) {
+                    r.setTjFlg(ExamineStatus.SNO.getCode());
+                }
+            }
             r.setSzdqName(sysDeptJlMapper.getXzqhNames(r.getSzdq()));
             ZwywXmsbXmlx xmlx = xwywXmsbXmlxMapper.selectById(r.getXmlx());
             if (ObjectUtils.isNotEmpty(xmlx)) {

+ 17 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/service/impl/ZwywXmsbFjlxServiceImpl.java

@@ -3,14 +3,19 @@ package com.ruoyi.business.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.business.domain.ZwywXmsbFjlx;
 import com.ruoyi.business.mapper.ZwywXmsbFjlxMapper;
+import com.ruoyi.business.mapper.ZwywXmsbXmlxMapper;
 import com.ruoyi.business.service.IZwywXmsbFjlxService;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.StringUtils;
+import io.seata.common.util.CollectionUtils;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 /**
  * 项目申报附件类型信息Service业务层处理
@@ -24,6 +29,9 @@ public class ZwywXmsbFjlxServiceImpl implements IZwywXmsbFjlxService
     @Autowired
     private ZwywXmsbFjlxMapper zwywXmsbFjlxMapper;
 
+    @Autowired
+    private ZwywXmsbXmlxMapper zwywXmsbXmlxMapper;
+
     /**
      * 查询项目申报附件类型信息
      * 
@@ -84,6 +92,15 @@ public class ZwywXmsbFjlxServiceImpl implements IZwywXmsbFjlxService
     @Override
     public int deleteZwywXmsbFjlxByIds(String[] ids)
     {
+        List<String> idList = Stream.of(ids).collect(Collectors.toList());
+        idList.forEach(i -> {
+            ZwywXmsbFjlx fj = zwywXmsbFjlxMapper.selectById(i);
+            if (ObjectUtils.isNotEmpty(fj)) {
+                if (CollectionUtils.isNotEmpty(zwywXmsbXmlxMapper.zwywXmsbCommonInfoById(fj.getXmlxId()))) {
+                    throw new ServiceException("当前项目申报项目类型已占用,不能删除");
+                };
+            }
+        });
         return zwywXmsbFjlxMapper.deleteBatchIds(Arrays.asList(ids));
     }
 

+ 17 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/service/impl/ZwywXmsbXmbdpzServiceImpl.java

@@ -3,14 +3,19 @@ package com.ruoyi.business.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.business.domain.ZwywXmsbXmbdpz;
 import com.ruoyi.business.mapper.ZwywXmsbXmbdpzMapper;
+import com.ruoyi.business.mapper.ZwywXmsbXmlxMapper;
 import com.ruoyi.business.service.IZwywXmsbXmbdpzService;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.StringUtils;
+import io.seata.common.util.CollectionUtils;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 /**
  * 项目申报项目类型单配置信息Service业务层处理
@@ -24,6 +29,9 @@ public class ZwywXmsbXmbdpzServiceImpl implements IZwywXmsbXmbdpzService
     @Autowired
     private ZwywXmsbXmbdpzMapper zwywXmsbXmbdpzMapper;
 
+    @Autowired
+    private ZwywXmsbXmlxMapper zwywXmsbXmlxMapper;
+
     /**
      * 查询项目申报项目类型单配置信息
      * 
@@ -84,6 +92,15 @@ public class ZwywXmsbXmbdpzServiceImpl implements IZwywXmsbXmbdpzService
     @Override
     public int deleteZwywXmsbXmbdpzByIds(String[] ids)
     {
+        List<String> idList = Stream.of(ids).collect(Collectors.toList());
+        idList.forEach(i -> {
+            ZwywXmsbXmbdpz pz = zwywXmsbXmbdpzMapper.selectById(i);
+            if (ObjectUtils.isNotEmpty(pz)) {
+                if (CollectionUtils.isNotEmpty(zwywXmsbXmlxMapper.zwywXmsbCommonInfoById(pz.getXmlxId()))) {
+                    throw new ServiceException("当前项目申报项目类型已占用,不能删除");
+                };
+            }
+        });
         return zwywXmsbXmbdpzMapper.deleteBatchIds(Arrays.asList(ids));
     }
 

+ 5 - 0
ruoyi-modules/mz-business-xmsb/src/main/java/com/ruoyi/business/service/impl/ZwywXmsbXmlxServiceImpl.java

@@ -133,4 +133,9 @@ public class ZwywXmsbXmlxServiceImpl implements IZwywXmsbXmlxService
         return zwywXmsbXmlxMapper.zwywXmsbFjlxById(id);
     }
 
+    @Override
+    public List<String> zwywXmsbPzById(String id) {
+        return zwywXmsbXmlxMapper.zwywXmsbPzById(id);
+    }
+
 }

+ 4 - 0
ruoyi-modules/mz-business-xmsb/src/main/resources/mapper/business/ZwywXmsbXmlxMapper.xml

@@ -31,4 +31,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="zwywXmsbFjlxById" resultType="String">
         select id from zwyw_xmsb_fjlx where xmlx_id = #{id}
     </select>
+
+    <select id="zwywXmsbPzById" resultType="String">
+        select id from zwyw_xmsb_xmbdpz where xmlx_id = #{id}
+    </select>
 </mapper>

+ 1 - 0
ruoyi-modules/mz-business/src/main/java/com/ruoyi/business/controller/ZwywXmsbXmbdpzController.java

@@ -99,6 +99,7 @@ public class ZwywXmsbXmbdpzController extends BaseController
 	@DeleteMapping("/{ids}")
     public AjaxResult remove(@PathVariable String[] ids)
     {
+
         return toAjax(zwywXmsbXmbdpzService.deleteZwywXmsbXmbdpzByIds(ids));
     }
 }

+ 5 - 0
ruoyi-modules/mz-business/src/main/java/com/ruoyi/business/controller/ZwywXmsbXmlxController.java

@@ -110,12 +110,17 @@ public class ZwywXmsbXmlxController extends BaseController
         List<String> xmlxCommon = zwywXmsbXmlxService.zwywXmsbCommonInfoById(xmlxId);
         //根据项目申报类型信息id查询关联附件类型list
         List<String> xmlxFjlx = zwywXmsbXmlxService.zwywXmsbFjlxById(xmlxId);
+        //根据项目申报类型信息id查询关联配置类型list
+        List<String> xmlxPz = zwywXmsbXmlxService.zwywXmsbPzById(xmlxId);
         if (xmlxCommon.size() > 0){
             return AjaxResult.error("当前项目申报项目类型已占用,不能删除");
         }
         if (xmlxFjlx.size() > 0){
             return AjaxResult.error("当前项目申报项目类型含有附件类型,不能删除");
         }
+        if (xmlxPz.size() > 0){
+            return AjaxResult.error("当前项目申报项目类型含有表单配置,不能删除");
+        }
         return toAjax(zwywXmsbXmlxService.deleteZwywXmsbXmlxByIds(ids));
     }
 }

+ 2 - 2
ruoyi-ui/src/views/business/xmsb/xmbdpz/index.vue

@@ -91,7 +91,7 @@
 
     <!-- 添加或修改项目申报项目类型表单配置信息对话框 -->
     <el-dialog v-dialog-drag :title="title" :visible.sync="open" width="500px" append-to-body>
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
 
         <el-form-item label="主键标识" prop="xmlxId" style="display:none">
           <el-input v-model="form.xmlxId" placeholder="请输入主键标识" />
@@ -112,7 +112,7 @@
           </el-select>
         </el-form-item>
 
-        <el-form-item v-if="['select', 'radio'].includes(form.type)" label="表单项字典类型" prop="dictType">
+        <el-form-item v-if="['select', 'radio', 'radios'].includes(form.type)" label="表单项字典类型" prop="dictType">
           <el-input v-model="form.dictType" placeholder="请输入表单项字典类型" />
         </el-form-item>
 

+ 50 - 16
ruoyi-ui/src/views/business/xmsb/xmsbCommon/index.vue

@@ -10,7 +10,8 @@
         </RegionCascaderSelect>
       </el-form-item>
       <el-form-item label="项目类型" prop="xmlx">
-        <BizDict :parmar="xmlxParam" :value="queryParams.xmlx" @changeData="changXmlx" :isCoom="true" :isLoding="false" :para1="user.userData.deptId">
+        <BizDict :parmar="xmlxParam" :value="queryParams.xmlx" @changeData="changXmlx" :isCoom="true" :isLoding="false"
+          :para1="user.userData.deptId">
         </BizDict>
       </el-form-item>
       <el-form-item label="申报日期" prop="sbrq">
@@ -53,10 +54,12 @@
         <template slot-scope="scope">
           <el-button v-if="scope.row.sbzt == '1' && scope.row.shFlg == '1'" size="mini" type="text" icon="el-icon-edit"
             @click="handleSh(scope.row)" v-hasPermi="['business:xmsbCommon:sh']">审核</el-button>
-          <el-button v-if="scope.row.sbzt == '3' && !scope.row.shFlg" size="mini" type="text" icon="el-icon-edit"
-            @click="handleUpdate(scope.row)" v-hasPermi="['business:xmsbCommon:second']">修改申请</el-button>
-          <el-button v-if="scope.row.sbzt == '3' && !scope.row.shFlg" size="mini" type="text" icon="el-icon-top"
-            @click="handleSub(scope.row)" v-hasPermi="['business:xmsbCommon:second']">重新提交</el-button>
+          <el-button v-if="scope.row.sbzt == '3' && (!scope.row.shFlg || scope.row.tjFlg)" size="mini" type="text"
+            icon="el-icon-edit" @click="handleUpdate(scope.row)" v-hasPermi="['business:xmsbCommon:second']">修改申请
+          </el-button>
+          <el-button v-if="scope.row.sbzt == '3' && (!scope.row.shFlg || scope.row.tjFlg)" size="mini" type="text"
+            icon="el-icon-top" @click="handleSub(scope.row)" v-hasPermi="['business:xmsbCommon:second']">重新提交
+          </el-button>
           <el-button v-if="scope.row.sbzt == '0'" size="mini" type="text" icon="el-icon-top"
             @click="handleSub(scope.row)" v-hasPermi="['business:xmsbCommon:edit']">提交</el-button>
           <el-button v-if="scope.row.sbzt == '0'" size="mini" type="text" icon="el-icon-edit"
@@ -75,7 +78,7 @@
       @pagination="getList" />
 
     <!-- 附件列表信息对话框 -->
-    <el-dialog v-dialog-drag :title="viewTitle" :visible.sync="openView" width="800px" append-to-body>
+    <el-dialog v-dialog-drag :title="viewTitle" :visible.sync="openView" width="1000px" append-to-body>
       <xmsbFj :sbzt="rowSbzt" :xmId="rowId" />
     </el-dialog>
 
@@ -179,6 +182,14 @@
               <el-radio v-for="dict in kz.dictData" :key="dict.dictValue" :label="dict.dictValue">{{ dict.dictLabel }}
               </el-radio>
             </el-radio-group>
+
+            <el-checkbox-group v-if="kz.type == 'radios'" v-model="kz.value">
+              <el-checkbox v-for="dict in kz.dictData" :key="dict.dictValue" :label="dict.dictLabel">
+                {{ dict.dictLabel }}
+              </el-checkbox>
+            </el-checkbox-group>
+
+
           </el-form-item>
 
           <el-form-item label="备注" prop="bz" class="contenrFlex">
@@ -253,14 +264,19 @@
             <td v-if="kzList[index].type == 'date'">{{ special(kzList[index].value) }}</td>
             <td v-if="kzList[index].type == 'radio'">{{ translateDictV(kzList[index].dictData, kzList[index].value) }}
             </td>
+            <td v-if="kzList[index].type == 'radios'">{{ translateDictVS(kzList[index].dictData, kzList[index].value) }}
+            </td>
             <td v-if="kzList[index + 1]">{{ kzList[index + 1].label }}</td>
             <td v-if="kzList[index + 1] && kzList[index + 1].type == 'input'">{{ kzList[index + 1].value }}</td>
             <td v-if="kzList[index + 1] && kzList[index + 1].type == 'select'">{{ translateDictV(kzList[index +
                 1].dictData, kzList[index + 1].value)
             }}</td>
             <td v-if="kzList[index + 1] && kzList[index + 1].type == 'date'">{{ special(kzList[index + 1].value) }}</td>
-            <td v-if="kzList[index + 1] && kzList[index + 1].type == 'radio'">{{ translateDictV(kzList[index + 1].dictData,
-                kzList[index + 1].value)
+            <td v-if="kzList[index + 1] && kzList[index + 1].type == 'radio'">{{ translateDictV(kzList[index +
+                1].dictData, kzList[index + 1].value)
+            }}</td>
+            <td v-if="kzList[index + 1] && kzList[index + 1].type == 'radios'">{{ translateDictVS(kzList[index +
+                1].dictData, kzList[index + 1].value)
             }}</td>
           </tr>
           <tr>
@@ -355,6 +371,8 @@
               <td v-if="kzList[index].type == 'date'">{{ special(kzList[index].value) }}</td>
               <td v-if="kzList[index].type == 'radio'">{{ translateDictV(kzList[index].dictData, kzList[index].value) }}
               </td>
+              <td v-if="kzList[index].type == 'radios'">{{ translateDictVS(kzList[index].dictData, kzList[index].value)
+              }}</td>
               <td v-if="kzList[index + 1]">{{ kzList[index + 1].label }}</td>
               <td v-if="kzList[index + 1] && kzList[index + 1].type == 'input'">{{ kzList[index + 1].value }}</td>
               <td v-if="kzList[index + 1] && kzList[index + 1].type == 'select'">{{ translateDictV(kzList[index +
@@ -365,6 +383,9 @@
               <td v-if="kzList[index + 1] && kzList[index + 1].type == 'radio'">{{
                   translateDictV(kzList[index + 1].dictData, kzList[index + 1].value)
               }}</td>
+              <td v-if="kzList[index + 1] && kzList[index + 1].type == 'radios'">{{ translateDictVS(kzList[index +
+                  1].dictData, kzList[index + 1].value)
+              }}</td>
             </tr>
             <tr>
               <td>备注</td>
@@ -440,7 +461,7 @@ import {
 import xmsbFj from "../xmsbFj/index";
 import { chineseOne, idCard, Regular } from "@/utils/regular";
 import { decryptData_ECB, decryptRowData_ECB } from "@/api/tool/sm4";
-import {mapState} from "vuex";
+import { mapState } from "vuex";
 
 export default {
   name: "XmsbCommon",
@@ -450,7 +471,7 @@ export default {
   },
   data() {
     return {
-      decodeStr:{},
+      decodeStr: {},
       // 遮罩层
       loading: true,
       submitFormLoading: false,
@@ -761,7 +782,7 @@ export default {
       this.kzList = [];
       const id = row.id || this.ids;
       getXmsbCommon(id).then((response) => {
-        this.decodeStr = decryptData_ECB(this.deepCopy(response.data), ["sbr", "sbrdh", "sbryx", "xmlxr", "xmlxrdh", "xmlxryx"], [99,99,99,99,99,99]);
+        this.decodeStr = decryptData_ECB(this.deepCopy(response.data), ["sbr", "sbrdh", "sbryx", "xmlxr", "xmlxrdh", "xmlxryx"], [99, 99, 99, 99, 99, 99]);
         this.form = decryptData_ECB(response.data, ["sbr", "sbrdh", "sbryx", "xmlxr", "xmlxrdh", "xmlxryx"], [1, 3, 5, 1, 3, 5]);
         if (this.form.szdq) {
           this.form.szdq = JSON.stringify(this.form.szdq.split(","));
@@ -831,10 +852,10 @@ export default {
               ...this.form,
               szdq: szxzqh,
               kz: kzChar,
-              sbr: this.form.sbr.includes('✱')? this.decodeStr.sbr: this.form.sbr,
-              sbrdh: this.form.sbrdh.includes('✱')? this.decodeStr.sbrdh: this.form.sbrdh,
-              xmlxr: this.form.xmlxr.includes('✱')? this.decodeStr.xmlxr: this.form.xmlxr,
-              xmlxrdh: this.form.xmlxrdh.includes('✱')? this.decodeStr.xmlxrdh: this.form.xmlxrdh,
+              sbr: this.form.sbr.includes('✱') ? this.decodeStr.sbr : this.form.sbr,
+              sbrdh: this.form.sbrdh.includes('✱') ? this.decodeStr.sbrdh : this.form.sbrdh,
+              xmlxr: this.form.xmlxr.includes('✱') ? this.decodeStr.xmlxr : this.form.xmlxr,
+              xmlxrdh: this.form.xmlxrdh.includes('✱') ? this.decodeStr.xmlxrdh : this.form.xmlxrdh,
             }
             updateXmsbCommon(querys)
               .then((response) => {
@@ -918,6 +939,11 @@ export default {
         xmlx: this.form.xmlx,
       };
       getXmsbAddInfo(param).then((res) => {
+        res.forEach((r, i) => {
+          if (r.type == 'radios') {
+            r.value = [];
+          }
+        })
         this.kzList = res;
         if (this.form.id) {
           this.kzList.map((t, i) => {
@@ -957,6 +983,11 @@ export default {
       this.openXq = false
       this.reset()
     },
+    changeQT(value) {
+      if (!value) {
+        value = '';
+      }
+    },
     translateDict(type, value) {
       return this.selectDictLabel(this.dict.type[type], value)
     },
@@ -964,7 +995,7 @@ export default {
       var res = '';
       if (type && type.length > 0) {
         if (value) {
-          type.forEach((t, i)=>{
+          type.forEach((t, i) => {
             if (t.dictValue = value) {
               res = t.dictLabel
             }
@@ -973,6 +1004,9 @@ export default {
       }
       return res
     },
+    translateDictVS(type, value) {
+      return value.join(',');
+    },
   },
 };
 </script>

+ 23 - 100
ruoyi-ui/src/views/business/xmsb/xmsbFj/index.vue

@@ -1,52 +1,21 @@
 <template>
   <div class="app-container">
-    <el-form
-      :model="queryParams"
-      ref="queryForm"
-      size="small"
-      :inline="true"
-      v-show="showSearch"
-      label-width="68px"
-    >
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="材料简称" prop="fjmc">
-        <el-input
-          v-model="queryParams.fjmc"
-          placeholder="请输入材料简称"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
+        <el-input v-model="queryParams.fjmc" placeholder="请输入材料简称" clearable @keyup.enter.native="handleQuery" />
       </el-form-item>
       <el-form-item>
-        <el-button
-          type="primary"
-          icon="el-icon-search"
-          size="mini"
-          @click="handleQuery"
-          >搜索</el-button
-        >
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
-          >重置</el-button
-        >
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
 
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
-        <el-button
-          v-if="['0', '3'].includes(sbzt)"
-          type="primary"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['business:xmsbFj:add']"
-          >新增</el-button
-        >
+        <el-button v-if="['0', '3'].includes(sbzt)" type="primary" plain icon="el-icon-plus" size="mini"
+          @click="handleAdd" v-hasPermi="['business:xmsbFj:add']">新增</el-button>
       </el-col>
-      <right-toolbar
-        :showSearch.sync="showSearch"
-        @queryTable="getList"
-      ></right-toolbar>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="xmsbFjList">
@@ -60,56 +29,27 @@
           <span>{{ special(scope.row.cjrq, "date") }}</span>
         </template>
       </el-table-column>
-      <el-table-column
-        label="操作"
-        align="center"
-        class-name="small-padding fixed-width"
-        fixed="right"
-      >
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="160px">
         <template slot-scope="scope">
-          <el-button
-            v-if="['0', '3'].includes(sbzt)"
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['business:xmsbFj:edit']"
-            >修改</el-button
-          >
-          <el-button
-            v-if="['0', '3'].includes(sbzt)"
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row, scope.$index)"
-            v-hasPermi="['business:xmsbFj:remove']"
-            >删除</el-button
-          >
+          <el-button v-if="['0', '3'].includes(sbzt)" size="mini" type="text" icon="el-icon-edit"
+            @click="handleUpdate(scope.row)" v-hasPermi="['business:xmsbFj:edit']">修改</el-button>
+          <el-button v-if="['0', '3'].includes(sbzt)" size="mini" type="text" icon="el-icon-delete"
+            @click="handleDelete(scope.row, scope.$index)" v-hasPermi="['business:xmsbFj:remove']">删除</el-button>
           <el-link :href="scope.row.fj" :underline="false" target="_blank" v-hasPermi="['business:xmsbFj:download']">
-            <el-button size="mini" type="text" icon="el-icon-download" @click="handleDownload(scope.row, scope.$index)">下载
+            <el-button size="mini" type="text" icon="el-icon-download" @click="handleDownload(scope.row, scope.$index)">
+              下载
             </el-button>
           </el-link>
-          
+
         </template>
       </el-table-column>
     </el-table>
 
-    <pagination
-      v-show="total > 0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
+    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
+      @pagination="getList" />
 
     <!-- 添加或修改项目申报附件信息对话框 -->
-    <el-dialog
-      v-dialog-drag
-      :title="title"
-      :visible.sync="open"
-      width="500px"
-      append-to-body
-    >
+    <el-dialog v-dialog-drag :title="title" :visible.sync="open" width="500px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="主键标识" prop="sbId" style="display: none">
           <el-input v-model="form.sbId" placeholder="请输入主键标识" />
@@ -120,14 +60,8 @@
         </el-form-item>
 
         <el-form-item label="材料类型" prop="fjlx">
-          <BizDict
-            :parmar="fjlxParam"
-            :value="form.fjlx"
-            @changeData="changFormFjlx"
-            style="width: 100%"
-            :isCoom="true"
-            :para1="xmId"
-          ></BizDict>
+          <BizDict :parmar="fjlxParam" :value="form.fjlx" @changeData="changFormFjlx" style="width: 100%" :isCoom="true"
+            :para1="xmId"></BizDict>
         </el-form-item>
 
         <el-form-item label="内附文件说明" prop="nfwjsm">
@@ -135,13 +69,7 @@
         </el-form-item>
 
         <el-form-item label="备注" prop="bz">
-          <el-input
-            v-model="form.bz"
-            type="textarea"
-            maxlength="1000"
-            show-word-limit
-            placeholder="请输入备注"
-          />
+          <el-input v-model="form.bz" type="textarea" maxlength="1000" show-word-limit placeholder="请输入备注" />
         </el-form-item>
 
         <el-form-item label="附件地址" prop="fj">
@@ -149,12 +77,7 @@
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button
-          type="primary"
-          @click="submitForm"
-          :loading="submitFormLoading"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitForm" :loading="submitFormLoading">确 定</el-button>
         <el-button @click="cancel">取 消</el-button>
       </div>
     </el-dialog>
@@ -364,7 +287,7 @@ export default {
           this.$modal.msgSuccess("删除成功");
           /****** sks 需要改动的地方 end ******/
         })
-        .catch(() => {});
+        .catch(() => { });
     },
     /** 导出按钮操作 */
     handleExport() {

+ 2 - 2
ruoyi-ui/src/views/business/xmsb/xmsbXmlx/index.vue

@@ -150,8 +150,8 @@
     </el-dialog>
 
     <!-- 添加或修改项目申报附件类型信息对话框 -->
-    <el-dialog v-dialog-drag :title="viewTitleAdd" :visible.sync="openViewInOrUp" width="500px" append-to-body>
-      <el-form ref="viewForm" :model="viewForm" :rules="rules" label-width="80px">
+    <el-dialog v-dialog-drag :title="viewTitleAdd" :visible.sync="openViewInOrUp" width="600px" append-to-body>
+      <el-form ref="viewForm" :model="viewForm" :rules="rules" label-width="120px">
 
         <el-form-item label="项目类型" prop="xmlxId" style="display: none">
           <el-input v-model="viewForm.xmlxId" placeholder="请输入项目类型" />