Browse Source

diagnosis

master
pengjun 2 years ago
parent
commit
51c53ceea8
  1. 67
      src/views/diagnosis/diagnosis.vue
  2. 12
      src/views/diagnosis/diagnosisSug.vue

67
src/views/diagnosis/diagnosis.vue

@ -19,8 +19,6 @@
<!--
<el-checkbox v-model="query.itemTypeFlag">项目类别作为查询条件</el-checkbox>
<el-input placeholder="查询关键字" v-model="query.keyWords" size="small" clearable style="width: 200px" />
-->
<el-select v-model="diagnosis" placeholder="快速查找" size="small"
filterable :filter-method="filterMethod" value-key="id"
@ -57,12 +55,14 @@
|| dropCol[index].prop == 'isSummaryTemplate'" >
{{ scope.row[dropCol[index].prop] == 'Y' ? '是':'否' }}
</div>
<!--
<div v-else-if="dropCol[index].prop == 'itemTypeId'" >
<el-cascader :options="dict.itemTypeTree" v-model="scope.row[dropCol[index].prop]"
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops, }" :show-all-levels="false"
disabled size="small">
</el-cascader>
</div>
-->
<div v-else-if="dropCol[index].prop == 'diagnosisLevelId'" >
{{ dddw(dict.diagnosisLevel, "id", scope.row[dropCol[index].prop], "displayName") }}
</div>
@ -220,7 +220,8 @@ export default {
keyWords:'',
},
diagnosis: {}, //null, //{id:'',displayName:''}
tableData:[], //
tableData:[], //()
diagnosisAll:[], //
quickTableData:[], //
formInit:{},
form:{
@ -246,7 +247,7 @@ export default {
//
dropCol: [
//{ label: "",prop: "sn",minWidth: 40,align:"center"},
{ label: "项目类别",prop: "itemTypeId",minWidth: 120,align:"center"},
// { label: "",prop: "itemTypeId",minWidth: 120,align:"center"},
{ label: "诊断级别",prop: "diagnosisLevelId",minWidth: 60,align:"center"},
{ label: "诊断名称",prop: "displayName",minWidth: 100,align:"center"},
{ label: "建议名称",prop: "suggestionName",minWidth: 100,align:"center"},
@ -268,7 +269,7 @@ export default {
//
mounted() {
this.rowDrop('elTableDiagnosis')
this.btnQuery()
// this.btnQuery()
},
computed: {
@ -296,8 +297,18 @@ export default {
}
});
this.allDiagnosis()
},
//
allDiagnosis(){
postapi('/api/app/diagnosis/getlistinsuggestion',{}).then(res =>{
if(res.code != -1){
this.diagnosisAll = res.data
this.quickTableData = res.data
}
})
},
//
@ -314,19 +325,22 @@ export default {
if(lfind > -1) this.tableData[lfind] = Object.assign(this.tableData[lfind],this.form)
},
btnQuery(){
async btnQuery(){
let body = {}
// if(this.query.itemTypeFlag && this.query.itemTypeId) body.itemTypeId = this.query.itemTypeId
if(this.query.itemTypeFlag && this.query.itemTypeId){
body.itemTypeId = this.query.itemTypeId
}else{
return
}
// if(this.query.keyWords) body.keyWords = this.query.keyWords
postapi('/api/app/diagnosis/getlistinsuggestion',body).then(res =>{
if(res.code != -1){
this.tableData = res.data
this.quickTableData = res.data
this.form = Object.assign({},this.formInit)
}
})
//console.log(this.query)
console.log('btnQuery')
},
//
@ -334,7 +348,7 @@ export default {
//console.log('filterMethod',this.dict.asbItemQuick)
if (keyWords) {
this.quickTableData = [];
this.tableData.forEach(item => {
this.diagnosisAll.forEach(item => {
if (item.displayName.indexOf(keyWords) > - 1
|| item.simpleCode.indexOf(keyWords.toUpperCase()) > - 1
|| item.suggestionName.indexOf(keyWords) > - 1) {
@ -342,7 +356,7 @@ export default {
}
});
} else {
this.quickTableData = deepCopy(tableData);
this.quickTableData = deepCopy(this.diagnosisAll);
}
},
@ -350,7 +364,18 @@ export default {
quickDiagnosis(v) {
// value-key value console.log('quickDiagnosis',v)
let lfind = -1
if (v.id) {
if(!v.itemTypeId) return
this.query.itemTypeId = v.itemTypeId
let body = {
itemTypeId:v.itemTypeId
}
postapi('/api/app/diagnosis/getlistinsuggestion',body).then(res =>{
if(res.code != -1){
this.tableData = res.data
this.form = Object.assign({},this.formInit)
lfind = arrayExistObj(this.tableData, 'id', v.id)
if (lfind > -1) {
this.$refs['elTable'].setCurrentRow(this.tableData[lfind])
@ -358,12 +383,14 @@ export default {
this.scrollToRow(lfind)
}
}
})
//console.log('v,query.diagnosis',v,this.query.diagnosis)
this.$refs['elSelectKeyWords'].focus(); //asbItemId
this.$nextTick(() => {
this.$refs['elSelectKeyWords'].blur(); //total asbItemId
// this.query.keyWords = ''
this.quickTableData = deepCopy(this.tableData)
this.quickTableData = deepCopy(this.diagnosisAll)
this.$refs['elSelectKeyWords'].focus(); //total asbItemId
});
},
@ -408,11 +435,11 @@ export default {
this.form = deepCopy(row)
//
if(typeof row.itemTypeId == 'string'){
this.query.itemTypeId = row.itemTypeId
}else{
this.query.itemTypeId = row.itemTypeId[row.itemTypeId.length - 1]
}
// if(typeof row.itemTypeId == 'string'){
// this.query.itemTypeId = row.itemTypeId
// }else{
// this.query.itemTypeId = row.itemTypeId[row.itemTypeId.length - 1]
// }
},
@ -525,6 +552,7 @@ export default {
this.rowClick(curRow)
})
}
this.allDiagnosis()
},
btnDel(){
@ -546,6 +574,7 @@ export default {
let lfind = arrayExistObj(this.tableData,'id',this.form.id)
if(lfind > -1) this.tableData.splice(lfind,1)
this.form = deepCopy(this.formInit)
this.allDiagnosis()
}
}).catch((err) => {
if (err == "cancel") {
@ -573,7 +602,7 @@ export default {
handler(newVal,oldVal){
// console.log('watch:patientRegisterNo:',newVal,oldVal)
if(newVal != oldVal){
this.triggerScroll();
this.btnQuery();
}
}
},

12
src/views/diagnosis/diagnosisSug.vue

@ -7,7 +7,7 @@
<el-table-column type="index" label="序号" width="40" align="center"/>
<el-table-column prop="suggestionContent" label="建议内容">
<template slot-scope="scope">
<el-input type="textarea" v-model="scope.row.suggestionContent" placeholder="建议内容" style="width: 100%"
<el-input type="textarea" :id="scope.row.id" v-model="scope.row.suggestionContent" placeholder="建议内容" style="width: 100%"
:autosize="{ minRows: 1, maxRows: 100 }">
</el-input>
</template>
@ -106,11 +106,19 @@ export default {
this.$message.warning("请先选择诊断记录!")
return
}
let id = Math.random()
let rd = {
id:Math.random(),
id:id,
suggestionContent:''
}
this.tableData.push(rd)
this.$nextTick(()=>{
let el = document.getElementById(id)
console.log('el',id,el)
el.autofocus = true
el.focus()
})
},
btnSave(){

Loading…
Cancel
Save