Commit a3f5d86b authored by gengchunlei's avatar gengchunlei

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

 Conflicts:
	src/doctor/Doctor.vue
parents 495bf0dd 10417b01
...@@ -4,6 +4,14 @@ import { fetchBase } from '@/api/doctor/doctorFetch' ...@@ -4,6 +4,14 @@ import { fetchBase } from '@/api/doctor/doctorFetch'
export function addHypertensionForm(params) { export function addHypertensionForm(params) {
return fetchBase({ url: `/chronic-admin/v1/chronic-visit-hypertension/save`, body: params, loading: true }) return fetchBase({ url: `/chronic-admin/v1/chronic-visit-hypertension/save`, body: params, loading: true })
} }
// 修改高血压随访
export function updateHypertensionForm(params) {
return fetchBase({ url: `/chronic-admin/v1/chronic-visit-hypertension/update`, body: params, loading: true })
}
// 主键查询高血压随访信息
export function getHypertensionForm(params) {
return fetchBase({ url: `/chronic-admin/v1/chronic-visit-hypertension/record`, body: params, loading: true })
}
// 新增糖尿病随访 // 新增糖尿病随访
export function addDiabetesForm(params) { export function addDiabetesForm(params) {
......
...@@ -66,7 +66,7 @@ export default { ...@@ -66,7 +66,7 @@ export default {
if (!token) { if (!token) {
token = sessionStorage.getItem('token') token = sessionStorage.getItem('token')
if (process.env.NODE_ENV !== 'production') { if (process.env.NODE_ENV !== 'production') {
token = 'f8e1e4fc-a564-4c49-b456-08bcf6e621e0' token = 'e9fa9a17-f2ee-4746-94b5-28ddb5e3d3a3'
} }
} }
if (token) { if (token) {
......
...@@ -146,8 +146,9 @@ export default { ...@@ -146,8 +146,9 @@ export default {
if (this.diseaseInfo.diseaseType === 2) return this.store.getDict('CP00074') if (this.diseaseInfo.diseaseType === 2) return this.store.getDict('CP00074')
} }
}, },
created() { async created() {
this.getCode() // this.inspectList = await this.getCode()
// this.dataProcess()
}, },
methods: { methods: {
auxiliaryConfirm() { auxiliaryConfirm() {
...@@ -161,6 +162,7 @@ export default { ...@@ -161,6 +162,7 @@ export default {
this.form.auxiliaryExaminationName = list.join() this.form.auxiliaryExaminationName = list.join()
this.showAuxiliaryExamination = false this.showAuxiliaryExamination = false
console.log(this.inspectList)
let inspectList = [] let inspectList = []
this.form.auxiliaryExamination.forEach(item => { this.form.auxiliaryExamination.forEach(item => {
const items = this.inspectList.filter(e => e.insType === item) const items = this.inspectList.filter(e => e.insType === item)
...@@ -174,29 +176,32 @@ export default { ...@@ -174,29 +176,32 @@ export default {
}, },
getCode() { getCode() {
getInspectCode(1).then(res => { return new Promise((resolve, reject) => {
// this.inspectList = res.data getInspectCode(1).then(res => {
let list = res.data.filter(item => !(item.insType === 4 && item.itemCode === 'BUN')) // 删除肾功能下的尿素氮,只保留血肌酐
this.inspectList = [ let array = res.data.filter(item => !(item.insType === 4 && item.itemCode === 'BUN'))
...list, let list = []
{ list = [
configType: 2, ...array,
insType: 99, {
insName: '心电图', configType: 2,
itemCode: '99-1', insType: 99,
itemName: null, insName: '心电图',
itemType: 2 itemCode: '99-1',
}, itemName: null,
{ itemType: 2
configType: 2, },
insType: 34, {
insName: '并发症检查', configType: 2,
itemCode: '34-1', insType: 34,
itemName: null, insName: '并发症检查',
itemType: 1 itemCode: '34-1',
} itemName: null,
] itemType: 1
console.log(666, this.inspectList) }
]
resolve(list)
})
}) })
}, },
setSelectOption(item, itemType) { setSelectOption(item, itemType) {
...@@ -245,37 +250,49 @@ export default { ...@@ -245,37 +250,49 @@ export default {
return '' return ''
} }
return `${item.itemName}(${item.itemCode}) : ` return `${item.itemName}(${item.itemCode}) : `
},
dataProcess() {
let { inspectList = [], auxiliaryExamination = [] } = this.form
let list = []
inspectList.forEach(x => {
this.inspectList.forEach(y => {
if (x.insType === y.insType && x.itemCode === y.itemCode) {
if (y.insType === 99) {
y.itemValue = parseInt(x.itemValue)
} else {
y.itemValue = x.itemValue
}
y.abnormalSituation = x.abnormalSituation
y.img = x.img
y.picturesList = x.picturesList
list.push(y)
}
})
})
let array = []
auxiliaryExamination.forEach(x => {
const items = list.filter(e => e.insType === x)
if (items.length > 0) {
array.push({
insType: items[0].insType,
insName: items[0].insName,
items: [...items]
})
}
})
this.viewData = array
console.log(888, this.inspectList)
} }
}, },
watch: { watch: {
'form.inspectList': { 'form.inspectList': {
handler() { async handler() {
// this.viewData = this.form.inspectList this.inspectList = await this.getCode()
let { inspectList = [], auxiliaryExamination = [] } = this.form this.dataProcess()
let list = [] console.log(this.form)
inspectList.forEach(x => { },
this.viewData.forEach(y => { immediate: true
if (x.insType === y.insType && x.itemCode === y.itemCode) {
list.push(y)
}
})
})
let array = []
let strToArrNum = auxiliaryExamination.split(',').map(e => +e)
strToArrNum.forEach(x => {
const items = list.filter(e => e.insType === x)
if (items.length > 0) {
array.push({
insType: items[0].insType,
insName: items[0].insName,
items: [...items]
})
}
})
this.form.auxiliaryExamination = strToArrNum
this.viewData = array
}
} }
} }
} }
......
...@@ -197,6 +197,7 @@ export default { ...@@ -197,6 +197,7 @@ export default {
'form.medicateCase': { 'form.medicateCase': {
handler() { handler() {
this.medicateCase = JSON.parse(this.form.medicateCase) this.medicateCase = JSON.parse(this.form.medicateCase)
console.log(123, this.medicateCase)
} }
} }
} }
......
...@@ -52,7 +52,7 @@ import StrokeForm from './components/StrokeForm.vue' ...@@ -52,7 +52,7 @@ import StrokeForm from './components/StrokeForm.vue'
import CopdForm from './components/CopdForm.vue' import CopdForm from './components/CopdForm.vue'
import ChronicKidneyDiseaseForm from './components/ChronicKidneyDiseaseForm.vue' import ChronicKidneyDiseaseForm from './components/ChronicKidneyDiseaseForm.vue'
import DyslipidemiaForm from './components/DyslipidemiaForm.vue' import DyslipidemiaForm from './components/DyslipidemiaForm.vue'
import { addHypertensionForm, addDiabetesForm, updateDiabetesForm, addCoronaryHeartDiseaseForm, updateCoronaryHeartDiseaseForm, addStrokeForm, updateStrokeForm, addCopdForm, updateCopdForm, addChronicKidneyDiseaseForm, updateChronicKidneyDiseaseForm, addDyslipidemiaForm, updateDyslipidemiaForm } from '@/api/doctor/separateFU' import { addHypertensionForm, updateHypertensionForm, addDiabetesForm, updateDiabetesForm, addCoronaryHeartDiseaseForm, updateCoronaryHeartDiseaseForm, addStrokeForm, updateStrokeForm, addCopdForm, updateCopdForm, addChronicKidneyDiseaseForm, updateChronicKidneyDiseaseForm, addDyslipidemiaForm, updateDyslipidemiaForm } from '@/api/doctor/separateFU'
export default { export default {
components: { HypertensionForm, DiabetesForm, CoronaryHeartDiseaseForm, StrokeForm, CopdForm, ChronicKidneyDiseaseForm, DyslipidemiaForm }, components: { HypertensionForm, DiabetesForm, CoronaryHeartDiseaseForm, StrokeForm, CopdForm, ChronicKidneyDiseaseForm, DyslipidemiaForm },
props: { props: {
...@@ -101,7 +101,8 @@ export default { ...@@ -101,7 +101,8 @@ export default {
let { id } = this.$route.query let { id } = this.$route.query
if (this.diseaseInfo.diseaseType === 1) { if (this.diseaseInfo.diseaseType === 1) {
const hypertensionForm = await this.$refs.hypertensionForm.submit() const hypertensionForm = await this.$refs.hypertensionForm.submit()
return await addHypertensionForm({ let fun = id ? updateHypertensionForm : addHypertensionForm
return await fun({
...form, ...form,
...hypertensionForm ...hypertensionForm
}, true) }, true)
......
...@@ -1515,7 +1515,8 @@ export default { ...@@ -1515,7 +1515,8 @@ export default {
this.$refs.form.validate().then(() => { this.$refs.form.validate().then(() => {
const form = fetchDataHandle(this.form, { const form = fetchDataHandle(this.form, {
symptom: 'arrToStr', symptom: 'arrToStr',
currentDiagnosis: 'arrToStr' currentDiagnosis: 'arrToStr',
auxiliaryExamination: 'arrToStr'
}) })
resolve(form) resolve(form)
}).catch(e => { }).catch(e => {
...@@ -1530,7 +1531,8 @@ export default { ...@@ -1530,7 +1531,8 @@ export default {
getDiabetesForm({ id }).then(res => { getDiabetesForm({ id }).then(res => {
const form = fetchDataHandle(res.data, { const form = fetchDataHandle(res.data, {
symptom: 'strToArrNum', symptom: 'strToArrNum',
currentDiagnosis: 'strToArrNum' currentDiagnosis: 'strToArrNum',
auxiliaryExamination: 'strToArrNum'
}) })
this.form = form this.form = form
// 下次随访日期 // 下次随访日期
......
...@@ -783,6 +783,10 @@ ...@@ -783,6 +783,10 @@
</div> </div>
</div> </div>
</van-popup> </van-popup>
<!-- 药物治疗 -->
<TreatmentPlan ref="treatmentPlan" :form="form"></TreatmentPlan>
<!-- 转诊 --> <!-- 转诊 -->
<div class="label-title mt-2" required>转诊</div> <div class="label-title mt-2" required>转诊</div>
<van-field :rules="rules.isReferral" style="padding: 0"> <van-field :rules="rules.isReferral" style="padding: 0">
...@@ -853,14 +857,12 @@ ...@@ -853,14 +857,12 @@
<!-- 现场随访照片 --> <!-- 现场随访照片 -->
<div class="label-title mt-2">现场随访照片</div> <div class="label-title mt-2">现场随访照片</div>
<DocImageUpload <DocImageUpload
description="最多支持上传8个文件,支持上传图片或PDF文件,图片支持上传jpg、png、jpeg格式,文件大小请勿超过10M。" :imageData="form.visitImageList"
lengthMessage="抱歉,最多可上传8个文件。"
:imageData="[]"
@change="(ids, option) => form.visitImage = ids" @change="(ids, option) => form.visitImage = ids"
:maxLength="8" :maxLength="8"
/> />
<!-- 下次随访日期 --> <!-- 下次随访日期 -->
<div class="label-title" required>下次随访日期</div> <div class="label-title mt-2" required>下次随访日期</div>
<van-field <van-field
v-model="form.nextVisitDate" v-model="form.nextVisitDate"
isLink isLink
...@@ -955,6 +957,7 @@ ...@@ -955,6 +957,7 @@
import { useStore } from '@/doctor/store' import { useStore } from '@/doctor/store'
import CheckBtn from '@/doctor/components/checkBtn/CheckBtn.vue' import CheckBtn from '@/doctor/components/checkBtn/CheckBtn.vue'
import { checkboxReject, calculateBMI, fetchDataHandle } from '@/utils/common' import { checkboxReject, calculateBMI, fetchDataHandle } from '@/utils/common'
import { getHypertensionForm } from '@/api/doctor/separateFU'
import BloodPressurePanel from '@/doctor/components/bloodPressure/BloodPressurePanel.vue' import BloodPressurePanel from '@/doctor/components/bloodPressure/BloodPressurePanel.vue'
import BloodPressureBt from '@/doctor/components/bloodPressure/BloodPressureBt.vue' import BloodPressureBt from '@/doctor/components/bloodPressure/BloodPressureBt.vue'
import DocImageUpload from '@/doctor/components/docImageUpload/DocImageUpload.vue' import DocImageUpload from '@/doctor/components/docImageUpload/DocImageUpload.vue'
...@@ -963,8 +966,10 @@ import DocOffice from '@/doctor/components/docOffice/DocOffice.vue' ...@@ -963,8 +966,10 @@ import DocOffice from '@/doctor/components/docOffice/DocOffice.vue'
import DocOfficeDoctor from '@/doctor/components/docOfficeDoctor/DocOfficeDoctor.vue' import DocOfficeDoctor from '@/doctor/components/docOfficeDoctor/DocOfficeDoctor.vue'
import Inspect from '../../components/Inspect.vue' import Inspect from '../../components/Inspect.vue'
import TreatmentPlan from '../../components/TreatmentPlan.vue'
import dayjs from 'dayjs'
export default { export default {
components: { CheckBtn, BloodPressurePanel, BloodPressureBt, DocImageUpload, DocUnit, DocOffice, DocOfficeDoctor, Inspect }, components: { CheckBtn, BloodPressurePanel, BloodPressureBt, DocImageUpload, DocUnit, DocOffice, DocOfficeDoctor, Inspect, TreatmentPlan },
inject: ['pressureObj'], inject: ['pressureObj'],
props: { props: {
diseaseInfo: { diseaseInfo: {
...@@ -1318,8 +1323,13 @@ export default { ...@@ -1318,8 +1323,13 @@ export default {
showVisitDoctor: false showVisitDoctor: false
} }
}, },
computed: {
authInfo() {
return this.store.authInfo
}
},
created() { created() {
this.getInfo()
}, },
methods: { methods: {
checkboxReject, checkboxReject,
...@@ -1397,7 +1407,8 @@ export default { ...@@ -1397,7 +1407,8 @@ export default {
const form = fetchDataHandle(this.form, { const form = fetchDataHandle(this.form, {
symptom: 'arrToStr', symptom: 'arrToStr',
currentDiagnosis: 'arrToStr' currentDiagnosis: 'arrToStr',
auxiliaryExamination: 'arrToStr'
}) })
resolve({ resolve({
...@@ -1408,6 +1419,39 @@ export default { ...@@ -1408,6 +1419,39 @@ export default {
}) })
}) })
},
getInfo() {
let { id } = this.$route.query
if (id) {
getHypertensionForm({ id }).then(res => {
const form = fetchDataHandle(res.data, {
symptom: 'strToArrNum',
currentDiagnosis: 'strToArrNum',
auxiliaryExamination: 'strToArrNum'
})
this.form = form
// 下次随访日期
this.form._nextVisitDate = this.form.nextVisitDate.split('-')
// 随访日期
this.form._visitDate = this.form.visitDate.split('-')
})
} else {
// 随访日期
this.form.visitDate = dayjs().format('YYYY-MM-DD')
// 随访单位
this.form.visitUnitId = this.authInfo.unitId
this.form.visitUnitName = this.authInfo.unitName
// 随访科室
this.form.visitOfficeId = this.authInfo.officeId
this.form.visitOfficeName = this.authInfo.officeName
// 随访医生
this.form.visitDoctorId = this.authInfo.relationId
this.form.visitDoctorName = this.authInfo.nickName
// this.insulinDosage = this.store.getDict('CP00123')
// console.log(this.insulinDosage)
}
} }
}, },
watch: { watch: {
......
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