pengjun 2 years ago
parent
commit
6211ba8603
  1. 10
      src/components/occDisease/OccDisease.vue
  2. 8
      src/components/occDisease/OccDiseaseConclusion.vue
  3. 4
      src/components/occDisease/OccDiseasePoison.vue
  4. 10
      src/components/sumDoctorCheck/ButtonList.vue
  5. 140
      src/components/sumDoctorCheck/SumSug.vue

10
src/components/occDisease/OccDisease.vue

@ -30,8 +30,8 @@
<div style="display: flex;justify-content: space-between;">
<div></div>
<div>
<el-button @click="btnTest">测试</el-button>
<el-button class="deleteButton" @click="btnDel">删除</el-button>
<el-button v-if="false" @click="btnTest">测试</el-button>
<el-button class="deleteButton" @click="btnDel" :disabled="dataTransOpts.tableS.patient_register.completeFlag == '3'">删除</el-button>
<el-button class="commonbutton" @click="btnOk">确定</el-button>
<el-button class="commonbutton" @click="btnClose">关闭</el-button>
</div>
@ -131,9 +131,9 @@ export default {
this.dataTransOpts.tableM.patient_past_medical_history = deepCopy(res.data['patientPastMedicalHistoryDtos'])
this.dataTransOpts.tableM.patient_occupational_medical_history = deepCopy(res.data['patientOccupationalMedicalHistoryDtos'])
this.dataTransOpts.tableM.patient_poison = deepCopy(res.data['patientPoisonDtos'])
this.dataTransOpts.tableM.patient_poison.forEach(e => {
e.poisonName = dddw(this.dict.poisonList,'id',e.poisonId,'displayName')
});
// this.dataTransOpts.tableM.patient_poison.forEach(e => {
// e.poisonName = dddw(this.dict.poisonList,'id',e.poisonId,'displayName')
// });
this.dataTransOpts.tableM.patient_occupational_history = deepCopy(res.data['patientOccupationalHistoryDtos'])
if (Array.isArray(res.data['patientSymptomDtos']) && res.data['patientSymptomDtos'].length > 0) {
this.dataTransOpts.tableM.patient_symptom = deepCopy(res.data['patientSymptomDtos'])

8
src/components/occDisease/OccDiseaseConclusion.vue

@ -10,9 +10,9 @@
</tr>
<tr>
<td><el-input type="textarea" v-model="dataTransOpts.tableS.patient_occupational_disease.occupationalAbnormal"
size="small" :autosize="{ minRows: 8, maxRows: 8 }"></el-input></td>
size="small" :autosize="{ minRows: 8, maxRows: 8 }" :disabled="!checkPagePriv(pagePriv.privs, '职业健康检查结论')"></el-input></td>
<td><el-input type="textarea" v-model="dataTransOpts.tableS.patient_occupational_disease.occupationalAbSuggestion"
size="small" :autosize="{ minRows: 8, maxRows: 8 }"></el-input></td>
size="small" :autosize="{ minRows: 8, maxRows: 8 }" :disabled="!checkPagePriv(pagePriv.privs, '职业健康检查结论')"></el-input></td>
</tr>
<!--
<tr>
@ -30,7 +30,7 @@
<div>处理意见</div>
<div>
<el-input type="textarea" v-model="dataTransOpts.tableS.patient_occupational_disease.handleSuggestion" size="small"
:autosize="{ minRows: 2, maxRows: 2 }"></el-input>
:autosize="{ minRows: 2, maxRows: 2 }" :disabled="!checkPagePriv(pagePriv.privs, '职业健康检查结论')"></el-input>
</div>
</div>
</template>
@ -46,7 +46,7 @@ export default {
data() {
return {
pagePriv: {
routeUrlorPageName: 'customerOrg', //
routeUrlorPageName: 'OccDisease', //
privs: [] //
},

4
src/components/occDisease/OccDiseasePoison.vue

@ -15,7 +15,7 @@
<el-table-column v-if="height < 300" prop="occupationalAbnormalId" label="接害因素检查结论" min-width="130" align="center">
<template slot-scope="scope">
<el-select v-model="scope.row.occupationalAbnormalId" size="small" clearable filterable
:filter-method="filterMethod">
:filter-method="filterMethod" :disabled="!checkPagePriv(pagePriv.privs, '职业健康检查结论')">
<el-option v-for="item in occupationalAbnormal" :key="item.id" :label="item.displayName" :value="item.id" />
</el-select>
</template>
@ -71,7 +71,7 @@ export default {
data() {
return {
pagePriv: {
routeUrlorPageName: 'customerOrg', //
routeUrlorPageName: 'OccDisease', //
privs: [] //
},
poisonList: [],

10
src/components/sumDoctorCheck/ButtonList.vue

@ -112,6 +112,7 @@ export default {
details: [{ id: 1, name: '000' }, { id: 2, name: '001' }]
}
],
};
},
@ -124,6 +125,7 @@ export default {
//
mounted() {
},
computed: {
@ -225,7 +227,7 @@ export default {
let body = {
patientRegisterId: this.dataTransOpts.tableS.patient_register.id,
summaryDoctorId: this.dataTransOpts.tableS.patient_register.summaryDoctorId || null,
summaryDate: this.dataTransOpts.tableS.patient_register.summaryDate||moment(new Date()).format("yyyy-MM-DD HH:mm:ss"),
summaryDate: this.dataTransOpts.tableS.patient_register.summaryDate || moment(new Date()).format("yyyy-MM-DD HH:mm:ss"),
medicalConclusionId: this.dataTransOpts.tableS.patient_register.medicalConclusionId || null,
sumSummarys: this.sumDoctorCheck.summaryList,
sumSuggestions: this.sumDoctorCheck.suggestionList
@ -384,12 +386,12 @@ export default {
let ReportCode = '0005';
let BusinessCode = this.dataTransOpts.tableS.patient_register.id
if(this.dataTransOpts.tableS.patient_register.isPatientOccupationalDisease == 'Y') ReportCode = '0006'
if (this.dataTransOpts.tableS.patient_register.isPatientOccupationalDisease == 'Y') ReportCode = '0006'
let token = window.sessionStorage.getItem('token');
let user = window.sessionStorage.getItem('user');
let toOutShell = {
ReportCode, token,BusinessCode,
ReportCode, token, BusinessCode,
isBuildImage: 'N',
IsUploadPdf: 'N',
preViewCanPrint: 'Y',
@ -422,7 +424,7 @@ export default {
// }
// })
let JSONtoOutShell = JSON.stringify(toOutShell)
console.log('$peisAPI.printPre',JSONtoOutShell)
console.log('$peisAPI.printPre', JSONtoOutShell)
this.$peisAPI.printPre(JSONtoOutShell)
.then(res => {
if (res) {

140
src/components/sumDoctorCheck/SumSug.vue

@ -2,14 +2,36 @@
<div>
<!--组件-->
<div style="display: flex;">
<div
:style="`position: absolute; top: 0px; left: ${Math.floor((window.pageWidth - 120) / 2) - 110}px; display: flex;z-index: 3;`">
<div v-show="checkPagePriv(pagePriv.privs, '新增综述')">
<el-button style="height: 28px;" class="commonbutton" @click="addSummary"
:disabled="sumBtnDisabled('addSummary')">新增综述</el-button>
</div>
</div>
<div style="width:50%;">
<el-table id="tableSummary" row-key="id" :data="sumDoctorCheck.summaryList" width="100%" :height="sumHeight"
border size="small">
<el-table-column type="index" width="30" align="center" />
<el-table-column prop="summaryTitle" label="综述">
<template slot="header">
<div style="display: flex;justify-content:space-between;">
<div>综述</div>
<div></div>
</div>
</template>
<template slot-scope="scope">
<div>
<el-input v-model="scope.row.summaryTitle" placeholder="请输入综述" disabled></el-input>
<div style="display: flex;">
<el-input v-model="scope.row.summaryTitle" placeholder="请输入综述" :ref="scope.row.id" :id="scope.row.id"
:disabled="sumBtnDisabled('addSummary')"></el-input>
<el-button v-show="checkPagePriv(pagePriv.privs, '新增综述明细')" icon="el-icon-plus"
style="min-width:21px;height:21px;padding:2px;" @click="addSum(scope.$index)"
:disabled="sumBtnDisabled('addSummary')"></el-button>
<el-button v-show="checkPagePriv(pagePriv.privs, '删除综述')" type="danger" icon="el-icon-delete"
style="margin-left: 2px;min-width:21px;height:21px;padding:2px;" @click="delSumHead(scope.$index)"
:disabled="sumBtnDisabled('addSummary')"></el-button>
</div>
<el-table :id="scope.row.id" :row-key="scope.$index + scope.row.id" style="margin-left: 10px;"
:data="scope.row.details" border @row-click="rowClick" :show-header="false">
<el-table-column width="30">
@ -19,10 +41,16 @@
</el-table-column>
<el-table-column prop="summaryContent" label="综述" min-width="200">
<template slot-scope="scope2">
<!--:autosize="{ minRows: 1, maxRows: 20 } "-->
<el-input type="textarea" v-model="scope2.row.summaryContent" placeholder="请输入综述" disabled
<div style="display: flex;">
<el-input type="textarea" v-model="scope2.row.summaryContent" placeholder="请输入综述"
:disabled="sumBtnDisabled('addSummary')" :id="scope2.row.id" :ref="scope2.row.id"
:autosize="{ minRows: 1, maxRows: 20 }">
</el-input>
<el-button v-show="checkPagePriv(pagePriv.privs, '删除综述明细')" type="danger" icon="el-icon-delete"
style="margin-left: 2px;min-width:21px;height:21px;padding:2px;"
@click="delSug(scope.row.details, scope2.$index)"
:disabled="sumBtnDisabled('addSummary')"></el-button>
</div>
</template>
</el-table-column>
<el-table-column width="8" />
@ -268,7 +296,7 @@ export default {
diagnosisesFilter: [], //
choosedDiagnosisIds: [], // id
disabledDiagnosisIds: [], // id
diagnosisesChoosed:[], //
diagnosisesChoosed: [], //
collapse: false, // /
@ -286,6 +314,7 @@ export default {
colName: '', //
subIndex: -1,
},
summary_check_default_summay_modifiable: 'N',
};
},
@ -299,11 +328,11 @@ export default {
},
//
mounted() {
async mounted() {
// this.rowDrop();
this.rowDropSuggestion();
this.dictInit()
await this.dictInit()
// document.addEventListener('DOMContentLoaded', function () {
// const textarea = document.querySelector('textarea');
// textarea.addEventListener('input', function () {
@ -336,7 +365,7 @@ export default {
// });
// },
//
dictInit() {
async dictInit() {
// /api/app/diagnosis/getlistinsuggestion , {}
postapi('/api/app/Diagnosis/GetSimpleDiagnosisWithSuggestions').then(res => {
@ -351,6 +380,35 @@ export default {
this.symbols = res.data
}
})
let sysParmId = "summary_check_default_summay_modifiable"
try {
let sysParm = await postapi('/api/app/SysParmValue/GetSysParmValueBySysParmId', { sysParmId })
this.summary_check_default_summay_modifiable = sysParm.data.toUpperCase()
// console.log('dictInit this.summary_check_default_summay_modifiable',this.summary_check_default_summay_modifiable,sysParm.data.toUpperCase())
} catch (error) {
console.log('获取参数 summary_check_default_summay_modifiable 失败', error)
}
},
//
addSummary() {
let id = String(new Date().getTime())
let pojo = {
id,
patientRegisterId: this.dataTransOpts.tableS.patient_register.id,
summaryTitle: '',
details: [{
id: 'detail' + id,
summaryContent: '',
}]
}
this.sumDoctorCheck.summaryList.push(pojo);
this.$nextTick(() => {
this.$refs[id].focus();
})
},
//
@ -424,10 +482,10 @@ export default {
this.diagnosisesChoosed = []
this.diagnosises.forEach(e => {
if(this.disabledDiagnosisIds.indexOf(e.id) == -1){
if(this.choosedDiagnosisIds.indexOf(e.id) == -1){
if(this.diagnosisesFilter.length < 20) this.diagnosisesFilter.push(e)
}else{
if (this.disabledDiagnosisIds.indexOf(e.id) == -1) {
if (this.choosedDiagnosisIds.indexOf(e.id) == -1) {
if (this.diagnosisesFilter.length < 20) this.diagnosisesFilter.push(e)
} else {
this.diagnosisesChoosed.push(e)
}
}
@ -441,10 +499,10 @@ export default {
if (keyWords) {
let diagnosisesFilter = []
this.diagnosises.forEach(e => {
if(this.disabledDiagnosisIds.indexOf(e.id) == -1){
if(this.choosedDiagnosisIds.indexOf(e.id) == -1){
if(e.displayName.toLowerCase().indexOf(keyWords.toLowerCase()) > - 1 || e.simpleCode.toLowerCase().indexOf(keyWords.toLowerCase()) > - 1){
if(diagnosisesFilter.length < 20) diagnosisesFilter.push(e)
if (this.disabledDiagnosisIds.indexOf(e.id) == -1) {
if (this.choosedDiagnosisIds.indexOf(e.id) == -1) {
if (e.displayName.toLowerCase().indexOf(keyWords.toLowerCase()) > - 1 || e.simpleCode.toLowerCase().indexOf(keyWords.toLowerCase()) > - 1) {
if (diagnosisesFilter.length < 20) diagnosisesFilter.push(e)
}
}
}
@ -596,7 +654,20 @@ export default {
// ''
if (patientRegister.isLock && patientRegister.isLock == 'Y') return ret
if (btnType && btnType == 'collapse') ret = false
// console.log('btnType', btnType, this.summary_check_default_summay_modifiable)
switch (btnType) {
case 'collapse':
return false;
case 'addSummary':
if (patientRegister.completeFlag && patientRegister.completeFlag != '3' && this.summary_check_default_summay_modifiable == 'Y') {
return false;
} else {
return true;
}
default:
break;
}
if (patientRegister.completeFlag && patientRegister.completeFlag != '3') ret = false
@ -689,6 +760,19 @@ export default {
})
},
//
addSum(index) {
let id = String(new Date().getTime())
this.sumDoctorCheck.summaryList[index]['details'].push({
id,
summaryContent: '',
})
this.$nextTick(() => {
this.$refs[id].focus();
})
},
//
addSug(index, contentType) {
this.suggestionCurRow = index
@ -716,6 +800,24 @@ export default {
console.log('this.sumDoctorCheck.suggestionList', index, this.sumDoctorCheck.suggestionList)
},
//
delSumHead(index) {
this.$confirm("此操作将删除该记录, 是否继续?", "提示", {
confirmButtonText: "是",
cancelButtonText: "否",
type: "warning",
}).then(() => {
//
this.sumDoctorCheck.summaryList.splice(index, 1)
}).catch((err) => {
if (err == 'cancel') {
console.log(`已取消 ${err}`)
} else {
this.$message.error(`操作失败 ${err}`)
}
});
},
//
delSugHead(index) {
this.$confirm("此操作将删除该记录, 是否继续?", "提示", {
@ -734,7 +836,9 @@ export default {
});
},
//
///
delSug(details, indexD) {
this.$confirm("此操作将删除该记录, 是否继续?", "提示", {
confirmButtonText: "是",
@ -750,8 +854,8 @@ export default {
this.$message.error(`操作失败 ${err}`)
}
});
},
//
rowClick(row) {
console.log('rowClick row', row)

Loading…
Cancel
Save