This commit is contained in:
dong_bo0602 2022-07-13 12:22:13 +08:00
commit 5d413b7e6c
67 changed files with 31748 additions and 0 deletions

BIN
.DS_Store vendored Normal file

Binary file not shown.

View File

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>

6
.idea/encodings.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

12
.idea/html.iml Normal file
View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
<excludeFolder url="file://$MODULE_DIR$/temp" />
<excludeFolder url="file://$MODULE_DIR$/tmp" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@ -0,0 +1,5 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="PROJECT_PROFILE" />
</settings>
</component>

8
.idea/modules.xml Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/html.iml" filepath="$PROJECT_DIR$/.idea/html.iml" />
</modules>
</component>
</project>

61
.idea/workspace.xml Normal file
View File

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="0457812d-1aa4-43b9-88a6-af01ea19f990" name="Default Changelist" comment="" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="JsFlowSettings">
<service-enabled>true</service-enabled>
<exe-path />
<other-services-enabled>true</other-services-enabled>
<auto-save>true</auto-save>
</component>
<component name="ProjectId" id="1jG7TAJMGOwGAwzfUEEE0ejnvI4" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent">
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/../../html" />
<property name="node.js.path.for.package.stylelint" value="project" />
<property name="node.js.path.for.package.tslint" value="project" />
<property name="node.js.selected.package.stylelint" value="" />
<property name="node.js.selected.package.tslint" value="" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
<property name="settings.editor.selected.configurable" value="coverage" />
<property name="vue.rearranger.settings.migration" value="true" />
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="0457812d-1aa4-43b9-88a6-af01ea19f990" name="Default Changelist" comment="" />
<created>1603418579880</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1603418579880</updated>
<workItem from="1603418580997" duration="27000" />
</task>
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="3" />
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="WindowStateProjectService">
<state x="740" y="274" key="FileChooserDialogImpl" timestamp="1603418601809">
<screen x="0" y="0" width="1920" height="1040" />
</state>
<state x="740" y="274" key="FileChooserDialogImpl/0.0.1920.1040@0.0.1920.1040" timestamp="1603418601809" />
</component>
</project>

5
xz_screen/.idea/.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/

View File

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

6
xz_screen/.idea/misc.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
</project>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/xz_screen.iml" filepath="$PROJECT_DIR$/.idea/xz_screen.iml" />
</modules>
</component>
</project>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
<excludeFolder url="file://$MODULE_DIR$/temp" />
<excludeFolder url="file://$MODULE_DIR$/tmp" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

197
xz_screen/contact.html Normal file
View File

@ -0,0 +1,197 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>联系我们</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left" v-cloak>
<div class="left-text">
<h3>{{contact.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + contact.venuePhoto" alt="" v-if="contact.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
<div class="top-right">
<div class="main-title">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
<span>联系我们</span>
</div>
<div class="main">
<div class="contact" v-cloak>
<div class="contact-left">
<h3 class="contact-title">场馆地址</h3>
<p>{{contact.venueAddress}}</p>
<h3 class="contact-title">服务电话</h3>
<p>{{contact.venueTel}}</p>
<h3 class="contact-title">服务邮箱</h3>
<p>{{contact.venueEmail}}</p>
</div>
<div class="contact-right">
<div class="qr-code">
<img src="images/qr-xcx.jpg" alt="">
<p>日喀则公共文化小程序</p>
</div>
<div class="qr-code">
<img src="images/qr-code-gzh.jpg" alt="">
<p>日喀则公共文化公众号</p>
</div>
<div class="qr-code">
<img src="images/qr-code-app.jpg" alt="">
<p>日喀则公共文化APP</p>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li>
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
场馆导航
</a>
</li>
<li>
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li class="active">
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '',
time: '',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
floorList: [],
temperature: '',
reward: [],
tab: '*',
contact: {},
deviceCode: '',
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
self.menuList = arr
}
})
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
window.location.href = 'list.html?idx=' + idx
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
// window.location.href = url
this.showIframe = true
this.iframeUrl = url
}
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.contact = data
})
},
},
mounted: function () {
var self = this
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
self.getVenueGuideId()
$('.main-text, .venue-main, .top-left').niceScroll()
}
})
</script>
</body>
</html>

1
xz_screen/css/reset.css Normal file
View File

@ -0,0 +1 @@
@charset "utf-8";a,body,dd,div,dl,dt,em,form,h1,h2,h3,h4,h5,h6,img,input,li,ol,option,p,select,span,strong,table,td,textarea,th,ul,var{margin:0;padding:0}body,html{font:400 100% "微软雅黑",Arail,Tabhoma;text-align:left;color:#535353;-webkit-font-smoothing:antialiased;line-height:normal}ol,ul{list-style:none}img{border:0;vertical-align:top}input,select,textarea{outline:0}textarea{resize:none}table{border-collapse:collapse;border-spacing:0}em,strong,th,var{font-weight:400;font-style:normal}a{text-decoration:none;color:#555}a,input{-webkit-tap-highlight-color:transparent}[v-cloak]{display: none}

87
xz_screen/css/style.css Normal file
View File

@ -0,0 +1,87 @@
#app{position:absolute;top:0;bottom:0;left:0;right:0}
@font-face {
font-family: zhangti;
src: url("../font/HIMALAYA.TTF");
font-weight:bold;
}
[v-cloak]{display: none}
.background{position:absolute;top:0;left:0;bottom:0;right:0;width:100%;height:100%;z-index:-1}
.mid-text{width:7rem;height:2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.go-inside{position:absolute;bottom:0;left:50%;transform:translate(-50%,0);width:2.75rem;height:1.4rem;display:block}
.go-inside img{width:100%;height:100%}
.top{padding:.32rem;overflow:hidden;font-size:0;height:80%}
.top-left{width:5.16rem;height:100%;background:url(../images/main-left.png) no-repeat center;background-size:100% 100%;font-size:0;float:left;padding-bottom:.15rem;box-sizing:border-box}
.left-text{padding:.45rem .3rem 0;text-align:center}
.left-text h3{font-size: .4rem;color:#fcd201;margin-bottom: .3rem}
.img-title{width:100%;height:1.2rem;margin-bottom:.25rem}
.venue-intro-text div, .left-text p, .intro-main div{color:#fcd201 !important;font-size:.2rem !important;line-height:.45rem !important;}
.venue-intro-text img{width: 100%;height: 4rem}
.temperature{font-size:.7rem;color:#fff;margin-bottom:.2rem}
.time{text-align:center;color:#fff;font-size:.3rem;height:.65rem;line-height:.65rem;background:url(../images/time-bg.png) no-repeat center;background-size:100% 100%}
.date{font-size:.2rem;color:#fff;text-align:center;margin-top:.2rem}
.top-right{width:13.2rem;float:right;height:100%;background:url(../images/main-bg.png) no-repeat center;background-size:100% 100%;padding:.5rem .55rem 0;box-sizing:border-box}
.main-title{text-align:center}
.main-title p{color:#fcd71e;font-size:.4rem;}
.main-title span{color:#fcd71e;font-size:.4rem;padding:0 .35rem;position:relative}
.main-title span:before{content:'';display:block;width:.2rem;height:100%;background:url(../images/title-l.png) no-repeat left center;background-size:100% 100%;position:absolute;top:0;left:0}
.main-title span:after{content:'';display:block;width:.2rem;height:100%;background:url(../images/title-r.png) no-repeat left center;background-size:100% 100%;position:absolute;top:0;right:0}
.main-img{margin-top:.2rem}
.main-img ul{overflow:hidden}
.main-img ul li{float:left;width:3.66rem;height:2rem;margin-right:.55rem}
.main-img ul li:nth-child(3n){margin-right:0}
.main-img ul li img{width:100%;height:100%}
.main-text{font-size:.2rem;color:#fff;line-height:.4rem;height:3rem;overflow-y:auto;margin-top:.1rem}
.page{text-align:right;font-size:0;margin-top:.5rem}
.page a{display:inline-block;width:1.28rem;height:.64rem;font-size:.2rem;color:#fff;background:url(../images/page-bg.png) no-repeat center;background-size:100% 100%;text-align:center;line-height:.64rem;margin-right:.2rem}
.bottom{position:absolute;bottom:0;left:0;right:0;font-size:0;z-index:100}
.bottom ul{display: flex;}
.bottom ul li{height:1.4rem;flex: 1;font-size:0;background:url(../images/select.png) no-repeat center;background-size:100% 100%}
.bottom ul li.active{background:url(../images/select-on.png) no-repeat center;background-size:100% 100%}
.bottom ul li a{display:block;font-size:.36rem;color:#ffd400;line-height:.62rem;text-align:center;opacity:.6}
.bottom ul li.active a{opacity:1}
.org-text-box{margin-bottom:.3rem}
.org-text-box:after{content: '';display: block;clear: both}
.org-text-box h3{font-size:.24rem;font-weight:400;color:#ffd400;padding-left:.15rem;border-left:5px solid #ffd400;margin-bottom:.2rem}
.org-text,.personnel-text{font-size:.2rem;color:#fff;line-height:.3rem}
.org-info{font-size:0;margin-bottom:.2rem}
.personnel-text{height:100%;margin-top:.3rem;overflow-y:auto}
.contact,.reward{height:100%;overflow:hidden}
.reward ul{overflow:hidden}
.reward ul li{width:33.333%;float:left;padding:0 .2rem 0 .3rem;background:url(../images/reward-icon.png) no-repeat left center;background-size:.2rem .2rem;font-size:.2rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;line-height:.6rem}
.contact-left{float:left;width:3.9rem}
.contact-title{font-size:.2rem;color:#fff;font-weight:400;padding-left:.25rem;background:url(../images/contact-icon.png) no-repeat left center;background-size:.17rem .17rem;margin-bottom:.24rem}
.contact-left p{font-size:.2rem;color:#fff;padding-left:.25rem;margin-bottom:.4rem}
.contact-right{float:right;width:7.85rem;height:4.6rem;overflow: hidden}
.qr-code{width: 32%;margin-right: 2%;float: left}
.qr-code:last-child{margin-right: 0}
.qr-code img{width: 100%;}
.qr-code p{font-size: .18rem;text-align: center;color: #fff;margin-top: .1rem}
.main{height:70%;overflow-y: auto;margin-top: .2rem}
.venue-main{height: 78%;overflow-y: auto;margin-top: .2rem;position: relative}
.venue-main:after{content: '';display: block;clear: both}
.floor-btn{width: 3%;float: left;text-align: center;position: fixed;}
.floor-btn ul li{font-size: .24rem;line-height: .5rem;color: #fff;cursor: pointer}
.floor-btn ul li.active{color: #FCD71E}
.floor-img{width: 94%;height:100%;float: right}
.intro-main{overflow-y: auto;margin-top: .2rem}
.intro-main p{font-size: .2rem;color: #fff}
.leader-intro{font-size: .2rem;color: #fff;width: 9.5rem;float: right}
.leader-avatar{width: 2rem;height: 2.5rem;float: left;}
.p-text{font-family:'zhangti'}
.detail{position: fixed;top: 0;left: 0;bottom: 0;right: 0;background: rgba(0,0,0,0.6);z-index: 10000}
.detail-container{width: 80%;height: 90%;position: absolute;top: 50%;left: 50%;background: #fff;transform: translate(-50%, -50%);overflow-y: scroll;font-size: .28rem;padding: .2rem;box-sizing: border-box}
.img-list{overflow: hidden;}
.img-list li{width: 32%;margin-right: 2%;margin-bottom: .1rem;height: 4.5rem;float: left;overflow: hidden;}
.img-list li:nth-child(3n){margin-right: 0}
.img-list li p{width: 100%;height: 100%}
.img-list li table{table-layout: fixed;width: 100%}
.img-list li td{position: relative;height: 4.5rem;width: 100%;}
.img-list li img{position: absolute;left: 50%;top: 0;height: 4.5rem;transform: translate(-50%, 0)}
.big-img{position: fixed;top: 0;bottom: 0;left: 0;right: 0;background: rgba(0,0,0,0.6);z-index: 100000}
/*.big-img img{width: 90%;height: 90%;position: absolute;top: 50%;left: 50%;transform: translate(-50%,-50%)}*/
.big-img table{position: absolute;top:50%;left:50%;transform: translate(-50%,-50%)}
.big-img td{font-size: .18rem;color: #fff;text-align: center}
.iframe-container{z-index: 100000;position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: rgba(0,0,0,0.6);padding: .8rem .5rem;}
.iframe{width: 100%;height: 100%;}
.iframe-container img{position: absolute;top: .2rem;right: .2rem;width: .4rem;height: .4rem;cursor: pointer}
.iframe-box{background: #fff;width: 100%;height: 100%;}

207
xz_screen/detail.html Normal file
View File

@ -0,0 +1,207 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>工会活动</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left" v-cloak>
<div class="left-text">
<h3>{{venueInfo.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + venueInfo.venuePhoto" alt="" v-if="venueInfo.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
<div class="top-right">
<div class="main-title">
<p class="p-text">{{pageInfo.reName}}</p>
<span>{{pageInfo.title}}</span>
</div>
<div class="main">
<div class="org-text-box" v-cloak>
<div class="org-info" v-for="union in union">
<!--<h3>{{union.title}}</h3>-->
<div class="org-text" v-html="union.content"></div>
</div>
</div>
</div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li>
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།།</p>
场馆导航
</a>
</li>
<li>
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li>
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '',
time: '',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
floorList: [],
temperature: '',
union: [],
tab: 2,
venueInfo: {},
deviceCode: '',
pageInfo: {
title: '',
reName: ''
},
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
self.menuList = arr
self.pageInfo.title = self.menuList[self.tab].title
self.pageInfo.reName = self.menuList[self.tab].categoryRename
self.getUnion(self.tab)
}
})
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
window.location.href = 'list.html?idx=' + idx
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
this.showIframe = true
this.iframeUrl = url
}
},
// 获取工会活动数据
getUnion: function (idx) {
var self = this
var id = self.menuList[idx].articleCategoryId
doGetForm(self.url + '/app/showarticlecontent/articlecontentlistrelease/' + self.deviceCode + '/' + id, {}, null, function (code, data) {
self.saveUnion(code, data)
})
},
saveUnion: function (code, data) {
if (code == 200) {
console.log(data)
for (var i = 0; i < data.length; i++) {
if (data[i].content.indexOf('src="') != -1) {
data[i].content = data[i].content.replace(/src="/g, 'style="width: 100%" src="' + this.url + '/')
}
}
this.union = data
}
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.venueInfo = data
})
}
},
mounted: function () {
var self = this
self.tab = window.location.search.replace('?','').split('=')[1]
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
console.log('url:' + self.url, 'deviceCode:' + self.deviceCode)
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
// self.getUnion()
self.getVenueGuideId()
$('.main-text, .venue-main, .top-left').niceScroll()
}
})
</script>
</body>
</html>

BIN
xz_screen/font/HIMALAYA.TTF Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

BIN
xz_screen/images/close.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.5 KiB

BIN
xz_screen/images/qr-xcx.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

BIN
xz_screen/images/select.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 810 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

BIN
xz_screen/images/venue.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

221
xz_screen/img-list.html Normal file
View File

@ -0,0 +1,221 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>人才建设</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left" v-cloak>
<div class="left-text">
<h3>{{venueInfo.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + venueInfo.venuePhoto" alt="" v-if="venueInfo.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
<div class="top-right">
<div class="main-title">
<p class="p-text">{{pageInfo.reName}}</p>
<span>{{pageInfo.title}}</span>
</div>
<div class="main">
<div class="org-text-box" v-cloak>
<ul class="img-list">
<li v-for="list in personnel" v-html="list.content" @click="showBigImg(list.content)">
<!--<img src="images/background.png" alt="">-->
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li>
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
场馆导航
</a>
</li>
<li>
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li>
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div class="big-img" v-if="bigImg" v-html="bigImgContent" @click="bigImg = false"></div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '',
time: '',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
floorList: [],
temperature: '',
personnel: [],
tab: 1,
venueInfo: {},
deviceCode: '',
pageInfo: {
title: '',
reName: ''
},
showDetail: false,
detailContent: '',
bigImg: false,
bigImgContent: '',
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
self.menuList = arr
self.pageInfo.title = self.menuList[self.tab].title
self.pageInfo.reName = self.menuList[self.tab].categoryRename
self.getPersonnel(self.tab)
}
})
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
this.tab = idx
this.getPersonnel(idx)
this.pageInfo.title = this.menuList[idx].title
this.pageInfo.reName = this.menuList[idx].categoryRename
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
this.showIframe = true
this.iframeUrl = url
}
},
// 获取人才建设数据
getPersonnel: function (idx) {
var self = this
var id = self.menuList[idx].articleCategoryId
doGetForm(self.url + '/app/showarticlecontent/articlecontentlistrelease/' + self.deviceCode + '/' + id, {}, null, function (code, data) {
self.savePersonnel(code, data)
})
},
savePersonnel: function (code, data) {
if (code == 200) {
for (var i = 0; i < data.length; i++) {
if (data[i].content.indexOf('src="') != -1) {
data[i].content = data[i].content.replace(/src="/g, 'src="' + this.url + '/')
}
}
this.personnel = data
}
},
showText: function (idx) {
this.detailContent = this.personnel[idx].content
this.showDetail = true
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.venueInfo = data
})
},
showBigImg: function (img) {
this.bigImg = true
this.bigImgContent = img
}
},
mounted: function () {
var self = this
self.tab = window.location.search.replace('?','').split('=')[1]
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
self.getVenueGuideId()
$('.main-text, .venue-main, .top-left').niceScroll()
}
})
</script>
</body>
</html>

70
xz_screen/index.html Normal file
View File

@ -0,0 +1,70 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>首页</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<img src="images/mid-text.png" alt="" class="mid-text">
<a href="venue-guide.html" class="go-inside">
<img src="images/go-inside.png" alt="">
</a>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/ajax.js "></script>
<script>
var vue = new Vue({
el: '#app',
data: {
url: '',
deviceCode: '',
backgroundImg: ''
},
methods: {
getBackgroundImg: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
console.log(data)
})
}
},
mounted: function () {
// var url = window.AppInterface.getBaseUrl()
// var deviceCode = window.AppInterface.getDeviceCode()
var url = 'https://www.wgink.ink/show'
// var url = 'http://192.168.0.115:8086/show'
var deviceCode = 'RKZ01H12'
this.url = url
this.deviceCode = deviceCode
localStorage.setItem('url', url)
localStorage.setItem('deviceCode', deviceCode)
this.getBackgroundImg()
var timer
$('.mid-text').on({
touchstart: function () {
timer = setTimeout(function () {
timer = ''
AppInterface.showPwdDialog()
}, 2000)
},
touchmove: function () {
clearTimeout(timer)
timer = ''
},
touchend: function () {
clearTimeout(timer)
timer = ''
}
})
}
})
</script>
</body>
</html>

88
xz_screen/js/ajax.js Normal file
View File

@ -0,0 +1,88 @@
function ObjToForm(obj) {
var formStr;
for (var name in obj) {
if (formStr == undefined || formStr == null) {
formStr = name + '=' + obj[name];
} else {
formStr += '&' + name + '=' + obj[name];
}
}
return formStr;
}
/**
* 发起get请求普通form表单格式
* @param url 地址
* @param dataObj 请求对象
* @param successCallback 请求成功回调
* @param errorCallback 请求失败回调
* @param beforeSendCallback 发送前执行
* @param completeCallback 发送后执行
*/
function doGetForm(url, dataObj, args, successCallback, errorCallback, beforeCallback, completeCallback) {
dataObj.tm = new Date().getTime();
$.ajax({
url: url,
type: 'GET',
contentType: "application/json;charset=utf-8",
data: (dataObj == undefined || dataObj == null) ? {} : ObjToForm(dataObj),
success: function(data, status, XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
successCallback(responseCode, data, args);
},
error: function(XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
if (errorCallback != undefined && errorCallback != null && typeof(errorCallback) == 'function') {
errorCallback(responseCode);
}
},
beforeSend: function(XMLHttpRequest) {
if (beforeCallback != undefined && beforeCallback != null && typeof(beforeCallback) == 'function') {
beforeCallback(XMLHttpRequest);
}
},
complete: function(XMLHttpRequest, status) {
if (completeCallback != undefined && completeCallback != null && typeof(completeCallback) == 'function') {
completeCallback(XMLHttpRequest, status);
}
}
});
};
/**
* 发起post请求
* @param url 请求地址
* @param dataObj 请求对象
* @param successCallback 请求成功回调
* @param errorCallback 请求失败回调
* @param beforeSendCallback 发送前执行
* @param completeCallback 发送后执行
*/
function doPostJson(url, dataObj, args, successCallback, errorCallback, beforeCallback, completeCallback, isJson) {
$.ajax({
url: url,
type: 'POST',
contentType: "application/json;charset=utf-8",
data: (dataObj == undefined || dataObj == null) ? {} : JSON.stringify(dataObj),
success: function(data, status, XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
successCallback(responseCode, data, args);
},
error: function(XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
if (errorCallback != undefined && errorCallback != null && typeof(errorCallback) == 'function') {
errorCallback(responseCode);
}
},
beforeSend: function(XMLHttpRequest) {
if (beforeCallback != undefined && beforeCallback != null && typeof(beforeCallback) == 'function') {
beforeCallback(XMLHttpRequest);
}
},
complete: function(XMLHttpRequest, status) {
if (completeCallback != undefined && completeCallback != null && typeof(completeCallback) == 'function') {
completeCallback(XMLHttpRequest, status);
}
}
});
};

3
xz_screen/js/jquery-2.1.4.min.js vendored Normal file

File diff suppressed because one or more lines are too long

3729
xz_screen/js/nicescroll.js Normal file

File diff suppressed because it is too large Load Diff

12
xz_screen/js/rem.js Normal file
View File

@ -0,0 +1,12 @@
function setPage() {
var html = document.getElementsByTagName('html')[0];
var deviceWidth = document.documentElement.clientWidth;
var scale = deviceWidth / 1920;//psd图上的宽度
html.style.fontSize = scale * 100 + 'px';
}
setPage();
window.onresize = function () {
setPage();
}

10947
xz_screen/js/vue.js Normal file

File diff suppressed because it is too large Load Diff

213
xz_screen/list.html Normal file
View File

@ -0,0 +1,213 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>人才建设</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left" v-cloak>
<div class="left-text">
<h3>{{venueInfo.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + venueInfo.venuePhoto" alt="" v-if="venueInfo.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
<div class="top-right">
<div class="main-title">
<p class="p-text">{{pageInfo.reName}}</p>
<span>{{pageInfo.title}}</span>
</div>
<div class="main">
<div class="org-text-box" v-cloak>
<div class="org-info" v-for="(personnel,idx) in personnel">
<h3 @click="showText(idx)">{{personnel.title}}</h3>
<!--<div class="org-text" v-html="personnel.content" v-if="personnel.showContent"></div>-->
</div>
</div>
</div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li>
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
场馆导航
</a>
</li>
<li>
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li>
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div class="detail" v-if="showDetail" @click="showDetail = false">
<div class="detail-container" v-html="detailContent"></div>
</div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '',
time: '',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
floorList: [],
temperature: '',
personnel: [],
tab: 1,
venueInfo: {},
deviceCode: '',
pageInfo: {
title: '',
reName: ''
},
showDetail: false,
detailContent: '',
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
self.menuList = arr
self.pageInfo.title = self.menuList[self.tab].title
self.pageInfo.reName = self.menuList[self.tab].categoryRename
self.getPersonnel(self.tab)
}
})
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
window.location.href = 'list.html?idx=' + idx
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
this.showIframe = true
this.iframeUrl = url
}
},
// 获取人才建设数据
getPersonnel: function (idx) {
var self = this
var id = self.menuList[idx].articleCategoryId
doGetForm(self.url + '/app/showarticlecontent/articlecontentlistrelease/' + self.deviceCode + '/' + id, {}, null, function (code, data) {
self.savePersonnel(code, data)
})
},
savePersonnel: function (code, data) {
if (code == 200) {
for (var i = 0; i < data.length; i++) {
if (data[i].content.indexOf('src="') != -1) {
data[i].content = data[i].content.replace(/src="/g, 'src="' + this.url + '/')
}
}
this.personnel = data
}
},
showText: function (idx) {
this.detailContent = this.personnel[idx].content
this.showDetail = true
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.venueInfo = data
})
},
},
mounted: function () {
var self = this
self.tab = window.location.search.replace('?','').split('=')[1]
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
self.getVenueGuideId()
$('.main-text, .venue-main, .top-left').niceScroll()
}
})
</script>
</body>
</html>

228
xz_screen/venue-guide.html Normal file
View File

@ -0,0 +1,228 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>场馆导航</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left" v-cloak>
<div class="left-box" style="height: 100%;overflow-y: scroll">
<div class="left-text">
<h3>{{venueInfo.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + venueInfo.venuePhoto" alt="" v-if="venueInfo.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
</div>
<div class="top-right">
<div class="main-title">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
<span>场馆导航</span>
</div>
<div class="main venue-main">
<div class="floor-btn">
<ul v-cloak>
<li v-for="btn in floorList">{{btn.venueName}}</li>
</ul>
</div>
<div class="floor-img" id="images" v-cloak>
<div v-for="floor in floorList" class="floor-img-box" v-if="floorList && floorList.length > 0">
<img :src="url + sourcePath + floor.venuePhoto" alt="" style="width: 100%">
</div>
</div>
</div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li class="active">
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
场馆导航
</a>
</li>
<li>
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li>
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div style="display: none">
<img src="" alt="" id="image">
</div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/vue.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '2020-01-01',
time: '00:00:00',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
floorList: [],
temperature: '',
venueInfo: {},
tab: '*',
deviceCode: '',
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
self.saveBottomMenu(code, data)
})
},
saveBottomMenu: function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
this.menuList = arr
}
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.saveVenueGuideId(code, data)
})
},
saveVenueGuideId: function (code, data) {
if (code == 200) {
this.venueInfo = data
this.getVenueGuide(data.showVenueId)
this.$nextTick(function () {
$('.left-box').niceScroll({
zindex: 2000
})
})
}
},
// 获取场馆导航showVenueId
getVenueGuide: function (id) {
var self = this
doGetForm(self.url + '/app/showvenue/listshowvenuerelease/' + id, {}, null, function (code, data) {
self.saveVenueGuide(code, data)
})
},
saveVenueGuide: function (code, data) {
var self = this
if (code == 200) {
self.floorList = data
setTimeout(function () {
$('.floor-btn ul li:first-child').addClass('active')
var cur = 0
$('.floor-btn ul li').click(function () {
$(this).addClass('active').siblings('li').removeClass('active')
cur += $('.floor-img-box').eq($(this).index()).position().top
$(".venue-main").animate({
"scrollTop": cur
},500);
})
}, 50)
}
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
window.location.href = 'list.html?idx=' + idx
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
// window.location.href = url
this.showIframe = true
this.iframeUrl = url
}
}
},
mounted: function () {
var self = this
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
self.getVenueGuideId()
// $('.floor-img').niceScroll({
// zindex: 2000
// })
}
})
</script>
</body>
</html>

171
xz_screen/venue-intro.html Normal file
View File

@ -0,0 +1,171 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/>
<title>场馆介绍</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<img src="images/background.png" alt="" class="background">
<div class="top">
<div class="top-left">
<div class="left-text" v-cloak>
<h3>{{venueIntro.venueName}}</h3>
<div class="venue-intro-text">
<img :src="url + sourcePath + venueIntro.venuePhoto" alt="" v-if="venueIntro.venuePhoto">
</div>
<div class="temperature">21℃</div>
</div>
<div class="time">{{time}}</div>
<div class="date">{{date}}</div>
</div>
<div class="top-right" v-cloak>
<div class="main-title">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།།</p>
<span>场馆介绍</span>
</div>
<div class="main intro-main" ref="view" v-html="venueIntro.venueDescription"></div>
</div>
</div>
<div class="bottom">
<ul v-cloak>
<li>
<a href="venue-guide.html">
<p class="p-text">ནང་ཁུལ་གྱི་ཕྱོགས་སྟོན།</p>
场馆导航
</a>
</li>
<li class="active">
<a href="venue-intro.html">
<p class="p-text">ནང་ཁུལ་གྱི་ངོ་སྤྲོད།</p>
场馆介绍
</a>
</li>
<li v-for="(menu,idx) in menuList" :class="{active: tab == idx}" @click="goPage(idx, menu.categoryShowType, menu.categoryOpenUrl)">
<a href="javascript: void(0);">
<p class="p-text">{{menu.categoryRename}}</p>
{{menu.title}}
</a>
</li>
<li>
<a href="contact.html">
<p class="p-text">ང་ཚོར་འབྲེལ་བ་གནང་ཐབས།</p>
联系我们
</a>
</li>
</ul>
</div>
<div class="iframe-container" v-if="showIframe">
<div class="iframe-box">
<img src="images/close.png" alt="" @click="showIframe = false">
<iframe :src="iframeUrl" frameborder="0" class="iframe"></iframe>
</div>
</div>
</div>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/vue.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
date: '',
time: '',
url: '',
sourcePath: '/route/file/downloadfile/false/',
menuList: [],
venueIntro: {},
tab: '*',
deviceCode: '',
iframeUrl: '',
showIframe: false
},
methods: {
// 获取日期、时间
initDate: function () {
var date = new Date()
var year = date.getFullYear()
var month = date.getMonth() + 1
var day = date.getDate()
var hour = date.getHours()
var mint = date.getMinutes()
var second = date.getSeconds()
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (mint < 10) {
mint = '0' + mint
}
if (second < 10) {
second = '0' + second
}
this.date = year + '年' + month + '月' + day + '日'
this.time = hour + ':' + mint + ':' + second
},
// 获取底部导航
getMenu: function () {
var self = this
doGetForm(self.url + '/app/showarticlecategory/listarticlecategoryrelease', {
deviceCode: self.deviceCode
}, null, function (code, data) {
if (code == 200) {
var arr = []
for (var i = 0; i < data.length; i++) {
if (data[i].categorySwitch == '1') {
arr.push(data[i])
}
}
self.menuList = arr
}
})
},
// 获取场馆导航场馆ID
getVenueGuideId: function () {
var self = this
doGetForm(self.url + '/app/showvenue/getshowvenuebydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
if (code == 200) {
self.venueIntro = data
}
})
},
// 跳转页面
goPage: function (idx, type, url) {
if (type == '99cadd0d-4ec7-4525-bfa4-e6535213792f') {
window.location.href = 'list.html?idx=' + idx
} else if (type == 'd5ce325d-d7b4-47fd-b258-48b56153c397') {
window.location.href = 'detail.html?idx=' + idx
} else if (type == '9d2efb79-3213-4558-983c-14188a3fbf24') {
window.location.href = 'img-list.html?idx=' + idx
} else {
// window.location.href = url
this.showIframe = true
this.iframeUrl = url
}
}
},
mounted: function () {
var self = this
self.url = localStorage.getItem('url')
self.deviceCode = localStorage.getItem('deviceCode')
setInterval(function () {
self.initDate()
}, 1000)
self.getMenu()
self.getVenueGuideId()
}
})
</script>
</body>
</html>

BIN
xz_screen49/.DS_Store vendored Normal file

Binary file not shown.

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
</project>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/xz_screen49.iml" filepath="$PROJECT_DIR$/.idea/xz_screen49.iml" />
</modules>
</component>
</project>

View File

@ -0,0 +1,232 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="02196cde-f765-43b2-a35e-74082aa73add" name="默认" comment="" />
<ignored path="$PROJECT_DIR$/.tmp/" />
<ignored path="$PROJECT_DIR$/temp/" />
<ignored path="$PROJECT_DIR$/tmp/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FUSProjectUsageTrigger">
<session id="-1217130505">
<usages-collector id="statistics.lifecycle.project">
<counts>
<entry key="project.closed" value="3" />
<entry key="project.open.time.0" value="1" />
<entry key="project.open.time.2" value="1" />
<entry key="project.open.time.4" value="1" />
<entry key="project.opened" value="3" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.extensions.open">
<counts>
<entry key="html" value="1" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.types.open">
<counts>
<entry key="HTML" value="1" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.extensions.edit">
<counts>
<entry key="html" value="425" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.types.edit">
<counts>
<entry key="HTML" value="425" />
</counts>
</usages-collector>
</session>
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/index.html">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
<caret line="13" column="26" selection-start-line="13" selection-start-column="26" selection-end-line="13" selection-end-column="26" />
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/index.html" />
</list>
</option>
</component>
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsFlowSettings">
<service-enabled>true</service-enabled>
<exe-path />
<other-services-enabled>true</other-services-enabled>
<auto-save>true</auto-save>
</component>
<component name="JsGulpfileManager">
<detection-done>true</detection-done>
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="x" value="10" />
<option name="y" value="20" />
<option name="width" value="1350" />
<option name="height" value="690" />
</component>
<component name="ProjectInspectionProfilesVisibleTreeState">
<entry key="Project Default">
<profile-state>
<expanded-state>
<State />
<State>
<id>ECMAScript 6 migration aidsJavaScript</id>
</State>
<State>
<id>GeneralJavaScript</id>
</State>
<State>
<id>HTML</id>
</State>
<State>
<id>Handlebars/Mustache</id>
</State>
<State>
<id>JavaScript</id>
</State>
<State>
<id>Node.jsJavaScript</id>
</State>
<State>
<id>RegExp</id>
</State>
<State>
<id>TypeScript</id>
</State>
</expanded-state>
</profile-state>
</entry>
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="xz_screen49" type="b2602c69:ProjectViewProjectNode" />
<item name="xz_screen49" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/../xz_screen" />
<property name="node.js.path.for.package.stylelint" value="project" />
<property name="node.js.path.for.package.tslint" value="project" />
<property name="node.js.selected.package.stylelint" value="" />
<property name="node.js.selected.package.tslint" value="" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
<property name="settings.editor.selected.configurable" value="coverage" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="02196cde-f765-43b2-a35e-74082aa73add" name="默认" comment="" />
<created>1594652582025</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1594652582025</updated>
<workItem from="1594652583540" duration="1783000" />
<workItem from="1594694653366" duration="886000" />
<workItem from="1594696646475" duration="7000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="2676000" />
</component>
<component name="ToolWindowManager">
<frame x="-7" y="-7" width="1550" height="838" extended-state="6" />
<layout>
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.18295905" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Favorites" order="2" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Docker" order="7" show_stripe_button="false" />
<window_info anchor="bottom" id="Version Control" order="8" show_stripe_button="false" />
<window_info anchor="bottom" id="Terminal" order="9" />
<window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
<window_info anchor="bottom" id="调试" order="11" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
</component>
<component name="VcsContentAnnotationSettings">
<option name="myLimit" value="2678400000" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/index.html">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="154">
<caret line="13" column="26" selection-start-line="13" selection-start-column="26" selection-end-line="13" selection-end-column="26" />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ScopeChooserConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="WEB_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
<excludeFolder url="file://$MODULE_DIR$/temp" />
<excludeFolder url="file://$MODULE_DIR$/tmp" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

View File

@ -0,0 +1 @@
@charset "utf-8";a,body,dd,div,dl,dt,em,form,h1,h2,h3,h4,h5,h6,img,input,li,ol,option,p,select,span,strong,table,td,textarea,th,ul,var{margin:0;padding:0}body,html{font:400 100% "微软雅黑",Arail,Tabhoma;text-align:left;color:#535353;-webkit-font-smoothing:antialiased;line-height:normal}ol,ul{list-style:none}img{border:0;vertical-align:top}input,select,textarea{outline:0}textarea{resize:none}table{border-collapse:collapse;border-spacing:0}em,strong,th,var{font-weight:400;font-style:normal}a{text-decoration:none;color:#555}a,input{-webkit-tap-highlight-color:transparent}[v-cloak]{display: none}

33
xz_screen49/css/style.css Normal file
View File

@ -0,0 +1,33 @@
#app{overflow: hidden;position: absolute;top: 0;bottom: 0;left: 0;right: 0;background: url("../images/background.png") no-repeat center;background-size: 100% 100%}
.main{width: 96%;height: 88%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
.left{width: 70%;height: 100%;float:left;background: #000}
.right{width: 29%;height: 100%;float: right;overflow: hidden;}
.left video{width: 100%;height: 100%!important;outline: none;}
.right ul{height: 100%;overflow-y: auto}
.right ul li{width: 100%;height: 32%;margin-bottom: 2%;opacity: .4;cursor: pointer}
.right ul li.active{opacity: 1}
.right ul li img{width: 100%;height: 100%}
.full{width: 100%}
.img-mid, .img-mid .bd, .img-mid div, .img-mid img, .img-mid li, .img-mid ul{width: 100% !important;height: 100% !important;}
.mid-container{overflow: hidden;height: 100%}
.img-mid-left{width: 49%;height: 100%;float: left;}
.img-mid-right{width: 49%;height: 100%;float: right}
.img-mid-right div, .img-mid-left div, .img-mid-right img, .img-mid-left img, .img-mid-right ul, .img-mid-left ul, .img-mid-right li, .img-mid-left li{height: 100%}
.hide{position: absolute;top: 0;left: 0;width:1rem;height: 1rem;background: transparent}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

View File

@ -0,0 +1,62 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<div class="main">
<div class="mid-container">
<div class="img-mid-left">
<div class="bd">
<ul>
<li>
<img src="images/travel-banner1.jpg" alt="">
</li>
<li>
<img src="images/travel-banner2.jpg" alt="">
</li>
<li>
<img src="images/background.png" alt="">
</li>
</ul>
</div>
</div>
<div class="img-mid-right">
<div class="bd">
<ul>
<li>
<img src="images/travel-banner1.jpg" alt="">
</li>
<li>
<img src="images/travel-banner2.jpg" alt="">
</li>
<li>
<img src="images/background.png" alt="">
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/jquery.SuperSlide.2.1.1.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {},
methods: {},
mounted: function () {
jQuery(".img-mid-left").slide({titCell:".hd ul",mainCell:".bd ul",autoPage:true,effect:"top",autoPlay:true});
jQuery(".img-mid-right").slide({titCell:".hd ul",mainCell:".bd ul",autoPage:true,effect:"top",autoPlay:true});
}
})
</script>
</body>
</html>

79
xz_screen49/img-mid.html Normal file
View File

@ -0,0 +1,79 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<div class="hide"></div>
<div class="main">
<div class="img-mid">
<div class="bd">
<ul>
<li v-for="img in imgList">
<img :src="url + '/route/file/downloadfile/false/' + img.dataItemFileId" alt="">
</li>
</ul>
</div>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/jquery.SuperSlide.2.1.1.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
url: '',
deviceCode: '',
imgList: []
},
methods: {
getList: function () {
var self = this
doGetForm(self.url + '/app/showdata/getshowdatabydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
if (data.dataType == 2 && data.typesettingCode == 'C0001') {
self.imgList = data.fileList
self.$nextTick(function () {
jQuery(".img-mid").slide({titCell:".hd ul",mainCell:".bd ul",autoPage:true,effect:"top",autoPlay:true,delayTime:data.dataRotation});
})
}
// 2图片 4视频 1文字 3音乐
})
}
},
mounted: function () {
this.url = localStorage.getItem('url')
this.deviceCode = localStorage.getItem('deviceCode')
this.getList()
setInterval(function () {
self.getList()
}, 600000)
var timer
$('.hide').on({
touchstart: function (e) {
timer = setTimeout(function () {
timer = ''
AppInterface.showPwdDialog()
}, 2000)
},
touchmove: function () {
clearTimeout(timer)
timer = ''
},
touchend: function () {
clearTimeout(timer)
timer = ''
}
})
}
})
</script>
</body>
</html>

147
xz_screen49/index.html Normal file
View File

@ -0,0 +1,147 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<!--<link rel="stylesheet" href="css/video-js.min.css">-->
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<div class="hide"></div>
<div class="main">
<div class="left" :class="{full: sideList.length == 1}">
<video id="player" autoplay controls :poster="url + sourcePath + playing.dataItemPhotoId" :src="url + sourcePath + playing.dataItemFileId"></video>
</div>
<div class="right" v-if="sideList && sideList.length > 1">
<ul>
<li v-for="(video,idx) in sideList" @click="changeVideo(idx)" :class="{active: curPlaying == idx}">
<img :src="url + sourcePath + video.dataItemPhotoId" alt="">
</li>
</ul>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<script src="js/jquery.SuperSlide.2.1.1.js"></script>
<script src="js/nicescroll.js"></script>
<script src="js/ajax.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
url: '',
deviceCode: '',
curPlaying: 0,
playing: {},
toTop: 0,
sideList: [],
sourcePath: '/route/file/downloadfile/true/'
},
methods: {
changeVideo: function (idx) {
var self = this
self.curPlaying = idx
self.playing = self.sideList[self.curPlaying]
$('#player').prop('src', self.playing.dataItemFileId)
$('#player').get(0).play()
$('.right ul li').eq(self.curPlaying).addClass('active').siblings('li').removeClass('active')
self.toTop += $('.right ul li').eq(self.curPlaying).position().top
if (self.curPlaying == 0) {
self.toTop = 0
}
$(".right ul").animate({
"scrollTop": self.toTop
},500);
},
getList: function () {
var self = this
doGetForm(self.url + '/app/showdata/getshowdatabydevicecoderelease/' + self.deviceCode, {}, null, function (code, data) {
self.saveList(code, data)
}) // 2图片 4视频 1文字 3音乐
},
saveList: function (code, data) {
var self = this
if (code == 200) {
if (data.dataType == 2 && data.typesettingCode == 'C0001') {
window.location.href = 'img-mid.html'
} else if (data.dataType == 4) {
var isExist
if (JSON.stringify(self.playing) != '{}') {
for (var i = 0; i < data.fileList.length; i++) {
if (data.fileList[i].dataItemFileId == self.playing.dataItemFileId) {
isExist = true
}
}
if (!isExist) {
self.sideList = data.fileList
self.playing = self.sideList[0]
self.curPlaying = 0
}
} else {
self.sideList = data.fileList
self.playing = self.sideList[0]
}
}
}
}
},
mounted: function () {
var self = this
self.url = window.AppInterface.getBaseUrl()
self.deviceCode = window.AppInterface.getDeviceCode()
// self.url = 'https://www.wgink.ink/show'
// self.deviceCode = 'RKZ01H13'
localStorage.setItem('url', self.url)
localStorage.setItem('deviceCode', self.deviceCode)
self.getList()
setInterval(function () {
self.getList()
}, 600000)
$('#player').on('ended', function () {
self.curPlaying++
if (self.curPlaying >= self.sideList.length) {
self.curPlaying = 0
}
self.playing = self.sideList[self.curPlaying]
$('#player').prop('src', self.playing.dataItemFileId)
setTimeout(function () {
$('#player').get(0).play()
}, 10)
if (self.sideList.length > 1) {
$('.right ul li').eq(self.curPlaying).addClass('active').siblings('li').removeClass('active')
self.toTop += $('.right ul li').eq(self.curPlaying).position().top
if (self.curPlaying == 0) {
self.toTop = 0
}
$(".right ul").animate({
"scrollTop": self.toTop
},500);
}
})
$('.right ul').niceScroll()
var timer
$('.hide').on({
touchstart: function (e) {
timer = setTimeout(function () {
timer = ''
AppInterface.showPwdDialog()
}, 2000)
},
touchmove: function () {
clearTimeout(timer)
timer = ''
},
touchend: function () {
clearTimeout(timer)
timer = ''
}
})
}
})
</script>
</body>
</html>

88
xz_screen49/js/ajax.js Normal file
View File

@ -0,0 +1,88 @@
function ObjToForm(obj) {
var formStr;
for (var name in obj) {
if (formStr == undefined || formStr == null) {
formStr = name + '=' + obj[name];
} else {
formStr += '&' + name + '=' + obj[name];
}
}
return formStr;
}
/**
* 发起get请求普通form表单格式
* @param url 地址
* @param dataObj 请求对象
* @param successCallback 请求成功回调
* @param errorCallback 请求失败回调
* @param beforeSendCallback 发送前执行
* @param completeCallback 发送后执行
*/
function doGetForm(url, dataObj, args, successCallback, errorCallback, beforeCallback, completeCallback) {
dataObj.tm = new Date().getTime();
$.ajax({
url: url,
type: 'GET',
contentType: "application/json;charset=utf-8",
data: (dataObj == undefined || dataObj == null) ? {} : ObjToForm(dataObj),
success: function(data, status, XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
successCallback(responseCode, data, args);
},
error: function(XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
if (errorCallback != undefined && errorCallback != null && typeof(errorCallback) == 'function') {
errorCallback(responseCode);
}
},
beforeSend: function(XMLHttpRequest) {
if (beforeCallback != undefined && beforeCallback != null && typeof(beforeCallback) == 'function') {
beforeCallback(XMLHttpRequest);
}
},
complete: function(XMLHttpRequest, status) {
if (completeCallback != undefined && completeCallback != null && typeof(completeCallback) == 'function') {
completeCallback(XMLHttpRequest, status);
}
}
});
};
/**
* 发起post请求
* @param url 请求地址
* @param dataObj 请求对象
* @param successCallback 请求成功回调
* @param errorCallback 请求失败回调
* @param beforeSendCallback 发送前执行
* @param completeCallback 发送后执行
*/
function doPostJson(url, dataObj, args, successCallback, errorCallback, beforeCallback, completeCallback, isJson) {
$.ajax({
url: url,
type: 'POST',
contentType: "application/json;charset=utf-8",
data: (dataObj == undefined || dataObj == null) ? {} : JSON.stringify(dataObj),
success: function(data, status, XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
successCallback(responseCode, data, args);
},
error: function(XMLHttpRequest) {
var responseCode = XMLHttpRequest.status;
if (errorCallback != undefined && errorCallback != null && typeof(errorCallback) == 'function') {
errorCallback(responseCode);
}
},
beforeSend: function(XMLHttpRequest) {
if (beforeCallback != undefined && beforeCallback != null && typeof(beforeCallback) == 'function') {
beforeCallback(XMLHttpRequest);
}
},
complete: function(XMLHttpRequest, status) {
if (completeCallback != undefined && completeCallback != null && typeof(completeCallback) == 'function') {
completeCallback(XMLHttpRequest, status);
}
}
});
};

3
xz_screen49/js/jquery-2.1.4.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

3729
xz_screen49/js/nicescroll.js Normal file

File diff suppressed because it is too large Load Diff

12
xz_screen49/js/rem.js Normal file
View File

@ -0,0 +1,12 @@
function setPage() {
var html = document.getElementsByTagName('html')[0];
var deviceWidth = document.documentElement.clientWidth;
var scale = deviceWidth / 1920;//psd图上的宽度
html.style.fontSize = scale * 100 + 'px';
}
setPage();
window.onresize = function () {
setPage();
}

10947
xz_screen49/js/vue.js Normal file

File diff suppressed because it is too large Load Diff

69
xz_screen49/video.html Normal file
View File

@ -0,0 +1,69 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/reset.css">
<link rel="stylesheet" href="css/style.css">
<!--<link rel="stylesheet" href="css/video-js.min.css">-->
<script src="js/rem.js"></script>
</head>
<body>
<div id="app">
<div class="main">
<div class="left full">
<video id="player" autoplay controls :poster="playing.poster" :src="playing.videoPath"></video>
</div>
</div>
</div>
<script src="js/vue.js"></script>
<script src="js/jquery-2.1.4.min.js"></script>
<!--<script src="js/video.min.js"></script>-->
<script src="js/jquery.SuperSlide.2.1.1.js"></script>
<script src="js/nicescroll.js"></script>
<script>
var vue = new Vue({
el: '#app',
data: {
curPlaying: 0,
playing: {},
toTop: 0,
videoList: [
{
poster: 'images/travel-banner1.jpg',
videoPath: 'images/无涯.mp4'
},
{
poster: 'images/travel-banner2.jpg',
videoPath: 'images/oceans.mp4'
},
{
poster: 'images/background.png',
videoPath: 'images/无涯.mp4'
},
{
poster: 'images/travel-banner1.jpg',
videoPath: 'images/无涯.mp4'
}
]
},
methods: {},
mounted: function () {
var self = this
this.playing = this.videoList[0]
$('#player').on('ended', function () {
self.curPlaying++
if (self.curPlaying >= self.videoList.length) {
self.curPlaying = 0
}
self.playing = self.videoList[self.curPlaying]
$('#player').prop('src', self.playing.videoPath)
setTimeout(function () {
$('#player').get(0).play()
}, 10)
})
}
})
</script>
</body>
</html>