Commit 4ae046e5 authored by gengchunlei's avatar gengchunlei

Merge branch 'chronic-dev' of http://gitlab.yiboshi.com/nightkis1995/frontend-h5 into chronic-dev

parents 5fb9fd7b e4dce584
......@@ -54,3 +54,8 @@ export function fetchCurrencyByUuid(params) {
export function deleteVisitRecord(params) {
return fetchBase({ url: `/chronic-admin/v1/chronic-visit-record/delete`, body:params, loading: true })
}
// 专病随访风险评估
export function addEvaluationResults(params) {
return fetchBase({ url: `/chronic-admin/v1/chronic-visit-record/save-evaluation-results`, body: params, loading: true })
}
\ No newline at end of file
......@@ -59,7 +59,7 @@
<van-button round size='small' class='doc-btn-primary' @click.stop='toDetail(item)'>详情
</van-button>
<!-- 评估 -->
<van-button round size='small' class='doc-btn-primary' @click.stop='showEvaluation = true' v-if='!(item.allowUpdate !==1 || item.serveType == 5)'>评估</van-button>
<van-button round size='small' class='doc-btn-primary' @click.stop='toEvaluation(item)' v-if='!(item.allowUpdate !==1 || item.serveType == 5)'>评估</van-button>
<van-button round size='small' class='doc-btn-primary' @click.stop='editBtn(item)'
v-if='!(item.allowUpdate !==1 || item.serveType == 5)'>修改
</van-button>
......@@ -75,18 +75,50 @@
<p>暂无数据</p>
</div>
</van-pull-refresh>
<van-popup v-model:show="showEvaluation" position="bottom" :close-on-click-overlay="false">
<div class="p-4" style="height: 100%">
<div class="flex justify-between items-center mb-4 pop-title">
<div class="greyColor" @click="cancelEvaluation">取消</div>
<div>风险评估</div>
<div class="blueColor" @click="evaluationConfirm">确定</div>
</div>
<div style="height: 360px; overflow: auto">
<!-- <CheckBtn
column-1
:options="evaluationList"
v-model:value="evaluation"
:fieldNames="{ text: 'name', value: 'value' }"
/> -->
<div :class="['radio-box', evaluation === 1 ? 'active' : '']" @click="clickBtn(1)">
<span style="color: #D9001B">【红】</span>
<span>出现危急症等情况,连续随访、跟踪服务,并做好及时上转治疗</span>
</div>
<div :class="['radio-box', evaluation === 2 ? 'active' : '']" @click="clickBtn(2)">
<span style="color: #F59A23">【黄】</span>
<span>出现靶器官损害,或出现并发症,每2月随访1次</span>
</div>
<div :class="['radio-box', evaluation === 3 ? 'active' : '']" @click="clickBtn(3)">
<span style="color: #70B603">【绿】</span>
<span>无靶器官损害,无并发症</span>
</div>
</div>
</div>
</van-popup>
</div>
</template>
<script>
import { delDiagnose, deleteVisitRecord, getVisitManageList } from '@/api/doctor/disease.js'
import { delDiagnose, deleteVisitRecord, getVisitManageList, addEvaluationResults } from '@/api/doctor/disease.js'
import { useStore } from '@/doctor/store'
import { showConfirmDialog } from 'vant'
import { delHighVisit } from '@/api/doctor/highVisitApi'
import CheckBtn from '@/doctor/components/checkBtn/CheckBtn.vue'
// import CheckBtn from '@/doctor/components/checkBtn/CheckBtn.vue'
// import { showNotify } from 'vant'
import dayjs from 'dayjs'
export default {
components: { CheckBtn },
// components: { CheckBtn },
inject: ['residentInfo'],
props: {
diseaseType: Number
......@@ -103,12 +135,20 @@ export default {
loading: false,
finished: false,
loadingRefresh: false,
isRefreshDisable: false
isRefreshDisable: false,
showEvaluation: false,
evaluationList: [],
evaluation: undefined,
relationId: undefined
}
},
computed: {
residentInfoId() {
return this.residentInfo().residentInfoId
},
authInfo() {
return this.store.authInfo
}
},
created() {
......@@ -215,6 +255,42 @@ export default {
}).catch((err) => { console.warn('delBtn', err) })
},
toEvaluation(item) {
this.showEvaluation = true
this.relationId = item.relationId
},
cancelEvaluation() {
this.showEvaluation = false
this.evaluation = undefined
},
clickBtn(val) {
this.evaluation = val
},
evaluationConfirm() {
if (!this.evaluation) {
showNotify({ type: 'warning', message: '请选择风险评估项!' });
return
}
let params = {
diseaseType: this.diseaseType,
id: this.relationId,
evaluationResults: this.evaluation,
evaluationDate: dayjs().format('YYYY-MM-DD'),
evaluationUnitId: this.authInfo.unitId,
evaluationUnitName: this.authInfo.unitName,
evaluationOfficeId: this.authInfo.officeId,
evaluationOfficeName: this.authInfo.officeName,
evaluationDoctorId: this.authInfo.relationId,
evaluationDoctorName: this.authInfo.nickName
}
addEvaluationResults(params).then(res => {
this.$message.success('操作成功')
// this.showEvaluation = false
this.cancelEvaluation()
this.load()
})
}
},
watch: {
diseaseType() {
......@@ -229,5 +305,33 @@ export default {
</script>
<style lang='less' scoped>
.pop-title {
color: #262626;
font-size: 16px;
font-weight: 600;
}
.greyColor {
color: var(--van-text-color-2);
font-weight: 400;
}
.blueColor {
color: #607FF0;
font-weight: 500;
}
.radio-box {
border: 1px solid transparent;
background-color: #FAFAFA;
border-radius: 8px;
margin-bottom: 8px;
padding: 8px;
display: flex;
align-items: flex-start;
color: #262626;
line-height: 20px;
}
.radio-box.active {
border: 1px solid var(--van-primary-color);
background-color: #F0F6FF;
color: var(--van-primary-color);
}
</style>
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