fix: 智聪健康管理,统计页面,新增tab按钮。

This commit is contained in:
tianyongbao
2025-02-21 13:45:10 +08:00
parent 5f97ea63a5
commit c6214e05a3
5 changed files with 295 additions and 4 deletions

View File

@@ -153,7 +153,14 @@
</div>
<div></div>
</div>
<u-list :spaceHeight="116" lowerThreshold="100">
<div style="margin:8px">
<button :type="firstType" style="margin-right:5px" size=mini @click="btFirstClick">明细</button>
<button :type="secondType" size=mini @click="btSecondClick">医院</button>
<button :type="thirdType" size=mini @click="btThirdClick">科室</button>
<button :type="fourType" size=mini @click="btFourClick">大夫</button>
<button :type="fiveType" size=mini @click="btFiveClick">费用</button>
</div>
<u-list v-show="firstTabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">
<view class="list-item">
<view class="item-header">
@@ -189,6 +196,58 @@
<view>
</view>
</u-list>
<u-list v-show="secondTabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in secondListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.hospitalName+' '+item.count+' 次'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-list v-show="thirdTabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in thirdListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.departments+' '+item.count+' 次'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-list v-show="fourTabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in fourListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.hospitalName+' '+item.doctor +' '+item.count+' 次'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-list v-show="fiveTabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in fiveListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.time+' 花费 '+item.value+' 元'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-picker itemHeight="88" :show="settingPickShow" :columns="settingColumns" keyName="settingName"
@confirm="settingConfirm" @cancel="settingCancel"></u-picker>
<u-picker itemHeight="88" :show="showPerson" :columns="personList" keyName="name" @cancel="handlePersonCancel"
@@ -226,6 +285,95 @@ const timeShow= ref(false)
const time =ref( Number(new Date()))
const flag= ref(true)
const doctor = ref({})
const firstTabShow = ref(true)
const secondTabShow = ref(false)
const thirdTabShow = ref(false)
const fourTabShow = ref(false)
const fiveTabShow = ref(false)
const firstType = ref("primary")
const secondType = ref("default")
const thirdType = ref("default")
const fourType = ref("default")
const fiveType = ref("default")
const secondListData = ref([])
const thirdListData = ref([])
const fourListData = ref([])
const fiveListData = ref([])
function btFirstClick() {
firstType.value="primary"
secondType.value="default"
thirdType.value="default"
fourType.value="default"
fiveType.value="default"
firstTabShow.value=true
secondTabShow.value=false
thirdTabShow.value=false
fourTabShow.value=false
fiveTabShow.value=false
}
function btSecondClick() {
firstType.value="default"
secondType.value="primary"
thirdType.value="default"
fourType.value="default"
fiveType.value="default"
firstTabShow.value=false
secondTabShow.value=true
thirdTabShow.value=false
fourTabShow.value=false
fiveTabShow.value=false
}
function btThirdClick() {
firstType.value="default"
secondType.value="default"
thirdType.value="primary"
fourType.value="default"
fiveType.value="default"
firstTabShow.value=false
secondTabShow.value=false
thirdTabShow.value=true
fourTabShow.value=false
fiveTabShow.value=false
}
function btFourClick() {
firstType.value="default"
secondType.value="default"
thirdType.value="default"
fourType.value="primary"
fiveType.value="default"
firstTabShow.value=false
secondTabShow.value=false
thirdTabShow.value=false
fourTabShow.value=true
fiveTabShow.value=false
}
function btFiveClick() {
firstType.value="default"
secondType.value="default"
thirdType.value="default"
fourType.value="default"
fiveType.value="primary"
firstTabShow.value=false
secondTabShow.value=false
thirdTabShow.value=false
fourTabShow.value=false
fiveTabShow.value=true
}
const data = reactive({
filterPanel: false,
queryPersonParams: {
@@ -308,6 +456,15 @@ function searchSubmit() {
queryParams.value.time = ''
}
function resetListData() {
secondListData.value = []
thirdListData.value = []
listData.value = []
fourListData.value =[]
fiveListData.value = []
}
function getList() {
// 使用状态
@@ -316,7 +473,12 @@ function getList() {
})
getDoctorAnalysis({...queryParams.value }).then(res => {
doctor.value = { ...res.data }
resetListData()
listData.value = listData.value.concat(res.data.doctorTableList)
secondListData.value = secondListData.value.concat(res.data.hospitalStaticList)
thirdListData.value = thirdListData.value.concat(res.data.departStaticList)
fourListData.value = fourListData.value.concat(res.data.doctorStaticList)
fiveListData.value = fiveListData.value.concat(res.data.doctorCostList)
}).catch(() => {
})
}
@@ -336,6 +498,10 @@ function getDict() {
getDoctorAnalysis({...queryParams.value }).then(res => {
doctor.value = { ...res.data }
listData.value = listData.value.concat(res.data.doctorTableList)
secondListData.value = secondListData.value.concat(res.data.hospitalStaticList)
thirdListData.value = thirdListData.value.concat(res.data.departStaticList)
fourListData.value = fourListData.value.concat(res.data.doctorStaticList)
fiveListData.value = fiveListData.value.concat(res.data.doctorCostList)
}).catch(() => {
})

View File

@@ -159,7 +159,11 @@
</div>
<div></div>
</div>
<u-list :spaceHeight="116" lowerThreshold="100">
<div style="margin:8px">
<button :type="firstType" style="margin-right:5px" size=mini @click="btFirstClick">档案明细</button>
<button :type="secondType" type="primary" size=mini @click="btSecondClick">费用明细</button>
</div>
<u-list v-show="!tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">
<view class="list-item">
<view class="item-header">
@@ -203,6 +207,19 @@
<view>
</view>
</u-list>
<u-list v-show="tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.name+' 花费 '+item.doctorCost+' 元'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-picker itemHeight="88" :show="settingPickShow" :columns="settingColumns" keyName="settingName"
@confirm="settingConfirm" @cancel="settingCancel"></u-picker>
<u-picker itemHeight="88" :show="showPerson" :columns="personList" keyName="name" @cancel="handlePersonCancel"
@@ -240,6 +257,12 @@ const timeShow= ref(false)
const time =ref( Number(new Date()))
const flag= ref(true)
const record = ref({})
const tabShow = ref(false)
const firstType = ref("primary")
const secondType = ref("default")
const secondListData = ref([])
const data = reactive({
filterPanel: false,
queryPersonParams: {
@@ -276,6 +299,18 @@ onLoad(() => {
isShow.value = false
}
});
function btFirstClick() {
tabShow.value=false
firstType.value="primary"
secondType.value="default"
}
function btSecondClick() {
secondType.value="primary"
firstType.value="default"
tabShow.value=true
}
function formatMultiLineData(data) {
if (data != null) {
@@ -316,7 +351,10 @@ function getList() {
getRecordAnalysis({...queryParams.value }).then(res => {
record.value = { ...res.data }
listData.value=[]
secondListData.value=[]
listData.value = listData.value.concat(res.data.recordList)
secondListData.value = secondListData.value.concat(res.data.recordCostList)
}).catch(() => {
})
}
@@ -336,6 +374,7 @@ function getDict() {
getRecordAnalysis({...queryParams.value }).then(res => {
record.value = { ...res.data }
listData.value = listData.value.concat(res.data.recordList)
secondListData.value = secondListData.value.concat(res.data.recordCostList)
}).catch(() => {
})

View File

@@ -234,7 +234,11 @@
<div></div>
</div>
<u-list :spaceHeight="116" lowerThreshold="100">
<div style="margin:8px">
<button :type="firstType" style="margin-right:5px" size=mini @click="btFirstClick">用药明细</button>
<button :type="secondType" type="primary" size=mini @click="btSecondClick">用药次数</button>
</div>
<u-list v-show="!tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">
<view class="list-item">
<view class="item-header">
@@ -258,6 +262,19 @@
<view>
</view>
</u-list>
<u-list v-show="tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in secondListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.time+' 用药 '+item.value+' 次'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-picker itemHeight="88" :show="settingPickShow" :columns="settingColumns" keyName="settingName"
@confirm="settingConfirm" @cancel="settingCancel"></u-picker>
<u-picker itemHeight="88" :show="showPerson" :columns="personList" keyName="name" @cancel="handlePersonCancel"
@@ -295,6 +312,12 @@ const timeShow= ref(false)
const time =ref( Number(new Date()))
const flag= ref(true)
const mar = ref({})
const tabShow = ref(false)
const firstType = ref("primary")
const secondType = ref("default")
const secondListData = ref([])
const data = reactive({
filterPanel: false,
queryPersonParams: {
@@ -331,6 +354,18 @@ onLoad(() => {
isShow.value = false
}
});
function btFirstClick() {
tabShow.value=false
firstType.value="primary"
secondType.value="default"
}
function btSecondClick() {
secondType.value="primary"
firstType.value="default"
tabShow.value=true
}
function formatMultiLineData(data) {
if (data != null) {
@@ -371,7 +406,10 @@ function getList() {
getMarAnalysis({...queryParams.value }).then(res => {
mar.value = { ...res.data }
listData.value=[]
secondListData.value=[]
listData.value = listData.value.concat(res.data.marMapList)
secondListData.value = secondListData.value.concat(res.data.marList.slice().reverse())
}).catch(() => {
})
}
@@ -390,7 +428,10 @@ function getDict() {
}
getMarAnalysis({...queryParams.value }).then(res => {
mar.value = { ...res.data }
listData.value=[]
secondListData.value=[]
listData.value = listData.value.concat(res.data.marMapList)
secondListData.value = secondListData.value.concat(res.data.marList.slice().reverse())
}).catch(() => {
})

View File

@@ -147,6 +147,9 @@
</div>
</div>
<div></div>
</div>
<div style="margin:8px">
<button type="primary" style="margin-right:5px" size=mini>吃奶量统计</button>
</div>
<u-list :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">

View File

@@ -137,7 +137,11 @@
</div>
<div></div>
</div>
<u-list :spaceHeight="116" lowerThreshold="100">
<div style="margin:8px">
<button :type="firstType" style="margin-right:5px" size=mini @click="btFirstClick">体温统计</button>
<button :type="secondType" type="primary" size=mini @click="btSecondClick">体温明细</button>
</div>
<u-list v-show="!tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in listData" :key="index">
<view class="list-item">
<view class="item-header">
@@ -165,6 +169,19 @@
<view>
</view>
</u-list>
<u-list v-show="tabShow" :spaceHeight="116" lowerThreshold="100">
<u-list-item v-for="(item, index) in secondListData" :key="index">
<view class="list-item">
<view class="item-header">
<u--text lines="2"
:text="item.time+' 体温 '+item.value+' ℃'" size="30rpx" color="#333333" ></u--text>
</view>
</view>
</u-list-item>
<view>
</view>
</u-list>
<u-picker itemHeight="88" :show="settingPickShow" :columns="settingColumns" keyName="settingName"
@confirm="settingConfirm" @cancel="settingCancel"></u-picker>
<u-picker itemHeight="88" :show="showPerson" :columns="personList" keyName="name" @cancel="handlePersonCancel"
@@ -202,6 +219,12 @@ const timeShow= ref(false)
const time =ref( Number(new Date()))
const flag= ref(true)
const temp = ref({})
const tabShow = ref(false)
const firstType = ref("primary")
const secondType = ref("default")
const secondListData = ref([])
const data = reactive({
filterPanel: false,
queryPersonParams: {
@@ -239,6 +262,19 @@ onLoad(() => {
}
});
function btFirstClick() {
tabShow.value=false
firstType.value="primary"
secondType.value="default"
}
function btSecondClick() {
secondType.value="primary"
firstType.value="default"
tabShow.value=true
}
function formatMultiLineData(data) {
if (data != null) {
return data.replace(/<br\/>/g, '\n')
@@ -278,7 +314,10 @@ function getList() {
getTemperatureAnalysis({...queryParams.value }).then(res => {
temp.value = { ...res.data }
listData.value=[]
secondListData.value=[]
listData.value = listData.value.concat(res.data.tableList)
secondListData.value = secondListData.value.concat(res.data.temperatureList.slice().reverse())
}).catch(() => {
})
}
@@ -297,7 +336,10 @@ function getDict() {
}
getTemperatureAnalysis({...queryParams.value }).then(res => {
temp.value = { ...res.data }
listData.value=[]
secondListData.value=[]
listData.value = listData.value.concat(res.data.tableList)
secondListData.value = secondListData.value.concat(res.data.temperatureList.slice().reverse())
}).catch(() => {
})