- <template>
- <up-popup :show="show" mode="bottom" @close="close" :round="10" :closeable="true">
- <view class="popup-container">
- <view class="popup-title">服务列表</view>
- <view class="pet-list">
- <timelineService
- v-for="(item,index) in orderData"
- :key="index"
- :date="item.date"
- :status="currentStatus(item.list)"
- :list="item.list"
- :serviceBtn="false"
- />
- </view>
- </view>
- </up-popup>
- </template>
-
- <script setup>
- import { ref, defineProps, defineEmits } from 'vue';
- import timelineService from "./timelineService.vue";
-
- const props = defineProps({
- show: {
- type: Boolean,
- default: false
- },
- orderData: {
- type: Object,
- default: () => ({})
- }
- });
-
- const emit = defineEmits(['close']);
- const petList = ref([]);
-
- // 关闭弹窗
- const close = () => {
- emit('close');
- };
-
- // 获取服务时间段文本
- const getServiceTimeText = (timeCode) => {
- const timeMap = {
- 'MORNING': '早上',
- 'AFTERNOON': '下午',
- 'EVENING': '晚上'
- };
- return timeMap[timeCode] || '未指定';
- };
-
- const currentStatus = list => {
- for (var index = 0; index < list.length; index++) {
- var element = list[index];
- console.log(element);
- if(element.status != '2'){//未完成
- return true
- }
- }
- return false
- }
-
- // 更新服务列表数据
- const updateServiceList = () => {
- if (props.orderData && props.orderData.h5OrderVO) {
- }
- };
-
- // 暴露方法给父组件
- defineExpose({
- updateServiceList
- });
- </script>
-
- <style scoped lang="scss">
- .popup-container {
- padding: 30rpx;
- max-height: 70vh;
- overflow-y: auto;
- }
-
- .popup-title {
- font-size: 32rpx;
- font-weight: bold;
- text-align: center;
- margin-bottom: 30rpx;
- }
-
- .pet-list {
-
- }
- </style>
|