我的预约接口联调渲染,补充无数据ui

main
xuechunyuan 3 years ago
parent 0deac82a1b
commit d8eff73922
  1. BIN
      src/assets/image/no_result.jpg
  2. 7
      src/views/HomeView.vue
  3. 90
      src/views/myExam.vue

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

@ -78,7 +78,12 @@ export default {
}, },
// //
goMyBook() { goMyBook() {
this.$router.push({ name: 'MyExam' }); if(this.userInfo){
this.$router.push({ name: 'MyExam' });
}
else{
this.getUserInfo();
}
}, },
testAlert() { testAlert() {
lightAppJssdk.notification.alert({ lightAppJssdk.notification.alert({

@ -1,33 +1,38 @@
<template> <template>
<div class="my_exam"> <div class="my_exam" :style="{backgroundColor:examArr.length > 0?'#f9f9f9':'#fff'}">
<div class="exam_noresult" v-if="examArr.length < 1">
<img src="~@/assets/image/no_result.jpg"/>
<div class="no_title">查询无结果</div>
<div class="no_txt">暂无您的预约项目请选择医院后进行预约</div>
</div>
<div class="exam_box" v-for="item in examArr" :key="item.time"> <div class="exam_box" v-for="item in examArr" :key="item.time">
<div class="time_box">{{ item.time }}</div> <div class="time_box">{{ doDateFormatter(item.apmTime) }}</div>
<div class="pro_box" v-for="item1 in item.examData" :key="item1.name"> <div class="pro_box">
<div class="pro_top"> <div class="pro_top">
<div class="img_box"> <div class="img_box">
<img v-if="item1.status !== 3" src="~@/assets/image/time.png" alt="" /> <img v-if="item.apmStatus !== 1" src="~@/assets/image/time.png" alt="" />
<img v-else src="~@/assets/image/time_gray.png" alt="" /> <img v-else src="~@/assets/image/time_gray.png" alt="" />
</div> </div>
<div class="time_box"> <div class="time_box">
<div class="time_text">{{ item1.time }}</div> <div class="time_text">{{ doDateFormatter(item.apmTime) }}</div>
<div class="date_txt">{{ item1.monment }}</div> <div class="date_txt">{{ item.period + ' ' + item.timeFrame }}</div>
</div> </div>
</div> </div>
<div class="pro_bottom"> <div class="pro_bottom">
<div class="pro_left"> <div class="pro_left">
<div class="img_box"> <div class="img_box">
<img v-if="item1.status !== 3" src="~@/assets/image/pro.png" alt="" /> <img v-if="item.apmStatus !== 1" src="~@/assets/image/pro.png" alt="" />
<img v-else src="~@/assets/image/pro_gray.png" alt="" /> <img v-else src="~@/assets/image/pro_gray.png" alt="" />
</div> </div>
<div class="pro_name">{{ item1.name }}</div> <div class="pro_name">{{ item.project }}</div>
<div class="pro_pos" :class="item1.status == 1 ? 'tips' : item1.status == 3 ? 'cancel_tip' : ''"> <div class="pro_pos" :class="item.apmStatus === 0 ? 'tips' : item.apmStatus == 1 ? 'cancel_tip' : ''">
{{ item1.tip }}</div> {{ item.cuAddr }}</div>
</div> </div>
<div class="pro_right"> <div class="pro_right">
<div class="cancel" @click="cancelRegisiter(item1)" <div class="cancel" @click="cancelRegisiter(item)"
:class="item1.status == 2 ? 'finish' : item1.status == 3 ? 'cancel_item' : ''">{{ :class="item.apmStatus == 3 ? 'finish' : item.apmStatus == 1 ? 'cancel_item' : ''">{{
item1.status == 1 ? item.apmStatus == 1 ?
'取消预约' : item1.status == 2 ? '已完成' : item1.status == 3 ? '已取消' : '' '取消' : item.apmStatus == 2 ? '未报到' : item.apmStatus == 3 ? '已报到' : '取消预约'
}}</div> }}</div>
</div> </div>
</div> </div>
@ -37,31 +42,14 @@
</template> </template>
<script> <script>
import { myRecord,recordCancel } from "@/api/hospital"; import { myRecord, recordCancel } from "@/api/hospital";
import { dateFormat } from "@/utils/date";
export default { export default {
data() { data() {
return { return {
current: 1, current: 1,
size: 10, size: 10,
examArr: [ examArr: [],
{
time: '2023-02-08', examData: [
{
name: '单眼视力', monment: '上午 9:00-9:30', time: '2023-01-08', tip: '门诊楼3楼眼科门诊', status: 1
},
{
name: '听力', monment: '上午 9:00-9:30', time: '2023-01-08', tip: '门诊楼3楼耳科门诊', status: 2
}
]
},
{
time: '2022-01-15', examData: [
{
name: '单眼视力', monment: '上午 9:00-9:30', time: '2022-01-15', tip: '门诊楼3楼眼科门诊', status: 3
},
]
}
],
userInfo: null userInfo: null
} }
}, },
@ -75,16 +63,23 @@ export default {
methods: { methods: {
// //
queryMyRecord() { queryMyRecord() {
myRecord("",this.userInfo.papersnumber, this.current, this.size).then(res => { myRecord("", this.userInfo.papersnumber, this.current, this.size).then(res => {
this.examArr = res.data.records;
}) })
}, },
//
doDateFormatter(date) {
return dateFormat(new Date(date), 'yyyy-MM-dd');
},
// //
cancelRegisiter(row) { cancelRegisiter(row) {
if(row.apmStatus !== 0) {
return;
}
lightAppJssdk.notification.alert({ lightAppJssdk.notification.alert({
message: "是否取消该体检项目", message: "是否取消该体检项目",
title: "提示",// title: "提示",//
buttonName: "收到", buttonName: "确认",
success: function (data) { success: function (data) {
//onSuccessbutton //onSuccessbutton
/*回调*/ /*回调*/
@ -111,6 +106,27 @@ export default {
height: 100%; height: 100%;
background: #f9f9f9; background: #f9f9f9;
position: absolute; position: absolute;
.exam_noresult{
text-align: center;
padding-top: 2rem;
img{
width:2.56rem;
height:2.56rem;
}
.no_title{
color: #666;
font-size: 0.44rem;
font-weight: bold;
margin-bottom: 0.1rem;
}
.no_txt{
color: #999;
font-size: 0.24rem;
width:3rem;
line-height: 0.33rem;
margin:0 auto;
}
}
.exam_box { .exam_box {
background: #fff; background: #fff;

Loading…
Cancel
Save