heyang 8 months ago
parent
commit
a917d8edb9

+ 230 - 137
src/views/integratedManagement/laboratoryManagement/safetyInfoCategory/safetyInfoConfig.vue

@@ -1,131 +1,162 @@
 <!--安全信息配置-->
 <template>
   <div class="safetyInfoConfig">
-    <div v-if="pageType==1">
-      <div class="title-box">
-        <div @click="titleClick(1)">
-          <p>安全类目</p>
-          <p></p>
+    <div class="title-box">
+      <div @click="titleClick(1)">
+        <p>安全类目</p>
+        <p></p>
+      </div>
+      <div @click="titleClick(2)">
+        <p>信息配置</p>
+        <p class="bottom-p-color"></p>
+      </div>
+    </div>
+    <div class="config_main">
+      <div class="config_main_l scrollbar-box">
+        <div class="config_main_l_title">
+          <img  src="@/assets/ZDimages/integratedManagement/icon_xxpz_aqxxlm.png">
+          安全信息类目
         </div>
-        <div @click="titleClick(2)">
-          <p>信息配置</p>
-          <p class="bottom-p-color"></p>
+        <div :class='currentIndex==index?"active":""' class="config_main_l_li"
+             v-for="(item,index) in tabsList" :key="index" @click="handleTabClick(item,index)">
+          {{item.brandName}}
         </div>
       </div>
-      <div class="config_main">
-        <div class="config_main_l scrollbar-box">
-          <div class="config_main_l_title">
-            <img  src="@/assets/ZDimages/integratedManagement/icon_xxpz_aqxxlm.png">
-            安全信息类目
-          </div>
-          <div :class='currentIndex==index?"active":""' class="config_main_l_li"
-               v-for="(item,index) in tabsList" :key="index" @click="handleTabClick(item,index)">
-            {{item.brandName}}
-          </div>
-        </div>
-        <p class="config_main_border"></p>
-        <div class="approval_handle-page">
-          <div>
-            <p class="page-submit-common-style-button"
-               style="float: right;margin-bottom:20px;"
-               @click="handleClick('','','add')"
-               v-hasPermiRouter="['lab:infoBrand:add']"
-            >新增</p>
-          </div>
-          <el-table class="table-box" border v-loading="loading" :data="tableData">
-            <el-table-column label="排序" align="left" class-name="small-padding fixed-width" width="80">
-              <template slot-scope="scope">
-                <el-input
-                  onkeyup="value=value.replace(/[^\d]/g,'')"
-                  class="serial"
-                  v-model="scope.row.orderNum"
-                  @change="categorySort(scope.row)"
-                  maxLength="3"
-                  placeholder="序号">
-                </el-input>
-              </template>
-            </el-table-column>
-            <el-table-column label="信息名称" align="left" prop="infoName"/>
-            <el-table-column label="公共信息" align="left">
-              <template slot-scope="scope">
-                <el-switch
-                  @click.native="categoryShow(scope.row)"
-                  class="switch captcha-img"
-                  :active-value="true"
-                  :inactive-value="false"
-                  active-color="#FF9900"
-                  inactive-color="#999"
-                  v-model="scope.row.isCollective"
-                  active-text="是"
-                  inactive-text="否"
-                  disabled
-                ></el-switch>
-              </template>
-            </el-table-column>
-            <el-table-column label="危险源" align="left" prop="isConfigHazard" width="100">
-              <template slot-scope="scope">
-                <span v-if="scope.row.isConfigHazard">已配置</span>
-                <span v-if="!scope.row.isConfigHazard" style="color: #FF0000;">未配置</span>
-              </template>
-            </el-table-column>
-            <el-table-column label="添加人" align="left" prop="createName"/>
-            <el-table-column label="添加时间" align="left" prop="createTime">
-              <template slot-scope="scope">
-                <span>{{ parseTime(scope.row.createTime,"{y}-{m}-{d} {h}:{i}") }}</span>
-              </template>
-            </el-table-column>
-
-            <el-table-column label="操作" align="left" class-name="small-padding fixed-width" width="120" v-if="tableButtonType">
-              <template slot-scope="scope">
-                <div class="table-button-box">
-                  <p class="table-button-null"></p>
-                  <p class="table-button-p"
-                     v-hasPermiRouter="['lab:infoBrand:edit']"
-                     @click="handleClick('',scope.row,'edit')"
-                  >编辑</p>
-                  <p class="table-button-p"
-                     v-hasPermiRouter="['lab:infoBrand:del']"
-                     @click="handleClick('',scope.row,'delete')"
-                  >删除</p>
-                  <p class="table-button-null"></p>
-                </div>
-              </template>
-            </el-table-column>
-          </el-table>
-          <pagination :page-sizes="[20, 30, 40, 50]"
-                      :total="total"
-                      layout="total, prev, pager, next, sizes, jumper"
-                      :page.sync="queryParams.page"
-                      :limit.sync="queryParams.pageSize"
-                      @pagination="getList"
-          />
+      <p class="config_main_border"></p>
+      <div class="approval_handle-page">
+        <div>
+          <p class="page-submit-common-style-button"
+             style="float: right;margin-bottom:20px;"
+             @click="handleClick('','','add')"
+             v-hasPermiRouter="['lab:infoBrand:add']"
+          >新增</p>
         </div>
+        <el-table class="table-box" border v-loading="loading" :data="tableData">
+          <el-table-column label="排序" align="left" class-name="small-padding fixed-width" width="80">
+            <template slot-scope="scope">
+              <el-input
+                onkeyup="value=value.replace(/[^\d]/g,'')"
+                class="serial"
+                v-model="scope.row.orderNum"
+                @change="categorySort(scope.row)"
+                maxLength="3"
+                placeholder="序号">
+              </el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="信息名称" align="left" prop="infoName"/>
+          <el-table-column label="公共信息" align="left">
+            <template slot-scope="scope">
+              <el-switch
+                @click.native="categoryShow(scope.row)"
+                class="switch captcha-img"
+                :active-value="true"
+                :inactive-value="false"
+                active-color="#FF9900"
+                inactive-color="#999"
+                v-model="scope.row.isCollective"
+                active-text="是"
+                inactive-text="否"
+                disabled
+              ></el-switch>
+            </template>
+          </el-table-column>
+          <el-table-column label="添加人" align="left" prop="createName"/>
+          <el-table-column label="添加时间" align="left" prop="createTime">
+            <template slot-scope="scope">
+              <span>{{ parseTime(scope.row.createTime,"{y}-{m}-{d} {h}:{i}") }}</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="操作" align="left" class-name="small-padding fixed-width" width="120" v-if="tableButtonType">
+            <template slot-scope="scope">
+              <div class="table-button-box">
+                <p class="table-button-null"></p>
+                <p class="table-button-p"
+                   v-hasPermiRouter="['lab:infoBrand:edit']"
+                   @click="handleClick('',scope.row,'edit')"
+                >编辑</p>
+                <p class="table-button-p"
+                   v-hasPermiRouter="['lab:infoBrand:del']"
+                   @click="handleClick('',scope.row,'delete')"
+                >删除</p>
+                <p class="table-button-null"></p>
+              </div>
+            </template>
+          </el-table-column>
+        </el-table>
+        <pagination :page-sizes="[20, 30, 40, 50]"
+                    :total="total"
+                    layout="total, prev, pager, next, sizes, jumper"
+                    :page.sync="queryParams.page"
+                    :limit.sync="queryParams.pageSize"
+                    @pagination="getList"
+        />
       </div>
     </div>
-    <add-safety-info-config :propsData="propsData" v-if="pageType==2"></add-safety-info-config>
+
+
+    <!-- 添加或修改安全分级对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body :before-close="closeDialog" :close-on-click-modal="false">
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px" >
+        <el-form-item label="信息名称" prop="infoName">
+          <el-input v-model="form.infoName" maxlength="100" placeholder="请输入名称" style="width:320px;"/>
+        </el-form-item>
+        <el-form-item label="信息类目"  prop="brandId" class="form-item">
+          <el-select placeholder="请选择类目" v-model="form.brandId" style="width:320px;" @change="categoryClick()">
+            <el-option
+              v-for="dict in categoryList"
+              :key="dict.brandId"
+              :label="dict.brandName"
+              :value="dict.brandId"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="信息类型">
+          <el-input v-model="form.infoType==1?'文字':'图片'"   placeholder="" disabled style="width:320px;"/>
+        </el-form-item>
+        <el-form-item label="信息内容" prop="infoContent" v-if="form.infoType==1">
+          <el-input type="textarea" v-model="form.infoContent"  maxlength="200" placeholder="请输入内容" style="width:320px;"/>
+        </el-form-item>
+        <el-form-item label="信息内容" prop="infoContent" v-if="form.infoType==2">
+          <el-upload
+            class="certificate-avatar-uploader"
+            :action="uploadImgUrl"
+            :show-file-list="false"
+            :on-success="handleAvatarSuccess"
+            :headers="headers"
+            :before-upload="beforeAvatarUpload">
+            <div style="display: flex;">
+              <img v-if="form.infoContent" :src="form.infoContent" style="width: 80px;height: 80px;margin-right: 10px">
+              <i v-if="!form.infoContent" class="el-icon-plus avatar-uploader-icon"></i>
+            </div>
+          </el-upload>
+        </el-form-item>
+        <P v-if="form.infoType==2" style="margin-left: 80px">图片最大上传630*78,建议尺寸58*78</P>
+      </el-form>
+      <div slot="footer" class="dialog-footer dialog-footer-box">
+        <p class="dialog-footer-button-null"></p>
+        <p class="dialog-footer-button-info" @click="cancel">取消</p>
+        <p class="dialog-footer-button-primary" @click="submitForm">提交</p>
+        <p class="dialog-footer-button-null"></p>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
 <script>
-import addSafetyInfoConfig from "./addSafetyInfoConfig";
 import { getToken } from "@/utils/auth";
-import {
-  laboratoryInfoBrandList,
-  laboratoryBrandDetailAdd,
-  laboratoryBrandDetailList,
-  laboratoryBrandDetailUpdate,
-  laboratoryBrandDetailDelete,
-  laboratoryBrandDetailDetail, laboratoryClassTypeUpdate
-} from '@/api/integratedManagement/index'
+import { laboratoryInfoBrandList , laboratoryBrandDetailAdd, laboratoryBrandDetailList, laboratoryBrandDetailUpdate, laboratoryBrandDetailDelete } from '@/api/integratedManagement/index'
 export default {
   name: "Approval",
-  components: {
-    addSafetyInfoConfig,
-  },
   data() {
     return {
       tableButtonType:this.hasPermiDom(['lab:infoBrand:edit','lab:infoBrand:del',]),
       uploadImgUrl: this.uploadUrl(), // 上传的图片服务器地址
+      activeName: '',
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
       //页面状态
       pageType:1,
       loading:false,
@@ -144,13 +175,28 @@ export default {
       pageData2:{},
       tabsList:[],
       categoryList:[],
-      //组件传参
-      propsData:{},
       // 表单参数
       infoType:null,
-
+      form: {
+        brandId:'',
+        infoName:'',
+        infoType:'',
+        infoContent:'',
+        isCollective:'',
+      },
       currentIndex:0,
-
+      // 表单校验
+      rules: {
+        infoName: [
+          { required: true, message: "请输入名称", trigger: "blur" },
+        ],
+        brandId: [
+          { required: true, message: "请选择类目", trigger: "blur" },
+        ],
+        infoContent: [
+          { required: true, message: "请添加信息内容", trigger: "blur" },
+        ],
+      }
     };
 
 
@@ -159,6 +205,11 @@ export default {
       titleClick(type){
         this.$parent.titleClick(type);
       },
+
+      closeDialog(){
+        this.$refs['form'].clearValidate()
+        this.open=false
+      },
       handleTabClick(item,index){
         this.currentIndex = index
         this.queryParams.brandId=item.brandId;
@@ -168,34 +219,28 @@ export default {
       handleClick(index,row,doType){
         let self=this;
         if(doType=='add'){//添加
-          let obj={
+          this.title='新增安全信息';
+          this.$set(this,'form',{
             brandId:this.queryParams.brandId,
             infoType:this.infoType,
-            listHazardModel:[],
-          }
-          this.$set(this,'propsData',obj)
-          this.$set(this,'pageType',2)
+            infoName:'',
+            infoContent:'',
+          });
+          this.open = true;
         }else if(doType=='edit'){//编辑
-
-          laboratoryBrandDetailDetail({detailId:row.detailId}).then( response => {
-             if (response.code==200){
-               let obj={
-                 detailId:response.data.detailId,
-                 brandId:response.data.brandId,
-                 infoName:response.data.infoName,
-                 infoType:response.data.infoType,
-                 infoContent:response.data.infoContent,
-                 isCollective:response.data.isCollective,
-                 orderNum:response.data.orderNum,
-                 listHazardModel:response.data.listHazardModel,
-               }
-               this.$set(this,'propsData',obj)
-               this.$set(this,'pageType',2)
-             }
+          this.title='编辑安全信息';
+          this.$set(this,'form',{
+            detailId:row.detailId,
+            brandId:row.brandId,
+            infoName:row.infoName,
+            infoType:row.infoType,
+            infoContent:row.infoContent,
+            isCollective:row.isCollective,
+            orderNum:row.orderNum,
           });
-
+          this.open = true;
         }else if(doType=='deploy'){//信息牌配置
-          //self.pageType=2;
+          self.pageType=2;
         }else if(doType=='delete'){//删除
           this.$confirm('确认要删除吗?', "警告", {
             confirmButtonText: "确定",
@@ -209,8 +254,7 @@ export default {
             });
           }).catch(function() {});
         }else if(doType=='back'){//返回
-          this.$set(this,'pageType',1)
-          self.getList();
+          self.pageType=1;
         }
       },
       categorySort(row){
@@ -278,6 +322,55 @@ export default {
         this.$refs['form'].clearValidate()
         this.open = false;
       },
+      /** 提交按钮 */
+      submitForm() {
+        this.$refs["form"].validate(valid => {
+          if (valid) {
+            if (this.form.detailId) {
+              laboratoryBrandDetailUpdate(this.form).then( response => {
+                this.msgSuccess(response.message);
+                this.open = false;
+                this.getList();
+              });
+            } else {
+              laboratoryBrandDetailAdd(this.form).then( response => {
+                this.msgSuccess(response.message);
+                this.open = false;
+                this.getList();
+              });
+            }
+          }
+        });
+      },
+      //上传
+      handleAvatarSuccess(res, file) {
+        this.form.infoContent = res.data.url;
+        this.$forceUpdate()
+      },
+      beforeAvatarUpload(file) {
+        return new Promise((resolve, reject) => {
+          if (file.type == 'image/png') {
+            let reader = new FileReader()
+            reader.readAsDataURL(file) // 必须用file.raw
+            reader.onload = e => { // 让页面中的img标签的src指向读取的路径
+              let img = e.target.result;
+              const image = new Image()
+              image.src=img
+              image.onload = _=>{
+                if(image.width <= 630 && image.height <= 78){
+                  resolve()
+                }else{
+                  this.msgError('尺寸限制为最大630*78px,支持PNG格式')
+                  reject();
+                }
+              }
+            }
+          }else{
+            this.msgError('请上传PNG格式');
+            reject();
+          }
+        })
+      },
       //查询信息类目列表
       getCategoryList(){
         let obj={

+ 63 - 442
src/views/integratedManagement/laboratoryManagement/subject/addSubject.vue

@@ -40,44 +40,28 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <div style="display: inline-block;">
-          <el-form-item label="安全分级"  prop="levelId" class="form-item" v-if="!form.dynamicLeveling">
-            <el-input
-              disabled
-              style="width:220px;"
-              v-model="form.titleName"
-              placeholder="请选择安全分级"
-              clearable
-              size="small"
-            />
-          </el-form-item>
-          <p class="page-reset-common-style-button" @click="LevelClick()" style="margin-left:12px;margin-bottom:20px;width:90px;">分级配置</p>
-        </div>
-        <div style="display: inline-block;">
-          <el-form-item label="安全分类"  prop="typeId" class="form-item" v-if="!form.dynamicLeveling">
-            <el-input
-              disabled
-              style="width:220px;"
-              v-model="form.subType"
-              placeholder="请选择安全分类"
-              clearable
-              size="small"
-            />
-          </el-form-item>
-          <p class="page-reset-common-style-button" @click="classifyClick()" style="margin-left:12px;margin-bottom:20px;width:90px;">分类配置</p>
-        </div>
-        <el-form-item label="实验室面积" prop="subArea" class="form-item">
-          <el-input
-            style="width:320px;"
-            v-model="form.subArea"
-            placeholder="请输入面积"
-            oninput="value=value.replace(/[^0-9.]/g,'')"
-            maxlength="4"
-            size="small">
-            <template slot="append">M²</template>
-          </el-input>
+        <el-form-item label="安全分类"  prop="typeId" class="form-item" v-if="!form.dynamicLeveling">
+          <el-select v-model="form.typeId" multiple collapse-tags placeholder="请选择安全分类" style="width: 320px">
+            <el-option
+              v-for="dict in typeList"
+              :key="dict.typeId"
+              :label="dict.typeName"
+              :value="dict.typeId">
+            </el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="安全分级"  prop="levelId" class="form-item" v-if="!form.dynamicLeveling">
+          <el-select v-model="form.levelId" placeholder="请选择安全分级"
+                     :disabled="form.dynamicLeveling" clearable style="width:320px;">
+            <el-option
+              v-for="dict in levelList"
+              :key="dict.levelId"
+              :label="dict.levelName"
+              :value="dict.levelId"
+            ></el-option>
+          </el-select>
         </el-form-item>
-<!--        <el-form-item label="动态评级" class="form-item" style="width:440px;">
+        <el-form-item label="动态评级" class="form-item" style="width:440px;">
           <div class="tableListPaginationSwitch">
             <el-switch
               class="switch captcha-img"
@@ -90,7 +74,7 @@
             <i class="el-icon-warning tip-img"></i>
             <i class="tip-content">如需人工评定,请关闭动态评级</i>
           </div>
-        </el-form-item>-->
+        </el-form-item>
         <el-form-item label="楼栋"  prop="buildId" class="form-item">
           <el-select v-model="form.buildId" placeholder="请选择楼栋"
                      @change="changeBuild" style="width:320px;">
@@ -123,7 +107,17 @@
             ></el-option>
           </el-select>
         </el-form-item>
-
+        <el-form-item label="实验室面积" prop="subArea" class="form-item">
+          <el-input
+            style="width:320px;"
+            v-model="form.subArea"
+            placeholder="请输入面积"
+            oninput="value=value.replace(/[^0-9.]/g,'')"
+            maxlength="4"
+            size="small">
+            <template slot="append">M²</template>
+          </el-input>
+        </el-form-item>
         <el-form-item label="准入设备"  class="form-item">
           <el-select v-model="form.hardwareType" placeholder="请选择整改类型" style="width:320px;" @change="hardwareTypeFun()" >
             <el-option label="无"  :value="0" />
@@ -302,81 +296,16 @@
         </div>
       </el-form>
     </div>
-    <el-dialog title="分级配置" :visible.sync="dialogLevelVisible" width="970px" append-to-body>
-      <div class="tabs">
-        <div class="tabs-li" v-for="(item,index) in tabsList" @click="tabsClick(index)" :class="tabsIndex==index?'color-B':'color-A'">{{item}}</div>
-      </div>
-
-      <div class="level" style="height: 500px;overflow-y: auto;">
-        <!-- 分类依据-->
-        <div class="level-box" v-for="(item,index) in levelBasisList" :key="index" v-if="tabsIndex==0">
-          <div class="level-title" :style="'background:'+item.color">{{item.name}}</div>
-          <div class="level-thead">
-            <i>选择</i>
-            <i>序号</i>
-            <i>内容</i>
-          </div>
-          <div class="level-li" v-for="(item2,index2) in item.list" :key="index2">
-            <i><el-checkbox v-model="item2.selected"></el-checkbox></i>
-            <i>{{index2+1}}</i>
-            <i>{{item2.content}}</i>
-          </div>
-          <div class="level-li2">{{item.remark}}</div>
-        </div>
-        <!-- 风险评价-->
-        <div class="level-box" v-for="(item,index) in levelEvaluateList" :key="index" v-if="tabsIndex==1">
-          <div class="level-title">{{item.name}}</div>
-          <div class="level-thead">
-            <i>选择</i>
-            <i>序号</i>
-            <i>内容</i>
-          </div>
-          <div class="level-li" v-for="(item2,index2) in item.list" :key="index2">
-            <i><el-checkbox v-model="item2.selected"></el-checkbox></i>
-            <i>{{index2+1}}</i>
-            <i>{{item2.content}}</i>
-          </div>
-        </div>
-      </div>
-      <div slot="footer" class="dialog-footer dialog-footer-box">
-        <p class="dialog-footer-button-null"></p>
-        <p class="dialog-footer-button-primary" @click="levelSubmitForm">确认</p>
-        <p class="dialog-footer-button-null"></p>
-      </div>
-    </el-dialog>
-    <el-dialog title="分类配置" :visible.sync="dialogClassifyVisible" width="970px" append-to-body>
-      <div class="classify">
-        <div class="classify-thead">
-          <i>选择</i>
-          <i>实验室分类</i>
-          <i>分类参考依据</i>
-        </div>
-        <div class="classify-li" v-for="(item,index) in classifyList">
-          <i @click="radioClick(item,index)"><el-radio v-model="item.selected" :label="true" ><span></span></el-radio></i>
-          <i>{{item.subType}}</i>
-          <i>{{item.typeBasis}}</i>
-        </div>
-      </div>
-      <div slot="footer" class="dialog-footer dialog-footer-box">
-        <p class="dialog-footer-button-null"></p>
-        <p class="dialog-footer-button-primary" @click="classifySubmitForm">确认</p>
-        <p class="dialog-footer-button-null"></p>
-      </div>
-    </el-dialog>
   </div>
 </template>
 
 <script>
 import {
   getDeptDropList, systemBuildingGetOptList, laboratoryClassMoldGetList,
-   systemRoomInfoGetList,systemUserDropAuthList
+  laboratoryClassLevelGetList, laboratoryClassTypeGetList, systemRoomInfoGetList,
+  systemUserSelectUser, systemUserDropAuthList
 } from '@/api/commonality/permission'
-import {
-  laboratoryInfoBrandGetClassifyBySubId, laboratoryLevelConfigGetCalculateByData, laboratoryLevelConfigGetList,
-  laboratorySubRelInfoAdd,
-  laboratorySubRelInfoUpdate, laboratoryTypeConfigGetList
-} from '@/api/integratedManagement/index'
-import { chemicalMsdsEdit } from '@/api/chemicalManage'
+    import { laboratoryInfoBrandGetClassifyBySubId,laboratorySubRelInfoAdd,laboratorySubRelInfoUpdate,laboratorySubRelInfoGetDetailInfo } from "@/api/integratedManagement/index";
     export default {
       name: "addSubject",
       props:{
@@ -385,6 +314,8 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
       data() {
         return {
           loading:false,
+          levelList:[],
+          typeList:[],
           deptOptions:[],
           buildings:[],
           floors:[],
@@ -448,14 +379,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
           labMoldList:[],
           //一体机/电子信息牌状态切换
           checkButtonType:1,
-          tabsList:['分级依据','风险评级'],
-          tabsIndex:0,
-          dialogLevelVisible:false,
-          dialogClassifyVisible:false,
-          levelBasisList:[],
-          levelEvaluateList:[],
-          classifyList:[],
-
         }
       },
       created() {
@@ -470,10 +393,12 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
           this.$set(this.form,'subId',this.subjectData.subId)
           this.$set(this.form,'subName',this.subjectData.subName)
           this.$set(this.form,'moldId',this.subjectData.moldId)
-          this.$set(this.form,'typeId',this.subjectData.typeId)
-          this.$set(this.form,'subType',this.subjectData.typeName)
+          if(this.subjectData.typeId){
+            this.$set(this.form,'typeId',this.subjectData.typeId.split(','))
+          }else{
+            this.$set(this.form,'typeId',[])
+          }
           this.$set(this.form,'levelId',this.subjectData.levelId)
-          this.$set(this.form,'titleName',this.subjectData.levelName)
           this.$set(this.form,'deptId',this.subjectData.deptId)
           this.$set(this.form,'buildId',this.subjectData.buildId)
           this.$set(this.form,'floorId',this.subjectData.floorId)
@@ -545,27 +470,16 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
         }
       },
       methods:{
-        LevelClick(){
-          this.$set(this,'dialogLevelVisible',true);
-        },
-        classifyClick(){
-          this.$set(this,'dialogClassifyVisible',true);
-        },
-        tabsClick(index){
-          this.tabsIndex=index;
-        },
-        radioClick(row,index){
-          this.classifyList.forEach(function(item) {
-            item.selected=false;
-          })
-          this.classifyList[index].selected=true;
-        },
         //初始化数据查询
         getInitializeData(){
           //学院
           this.getDeptDropList();
           //楼栋
           this.systemBuildingGetOptList(2);
+          //分类
+          this.laboratoryClassTypeGetList();
+          //分级
+          this.laboratoryClassLevelGetList();
           //类型
           this.laboratoryClassMoldGetList();
           //安全标识字典
@@ -584,11 +498,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
           this.getDicts("sys_extinguishing_key_points").then(response => {
             this.$set(this,'extinguishingKeyPoints',response.data);
           });
-          //分级配置列表
-          this.laboratoryLevelConfigGetList();
-          this.laboratoryLevelConfigGetListTow();
-          //分类配置列表
-          this.laboratoryTypeConfigGetList();
         },
         //查询学院下拉列表
         getDeptDropList(){
@@ -612,6 +521,18 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
             this.$set(this,'rooms',response.data);
           });
         },
+        //查询安全分类下拉列表
+        laboratoryClassTypeGetList(){
+          laboratoryClassTypeGetList({}).then(response => {
+            this.$set(this,'typeList',response.data);
+          });
+        },
+        //查询安全分级列表
+        laboratoryClassLevelGetList(){
+          laboratoryClassLevelGetList({}).then(response => {
+            this.$set(this,'levelList',response.data);
+          });
+        },
         //查询实验室类型下拉列表
         laboratoryClassMoldGetList(){
           laboratoryClassMoldGetList({}).then(response => {
@@ -636,6 +557,7 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
           }
         },
         upData(){
+          console.log(this.form)
           let self = this;
           this.$set(this.form,'details',this.$refs.UEditor.text);
           this.$refs["form"].validate(valid => {
@@ -660,6 +582,9 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
                 if(self.form.safeUserId) {
                   self.form.safeUserId = self.form.safeUserId.join() ;
                 }
+                if(self.form.typeId) {
+                  self.form.typeId = self.form.typeId.join() ;
+                }
                 //循环取安全信息牌信息
 
                 let list=[]
@@ -676,7 +601,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
                 if(self.form.infoId){
                   self.laboratorySubRelInfoUpdate();
                 }else{
-
                   self.laboratorySubRelInfoAdd();
                 }
               }).then(() => {}).catch(() => {});
@@ -702,87 +626,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
         backPage(){
           this.$parent.clickPage(1,'');
         },
-        //分级配置列表
-        laboratoryLevelConfigGetList(){
-          let obj={
-            levelType:'1', //1分级依据 2风险评价
-          }
-          laboratoryLevelConfigGetList(obj).then(response => {
-            if (this.subjectData.levelRecord){
-              let list = this.subjectData.levelRecord.split(',');
-              response.data.forEach(function(item) {
-                item.list.forEach(function(item2) {
-                  item2.selected=false;
-                  list.forEach(function(item3) {
-                    if (item2.configId==item3){
-                      item2.selected=true;
-                    }
-                  })
-                })
-              })
-            }else{
-              response.data.forEach(function(item) {
-                item.list.forEach(function(item2) {
-                  item2.selected=false;
-                })
-              })
-            }
-
-            this.$set(this, 'levelBasisList',response.data)
-          });
-        },
-        //分级配置列表
-        laboratoryLevelConfigGetListTow(){
-          let obj={
-            levelType:'2', //1分级依据 2风险评价
-          }
-          laboratoryLevelConfigGetList(obj).then(response => {
-              if (this.subjectData.levelRecord){
-                let list = this.subjectData.levelRecord.split(',');
-                response.data.forEach(function(item) {
-                  item.list.forEach(function(item2) {
-                    item2.selected=false;
-                    list.forEach(function(item3) {
-                      if (item2.configId==item3){
-                        item2.selected=true;
-                      }
-                    })
-                  })
-                })
-              }else{
-                response.data.forEach(function(item) {
-                  item.list.forEach(function(item2) {
-                    item2.selected=false;
-                  })
-                })
-              }
-
-            this.$set(this, 'levelEvaluateList',response.data)
-          });
-        },
-        //分类配置列表
-        laboratoryTypeConfigGetList(){
-          let self=this;
-          laboratoryTypeConfigGetList().then(response => {
-            if (this.subjectData.typeId){
-              response.data.forEach(function(item) {
-                item.selected=false;
-              })
-              response.data.forEach(function(item) {
-                if (item.typeId==self.subjectData.typeId){
-                  item.selected=true;
-                }
-              })
-            }else{
-              response.data.forEach(function(item) {
-                item.selected=false;
-              })
-            }
-
-            this.$set(this, 'classifyList',response.data)
-          });
-        },
-
         /** 查询楼栋列表  */
         getBuildings(id) {
           if(id) {
@@ -834,47 +677,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
             this.$set(this,'optionsUserOne',[]);
           }
         },
-        //分级确定
-        levelSubmitForm(){
-          let self=this;
-          let list=[]
-          let listId=[]
-          this.levelBasisList.forEach(function(item) {
-            item.list.forEach(function(item2) {
-              if (item2.selected){
-                list.push(item2)
-                listId.push(item2.configId)
-              }
-            })
-          })
-          this.levelEvaluateList.forEach(function(item) {
-            item.list.forEach(function(item2) {
-              if (item2.selected){
-                list.push(item2)
-                listId.push(item2.configId)
-              }
-            })
-          })
-          this.$set(this.form, 'levelRecord',listId.join(','))
-          laboratoryLevelConfigGetCalculateByData(list).then( response => {
-              this.$set(this.form, 'levelId',response.data.levelId)
-              this.$set(this.form, 'titleName',response.data.titleName)
-              this.$set(this, 'dialogLevelVisible',false)
-
-          });
-        },
-        //分类确定
-        classifySubmitForm(){
-          let self=this;
-          this.classifyList.forEach(function(item) {
-            if (item.selected){
-              self.$set(self.form, 'typeId',item.typeId)
-              self.$set(self.form, 'subType',item.subType)
-              self.$set(self, 'dialogClassifyVisible',false)
-            }
-          })
-
-        },
       }
     }
 </script>
@@ -988,187 +790,6 @@ import { chemicalMsdsEdit } from '@/api/chemicalManage'
       }
     }
   }
-  .tabs{
-    display: flex;
-    justify-content: flex-start;
-    margin-left: 42px;
-    .tabs-li{
-      font-weight: 400;
-      font-size: 16px;
-      color: #333333;
-      padding-bottom: 20px;
-      box-sizing: border-box;
-      margin-right: 40px;
-      cursor: pointer;
-    }
-    .color-A{
-      color: #333333;
-    }
-    .color-B{
-      color: #043581;
-      border-bottom: 4px solid #043581;
-    }
-  }
-  .level{
-    border: 1px solid #E0E0E0;
-    width: 820px;
-    margin-left: 40px;
-    .level-box{
-      .level-title{
-        background: #E0E0E0;
-        font-weight: 400;
-        font-size: 16px;
-        color: #FFFFFF;
-        line-height: 40px;
-        height: 40px;
-        padding-left: 14px;
-
-      }
-      .level-thead{
-        background: #F5F5F5;
-        border-bottom: 1px solid #E0E0E0;
-        height: 40px;
-        display: flex;
-        justify-content: flex-start;
-        align-items: center;
-        >i{
-          font-style: normal;
-          display: inline-block;
-          text-align: center;
-          font-weight: 400;
-          font-size: 16px;
-          line-height: 40px;
-          color: #333333;
-        }
-        >i:nth-of-type(1){
-          width: 50px;
-          border-right: 1px solid #E0E0E0;
-        }
-        >i:nth-of-type(2){
-          width: 132px;
-          border-right: 1px solid #E0E0E0;
-        }
-        >i:nth-of-type(3){
-          width: 636px;
-        }
-      }
-      .level-li{
-        display: flex;
-        justify-content: flex-start;
-        height: auto;
-        border-bottom: 1px solid #E0E0E0;
-        >i{
-          font-style: normal;
-          text-align: center;
-          font-weight: 400;
-          font-size: 16px;
-          color: #333333;
-          height: auto;
-          padding:8px 16px;
-          box-sizing: border-box;
-          display: flex;
-          justify-content: center;
-          align-items: center;
-        }
-        >i:nth-of-type(1){
-          width: 50px;
-          border-right: 1px solid #E0E0E0;
-        }
-        >i:nth-of-type(2){
-          width: 132px;
-
-          border-right: 1px solid #E0E0E0;
-        }
-        >i:nth-of-type(3){
-          width: 636px;
-          text-align: left;
-        }
-      }
-      .level-li:nth-child(2n){
-        background: #F5F5F5;
-      }
-      .level-li:last-child{
-        border:none;
-      }
-      .level-li2{
-        font-weight: 400;
-        font-size: 14px;
-        color: #333333;
-        line-height: 40px;
-        text-align: center;
-      }
-    }
-
-  }
-  .classify{
-    border: 1px solid #E0E0E0;
-    width: 820px;
-    margin-left: 40px;
-    .classify-thead{
-      background: #F5F5F5;
-      border-bottom: 1px solid #E0E0E0;
-      height: 40px;
-      display: flex;
-      justify-content: flex-start;
-      align-items: center;
-      >i{
-        font-style: normal;
-        display: inline-block;
-        text-align: center;
-        font-weight: 400;
-        font-size: 16px;
-        line-height: 40px;
-        color: #333333;
-      }
-      >i:nth-of-type(1){
-        width: 50px;
-        border-right: 1px solid #E0E0E0;
-      }
-      >i:nth-of-type(2){
-        width: 132px;
-        border-right: 1px solid #E0E0E0;
-      }
-      >i:nth-of-type(3){
-        width: 636px;
-      }
-    }
-    .classify-li{
-      display: flex;
-      justify-content: flex-start;
-      height: auto;
-      border-bottom: 1px solid #E0E0E0;
-      >i{
-        font-style: normal;
-        text-align: center;
-        font-weight: 400;
-        font-size: 16px;
-        color: #333333;
-        height: auto;
-        padding:8px 16px;
-        box-sizing: border-box;
-        display: flex;
-        align-items: center;
-      }
-      >i:nth-of-type(1){
-        width: 50px;
-        border-right: 1px solid #E0E0E0;
-      }
-      >i:nth-of-type(2){
-        width: 132px;
-        border-right: 1px solid #E0E0E0;
-      }
-      >i:nth-of-type(3){
-        width: 636px;
-        text-align: left;
-      }
-    }
-    .classify-li:nth-child(2n+1){
-      background: #F5F5F5;
-    }
-    .classify-li:last-child{
-      border:none;
-    }
-  }
   ::v-deep .tableListPaginationSwitch{
     height: 40px;
     display: flex;