|
@@ -9,45 +9,108 @@
|
|
:model="form"
|
|
:model="form"
|
|
label-width="130px"
|
|
label-width="130px"
|
|
ref="groups">
|
|
ref="groups">
|
|
|
|
+ <el-form-item label="搜索概念:">
|
|
|
|
+ <div class="conceptSearch">
|
|
|
|
+ <input v-model="conceptText" type="text" class="searchText">
|
|
|
|
+ <span class="searchName" @click="searchConcept">搜索</span>
|
|
|
|
+ <ul class="conceptList" ref="conceptList">
|
|
|
|
+ <li
|
|
|
|
+ v-for="item in conceptList"
|
|
|
|
+ class="conceptItem ellipsis"
|
|
|
|
+ :title="item.nameAndType"
|
|
|
|
+ @click="selectConcept(item)"
|
|
|
|
+ :key="item.id">
|
|
|
|
+ {{item.nameAndType}}
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
|
|
+ </div>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
|
|
+
|
|
<el-form-item label="选择概念:" prop = "concept">
|
|
<el-form-item label="选择概念:" prop = "concept">
|
|
- <el-select v-model="form.concept" clearable placeholder="请选择" size="small">
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in conceptList"
|
|
|
|
- :key="item.key"
|
|
|
|
- :label="item.name"
|
|
|
|
- :value="item.key">
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+
|
|
|
|
+ <el-input v-model="form.concept" disabled></el-input>
|
|
|
|
+ <!-- <el-select v-model="form.concept" filterable @change="selectConcept" placeholder="请选择" size="small">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item) in conceptList"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.nameAndType"
|
|
|
|
+ :value="item.id">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select> -->
|
|
|
|
+
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="选择类型:" prop="type">
|
|
<el-form-item label="选择类型:" prop="type">
|
|
- <el-select v-model="form.type" clearable placeholder="请选择" size="small">
|
|
|
|
- <el-option
|
|
|
|
- v-for="item in typeList"
|
|
|
|
- :key="item.key"
|
|
|
|
- :label="item.name"
|
|
|
|
- :value="item.key">
|
|
|
|
- </el-option>
|
|
|
|
- </el-select>
|
|
|
|
|
|
+ <el-input disabled v-model="form.conceptType"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="术语名称:" prop="termName">
|
|
|
|
|
|
+
|
|
|
|
+ <!-- <el-form-item label="术语名称:" prop="termName">
|
|
<el-input v-model="form.termName"></el-input>
|
|
<el-input v-model="form.termName"></el-input>
|
|
- </el-form-item>
|
|
|
|
|
|
+ </el-form-item> -->
|
|
<el-form-item label="术语标准名称:" prop="termStandardName">
|
|
<el-form-item label="术语标准名称:" prop="termStandardName">
|
|
- <el-input v-model="form.termStandardName"></el-input>
|
|
|
|
|
|
+ <el-input disabled v-model="form.stdName"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="搜索小类名称:">
|
|
|
|
+ <div class="conceptSearch termMiniClassSearch">
|
|
|
|
+ <input v-model="termMiniClassText" type="text" class="searchText">
|
|
|
|
+ <span class="searchName" @click="searchTermMiniClass">搜索</span>
|
|
|
|
+ <ul class="conceptList" ref="termMiniClassNameList">
|
|
|
|
+ <li
|
|
|
|
+ v-for="item in termMiniClassNameList"
|
|
|
|
+ class="conceptItem ellipsis"
|
|
|
|
+ :title="item.nameAndType"
|
|
|
|
+ @click="selectTermMiniClass(item)"
|
|
|
|
+ :key="item.id">
|
|
|
|
+ {{item.nameAndType}}
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
|
|
+ </div>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="术语小类名称:" prop="termMiniClassName">
|
|
<el-form-item label="术语小类名称:" prop="termMiniClassName">
|
|
- <el-input v-model="form.termMiniClassName"></el-input>
|
|
|
|
|
|
+ <el-input disabled v-model="form.termMiniClassName"></el-input>
|
|
|
|
+ <!-- <el-select v-model="form.termMiniClassName" filterable placeholder="请选择" size="small">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item) in termClassList"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.nameAndType"
|
|
|
|
+ :value="item.name">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select> -->
|
|
|
|
+ </el-form-item>
|
|
|
|
+ <el-form-item label="搜索术语类组:">
|
|
|
|
+ <div class="conceptSearch termClassSearch">
|
|
|
|
+ <input v-model="termClassText" type="text" class="searchText">
|
|
|
|
+ <span class="searchName" @click="searchTermClass">搜索</span>
|
|
|
|
+ <ul class="conceptList" ref="termClassList">
|
|
|
|
+ <li
|
|
|
|
+ v-for="item in termClassList"
|
|
|
|
+ class="conceptItem ellipsis"
|
|
|
|
+ :title="item.nameAndType"
|
|
|
|
+ @click="selectTermClass(item)"
|
|
|
|
+ :key="item.id">
|
|
|
|
+ {{item.nameAndType}}
|
|
|
|
+ </li>
|
|
|
|
+ </ul>
|
|
|
|
+ </div>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="术语类组:" prop="termClass">
|
|
<el-form-item label="术语类组:" prop="termClass">
|
|
- <el-input v-model="form.termClass"></el-input>
|
|
|
|
|
|
+ <el-input disabled v-model="form.termClass"></el-input>
|
|
|
|
+ <!-- <el-select v-model="form.termClass" filterable placeholder="请选择" size="small">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item) in termClassList"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.nameAndType"
|
|
|
|
+ :value="item.name">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select> -->
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="性别:" prop="sex">
|
|
<el-form-item label="性别:" prop="sex">
|
|
<el-select v-model="form.sex" clearable placeholder="请选择" size="small">
|
|
<el-select v-model="form.sex" clearable placeholder="请选择" size="small">
|
|
<el-option
|
|
<el-option
|
|
- v-for="item in typeList"
|
|
|
|
- :key="item.key"
|
|
|
|
- :label="item.name"
|
|
|
|
- :value="item.key">
|
|
|
|
|
|
+ v-for="item in sexList"
|
|
|
|
+ :key="item.sex"
|
|
|
|
+ :label="item.sex"
|
|
|
|
+ :value="item.val">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
@@ -57,43 +120,70 @@
|
|
prop="age"
|
|
prop="age"
|
|
>
|
|
>
|
|
<el-col :span="10">
|
|
<el-col :span="10">
|
|
|
|
+ <el-form-item
|
|
|
|
+ prop="minAge"
|
|
|
|
+ >
|
|
<el-input v-model="form.minAge"
|
|
<el-input v-model="form.minAge"
|
|
maxLength="3"
|
|
maxLength="3"
|
|
|
|
+ type="number"
|
|
|
|
+
|
|
></el-input>
|
|
></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+
|
|
</el-col>
|
|
</el-col>
|
|
<el-col :span="4">~</el-col>
|
|
<el-col :span="4">~</el-col>
|
|
<el-col :span="10">
|
|
<el-col :span="10">
|
|
|
|
+ <el-form-item
|
|
|
|
+ prop="maxAge"
|
|
|
|
+ >
|
|
<el-input
|
|
<el-input
|
|
v-model="form.maxAge"
|
|
v-model="form.maxAge"
|
|
|
|
+ type="number"
|
|
maxLength="3"
|
|
maxLength="3"
|
|
></el-input>
|
|
></el-input>
|
|
|
|
+ </el-form-item>
|
|
</el-col>
|
|
</el-col>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="一级部位:" prop="primarySite">
|
|
<el-form-item label="一级部位:" prop="primarySite">
|
|
- <el-select v-model="form.primarySite" clearable placeholder="请选择" size="small">
|
|
|
|
|
|
+ <el-select v-model="form.primarySite" clearable placeholder="请选择" @change="selectPrimarySite" size="small">
|
|
<el-option
|
|
<el-option
|
|
- v-for="item in typeList"
|
|
|
|
|
|
+ v-for="item in primarySiteList"
|
|
:key="item.key"
|
|
:key="item.key"
|
|
:label="item.name"
|
|
:label="item.name"
|
|
- :value="item.key">
|
|
|
|
|
|
+ :value="item.name">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="二级部位:" prop="twoLevelPosition">
|
|
<el-form-item label="二级部位:" prop="twoLevelPosition">
|
|
<el-select v-model="form.twoLevelPosition" clearable placeholder="请选择" size="small">
|
|
<el-select v-model="form.twoLevelPosition" clearable placeholder="请选择" size="small">
|
|
<el-option
|
|
<el-option
|
|
- v-for="item in typeList"
|
|
|
|
|
|
+ v-for="item in twoLevelPositionList"
|
|
:key="item.key"
|
|
:key="item.key"
|
|
:label="item.name"
|
|
:label="item.name"
|
|
- :value="item.key">
|
|
|
|
|
|
+ :value="item.name">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="显示顺序:" prop="order">
|
|
<el-form-item label="显示顺序:" prop="order">
|
|
- <el-input v-model="form.order"></el-input>
|
|
|
|
|
|
+ <!-- <el-input v-model="form.order"></el-input> -->
|
|
|
|
+ <el-select v-model="form.order" clearable placeholder="请选择" size="small">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item) in orderList"
|
|
|
|
+ :key="item.key"
|
|
|
|
+ :label="item.val"
|
|
|
|
+ :value="item.val">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="科室:" prop="department">
|
|
<el-form-item label="科室:" prop="department">
|
|
- <el-input v-model="form.department"></el-input>
|
|
|
|
|
|
+ <el-select v-model="form.department" filterable placeholder="请选择" size="small">
|
|
|
|
+ <el-option
|
|
|
|
+ v-for="(item) in departmentList"
|
|
|
|
+ :key="item.id"
|
|
|
|
+ :label="item.name"
|
|
|
|
+ :value="item.name">
|
|
|
|
+ </el-option>
|
|
|
|
+ </el-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label="术语编码:" prop="termCode">
|
|
<el-form-item label="术语编码:" prop="termCode">
|
|
<el-input v-model="form.termCode"></el-input>
|
|
<el-input v-model="form.termCode"></el-input>
|
|
@@ -106,6 +196,7 @@
|
|
<el-button
|
|
<el-button
|
|
type="primary"
|
|
type="primary"
|
|
@click="submitForm"
|
|
@click="submitForm"
|
|
|
|
+ class="confirmBtn"
|
|
>确 定</el-button>
|
|
>确 定</el-button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -118,77 +209,135 @@
|
|
import api from '@api/icss.js';
|
|
import api from '@api/icss.js';
|
|
|
|
|
|
export default {
|
|
export default {
|
|
- name: 'AddMedicinePrompt',
|
|
|
|
|
|
+ name: 'AddMedicalInfo',
|
|
components: {
|
|
components: {
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
isEdit:false,
|
|
isEdit:false,
|
|
- conceptList: [
|
|
|
|
- {
|
|
|
|
- name:'概念1',
|
|
|
|
- id:1,
|
|
|
|
- key:1
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name:'概念2',
|
|
|
|
- id:2,
|
|
|
|
- key:2
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name:'概念3',
|
|
|
|
- id:3,
|
|
|
|
- key:3
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- typeList:[
|
|
|
|
- {
|
|
|
|
- name:'类型1',
|
|
|
|
- id:1,
|
|
|
|
- key:1
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name:'类型2',
|
|
|
|
- id:2,
|
|
|
|
- key:2
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name:'类型3',
|
|
|
|
- id:3,
|
|
|
|
- key:3
|
|
|
|
- },
|
|
|
|
|
|
+ conceptText: '',
|
|
|
|
+ conceptList: [], //概念列表(标准书语列表,过滤掉已添加过的)
|
|
|
|
+ termClassText: '',
|
|
|
|
+ termClassList:[], //术语类组列表(未过滤)
|
|
|
|
+ termMiniClassText:'',
|
|
|
|
+ termMiniClassNameList:[], //术语小类名称列表(未过滤)
|
|
|
|
+ sexList: [
|
|
|
|
+ {
|
|
|
|
+ sex:'男',
|
|
|
|
+ val:'1',
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ sex:'女',
|
|
|
|
+ val:'2',
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ sex:'通用',
|
|
|
|
+ val:'3',
|
|
|
|
+ },
|
|
],
|
|
],
|
|
|
|
+ typeList:[],
|
|
|
|
+ primarySiteList: [], //一级部位列表
|
|
|
|
+ twoLevelPositionList: [], //二级部位列表
|
|
|
|
+ departmentList:[
|
|
|
|
+ {
|
|
|
|
+ id: 1,
|
|
|
|
+ name: '全科'
|
|
|
|
+ }
|
|
|
|
+ ], //科室列表
|
|
|
|
+ orderList:[
|
|
|
|
+ {
|
|
|
|
+ key: 0,
|
|
|
|
+ val: 0
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 1,
|
|
|
|
+ val: 1
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 2,
|
|
|
|
+ val: 2
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 3,
|
|
|
|
+ val: 3
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 4,
|
|
|
|
+ val: 4
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 5,
|
|
|
|
+ val: 5
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 6,
|
|
|
|
+ val: 6
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 7,
|
|
|
|
+ val: 7
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 8,
|
|
|
|
+ val: 8
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 9,
|
|
|
|
+ val: 9
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ key: 10,
|
|
|
|
+ val: 10
|
|
|
|
+ }
|
|
|
|
+ ], //显示顺序列表
|
|
|
|
+ concept: '',
|
|
form:{
|
|
form:{
|
|
- concept: '',
|
|
|
|
|
|
+ concept:'', //概念名称
|
|
|
|
+ name: '', //术语名称
|
|
|
|
+ stdName: '', //术语标准名称
|
|
|
|
+ conceptType: '', //概念类型
|
|
|
|
+ termClass: '', //术语类组
|
|
|
|
+ termMiniClassName: '', //术语小类名称
|
|
|
|
+ sex: '', //性别
|
|
|
|
+ minAge: '', //最小年龄
|
|
|
|
+ maxAge: '', //最大年龄
|
|
|
|
+ primarySite: '', //一级部位
|
|
|
|
+ twoLevelPosition: '', //二级部位
|
|
|
|
+ order: '', //显示顺序
|
|
|
|
+ department: '', //科室
|
|
|
|
+ termCode: '', //术语编码
|
|
|
|
+ remark: '' //备注
|
|
},
|
|
},
|
|
rules: {
|
|
rules: {
|
|
- termName: [
|
|
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
- ],
|
|
|
|
termStandardName: [
|
|
termStandardName: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择标准术语', trigger: '' }
|
|
],
|
|
],
|
|
|
|
+
|
|
termMiniClassName: [
|
|
termMiniClassName: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择小类名称', trigger: 'change' }
|
|
],
|
|
],
|
|
termClass: [
|
|
termClass: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择术语类组', trigger: 'change' }
|
|
],
|
|
],
|
|
sex: [
|
|
sex: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
- ],
|
|
|
|
- age: [
|
|
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择性别', trigger: 'change' }
|
|
],
|
|
],
|
|
|
|
+
|
|
primarySite: [
|
|
primarySite: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择一级部位', trigger: 'change' }
|
|
],
|
|
],
|
|
twoLevelPosition: [
|
|
twoLevelPosition: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择二级部位', trigger: 'change' }
|
|
],
|
|
],
|
|
department: [
|
|
department: [
|
|
- { required: true, message: '请选择模板归属', trigger: 'change' }
|
|
|
|
|
|
+ { required: true, message: '请选择科室', trigger: 'change' }
|
|
],
|
|
],
|
|
|
|
+ minAge: [
|
|
|
|
+ { required: true, message: '请输入最小年龄', trigger: 'change' }
|
|
|
|
+ ],
|
|
|
|
+ maxAge: [
|
|
|
|
+ { required: true, message: '请输入最大年龄', trigger: 'change' }
|
|
|
|
+ ]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -199,15 +348,129 @@
|
|
const {isEdit,data} = this.$route.params;
|
|
const {isEdit,data} = this.$route.params;
|
|
if(isEdit){
|
|
if(isEdit){
|
|
this.isEdit = isEdit;
|
|
this.isEdit = isEdit;
|
|
|
|
+ this.form.concept = data.conceptName
|
|
|
|
+ this.form.conceptType = data.conceptType
|
|
|
|
+ this.form.name = data.name
|
|
|
|
+ this.form.stdName = data.stdName
|
|
|
|
+ this.form.termClass = data.cateName
|
|
|
|
+ this.form.termMiniClassName = data.grp
|
|
|
|
+ this.form.sex = data.gender
|
|
|
|
+ this.form.minAge = data.minAge
|
|
|
|
+ this.form.maxAge = data.maxAge
|
|
|
|
+ this.form.primarySite = data.bodypart
|
|
|
|
+ this.form.twoLevelPosition = data.subBodypart
|
|
|
|
+ this.form.order = data.displayOrder
|
|
|
|
+ this.form.department = data.dept
|
|
|
|
+ this.form.termCode = data.code
|
|
|
|
+ this.form.remark = data.note
|
|
|
|
+
|
|
|
|
+ } else {
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+ this.getPrimarySite()
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
back() { this.$router.go(-1) },
|
|
back() { this.$router.go(-1) },
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+ searchConcept() {
|
|
|
|
+ let param1 = {
|
|
|
|
+ "name": this.conceptText,
|
|
|
|
+ "isMedical": 1
|
|
|
|
+ }
|
|
|
|
+ this.getAllConcept(1, param1)
|
|
|
|
+ this.$refs['conceptList'].style.display = 'block'
|
|
|
|
+ },
|
|
|
|
+ searchTermClass() {
|
|
|
|
+ let param1 = {
|
|
|
|
+ "name": this.termClassText,
|
|
|
|
+ }
|
|
|
|
+ this.getAllConcept(2, param1)
|
|
|
|
+ this.$refs['termClassList'].style.display = 'block'
|
|
|
|
+ },
|
|
|
|
+ searchTermMiniClass() {
|
|
|
|
+ let param1 = {
|
|
|
|
+ "name": this.termMiniClassText,
|
|
|
|
+ }
|
|
|
|
+ this.getAllConcept(3, param1)
|
|
|
|
+ this.$refs['termMiniClassNameList'].style.display = 'block'
|
|
|
|
+ },
|
|
|
|
+ getAllConcept(type, param1) { //获取所有概念
|
|
|
|
+ let param = {
|
|
|
|
+ "isConcept": 1,
|
|
|
|
+ }
|
|
|
|
+ param = Object.assign({}, param, param1)
|
|
|
|
+ api.getAllConcept(param).then((res) =>{
|
|
|
|
+ if(res.data.code == '0') {
|
|
|
|
+ if( type === 1 ) {
|
|
|
|
+ this.conceptList = res.data.data
|
|
|
|
+ } else if (type === 2) {
|
|
|
|
+ this.termClassList = res.data.data
|
|
|
|
+ } else if (type ===3) {
|
|
|
|
+ this.termMiniClassNameList = res.data.data
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ } else {
|
|
|
|
+ this.warning(res.data.msg)
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ selectConcept(item) {
|
|
|
|
+ // const conceptItem = this.form.concept
|
|
|
|
+ const selectedConcept = item
|
|
|
|
+ this.form.concept = selectedConcept.name
|
|
|
|
+ this.form.name = selectedConcept.name
|
|
|
|
+ this.form.stdName = selectedConcept.name
|
|
|
|
+ this.form.conceptType = selectedConcept.type
|
|
|
|
+ this.$refs['conceptList'].style.display = 'none'
|
|
|
|
+ this.conceptText = ''
|
|
|
|
+ },
|
|
|
|
+ selectTermClass(item) {
|
|
|
|
+ this.form.termClass = item.name
|
|
|
|
+ this.$refs['termClassList'].style.display = 'none'
|
|
|
|
+ this.termClassText = ''
|
|
|
|
+ },
|
|
|
|
+ selectTermMiniClass(item) {
|
|
|
|
+ this.form.termMiniClassName = item.name
|
|
|
|
+ this.$refs['termMiniClassNameList'].style.display = 'none'
|
|
|
|
+ this.termMiniClassText = ''
|
|
|
|
+ },
|
|
|
|
|
|
|
|
+ getPrimarySite() { //获取一级部位
|
|
|
|
+ const param = {
|
|
|
|
+ "level": 1
|
|
|
|
+ }
|
|
|
|
+ this.getAllBodypart(param, 1)
|
|
|
|
+ },
|
|
|
|
+ getTwoLevelPosition() {
|
|
|
|
+ const param = {
|
|
|
|
+ "bodypart": this.form.primarySite,
|
|
|
|
+ "level": 2
|
|
|
|
+ }
|
|
|
|
+ this.getAllBodypart(param, 2)
|
|
|
|
+ },
|
|
|
|
+ getAllBodypart(param, type) { //获取部位
|
|
|
|
+ api.getAllBodypart(param).then((res) =>{
|
|
|
|
+ if(res.data.code == '0') {
|
|
|
|
+ if (type === 1) {
|
|
|
|
+ this.primarySiteList = res.data.data
|
|
|
|
+ } else if(type === 2) {
|
|
|
|
+ this.twoLevelPositionList = res.data.data
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ getDeptInfo() {
|
|
|
|
+ api.getDeptInfo({}).then((res) => {
|
|
|
|
+ if(res.data.code == '0') {
|
|
|
|
+ this.departmentList = res.data.data.records
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ },
|
|
|
|
+ selectPrimarySite() {
|
|
|
|
+ this.form.twoLevelPosition = '';
|
|
|
|
+ this.getTwoLevelPosition();
|
|
|
|
+ },
|
|
submitForm() {
|
|
submitForm() {
|
|
//验证外层表单
|
|
//验证外层表单
|
|
let goOn=true,it=null;
|
|
let goOn=true,it=null;
|
|
@@ -217,33 +480,37 @@
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- //验证段落表单
|
|
|
|
- for(let i=0;i<this.$refs.subForm.length;i++){
|
|
|
|
- it=this.$refs.subForm[i];
|
|
|
|
- it.$refs.form.validate((valid) =>{
|
|
|
|
- if(!valid){
|
|
|
|
- goOn = false;
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- };
|
|
|
|
|
|
|
|
if(!goOn){
|
|
if(!goOn){
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
//通过必填验证,提交保存
|
|
//通过必填验证,提交保存
|
|
const param = {
|
|
const param = {
|
|
- name:this.form.selectedTerm.libId,
|
|
|
|
- detailVOList:Object.assign(this.form.prags)
|
|
|
|
- };
|
|
|
|
|
|
+ "bodypart": this.form.primarySite,
|
|
|
|
+ "cateName": this.form.termClass,
|
|
|
|
+ "code": this.form.termCode,
|
|
|
|
+ "conceptName": this.form.concept,
|
|
|
|
+ "conceptType": this.form.conceptType,
|
|
|
|
+ "dept": this.form.department,
|
|
|
|
+ "displayOrder": this.form.order,
|
|
|
|
+ "gender": this.form.sex,
|
|
|
|
+ "grp": this.form.termMiniClassName,
|
|
|
|
+ "maxAge":this.form.maxAge,
|
|
|
|
+ "minAge": this.form.minAge,
|
|
|
|
+ "name": this.form.name,
|
|
|
|
+ "note": this.form.remark,
|
|
|
|
+ "stdName": this.form.stdName,
|
|
|
|
+ "subBodypart": this.form.twoLevelPosition,
|
|
|
|
+ }
|
|
console.log(param);
|
|
console.log(param);
|
|
this.showSaveDialog(param);
|
|
this.showSaveDialog(param);
|
|
},
|
|
},
|
|
showSaveDialog(param) {
|
|
showSaveDialog(param) {
|
|
- this.showConfirmDialog('是否保存该静态知识?', () => {
|
|
|
|
- api.saveTermPrompts(param).then((res) => {
|
|
|
|
|
|
+ this.showConfirmDialog('是否保存该医学术语属性?', () => {
|
|
|
|
+ api.addMedicalInfo(param).then((res) => {
|
|
if (res.data.code === '0') {
|
|
if (res.data.code === '0') {
|
|
this.warning(res.data.msg || '保存成功', 'success');
|
|
this.warning(res.data.msg || '保存成功', 'success');
|
|
- this.$router.push("/admin/LT-YXSYKWH-YXSYJTZSWH");
|
|
|
|
|
|
+ this.$router.push("/admin/LT-YXSYKWH-SYYXSXWH");
|
|
} else {
|
|
} else {
|
|
this.warning(res.data.msg)
|
|
this.warning(res.data.msg)
|
|
}
|
|
}
|
|
@@ -273,7 +540,77 @@
|
|
<style lang="less">
|
|
<style lang="less">
|
|
@import "../../less/common.less";
|
|
@import "../../less/common.less";
|
|
.MedicalInfoWrapper {
|
|
.MedicalInfoWrapper {
|
|
-
|
|
|
|
|
|
+ .conceptSearch {
|
|
|
|
+ height: 30px;
|
|
|
|
+ margin: 4px 0;
|
|
|
|
+ position: relative;
|
|
|
|
+ }
|
|
|
|
+ .searchText {
|
|
|
|
+ padding: 0 10px;
|
|
|
|
+ width: 180px;
|
|
|
|
+ height: 30px;
|
|
|
|
+ line-height: 30px;
|
|
|
|
+ border: 1px solid #dcdfe6;
|
|
|
|
+ float: left;
|
|
|
|
+ border-radius: 4px 0 0 4px;
|
|
|
|
+ }
|
|
|
|
+ .searchName {
|
|
|
|
+ display: block;
|
|
|
|
+ width: 40px;
|
|
|
|
+ height: 30px;
|
|
|
|
+ border: 1px solid #dcdfe6;
|
|
|
|
+ border-left: none;
|
|
|
|
+ border-radius: 0 4px 4px 0;
|
|
|
|
+ font-size: 14px;
|
|
|
|
+ line-height: 30px;
|
|
|
|
+ text-align: center;
|
|
|
|
+ float: left;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ .conceptList {
|
|
|
|
+ position: absolute;
|
|
|
|
+ border: 1px solid #dcdfe6;
|
|
|
|
+ top: 30px;
|
|
|
|
+ width: 200px;
|
|
|
|
+ max-height: 160px;
|
|
|
|
+ z-index: 10;
|
|
|
|
+ overflow: auto;
|
|
|
|
+ background: #fff
|
|
|
|
+ }
|
|
|
|
+ .conceptItem {
|
|
|
|
+ padding: 0 10px;
|
|
|
|
+ height: 30px;;
|
|
|
|
+ line-height: 30px;
|
|
|
|
+ overflow: hidden;
|
|
|
|
+ }
|
|
|
|
+ .conceptItem:hover {
|
|
|
|
+ border: 1px solid #22ccc8;
|
|
|
|
+ }
|
|
|
|
+ .termMiniClassSearch {
|
|
|
|
+ z-index: 8
|
|
|
|
+ }
|
|
|
|
+ .termClassSearch {
|
|
|
|
+ z-index: 6
|
|
|
|
+ }
|
|
|
|
+ .info-container {
|
|
|
|
+ .fix-inp {
|
|
|
|
+
|
|
|
|
+ .el-form-item__error {
|
|
|
|
+ width: 200px;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ .groupTitle {
|
|
|
|
+ width: calc(100% - 50px);
|
|
|
|
+ height: 40px;
|
|
|
|
+ background: #fff;
|
|
|
|
+ padding: 0 20px 0 30px;
|
|
|
|
+ margin-bottom: 20px;
|
|
|
|
+ line-height: 40px;
|
|
|
|
+ position: relative;
|
|
|
|
+ z-index: 5;
|
|
|
|
+
|
|
|
|
+ }
|
|
.fix-inp{
|
|
.fix-inp{
|
|
width: 330px;
|
|
width: 330px;
|
|
}
|
|
}
|
|
@@ -287,6 +624,7 @@
|
|
.fix-inp .el-col-8{
|
|
.fix-inp .el-col-8{
|
|
text-align: center;
|
|
text-align: center;
|
|
}
|
|
}
|
|
|
|
+
|
|
.el-textarea__inner {
|
|
.el-textarea__inner {
|
|
width: 400px;
|
|
width: 400px;
|
|
}
|
|
}
|
|
@@ -310,6 +648,24 @@
|
|
margin-bottom: 25px;
|
|
margin-bottom: 25px;
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+ .btn {
|
|
|
|
+ position: relative;
|
|
|
|
+ height: 50px;
|
|
|
|
+ }
|
|
|
|
+ .confirmBtn {
|
|
|
|
+ position: absolute;
|
|
|
|
+ right: 40px;
|
|
|
|
+ }
|
|
|
|
+ // 处理input type = number的上下箭头
|
|
|
|
+ input::-webkit-outer-spin-button,
|
|
|
|
+ input::-webkit-inner-spin-button {
|
|
|
|
+ -webkit-appearance: none;
|
|
|
|
+ text-align: center;
|
|
|
|
+ }
|
|
|
|
+ input[type="number"]{
|
|
|
|
+ -moz-appearance: textfield;
|
|
|
|
+ text-align: center;
|
|
|
|
+ }
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|