Commit 8fd51001 authored by v_liuhuaizhi's avatar v_liuhuaizhi

病例管理-->编辑-->治疗完毕

parent 6662f333
...@@ -23,6 +23,14 @@ export function checkList(params) { ...@@ -23,6 +23,14 @@ export function checkList(params) {
params params
}) })
} }
// 查询治疗项目
export function getTreatOptions(params) {
return request({
url: '/business/item/list',
method: 'get',
params
})
}
export function deleteCheck(id) { export function deleteCheck(id) {
return request({ return request({
url: '/business/check/' + id, url: '/business/check/' + id,
...@@ -45,3 +53,25 @@ export function updateCheck(data) { ...@@ -45,3 +53,25 @@ export function updateCheck(data) {
data data
}) })
} }
// 新增治疗
export function addTreat(data) {
return request({
url: '/business/treat',
method: 'post',
data
})
}
// 编辑治疗
export function updateTreat(data) {
return request({
url: '/business/treat',
method: 'put',
data
})
}
export function deleteTreat(id) {
return request({
url: '/business/treat/' + id,
method: 'delete'
})
}
...@@ -634,7 +634,7 @@ color: #333333;" ...@@ -634,7 +634,7 @@ color: #333333;"
size="mini" size="mini"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(52,144,206);" style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(52,144,206);"
type="primary" type="primary"
@click="handleSave('drugForm','checkManageBos', scope.$index)" @click="handleSave('checkForm','checkManageBos', scope.$index)"
>保存 >保存
</el-button> </el-button>
<el-button <el-button
...@@ -653,26 +653,78 @@ color: #333333;" ...@@ -653,26 +653,78 @@ color: #333333;"
</el-form> </el-form>
</div> </div>
<!--9--治疗信息--> <!--9--治疗信息-->
<div style="display: flex"> <div class="title-content">
<div class="title-left">
<div class="tip-green" /> <div class="tip-green" />
<div <div
style="padding-left: 13px;font-size: 16px;font-family: Microsoft YaHei-Bold, Microsoft YaHei,serif;font-weight: bold;color: #333333;" class="tip-text"
>治疗信息 >治疗信息
</div> </div>
</div> </div>
<el-button
class="fourWordsBtn"
icon="el-icon-circle-plus-outline"
size="mini"
@click="handleAdd('treatManageBo')"
>新增治疗
</el-button>
</div>
<!-- 内部信息 --> <!-- 内部信息 -->
<div class="table-content"> <div class="table-content">
<el-table :data="petProtect" :header-cell-style="{ background:'#E8E9E8'}" border> <el-form ref="treatForm" :model="treatForm" label-width="0" :rules="treatRules" class="demo-ruleForm">
<el-table-column align="center" label="治疗项目" prop="protectName" /> <el-table :data="treatManageBo" :header-cell-style="{ background:'#E8E9E8'}" border>
<el-table-column align="center" label="治疗类型" prop="type" /> <el-table-column align="center" label="治疗项目" prop="treatItemsName">
<el-table-column align="center" label="负责人" prop="date" /> <template slot-scope="scope">
<el-table-column align="center" label="治疗诊室" prop="date" /> <el-form-item v-if="scope.row.inputShow" :prop="'treatManageBo.'+scope.$index+'.treatItemsId'" :rules="treatRules.treatItemsId">
<el-table-column align="center" label="治疗状态" prop="date" /> <el-select v-model="scope.row.id" placeholder="请选择" clearable @change="setTreatItemsName(scope.row,treatItemOptions)">
<el-table-column align="center" label="治疗日期" prop="date" /> <el-option
v-for="(item, index) in treatItemOptions"
:key="index"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<span v-else>{{ scope.row.treatItemsName === '' || scope.row.treatItemsName === null ? '-' : scope.row.treatItemsName }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="治疗负责人" prop="doctorName" />
<el-table-column align="center" label="治疗诊室" prop="consultRoomName">
<template slot-scope="scope">
<span>{{ scope.row.consultRoomName === '' || scope.row.consultRoomName === null ? '-' : scope.row.consultRoomName }}</span>
</template>
</el-table-column>
<el-table-column align="center" label="缴费状态" prop="payType">
<template slot-scope="scope">
<span v-if="scope.row.inputShow">-</span>
<dict-tag
v-else
:options="dict.type.payment_status"
:value="scope.row.payType"
class="content-style"
/>
</template>
</el-table-column>
<el-table-column align="center" label="治疗状态" prop="treatStatus">
<template slot-scope="scope">
<span v-if="scope.row.inputShow">-</span>
<span v-else>
{{ scope.row.treatStatus? (scope.row.treatStatus === 3 ? '已检查' : '未检查') : '-' }}
</span>
</template>
</el-table-column>
<el-table-column align="center" label="治疗日期" prop="treatStartTime">
<template slot-scope="scope">
<span v-if="scope.row.inputShow">-</span>
<span v-else>
{{ scope.row.treatStartTime? scope.row.treatStartTime : '-' }}
</span>
</template>
</el-table-column>
<el-table-column align="center" show-overflow-tooltip class-name="small-padding fixed-width" label="操作" min-width="180"> <el-table-column align="center" show-overflow-tooltip class-name="small-padding fixed-width" label="操作" min-width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
v-hasPermi="['business:case:edit']" v-if="scope.row.payType !== '0' && !scope.row.isAdd"
icon="el-icon-document" icon="el-icon-document"
plain plain
size="mini" size="mini"
...@@ -682,28 +734,39 @@ color: #333333;" ...@@ -682,28 +734,39 @@ color: #333333;"
>查看 >查看
</el-button> </el-button>
<el-button <el-button
v-hasPermi="['business:case:edit']" v-if="scope.row.payType === '0' && !scope.row.inputShow"
icon="el-icon-edit" icon="el-icon-edit"
plain plain
size="mini" size="mini"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(52,144,206);" style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(52,144,206);"
type="primary" type="primary"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.$index,'treatManageBo')"
>编辑 >编辑
</el-button> </el-button>
<el-button <el-button
v-hasPermi="['business:case:edit']" v-if="(scope.row.payType === '0'|| scope.row.isAdd ) && scope.row.inputShow"
icon="el-icon-edit"
plain
size="mini"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(52,144,206);"
type="primary"
@click="handleSave('treatForm','treatManageBo', scope.$index)"
>保存
</el-button>
<el-button
v-if="scope.row.payType === '0' && !scope.row.inputShow"
icon="el-icon-document" icon="el-icon-document"
plain plain
size="mini" size="mini"
style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(155,0,65);" style="width: 50px; border-radius: 6px 6px 6px 6px;border: 1px solid rgb(155,0,65);"
type="danger" type="danger"
@click="handleDetail(scope.row)" @click="handleDelRow(scope.row, 'treatManageBo')"
>删除 >删除
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-form>
</div> </div>
<!--10--住院信息--> <!--10--住院信息-->
<div style="display: flex"> <div style="display: flex">
...@@ -788,7 +851,18 @@ color: #333333;" ...@@ -788,7 +851,18 @@ color: #333333;"
import { parseTime, selectDictLabel } from '@/utils/ruoyi' import { parseTime, selectDictLabel } from '@/utils/ruoyi'
// 引入进度信息模组件 // 引入进度信息模组件
import scheduleInfo from '@/views/service-management/registration-queue/components/schedule-info' import scheduleInfo from '@/views/service-management/registration-queue/components/schedule-info'
import { addCheck, checkList, deleteCheck, getRecord, listByType, updateCheck } from '@/api/business/mdeicalRecord' import {
addCheck,
addTreat,
updateTreat,
checkList,
deleteCheck,
deleteTreat,
getRecord,
getTreatOptions,
listByType,
updateCheck
} from '@/api/business/mdeicalRecord'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default { export default {
name: 'MedicalEdit', name: 'MedicalEdit',
...@@ -801,18 +875,23 @@ export default { ...@@ -801,18 +875,23 @@ export default {
data() { data() {
return { return {
checkItemOptions: [], // 项目选项列表 根据检查类型变化 checkItemOptions: [], // 项目选项列表 根据检查类型变化
checkManageBos: [], treatItemOptions: [], // 治疗项目选项列表
checkManageBos: [], // 检查列表数据
treatManageBo: [], // 治疗列表数据
editCunt: { editCunt: {
petProtect: 0, petProtect: 0,
checkManageBos: 0 checkManageBos: 0,
treatManageBo: 0
}, },
drugList: [], // 药品列表 drugList: [], // 药品列表
map: { map: {
}, },
drugForm: {}, // 用药管理table编辑 drugForm: {}, // 用药管理table编辑
drugRules: {}, drugRules: {},
checkForm: {}, // 用药管理table编辑 checkForm: {}, // 检查table编辑
checkRules: {}, checkRules: {},
treatForm: {}, // 治疗table编辑
treatRules: {},
form: {}, form: {},
// 排序下拉框 // 排序下拉框
insureList: [ insureList: [
...@@ -915,6 +994,7 @@ export default { ...@@ -915,6 +994,7 @@ export default {
}, },
mounted() { mounted() {
this.getDetail() this.getDetail()
this.getTreatItemOptions()
}, },
methods: { methods: {
// 设置当前行检查名称 // 设置当前行检查名称
...@@ -926,6 +1006,16 @@ export default { ...@@ -926,6 +1006,16 @@ export default {
} }
}) })
}, },
// 设置当前行治疗名称
setTreatItemsName(rowData, options) {
console.log('setTreatItemsName', rowData, options)
options.forEach(item => {
if (item.value === rowData.treatItemsId) {
rowData.treatItemsName = item.label
rowData.treatItemsType = item.type
}
})
},
/** 根据检查类型获取检查项目列表*/ /** 根据检查类型获取检查项目列表*/
getCheckItemOptions(checkType) { getCheckItemOptions(checkType) {
listByType({ deptId: this.deptId, itemType: checkType }).then(res => { listByType({ deptId: this.deptId, itemType: checkType }).then(res => {
...@@ -938,6 +1028,19 @@ export default { ...@@ -938,6 +1028,19 @@ export default {
console.log('checkItemOptions!!!!!!!!!!!!!', this.checkItemOptions) console.log('checkItemOptions!!!!!!!!!!!!!', this.checkItemOptions)
}) })
}, },
/** 获取治疗项目列表*/
getTreatItemOptions(checkType) {
getTreatOptions({ itemType: '1', status: '1' }).then(res => {
this.treatItemOptions = res.rows.map(item => {
return {
label: item.name,
value: item.id,
type: item.type
}
})
console.log('treatItemOptions!!!!!!!!!!!!!', this.treatItemOptions)
})
},
/** 获取页面详情*/ /** 获取页面详情*/
getDetail() { getDetail() {
getRecord(this.$route.params.id).then(response => { getRecord(this.$route.params.id).then(response => {
...@@ -1117,6 +1220,7 @@ export default { ...@@ -1117,6 +1220,7 @@ export default {
} }
} }
this.checkManageBos.push(...temp.data.checkManageBos) this.checkManageBos.push(...temp.data.checkManageBos)
this.treatManageBo.push(...temp.data.treatManageBo)
this.petInfo = { ...temp.data } this.petInfo = { ...temp.data }
console.log(this.checkManageBos, 'kkkkkkkkkkkkkkkkkkkkkkk') console.log(this.checkManageBos, 'kkkkkkkkkkkkkkkkkkkkkkk')
}, },
...@@ -1140,26 +1244,33 @@ export default { ...@@ -1140,26 +1244,33 @@ export default {
}, },
/** 删除行*/ /** 删除行*/
handleDelRow(rowData, tableName) { handleDelRow(rowData, tableName) {
// 删除检查信息行 // 删除信息行
if (tableName === 'checkManageBos') { this.$confirm('此操作将永久删除该信息, 是否继续?', '提示', {
this.$confirm('此操作将永久删除该检查, 是否继续?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
if (tableName === 'checkManageBos') {
deleteCheck(rowData.id).then(() => { deleteCheck(rowData.id).then(() => {
this.$message({ this.$message({
type: 'success', type: 'success',
message: '删除成功!' message: '删除成功!'
}) })
}) })
} else if (tableName === 'treatManageBo') {
deleteTreat(rowData.id).then(() => {
this.$message({
type: 'success',
message: '删除成功!'
})
})
}
}).catch(() => { }).catch(() => {
this.$message({ this.$message({
type: 'info', type: 'info',
message: '已取消删除' message: '已取消删除'
}) })
}) })
}
}, },
/** 新增行*/ /** 新增行*/
handleAdd(tableName) { handleAdd(tableName) {
...@@ -1177,6 +1288,19 @@ export default { ...@@ -1177,6 +1288,19 @@ export default {
inputShow: true, inputShow: true,
isAdd: true isAdd: true
}) })
} else if (tableName === 'treatManageBo') {
// 新增z治疗信息初始值
this[tableName].unshift({
id: '',
treatItemsName: '',
doctorName: this.petInfo.doctorName,
consultRoomName: '',
payType: '',
treatStatus: '',
treatStartTime: '',
inputShow: true,
isAdd: true
})
} }
this.editCunt[tableName] += 1 this.editCunt[tableName] += 1
} else { } else {
...@@ -1198,7 +1322,7 @@ export default { ...@@ -1198,7 +1322,7 @@ export default {
if (this[listName][index].isAdd) { // 新增保存 if (this[listName][index].isAdd) { // 新增保存
const temp = { const temp = {
petsId: this.petInfo.petsId, petsId: this.petInfo.petsId,
medicalRecordId: rowData.id, medicalRecordId: this.petInfo.id,
checkSchedule: '0', checkSchedule: '0',
payType: '0', payType: '0',
checkType: rowData.checkType, checkType: rowData.checkType,
...@@ -1215,7 +1339,7 @@ export default { ...@@ -1215,7 +1339,7 @@ export default {
const temp = { const temp = {
checkType: rowData.checkType, checkType: rowData.checkType,
checkItemsId: rowData.checkItemsId, checkItemsId: rowData.checkItemsId,
checkItemsName: rowData.checkItemsName, checkItemsName: rowData.checkItemsName
} }
// 编辑保存 // 编辑保存
updateCheck([temp]).then(() => { updateCheck([temp]).then(() => {
...@@ -1224,6 +1348,35 @@ export default { ...@@ -1224,6 +1348,35 @@ export default {
this.getCheckList() this.getCheckList()
}) })
} }
} else if (listName === 'treatManageBo') {
// 治疗信息保存-- 新增保存 编辑保存
if (this[listName][index].isAdd) { // 新增保存
const temp = {
registId: this.petInfo.registId,
medicalRecordId: this.petInfo.id,
originChannel: '0',
treatItemsId: rowData.treatItemsId,
treatItemsName: rowData.treatItemsName,
treatItemsType: rowData.treatItemsType
}
addTreat([temp]).then(() => {
this.$message.success('保存成功')
// 刷新治疗信息列表
this.getTreatList()
})
} else {
const temp = {
treatItemsId: rowData.treatItemsId,
treatItemsName: rowData.treatItemsName,
treatItemsType: rowData.treatItemsType
}
// 编辑保存
updateTreat([temp]).then(() => {
this.$message.success('保存成功')
// 刷新治疗信息列表
this.getTreatList()
})
}
} }
this[listName][index].inputShow = false this[listName][index].inputShow = false
this.editCunt[listName] -= 1 this.editCunt[listName] -= 1
...@@ -1236,6 +1389,12 @@ export default { ...@@ -1236,6 +1389,12 @@ export default {
console.log('checkList', res) console.log('checkList', res)
}) })
}, },
/** 根据宠物id查询检查列表*/
getTreatList() {
checkList({ petsId: this.petInfo.petsId }).then(res => {
console.log('checkList', res)
})
},
parseTime, parseTime,
selectDictLabel, selectDictLabel,
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment