|
|
@ -116,13 +116,14 @@ |
|
|
|
</el-form> |
|
|
|
|
|
|
|
<el-row :gutter="10" class="mb8"> |
|
|
|
<el-col :span="1.5"> |
|
|
|
<!-- <el-col :span="1.5"> |
|
|
|
<el-button |
|
|
|
type="primary" |
|
|
|
plain |
|
|
|
icon="el-icon-plus" |
|
|
|
size="mini" |
|
|
|
@click="handleAdd" |
|
|
|
v-hasPermi="['medicalFile:index:add']" |
|
|
|
>新增</el-button |
|
|
|
> |
|
|
|
</el-col> |
|
|
@ -134,18 +135,21 @@ |
|
|
|
size="mini" |
|
|
|
:disabled="multiple" |
|
|
|
@click="handleDelete" |
|
|
|
v-hasPermi="['medicalFile:index:del']" |
|
|
|
>删除</el-button |
|
|
|
> |
|
|
|
</el-col> |
|
|
|
<el-col :span="1.5"> |
|
|
|
</el-col> --> |
|
|
|
<!-- <el-col :span="1.5"> |
|
|
|
<el-button |
|
|
|
type="info" |
|
|
|
plain |
|
|
|
icon="el-icon-bottom" |
|
|
|
size="mini" |
|
|
|
@click="handleDownload" |
|
|
|
>下载模版</el-button |
|
|
|
v-hasPermi="['medicalFile:index:download']" |
|
|
|
> |
|
|
|
下载模版 |
|
|
|
</el-button> |
|
|
|
</el-col> |
|
|
|
<el-col :span="1.5"> |
|
|
|
<el-button |
|
|
@ -154,9 +158,10 @@ |
|
|
|
icon="el-icon-upload2" |
|
|
|
size="mini" |
|
|
|
@click="handleImport" |
|
|
|
v-hasPermi="['medicalFile:index:import']" |
|
|
|
>导入</el-button |
|
|
|
> |
|
|
|
</el-col> |
|
|
|
</el-col> --> |
|
|
|
<el-col :span="1.5"> |
|
|
|
<el-button |
|
|
|
type="warning" |
|
|
@ -164,6 +169,7 @@ |
|
|
|
icon="el-icon-download" |
|
|
|
size="mini" |
|
|
|
@click="handleExport" |
|
|
|
v-hasPermi="['medicalFile:index:export']" |
|
|
|
>导出</el-button |
|
|
|
> |
|
|
|
</el-col> |
|
|
@ -180,6 +186,42 @@ |
|
|
|
max-height="600" |
|
|
|
> |
|
|
|
<el-table-column type="selection" width="55" align="center" /> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="门诊/住院" |
|
|
|
align="center" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="100" |
|
|
|
> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<span v-if="scope.row.visitType == 0">门诊</span> |
|
|
|
<span v-if="scope.row.visitType == 1">住院</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="门诊号/住院号" |
|
|
|
align="center" |
|
|
|
prop="visitNumber" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="180" |
|
|
|
/> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="责任医生" |
|
|
|
align="center" |
|
|
|
prop="doctor" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="100" |
|
|
|
/> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="主要诊断" |
|
|
|
align="center" |
|
|
|
prop="diagnosisName" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="200" |
|
|
|
/> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="姓名" |
|
|
@ -188,7 +230,6 @@ |
|
|
|
min-width="100" |
|
|
|
/> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="性别" |
|
|
|
align="center" |
|
|
|
prop="gender" |
|
|
@ -201,7 +242,6 @@ |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
fixed |
|
|
|
label="年龄" |
|
|
|
align="center" |
|
|
|
prop="age" |
|
|
@ -290,20 +330,7 @@ |
|
|
|
</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
label="责任医生" |
|
|
|
align="center" |
|
|
|
prop="doctor" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="100" |
|
|
|
/> |
|
|
|
<el-table-column |
|
|
|
label="主要诊断" |
|
|
|
align="center" |
|
|
|
prop="diagnosisName" |
|
|
|
show-overflow-tooltip |
|
|
|
min-width="200" |
|
|
|
/> |
|
|
|
|
|
|
|
<el-table-column |
|
|
|
label="建档人" |
|
|
|
align="center" |
|
|
@ -339,40 +366,30 @@ |
|
|
|
}}</span> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
fixed="right" |
|
|
|
label="随访队列" |
|
|
|
align="center" |
|
|
|
prop="" |
|
|
|
show-overflow-tooltip |
|
|
|
width="200" |
|
|
|
> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div v-if="scope.row.queueVoList && scope.row.queueVoList.length"> |
|
|
|
{{ scope.row.queueVoList.map((i) => i.queueName).join(",") }} |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
fixed="right" |
|
|
|
label="操作" |
|
|
|
align="center" |
|
|
|
class-name="small-padding fixed-width" |
|
|
|
width="200" |
|
|
|
width="300" |
|
|
|
> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<!-- <el-button |
|
|
|
:disabled="scope.row.status != 0 && scope.row.status != 3" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-edit" |
|
|
|
@click="handleUpdate(scope.row)" |
|
|
|
v-hasPermi="['medicalFile:index:edit']" |
|
|
|
>修改</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
:disabled="scope.row.status != 0 && scope.row.status != 3" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-delete" |
|
|
|
@click="handleDelete(scope.row)" |
|
|
|
v-hasPermi="['medicalFile:index:del']" |
|
|
|
>删除</el-button |
|
|
|
> --> |
|
|
|
<el-button |
|
|
@ -380,6 +397,7 @@ |
|
|
|
type="text" |
|
|
|
icon="el-icon-tickets" |
|
|
|
@click="handleDetails(scope.row)" |
|
|
|
v-hasPermi="['medicalFile:index:details']" |
|
|
|
>档案详情</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
@ -387,6 +405,7 @@ |
|
|
|
type="text" |
|
|
|
icon="el-icon-notebook-2" |
|
|
|
@click="handleEecorde(scope.row)" |
|
|
|
v-hasPermi="['medicalFile:index:ecorde']" |
|
|
|
>随访记录</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
@ -398,35 +417,36 @@ |
|
|
|
>评估报告单</el-button |
|
|
|
> |
|
|
|
<!-- <el-button |
|
|
|
:disabled="scope.row.status != 0" |
|
|
|
:disabled="scope.row.status != 0 && scope.row.status != 3" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-s-promotion" |
|
|
|
@click="handleExamine(scope.row, 1)" |
|
|
|
v-hasPermi="['medicalFile:index:examine']" |
|
|
|
> |
|
|
|
提交审核 |
|
|
|
</el-button> --> |
|
|
|
<!-- 审核 --> |
|
|
|
<!-- <div> |
|
|
|
<el-button |
|
|
|
:disabled="scope.row.status != 1" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-s-check" |
|
|
|
@click="handleExamine(scope.row, 2)" |
|
|
|
> |
|
|
|
通过 |
|
|
|
</el-button> |
|
|
|
<el-button |
|
|
|
:disabled="scope.row.status != 1" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-s-check" |
|
|
|
@click="handleExamine(scope.row, 3)" |
|
|
|
> |
|
|
|
驳回 |
|
|
|
</el-button> |
|
|
|
</div> --> |
|
|
|
<!-- <el-button |
|
|
|
:disabled="scope.row.status != 1" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-s-check" |
|
|
|
@click="handleExamine(scope.row, 2)" |
|
|
|
v-hasPermi="['medicalFile:index:pass']" |
|
|
|
> |
|
|
|
通过 |
|
|
|
</el-button> |
|
|
|
<el-button |
|
|
|
:disabled="scope.row.status != 1" |
|
|
|
size="mini" |
|
|
|
type="text" |
|
|
|
icon="el-icon-s-check" |
|
|
|
@click="handleExamine(scope.row, 3)" |
|
|
|
v-hasPermi="['medicalFile:index:reject']" |
|
|
|
> |
|
|
|
驳回 |
|
|
|
</el-button> --> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
@ -474,17 +494,26 @@ |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="民族" prop="ethnicity"> |
|
|
|
<el-input v-model="form.ethnicity" placeholder="请输入" /> |
|
|
|
<el-select v-model="form.ethnicity" placeholder="请选择" filterable> |
|
|
|
<el-option |
|
|
|
v-for="item in ethnicityList" |
|
|
|
:key="item.label" |
|
|
|
:label="item.label" |
|
|
|
:value="item.label" |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="受教育年限" prop="educationYears"> |
|
|
|
<el-input |
|
|
|
type="number" |
|
|
|
v-model="form.educationYears" |
|
|
|
placeholder="请输入" |
|
|
|
:disabled="formDisabled" |
|
|
|
/> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="手机号码" prop="phone"> |
|
|
|
<el-input v-model="form.phone" placeholder="请输入" /> |
|
|
|
<el-input type="number" v-model="form.phone" placeholder="请输入" /> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="证件类型" prop="idCardType"> |
|
|
|
<el-select v-model="form.idCardType" placeholder="请选择"> |
|
|
@ -543,7 +572,7 @@ |
|
|
|
<el-input v-model="form.doctor" placeholder="请输入" /> |
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
<el-form-item label="随访队列" prop="queueIdList"> |
|
|
|
<!-- <el-form-item label="随访队列" prop="queueIdList"> |
|
|
|
<el-select v-model="form.queueIdList" multiple placeholder="请选择"> |
|
|
|
<el-option |
|
|
|
v-for="item in followupList" |
|
|
@ -553,7 +582,7 @@ |
|
|
|
> |
|
|
|
</el-option> |
|
|
|
</el-select> |
|
|
|
</el-form-item> |
|
|
|
</el-form-item> --> |
|
|
|
</el-form> |
|
|
|
<div slot="footer" class="dialog-footer"> |
|
|
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
|
|
@ -611,7 +640,67 @@ export default { |
|
|
|
dicts: ["sys_normal_disable", "sys_user_sex"], |
|
|
|
data() { |
|
|
|
return { |
|
|
|
tenantsListData: [], // 组织列表 |
|
|
|
tenantsListData: [], |
|
|
|
qzUrl: process.env.VUE_APP_API_QZURL, // 二维码路径 |
|
|
|
// 民族列表 |
|
|
|
ethnicityList: [ |
|
|
|
{ label: "汉族", value: "01" }, |
|
|
|
{ label: "蒙古族", value: "02" }, |
|
|
|
{ label: "回族", value: "03" }, |
|
|
|
{ label: "藏族", value: "04" }, |
|
|
|
{ label: "维吾尔族", value: "05" }, |
|
|
|
{ label: "苗族", value: "06" }, |
|
|
|
{ label: "彝族", value: "07" }, |
|
|
|
{ label: "壮族", value: "08" }, |
|
|
|
{ label: "布依族", value: "09" }, |
|
|
|
{ label: "朝鲜族", value: "10" }, |
|
|
|
{ label: "满族", value: "11" }, |
|
|
|
{ label: "侗族", value: "12" }, |
|
|
|
{ label: "瑶族", value: "13" }, |
|
|
|
{ label: "白族", value: "14" }, |
|
|
|
{ label: "土家族", value: "15" }, |
|
|
|
{ label: "哈尼族", value: "16" }, |
|
|
|
{ label: "哈萨克族", value: "17" }, |
|
|
|
{ label: "傣族", value: "18" }, |
|
|
|
{ label: "黎族", value: "19" }, |
|
|
|
{ label: "傈僳族", value: "20" }, |
|
|
|
{ label: "佤族", value: "21" }, |
|
|
|
{ label: "畲族", value: "22" }, |
|
|
|
{ label: "高山族", value: "23" }, |
|
|
|
{ label: "拉祜族", value: "24" }, |
|
|
|
{ label: "水族", value: "25" }, |
|
|
|
{ label: "东乡族", value: "26" }, |
|
|
|
{ label: "纳西族", value: "27" }, |
|
|
|
{ label: "景颇族", value: "28" }, |
|
|
|
{ label: "柯尔克孜族", value: "29" }, |
|
|
|
{ label: "土族", value: "30" }, |
|
|
|
{ label: "达斡尔族", value: "31" }, |
|
|
|
{ label: "仫佬族", value: "32" }, |
|
|
|
{ label: "羌族", value: "33" }, |
|
|
|
{ label: "布朗族", value: "34" }, |
|
|
|
{ label: "撒拉族", value: "35" }, |
|
|
|
{ label: "毛南族", value: "36" }, |
|
|
|
{ label: "仡佬族", value: "37" }, |
|
|
|
{ label: "锡伯族", value: "38" }, |
|
|
|
{ label: "阿昌族", value: "39" }, |
|
|
|
{ label: "普米族", value: "40" }, |
|
|
|
{ label: "塔吉克族", value: "41" }, |
|
|
|
{ label: "怒族", value: "42" }, |
|
|
|
{ label: "乌孜别克族", value: "43" }, |
|
|
|
{ label: "俄罗斯族", value: "44" }, |
|
|
|
{ label: "鄂温克族", value: "45" }, |
|
|
|
{ label: "德昂族", value: "46" }, |
|
|
|
{ label: "保安族", value: "47" }, |
|
|
|
{ label: "裕固族", value: "48" }, |
|
|
|
{ label: "京族", value: "49" }, |
|
|
|
{ label: "塔塔尔族", value: "50" }, |
|
|
|
{ label: "独龙族", value: "51" }, |
|
|
|
{ label: "鄂伦春族", value: "52" }, |
|
|
|
{ label: "赫哲族", value: "53" }, |
|
|
|
{ label: "门巴族", value: "54" }, |
|
|
|
{ label: "珞巴族", value: "55" }, |
|
|
|
{ label: "基诺族", value: "56" }, |
|
|
|
], |
|
|
|
visitType: { |
|
|
|
0: "门诊", |
|
|
|
1: "住院", |
|
|
@ -1241,16 +1330,9 @@ export default { |
|
|
|
let idCard = this.$route.query.idCard; |
|
|
|
this.queryParams.param.keywords = idCard || ""; |
|
|
|
this.getList(); |
|
|
|
this.getFollowupQuery(); // 随访队列 |
|
|
|
this.getTenantsList(); // 组织列表 |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// 评估报告单 |
|
|
|
handleReport(row) { |
|
|
|
exportTreatmentPg({ treatmentId: row.id }).then((res) => { |
|
|
|
window.open(`${process.env.VUE_APP_API_QZURL}acupuncture${res.data}`); |
|
|
|
}); |
|
|
|
}, |
|
|
|
// 组织列表 |
|
|
|
getTenantsList() { |
|
|
|
tenantsList({ |
|
|
@ -1341,7 +1423,6 @@ export default { |
|
|
|
doctor: "", |
|
|
|
status: 0, |
|
|
|
queueIdList: [], |
|
|
|
tenantId: "", |
|
|
|
}; |
|
|
|
this.resetForm("form"); |
|
|
|
}, |
|
|
@ -1382,24 +1463,23 @@ export default { |
|
|
|
handleUpdate(row) { |
|
|
|
this.open = true; |
|
|
|
this.title = "修改诊疗档案"; |
|
|
|
let queueList = row.queueVoList?.map((item) => item.queueId) || []; |
|
|
|
this.form = { |
|
|
|
...JSON.parse(JSON.stringify(row)), |
|
|
|
queueIdList: queueList, |
|
|
|
}; |
|
|
|
this.form = JSON.parse(JSON.stringify(row)); |
|
|
|
}, |
|
|
|
// 评估报告单 |
|
|
|
handleReport(row) { |
|
|
|
exportTreatmentPg({ treatmentId: row.id }).then((res) => { |
|
|
|
window.open(`${process.env.VUE_APP_API_QZURL}acupuncture${res.data}`); |
|
|
|
}); |
|
|
|
}, |
|
|
|
/** 提交审核 */ |
|
|
|
handleExamine(row, _status) { |
|
|
|
let form = JSON.parse(JSON.stringify(row)); |
|
|
|
let queueList = row.queueVoList?.map((item) => item.queueId) || []; |
|
|
|
form = { |
|
|
|
...JSON.parse(JSON.stringify(row)), |
|
|
|
queueIdList: queueList, |
|
|
|
}; |
|
|
|
form.status = _status; |
|
|
|
let title = this.status[_status]; |
|
|
|
this.$modal |
|
|
|
.confirm(`是否确认${title}当前选择的数据(${row.name})?`) |
|
|
|
.confirm(`是否确认提交当前选择的数据(${row.name})?`) |
|
|
|
.then(function () { |
|
|
|
return treatmentUpd(form); |
|
|
|
}) |
|
|
|