pengjun 2 years ago
parent
commit
bac381fb9f
  1. 1
      src/components/occDisease/OccDisease.vue
  2. 50
      src/components/occDisease/OccDiseaseHistory.vue
  3. 88
      src/components/occDisease/OccDiseasePoison.vue
  4. 2
      src/components/report/PatientRegisterListNobtn.vue
  5. 2
      src/views/basic-dictionary/ToxicFactors.vue

1
src/components/occDisease/OccDisease.vue

@ -179,6 +179,7 @@ export default {
btnOk() {
let message = ''
this.dataTransOpts.tableM.patient_poison.forEach((e, i) => {
if(e.poisonId) message = `接害因素,第 ${i+1} 行,不能为空`
if (!e.occupationalAbnormalId) e.occupationalAbnormalId = null
});
if (message) {

50
src/components/occDisease/OccDiseaseHistory.vue

@ -68,20 +68,31 @@
<div>
<el-dialog title="选择接害因素" :visible.sync="dialogPoison" width="400px" :close-on-click-modal="false"
:append-to-body="true">
<div style="height: 320px;">
<el-select v-model="choosedPoison" size="small" style="width:380px;" clearable filterable
<div style="height: 320px;display: flex;">
<el-select v-model="choosedPoison" size="small" style="width:350px;" clearable filterable
:filter-method="filterMethod" value-key="id" multiple>
<el-option-group v-for="group in poison" :key="group.poisonTypeName" :label="group.poisonTypeName">
<el-option v-for="item in group.poisonDtos" :key="item.id" :label="item.displayName"
:value="item.displayName" />
</el-option-group>
</el-select>
<el-tooltip content="添加接害因素字典库" placement="left-start">
<i class="el-icon-plus" @click="btnDictPoison"
style="margin: 2px 0 0 5px; font-size: 24px;color: green;cursor:pointer;"></i>
</el-tooltip>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="btnOkPoison">确定</el-button>
<el-button @click="dialogPoison = false">关闭</el-button>
</span>
</el-dialog>
<!-- 接害因素字典库 -->
<el-dialog title="" :visible.sync="dialogDictPoison" :close-on-click-modal="false" :append-to-body="true" fullscreen
@close="closeDialogDictPoison">
<div style="margin-top: 10px;">
<DictPoison />
</div>
</el-dialog>
</div>
</div>
</template>
@ -90,8 +101,12 @@ import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { getPagePriv, checkPagePriv, objCopy, deepCopy, arrayExistObj } from "../../utlis/proFunc";
import DictPoison from "../../views/basic-dictionary/ToxicFactors.vue"
export default {
components: {},
components: {
DictPoison
},
props: ["refFunc"],
data() {
return {
@ -116,6 +131,7 @@ export default {
dialogPoison: false,
currRow: 0,
choosedPoison: [],
dialogDictPoison: false,
};
},
@ -235,7 +251,33 @@ export default {
this.dataTransOpts.tableM.patient_occupational_history[this.currRow]['poison'] = `${this.choosedPoison}`
this.dialogPoison = false
// console.log('this.dataTransOpts.tableM.patient_poison', this.dataTransOpts.tableM.patient_poison)
}
},
//
btnDictPoison() {
this.dialogDictPoison = true
},
closeDialogDictPoison() {
//
postapi("/api/app/Poison/GetPoisonWithTypeList").then(res => {
if (res.code > -1) {
this.dict.poison = res.data;
this.dict.poisonList = []
this.dict.poison.forEach(e => {
e.poisonDtos.forEach(e2 => {
this.dict.poisonList.push({
poisonTypeName: e.poisonTypeName,
id: e2.id,
displayName: e2.displayName,
simpleCode: e2.simpleCode
})
});
});
this.refreshPoison()
}
})
},
},

88
src/components/occDisease/OccDiseasePoison.vue

@ -12,7 +12,8 @@
</el-input>
</template>
</el-table-column>
<el-table-column v-if="height < 300" prop="occupationalAbnormalId" label="接害因素检查结论" min-width="130" align="center">
<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" :disabled="!checkPagePriv(pagePriv.privs, '职业健康检查结论')">
@ -44,19 +45,31 @@
<div>
<el-dialog title="选择接害因素" :visible.sync="dialogPoison" width="400px" :close-on-click-modal="false"
:append-to-body="true">
<div style="height: 320px;">
<el-select v-model="choosedPoison" size="small" style="width:380px;" clearable filterable
<div style="height: 320px;display: flex;">
<el-select v-model="choosedPoison" size="small" style="width:350px;" clearable filterable
:filter-method="filterMethod" value-key="id">
<el-option-group v-for="group in poison" :key="group.poisonTypeName" :label="group.poisonTypeName">
<el-option v-for="item in group.poisonDtos" :key="item.id" :label="item.displayName" :value="item" />
</el-option-group>
</el-select>
<el-tooltip content="添加接害因素字典库" placement="left-start">
<i class="el-icon-plus" @click="btnDictPoison"
style="margin: 2px 0 0 5px; font-size: 24px;color: green;cursor:pointer;"></i>
</el-tooltip>
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="btnOkPoison">确定</el-button>
<el-button @click="dialogPoison = false">关闭</el-button>
</span>
</el-dialog>
<!-- 接害因素字典库 -->
<el-dialog title="" :visible.sync="dialogDictPoison" :close-on-click-modal="false" :append-to-body="true" fullscreen
@close="closeDialogDictPoison">
<div style="margin-top: 10px;">
<DictPoison />
</div>
</el-dialog>
</div>
</div>
</template>
@ -65,8 +78,13 @@ import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { getPagePriv, checkPagePriv, objCopy, deepCopy, arrayExistObj } from "../../utlis/proFunc";
import DictPoison from "../../views/basic-dictionary/ToxicFactors.vue"
export default {
components: {},
components: {
DictPoison
},
props: ["refFunc", "height"],
data() {
return {
@ -80,6 +98,7 @@ export default {
currRow: 0,
choosedPoison: {},
dialogPoison: false,
dialogDictPoison: false,
};
},
@ -103,26 +122,7 @@ export default {
moment, checkPagePriv,
//
dictInit() {
//
// postapi("/api/app/Poison/GetPoisonWithTypeList").then(res => {
// if (res.code > -1) {
// this.dict.poison = res.data;
// this.poison = res.data;
// this.dict.poisonList = []
// this.dict.poison.forEach(e => {
// e.poisonDtos.forEach(e2 => {
// this.dict.poisonList.push({
// poisonTypeName: e.poisonTypeName,
// id: e2.id,
// displayName: e2.displayName,
// simpleCode: e2.simpleCode
// })
// });
// });
// }
// })
dictInit() {
//
postapi("/api/app/OccupationalAbnormal/GetList").then((res) => {
@ -133,9 +133,9 @@ export default {
},
//
btnDispPoison(index) {
this.currRow = index
//
refreshPoison(){
let index = this.currRow
this.poisonList = deepCopy(this.dict.poisonList)
this.dataTransOpts.tableM.patient_poison.forEach((e, i) => {
if (i != index) {
@ -144,6 +144,12 @@ export default {
}
});
this.poison = this.madeSelectGroup(this.poisonList)
},
//
btnDispPoison(index) {
this.currRow = index
this.refreshPoison()
this.dialogPoison = true
},
@ -213,7 +219,33 @@ export default {
this.dataTransOpts.tableM.patient_poison[this.currRow]['poisonName'] = this.choosedPoison.displayName
this.dialogPoison = false
// console.log('this.dataTransOpts.tableM.patient_poison', this.dataTransOpts.tableM.patient_poison)
}
},
//
btnDictPoison() {
this.dialogDictPoison = true
},
closeDialogDictPoison() {
//
postapi("/api/app/Poison/GetPoisonWithTypeList").then(res => {
if (res.code > -1) {
this.dict.poison = res.data;
this.dict.poisonList = []
this.dict.poison.forEach(e => {
e.poisonDtos.forEach(e2 => {
this.dict.poisonList.push({
poisonTypeName: e.poisonTypeName,
id: e2.id,
displayName: e2.displayName,
simpleCode: e2.simpleCode
})
});
});
this.refreshPoison()
}
})
},
},

2
src/components/report/PatientRegisterListNobtn.vue

@ -20,7 +20,7 @@
<template slot-scope="scope">
<div style="font-family: 'Microsoft YaHei';">{{ scope.row.isUpload == "Y" ? "√" : "" }}</div>
</template>
</el-table-column>
</el-table-column>
<el-table-column prop="customerOrgName" label="单位" width="180" />
<el-table-column prop="departmentName" label="部门" width="180" />
<el-table-column prop="patientName" label="姓名" align="center" />

2
src/views/basic-dictionary/ToxicFactors.vue

@ -140,7 +140,7 @@
<el-dialog
:title="title == 1 ? '新增' : '修改'"
:visible.sync="dialogVisible"
width="75%"
width="75%" :append-to-body="true"
:close-on-click-modal="false"
>
<el-form ref="form" :model="form" label-width="80px">

Loading…
Cancel
Save