|
@@ -55,7 +55,6 @@
|
|
|
:data="form.klDiagnoseTypeVO"
|
|
|
:row-class-name="tableRowClassName"
|
|
|
border
|
|
|
- style="width: 100%"
|
|
|
:header-cell-style="{background:'#E3EAF4'}"
|
|
|
>
|
|
|
<el-table-column label="依据" width="100">
|
|
@@ -80,20 +79,19 @@
|
|
|
height="18"
|
|
|
width="18"
|
|
|
class="icon"
|
|
|
- :disabled="form.klDiagnoseTypeVO.length===1"
|
|
|
- @click="delDiag(scope.$index)"
|
|
|
+ @click="form.klDiagnoseTypeVO.length===1?'':delDiag(scope.$index)"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="诊断依据类型" width="130">
|
|
|
+ <el-table-column label="诊断依据类型" width="100">
|
|
|
<template slot="header" slot-scope="scope">
|
|
|
<span class="star">*</span>
|
|
|
<span>诊断依据类型</span>
|
|
|
</template>
|
|
|
<template slot-scope="scope">
|
|
|
<el-form-item
|
|
|
- class="is-request"
|
|
|
+ class="form-s"
|
|
|
:prop="'klDiagnoseTypeVO.'+scope.$index+'.conditionType'"
|
|
|
:rules="[{ required: true, message: '请选择诊断依据类型',trigger: ['change'] }]"
|
|
|
>
|
|
@@ -118,301 +116,287 @@
|
|
|
<span>{{v.title}}</span>
|
|
|
</template>
|
|
|
<template slot-scope="scope">
|
|
|
- <div v-for="(item,index) in scope.row.groupVO" :key="index">
|
|
|
- <div v-if="v.title=='组'">
|
|
|
- <el-form-item>
|
|
|
+ <div v-for="(item,index) in scope.row.groupVO" :key="index" class="big-box">
|
|
|
+ <el-form-item v-if="v.title=='组'">
|
|
|
+ <img
|
|
|
+ src="../../images/icon-add.png"
|
|
|
+ height="18"
|
|
|
+ width="18"
|
|
|
+ class="icon"
|
|
|
+ @click="addGroup(scope.$index)"
|
|
|
+ />
|
|
|
+ <img
|
|
|
+ src="../../images/icon-delete.png"
|
|
|
+ height="18"
|
|
|
+ width="18"
|
|
|
+ class="icon"
|
|
|
+ @click="delGroup(scope.$index)"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ v-if="v.title == '符合条件的数量'"
|
|
|
+ :prop="'klDiagnoseTypeVO.'+scope.$index+'.groupVO.'+index+'.fitNo'"
|
|
|
+ :rules="[{required:true,message:'请选择符合条件的数量',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select v-model="item.fitNo">
|
|
|
+ <el-option
|
|
|
+ v-for="item in numArr[scope.$index].num[index]"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <div v-for="(items,i) in item.klDiagnoseDetail" :key="i">
|
|
|
+ <el-form-item v-if="v.title == '基础依据'">
|
|
|
<img
|
|
|
src="../../images/icon-add.png"
|
|
|
height="18"
|
|
|
width="18"
|
|
|
class="icon"
|
|
|
- @click="addGroup(scope.$index)"
|
|
|
+ @click="addRule(scope.row,scope.$index,index)"
|
|
|
/>
|
|
|
<img
|
|
|
src="../../images/icon-delete.png"
|
|
|
height="18"
|
|
|
width="18"
|
|
|
class="icon"
|
|
|
- @click="delGroup(scope.$index)"
|
|
|
+ @click="delRule(scope.row,scope.$index,index,i)"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- </div>
|
|
|
- <div v-if="v.title == '符合条件的数量'">
|
|
|
<el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.'+scope.$index+'.groupVO.'+index+'.fitNo'"
|
|
|
- :rules="[{required:true,message:'请选择符合条件的数量',trigger:'change'}]"
|
|
|
+ v-if="v.title == '基础依据名称'"
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
+ scope.$index +
|
|
|
+ '.groupVO.' +
|
|
|
+ index +
|
|
|
+ '.klDiagnoseDetail.'+i+'.basDescription'"
|
|
|
+ :rules="[{required:true,message:'请输入基础依据名称',trigger:'blur'}]"
|
|
|
>
|
|
|
- <el-select v-model="item.fitNo">
|
|
|
+ <el-input
|
|
|
+ class="inp-name"
|
|
|
+ placeholder="请输入基础依据名称"
|
|
|
+ maxlength="100"
|
|
|
+ v-model.trim="items.basDescription"
|
|
|
+ ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ v-if="v.title == '基础依据类型'"
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
+ scope.$index +
|
|
|
+ '.groupVO.' +
|
|
|
+ index +
|
|
|
+ '.klDiagnoseDetail.'+i+'.basType'"
|
|
|
+ :rules="[{required:true,message:'请选择基础依据类型',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="items.basType"
|
|
|
+ @change="(val)=>baseTermTypeChange(val,scope.$index,index,i)"
|
|
|
+ >
|
|
|
<el-option
|
|
|
- v-for="item in numArr[scope.$index].num[index]"
|
|
|
+ v-for="item in baseTermTypeList"
|
|
|
:key="item.id"
|
|
|
:label="item.name"
|
|
|
- :value="item.id"
|
|
|
+ :value="item.type"
|
|
|
></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- </div>
|
|
|
- <div v-for="(items,i) in item.klDiagnoseDetail" :key="i">
|
|
|
- <el-form-item>
|
|
|
- <div v-if="v.title == '基础依据'">
|
|
|
- <el-form-item>
|
|
|
- <img
|
|
|
- src="../../images/icon-add.png"
|
|
|
- height="18"
|
|
|
- width="18"
|
|
|
- class="icon"
|
|
|
- @click="addRule(scope.row,scope.$index,index)"
|
|
|
- />
|
|
|
- <img
|
|
|
- src="../../images/icon-delete.png"
|
|
|
- height="18"
|
|
|
- width="18"
|
|
|
- class="icon"
|
|
|
- @click="delRule(scope.row,scope.$index,index,i)"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="box-2" v-if="v.title == '基础依据名称'">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
- scope.$index +
|
|
|
- '.groupVO.' +
|
|
|
- index +
|
|
|
- '.klDiagnoseDetail.'+i+'.basDescription'"
|
|
|
- :rules="[{required:true,message:'请输入基础依据名称',trigger:'blur'}]"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- class="inp-name"
|
|
|
- placeholder="请输入基础依据名称"
|
|
|
- maxlength="100"
|
|
|
- v-model.trim="items.basDescription"
|
|
|
- ></el-input>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="box-2" v-if="v.title == '基础依据类型'">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
- scope.$index +
|
|
|
- '.groupVO.' +
|
|
|
- index +
|
|
|
- '.klDiagnoseDetail.'+i+'.basType'"
|
|
|
- :rules="[{required:true,message:'请选择基础依据类型',trigger:'change'}]"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- v-model="items.basType"
|
|
|
- @change="(val)=>baseTermTypeChange(val,scope.$index,index,i)"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in baseTermTypeList"
|
|
|
- :key="item.id"
|
|
|
- :label="item.name"
|
|
|
- :value="item.type"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="box-2" v-if="v.title == '基础依据术语类型'">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
- scope.$index +
|
|
|
- '.groupVO.' +
|
|
|
- index +
|
|
|
- '.klDiagnoseDetail.'+i+'.basLibType'"
|
|
|
- :rules="[{required:true,message:'请选择基础依据术语类型',trigger:'change'}]"
|
|
|
- v-if="!items.basNameType"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- v-model="items.basLibType"
|
|
|
- @change="(val)=>basLibTypeChange(val,scope.$index,index,i)"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in items.basLibTypeList"
|
|
|
- :key="item.id"
|
|
|
- :label="item.name"
|
|
|
- :value="Number(item.code)"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item v-if="items.basNameType">
|
|
|
- <el-input disabled v-model="items.basTypeName"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div
|
|
|
- v-if="v.title == '医学标准术语'"
|
|
|
- class="box-2"
|
|
|
- :class="(items.basType===3 || items.basType===4)? 'tmall' : 'taobao'"
|
|
|
+ <el-form-item
|
|
|
+ v-if="v.title == '基础依据术语类型' && !items.basNameType"
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
+ scope.$index +
|
|
|
+ '.groupVO.' +
|
|
|
+ index +
|
|
|
+ '.klDiagnoseDetail.'+i+'.basLibType'"
|
|
|
+ :rules="[{required:true,message:'请选择基础依据术语类型',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="items.basLibType"
|
|
|
+ @change="(val)=>basLibTypeChange(val,scope.$index,index,i)"
|
|
|
>
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-option
|
|
|
+ v-for="item in items.basLibTypeList"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="Number(item.code)"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item v-if="items.basNameType && v.title == '基础依据术语类型'">
|
|
|
+ <el-input disabled v-model="items.basTypeName"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ v-if="v.title == '医学标准术语'"
|
|
|
+ class="box-2"
|
|
|
+ :class="(items.basType===3 || items.basType===4)? 'tmall' : 'taobao'"
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.basConceptId'"
|
|
|
- :rules="[{required:true,message:'请输入医学标准术语',trigger:'change'}]"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- clearable
|
|
|
- remote
|
|
|
- filterable
|
|
|
- :remote-method="(val)=>searchConcept(val,scope.$index,index,i)"
|
|
|
- v-model.trim="items.basConceptId"
|
|
|
- @change="(val)=>conceptChange(val,scope.$index,index,i)"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in items.conceptList"
|
|
|
- :key="item.conceptId"
|
|
|
- :label="item.conceptName"
|
|
|
- :value="item.conceptId"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- <div class="last-box" v-if="v.title == '规则具体内容'">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ :rules="[{required:true,message:'请输入医学标准术语',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ clearable
|
|
|
+ remote
|
|
|
+ filterable
|
|
|
+ :remote-method="(val)=>searchConcept(val,scope.$index,index,i)"
|
|
|
+ v-model.trim="items.basConceptId"
|
|
|
+ @change="(val)=>conceptChange(val,scope.$index,index,i)"
|
|
|
+ >
|
|
|
+ <el-option
|
|
|
+ v-for="item in items.conceptList"
|
|
|
+ :key="item.conceptId"
|
|
|
+ :label="item.conceptName"
|
|
|
+ :value="item.conceptId"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item class="last-box" v-if="v.title == '依据具体内容'">
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.dataType'"
|
|
|
- :rules="[{required:true,message:'请选择类型',trigger:'change'}]"
|
|
|
- v-if="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType"
|
|
|
- >
|
|
|
- <el-select
|
|
|
- class="box-1"
|
|
|
- :class="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType? 'taobao' : 'tmall'"
|
|
|
- v-model="items.dataType"
|
|
|
- @change="(val)=>dataTypeChange(val,scope.$index,index,i)"
|
|
|
- placeholder="请选择"
|
|
|
- size="small"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in dataTypes"
|
|
|
- :key="item.id"
|
|
|
- :label="item.name"
|
|
|
- :value="item.id"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- class="min-margin"
|
|
|
- :key="6"
|
|
|
- v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
|
|
|
- label="最大值:"
|
|
|
+ :rules="[{required:true,message:'请选择类型',trigger:'change'}]"
|
|
|
+ v-if="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ class="box-1"
|
|
|
+ :class="items.basType===2&&!items.onlyNumType&&!items.onlyTxtType? 'taobao' : 'tmall'"
|
|
|
+ v-model="items.dataType"
|
|
|
+ @change="(val)=>dataTypeChange(val,scope.$index,index,i)"
|
|
|
+ placeholder="请选择"
|
|
|
+ size="small"
|
|
|
>
|
|
|
- <div class="last-box-1">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-option
|
|
|
+ v-for="item in dataTypes"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ class="min-margin"
|
|
|
+ :key="6"
|
|
|
+ v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
|
|
|
+ label="最大值:"
|
|
|
+ >
|
|
|
+ <div class="last-box-1">
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.maxOperator'"
|
|
|
- :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
|
|
|
+ :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="items.maxOperator"
|
|
|
+ placeholder="请选择"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
>
|
|
|
- <el-select
|
|
|
- v-model="items.maxOperator"
|
|
|
- placeholder="请选择"
|
|
|
- size="small"
|
|
|
- clearable
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in operMaxList"
|
|
|
- :key="item.key"
|
|
|
- :label="item.name"
|
|
|
- :value="item.key"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
+ <el-option
|
|
|
+ v-for="item in operMaxList"
|
|
|
+ :key="item.key"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.key"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.maxVal'"
|
|
|
- :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
|
|
|
- >
|
|
|
- <el-input v-model="items.maxVal" placeholder="填写数值"></el-input>
|
|
|
- </el-form-item>
|
|
|
+ :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
|
|
|
+ >
|
|
|
+ <el-input v-model="items.maxVal" placeholder="填写数值"></el-input>
|
|
|
+ </el-form-item>
|
|
|
|
|
|
- <el-form-item prop="minUnit">
|
|
|
- <el-input v-model.trim="items.maxUnit" placeholder="填写单位"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- class="min-margin"
|
|
|
- v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
|
|
|
- label="最小值:"
|
|
|
- >
|
|
|
- <div class="last-box-1 last-box-s">
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-form-item prop="minUnit">
|
|
|
+ <el-input v-model.trim="items.maxUnit" placeholder="填写单位"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ class="min-margin"
|
|
|
+ v-if="(!items.onlyNumType&&items.dataType==='1')||items.onlyNumType"
|
|
|
+ label="最小值:"
|
|
|
+ >
|
|
|
+ <div class="last-box-1 last-box-s">
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.minOperator'"
|
|
|
- :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
|
|
|
+ :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'change'}]"
|
|
|
+ >
|
|
|
+ <el-select
|
|
|
+ v-model="items.minOperator"
|
|
|
+ placeholder="请选择"
|
|
|
+ size="small"
|
|
|
+ clearable
|
|
|
>
|
|
|
- <el-select
|
|
|
- v-model="items.minOperator"
|
|
|
- placeholder="请选择"
|
|
|
- size="small"
|
|
|
- clearable
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in operMinList"
|
|
|
- :key="item.key"
|
|
|
- :label="item.name"
|
|
|
- :value="item.key"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
+ <el-option
|
|
|
+ v-for="item in operMinList"
|
|
|
+ :key="item.key"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.key"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.minVal'"
|
|
|
- :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
|
|
|
- >
|
|
|
- <el-input v-model="items.minVal" placeholder="填写数值"></el-input>
|
|
|
- </el-form-item>
|
|
|
+ :rules="[{required:true,message:'最大值和最小值至少完整填写一个,单位不必填',trigger:'blur'}]"
|
|
|
+ >
|
|
|
+ <el-input v-model="items.minVal" placeholder="填写数值"></el-input>
|
|
|
+ </el-form-item>
|
|
|
|
|
|
- <el-form-item prop="minUnit">
|
|
|
- <el-input v-model.trim="items.minUnit" placeholder="填写单位"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ <el-form-item prop="minUnit">
|
|
|
+ <el-input v-model.trim="items.minUnit" placeholder="填写单位"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.eqValue'"
|
|
|
- :rules="[{required:true,message:'请输入正则表达式',trigger:'blur'}]"
|
|
|
- v-if="items.basType===4 || items.basType===3"
|
|
|
- maxlength="200"
|
|
|
- label="正则表达式:"
|
|
|
- class="discDesc"
|
|
|
- >
|
|
|
- <el-input class="inp" placeholder="不能为空~" v-model.trim="items.eqValue"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item
|
|
|
- :prop="'klDiagnoseTypeVO.' +
|
|
|
+ :rules="[{required:true,message:'请输入正则表达式',trigger:'blur'}]"
|
|
|
+ v-if="items.basType===4 || items.basType===3"
|
|
|
+ maxlength="200"
|
|
|
+ label="正则表达式:"
|
|
|
+ class="discDesc"
|
|
|
+ >
|
|
|
+ <el-input class="inp" placeholder="不能为空~" v-model.trim="items.eqValue"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item
|
|
|
+ :prop="'klDiagnoseTypeVO.' +
|
|
|
scope.$index +
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.eqValue'"
|
|
|
- :rules="[{required:true,message:'不能为空~',trigger:'blur'}]"
|
|
|
- maxlength="200"
|
|
|
- v-if="(!items.onlyNumType&&!items.basNameType&&(items.basType===2 || items.basType===1)&&items.dataType==='2')||items.onlyTxtType"
|
|
|
- label="医学内容:"
|
|
|
- class="discDesc"
|
|
|
- >
|
|
|
- <el-input v-model.trim="items.eqValue" class="inp" placeholder="请输入医学内容"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </div>
|
|
|
+ :rules="[{required:true,message:'不能为空~',trigger:'blur'}]"
|
|
|
+ maxlength="200"
|
|
|
+ v-if="(!items.onlyNumType&&!items.basNameType&&(items.basType===2 || items.basType===1)&&items.dataType==='2')||items.onlyTxtType"
|
|
|
+ label="医学内容:"
|
|
|
+ class="discDesc"
|
|
|
+ >
|
|
|
+ <el-input v-model.trim="items.eqValue" class="inp" placeholder="请输入医学内容"></el-input>
|
|
|
+ </el-form-item>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -420,7 +404,6 @@
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</el-form>
|
|
|
-
|
|
|
<div class="Butn">
|
|
|
<el-button class="disclButn" size="small" type="primary" @click="confirm">保存</el-button>
|
|
|
</div>
|
|
@@ -438,13 +421,13 @@ export default {
|
|
|
return {
|
|
|
columns: [
|
|
|
{ title: '组', width: 70 },
|
|
|
- { title: '符合条件的数量', width: 150, istar: true },
|
|
|
+ { title: '符合条件的数量', width: 105, istar: true },
|
|
|
{ title: '基础依据', width: 80, istar: true },
|
|
|
{ title: '基础依据名称', width: 160, istar: true },
|
|
|
- { title: '基础依据类型', width: 130, istar: true },
|
|
|
- { title: '基础依据术语类型', width: 160, istar: true },
|
|
|
+ { title: '基础依据类型', width: 150, istar: true },
|
|
|
+ { title: '基础依据术语类型', width: 165, istar: true },
|
|
|
{ title: '医学标准术语', width: 130, istar: true },
|
|
|
- { title: '规则具体内容', width: 750 }
|
|
|
+ { title: '依据具体内容', width: 850 }
|
|
|
],
|
|
|
dicts: {},
|
|
|
baseTypes: [], //诊断数据类型
|
|
@@ -692,7 +675,6 @@ export default {
|
|
|
newArr = arr;
|
|
|
}
|
|
|
});
|
|
|
- // console.log(newArr)
|
|
|
// this.$set(this, 'form.klDiagnoseTypeVO', newArr);
|
|
|
this.getSpanArr(newArr);
|
|
|
},
|
|
@@ -724,14 +706,12 @@ export default {
|
|
|
};
|
|
|
}
|
|
|
},
|
|
|
- tableRowClassName({row, column, rowIndex, columnIndex}) {
|
|
|
- console.log(row.depart_id & 1)
|
|
|
- if (row.depart_id & 1) {
|
|
|
- console.log(3658)
|
|
|
- return 'success-row';
|
|
|
- }
|
|
|
- return '';
|
|
|
- },
|
|
|
+ tableRowClassName({ row, column, rowIndex, columnIndex }) {
|
|
|
+ if (row.depart_id & 1) {
|
|
|
+ return 'success-row';
|
|
|
+ }
|
|
|
+ return '';
|
|
|
+ },
|
|
|
getInitData() {
|
|
|
this.i++;
|
|
|
return {
|
|
@@ -792,7 +772,34 @@ export default {
|
|
|
},
|
|
|
//删除依据
|
|
|
delDiag(i) {
|
|
|
- this.form.klDiagnoseTypeVO.splice(i, 1);
|
|
|
+ const formData = JSON.parse(JSON.stringify(this.form));
|
|
|
+ let map = {},
|
|
|
+ dest = [];
|
|
|
+ for (let i = 0; i < formData.klDiagnoseTypeVO.length; i++) {
|
|
|
+ let ai = formData.klDiagnoseTypeVO[i];
|
|
|
+ if (!map[ai.depart_id]) {
|
|
|
+ dest.push({
|
|
|
+ depart_id: ai.depart_id,
|
|
|
+ conditionType: ai.conditionType,
|
|
|
+ groupVO: ai.groupVO
|
|
|
+ });
|
|
|
+ map[ai.depart_id] = ai;
|
|
|
+ } else {
|
|
|
+ for (let j = 0; j < dest.length; j++) {
|
|
|
+ var dj = dest[j];
|
|
|
+ if (dj.depart_id == ai.depart_id) {
|
|
|
+ dj.groupVO = dj.groupVO.concat(ai.groupVO);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (dest.length == 0) {
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ dest.splice(i, 1);
|
|
|
+ this.form.klDiagnoseTypeVO = dest;
|
|
|
+ }
|
|
|
},
|
|
|
//新增组
|
|
|
addGroup(i) {
|
|
@@ -828,7 +835,11 @@ export default {
|
|
|
this.form.klDiagnoseTypeVO[i].groupVO.splice(i + 1, 0, temp);
|
|
|
},
|
|
|
delGroup(i) {
|
|
|
- this.form.klDiagnoseTypeVO.splice(i, 1);
|
|
|
+ if (this.form.klDiagnoseTypeVO.length == 1) {
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ this.form.klDiagnoseTypeVO.splice(i, 1);
|
|
|
+ }
|
|
|
},
|
|
|
//新增基础依据
|
|
|
addRule(row, index, i) {
|
|
@@ -856,10 +867,17 @@ export default {
|
|
|
this.form.klDiagnoseTypeVO[index].groupVO[i].klDiagnoseDetail.push(temp);
|
|
|
},
|
|
|
delRule(row, inx, index, i) {
|
|
|
- this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail.splice(
|
|
|
- i,
|
|
|
- 1
|
|
|
- );
|
|
|
+ if (
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail
|
|
|
+ .length == 1
|
|
|
+ ) {
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail.splice(
|
|
|
+ i,
|
|
|
+ 1
|
|
|
+ );
|
|
|
+ }
|
|
|
},
|
|
|
//诊断依据类型修改
|
|
|
basTypeChange(val, inx) {
|
|
@@ -1051,7 +1069,6 @@ export default {
|
|
|
let str = JSON.stringify(data)
|
|
|
.replace(/byIdDTO/g, 'groupVO')
|
|
|
.replace(/klDiagnoseByIdDTO/g, 'klDiagnoseDetail');
|
|
|
- //console.log(JSON.parse(str))
|
|
|
return JSON.parse(str);
|
|
|
},
|
|
|
searchDiag(val) {
|
|
@@ -1144,6 +1161,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
formData.klDiagnoseTypeVO = dest;
|
|
|
+
|
|
|
this.validateForms(function() {
|
|
|
let params = formData;
|
|
|
_this.saveDiagBase(params);
|
|
@@ -1196,10 +1214,8 @@ export default {
|
|
|
margin-top: 10px;
|
|
|
padding: 20px 20px 50px;
|
|
|
min-height: 600px;
|
|
|
-
|
|
|
-
|
|
|
.el-table .success-row {
|
|
|
- background: #DFF7EF;
|
|
|
+ background: #dff7ef;
|
|
|
}
|
|
|
.content-2-header {
|
|
|
padding: 20px 0;
|
|
@@ -1216,6 +1232,14 @@ export default {
|
|
|
line-height: 17px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ .el-input,
|
|
|
+ .el-input__inner {
|
|
|
+ font-size: 12px;
|
|
|
+ line-height: 32px;
|
|
|
+ height: 32px;
|
|
|
+ margin-right: 15px;
|
|
|
+ }
|
|
|
.is-request {
|
|
|
height: 46px;
|
|
|
}
|
|
@@ -1225,9 +1249,6 @@ export default {
|
|
|
width: 140px !important;
|
|
|
}
|
|
|
}
|
|
|
- .el-form-item {
|
|
|
- margin-bottom: 10px;
|
|
|
- }
|
|
|
.discDesc {
|
|
|
margin-bottom: 20px;
|
|
|
.el-form-item__error {
|
|
@@ -1239,11 +1260,7 @@ export default {
|
|
|
.el-popper[x-placement^='bottom'] {
|
|
|
width: 100px !important;
|
|
|
}
|
|
|
- .disclButn {
|
|
|
- position: absolute;
|
|
|
- right: calc(50% - 60px);
|
|
|
- bottom: 10px;
|
|
|
- }
|
|
|
+
|
|
|
.el-table .cell.el-tooltip {
|
|
|
position: relative;
|
|
|
}
|
|
@@ -1280,31 +1297,17 @@ export default {
|
|
|
}
|
|
|
.el-form-item__content {
|
|
|
position: inherit !important;
|
|
|
+ display: flex;
|
|
|
+ margin-top: 2px;
|
|
|
}
|
|
|
.last-box-1 {
|
|
|
display: flex;
|
|
|
- .el-form-item__error {
|
|
|
- top: 56px;
|
|
|
- left: 10px;
|
|
|
- white-space: nowrap;
|
|
|
- background: #fff;
|
|
|
- }
|
|
|
- }
|
|
|
- .last-box-s {
|
|
|
- position: absolute;
|
|
|
- .el-form-item__error {
|
|
|
- top: 39px;
|
|
|
- left: 0px;
|
|
|
- white-space: nowrap;
|
|
|
- background: #fff;
|
|
|
+ .el-form-item {
|
|
|
+ .el-form-item__error {
|
|
|
+ left: -60px;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- .el-form-item__error {
|
|
|
- top: 56px;
|
|
|
- left: 10px;
|
|
|
- white-space: nowrap;
|
|
|
- background: #fff;
|
|
|
- }
|
|
|
.box-1 {
|
|
|
display: inline;
|
|
|
/deep/ .el-input,
|
|
@@ -1320,18 +1323,19 @@ export default {
|
|
|
}
|
|
|
.el-form-item {
|
|
|
margin: 0;
|
|
|
- width: 100%;
|
|
|
- overflow: hidden;
|
|
|
+ position: relative;
|
|
|
+ .el-form-item__error {
|
|
|
+ top: 35px;
|
|
|
+ left: 0;
|
|
|
+ white-space: nowrap;
|
|
|
+ background: #fff;
|
|
|
+ }
|
|
|
}
|
|
|
- .el-form-item__content;
|
|
|
}
|
|
|
- .add-new-form {
|
|
|
- .el-input,
|
|
|
+ .inp {
|
|
|
+ width: 600px !important;
|
|
|
.el-input__inner {
|
|
|
- width: 100px;
|
|
|
- font-size: 12px;
|
|
|
- line-height: 32px;
|
|
|
- height: 32px;
|
|
|
+ width: 600px !important;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1360,11 +1364,17 @@ export default {
|
|
|
}
|
|
|
.icon {
|
|
|
padding: 0 3px;
|
|
|
+ cursor: pointer;
|
|
|
}
|
|
|
.star {
|
|
|
color: #ff545b;
|
|
|
}
|
|
|
}
|
|
|
+ .disclButn {
|
|
|
+ position: absolute;
|
|
|
+ right: calc(50% - 60px);
|
|
|
+ bottom: 10px;
|
|
|
+ }
|
|
|
.description .el-form-item__error {
|
|
|
top: auto;
|
|
|
}
|