Merge remote-tracking branch 'origin/master'
| | |
| | | NODE_ENV = 'development' |
| | | |
| | | VUE_APP_API_URL = 'http://localhost:10010' |
| | | # VUE_APP_API_URL = 'http://192.168.31.42:10010' |
| | | VUE_APP_API_URL = 'http://10.50.250.178:8088/gateway_interface' |
| | | VUE_APP_API_URL = 'http://192.168.0.139:10010' |
| | | # VUE_APP_API_URL = 'http://10.50.250.178:8088/gateway_interface' |
| | |
| | | <template> |
| | | <GlobalAlertWindow |
| | | v-loading="isUploading" |
| | | :title="title" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <GlobalAlertWindow v-loading="isUploading" :title="title" :visible.sync="visible" :confirm-working="isWorking" |
| | | @confirm="confirm"> |
| | | <el-form :model="form" ref="form" :rules="rules" label-width="120px" label-suffix="ï¼"> |
| | | <el-form-item label="ä¼è®®å®¤åç§°" prop="name"> |
| | | <el-input v-model="form.name" placeholder="请è¾å
¥ä¼è®®å®¤åç§°" :maxlength="10" v-trim/> |
| | | <el-input v-model="form.name" placeholder="请è¾å
¥ä¼è®®å®¤åç§°" :maxlength="10" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="弿¾æ¶é´" prop="timeRange"> |
| | | <el-time-picker |
| | | is-range |
| | | value-format="HH:mm" |
| | | format="HH:mm" |
| | | v-model="timeRange" |
| | | range-separator="è³" |
| | | start-placeholder="å¼å§æ¶é´" |
| | | end-placeholder="ç»ææ¶é´" |
| | | placeholder="éæ©æ¶é´èå´" |
| | | @change="selectRange" |
| | | ></el-time-picker> |
| | | <el-time-picker is-range value-format="HH:mm" format="HH:mm" v-model="timeRange" range-separator="è³" |
| | | start-placeholder="å¼å§æ¶é´" end-placeholder="ç»ææ¶é´" placeholder="éæ©æ¶é´èå´" @change="selectRange"></el-time-picker> |
| | | </el-form-item> |
| | | <el-form-item label="ç²åº¦åé" prop="intervalTime"> |
| | | <el-input v-model="form.intervalTime" type="number" placeholder="请è¾å
¥æ¶é´ç²åº¦ï¼åéï¼" v-trim/> |
| | | <el-input v-model="form.intervalTime" type="number" placeholder="请è¾å
¥æ¶é´ç²åº¦ï¼åéï¼" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="容纳人æ°" prop="limitNum"> |
| | | <el-input v-model="form.limitNum" type="number" placeholder="请è¾å
¥å®¹çº³äººæ°" v-trim/> |
| | | <el-input v-model="form.limitNum" type="number" placeholder="请è¾å
¥å®¹çº³äººæ°" v-trim /> |
| | | </el-form-item> |
| | | <el-form-item label="管çå" prop="sysList"> |
| | | <el-select |
| | | v-model="form.sysList" |
| | | filterable |
| | | multiple |
| | | clearable |
| | | placeholder="è¯·éæ©é¨é¨" |
| | | > |
| | | <!-- :label="`${item.department.name}-${item.realname}`" --> |
| | | <el-option |
| | | v-for="item in userList()" |
| | | :key="item.id" |
| | | :value="item.id" |
| | | :label="item.companyId?`${item.companyName}-${item.companyName}`:item.realname" |
| | | /> |
| | | <el-select v-model="form.sysList" filterable multiple clearable placeholder="è¯·éæ©é¨é¨"> |
| | | <!-- :label="`${item.department.name}-${item.realname}`" --> |
| | | <el-option v-for="item in userList()" :key="item.id" :value="item.id" |
| | | :label="item.companyId ? `${item.companyName}-${item.companyName}` : item.realname" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="æä¾æå¡é¡¹ç®" prop="projectList"> |
| | | <el-checkbox-group v-model="form.projectList"> |
| | | <el-checkbox v-for="project in projectList" :label="project.id" :key="project.id">{{project.name}}</el-checkbox> |
| | | <el-checkbox v-for="project in projectList" :label="project.id" :key="project.id">{{ project.name |
| | | }}</el-checkbox> |
| | | </el-checkbox-group> |
| | | </el-form-item> |
| | | <el-form-item label="ä¼è®®å®¤å¾ç" prop="imgurl"> |
| | | <UploadAvatarImage |
| | | :file="{ 'imgurlfull': form.imgFullUrl, 'imgurl': form.imgurl }" |
| | | :uploadData="uploadData" |
| | | @uploadSuccess="uploadAvatarSuccess" |
| | | @uploadEnd="isUploading = false" |
| | | @uploadBegin="isUploading = true" |
| | | /> |
| | | <el-form-item label="空é²å±ç¤ºå
容" prop="fileType"> |
| | | <el-radio v-model="form.fileType" @change="changeFile" :label="2">æ </el-radio> |
| | | <el-radio v-model="form.fileType" @change="changeFile" :label="0">å¾ç</el-radio> |
| | | <el-radio v-model="form.fileType" @change="changeFile" :label="1">è§é¢</el-radio> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.fileType == 0" label="å±ç¤ºå¾ç" prop="imgurl"> |
| | | <div class="upload_wrap"> |
| | | <el-upload class="avatar-uploader" accept=".png,.jpg,.jpeg" :action="uploadImgUrl" :data="uploadData" |
| | | :show-file-list="false" :on-success="handleImgSuccess"> |
| | | <div> |
| | | <i class="el-icon-plus avatar-uploader-icon"></i> |
| | | </div> |
| | | </el-upload> |
| | | <div v-for="item, i in form.multifileList" class="img_wrap"> |
| | | <img :src="item.fileurlFull" class="img"> |
| | | <i class="el-icon-error del" @click="imgDel(i)"></i> |
| | | </div> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.fileType == 1" label="å±ç¤ºè§é¢" prop="imgurl"> |
| | | <UploadAvatarVideo :file="{ 'videourlfull': form.videoFullUrl, 'videourl': form.videourl }" :uploadData="uploadData" |
| | | @uploadSuccess="uploadAvatarSuccess" @uploadEnd="isUploading = false" @uploadBegin="isUploading = true" /> |
| | | </el-form-item> |
| | | <el-form-item label="使ç¨é¡»ç¥" prop="tips"> |
| | | <el-input v-model="form.tips" type="textarea" placeholder="请è¾å
¥ä½¿ç¨é¡»ç¥" v-trim/> |
| | | <el-input v-model="form.tips" type="textarea" placeholder="请è¾å
¥ä½¿ç¨é¡»ç¥" v-trim /> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalAlertWindow> |
| | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalAlertWindow from '@/components/common/GlobalAlertWindow' |
| | | import UploadAvatarImage from '@/components/common/UploadAvatarImage' |
| | | import UploadAvatarVideo from '@/components/common/UploadAvatarVideo' |
| | | import { numRule } from '@/utils/form' |
| | | import { fetchList } from '@/api/meeting/projects' |
| | | export default { |
| | | name: 'OperaRoomsWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalAlertWindow, UploadAvatarImage }, |
| | | data () { |
| | | components: { GlobalAlertWindow, UploadAvatarVideo }, |
| | | data() { |
| | | let timeRangeRule = (rule, value, callBack) => { |
| | | if (!this.form.startTime) { |
| | | callBack(new Error('è¯·éæ©å¼å§æ¶é´')) |
| | |
| | | callBack() |
| | | } |
| | | return { |
| | | uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/visitsAdmin/cloudService/public/upload', |
| | | isUploading: false, |
| | | uploadData: { |
| | | folder: 'projects' |
| | |
| | | form: { |
| | | id: null, |
| | | sysList: [], |
| | | multifileList: [], |
| | | projectList: [], |
| | | createDate: '', |
| | | editor: '', |
| | | editDate: null, |
| | | isdeleted: 0, |
| | | fileType: 2, |
| | | name: '', |
| | | remark: '', |
| | | startTime: '', |
| | |
| | | } |
| | | }, |
| | | inject: ['userList'], |
| | | created () { |
| | | created() { |
| | | this.config({ |
| | | api: '/meeting/rooms', |
| | | 'field.id': 'id' |
| | |
| | | * @title çªå£æ é¢ |
| | | * @target ç¼è¾ç对象 |
| | | */ |
| | | open (title, target) { |
| | | open(title, target) { |
| | | this.title = title |
| | | this.visible = true |
| | | this.form.imgFullUrl = '' |
| | |
| | | console.log(target) |
| | | }) |
| | | }, |
| | | imgDel(i) { |
| | | this.form.multifileList.splice(i, 1) |
| | | }, |
| | | handleImgSuccess(res) { |
| | | const list = [...this.form.multifileList] |
| | | if (res.code == 200) { |
| | | let { data } = res |
| | | list.push({ |
| | | fileurl: data.imgaddr, |
| | | fileurlFull: data.url, |
| | | type: 0 |
| | | }) |
| | | this.$set(this.form, 'multifileList', list) |
| | | |
| | | } |
| | | }, |
| | | selectRange(v) { |
| | | // console.log(this.timeRange); |
| | | console.log(v); |
| | | console.log(v) |
| | | this.form.startTime = v[0] |
| | | this.form.endTime = v[1] |
| | | console.log(this.form.startTime, this.form.endTime); |
| | | console.log(this.form.startTime, this.form.endTime) |
| | | }, |
| | | // ä¸ä¼ å¾ç |
| | | changeFile() { |
| | | this.$set(this.form, 'multifileList', []) |
| | | }, |
| | | uploadAvatarSuccess(file) { |
| | | this.form.imgurl = file.imgurl; |
| | | this.form.imgFullUrl = file.imgurlfull; |
| | | console.log('file', file) |
| | | this.form.multifileList.push({ |
| | | fileurl: file.imgurl, |
| | | fileurlFull: file.imgurlfull, |
| | | type: 1 |
| | | }) |
| | | this.$set(this.form, 'videourl', file.imgurl) |
| | | this.$set(this.form, 'videoFullUrl', file.imgurlfull) |
| | | }, |
| | | // 确认æ°å»º |
| | | __confirmCreate () { |
| | | __confirmCreate() { |
| | | this.$refs.form.validate((valid) => { |
| | | // debugger |
| | | if (!valid) { |
| | |
| | | this.isWorking = true |
| | | let sysList = [...this.form.sysList] |
| | | sysList = sysList.map(item => { |
| | | return {userId: item} |
| | | return { userId: item } |
| | | }) |
| | | let projectList = [...this.form.projectList] |
| | | projectList = projectList.map(item => { |
| | | return {projectId: item} |
| | | return { projectId: item } |
| | | }) |
| | | this.api.create({ |
| | | ...this.form, |
| | |
| | | }) |
| | | }, |
| | | // ç¡®è®¤ä¿®æ¹ |
| | | __confirmEdit () { |
| | | __confirmEdit() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (!valid) { |
| | | return |
| | | } |
| | | console.log(this.form); |
| | | console.log(this.form) |
| | | debugger |
| | | // è°ç¨æ°å»ºæ¥å£ |
| | | this.isWorking = true |
| | | let sysList = [...this.form.sysList] |
| | | sysList = sysList.map(item => { |
| | | return {userId: item} |
| | | return { userId: item } |
| | | }) |
| | | let projectList = [...this.form.projectList] |
| | | projectList = projectList.map(item => { |
| | | return {projectId: item} |
| | | return { projectId: item } |
| | | }) |
| | | this.api.updateById({ |
| | | ...this.form, |
| | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | @import "@/assets/style/alertstyle.scss"; |
| | | $image-width: 90px; |
| | | |
| | | </style> |
| | | .upload_wrap { |
| | | display: flex; |
| | | |
| | | .img_wrap { |
| | | margin-left: 10px; |
| | | border: 1px dashed #d9d9d9; |
| | | width: $image-width; |
| | | height: $image-width; |
| | | border-radius: 6px; |
| | | position: relative; |
| | | |
| | | .img { |
| | | width: $image-width; |
| | | height: $image-width; |
| | | } |
| | | |
| | | .del { |
| | | position: absolute; |
| | | top: -6px; |
| | | right: -6px; |
| | | cursor: pointer; |
| | | color: red; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .avatar-uploader { |
| | | width: $image-width; |
| | | height: $image-width; |
| | | } |
| | | |
| | | ::v-deep .el-upload { |
| | | border: 1px dashed #d9d9d9; |
| | | border-radius: 6px; |
| | | cursor: pointer; |
| | | position: relative; |
| | | overflow: hidden; |
| | | } |
| | | |
| | | .avatar-uploader .el-upload:hover { |
| | | border-color: #409EFF; |
| | | } |
| | | |
| | | .avatar-uploader-icon { |
| | | line-height: 90px; |
| | | font-size: 28px; |
| | | color: #8c939d; |
| | | width: $image-width; |
| | | height: $image-width; |
| | | text-align: center; |
| | | } |
| | | |
| | | .avatar { |
| | | width: 90px; |
| | | max-height: 90px; |
| | | display: block; |
| | | } |
| | | </style> |
| | |
| | | "proxy" : { |
| | | "/admin_interface" : { |
| | | // è¿ä¸ªå段åéä¸ä½ é
ç½®çbasePrefixUrlä¸è´ï¼ç³»ç»è¯å«å°å¸¦æ/dev-api请æ±çå°åæ¶ï¼ä¼å¨å颿¼æ¥ä¸ä»£çæå¡å¨å°å |
| | | // "target" : "http://192.168.0.173/admin_interface", // 代çæå¡å¨ååæIPå°å |
| | | "target" : "http://192.168.0.139/admin_interface", // 代çæå¡å¨ååæIPå°å |
| | | // "target" : "http://192.168.31.42:10010", // 代çæå¡å¨ååæIPå°å |
| | | "target" : "http://10.50.250.178:8088/gateway_interface", // 代çæå¡å¨ååæIPå°å |
| | | // "target" : "http://10.50.250.178:8088/gateway_interface", // 代çæå¡å¨ååæIPå°å |
| | | "changeOrigin" : true, // å
许跨å |
| | | "pathRewrite" : { |
| | | "^/admin_interface" : "" // éåå°åï¼å¦æå®é
æ¥å£ä¸æ¯ä¸å¸¦/dev-apiï¼éè¦å°è¿ä¸ªåç¼ç½®ç©ºï¼å 为è¿ä¸ªåç¼åªæ¯ä¸ºäºè¯å«ç¨ï¼è¯å«å®ä¹å就没ç¨äº |
| | | "^/admin_interface" : "" |
| | | } |
| | | } |
| | | }, |
| | |
| | | </view>
|
| | | <!-- -->
|
| | | <view class="emyty"></view>
|
| | | <view v-if="info.status == 1 || info.status == 2" class="module_list">
|
| | | <view v-if="info.status == 1 || info.status == 2" class="module_list"> |
| | | <view class="flow_title">å¤çç»æ</view>
|
| | | <view class="item">
|
| | | <view class="label">å¤çç»æ</view>
|
| | | <view class="value primaryColor" :class="{ red: info.status == 2 }">{{ statusMap[info.status] }}</view>
|
| | |
| | | </view>
|
| | | </view>
|
| | | <view class="item">
|
| | | <view class="label">æ´æ¹è¯´æ</view>
|
| | | <view class="label">{{info.status == '1' ? 'æ´æ¹è¯´æ' : 'éå说æ'}}</view>
|
| | | <view class="value">{{ info.checkInfo }}</view>
|
| | | </view>
|
| | | </view>
|
| | |
| | | .main_app {
|
| | | background-color: #fff;
|
| | | padding-bottom: 0;
|
| | |
|
| | | .flow_title { |
| | | font-weight: 600; |
| | | font-size: 32rpx; |
| | | color: #222222; |
| | | margin-bottom: 24rpx; |
| | | }
|
| | | .flow_wrap {
|
| | | padding: 30rpx 0;
|
| | |
|
| | | .flow_title {
|
| | | font-weight: 600;
|
| | | font-size: 32rpx;
|
| | | color: #222222;
|
| | | margin-bottom: 24rpx;
|
| | | }
|
| | |
|
| | | .list {
|
| | | .item {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | .module_list {
|
| | | .module_list { |
| | | .title{ |
| | | |
| | | }
|
| | | .item {
|
| | | padding: 30rpx 0;
|
| | | border-bottom: 1rpx solid #e5e5e5;
|
¶Ô±ÈÐÂÎļþ |
| | |
| | | <script>
|
| | | export default {
|
| | | onLaunch: function() {
|
| | | console.log('App Launch')
|
| | | },
|
| | | onShow: function() {
|
| | | console.log('App Show')
|
| | | },
|
| | | onHide: function() {
|
| | | console.log('App Hide')
|
| | | }
|
| | | }
|
| | | </script>
|
| | |
|
| | | <style>
|
| | | /*æ¯ä¸ªé¡µé¢å
Œ
±css */ |
| | | view,text,image{ |
| | | box-sizing: border-box; |
| | | }
|
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { http } from '@/utils/service.js' |
| | | export * from '@/utils/config.js' |
| | | |
| | | |
| | | // |
| | | export const meetScreenData = (data) => { |
| | | return http({ |
| | | url: 'cloudService/web/meeting/meetScreenData', |
| | | method: 'get', |
| | | data |
| | | }) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="en"> |
| | | <head> |
| | | <meta charset="UTF-8" /> |
| | | <script> |
| | | var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || |
| | | CSS.supports('top: constant(a)')) |
| | | document.write( |
| | | '<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + |
| | | (coverSupport ? ', viewport-fit=cover' : '') + '" />') |
| | | </script> |
| | | <title></title> |
| | | <!--preload-links--> |
| | | <!--app-context--> |
| | | </head> |
| | | <body> |
| | | <div id="app"><!--app-html--></div> |
| | | <script type="module" src="/main.js"></script> |
| | | </body> |
| | | </html> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import App from './App' |
| | | |
| | | // #ifndef VUE3 |
| | | import Vue from 'vue' |
| | | import './uni.promisify.adaptor' |
| | | Vue.config.productionTip = false |
| | | App.mpType = 'app' |
| | | const app = new Vue({ |
| | | ...App |
| | | }) |
| | | app.$mount() |
| | | // #endif |
| | | |
| | | // #ifdef VUE3 |
| | | import { createSSRApp } from 'vue' |
| | | export function createApp() { |
| | | const app = createSSRApp(App) |
| | | return { |
| | | app |
| | | } |
| | | } |
| | | // #endif |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "name" : "h5_meeting", |
| | | "appid" : "__UNI__EF8BAA7", |
| | | "description" : "", |
| | | "versionName" : "1.0.0", |
| | | "versionCode" : "100", |
| | | "transformPx" : false, |
| | | "h5": {
|
| | | "router": {
|
| | | "mode": "hash",
|
| | | "base": "./"
|
| | | },
|
| | | // "base" : "/h5/"
|
| | | "devServer": {
|
| | | "port": 8090,
|
| | | "historyApiFallback": true,
|
| | | "disableHostCheck": true,
|
| | | "proxy": {
|
| | | "/meetingAdmin": {
|
| | | // è¿ä¸ªå段åéä¸ä½ é
ç½®çbasePrefixUrlä¸è´ï¼ç³»ç»è¯å«å°å¸¦æ/dev-api请æ±çå°åæ¶ï¼ä¼å¨å颿¼æ¥ä¸ä»£çæå¡å¨å°å
|
| | | // "target" : "http://192.168.0.173/admin_interface", // 代çæå¡å¨ååæIPå°å
|
| | | "target": "http://192.168.0.139:10010", // 代çæå¡å¨ååæIPå°å
|
| | | "changeOrigin": true, // å
许跨å |
| | | "pathRewrite": {
|
| | | "^/meetingAdmin": "" // éåå°åï¼å¦æå®é
æ¥å£ä¸æ¯ä¸å¸¦/dev-apiï¼éè¦å°è¿ä¸ªåç¼ç½®ç©ºï¼å 为è¿ä¸ªåç¼åªæ¯ä¸ºäºè¯å«ç¨ï¼è¯å«å®ä¹å就没ç¨äº
|
| | | }
|
| | | }
|
| | | },
|
| | | "https": false
|
| | | }
|
| | | }, |
| | | /* 5+Appç¹æç¸å
³ */ |
| | | "app-plus" : { |
| | | "usingComponents" : true, |
| | | "nvueStyleCompiler" : "uni-app", |
| | | "compilerVersion" : 3, |
| | | "splashscreen" : { |
| | | "alwaysShowBeforeRender" : true, |
| | | "waiting" : true, |
| | | "autoclose" : true, |
| | | "delay" : 0 |
| | | }, |
| | | /* 模åé
ç½® */ |
| | | "modules" : {}, |
| | | /* åºç¨åå¸ä¿¡æ¯ */ |
| | | "distribute" : { |
| | | /* androidæå
é
ç½® */ |
| | | "android" : { |
| | | "permissions" : [ |
| | | "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>", |
| | | "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>", |
| | | "<uses-permission android:name=\"android.permission.VIBRATE\"/>", |
| | | "<uses-permission android:name=\"android.permission.READ_LOGS\"/>", |
| | | "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>", |
| | | "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>", |
| | | "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>", |
| | | "<uses-permission android:name=\"android.permission.CAMERA\"/>", |
| | | "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>", |
| | | "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>", |
| | | "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>", |
| | | "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>", |
| | | "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>", |
| | | "<uses-feature android:name=\"android.hardware.camera\"/>", |
| | | "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>" |
| | | ] |
| | | }, |
| | | /* iosæå
é
ç½® */ |
| | | "ios" : {}, |
| | | /* SDKé
ç½® */ |
| | | "sdkConfigs" : {} |
| | | } |
| | | }, |
| | | /* å¿«åºç¨ç¹æç¸å
³ */ |
| | | "quickapp" : {}, |
| | | /* å°ç¨åºç¹æç¸å
³ */ |
| | | "mp-weixin" : { |
| | | "appid" : "", |
| | | "setting" : { |
| | | "urlCheck" : false |
| | | }, |
| | | "usingComponents" : true |
| | | }, |
| | | "mp-alipay" : { |
| | | "usingComponents" : true |
| | | }, |
| | | "mp-baidu" : { |
| | | "usingComponents" : true |
| | | }, |
| | | "mp-toutiao" : { |
| | | "usingComponents" : true |
| | | }, |
| | | "uniStatistics" : { |
| | | "enable" : false |
| | | }, |
| | | "vueVersion" : "3" |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "name": "h5_meeting", |
| | | "lockfileVersion": 3, |
| | | "requires": true, |
| | | "packages": { |
| | | "": { |
| | | "dependencies": { |
| | | "dayjs": "^1.11.13" |
| | | } |
| | | }, |
| | | "node_modules/dayjs": { |
| | | "version": "1.11.13", |
| | | "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", |
| | | "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "dependencies": { |
| | | "dayjs": "^1.11.13" |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | {
|
| | | "pages": [ //pagesæ°ç»ä¸ç¬¬ä¸é¡¹è¡¨ç¤ºåºç¨å¯å¨é¡µï¼åèï¼https://uniapp.dcloud.io/collocation/pages
|
| | | {
|
| | | "path": "pages/index/index",
|
| | | "style": {
|
| | | "navigationStyle": "custom"
|
| | | }
|
| | | }, |
| | | { |
| | | "path" : "pages/index/config", |
| | | "style" : |
| | | { |
| | | "navigationBarTitleText" : "é
ç½®" |
| | | } |
| | | }
|
| | | ],
|
| | | "globalStyle": {
|
| | | "navigationBarTextStyle": "black",
|
| | | "navigationBarTitleText": "ä¼è®®å®¤",
|
| | | "navigationBarBackgroundColor": "#F8F8F8",
|
| | | "backgroundColor": "#F8F8F8"
|
| | | },
|
| | | "uniIdRouter": {}
|
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <view class="app"> |
| | | <view class="list"> |
| | | <view class="item"> |
| | | <view class="title">ä¼è®®å®¤ç¼ç </view> |
| | | <view class="line"> |
| | | <input type="text" v-model="param.code" /> |
| | | <image src="../../static/icon/right.svg" class="icon"></image> |
| | | </view> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="title">æ¥å£å°å</view> |
| | | <view class="line"> |
| | | <input type="text" v-model="param.addr" /> |
| | | <image src="../../static/icon/right.svg" class="icon"></image> |
| | | </view> |
| | | </view> |
| | | <view class="item"> |
| | | <view class="title">æ¥å£è°ç¨é´é(ç§)</view> |
| | | <view class="line"> |
| | | <input type="text" v-model="param.time" /> |
| | | <image src="../../static/icon/right.svg" class="icon"></image> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="save" @click="handleSave">ä¿åé
ç½®</view> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | data() { |
| | | return { |
| | | param: {} |
| | | }; |
| | | }, |
| | | onLoad(){ |
| | | const param = uni.getStorageSync('param') || {} |
| | | this.param = { ...param } |
| | | }, |
| | | methods: { |
| | | handleSave() { |
| | | const param = this.param |
| | | uni.setStorageSync('param', param) |
| | | setTimeout(()=>{ |
| | | uni.showToast({ |
| | | title: 'æ´æ°é
ç½®æå',icon:'none' |
| | | }) |
| | | }) |
| | | setTimeout(()=>{ |
| | | uni.navigateBack() |
| | | }, 400) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .save{ |
| | | position: fixed; |
| | | width: 680upx; |
| | | height: 90upx; |
| | | line-height: 90upx; |
| | | background: #00B5D1; |
| | | border-radius: 7upx; |
| | | left: 35upx; |
| | | bottom: 36upx; |
| | | color: #fff; |
| | | text-align: center; |
| | | font-weight: 500; |
| | | font-size: 32rpx; |
| | | |
| | | } |
| | | .list{ |
| | | .item{ |
| | | width: 100%; |
| | | height: 148upx; |
| | | padding: 28upx 34upx 0; |
| | | .title{ |
| | | font-weight: 500; |
| | | font-size: 28rpx; |
| | | color: #111111; |
| | | line-height: 39rpx; |
| | | } |
| | | .line{ |
| | | height: 80upx; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | border-bottom: 1rpx solid #CCCCCC; |
| | | input{ |
| | | flex: 1; |
| | | font-size: 28rpx; |
| | | color: #666666; |
| | | } |
| | | .icon{ |
| | | width: 28upx; |
| | | height: 28upx; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template>
|
| | | <view class="main_app">
|
| | | <image src="@/static/bg@2x.png" class="main_bg" mode=""></image>
|
| | | <view class="header_wrap">
|
| | | <view class="title" @touchend="touchend">ä¼è®®å®¤</view>
|
| | | <view class="time_wrap">
|
| | | <view class="time">{{time}}</view>
|
| | | <view class="date">{{date}}</view>
|
| | | </view>
|
| | | </view>
|
| | | <view class="home_status orange">ä¼è®®ä¸</view>
|
| | | <view class="meeting_name">ä¼è®®åç§°</view>
|
| | | <view class="meeting_con">
|
| | | <view class="content">
|
| | | <view class="line">
|
| | | <image src="@/static/ic_time@2x.png"></image>
|
| | | <text>10~12</text>
|
| | | </view>
|
| | | <view class="line">
|
| | | <image src="@/static/ic_people@2x.png"></image>
|
| | | <text>10~12</text>
|
| | | </view>
|
| | | </view>
|
| | | <view class="qrcode"></view>
|
| | | </view>
|
| | | <view class="meeting_wrap">
|
| | | <view class="title">仿¥ä¼è®®ï¼6ï¼</view>
|
| | | <view class="list">
|
| | | <view class="item">
|
| | | <view class="name">å¼åé¨ä¼è®®</view>
|
| | | <view class="line">é¢çº¦äººï¼ææè±</view>
|
| | | <view class="line">13:30ï½15:00ï¼å³å°å¼å§ï¼</view>
|
| | | <image src="@/static/ic_meeting@2x.png" class="item_bg"></image>
|
| | | </view>
|
| | | <view class="item empty">
|
| | | <view class="name">ææ ä¼è®®</view>
|
| | | <view class="line">é¢çº¦äººï¼-</view>
|
| | | <view class="line">-</view>
|
| | | <image src="@/static/ic_meeting@2x.png" class="item_bg"></image>
|
| | | </view>
|
| | | </view>
|
| | | </view>
|
| | | </view>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | import dayjs from 'dayjs'
|
| | | import {
|
| | | meetScreenData
|
| | | } from '@/api/index.js'
|
| | | export default {
|
| | | data() {
|
| | | return {
|
| | | time: '',
|
| | | date: '',
|
| | | timer: null,
|
| | | touchNum: 0, |
| | | param: {}
|
| | | }
|
| | | },
|
| | | onLoad() { |
| | | this.initDatetime() |
| | | this.param = uni.getStorageSync('param') || {} |
| | | if(!this.param.code){ |
| | | return uni.navigateTo({ |
| | | url: '/pages/index/config' |
| | | }) |
| | | } |
| | | this.getData()
|
| | | },
|
| | | methods: {
|
| | | getData() {
|
| | | meetScreenData({ |
| | | roomId: this.param.code |
| | | })
|
| | | },
|
| | | touchend() {
|
| | | this.touchNum++
|
| | | setTimeout(() => {
|
| | | if (this.touchNum == 1) {
|
| | | console.log('åå»')
|
| | | }
|
| | | if (this.touchNum >= 2) {
|
| | | uni.navigateTo({ |
| | | url: '/pages/index/config' |
| | | })
|
| | | }
|
| | | this.touchNum = 0
|
| | | }, 250)
|
| | | },
|
| | | initDatetime() {
|
| | | let weeks = ['卿¥', 'å¨ä¸', 'å¨äº', 'å¨ä¸', 'å¨å', 'å¨äº', 'å¨å
']
|
| | | this.time = dayjs().format('HH:mm')
|
| | | this.date = dayjs().format('YYYY-MM-DD') + ' ' + weeks[new Date().getDay()]
|
| | | this.timer = setInterval(() => {
|
| | | this.time = dayjs().format('HH:mm')
|
| | | this.date = dayjs().format('YYYY-MM-DD') + ' ' + weeks[new Date().getDay()]
|
| | | }, 1000)
|
| | | }
|
| | | }
|
| | | }
|
| | | </script>
|
| | |
|
| | | <style lang="scss" scoped>
|
| | | .main_app {
|
| | | width: 100%;
|
| | | min-height: 100vh;
|
| | | position: relative;
|
| | | font-size: 28rpx;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | justify-content: space-between;
|
| | | padding-bottom: 35rpx;
|
| | | color: #fff;
|
| | |
|
| | | .meeting_wrap {
|
| | | margin-left: 42rpx;
|
| | | margin-top: 85rpx;
|
| | |
|
| | | .title {
|
| | | font-weight: 500;
|
| | | font-size: 42rpx;
|
| | | color: #FFFFFF;
|
| | | line-height: 62rpx;
|
| | | height: 62rpx;
|
| | | margin-bottom: 32rpx;
|
| | | }
|
| | |
|
| | | .list {
|
| | | display: flex;
|
| | | width: calc(100vw - 42rpx);
|
| | | overflow-x: auto;
|
| | | scrollbar-width: none;
|
| | |
|
| | | &:-webkit-scrollbar {
|
| | | display: none;
|
| | | /* Chrome Safari */
|
| | | }
|
| | |
|
| | | .item {
|
| | | padding: 34rpx 28rpx;
|
| | | display: flex;
|
| | | flex-shrink: 0;
|
| | | flex-direction: column;
|
| | | width: 403rpx;
|
| | | height: 315rpx;
|
| | | background: linear-gradient(90deg, #0095AC 0%, #00B5D1 100%);
|
| | | border-radius: 7rpx;
|
| | | margin-right: 28rpx;
|
| | | position: relative;
|
| | |
|
| | | .item_bg {
|
| | | position: absolute;
|
| | | width: 178rpx;
|
| | | height: 178rpx;
|
| | | right: 0;
|
| | | bottom: 0;
|
| | | // z-index: -1;
|
| | | }
|
| | |
|
| | | .name {
|
| | | flex: 1;
|
| | | font-weight: bold;
|
| | | font-size: 39rpx;
|
| | | }
|
| | |
|
| | | .line {
|
| | | font-weight: 500;
|
| | | margin-bottom: 7rpx;
|
| | | }
|
| | | }
|
| | |
|
| | | .empty {
|
| | | background: rgba(255, 255, 255, 0.11);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .meeting_con {
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | | align-items: center;
|
| | | padding: 0 42rpx;
|
| | |
|
| | | .content {
|
| | | .line {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | font-weight: 500;
|
| | | font-size: 32rpx;
|
| | | margin: 24rpx 0;
|
| | |
|
| | | image {
|
| | | width: 30rpx;
|
| | | height: 30rpx;
|
| | | margin-right: 20rpx;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .qrcode {
|
| | | width: 166rpx;
|
| | | height: 166rpx;
|
| | | border: 1px solid red;
|
| | | }
|
| | | }
|
| | |
|
| | | .meeting_name {
|
| | | margin-bottom: 12rpx;
|
| | | font-weight: bold;
|
| | | font-size: 49rpx;
|
| | | padding-left: 42rpx;
|
| | | }
|
| | |
|
| | | .home_status {
|
| | | font-weight: bold;
|
| | | font-size: 125rpx;
|
| | | margin: 70rpx 42rpx;
|
| | | line-height: 185rpx;
|
| | | height: 185rpx;
|
| | | }
|
| | |
|
| | | .orange {
|
| | | color: #FFB100;
|
| | | }
|
| | |
|
| | | .header_wrap {
|
| | | padding: 34rpx 34rpx 0 0;
|
| | | display: flex;
|
| | | justify-content: space-between;
|
| | | align-items: center;
|
| | |
|
| | | .time_wrap {
|
| | | text-align: right;
|
| | |
|
| | | .time {
|
| | | font-size: 56rpx;
|
| | | margin-bottom: 4rpx;
|
| | | }
|
| | | }
|
| | |
|
| | | .title {
|
| | | font-size: 56rpx;
|
| | | font-weight: bold;
|
| | | width: 430rpx;
|
| | | height: 125rpx;
|
| | | line-height: 125rpx;
|
| | | text-align: center;
|
| | | background: #00B5D1;
|
| | | border-radius: 0rpx 7rpx 7rpx 0rpx;
|
| | | }
|
| | | }
|
| | |
|
| | | .main_bg {
|
| | | position: absolute;
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | top: 0;
|
| | | left: 0;
|
| | | object-fit: cover;
|
| | | z-index: -1;
|
| | | }
|
| | | }
|
| | | </style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1726651011394" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4417" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><path d="M761.056 532.128c0.512-0.992 1.344-1.824 1.792-2.848 8.8-18.304 5.92-40.704-9.664-55.424L399.936 139.744c-19.264-18.208-49.632-17.344-67.872 1.888-18.208 19.264-17.376 49.632 1.888 67.872l316.96 299.84L335.2 813.632c-19.072 18.4-19.648 48.768-1.248 67.872 9.408 9.792 21.984 14.688 34.56 14.688 12 0 24-4.48 33.312-13.44l350.048-337.376c0.672-0.672 0.928-1.6 1.6-2.304 0.512-0.48 1.056-0.832 1.568-1.344 2.72-2.848 4.16-6.336 6.016-9.6z" p-id="4418" fill="#666666"></path></svg> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | uni.addInterceptor({ |
| | | returnValue (res) { |
| | | if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) { |
| | | return res; |
| | | } |
| | | return new Promise((resolve, reject) => { |
| | | res.then((res) => res[0] ? reject(res[0]) : resolve(res[1])); |
| | | }); |
| | | }, |
| | | }); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | /**
|
| | | * è¿éæ¯uni-appå
ç½®çå¸¸ç¨æ ·å¼åé
|
| | | *
|
| | | * uni-app 宿¹æ©å±æä»¶åæä»¶å¸åºï¼https://ext.dcloud.net.cnï¼ä¸å¾å¤ä¸æ¹æä»¶å使ç¨äºè¿äºæ ·å¼åé
|
| | | * å¦æä½ æ¯æä»¶å¼åè
ï¼å»ºè®®ä½ 使ç¨scssé¢å¤çï¼å¹¶å¨æä»¶ä»£ç ä¸ç´æ¥ä½¿ç¨è¿äºåéï¼æ é import è¿ä¸ªæä»¶ï¼ï¼æ¹ä¾¿ç¨æ·éè¿æç§¯æ¨çæ¹å¼å¼åæ´ä½é£æ ¼ä¸è´çApp
|
| | | *
|
| | | */
|
| | |
|
| | | /**
|
| | | * å¦æä½ æ¯Appå¼åè
ï¼æä»¶ä½¿ç¨è
ï¼ï¼ä½ å¯ä»¥éè¿ä¿®æ¹è¿äºå鿥å®å¶èªå·±çæä»¶ä¸»é¢ï¼å®ç°èªå®ä¹ä¸»é¢åè½
|
| | | *
|
| | | * å¦æä½ ç项ç®åæ ·ä½¿ç¨äºscssé¢å¤çï¼ä½ ä¹å¯ä»¥ç´æ¥å¨ä½ ç scss 代ç ä¸ä½¿ç¨å¦ä¸åéï¼åæ¶æ é import è¿ä¸ªæä»¶
|
| | | */
|
| | |
|
| | | /* é¢è²åé */
|
| | |
|
| | | /* è¡ä¸ºç¸å
³é¢è² */
|
| | | $uni-color-primary: #007aff;
|
| | | $uni-color-success: #4cd964;
|
| | | $uni-color-warning: #f0ad4e;
|
| | | $uni-color-error: #dd524d;
|
| | |
|
| | | /* æååºæ¬é¢è² */
|
| | | $uni-text-color:#333;//åºæ¬è²
|
| | | $uni-text-color-inverse:#fff;//åè²
|
| | | $uni-text-color-grey:#999;//è¾
å©ç°è²ï¼å¦å è½½æ´å¤çæç¤ºä¿¡æ¯
|
| | | $uni-text-color-placeholder: #808080;
|
| | | $uni-text-color-disable:#c0c0c0;
|
| | |
|
| | | /* èæ¯é¢è² */
|
| | | $uni-bg-color:#ffffff;
|
| | | $uni-bg-color-grey:#f8f8f8;
|
| | | $uni-bg-color-hover:#f1f1f1;//ç¹å»ç¶æé¢è²
|
| | | $uni-bg-color-mask:rgba(0, 0, 0, 0.4);//é®ç½©é¢è²
|
| | |
|
| | | /* è¾¹æ¡é¢è² */
|
| | | $uni-border-color:#c8c7cc;
|
| | |
|
| | | /* 尺寸åé */
|
| | |
|
| | | /* æå尺寸 */
|
| | | $uni-font-size-sm:12px;
|
| | | $uni-font-size-base:14px;
|
| | | $uni-font-size-lg:16px;
|
| | |
|
| | | /* å¾ç尺寸 */
|
| | | $uni-img-size-sm:20px;
|
| | | $uni-img-size-base:26px;
|
| | | $uni-img-size-lg:40px;
|
| | |
|
| | | /* Border Radius */
|
| | | $uni-border-radius-sm: 2px;
|
| | | $uni-border-radius-base: 3px;
|
| | | $uni-border-radius-lg: 6px;
|
| | | $uni-border-radius-circle: 50%;
|
| | |
|
| | | /* æ°´å¹³é´è· */
|
| | | $uni-spacing-row-sm: 5px;
|
| | | $uni-spacing-row-base: 10px;
|
| | | $uni-spacing-row-lg: 15px;
|
| | |
|
| | | /* åç´é´è· */
|
| | | $uni-spacing-col-sm: 4px;
|
| | | $uni-spacing-col-base: 8px;
|
| | | $uni-spacing-col-lg: 12px;
|
| | |
|
| | | /* éæåº¦ */
|
| | | $uni-opacity-disabled: 0.3; // ç»ä»¶ç¦ç¨æçéæåº¦
|
| | |
|
| | | /* æç« åºæ¯ç¸å
³ */
|
| | | $uni-color-title: #2C405A; // æç« æ é¢é¢è²
|
| | | $uni-font-size-title:20px;
|
| | | $uni-color-subtitle: #555555; // äºçº§æ é¢é¢è²
|
| | | $uni-font-size-subtitle:26px;
|
| | | $uni-color-paragraph: #3F536E; // æç« 段è½é¢è²
|
| | | $uni-font-size-paragraph:15px;
|
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "hash": "7c90d9b3", |
| | | "configHash": "8347bd5a", |
| | | "lockfileHash": "102ea5b9", |
| | | "browserHash": "defb2146", |
| | | "optimized": { |
| | | "dayjs": { |
| | | "src": "../../../../../node_modules/dayjs/dayjs.min.js", |
| | | "file": "dayjs.js", |
| | | "fileHash": "84c9bd87", |
| | | "needsInterop": true |
| | | } |
| | | }, |
| | | "chunks": {} |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | var __getOwnPropNames = Object.getOwnPropertyNames; |
| | | var __commonJS = (cb, mod) => function __require() { |
| | | return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; |
| | | }; |
| | | |
| | | // ../../../../../../Users/niannian/Desktop/working/è±ç±³ç§æ/dmvisit/h5_meeting/node_modules/dayjs/dayjs.min.js |
| | | var require_dayjs_min = __commonJS({ |
| | | "../../../../../../Users/niannian/Desktop/working/è±ç±³ç§æ/dmvisit/h5_meeting/node_modules/dayjs/dayjs.min.js"(exports, module) { |
| | | !function(t, e) { |
| | | "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).dayjs = e(); |
| | | }(exports, function() { |
| | | "use strict"; |
| | | var t = 1e3, e = 6e4, n = 36e5, r = "millisecond", i = "second", s = "minute", u = "hour", a = "day", o = "week", c = "month", f = "quarter", h = "year", d = "date", l = "Invalid Date", $ = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/, y = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g, M = { name: "en", weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), ordinal: function(t2) { |
| | | var e2 = ["th", "st", "nd", "rd"], n2 = t2 % 100; |
| | | return "[" + t2 + (e2[(n2 - 20) % 10] || e2[n2] || e2[0]) + "]"; |
| | | } }, m = function(t2, e2, n2) { |
| | | var r2 = String(t2); |
| | | return !r2 || r2.length >= e2 ? t2 : "" + Array(e2 + 1 - r2.length).join(n2) + t2; |
| | | }, v = { s: m, z: function(t2) { |
| | | var e2 = -t2.utcOffset(), n2 = Math.abs(e2), r2 = Math.floor(n2 / 60), i2 = n2 % 60; |
| | | return (e2 <= 0 ? "+" : "-") + m(r2, 2, "0") + ":" + m(i2, 2, "0"); |
| | | }, m: function t2(e2, n2) { |
| | | if (e2.date() < n2.date()) |
| | | return -t2(n2, e2); |
| | | var r2 = 12 * (n2.year() - e2.year()) + (n2.month() - e2.month()), i2 = e2.clone().add(r2, c), s2 = n2 - i2 < 0, u2 = e2.clone().add(r2 + (s2 ? -1 : 1), c); |
| | | return +(-(r2 + (n2 - i2) / (s2 ? i2 - u2 : u2 - i2)) || 0); |
| | | }, a: function(t2) { |
| | | return t2 < 0 ? Math.ceil(t2) || 0 : Math.floor(t2); |
| | | }, p: function(t2) { |
| | | return { M: c, y: h, w: o, d: a, D: d, h: u, m: s, s: i, ms: r, Q: f }[t2] || String(t2 || "").toLowerCase().replace(/s$/, ""); |
| | | }, u: function(t2) { |
| | | return void 0 === t2; |
| | | } }, g = "en", D = {}; |
| | | D[g] = M; |
| | | var p = "$isDayjsObject", S = function(t2) { |
| | | return t2 instanceof _ || !(!t2 || !t2[p]); |
| | | }, w = function t2(e2, n2, r2) { |
| | | var i2; |
| | | if (!e2) |
| | | return g; |
| | | if ("string" == typeof e2) { |
| | | var s2 = e2.toLowerCase(); |
| | | D[s2] && (i2 = s2), n2 && (D[s2] = n2, i2 = s2); |
| | | var u2 = e2.split("-"); |
| | | if (!i2 && u2.length > 1) |
| | | return t2(u2[0]); |
| | | } else { |
| | | var a2 = e2.name; |
| | | D[a2] = e2, i2 = a2; |
| | | } |
| | | return !r2 && i2 && (g = i2), i2 || !r2 && g; |
| | | }, O = function(t2, e2) { |
| | | if (S(t2)) |
| | | return t2.clone(); |
| | | var n2 = "object" == typeof e2 ? e2 : {}; |
| | | return n2.date = t2, n2.args = arguments, new _(n2); |
| | | }, b = v; |
| | | b.l = w, b.i = S, b.w = function(t2, e2) { |
| | | return O(t2, { locale: e2.$L, utc: e2.$u, x: e2.$x, $offset: e2.$offset }); |
| | | }; |
| | | var _ = function() { |
| | | function M2(t2) { |
| | | this.$L = w(t2.locale, null, true), this.parse(t2), this.$x = this.$x || t2.x || {}, this[p] = true; |
| | | } |
| | | var m2 = M2.prototype; |
| | | return m2.parse = function(t2) { |
| | | this.$d = function(t3) { |
| | | var e2 = t3.date, n2 = t3.utc; |
| | | if (null === e2) |
| | | return /* @__PURE__ */ new Date(NaN); |
| | | if (b.u(e2)) |
| | | return /* @__PURE__ */ new Date(); |
| | | if (e2 instanceof Date) |
| | | return new Date(e2); |
| | | if ("string" == typeof e2 && !/Z$/i.test(e2)) { |
| | | var r2 = e2.match($); |
| | | if (r2) { |
| | | var i2 = r2[2] - 1 || 0, s2 = (r2[7] || "0").substring(0, 3); |
| | | return n2 ? new Date(Date.UTC(r2[1], i2, r2[3] || 1, r2[4] || 0, r2[5] || 0, r2[6] || 0, s2)) : new Date(r2[1], i2, r2[3] || 1, r2[4] || 0, r2[5] || 0, r2[6] || 0, s2); |
| | | } |
| | | } |
| | | return new Date(e2); |
| | | }(t2), this.init(); |
| | | }, m2.init = function() { |
| | | var t2 = this.$d; |
| | | this.$y = t2.getFullYear(), this.$M = t2.getMonth(), this.$D = t2.getDate(), this.$W = t2.getDay(), this.$H = t2.getHours(), this.$m = t2.getMinutes(), this.$s = t2.getSeconds(), this.$ms = t2.getMilliseconds(); |
| | | }, m2.$utils = function() { |
| | | return b; |
| | | }, m2.isValid = function() { |
| | | return !(this.$d.toString() === l); |
| | | }, m2.isSame = function(t2, e2) { |
| | | var n2 = O(t2); |
| | | return this.startOf(e2) <= n2 && n2 <= this.endOf(e2); |
| | | }, m2.isAfter = function(t2, e2) { |
| | | return O(t2) < this.startOf(e2); |
| | | }, m2.isBefore = function(t2, e2) { |
| | | return this.endOf(e2) < O(t2); |
| | | }, m2.$g = function(t2, e2, n2) { |
| | | return b.u(t2) ? this[e2] : this.set(n2, t2); |
| | | }, m2.unix = function() { |
| | | return Math.floor(this.valueOf() / 1e3); |
| | | }, m2.valueOf = function() { |
| | | return this.$d.getTime(); |
| | | }, m2.startOf = function(t2, e2) { |
| | | var n2 = this, r2 = !!b.u(e2) || e2, f2 = b.p(t2), l2 = function(t3, e3) { |
| | | var i2 = b.w(n2.$u ? Date.UTC(n2.$y, e3, t3) : new Date(n2.$y, e3, t3), n2); |
| | | return r2 ? i2 : i2.endOf(a); |
| | | }, $2 = function(t3, e3) { |
| | | return b.w(n2.toDate()[t3].apply(n2.toDate("s"), (r2 ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(e3)), n2); |
| | | }, y2 = this.$W, M3 = this.$M, m3 = this.$D, v2 = "set" + (this.$u ? "UTC" : ""); |
| | | switch (f2) { |
| | | case h: |
| | | return r2 ? l2(1, 0) : l2(31, 11); |
| | | case c: |
| | | return r2 ? l2(1, M3) : l2(0, M3 + 1); |
| | | case o: |
| | | var g2 = this.$locale().weekStart || 0, D2 = (y2 < g2 ? y2 + 7 : y2) - g2; |
| | | return l2(r2 ? m3 - D2 : m3 + (6 - D2), M3); |
| | | case a: |
| | | case d: |
| | | return $2(v2 + "Hours", 0); |
| | | case u: |
| | | return $2(v2 + "Minutes", 1); |
| | | case s: |
| | | return $2(v2 + "Seconds", 2); |
| | | case i: |
| | | return $2(v2 + "Milliseconds", 3); |
| | | default: |
| | | return this.clone(); |
| | | } |
| | | }, m2.endOf = function(t2) { |
| | | return this.startOf(t2, false); |
| | | }, m2.$set = function(t2, e2) { |
| | | var n2, o2 = b.p(t2), f2 = "set" + (this.$u ? "UTC" : ""), l2 = (n2 = {}, n2[a] = f2 + "Date", n2[d] = f2 + "Date", n2[c] = f2 + "Month", n2[h] = f2 + "FullYear", n2[u] = f2 + "Hours", n2[s] = f2 + "Minutes", n2[i] = f2 + "Seconds", n2[r] = f2 + "Milliseconds", n2)[o2], $2 = o2 === a ? this.$D + (e2 - this.$W) : e2; |
| | | if (o2 === c || o2 === h) { |
| | | var y2 = this.clone().set(d, 1); |
| | | y2.$d[l2]($2), y2.init(), this.$d = y2.set(d, Math.min(this.$D, y2.daysInMonth())).$d; |
| | | } else |
| | | l2 && this.$d[l2]($2); |
| | | return this.init(), this; |
| | | }, m2.set = function(t2, e2) { |
| | | return this.clone().$set(t2, e2); |
| | | }, m2.get = function(t2) { |
| | | return this[b.p(t2)](); |
| | | }, m2.add = function(r2, f2) { |
| | | var d2, l2 = this; |
| | | r2 = Number(r2); |
| | | var $2 = b.p(f2), y2 = function(t2) { |
| | | var e2 = O(l2); |
| | | return b.w(e2.date(e2.date() + Math.round(t2 * r2)), l2); |
| | | }; |
| | | if ($2 === c) |
| | | return this.set(c, this.$M + r2); |
| | | if ($2 === h) |
| | | return this.set(h, this.$y + r2); |
| | | if ($2 === a) |
| | | return y2(1); |
| | | if ($2 === o) |
| | | return y2(7); |
| | | var M3 = (d2 = {}, d2[s] = e, d2[u] = n, d2[i] = t, d2)[$2] || 1, m3 = this.$d.getTime() + r2 * M3; |
| | | return b.w(m3, this); |
| | | }, m2.subtract = function(t2, e2) { |
| | | return this.add(-1 * t2, e2); |
| | | }, m2.format = function(t2) { |
| | | var e2 = this, n2 = this.$locale(); |
| | | if (!this.isValid()) |
| | | return n2.invalidDate || l; |
| | | var r2 = t2 || "YYYY-MM-DDTHH:mm:ssZ", i2 = b.z(this), s2 = this.$H, u2 = this.$m, a2 = this.$M, o2 = n2.weekdays, c2 = n2.months, f2 = n2.meridiem, h2 = function(t3, n3, i3, s3) { |
| | | return t3 && (t3[n3] || t3(e2, r2)) || i3[n3].slice(0, s3); |
| | | }, d2 = function(t3) { |
| | | return b.s(s2 % 12 || 12, t3, "0"); |
| | | }, $2 = f2 || function(t3, e3, n3) { |
| | | var r3 = t3 < 12 ? "AM" : "PM"; |
| | | return n3 ? r3.toLowerCase() : r3; |
| | | }; |
| | | return r2.replace(y, function(t3, r3) { |
| | | return r3 || function(t4) { |
| | | switch (t4) { |
| | | case "YY": |
| | | return String(e2.$y).slice(-2); |
| | | case "YYYY": |
| | | return b.s(e2.$y, 4, "0"); |
| | | case "M": |
| | | return a2 + 1; |
| | | case "MM": |
| | | return b.s(a2 + 1, 2, "0"); |
| | | case "MMM": |
| | | return h2(n2.monthsShort, a2, c2, 3); |
| | | case "MMMM": |
| | | return h2(c2, a2); |
| | | case "D": |
| | | return e2.$D; |
| | | case "DD": |
| | | return b.s(e2.$D, 2, "0"); |
| | | case "d": |
| | | return String(e2.$W); |
| | | case "dd": |
| | | return h2(n2.weekdaysMin, e2.$W, o2, 2); |
| | | case "ddd": |
| | | return h2(n2.weekdaysShort, e2.$W, o2, 3); |
| | | case "dddd": |
| | | return o2[e2.$W]; |
| | | case "H": |
| | | return String(s2); |
| | | case "HH": |
| | | return b.s(s2, 2, "0"); |
| | | case "h": |
| | | return d2(1); |
| | | case "hh": |
| | | return d2(2); |
| | | case "a": |
| | | return $2(s2, u2, true); |
| | | case "A": |
| | | return $2(s2, u2, false); |
| | | case "m": |
| | | return String(u2); |
| | | case "mm": |
| | | return b.s(u2, 2, "0"); |
| | | case "s": |
| | | return String(e2.$s); |
| | | case "ss": |
| | | return b.s(e2.$s, 2, "0"); |
| | | case "SSS": |
| | | return b.s(e2.$ms, 3, "0"); |
| | | case "Z": |
| | | return i2; |
| | | } |
| | | return null; |
| | | }(t3) || i2.replace(":", ""); |
| | | }); |
| | | }, m2.utcOffset = function() { |
| | | return 15 * -Math.round(this.$d.getTimezoneOffset() / 15); |
| | | }, m2.diff = function(r2, d2, l2) { |
| | | var $2, y2 = this, M3 = b.p(d2), m3 = O(r2), v2 = (m3.utcOffset() - this.utcOffset()) * e, g2 = this - m3, D2 = function() { |
| | | return b.m(y2, m3); |
| | | }; |
| | | switch (M3) { |
| | | case h: |
| | | $2 = D2() / 12; |
| | | break; |
| | | case c: |
| | | $2 = D2(); |
| | | break; |
| | | case f: |
| | | $2 = D2() / 3; |
| | | break; |
| | | case o: |
| | | $2 = (g2 - v2) / 6048e5; |
| | | break; |
| | | case a: |
| | | $2 = (g2 - v2) / 864e5; |
| | | break; |
| | | case u: |
| | | $2 = g2 / n; |
| | | break; |
| | | case s: |
| | | $2 = g2 / e; |
| | | break; |
| | | case i: |
| | | $2 = g2 / t; |
| | | break; |
| | | default: |
| | | $2 = g2; |
| | | } |
| | | return l2 ? $2 : b.a($2); |
| | | }, m2.daysInMonth = function() { |
| | | return this.endOf(c).$D; |
| | | }, m2.$locale = function() { |
| | | return D[this.$L]; |
| | | }, m2.locale = function(t2, e2) { |
| | | if (!t2) |
| | | return this.$L; |
| | | var n2 = this.clone(), r2 = w(t2, e2, true); |
| | | return r2 && (n2.$L = r2), n2; |
| | | }, m2.clone = function() { |
| | | return b.w(this.$d, this); |
| | | }, m2.toDate = function() { |
| | | return new Date(this.valueOf()); |
| | | }, m2.toJSON = function() { |
| | | return this.isValid() ? this.toISOString() : null; |
| | | }, m2.toISOString = function() { |
| | | return this.$d.toISOString(); |
| | | }, m2.toString = function() { |
| | | return this.$d.toUTCString(); |
| | | }, M2; |
| | | }(), k = _.prototype; |
| | | return O.prototype = k, [["$ms", r], ["$s", i], ["$m", s], ["$H", u], ["$W", a], ["$M", c], ["$y", h], ["$D", d]].forEach(function(t2) { |
| | | k[t2[1]] = function(e2) { |
| | | return this.$g(e2, t2[0], t2[1]); |
| | | }; |
| | | }), O.extend = function(t2, e2) { |
| | | return t2.$i || (t2(e2, _, O), t2.$i = true), O; |
| | | }, O.locale = w, O.isDayjs = S, O.unix = function(t2) { |
| | | return O(1e3 * t2); |
| | | }, O.en = D[g], O.Ls = D, O.p = {}, O; |
| | | }); |
| | | } |
| | | }); |
| | | export default require_dayjs_min(); |
| | | //# sourceMappingURL=dayjs.js.map |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "version": 3, |
| | | "sources": ["../../../../../node_modules/dayjs/dayjs.min.js"], |
| | | "sourcesContent": ["!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()<n.date())return-t(n,e);var r=12*(n.year()-e.year())+(n.month()-e.month()),i=e.clone().add(r,c),s=n-i<0,u=e.clone().add(r+(s?-1:1),c);return+(-(r+(n-i)/(s?i-u:u-i))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(t){return{M:c,y:h,w:o,d:a,D:d,h:u,m:s,s:i,ms:r,Q:f}[t]||String(t||\"\").toLowerCase().replace(/s$/,\"\")},u:function(t){return void 0===t}},g=\"en\",D={};D[g]=M;var p=\"$isDayjsObject\",S=function(t){return t instanceof _||!(!t||!t[p])},w=function t(e,n,r){var i;if(!e)return g;if(\"string\"==typeof e){var s=e.toLowerCase();D[s]&&(i=s),n&&(D[s]=n,i=s);var u=e.split(\"-\");if(!i&&u.length>1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)<this.startOf(e)},m.isBefore=function(t,e){return this.endOf(e)<O(t)},m.$g=function(t,e,n){return b.u(t)?this[e]:this.set(n,t)},m.unix=function(){return Math.floor(this.valueOf()/1e3)},m.valueOf=function(){return this.$d.getTime()},m.startOf=function(t,e){var n=this,r=!!b.u(e)||e,f=b.p(t),l=function(t,e){var i=b.w(n.$u?Date.UTC(n.$y,e,t):new Date(n.$y,e,t),n);return r?i:i.endOf(a)},$=function(t,e){return b.w(n.toDate()[t].apply(n.toDate(\"s\"),(r?[0,0,0,0]:[23,59,59,999]).slice(e)),n)},y=this.$W,M=this.$M,m=this.$D,v=\"set\"+(this.$u?\"UTC\":\"\");switch(f){case h:return r?l(1,0):l(31,11);case c:return r?l(1,M):l(0,M+1);case o:var g=this.$locale().weekStart||0,D=(y<g?y+7:y)-g;return l(r?m-D:m+(6-D),M);case a:case d:return $(v+\"Hours\",0);case u:return $(v+\"Minutes\",1);case s:return $(v+\"Seconds\",2);case i:return $(v+\"Milliseconds\",3);default:return this.clone()}},m.endOf=function(t){return this.startOf(t,!1)},m.$set=function(t,e){var n,o=b.p(t),f=\"set\"+(this.$u?\"UTC\":\"\"),l=(n={},n[a]=f+\"Date\",n[d]=f+\"Date\",n[c]=f+\"Month\",n[h]=f+\"FullYear\",n[u]=f+\"Hours\",n[s]=f+\"Minutes\",n[i]=f+\"Seconds\",n[r]=f+\"Milliseconds\",n)[o],$=o===a?this.$D+(e-this.$W):e;if(o===c||o===h){var y=this.clone().set(d,1);y.$d[l]($),y.init(),this.$d=y.set(d,Math.min(this.$D,y.daysInMonth())).$d}else l&&this.$d[l]($);return this.init(),this},m.set=function(t,e){return this.clone().$set(t,e)},m.get=function(t){return this[b.p(t)]()},m.add=function(r,f){var d,l=this;r=Number(r);var $=b.p(f),y=function(t){var e=O(l);return b.w(e.date(e.date()+Math.round(t*r)),l)};if($===c)return this.set(c,this.$M+r);if($===h)return this.set(h,this.$y+r);if($===a)return y(1);if($===o)return y(7);var M=(d={},d[s]=e,d[u]=n,d[i]=t,d)[$]||1,m=this.$d.getTime()+r*M;return b.w(m,this)},m.subtract=function(t,e){return this.add(-1*t,e)},m.format=function(t){var e=this,n=this.$locale();if(!this.isValid())return n.invalidDate||l;var r=t||\"YYYY-MM-DDTHH:mm:ssZ\",i=b.z(this),s=this.$H,u=this.$m,a=this.$M,o=n.weekdays,c=n.months,f=n.meridiem,h=function(t,n,i,s){return t&&(t[n]||t(e,r))||i[n].slice(0,s)},d=function(t){return b.s(s%12||12,t,\"0\")},$=f||function(t,e,n){var r=t<12?\"AM\":\"PM\";return n?r.toLowerCase():r};return r.replace(y,(function(t,r){return r||function(t){switch(t){case\"YY\":return String(e.$y).slice(-2);case\"YYYY\":return b.s(e.$y,4,\"0\");case\"M\":return a+1;case\"MM\":return b.s(a+1,2,\"0\");case\"MMM\":return h(n.monthsShort,a,c,3);case\"MMMM\":return h(c,a);case\"D\":return e.$D;case\"DD\":return b.s(e.$D,2,\"0\");case\"d\":return String(e.$W);case\"dd\":return h(n.weekdaysMin,e.$W,o,2);case\"ddd\":return h(n.weekdaysShort,e.$W,o,3);case\"dddd\":return o[e.$W];case\"H\":return String(s);case\"HH\":return b.s(s,2,\"0\");case\"h\":return d(1);case\"hh\":return d(2);case\"a\":return $(s,u,!0);case\"A\":return $(s,u,!1);case\"m\":return String(u);case\"mm\":return b.s(u,2,\"0\");case\"s\":return String(e.$s);case\"ss\":return b.s(e.$s,2,\"0\");case\"SSS\":return b.s(e.$ms,3,\"0\");case\"Z\":return i}return null}(t)||i.replace(\":\",\"\")}))},m.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},m.diff=function(r,d,l){var $,y=this,M=b.p(d),m=O(r),v=(m.utcOffset()-this.utcOffset())*e,g=this-m,D=function(){return b.m(y,m)};switch(M){case h:$=D()/12;break;case c:$=D();break;case f:$=D()/3;break;case o:$=(g-v)/6048e5;break;case a:$=(g-v)/864e5;break;case u:$=g/n;break;case s:$=g/e;break;case i:$=g/t;break;default:$=g}return l?$:b.a($)},m.daysInMonth=function(){return this.endOf(c).$D},m.$locale=function(){return D[this.$L]},m.locale=function(t,e){if(!t)return this.$L;var n=this.clone(),r=w(t,e,!0);return r&&(n.$L=r),n},m.clone=function(){return b.w(this.$d,this)},m.toDate=function(){return new Date(this.valueOf())},m.toJSON=function(){return this.isValid()?this.toISOString():null},m.toISOString=function(){return this.$d.toISOString()},m.toString=function(){return this.$d.toUTCString()},M}(),k=_.prototype;return O.prototype=k,[[\"$ms\",r],[\"$s\",i],[\"$m\",s],[\"$H\",u],[\"$W\",a],[\"$M\",c],[\"$y\",h],[\"$D\",d]].forEach((function(t){k[t[1]]=function(e){return this.$g(e,t[0],t[1])}})),O.extend=function(t,e){return t.$i||(t(e,_,O),t.$i=!0),O},O.locale=w,O.isDayjs=S,O.unix=function(t){return O(1e3*t)},O.en=D[g],O.Ls=D,O.p={},O}));"], |
| | | "mappings": "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", |
| | | "names": ["t", "e", "n", "r", "i", "s", "u", "a", "M", "m", "f", "l", "$", "y", "v", "g", "D", "o", "d", "c", "h"] |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "type": "module" |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | export const baseUrl = 'meetingAdmin/' |
| | | // export const baseUrl = 'http://192.168.0.139:10010/admin_interface/' |
| | | export const uploadAvatar = `${baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do` |
| | | export const uploadUrl = `${baseUrl}visitsAdmin/cloudService/public/uploadBatch` |
| | | |
| | | export const statusMap = { |
| | | 0: 'å¾
确认', |
| | | 1: 'å¾
ç¾å°', |
| | | 2: 'çå¾
å«å·', |
| | | 3: 'å
¥åçå¾
', |
| | | 4: 'æå°çå¾
', //å·²å«å· |
| | | 5: 'ä½ä¸ä¸', |
| | | 6: 'ä½ä¸å®æ', |
| | | 7: '转移ä¸', |
| | | 8: 'å¼å¸¸æèµ·', |
| | | 9: 'å·²ææç¦»å', |
| | | 10: '已离å', |
| | | 11: 'å·²è¿å·', |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { baseUrl } from "./config.js" |
| | | export const http = function (options) { |
| | | { |
| | | return new Promise((resolve, reject) => { |
| | | // let token = uni.getStorageSync('token') || '' |
| | | // å¨ç»å½çæ¶åéè¦å¨å token uni.setStorageSync("authorization","è¿éæ¯ç»å½è·åçtokenå¼") |
| | | |
| | | // uni.showLoading({ |
| | | // title:"å è½½ä¸..." |
| | | // }) |
| | | uni.showLoading({ |
| | | title: 'å è½½ä¸', |
| | | mask: true |
| | | }) |
| | | uni.request({ |
| | | url: baseUrl + options.url, |
| | | data: options.data || {}, |
| | | method: options.method || 'GET', |
| | | header: options.header || { |
| | | // æ ¹æ®å®é
æ¥å£è®¾è®¡ key å token æè
authorization |
| | | // dm_user_token: token, |
| | | "content-type": 'application/json;charset=UTF-8' |
| | | }, |
| | | success: (res) => { |
| | | let data = res.data |
| | | // æ§å¶å°æ¾ç¤ºæ°æ®ä¿¡æ¯ |
| | | uni.hideLoading() |
| | | // ç»å½è¿æ |
| | | if (data.code === 5112) { |
| | | setTimeout(() => { |
| | | uni.showToast({ |
| | | title: data.message, |
| | | icon: "none", |
| | | duration: 2000 |
| | | }) |
| | | }) |
| | | uni.navigateTo({ |
| | | url: '/pages/index/login' |
| | | }) |
| | | return |
| | | } |
| | | if (data.code !== 200) { |
| | | setTimeout(() => { |
| | | uni.showToast({ |
| | | title: data.message, |
| | | icon: "none", |
| | | duration: 2000 |
| | | }) |
| | | }) |
| | | return |
| | | } |
| | | resolve(data) |
| | | // return response.data |
| | | }, |
| | | fail: (err) => { |
| | | // 页é¢ä¸å¼¹æ¡æ¾ç¤ºå¤±è´¥ |
| | | uni.showToast({ |
| | | title: 'è¯·æ±æ¥å£å¤±è´¥', |
| | | icon: "none", |
| | | }) |
| | | console.log('err', err) |
| | | console.log('msg', baseUrl + options.url) |
| | | // è¿åéè¯¯æ¶æ¯ |
| | | reject(err) |
| | | uni.hideLoading() |
| | | }, |
| | | catch: (e) => { |
| | | console.log(e) |
| | | } |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | |
| | | "version": "0.0.0", |
| | | "dependencies": { |
| | | "dayjs": "^1.11.11", |
| | | "echarts": "^5.5.1", |
| | | "pinia": "^2.1.7", |
| | | "vue": "^3.4.21", |
| | | "vue-router": "^4.3.0" |
| | |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/echarts": { |
| | | "version": "5.5.1", |
| | | "resolved": "https://registry.npmjs.org/echarts/-/echarts-5.5.1.tgz", |
| | | "integrity": "sha512-Fce8upazaAXUVUVsjgV6mBnGuqgO+JNDlcgF79Dksy4+wgGpQB2lmYoO4TSweFg/mZITdpGHomw/cNBJZj1icA==", |
| | | "dependencies": { |
| | | "tslib": "2.3.0", |
| | | "zrender": "5.6.0" |
| | | } |
| | | }, |
| | | "node_modules/electron-to-chromium": { |
| | | "version": "1.4.805", |
| | | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.805.tgz", |
| | |
| | | "node": ">=6" |
| | | } |
| | | }, |
| | | "node_modules/tslib": { |
| | | "version": "2.3.0", |
| | | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", |
| | | "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" |
| | | }, |
| | | "node_modules/universalify": { |
| | | "version": "2.0.1", |
| | | "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", |
| | |
| | | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", |
| | | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", |
| | | "dev": true |
| | | }, |
| | | "node_modules/zrender": { |
| | | "version": "5.6.0", |
| | | "resolved": "https://registry.npmjs.org/zrender/-/zrender-5.6.0.tgz", |
| | | "integrity": "sha512-uzgraf4njmmHAbEUxMJ8Oxg+P3fT04O+9p7gY+wJRVxo8Ge+KmYv0WJev945EH4wFuc4OY2NLXz46FZrWS9xJg==", |
| | | "dependencies": { |
| | | "tslib": "2.3.0" |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | }, |
| | | "dependencies": { |
| | | "dayjs": "^1.11.11", |
| | | "echarts": "^5.5.1", |
| | | "pinia": "^2.1.7", |
| | | "vue": "^3.4.21", |
| | | "vue-router": "^4.3.0" |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="cpn_list"> |
| | | <div class="cpn_item" v-for="ite,i in 25" :class="{ |
| | | yellow: rate > i, |
| | | gre: rate > i && color == 'cyan' |
| | | }"></div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script setup> |
| | | const props = defineProps({ |
| | | rate: Number, |
| | | color: String |
| | | }) |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .cpn_list{ |
| | | display: flex; |
| | | align-items: center; |
| | | height: 100%; |
| | | width: 100%; |
| | | padding: 0 6px; |
| | | justify-content: space-between; |
| | | .cpn_item{ |
| | | width: 2.4%; |
| | | height: 8px; |
| | | background-color: rgba(255,255,255,0.3); |
| | | } |
| | | .yellow{ |
| | | background-color: #FEAF01; |
| | | } |
| | | .gre{ |
| | | background-color: #01D9FE; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | import { createRouter, createWebHashHistory } from 'vue-router' |
| | | import HomeView from '../views/HomeView.vue' |
| | | import EnergyConsum from '../views/EnergyConsum.vue' |
| | | |
| | | const router = createRouter({ |
| | | history: createWebHashHistory(import.meta.env.BASE_URL), |
| | | routes: [ |
| | | { |
| | | path: '/', |
| | | // name: 'EnergyConsum', |
| | | component: () => import('../views/EnergyConsum.vue') |
| | | }, |
| | | { |
| | | path: '/home', |
| | | name: 'home', |
| | | component: HomeView |
| | | component: () => import('../views/HomeView.vue') |
| | | }, |
| | | { |
| | | path: '/EnergyConsum', |
| | |
| | | <div class="main_app"> |
| | | <img src="@/assets/images/bg_main_app.png" class="main_bg" alt="" /> |
| | | <div class="main_header"> |
| | | <img |
| | | src="@/assets/images/maintitle@2x.png" |
| | | class="main_header_bg" |
| | | alt="" |
| | | /> |
| | | <img src="@/assets/images/maintitle@2x.png" class="main_header_bg" alt="" /> |
| | | <div class="title">宿³°æºæ
§ç©æµååº-绿è²ä½ç¢³è¿è¥</div> |
| | | <div class="time"> |
| | | <span class="date">{{ date }}</span> |
| | |
| | | </div> |
| | | <img src="@/assets/images/title@2x.png" class="bg" alt="" /> |
| | | </div> |
| | | <div class="load_wrap"> |
| | | <div class="loadRef"></div> |
| | | </div> |
| | | </div> |
| | | <div class="left_box_three"> |
| | | <div class="com_header"> |
| | |
| | | </div> |
| | | <img src="@/assets/images/title@2x.png" class="bg" alt="" /> |
| | | </div> |
| | | <div class="energy_wrap"> |
| | | <div class="energyRef"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="center_box"> |
| | |
| | | <div class="list"> |
| | | <div class="item"> |
| | | <div class="header"> |
| | | <img |
| | | class="icon" |
| | | src="@/assets/images/ic_yongdian@2x.png" |
| | | alt="" |
| | | /> |
| | | <img class="icon" src="@/assets/images/ic_yongdian@2x.png" alt="" /> |
| | | <div class="content"> |
| | | <div class="name">䏿ç¨çµ(kw·h)</div> |
| | | <div class="num">450</div> |
| | |
| | | </div> |
| | | <div class="item"> |
| | | <div class="header"> |
| | | <img |
| | | class="icon" |
| | | src="@/assets/images/ic_yongshui@2x.png" |
| | | alt="" |
| | | /> |
| | | <img class="icon" src="@/assets/images/ic_yongshui@2x.png" alt="" /> |
| | | <div class="content"> |
| | | <div class="name">ä¸æç¨æ°´(t)</div> |
| | | <div class="num">450</div> |
| | |
| | | </div> |
| | | <div class="item"> |
| | | <div class="header"> |
| | | <img |
| | | class="icon" |
| | | src="@/assets/images/ic_yongqi@2x.png" |
| | | alt="" |
| | | /> |
| | | <img class="icon" src="@/assets/images/ic_yongqi@2x.png" alt="" /> |
| | | <div class="content"> |
| | | <div class="name">ä¸æç¨æ°(t)</div> |
| | | <div class="num">450</div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="right_box"> |
| | | <div class="right_box_one"></div> |
| | | <div class="right_box_two"></div> |
| | | <div class="right_box_three"></div> |
| | | <div class="right_box_one"> |
| | | <div class="com_header"> |
| | | <div class="title"> |
| | | <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" /> |
| | | <div>æ¬æç¢³ææ¾éç»è®¡</div> |
| | | </div> |
| | | <img src="@/assets/images/title@2x.png" class="bg" alt="" /> |
| | | </div> |
| | | <div class="content"> |
| | | <img src="@/assets/images/ic_co2@2x.png" class="co2" alt=""> |
| | | <div> |
| | | <div class="name">æ¬æç´¯è®¡ç¢³ææ¾</div> |
| | | <div><span class="num">22.22</span><span>å¨</span></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="right_box_two"> |
| | | <div class="com_header"> |
| | | <div class="title"> |
| | | <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" /> |
| | | <div>ä¸ææ²¹èæè¡ç»è®¡</div> |
| | | </div> |
| | | <div class="tabs">æ²¹èï¼L</div> |
| | | <img src="@/assets/images/title@2x.png" class="bg" alt="" /> |
| | | </div> |
| | | <div class="list"> |
| | | <div class="line" v-for="item,i in 6"> |
| | | <div class="top"><span v-if="i < 3">top</span>{{ i }}</div> |
| | | <div class="id_card">çA12313</div> |
| | | <div class="wrap"> |
| | | <ChargeRate :rate="15" :color /> |
| | | </div> |
| | | <div class="num">1000</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="right_box_three"> |
| | | <div class="com_header"> |
| | | <div class="title"> |
| | | <img src="@/assets/images/ic_title@2x.png" class="icon" alt="" /> |
| | | <div>ææ²¹èåæ</div> |
| | | </div> |
| | | <img src="@/assets/images/title@2x.png" class="bg" alt="" /> |
| | | </div> |
| | | <div class="wrap"> |
| | | <div class="analyseRef"></div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref } from 'vue' |
| | | import { ref, onMounted } from 'vue' |
| | | import dayjs from 'dayjs' |
| | | import ChargeRate from '@/components/ChargeRate.vue' |
| | | import * as echarts from 'echarts' |
| | | |
| | | const weekMap = ['æææ¥', 'ææä¸', 'ææäº', 'ææä¸', 'ææå', 'ææäº', 'ææå
',] |
| | | const date = ref(dayjs().format('YYYY.MM.DD')) |
| | |
| | | |
| | | }, 1000) |
| | | |
| | | |
| | | const initOperation = () => { |
| | | // åºäºåå¤å¥½çdomï¼åå§åechartså®ä¾ |
| | | var myChart = echarts.init(document.querySelector('.analyseRef')) |
| | | // ç»å¶å¾è¡¨ |
| | | myChart.setOption({ |
| | | // tooltip: { |
| | | // trigger: 'axis', |
| | | // axisPointer: { |
| | | // type: 'line' |
| | | // }, |
| | | // formatter: function (params) { |
| | | // setTimeout(() => { |
| | | // console.log('params', params) |
| | | // }) |
| | | // return ` |
| | | // <div style="background-color: #091123;margin: -12px;padding: 14px;border: 2px solid rgba(1,217,254,0.5);color: #fff;"> |
| | | // <div>${params[0].name}æ»éå®é¢(ä¸å
)</div> |
| | | // <div style="display: flex;align-items: center;"> |
| | | // <div style="width: 10px;height: 10px;border-radius: 50%;background-color: #ebbf40;"></div> |
| | | // <div style="margin: 0 4px 0 6px;">æ»éå®</div> |
| | | // <span style="color: #ebbf40;">${params[0].value}</span> |
| | | // </div> |
| | | // </div> |
| | | // ` |
| | | // } |
| | | // }, |
| | | xAxis: { |
| | | type: 'category', |
| | | boundaryGap: false, |
| | | data: [1,2,3,4,5,5] |
| | | }, |
| | | yAxis: { |
| | | type: 'value', |
| | | name: 'åä½ï¼L', |
| | | nameTextStyle: { |
| | | padding: [0, 0, 0, -16] // å个æ°ååå«ä¸ºä¸å³ä¸å·¦ä¸åä½ç½®è·ç¦» |
| | | }, |
| | | splitLine: { |
| | | show: true, |
| | | lineStyle: { |
| | | //è¿éè¾å
¥çº¿æ¡çæ ·å¼ |
| | | color: 'rgba(255,255,255,0.14)', |
| | | type: 'dashed', |
| | | }, |
| | | splitNumber: 4 |
| | | } |
| | | }, |
| | | grid: { |
| | | top: '16%', |
| | | left: '4%', |
| | | right: '2%', |
| | | bottom: '2%', |
| | | containLabel: true |
| | | }, |
| | | series: [ |
| | | { |
| | | data: [1,2,3,4,4,5].map(i => { |
| | | return { |
| | | name: i, |
| | | value: i, |
| | | } |
| | | }), |
| | | type: 'line', |
| | | areaStyle: { |
| | | normal: { |
| | | color: { |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, |
| | | color: "rgba(192, 156, 53,.7)" // 0% å¤çé¢è² |
| | | }, { |
| | | offset: 1, |
| | | color: "#1b1b12" // 100% å¤çé¢è² |
| | | }], |
| | | globalCoord: false // 缺ç为 false |
| | | } |
| | | } |
| | | }, |
| | | lineStyle: { // çº¿æ¡æ ·å¼ |
| | | color: { |
| | | type: 'linear', |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, color: '#F3BD00' // 0% å¤çé¢è² |
| | | }, { |
| | | offset: 1, color: '#F3BD00' // 100% å¤çé¢è² |
| | | }], |
| | | }, |
| | | width: 2, // 线æ¡ç²ç» |
| | | }, |
| | | symbol: 'circle', |
| | | symbolSize: 10, |
| | | itemStyle: { |
| | | normal: { |
| | | color: '#F3BD00', //æçº¿ç¹çé¢è² |
| | | }, |
| | | }, |
| | | smooth: true |
| | | } |
| | | ] |
| | | }) |
| | | |
| | | window.addEventListener('resize', function () {//æ§è¡ |
| | | myChart.resize() |
| | | }) |
| | | } |
| | | const initLoadReal = () => { |
| | | // åºäºåå¤å¥½çdomï¼åå§åechartså®ä¾ |
| | | var myChart = echarts.init(document.querySelector('.loadRef')) |
| | | // ç»å¶å¾è¡¨ |
| | | myChart.setOption({ |
| | | // tooltip: { |
| | | // trigger: 'axis', |
| | | // axisPointer: { |
| | | // type: 'line' |
| | | // }, |
| | | // formatter: function (params) { |
| | | // setTimeout(() => { |
| | | // console.log('params', params) |
| | | // }) |
| | | // return ` |
| | | // <div style="background-color: #091123;margin: -12px;padding: 14px;border: 2px solid rgba(1,217,254,0.5);color: #fff;"> |
| | | // <div>${params[0].name}æ»éå®é¢(ä¸å
)</div> |
| | | // <div style="display: flex;align-items: center;"> |
| | | // <div style="width: 10px;height: 10px;border-radius: 50%;background-color: #ebbf40;"></div> |
| | | // <div style="margin: 0 4px 0 6px;">æ»éå®</div> |
| | | // <span style="color: #ebbf40;">${params[0].value}</span> |
| | | // </div> |
| | | // </div> |
| | | // ` |
| | | // } |
| | | // }, |
| | | xAxis: { |
| | | type: 'category', |
| | | boundaryGap: false, |
| | | data: [1,2,3,4,5,5] |
| | | }, |
| | | yAxis: { |
| | | type: 'value', |
| | | name: 'åä½ï¼kw·h', |
| | | nameTextStyle: { |
| | | padding: [0, 0, 0, -16] // å个æ°ååå«ä¸ºä¸å³ä¸å·¦ä¸åä½ç½®è·ç¦» |
| | | }, |
| | | splitLine: { |
| | | show: true, |
| | | lineStyle: { |
| | | //è¿éè¾å
¥çº¿æ¡çæ ·å¼ |
| | | color: 'rgba(255,255,255,0.14)', |
| | | type: 'dashed', |
| | | }, |
| | | splitNumber: 4 |
| | | } |
| | | }, |
| | | grid: { |
| | | top: '16%', |
| | | left: '4%', |
| | | right: '2%', |
| | | bottom: '2%', |
| | | containLabel: true |
| | | }, |
| | | series: [ |
| | | { |
| | | data: [1,2,3,4,4,4000].map(i => { |
| | | return { |
| | | name: i, |
| | | value: i, |
| | | } |
| | | }), |
| | | type: 'line', |
| | | areaStyle: { |
| | | normal: { |
| | | color: { |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, |
| | | color: "rgba(192, 156, 53,.7)" // 0% å¤çé¢è² |
| | | }, { |
| | | offset: 1, |
| | | color: "#1b1b12" // 100% å¤çé¢è² |
| | | }], |
| | | globalCoord: false // 缺ç为 false |
| | | } |
| | | } |
| | | }, |
| | | lineStyle: { // çº¿æ¡æ ·å¼ |
| | | color: { |
| | | type: 'linear', |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, color: '#F3BD00' // 0% å¤çé¢è² |
| | | }, { |
| | | offset: 1, color: '#F3BD00' // 100% å¤çé¢è² |
| | | }], |
| | | }, |
| | | width: 2, // 线æ¡ç²ç» |
| | | }, |
| | | symbol: 'circle', |
| | | symbolSize: 10, |
| | | itemStyle: { |
| | | normal: { |
| | | color: '#F3BD00', //æçº¿ç¹çé¢è² |
| | | }, |
| | | }, |
| | | smooth: true |
| | | } |
| | | ] |
| | | }) |
| | | |
| | | window.addEventListener('resize', function () {//æ§è¡ |
| | | myChart.resize() |
| | | }) |
| | | } |
| | | const arr = ['#68e2e3', '#50afd3', '#377cdb', '#d5ae3a'] |
| | | const initEnergy = () => { |
| | | var myChart = echarts.init(document.querySelector('.energyRef')) |
| | | // ç»å¶å¾è¡¨ |
| | | const arr = ['#68e2e3', '#50afd3', '#377cdb', '#d5ae3a'] |
| | | myChart.setOption({ |
| | | grid: { |
| | | top: '20%', |
| | | left: '2%', |
| | | right: '2%', |
| | | bottom: '4%', |
| | | containLabel: true |
| | | }, |
| | | tooltip: { |
| | | trigger: 'axis', |
| | | axisPointer: { |
| | | type: 'line' |
| | | }, |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | | data: [1,2,3,4,4,5] |
| | | }, |
| | | yAxis: { |
| | | type: 'value', |
| | | name: 'kw·h', |
| | | nameTextStyle: { |
| | | padding: [0, 0, 4, -30] // å个æ°ååå«ä¸ºä¸å³ä¸å·¦ä¸åä½ç½®è·ç¦» |
| | | }, |
| | | splitLine: { |
| | | show: true, |
| | | lineStyle: { |
| | | //è¿éè¾å
¥çº¿æ¡çæ ·å¼ |
| | | color: 'rgba(255,255,255,0.14)', |
| | | } |
| | | } |
| | | }, |
| | | series: [ |
| | | { |
| | | data: [1,2,3,4,5], |
| | | type: 'bar', |
| | | barWidth: 10, |
| | | itemStyle: { |
| | | normal: { |
| | | color: new echarts.graphic.LinearGradient( |
| | | 0, 0, 0, 1, |
| | | [ |
| | | { offset: 0, color: arr[1] }, |
| | | { offset: 1, color: '#080807' } |
| | | ] |
| | | ), |
| | | barBorderRadius: [10, 10, 0, 0] |
| | | } |
| | | } |
| | | } |
| | | ] |
| | | }) |
| | | window.addEventListener('resize', function () {//æ§è¡ |
| | | myChart.resize() |
| | | }) |
| | | } |
| | | |
| | | onMounted(() => { |
| | | initOperation() |
| | | initLoadReal() |
| | | initEnergy() |
| | | }) |
| | | |
| | | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .main_content { |
| | | display: flex; |
| | | padding: 20px 24px 0; |
| | | |
| | | .left_box { |
| | | flex: 4; |
| | | |
| | | .left_box_one { |
| | | width: 100%; |
| | | margin-bottom: 20px; |
| | | |
| | | .content { |
| | | width: 100%; |
| | | padding: 24px 5%; |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | |
| | | .item { |
| | | width: 33.3%; |
| | | margin-bottom: 12px; |
| | | |
| | | .lab { |
| | | font-size: 14px; |
| | | color: #ffffff; |
| | | } |
| | | |
| | | .val { |
| | | font-weight: 600; |
| | | font-size: 20px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .left_box_two { |
| | | margin-bottom: 20px; |
| | | .load_wrap{ |
| | | width: 100%; |
| | | height: 210px; |
| | | padding: 12px 12px; |
| | | .loadRef{ |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .left_box_three { |
| | | .energy_wrap{ |
| | | width: 100%; |
| | | height: 200px; |
| | | .energyRef{ |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .center_box { |
| | | flex: 9; |
| | | padding: 0 60px; |
| | | |
| | | .center_box_one { |
| | | padding: 30px 18px; |
| | | margin-bottom: 18px; |
| | | |
| | | .list { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | |
| | | .item { |
| | | flex: 1; |
| | | |
| | | .header { |
| | | display: flex; |
| | | margin-bottom: 14px; |
| | | |
| | | .icon { |
| | | width: 70px; |
| | | height: 73px; |
| | | margin-right: 20px; |
| | | } |
| | | |
| | | .content { |
| | | .name { |
| | | font-size: 16px; |
| | | color: #d2e0ff; |
| | | } |
| | | |
| | | .num { |
| | | font-weight: bold; |
| | | font-size: 36px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .static { |
| | | font-size: 12px; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | .lab { |
| | | color: #869cc9; |
| | | } |
| | | |
| | | .val { |
| | | color: #d2e0ff; |
| | | margin-right: 20px; |
| | | } |
| | | |
| | | .icon { |
| | | width: 12px; |
| | | height: 12px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .center_box_two { |
| | | position: relative; |
| | | width: 100%; |
| | | height: 544px; |
| | | |
| | | .item { |
| | | width: 120px; |
| | | height: 112px; |
| | | position: absolute; |
| | | text-align: center; |
| | | |
| | | .num { |
| | | font-size: 35px; |
| | | line-height: 50px; |
| | | height: 50px; |
| | | font-weight: 600; |
| | | |
| | | .unit { |
| | | font-size: 13px; |
| | | } |
| | | } |
| | | |
| | | .name { |
| | | font-weight: 500; |
| | | font-size: 17px; |
| | | color: #ffffff; |
| | | } |
| | | |
| | | .bg { |
| | | width: 120px; |
| | | height: 88px; |
| | | top: 24px; |
| | | } |
| | | } |
| | | .item1{ |
| | | |
| | | .item1 { |
| | | left: 50%; |
| | | top: 0; |
| | | transform: translate(-50%, 0); |
| | | } |
| | | .item2{ |
| | | |
| | | .item2 { |
| | | top: 112px; |
| | | left: 106px; |
| | | } |
| | | .item3{ |
| | | |
| | | .item3 { |
| | | top: 112px; |
| | | right: 106px; |
| | | } |
| | | .item4{ |
| | | |
| | | .item4 { |
| | | top: 291px; |
| | | left: 56px; |
| | | } |
| | | .item5{ |
| | | |
| | | .item5 { |
| | | top: 291px; |
| | | right: 56px; |
| | | } |
| | | .bottom_wrap{ |
| | | |
| | | .bottom_wrap { |
| | | position: absolute; |
| | | bottom:-110px; |
| | | bottom: -110px; |
| | | left: 50%; |
| | | width: 600px; |
| | | height: 100px; |
| | | transform: translate(-50%, 0); |
| | | } |
| | | .bottom{ |
| | | |
| | | .bottom { |
| | | width: 140px; |
| | | height: 194px; |
| | | position: absolute; |
| | | text-align: center; |
| | | padding-top: 70px; |
| | | .num{ |
| | | |
| | | .num { |
| | | font-size: 24px; |
| | | color: #D0FFFA; |
| | | line-height: 33px; |
| | | } |
| | | .name{ |
| | | |
| | | .name { |
| | | font-size: 15px; |
| | | color: #D0FFFA; |
| | | line-height: 21px; |
| | | } |
| | | .unit{ |
| | | |
| | | .unit { |
| | | font-size: 14px; |
| | | color: #D0FFFA; |
| | | } |
| | | } |
| | | .bottom1{ |
| | | |
| | | .bottom1 { |
| | | bottom: -0px; |
| | | left: 40px; |
| | | left: 40px; |
| | | } |
| | | .bottom3{ |
| | | |
| | | .bottom3 { |
| | | bottom: -0px; |
| | | right: 40px; |
| | | right: 40px; |
| | | } |
| | | .bottom2{ |
| | | |
| | | .bottom2 { |
| | | bottom: -0px; |
| | | left: 50%; |
| | | left: 50%; |
| | | transform: translate(-50%, 0); |
| | | padding-top: 50px; |
| | | .num{ |
| | | |
| | | .num { |
| | | font-size: 36px; |
| | | color: #01D9FE; |
| | | line-height: 54px; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .right_box { |
| | | flex: 4; |
| | | |
| | | .right_box_one { |
| | | margin-bottom: 20px; |
| | | .content { |
| | | height: 164px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | |
| | | .co2 { |
| | | width: 102px; |
| | | margin-right: 30px; |
| | | } |
| | | |
| | | .num { |
| | | margin-top: 10px; |
| | | color: #01D9FE; |
| | | font-weight: 600; |
| | | font-size: 36px; |
| | | margin-right: 2px; |
| | | } |
| | | } |
| | | } |
| | | .right_box_two{ |
| | | margin-bottom: 20px; |
| | | .list{ |
| | | padding: 20px 24px 4px; |
| | | .line{ |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 16px; |
| | | .top{ |
| | | font-weight: 500; |
| | | font-size: 12px; |
| | | width: 33px; |
| | | height: 19px; |
| | | line-height: 19px; |
| | | text-align: center; |
| | | color: #DBEAEA; |
| | | box-shadow: inset 0px 0px 3px 0px #01D9FE; |
| | | margin-right: 10px; |
| | | } |
| | | .id_card{ |
| | | color: #DBEAEA; |
| | | font-weight: 500; |
| | | margin-right: 14px; |
| | | font-size: 14px; |
| | | } |
| | | .num{ |
| | | font-weight: 500; |
| | | font-size: 13px; |
| | | color: #DBEAEA; |
| | | margin-left: 15px; |
| | | } |
| | | .wrap{ |
| | | flex: 1; |
| | | height: 20px; |
| | | border: 1px solid #686B6B; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .right_box_three{ |
| | | .wrap{ |
| | | padding: 8px; |
| | | .analyseRef{ |
| | | width: 100%; |
| | | height: 210px; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .com_header { |
| | | height: 40px; |
| | | display: flex; |
| | |
| | | align-items: center; |
| | | padding: 0 15px 0 13px; |
| | | position: relative; |
| | | |
| | | .title { |
| | | display: flex; |
| | | align-items: center; |
| | | font-weight: bold; |
| | | font-size: 16px; |
| | | background-image: -webkit-linear-gradient( |
| | | top, |
| | | #ffffff 0%, |
| | | #c8ddff 66%, |
| | | #85b4ff 72%, |
| | | #74a9ff 100% |
| | | ); |
| | | background-image: -webkit-linear-gradient(top, |
| | | #ffffff 0%, |
| | | #c8ddff 66%, |
| | | #85b4ff 72%, |
| | | #74a9ff 100%); |
| | | -webkit-background-clip: text; |
| | | -webkit-text-fill-color: transparent; |
| | | |
| | | .icon { |
| | | width: 16px; |
| | | height: 16px; |
| | | margin-right: 14px; |
| | | } |
| | | } |
| | | |
| | | .tabs { |
| | | display: flex; |
| | | align-items: center; |
| | | .tab { |
| | | font-size: 14px; |
| | | color: #d2e0ff; |
| | | } |
| | | font-size: 14px; |
| | | color: #d2e0ff; |
| | | |
| | | .separate { |
| | | width: 1px; |
| | | height: 14px; |
| | | background-color: #d2e0ff; |
| | | margin: 0 6px; |
| | | } |
| | | |
| | | .active { |
| | | color: #0094eb; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .bg { |
| | | position: absolute; |
| | | left: 0; |
| | |
| | | object-fit: cover; |
| | | z-index: -1; |
| | | } |
| | | |
| | | .fs_linear { |
| | | background-image: -webkit-linear-gradient( |
| | | top, |
| | | #ffffff 0%, |
| | | #c8ddff 70%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100% |
| | | ); |
| | | background-image: -webkit-linear-gradient(top, |
| | | #ffffff 0%, |
| | | #c8ddff 70%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100%); |
| | | -webkit-background-clip: text; |
| | | -webkit-text-fill-color: transparent; |
| | | } |
| | | |
| | | .main_header { |
| | | display: flex; |
| | | justify-content: space-between; |
| | |
| | | padding: 0px 40px 16px; |
| | | font-weight: 600; |
| | | font-size: 36px; |
| | | |
| | | .title { |
| | | background-image: -webkit-linear-gradient( |
| | | top, |
| | | #ffffff 0%, |
| | | #c8ddff 70%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100% |
| | | ); |
| | | background-image: -webkit-linear-gradient(top, |
| | | #ffffff 0%, |
| | | #c8ddff 70%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100%); |
| | | -webkit-background-clip: text; |
| | | -webkit-text-fill-color: transparent; |
| | | } |
| | | |
| | | .time { |
| | | font-size: 26px; |
| | | font-weight: 600; |
| | | background-image: -webkit-linear-gradient( |
| | | top, |
| | | #ffffff 0%, |
| | | #c8ddff 50%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100% |
| | | ); |
| | | background-image: -webkit-linear-gradient(top, |
| | | #ffffff 0%, |
| | | #c8ddff 50%, |
| | | #85b4ff 80%, |
| | | #74a9ff 100%); |
| | | -webkit-background-clip: text; |
| | | -webkit-text-fill-color: transparent; |
| | | display: flex; |
| | | align-items: center; |
| | | |
| | | .time { |
| | | width: 180px; |
| | | display: flex; |
| | |
| | | padding-bottom: 10px; |
| | | font-size: 36px; |
| | | } |
| | | |
| | | .week { |
| | | margin-left: 36px; |
| | | } |
| | | } |
| | | |
| | | .main_header_bg { |
| | | position: absolute; |
| | | left: 0; |
| | |
| | | z-index: -1; |
| | | } |
| | | } |
| | | |
| | | .main_app { |
| | | width: 100%; |
| | | min-height: 100vh; |
| | | color: #ffffff; |
| | | position: relative; |
| | | |
| | | .main_bg { |
| | | position: absolute; |
| | | left: 0; |