From 498e71eb8ce7db34e54f64dc2c83e8edc49c54a3 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 08 五月 2024 10:40:06 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
---
h5/pages/meeting/index/index.vue | 487 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 487 insertions(+), 0 deletions(-)
diff --git a/h5/pages/meeting/index/index.vue b/h5/pages/meeting/index/index.vue
new file mode 100644
index 0000000..e25acbc
--- /dev/null
+++ b/h5/pages/meeting/index/index.vue
@@ -0,0 +1,487 @@
+<template>
+ <view class="container">
+ <!-- 鑷畾涔夊ご閮� -->
+ <navigation Title="鏅鸿兘浼氳瀹�"></navigation>
+ <you-scroll ref="scroll" @onPullDown="onPullDown" @More="More">
+ <!-- 閫氱煡鍏憡 -->
+ <view class="container_a" @click="jump">
+ <view class="container_a_left">
+ <image src="@/static/meeting/icon/home_ic_notice@2x.png" mode="widthFix"></image>
+ </view>
+ <view class="container_a_right">
+ <text>{{news.title}}</text>
+ <text>{{news.createDate ? news.createDate.substring(0, 10) : ''}}</text>
+ </view>
+ </view>
+
+ <!-- 灞曚綅 -->
+ <view class="zw"></view>
+
+ <!-- 鏃ュ巻 -->
+ <view class="container_b">
+ <Calendar
+ ref="Calendar"
+ :currentTime='currentTime1'
+ :mark='mark'
+ :showLunar="false"
+ @dayChange='dayChange'
+ @monthChange='monthChange'
+ :rangeMode='false'
+ :maskColor="'#ffffff'"
+ :dateStart='dateStart'
+ :dateEnd='dateEnd'
+ :canDrag='false'>
+ </Calendar>
+ </view>
+
+ <!-- 浠婃棩浼氳 -->
+ <view class="container_c">
+ <view class="container_c_head">
+ <view class="container_c_head_left">
+ <view class="container_c_head_left_h"></view>
+ <text>褰撴棩浼氳</text>
+ </view>
+ <view class="container_c_head_right" @click="show = true">
+ <text>{{roomName.length > 10 ? roomName.substring(0, 8) + '...' : roomName}}</text>
+ <image src="@/static/meeting/icon/ar_open@2x.png" mode="widthFix"></image>
+ </view>
+ </view>
+ <view class="container_c_list" v-if="list && list.length > 0">
+ <view class="container_c_list_item" v-for="(item, index) in list" :key="index" @click="jumpRoom(item.id)">
+ <view class="top">
+ <view class="top_left">
+ {{item.meetingName}}
+ </view>
+ <view class="top_right" v-if="getDay === item.meetingDate && item.meetingStatus === 1">
+ 鍗冲皢寮�濮�
+ </view>
+ <view class="top_right" v-else-if="getDay !== item.meetingDate && item.meetingStatus === 1">
+ 鏈紑濮�
+ </view>
+ <view class="top_right jx" v-else-if="item.meetingStatus === 2">
+ 杩涜涓�
+ </view>
+ <view class="top_right des" v-else-if="item.meetingStatus === 3">
+ 宸茬粨鏉�
+ </view>
+ </view>
+ <view class="item_zw"></view>
+ <view class="item_info">
+ <view class="item_info_label">浼氳鏃堕棿锛�</view>
+ <view class="item_info_content">{{item.meetingTime}}</view>
+ </view>
+ <view class="item_info">
+ <view class="item_info_label">浼氳瀹わ細</view>
+ <view class="item_info_content">{{item.roomName}}</view>
+ </view>
+ <view class="item_info">
+ <view class="item_info_label">棰勭害浜猴細</view>
+ <view class="item_info_content">{{item.bookingUser}}</view>
+ </view>
+ </view>
+ </view>
+ <view class="container_c_list" v-else>
+ <view class="container_c_list_wu">
+ <image src="@/static/meeting/common/364.png" mode="widthFix"></image>
+ </view>
+ </view>
+ </view>
+ </you-scroll>
+
+
+ <!-- 浼氳閫夋嫨 -->
+ <u-picker :show="show" @cancel="show = false" keyName="name" @confirm="confirm" :columns="columns"></u-picker>
+
+ <!-- 搴曢儴瀵艰埅 -->
+ <Tabbar :current="'0'"></Tabbar>
+ </view>
+</template>
+
+<script>
+ import youScroll from '@/components/you-scroll'
+ import Calendar from '@/components/Li-Calendar/Li-Calendar.vue';
+ import { getDay } from '@/utils/utils.js'
+ export default {
+ data() {
+ return {
+ show: false,
+ columns: [],
+ mark: [],
+ currentTime: '',
+ currentTime1: '',
+ title: 'Hello',
+ dateStart: '1999-05-01',
+ dateEnd: '2999-06-15',
+ roomName: '鍏ㄩ儴浼氳瀹�',
+ roomId: '',
+
+ page: 0,
+ next: false,
+ list: [],
+
+ news: []
+ }
+ },
+ components: { Calendar, youScroll },
+ onLoad() {
+ this.page = 0
+ this.next = false
+ this.list = []
+ this.mark = []
+ this.columns = []
+ this.currentTime = getDay().date
+ this.currentTime1 = getDay().date
+ this.$refs.Calendar.currentSelectTime = getDay().day
+ this.getRoom()
+ this.getNews()
+ this.getRoomList()
+ this.getDateNum()
+ },
+ onReachBottom(){
+ this.getRoomList()
+ },
+ methods: {
+ async onPullDown(done) {
+ this.page = 0
+ this.next = false
+ this.list = []
+ this.mark = []
+ this.columns = []
+ this.currentTime = getDay().date
+ this.currentTime1 = getDay().date
+ this.$refs.Calendar.currentSelectTime = getDay().day
+ await this.getRoom()
+ await this.getNews()
+ await this.getRoomList()
+ await this.getDateNum()
+ await done()
+ },
+ jumpRoom(id) {
+ uni.navigateTo({
+ url: `/packagesMine/meetingDetails/meetingDetails?id=${id}`
+ });
+ },
+ // 鑾峰彇鏌愭湀棰勭害鏃ユ湡
+ getDateNum() {
+ console.log('substring', this.currentTime1)
+ this.mark = []
+ this.$u.api.monthMeeting({
+ yearMonth: this.currentTime1.substring(0, 7)
+ }).then(res => {
+ res.data.forEach(item => {
+ // let day = new Date(getDay().date).getTime()
+ // let date = new Date(item.monthDate).getTime()
+ // date >= day &&
+ if (item.meetingNum > 0) {
+ this.mark.push({
+ time: item.monthDate,
+ markPoint: true,
+ pointText: item.meetingNum
+ })
+ }
+ })
+ })
+ },
+ getNews() {
+ this.$u.api.findNewNotice({})
+ .then(res => {
+ if (res.data) {
+ this.news = res.data
+ }
+ })
+ },
+ getRoomList() {
+ if (!this.next) {
+ this.page = this.page + 1
+ this.$u.api.myMeetingPage({
+ capacity: 10,
+ page: this.page,
+ model: {
+ queryDate: this.currentTime,
+ roomsId: this.roomId,
+ queryType: 1
+ }
+ }).then(res => {
+ if (res.data.records.length > 0) {
+ this.list = [...this.list, ...res.data.records]
+ }
+ if (res.data.records.length < 10) {
+ this.next = true
+ }
+ })
+ }
+ },
+ jump() {
+ uni.navigateTo({
+ url: '/packagesMine/notice/notice'
+ });
+ },
+ getRoom() {
+ this.$u.api.roomsList({})
+ .then(res => {
+ let room = []
+ room = res.data
+ room.unshift({ name: '鍏ㄩ儴浼氳瀹�', id: '' })
+ this.columns.push(res.data)
+ })
+ },
+ confirm(e) {
+ this.roomName = e.value[0].name
+ this.roomId = e.value[0].id
+ this.show = false
+ this.list = []
+ this.page = 0
+ this.next = false
+ this.getRoomList()
+ },
+ // 鐐瑰嚮鏌愬ぉ
+ dayChange(data){
+ console.log(data)
+ let date = data.time
+ let yyyy = data.time.substring(0, 4)
+ let mm = Number(data.time.substring(data.time.indexOf('-') + 1, data.time.lastIndexOf('-')))
+ let dd = Number(data.time.substring(data.time.lastIndexOf('-') + 1, data.time.length))
+ mm = mm < 10 ? `0${mm}` : mm
+ dd = dd < 10 ? `0${dd}` : dd
+ let riqi = `${yyyy}-${mm}-${dd}`
+ this.currentTime = riqi
+ this.list = []
+ this.next = false
+ this.page = 0
+ this.getRoomList()
+ },
+ // 涓嬩竴鏈�
+ monthChange(data){
+ let date = data.date.replace(/[/]/g, '-')
+ let yyyy = date.substring(0, 4)
+ let mm = Number(date.substring(date.indexOf('-') + 1, date.lastIndexOf('-')))
+ let dd = Number(date.substring(date.lastIndexOf('-') + 1, date.length))
+ mm = mm < 10 ? `0${mm}` : mm
+ dd = dd < 10 ? `0${dd}` : dd
+ let riqi = `${yyyy}-${mm}-${dd}`
+ console.log('鏃ユ湡', riqi)
+ this.currentTime1 = riqi
+ this.getDateNum()
+ },
+ setRangeMode(){
+ this.rangeMode = !this.rangeMode;
+ }
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .container {
+ width: 100%;
+ background-color: #fff;
+ .container_a {
+ width: 100%;
+ height: 80rpx;
+ background: #FFFFFF;
+ display: flex;
+ align-items: center;
+ padding: 0 30rpx;
+ box-sizing: border-box;
+ .container_a_left {
+ width: 40rpx;
+ height: 40rpx;
+ flex-shrink: 0;
+ margin-right: 20rpx;
+ image {
+ width: 100%;
+ height: 100%;
+ }
+ }
+ .container_a_right {
+ flex: 1;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ flex-wrap: wrap;
+ text {
+ &:first-child {
+ width: 400rpx;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ font-size: 26rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #333333;
+ }
+ &:last-child {
+ flex-shrink: 0;
+ font-size: 24rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #999999;
+ }
+ }
+ }
+ }
+ .zw {
+ width: 100%;
+ height: 20rpx;
+ background: #F7F7F7;
+ }
+ .container_b {
+ width: 100%;
+ padding: 30rpx;
+ background: #FFFFFF;
+ padding-top: 20rpx;
+ box-sizing: border-box;
+ }
+ .container_c {
+ width: 100%;
+ padding: 30rpx;
+ box-sizing: border-box;
+ display: flex;
+ flex-direction: column;
+ background-color: #F7F7F7;
+ .container_c_head {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ .container_c_head_left {
+ display: flex;
+ align-items: center;
+ .container_c_head_left_h {
+ width: 6rpx;
+ height: 32rpx;
+ background: #0055FF;
+ border-radius: 4rpx;
+ margin-right: 16rpx;
+ }
+ text {
+ font-size: 32rpx;
+ font-family: PingFangSC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #222222;
+ }
+ }
+ .container_c_head_right {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ // width: 200rpx;
+ padding: 0 20rpx;
+ box-sizing: border-box;
+ height: 52rpx;
+ background: #FFFFFF;
+ border-radius: 26rpx;
+ border: 2rpx solid #EEEEEE;
+ box-sizing: border-box;
+ text {
+ font-size: 24rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #333333;
+ margin-right: 22rpx;
+ }
+ image {
+ width: 20rpx;
+ height: 10rpx;
+ }
+ }
+ }
+ .container_c_list {
+ width: 100%;
+ margin-top: 32rpx;
+ display: flex;
+ flex-direction: column;
+ .container_c_list_wu {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-top: 50rpx;
+ image {
+ width: 340rpx;
+ height: 364rpx;
+ }
+ }
+ .container_c_list_item {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ padding: 30rpx;
+ box-sizing: border-box;
+ background-color: #ffffff;
+ margin-bottom: 20rpx;
+ .top {
+ width: 100%;
+ height: 50rpx;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ .top_left {
+ flex: 1;
+ overflow: hidden;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ font-size: 32rpx;
+ font-family: PingFangSC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #222222;
+ }
+ .des {
+ color: #999999 !important;
+ border: 2rpx solid #999999 !important;
+ }
+ .jx {
+ color: #F62710 !important;
+ border: 2rpx solid #F62710 !important;
+ }
+ .top_right {
+ flex-shrink: 0;
+ margin-left: 20rpx;
+ // width: 104rpx;
+ padding: 4rpx 8rpx;
+ // height: 38rpx;
+ border-radius: 4rpx;
+ border: 2rpx solid #0055FF;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 22rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #0055FF;
+ }
+ }
+ .item_zw {
+ width: 100%;
+ height: 2rpx;
+ background-color: #E5E5E5;
+ margin: 28rpx 0 30rpx 0;
+ }
+ .item_info {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-top: 24rpx;
+ &:first-child {
+ margin-top: 0 !important;
+ }
+ .item_info_label {
+ flex-shrink: 0;
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #666666;
+ }
+ .item_info_content {
+ flex: 1;
+ font-size: 28rpx;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #333333;
+ }
+ }
+ }
+ }
+ }
+ }
+</style>
--
Gitblit v1.9.3