|
@@ -172,7 +172,7 @@
|
|
|
height="18"
|
|
|
width="18"
|
|
|
class="icon"
|
|
|
- @click="addRule(scope.row,scope.$index,index,i)"
|
|
|
+ @click="addRule(scope.row,scope.$index,index)"
|
|
|
/>
|
|
|
<img
|
|
|
src="../../images/icon-delete.png"
|
|
@@ -251,7 +251,7 @@
|
|
|
<div
|
|
|
v-if="v.title == '医学标准术语'"
|
|
|
class="box-2"
|
|
|
- :class="items.basType===3 || items.basType===4|| items.basType===5 || items.basType===6? 'tmall' : 'taobao'"
|
|
|
+ :class="items.basType===3 || items.basType===4? 'tmall' : 'taobao'"
|
|
|
>
|
|
|
<el-form-item
|
|
|
v-if="items.basType==1 || items.basType==2 || items.basType==''"
|
|
@@ -263,11 +263,14 @@
|
|
|
:rules="rules.subConceptId"
|
|
|
>
|
|
|
<el-select
|
|
|
- clearable
|
|
|
- remote
|
|
|
+ class="searchselect"
|
|
|
+ v-model.trim="items.basConceptId"
|
|
|
+ multiple
|
|
|
filterable
|
|
|
+ remote
|
|
|
+ reserve-keyword
|
|
|
+ placeholder="请输入关键词"
|
|
|
:remote-method="(val)=>searchConcept(val,scope.$index,index,i)"
|
|
|
- v-model.trim="items.basConceptId"
|
|
|
@change="(val)=>conceptChange(val,scope.$index,index,i)"
|
|
|
>
|
|
|
<el-option
|
|
@@ -429,7 +432,7 @@
|
|
|
'.groupVO.' +
|
|
|
index +
|
|
|
'.klDiagnoseDetail.'+i+'.eqValue'"
|
|
|
- v-if="items.basType===4 || items.basType===3||items.basType===6 || items.basType===5"
|
|
|
+ v-if="items.basType===4 || items.basType===3"
|
|
|
maxlength="200"
|
|
|
label="正则表达式:"
|
|
|
class="discDesc"
|
|
@@ -495,7 +498,7 @@ export default {
|
|
|
{ title: '基础依据名称', width: 160, istar: true },
|
|
|
{ title: '基础依据类型', width: 130, istar: true },
|
|
|
{ title: '基础依据术语类型', width: 160, istar: true },
|
|
|
- { title: '医学标准术语', width: 130, istar: true },
|
|
|
+ { title: '医学标准术语', width: 180, istar: true },
|
|
|
{ title: '依据具体内容', width: 850 }
|
|
|
],
|
|
|
dicts: {},
|
|
@@ -527,7 +530,7 @@ export default {
|
|
|
onlyNumType: false,
|
|
|
onlyTxtType: false,
|
|
|
basTypeName: '',
|
|
|
- basConceptId: '',
|
|
|
+ basConceptId: [],
|
|
|
basDescription: '',
|
|
|
basLename: '',
|
|
|
basLibName: '',
|
|
@@ -599,45 +602,96 @@ export default {
|
|
|
item => item.ruleType === this.form.klDiagnoseTypeVO[0].conditionType
|
|
|
);
|
|
|
this.baseTermTypeList = this.baseTypes[index2].subMenuList;
|
|
|
- const klDiagnoseTypeVO =this.form.klDiagnoseTypeVO;
|
|
|
- let groupVOi,klDiagnoseDetailj;
|
|
|
- for (let i = 0; i < klDiagnoseTypeVO.length; i++) {
|
|
|
- groupVOi = klDiagnoseTypeVO[i].groupVO;
|
|
|
- for (let j = 0; j < groupVOi.length; j++) {
|
|
|
- klDiagnoseDetailj = groupVOi[j].klDiagnoseDetail;
|
|
|
- for (let k = 0;k <groupVOi[j].klDiagnoseDetail.length;k++) {
|
|
|
+ let arr = [];
|
|
|
+ for (let i = 0; i < this.form.klDiagnoseTypeVO.length; i++) {
|
|
|
+ for (let j = 0; j < this.form.klDiagnoseTypeVO[i].groupVO.length; j++) {
|
|
|
+ for (
|
|
|
+ let k = 0;
|
|
|
+ k <
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail.length;
|
|
|
+ k++
|
|
|
+ ) {
|
|
|
var index2 = this.baseTermTypeList.findIndex(
|
|
|
- item =>item.type ===klDiagnoseDetailj[k].basType
|
|
|
+ item =>
|
|
|
+ item.type ===
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .basType
|
|
|
);
|
|
|
- klDiagnoseDetailj[k].basLibTypeList = this.baseTermTypeList[index2].subMenuList;
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].basLibTypeList = this.baseTermTypeList[index2].subMenuList;
|
|
|
|
|
|
- klDiagnoseDetailj[k].conceptList = [
|
|
|
- {
|
|
|
- conceptName: klDiagnoseDetailj[k].basLibName,
|
|
|
- conceptId: klDiagnoseDetailj[k].basConceptId
|
|
|
- }
|
|
|
- ];
|
|
|
- if (klDiagnoseDetailj[k].maxOperator || klDiagnoseDetailj[k].minOperator) {
|
|
|
- klDiagnoseDetailj[k].dataType = '1';
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].conceptList = this.formatData2(
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .libNameList
|
|
|
+ );
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].libNameList.forEach(item => {
|
|
|
+ arr.push(item.basConceptId);
|
|
|
+ });
|
|
|
+ this.$set(
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ],
|
|
|
+ 'basConceptId',
|
|
|
+ arr
|
|
|
+ );
|
|
|
+ if (
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .maxOperator ||
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .minOperator
|
|
|
+ ) {
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].dataType = '1';
|
|
|
} else if (
|
|
|
- klDiagnoseDetailj[k].eqValue) {
|
|
|
- klDiagnoseDetailj[k].dataType = '2';
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .eqValue
|
|
|
+ ) {
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].dataType = '2';
|
|
|
}
|
|
|
- if (klDiagnoseDetailj[k].basType == 3 || klDiagnoseDetailj[k].basType == 4||klDiagnoseDetailj[k].basType == 5 || klDiagnoseDetailj[k].basType == 6) {
|
|
|
- klDiagnoseDetailj[k].basTypeName = klDiagnoseDetailj[k].basLibTypeList[0].name;
|
|
|
- klDiagnoseDetailj[k].basNameType = true;
|
|
|
+ if (
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .basType == 3 ||
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .basType == 4
|
|
|
+ ) {
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].basTypeName = this.form.klDiagnoseTypeVO[i].groupVO[
|
|
|
+ j
|
|
|
+ ].klDiagnoseDetail[k].basLibTypeList[0].name;
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].basNameType = true;
|
|
|
} else {
|
|
|
- klDiagnoseDetailj[k].basTypeName = '';
|
|
|
- klDiagnoseDetailj[k].basNameType = false;
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].basTypeName = '';
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].basNameType = false;
|
|
|
}
|
|
|
const onlyNum = this.dicts['onlyNum'] || '&';
|
|
|
const onlyTxt = this.dicts['onlyTxt'] || '&';
|
|
|
const codes = onlyNum + ',';
|
|
|
const code = onlyTxt + ',';
|
|
|
- let type = klDiagnoseDetailj[k].basLibType;
|
|
|
- let a = klDiagnoseDetailj[k].basLibType;
|
|
|
- klDiagnoseDetailj[k].onlyNumType = type && codes.indexOf(a + ',') > -1;
|
|
|
- klDiagnoseDetailj[k].onlyTxtType = type && code.indexOf(a + ',') > -1;
|
|
|
+ let type = this.form.klDiagnoseTypeVO[i].groupVO[j]
|
|
|
+ .klDiagnoseDetail[k].basLibType;
|
|
|
+ let a = this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[k]
|
|
|
+ .basLibType;
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].onlyNumType = type && codes.indexOf(a + ',') > -1;
|
|
|
+ this.form.klDiagnoseTypeVO[i].groupVO[j].klDiagnoseDetail[
|
|
|
+ k
|
|
|
+ ].onlyTxtType = type && code.indexOf(a + ',') > -1;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -765,8 +819,6 @@ export default {
|
|
|
newArr = arr;
|
|
|
}
|
|
|
});
|
|
|
- // console.log(newArr)
|
|
|
- // this.$set(this, 'form.klDiagnoseTypeVO', newArr);
|
|
|
this.getSpanArr(newArr);
|
|
|
},
|
|
|
getSpanArr(data) {
|
|
@@ -798,7 +850,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
getInitData() {
|
|
|
- this.i++
|
|
|
+ this.i++;
|
|
|
return {
|
|
|
conditionType: '',
|
|
|
depart_id: this.i,
|
|
@@ -814,7 +866,7 @@ export default {
|
|
|
onlyNumType: false,
|
|
|
onlyTxtType: false,
|
|
|
basTypeName: '',
|
|
|
- basConceptId: '',
|
|
|
+ basConceptId: [],
|
|
|
basDescription: '',
|
|
|
basLename: '',
|
|
|
basLibName: '',
|
|
@@ -851,7 +903,7 @@ export default {
|
|
|
},
|
|
|
//复制依据
|
|
|
copyDiag(id) {
|
|
|
- this.i++
|
|
|
+ this.i++;
|
|
|
const formData = JSON.parse(JSON.stringify(this.form));
|
|
|
let i = -1;
|
|
|
let arr = [];
|
|
@@ -865,7 +917,6 @@ export default {
|
|
|
item.depart_id = this.i;
|
|
|
this.form.klDiagnoseTypeVO.splice(i + index + 1, 0, item);
|
|
|
});
|
|
|
- // console.log(this.form.klDiagnoseTypeVO);
|
|
|
},
|
|
|
//删除依据
|
|
|
delDiag(id, inx) {
|
|
@@ -891,7 +942,7 @@ export default {
|
|
|
onlyNumType: false,
|
|
|
onlyTxtType: false,
|
|
|
basTypeName: '',
|
|
|
- basConceptId: '',
|
|
|
+ basConceptId: [],
|
|
|
basDescription: '',
|
|
|
basLename: '',
|
|
|
basLibName: '',
|
|
@@ -915,12 +966,12 @@ export default {
|
|
|
this.form.klDiagnoseTypeVO.splice(i, 1);
|
|
|
},
|
|
|
//新增基础依据
|
|
|
- addRule(row, index, inx,i) {
|
|
|
+ addRule(row, index, i) {
|
|
|
let temp = {
|
|
|
dataType: '',
|
|
|
basNameType: false,
|
|
|
basTypeName: '',
|
|
|
- basConceptId: '',
|
|
|
+ basConceptId: [],
|
|
|
basDescription: '',
|
|
|
basLename: '',
|
|
|
basLibName: '',
|
|
@@ -935,21 +986,21 @@ export default {
|
|
|
minOperator: '',
|
|
|
minUnit: '',
|
|
|
minVal: '',
|
|
|
+ dataType: ''
|
|
|
};
|
|
|
- this.form.klDiagnoseTypeVO[index].groupVO[inx].klDiagnoseDetail.splice(i + 1, 0, temp);
|
|
|
- this.form.klDiagnoseTypeVO = JSON.parse(JSON.stringify(this.form.klDiagnoseTypeVO)) //8525更新对象触发滚动条更新
|
|
|
+ this.form.klDiagnoseTypeVO[index].groupVO[i].klDiagnoseDetail.push(temp);
|
|
|
},
|
|
|
delRule(row, inx, index, i) {
|
|
|
- const klDiagnoseDetail = this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail;
|
|
|
- if (klDiagnoseDetail.length === 1) {
|
|
|
+ if (
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail
|
|
|
+ .length == 1
|
|
|
+ ) {
|
|
|
return;
|
|
|
} else {
|
|
|
- klDiagnoseDetail.splice(i,1);
|
|
|
- const numArr = this.numArr[inx].num[0];
|
|
|
- const fitNo=this.form.klDiagnoseTypeVO[inx].groupVO[0].fitNo;
|
|
|
- if(numArr[numArr.length-1].name<fitNo){
|
|
|
- this.form.klDiagnoseTypeVO[inx].groupVO[0].fitNo="";
|
|
|
- }
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail.splice(
|
|
|
+ i,
|
|
|
+ 1
|
|
|
+ );
|
|
|
}
|
|
|
},
|
|
|
//诊断依据类型修改
|
|
@@ -988,7 +1039,7 @@ export default {
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[
|
|
|
index
|
|
|
].baseTermTypeList = this.baseTermTypeList;
|
|
|
- if (val == 3 || val == 4||val == 5 || val == 6) {
|
|
|
+ if (val == 3 || val == 4) {
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
i
|
|
|
].basTypeName = this.form.klDiagnoseTypeVO[inx].groupVO[
|
|
@@ -1027,7 +1078,7 @@ export default {
|
|
|
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
i
|
|
|
- ].basConceptId = '';
|
|
|
+ ].basConceptId = [];
|
|
|
if ((this.numTypes + ',').indexOf(val + ',') > -1) {
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
i
|
|
@@ -1056,22 +1107,31 @@ export default {
|
|
|
},
|
|
|
//医学标准术语
|
|
|
conceptChange(val, inx, index, i) {
|
|
|
- this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
- i
|
|
|
- ].basConceptId = val;
|
|
|
- if (val) {
|
|
|
- this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
- i
|
|
|
- ].basLibName = this.form.klDiagnoseTypeVO[inx].groupVO[
|
|
|
- index
|
|
|
- ].klDiagnoseDetail[i].conceptList.find(
|
|
|
- it => it.conceptId === val
|
|
|
- ).conceptName;
|
|
|
- } else {
|
|
|
- this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
- i
|
|
|
- ].basLibName = '';
|
|
|
- }
|
|
|
+ // this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
+ // i
|
|
|
+ // ].basConceptId = val;
|
|
|
+ this.$set(
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[i],
|
|
|
+ 'basConceptId',
|
|
|
+ val
|
|
|
+ );
|
|
|
+ console.log(
|
|
|
+ this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[i]
|
|
|
+ .basConceptId
|
|
|
+ );
|
|
|
+ // if (val) {
|
|
|
+ // this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
+ // i
|
|
|
+ // ].basLibName = this.form.klDiagnoseTypeVO[inx].groupVO[
|
|
|
+ // index
|
|
|
+ // ].klDiagnoseDetail[i].conceptList.find(
|
|
|
+ // it => it.conceptId === val
|
|
|
+ // ).conceptName;
|
|
|
+ // } else {
|
|
|
+ // this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
+ // i
|
|
|
+ // ].basLibName = '';
|
|
|
+ // }
|
|
|
},
|
|
|
searchConcept(val, inx, index, i) {
|
|
|
const formData = JSON.parse(JSON.stringify(this.form));
|
|
@@ -1116,7 +1176,7 @@ export default {
|
|
|
clearConcept(val, inx, index, i) {
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
i
|
|
|
- ].basConceptId = '';
|
|
|
+ ].basConceptId = [];
|
|
|
this.form.klDiagnoseTypeVO[inx].groupVO[index].klDiagnoseDetail[
|
|
|
i
|
|
|
].basLibName = '';
|
|
@@ -1190,6 +1250,14 @@ export default {
|
|
|
//console.log(JSON.parse(str))
|
|
|
return JSON.parse(str);
|
|
|
},
|
|
|
+ formatData2(data) {
|
|
|
+ //转换字段名
|
|
|
+ let str = JSON.stringify(data)
|
|
|
+ .replace(/basLibName/g, 'conceptName')
|
|
|
+ .replace(/basConceptId/g, 'conceptId');
|
|
|
+ //console.log(JSON.parse(str))
|
|
|
+ return JSON.parse(str);
|
|
|
+ },
|
|
|
searchDiag(val) {
|
|
|
const param = {
|
|
|
diseaseName: val
|
|
@@ -1349,7 +1417,6 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
confirm() {
|
|
|
-
|
|
|
const formData = JSON.parse(JSON.stringify(this.form));
|
|
|
const _this = this;
|
|
|
for (let i = 0; i < formData.klDiagnoseTypeVO.length; i++) {
|
|
@@ -1408,6 +1475,12 @@ export default {
|
|
|
</script>
|
|
|
<style lang="less" scoped>
|
|
|
@import '../../less/admin.less';
|
|
|
+
|
|
|
+/deep/ .searchselect {
|
|
|
+ .el-input {
|
|
|
+ height: 100% !important;
|
|
|
+ }
|
|
|
+}
|
|
|
.contents {
|
|
|
height: 100%;
|
|
|
.content {
|
|
@@ -1433,19 +1506,14 @@ export default {
|
|
|
height: calc(100vh - 370px);
|
|
|
}
|
|
|
/deep/ .el-input {
|
|
|
- height: 24px;
|
|
|
- line-height: 24px;
|
|
|
+ height: 30px;
|
|
|
+ line-height: 30px;
|
|
|
.el-input__inner {
|
|
|
- height: 24px;
|
|
|
- line-height: 24px;
|
|
|
+ height: 30px;
|
|
|
+ line-height: 30px;
|
|
|
font-size: 12px;
|
|
|
- border-radius: 2px;
|
|
|
- border-color: #c9c9c9;
|
|
|
}
|
|
|
}
|
|
|
- /deep/ .el-select .el-input .el-icon-arrow-up{
|
|
|
- line-height: 25px;
|
|
|
- }
|
|
|
.inps {
|
|
|
width: 500px !important;
|
|
|
font-size: 14px;
|
|
@@ -1463,9 +1531,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- /deep/.is-error .el-form-item__error{
|
|
|
- top:30px;
|
|
|
- }
|
|
|
.content-2 {
|
|
|
margin-top: 10px;
|
|
|
padding: 20px 20px;
|
|
@@ -1489,7 +1554,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
.el-form-item {
|
|
|
- margin-top: 8px;
|
|
|
+ margin-bottom: 10px;
|
|
|
margin-right: 0;
|
|
|
}
|
|
|
.discDesc {
|
|
@@ -1603,7 +1668,6 @@ export default {
|
|
|
.icon {
|
|
|
padding: 0 3px;
|
|
|
cursor: pointer;
|
|
|
- vertical-align: middle;
|
|
|
}
|
|
|
.star {
|
|
|
color: #ff545b;
|
|
@@ -1619,7 +1683,6 @@ export default {
|
|
|
}
|
|
|
.name {
|
|
|
font-size: 14px;
|
|
|
-
|
|
|
font-weight: 400;
|
|
|
color: #333333;
|
|
|
line-height: 20px;
|