├── .gitignore ├── LICENSE ├── README.md ├── app.js ├── app.json ├── app.wxss ├── config.default.js ├── images ├── core │ ├── bbq.png │ ├── bbq@disabled.png │ ├── bx.png │ ├── bx@disabled.png │ ├── cj.png │ ├── cj@disabled.png │ ├── common │ │ ├── down.png │ │ ├── down_w.png │ │ ├── left_g.png │ │ ├── right_g.png │ │ └── up.png │ ├── df.png │ ├── df@disabled.png │ ├── es │ │ └── list.png │ ├── jy.png │ ├── jy@disabled.png │ ├── kb.png │ ├── kb@disabled.png │ ├── kjs.png │ ├── kjs │ │ ├── building-icon.png │ │ ├── classTime-icon.png │ │ ├── classroom-icon.png │ │ ├── day-icon.png │ │ └── week-icon.png │ ├── kjs@disabled.png │ ├── ks.png │ ├── ks@disabled.png │ ├── mht.png │ ├── mht@disabled.png │ ├── sdf.png │ ├── sdf │ │ └── sdf-bg.png │ ├── sdf@disabled.png │ ├── xs.png │ ├── xs │ │ ├── clear.png │ │ └── search-sign.png │ ├── xs@disabled.png │ ├── ykt.png │ ├── ykt │ │ └── card-bg.png │ ├── ykt@disabled.png │ ├── zs.png │ ├── zs@disabled.png │ ├── zw.png │ └── zw@disabled.png ├── headimg.jpg ├── index │ ├── book.png │ ├── card.png │ ├── findbook.png │ ├── index.png │ ├── index@active.png │ ├── loading.gif │ ├── love.png │ ├── love@active.png │ ├── more.png │ ├── more@active.png │ ├── news.png │ ├── news@active.png │ ├── nothing.png │ ├── qf.png │ └── tri.png ├── more │ ├── about_bg.jpg │ ├── aboutmiao.png │ ├── close.png │ ├── enter.png │ ├── envelope.png │ ├── fanka.png │ ├── gx.png │ ├── help.png │ ├── issue.png │ ├── lanshan.png │ ├── logo.png │ ├── setting.png │ ├── title.png │ ├── tushuzheng.png │ └── wave.png └── news │ ├── all.png │ ├── all@colour.png │ ├── all@gray.png │ ├── file.png │ ├── jw.png │ ├── jw@colour.png │ ├── jw@gray.png │ ├── jz.png │ ├── jz@colour.png │ ├── jz@gray.png │ ├── new.png │ ├── sj.png │ ├── sj@colour.png │ ├── sj@gray.png │ ├── xb.png │ ├── xb@colour.png │ ├── xb@gray.png │ ├── xm.png │ ├── xm@colour.png │ ├── xm@gray.png │ ├── xy.png │ ├── xy@colour.png │ └── xy@gray.png ├── pages ├── authorize │ ├── index.js │ ├── index.json │ ├── index.wxml │ └── index.wxss ├── core │ ├── bbq │ │ ├── bbq.js │ │ ├── bbq.json │ │ ├── bbq.wxml │ │ └── bbq.wxss │ ├── cj │ │ ├── cj.js │ │ ├── cj.json │ │ ├── cj.wxml │ │ └── cj.wxss │ ├── jy │ │ ├── jy.js │ │ ├── jy.json │ │ ├── jy.wxml │ │ └── jy.wxss │ ├── kb │ │ ├── kb.js │ │ ├── kb.json │ │ ├── kb.wxml │ │ └── kb.wxss │ ├── kjs │ │ ├── kjs.js │ │ ├── kjs.json │ │ ├── kjs.wxml │ │ └── kjs.wxss │ ├── ks │ │ ├── ks.js │ │ ├── ks.json │ │ ├── ks.wxml │ │ └── ks.wxss │ ├── mht │ │ ├── mht.js │ │ ├── mht.json │ │ ├── mht.wxml │ │ └── mht.wxss │ ├── xs │ │ ├── xs.js │ │ ├── xs.json │ │ ├── xs.wxml │ │ └── xs.wxss │ ├── ykt │ │ ├── ykt.js │ │ ├── ykt.json │ │ ├── ykt.wxml │ │ └── ykt.wxss │ └── zs │ │ ├── detail │ │ ├── detail.js │ │ ├── detail.json │ │ ├── detail.wxml │ │ └── detail.wxss │ │ ├── zs.js │ │ ├── zs.json │ │ ├── zs.wxml │ │ └── zs.wxss ├── index │ ├── index.js │ ├── index.json │ ├── index.wxml │ └── index.wxss ├── more │ ├── about.js │ ├── about.json │ ├── about.wxml │ ├── about.wxss │ ├── append.js │ ├── append.json │ ├── append.wxml │ ├── append.wxss │ ├── issues.js │ ├── issues.json │ ├── issues.wxml │ ├── issues.wxss │ ├── login.js │ ├── login.json │ ├── login.wxml │ ├── login.wxss │ ├── more.js │ ├── more.json │ ├── more.wxml │ └── more.wxss ├── news │ ├── detail │ │ ├── detail.js │ │ ├── detail.wxml │ │ └── detail.wxss │ ├── jw │ │ ├── jw_detail.js │ │ ├── jw_detail.json │ │ ├── jw_detail.wxml │ │ └── jw_detail.wxss │ ├── news.js │ ├── news.json │ ├── news.wxml │ ├── news.wxss │ ├── xb │ │ ├── xb_detail.js │ │ ├── xb_detail.json │ │ ├── xb_detail.wxml │ │ └── xb_detail.wxss │ ├── xm │ │ ├── xm_detail.js │ │ ├── xm_detail.json │ │ ├── xm_detail.wxml │ │ └── xm_detail.wxss │ └── xy │ │ ├── xy_detail.js │ │ ├── xy_detail.json │ │ ├── xy_detail.wxml │ │ └── xy_detail.wxss └── setting │ ├── index.js │ ├── index.json │ ├── index.wxml │ └── index.wxss ├── sitemap.json ├── utils ├── ald-stat-conf.js ├── ald-stat.js ├── base64.min.js ├── md5.min.js ├── mta_analysis.js └── util.js └── wxParse ├── html2json.js ├── htmlparser.js ├── showdown.js ├── wxDiscode.js ├── wxParse.js ├── wxParse.wxml └── wxParse.wxss /.gitignore: -------------------------------------------------------------------------------- 1 | project.config.json 2 | config.js 3 | .DS_Store 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 莞香小喵 2 | === 3 | 官网:http://www.gxgk.cc 4 | 5 | > **莞香小喵** 6 | 是一款**微信小程序** 7 | > 8 | > 前端源码fork自重庆邮电大学[we重邮微信小程序](https://github.com/mcc108/wecqupt),遵守AGPLV3协议开源,已取得作者许可。 9 | 后端由**莞香广科团队**自主开发的[广科小喵公众号后端程序](https://github.com/paicha/gxgk-wechat-server) 10 | > 11 | > 同**广科小喵微信公众号**服务于**广东科技学院**,提供多元化的校园功能,有别于公众号的一种全新的连接用户与服务的方式,无需下载与安装即可在微信内被便捷地获取和传播,同时具有出色的使用体验。 12 | 13 | --- 14 | 15 | 二维码 16 | 预告Banner 17 | 首页 18 | 19 | --- 20 | 21 | ## 开源许可证 License AGPLv3 22 | 23 | 请认真阅读并遵守以下开源协议 24 | 25 | `AGPLv3` [GNU Affero General Public License v3.0](https://github.com/lanshan-studio/wecqupt/blob/master/LICENSE) 26 | 27 | Ps: 维护者为专业后端,业余前端,如有错漏敬请指正,目前维护人员均已毕业,后续维护.... 28 | 29 | 强烈谴责本校《广科微生活》小程序不遵守AGPLv3,闭源同时Copy该项目借阅信息与我要找书等功能代码。仅此告知,望自珍重。 30 | 31 | --- 32 | 33 | ## 版本日志 34 | 35 | > 版本号命名规则 vX.Y.Z 36 | > 37 | > X: 主版本号, Y: 次版本号, Z: 修订号 38 | > 39 | > 修饰后缀词(可选) - alpha: 内测版, beta: 公测版, 无(默认): 正式版 40 | 41 | ### v2.0.0 正式版 42 | * 2018.08.25 发布 43 | * 功能重构 44 | * 因为重构了后端,不得已前端也需要修改,阉割了很多功能,之后慢慢填上 45 | 46 | ### v1.0.0 正式版 47 | * 2017.04.18 发布 48 | * 新增功能 49 | * 完成用户反馈与图片上传 50 | 51 | ### v0.0.7 公测版 52 | * 2017.03.07 发布 53 | * 新增功能 54 | * 对未绑定用户开放空课室查询和图书查询 55 | * 适配教师课表 56 | * 无借书显示图书馆卡片 57 | * 修复BUG 58 | * 修复空教室scroll-view无法滑动 59 | * 修复资讯页面网络出错提示ok 60 | * 修复打开单页面显示登录状态失效 61 | * 调整课表指正时间 62 | * 修复空课室框架出错 63 | * 修正主页滑动异常 64 | 65 | ### v0.0.6 公测版 66 | * 2017.02.21 发布 67 | * 新增功能 68 | * 上线空教室查询 69 | 70 | ### v0.0.5 公测版 71 | * 2017.02.17 发布 72 | * 新增功能 73 | * 学生查询增加考试安排,成绩查询查看 74 | * 修复BUG 75 | * 修复成绩功能分享时读取自身缓存 76 | * 修复首页课表框架 77 | * 修复课表分享出错 78 | * 统一接口格式 79 | * 修复校园卡数据出错提示 80 | * 修复网络连接出错首页按钮可点击 81 | * 修复课表可滑动到第0周 82 | 83 | ### v0.0.4 公测版 84 | * 2017.02.16 发布 85 | * 新增功能 86 | * 增加课表显示 87 | 88 | ### v0.0.3 公测版 89 | * 2017.02.11 发布 90 | * 修复BUG 91 | * 修复ios卡片无法正常载入文件 92 | * 修复重复刷新卡片问题 93 | * 修复打开重复登录问题 94 | * 优化banner显示 95 | * 增加班级排名专业排名显示 96 | * 修复卡号长度导致界面错位 97 | 98 | ### v0.0.2 公测版 99 | * 2017.02.06 发布 100 | * 提交腾讯审核版本 101 | 102 | ### v0.0.1 内测体验版 103 | * 2017.02.04 [发布预告](http://mp.weixin.qq.com/s/HGxbRmTZaFqwZ3NqBEkeSw) 104 | 105 | --- 106 | 107 | ## 分支管理 108 | 109 | ``` 110 | gxgk-wechat-app 111 | ├─ master // 默认分支(开发测试版本所用分支) 112 | ├─ stable // 稳定分支(正式版本所用分支;高级保护分支,只允许管理员操作,通常由master分支-Merge而来) 113 | └─ [other] // 其他开发分支(只允许该项目Collaborators创建及push分支) 114 | ``` 115 | 116 | --- 117 | 118 | 119 | > @ 重庆邮电大学 - 蓝山工作室 https://lanshan.studio 120 | 121 | > @ 广东科技学院 - 莞香广科团队 http://www.gxgk.cc 122 | -------------------------------------------------------------------------------- /app.json: -------------------------------------------------------------------------------- 1 | { 2 | "pages": [ 3 | "pages/index/index", 4 | "pages/authorize/index", 5 | "pages/core/kb/kb", 6 | "pages/core/ykt/ykt", 7 | "pages/core/cj/cj", 8 | "pages/core/jy/jy", 9 | "pages/core/xs/xs", 10 | "pages/core/ks/ks", 11 | "pages/core/zs/zs", 12 | "pages/core/kjs/kjs", 13 | "pages/core/zs/detail/detail", 14 | "pages/core/mht/mht", 15 | "pages/news/news", 16 | "pages/news/xy/xy_detail", 17 | "pages/news/xb/xb_detail", 18 | "pages/news/jw/jw_detail", 19 | "pages/news/xm/xm_detail", 20 | "pages/more/more", 21 | "pages/more/login", 22 | "pages/more/append", 23 | "pages/more/issues", 24 | "pages/more/about", 25 | "pages/setting/index", 26 | "pages/core/bbq/bbq" 27 | ], 28 | "window": { 29 | "navigationBarBackgroundColor": "#079df2", 30 | "navigationBarTextStyle": "white", 31 | "navigationBarTitleText": "莞香小喵", 32 | "backgroundColor": "#079df2", 33 | "backgroundTextStyle": "light", 34 | "enablePullDownRefresh": true 35 | }, 36 | "tabBar": { 37 | "color": "#7f848a", 38 | "selectedColor": "#696969", 39 | "backgroundColor": "#f7f6fb", 40 | "list": [ 41 | { 42 | "pagePath": "pages/index/index", 43 | "text": "首页", 44 | "iconPath": "images/index/index.png", 45 | "selectedIconPath": "images/index/index@active.png" 46 | }, 47 | { 48 | "pagePath": "pages/news/news", 49 | "text": "资讯", 50 | "iconPath": "images/index/news.png", 51 | "selectedIconPath": "images/index/news@active.png" 52 | }, 53 | { 54 | "pagePath": "pages/more/more", 55 | "text": "个人", 56 | "iconPath": "images/index/more.png", 57 | "selectedIconPath": "images/index/more@active.png" 58 | } 59 | ] 60 | }, 61 | "navigateToMiniProgramAppIdList": [ 62 | "wxc788f5aef8a73386", 63 | "wx4a326c92f0674dd7" 64 | ], 65 | "networkTimeout": { 66 | "request": 20000, 67 | "uploadFile": 30000, 68 | "downloadFile": 30000 69 | }, 70 | "sitemapLocation": "sitemap.json" 71 | } -------------------------------------------------------------------------------- /app.wxss: -------------------------------------------------------------------------------- 1 | /**app.wxss**/ 2 | page{ 3 | font-family: -apple-system-font, Helvetica Neue, Helvetica, sans-serif; 4 | font-size: 10pt; 5 | line-height: 150%; 6 | color: #666; 7 | min-height: 100%; 8 | position: relative; 9 | display: flex; 10 | flex-direction: column; 11 | align-items: stretch; 12 | } 13 | .container { 14 | position: relative; 15 | flex: 1; 16 | display: flex; 17 | flex-direction: column; 18 | min-height: 100%; 19 | padding-bottom: 100rpx; 20 | box-sizing: border-box; 21 | } 22 | 23 | .remind-box { 24 | flex: 1; 25 | display: flex; 26 | flex-direction: column; 27 | align-items: center; 28 | justify-content: center; 29 | padding-bottom: 300rpx; 30 | } 31 | .remind-img { 32 | width: 250rpx; 33 | height: 179rpx; 34 | } 35 | .remind-text { 36 | font-size: 12pt; 37 | line-height: 150%; 38 | } 39 | .remind-btn { 40 | margin-top: 20rpx; 41 | font-size: 9pt; 42 | padding: 5rpx 20rpx; 43 | text-align: center; 44 | background-color: #079df2; 45 | border-radius: 3px; 46 | border-bottom: 2px solid #079df2; 47 | color: #fff; 48 | } 49 | 50 | .fix_tip{ 51 | position: fixed; 52 | bottom: 50rpx; 53 | left: 0; 54 | width: 100%; 55 | text-align: center; 56 | opacity: 0; 57 | transform: translate3d(0, 80rpx, 0); 58 | transition: all .5s cubic-bezier(0.19, 1, 0.22, 1) 59 | } 60 | .fix_tip.active{ 61 | opacity: 1; 62 | transform: translate3d(0, 0, 0); 63 | } 64 | .fix_tip text{ 65 | font-size: 9pt; 66 | line-height: 100%; 67 | padding: 10rpx 20rpx; 68 | border-radius: 10rpx; 69 | background: rgba(66,66,66,.6); 70 | color: #fff; 71 | } -------------------------------------------------------------------------------- /config.default.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | mta_app_id: "", 3 | dsn_url: "", 4 | ald: { 5 | app_key: '' 6 | }, 7 | server: '' 8 | } -------------------------------------------------------------------------------- /images/core/bbq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/bbq.png -------------------------------------------------------------------------------- /images/core/bbq@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/bbq@disabled.png -------------------------------------------------------------------------------- /images/core/bx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/bx.png -------------------------------------------------------------------------------- /images/core/bx@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/bx@disabled.png -------------------------------------------------------------------------------- /images/core/cj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/cj.png -------------------------------------------------------------------------------- /images/core/cj@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/cj@disabled.png -------------------------------------------------------------------------------- /images/core/common/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/common/down.png -------------------------------------------------------------------------------- /images/core/common/down_w.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/common/down_w.png -------------------------------------------------------------------------------- /images/core/common/left_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/common/left_g.png -------------------------------------------------------------------------------- /images/core/common/right_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/common/right_g.png -------------------------------------------------------------------------------- /images/core/common/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/common/up.png -------------------------------------------------------------------------------- /images/core/df.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/df.png -------------------------------------------------------------------------------- /images/core/df@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/df@disabled.png -------------------------------------------------------------------------------- /images/core/es/list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/es/list.png -------------------------------------------------------------------------------- /images/core/jy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/jy.png -------------------------------------------------------------------------------- /images/core/jy@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/jy@disabled.png -------------------------------------------------------------------------------- /images/core/kb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kb.png -------------------------------------------------------------------------------- /images/core/kb@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kb@disabled.png -------------------------------------------------------------------------------- /images/core/kjs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs.png -------------------------------------------------------------------------------- /images/core/kjs/building-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs/building-icon.png -------------------------------------------------------------------------------- /images/core/kjs/classTime-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs/classTime-icon.png -------------------------------------------------------------------------------- /images/core/kjs/classroom-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs/classroom-icon.png -------------------------------------------------------------------------------- /images/core/kjs/day-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs/day-icon.png -------------------------------------------------------------------------------- /images/core/kjs/week-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs/week-icon.png -------------------------------------------------------------------------------- /images/core/kjs@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/kjs@disabled.png -------------------------------------------------------------------------------- /images/core/ks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/ks.png -------------------------------------------------------------------------------- /images/core/ks@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/ks@disabled.png -------------------------------------------------------------------------------- /images/core/mht.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/mht.png -------------------------------------------------------------------------------- /images/core/mht@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/mht@disabled.png -------------------------------------------------------------------------------- /images/core/sdf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/sdf.png -------------------------------------------------------------------------------- /images/core/sdf/sdf-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/sdf/sdf-bg.png -------------------------------------------------------------------------------- /images/core/sdf@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/sdf@disabled.png -------------------------------------------------------------------------------- /images/core/xs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/xs.png -------------------------------------------------------------------------------- /images/core/xs/clear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/xs/clear.png -------------------------------------------------------------------------------- /images/core/xs/search-sign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/xs/search-sign.png -------------------------------------------------------------------------------- /images/core/xs@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/xs@disabled.png -------------------------------------------------------------------------------- /images/core/ykt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/ykt.png -------------------------------------------------------------------------------- /images/core/ykt/card-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/ykt/card-bg.png -------------------------------------------------------------------------------- /images/core/ykt@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/ykt@disabled.png -------------------------------------------------------------------------------- /images/core/zs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/zs.png -------------------------------------------------------------------------------- /images/core/zs@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/zs@disabled.png -------------------------------------------------------------------------------- /images/core/zw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/zw.png -------------------------------------------------------------------------------- /images/core/zw@disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/core/zw@disabled.png -------------------------------------------------------------------------------- /images/headimg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/headimg.jpg -------------------------------------------------------------------------------- /images/index/book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/book.png -------------------------------------------------------------------------------- /images/index/card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/card.png -------------------------------------------------------------------------------- /images/index/findbook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/findbook.png -------------------------------------------------------------------------------- /images/index/index.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/index.png -------------------------------------------------------------------------------- /images/index/index@active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/index@active.png -------------------------------------------------------------------------------- /images/index/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/loading.gif -------------------------------------------------------------------------------- /images/index/love.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/love.png -------------------------------------------------------------------------------- /images/index/love@active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/love@active.png -------------------------------------------------------------------------------- /images/index/more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/more.png -------------------------------------------------------------------------------- /images/index/more@active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/more@active.png -------------------------------------------------------------------------------- /images/index/news.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/news.png -------------------------------------------------------------------------------- /images/index/news@active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/news@active.png -------------------------------------------------------------------------------- /images/index/nothing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/nothing.png -------------------------------------------------------------------------------- /images/index/qf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/qf.png -------------------------------------------------------------------------------- /images/index/tri.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/index/tri.png -------------------------------------------------------------------------------- /images/more/about_bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/about_bg.jpg -------------------------------------------------------------------------------- /images/more/aboutmiao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/aboutmiao.png -------------------------------------------------------------------------------- /images/more/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/close.png -------------------------------------------------------------------------------- /images/more/enter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/enter.png -------------------------------------------------------------------------------- /images/more/envelope.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/envelope.png -------------------------------------------------------------------------------- /images/more/fanka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/fanka.png -------------------------------------------------------------------------------- /images/more/gx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/gx.png -------------------------------------------------------------------------------- /images/more/help.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/help.png -------------------------------------------------------------------------------- /images/more/issue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/issue.png -------------------------------------------------------------------------------- /images/more/lanshan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/lanshan.png -------------------------------------------------------------------------------- /images/more/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/logo.png -------------------------------------------------------------------------------- /images/more/setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/setting.png -------------------------------------------------------------------------------- /images/more/title.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/title.png -------------------------------------------------------------------------------- /images/more/tushuzheng.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/tushuzheng.png -------------------------------------------------------------------------------- /images/more/wave.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/more/wave.png -------------------------------------------------------------------------------- /images/news/all.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/all.png -------------------------------------------------------------------------------- /images/news/all@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/all@colour.png -------------------------------------------------------------------------------- /images/news/all@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/all@gray.png -------------------------------------------------------------------------------- /images/news/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/file.png -------------------------------------------------------------------------------- /images/news/jw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jw.png -------------------------------------------------------------------------------- /images/news/jw@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jw@colour.png -------------------------------------------------------------------------------- /images/news/jw@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jw@gray.png -------------------------------------------------------------------------------- /images/news/jz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jz.png -------------------------------------------------------------------------------- /images/news/jz@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jz@colour.png -------------------------------------------------------------------------------- /images/news/jz@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/jz@gray.png -------------------------------------------------------------------------------- /images/news/new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/new.png -------------------------------------------------------------------------------- /images/news/sj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/sj.png -------------------------------------------------------------------------------- /images/news/sj@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/sj@colour.png -------------------------------------------------------------------------------- /images/news/sj@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/sj@gray.png -------------------------------------------------------------------------------- /images/news/xb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xb.png -------------------------------------------------------------------------------- /images/news/xb@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xb@colour.png -------------------------------------------------------------------------------- /images/news/xb@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xb@gray.png -------------------------------------------------------------------------------- /images/news/xm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xm.png -------------------------------------------------------------------------------- /images/news/xm@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xm@colour.png -------------------------------------------------------------------------------- /images/news/xm@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xm@gray.png -------------------------------------------------------------------------------- /images/news/xy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xy.png -------------------------------------------------------------------------------- /images/news/xy@colour.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xy@colour.png -------------------------------------------------------------------------------- /images/news/xy@gray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gxgk/gxgk-wechat-app/3138365bb15371158145380fad5580ffb1af15eb/images/news/xy@gray.png -------------------------------------------------------------------------------- /pages/authorize/index.js: -------------------------------------------------------------------------------- 1 | //more.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | canIUse: wx.canIUse('button.open-type.getUserInfo'), 7 | hasUserInfo: false 8 | }, 9 | getUserInfo: function(e) { 10 | const that = this 11 | // 授权成功才会返回detail 12 | if (e.detail.userInfo) { 13 | that.setData({ 14 | 'hasUserInfo': true 15 | }) 16 | app.getUserInfo().then(function () { 17 | wx.reLaunch({ 18 | url: '/pages/index/index', 19 | }) 20 | }) 21 | } else { 22 | wx.showToast({ 23 | title: '不同意授权无法正常使用小程序哦(′⌒`)', 24 | icon: 'none', 25 | duration: 2500 26 | }) 27 | } 28 | }, 29 | onShow: function() { 30 | const that = this 31 | var myinterval = setInterval(function() { 32 | wx.getUserInfo({ 33 | success: function(res) { 34 | clearInterval(myinterval) 35 | if (!that.data.hasUserInfo) { 36 | that.setData({ 37 | 'hasUserInfo': true 38 | }) 39 | wx.navigateBack() 40 | } 41 | } 42 | }) 43 | }, 5000) 44 | }, 45 | 46 | }); -------------------------------------------------------------------------------- /pages/authorize/index.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pages/authorize/index.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 授权登录 7 | 请允许“莞香小喵”获取登录授权 8 | 9 | -------------------------------------------------------------------------------- /pages/authorize/index.wxss: -------------------------------------------------------------------------------- 1 | .container { 2 | text-align: center; 3 | } 4 | .icon { 5 | text-align: center; 6 | margin: 120rpx auto 30rpx auto; 7 | } 8 | .icon-img{ 9 | width: 178rpx; 10 | height: 178rpx; 11 | margin: 0 auto; 12 | } 13 | .title { 14 | font-size: 34rpx; 15 | color: #353535; 16 | text-align: center; 17 | margin-bottom: 60rpx; 18 | } 19 | .tip { 20 | font-size: 32rpx; 21 | color: #888888; 22 | text-align: center; 23 | } 24 | .auth-btn{ 25 | width: 480rpx; 26 | height: 88rpx; 27 | line-height: 88rpx; 28 | text-align: center; 29 | padding: 0; 30 | margin:60rpx auto 10rpx; 31 | background-color: #079df2; 32 | color: #fff; 33 | border: 0px; 34 | } 35 | -------------------------------------------------------------------------------- /pages/core/bbq/bbq.js: -------------------------------------------------------------------------------- 1 | // pages/core/bbq/bbq.js 2 | Page({ 3 | 4 | /** 5 | * 页面的初始数据 6 | */ 7 | data: { 8 | 9 | }, 10 | 11 | /** 12 | * 生命周期函数--监听页面加载 13 | */ 14 | onLoad: function (options) { 15 | 16 | }, 17 | 18 | /** 19 | * 生命周期函数--监听页面初次渲染完成 20 | */ 21 | onReady: function () { 22 | 23 | }, 24 | 25 | /** 26 | * 生命周期函数--监听页面显示 27 | */ 28 | onShow: function () { 29 | 30 | }, 31 | 32 | /** 33 | * 生命周期函数--监听页面隐藏 34 | */ 35 | onHide: function () { 36 | 37 | }, 38 | 39 | /** 40 | * 生命周期函数--监听页面卸载 41 | */ 42 | onUnload: function () { 43 | 44 | }, 45 | 46 | /** 47 | * 页面相关事件处理函数--监听用户下拉动作 48 | */ 49 | onPullDownRefresh: function () { 50 | 51 | }, 52 | 53 | /** 54 | * 页面上拉触底事件的处理函数 55 | */ 56 | onReachBottom: function () { 57 | 58 | }, 59 | 60 | /** 61 | * 用户点击右上角分享 62 | */ 63 | onShareAppMessage: function () { 64 | 65 | } 66 | }) -------------------------------------------------------------------------------- /pages/core/bbq/bbq.json: -------------------------------------------------------------------------------- 1 | { 2 | "usingComponents": {} 3 | } -------------------------------------------------------------------------------- /pages/core/bbq/bbq.wxml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pages/core/bbq/bbq.wxss: -------------------------------------------------------------------------------- 1 | /* pages/core/bbq/bbq.wxss */ -------------------------------------------------------------------------------- /pages/core/cj/cj.js: -------------------------------------------------------------------------------- 1 | //cj.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | cjInfo: [ 8 | 9 | ], 10 | xqNum: { 11 | grade: '', 12 | semester: '' 13 | }, 14 | xqName: { 15 | grade: '', 16 | semester: '' 17 | }, 18 | share_id: '' 19 | }, 20 | //分享 21 | onShareAppMessage: function() { 22 | var id = this.data.share_id 23 | return { 24 | title: this.data.real_name + '的成绩单', 25 | desc: '快来莞香小喵查询你的期末成绩单', 26 | path: `/pages/index/index?r=/pages/core/cj/cj|id:${id}`, 27 | success: function(res) { 28 | // 分享成功 29 | }, 30 | fail: function(res) { 31 | // 分享失败 32 | } 33 | }; 34 | }, 35 | //下拉更新 36 | onPullDownRefresh: function() { 37 | var _this = this; 38 | _this.getData(_this.data.share_id); 39 | }, 40 | onLoad: function(options) { 41 | var _this = this; 42 | //判断并读取缓存 43 | if (app.cache.cj && !options.id) { 44 | _this.cjRender(app.cache.cj); 45 | } 46 | app.loginLoad().then(function() { 47 | _this.loginHandler.call(_this, options); 48 | }); 49 | }, 50 | loginHandler: function(options) { 51 | var _this = this; 52 | var share_id = options.id || ''; 53 | 54 | _this.getData(share_id); 55 | }, 56 | cjRender: function(data) { 57 | this.setData({ 58 | account: data.account, 59 | real_name: data.real_name, 60 | share_id: data.share_id, 61 | rank: data.rank || null, 62 | cjInfo: data.score, 63 | xqName: data.year + '学年 第' + data.term + '学期', 64 | update_time: data.update_time || null, 65 | remind: '' 66 | }); 67 | }, 68 | getData: function(share_id) { 69 | var _this = this; 70 | var share_id = share_id; 71 | wx.showNavigationBarLoading(); 72 | app.wx_request("/school_sys/api_score", "GET", { 73 | 'share_id': share_id 74 | }).then(function(res) { 75 | if (res.data && res.data.status === 200) { 76 | var _data = res.data.data; 77 | if (!_data) { 78 | app.removeCache('cj'); 79 | _this.setData({ 80 | remind: res.data.msg || '未知错误' 81 | }); 82 | wx.hideNavigationBarLoading() 83 | wx.stopPullDownRefresh(); 84 | return; 85 | } 86 | if (_data.score && Object.keys(_data.score).length != 0) { 87 | //保存成绩缓存 88 | app.saveCache('cj', _data); 89 | _this.cjRender(_data); 90 | } else { 91 | _this.setData({ 92 | remind: '暂无数据' 93 | }); 94 | } 95 | } else { 96 | app.removeCache('cj'); 97 | _this.setData({ 98 | remind: res.data.msg || '未知错误' 99 | }); 100 | } 101 | wx.hideNavigationBarLoading() 102 | wx.stopPullDownRefresh(); 103 | }).catch(function(res) { 104 | _this.setData({ 105 | remind: '网络错误' 106 | }); 107 | console.warn('网络错误'); 108 | wx.hideNavigationBarLoading(); 109 | wx.stopPullDownRefresh(); 110 | }); 111 | } 112 | }); -------------------------------------------------------------------------------- /pages/core/cj/cj.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#ffcb63", 3 | "navigationBarTitleText": "成绩查询" , 4 | "backgroundColor": "#ffcb63", 5 | "enablePullDownRefresh": true 6 | } -------------------------------------------------------------------------------- /pages/core/cj/cj.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{remind}} 9 | 10 | 11 | 12 | 13 | 14 | 成绩查询 15 | 学号:{{account}} 16 | 姓名:{{real_name}} 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | {{xqName}} 25 | 26 | 27 | 28 | 29 | {{rank.avgGpa==null? '暂无':rank.avgGpa}} 30 | 学期绩点 31 | 32 | 33 | {{rank.class_rank ? rank.class_rank: '暂无'}} 34 | 班级排名 35 | 36 | 37 | {{rank.credits ? rank.credits: '暂无'}} 38 | 学期总学分 39 | 40 | 41 | 42 | 43 | 44 | {{item.lesson_name}} 45 | 46 | 平时分:{{item.pscj ? item.pscj: '暂无'}} 47 | | 48 | 卷面分:{{item.qmcj ? item.qmcj: '暂无'}} 49 | | 50 | 综合成绩:{{item.score}} 51 | 52 | 53 | 54 | 55 | 56 | 57 | 补考成绩:{{item.bkcj}} 58 | 59 | 60 | 61 | 62 | 63 | 64 | 更新时间:{{update_time}} 65 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /pages/core/cj/cj.wxss: -------------------------------------------------------------------------------- 1 | /**cj.wxss**/ 2 | 3 | .container { 4 | padding-left: 30rpx; 5 | padding-right: 30rpx; 6 | background-color: #f7f7f7; 7 | } 8 | 9 | .cj-header { 10 | display: flex; 11 | flex-flow: row nowrap; 12 | justify-content: space-between; 13 | align-items: center; 14 | padding: 50rpx 0; 15 | } 16 | 17 | .cj-text { 18 | display: flex; 19 | flex-flow: column nowrap; 20 | justify-content: flex-start; 21 | padding-left: 25rpx; 22 | } 23 | 24 | .cj-header-title { 25 | font-size: 20pt; 26 | font-weight: bold; 27 | line-height: 150%; 28 | margin-bottom: 15rpx; 29 | color: #222; 30 | } 31 | 32 | .cj-header-info { 33 | font-size: 11pt; 34 | line-height: 160%; 35 | color: #888; 36 | } 37 | 38 | .cj-bg { 39 | display: block; 40 | width: 200rpx; 41 | height: 200rpx; 42 | padding-right: 5rpx; 43 | opacity: 0.3; 44 | } 45 | 46 | .cj-info-ctn { 47 | display: flex; 48 | flex-flow: column nowrap; 49 | align-items: stretch; 50 | border-radius: 3px; 51 | background: #fff; 52 | margin-bottom: 20rpx; 53 | } 54 | 55 | .cj-grade { 56 | display: flex; 57 | flex-flow: column nowrap; 58 | align-items: center; 59 | padding: 25rpx 30rpx; 60 | } 61 | 62 | .cj-grade-logo { 63 | width: 100rpx; 64 | height: 100rpx; 65 | } 66 | 67 | .cj-grade-term { 68 | flex: 1; 69 | color: #666; 70 | font-size: 15pt; 71 | font-weight: 600; 72 | line-height: 160%; 73 | text-align: center; 74 | padding-bottom: 10rpx; 75 | } 76 | 77 | .cj-grade-fst { 78 | display: flex; 79 | flex-flow: column nowrap; 80 | } 81 | 82 | .cj-grade-info { 83 | display: flex; 84 | width: 100%; 85 | text-align: center; 86 | align-items: center; 87 | } 88 | 89 | .cj-grade-info text { 90 | display: block; 91 | font-weight: bold; 92 | } 93 | 94 | .cj-grade-jd,.cj-grade-bj,.cj-grade-zy { 95 | flex: 1; 96 | } 97 | 98 | .cj-grade-jd-num { 99 | color: #58c2ff; 100 | font-size: 18px; 101 | padding-bottom: 3px; 102 | } 103 | 104 | .cj-grade-bj-num { 105 | color: #58c2ff; 106 | font-size: 18px; 107 | padding-bottom: 3px; 108 | } 109 | 110 | .cj-grade-zy-num { 111 | color: #58c2ff; 112 | font-size: 18px; 113 | padding-bottom: 3px; 114 | } 115 | 116 | .grade-comment { 117 | color: #999; 118 | font-size: 26rpx; 119 | } 120 | 121 | .cj-info-box { 122 | display: flex; 123 | flex-flow: column nowrap; 124 | align-items: stretch; 125 | padding: 5rpx 30rpx 15rpx; 126 | } 127 | 128 | .cj-info { 129 | background: #fff; 130 | font-size: 11pt; 131 | display: flex; 132 | flex-flow: column wrap-reverse; 133 | justify-content: space-between; 134 | border-top: 1px solid #eee; 135 | padding: 25rpx 20rpx 20rpx 20rpx; 136 | } 137 | 138 | .cj-info-name { 139 | font-size: 12pt; 140 | font-weight: 600; 141 | } 142 | 143 | .cj-info-socre-box { 144 | display: flex; 145 | flex-flow: row nowrap; 146 | padding-top: 13rpx; 147 | justify-content: space-between; 148 | } 149 | 150 | .cj-info-socre { 151 | font-size: 10pt; 152 | align-items: center; 153 | color: #999; 154 | } 155 | 156 | .cj-info-socre-red { 157 | font-size: 10pt; 158 | align-items: center; 159 | color: #ff0000; 160 | } 161 | 162 | .cj-footer { 163 | display: flex; 164 | flex-flow: row nowrap; 165 | justify-content: center; 166 | color: #999; 167 | } 168 | -------------------------------------------------------------------------------- /pages/core/jy/jy.js: -------------------------------------------------------------------------------- 1 | //jy.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | jyData: { 8 | book_list: [], //当前借阅列表 9 | books_num: 0, //当前借阅量 10 | history: 0, //历史借阅量 11 | dbet: 0, //欠费 12 | nothing: true //当前是否有借阅 13 | }, 14 | historyData: { 15 | book_list: [], //当前借阅列表 16 | books_num: 0, //当前借阅量 17 | history: 0, //历史借阅量 18 | dbet: 0, //欠费 19 | nothing: true //当前是否有借阅 20 | }, 21 | yjxjTap: false, //点击一键续借, 22 | history: false 23 | }, 24 | onLoad: function(options) { 25 | var _this = this; 26 | app.loginLoad().then(function() { 27 | _this.loadData(); 28 | }); 29 | }, 30 | onPullDownRefresh: function() { 31 | this.loadData(); 32 | wx.stopPullDownRefresh() 33 | }, 34 | onShareAppMessage: function () { 35 | return { 36 | title: '借阅查询', 37 | desc: '莞香小喵 - 借阅查询', 38 | path: `/pages/index/index?r=/pages/core/jy/jy` 39 | }; 40 | }, 41 | loadData: function() { 42 | var _this = this; 43 | wx.showNavigationBarLoading(); 44 | _this.getBookList(); 45 | _this.getBookHistory(); 46 | _this.getInfo(); 47 | }, 48 | getInfo: function () { 49 | var _this = this; 50 | app.wx_request("/library/xcx_info", "GET").then(function (res) { 51 | if (res.data && res.data.status === 200) { 52 | var info = res.data.data; 53 | if (info) { 54 | var jyData = _this.data.jyData; 55 | jyData.arrears_money = info.arrears_money 56 | jyData.real_name = info.real_name 57 | _this.setData({ 58 | jyData: jyData, 59 | remind: '' 60 | }); 61 | } 62 | } else if (res.data.status === 402) { 63 | // 未绑定 64 | _this.setData({ 65 | remind: "未绑定账号" 66 | }); 67 | wx.redirectTo({ 68 | url: '/pages/more/append?type=library' 69 | }) 70 | } 71 | else { 72 | _this.setData({ 73 | remind: res.data.msg || '未知错误' 74 | }); 75 | } 76 | wx.hideNavigationBarLoading(); 77 | }).catch(function (res) { 78 | console.log(res) 79 | if (_this.data.remind == '加载中') { 80 | _this.setData({ 81 | remind: '网络错误' 82 | }); 83 | } 84 | console.warn('网络错误'); 85 | wx.hideNavigationBarLoading(); 86 | }); 87 | }, 88 | getBookHistory: function () { 89 | var _this = this; 90 | app.wx_request("/library/xcx_history", "GET").then(function (res) { 91 | if (res.data && res.data.status === 200) { 92 | var book_list = res.data.data; 93 | if (book_list.length == 0) { 94 | _this.setData({ 95 | nothing: true 96 | }); 97 | } else { 98 | var jyData = _this.data.jyData; 99 | jyData.book_list = book_list; 100 | jyData.books_num = book_list.length; 101 | jyData.nothing = false 102 | _this.setData({ 103 | historyData: jyData, 104 | remind: '' 105 | }); 106 | } 107 | } else { 108 | _this.setData({ 109 | remind: res.data.msg || '未知错误' 110 | }); 111 | } 112 | wx.hideNavigationBarLoading(); 113 | }).catch(function (res) { 114 | console.log(res) 115 | if (_this.data.remind == '加载中') { 116 | _this.setData({ 117 | remind: '网络错误' 118 | }); 119 | } 120 | console.warn('网络错误'); 121 | wx.hideNavigationBarLoading(); 122 | }); 123 | }, 124 | getBookList: function() { 125 | var _this = this; 126 | app.wx_request("/library/xcx_record", "GET").then(function(res) { 127 | if (res.data && res.data.status === 200) { 128 | var book_list = res.data.data; 129 | if (book_list.length == 0) { 130 | _this.setData({ 131 | nothing: true 132 | }); 133 | } else { 134 | var jyData = _this.data.jyData; 135 | jyData.book_list = book_list; 136 | jyData.books_num = book_list.length; 137 | jyData.nothing = false 138 | _this.setData({ 139 | jyData: jyData, 140 | remind: '' 141 | }); 142 | } 143 | } else { 144 | _this.setData({ 145 | remind: res.data.msg || '未知错误' 146 | }); 147 | } 148 | wx.hideNavigationBarLoading(); 149 | }).catch(function(res) { 150 | console.log(res) 151 | if (_this.data.remind == '加载中') { 152 | _this.setData({ 153 | remind: '网络错误' 154 | }); 155 | } 156 | console.warn('网络错误'); 157 | wx.hideNavigationBarLoading(); 158 | }); 159 | }, 160 | renew: function() { 161 | var _this = this; 162 | app.wx_request("/library/xcx_renew", "GET").then(function (res) { 163 | if (res.data && res.data.status === 200) { 164 | var rewnew_info = res.data.data; 165 | var outdated_num = rewnew_info['outdated_num'] 166 | var renew_num = rewnew_info['renew_num'] 167 | var book_num = rewnew_info['book_num'] 168 | if (outdated_num === 0 && renew_num == 0) { 169 | app.showErrorModal("还书期限大于7天,目前不需要续借", "续借提示"); 170 | } else if (outdated_num === book_num && renew_num === 0){ 171 | app.showErrorModal("续借失败!全部书籍逾期未还, 请尽快到图书馆还书", "续借提示"); 172 | } else if (renew_num === 0 && outdated_num > 0) { 173 | app.showErrorModal(outdated_num + "本书籍逾期未还, 请尽快到图书馆还书, 其他图书目前不需要续借", "续借提示"); 174 | } else if (renew_num > 0 && outdated_num > 0) { 175 | app.showErrorModal(outdated_num + "续借成功!部分书籍逾期未还,请尽快到图书馆还书", "续借提示"); 176 | } else if (renew_num > 0) { 177 | app.showErrorModal(outdated_num + "续借成功!每本书只能续借一次", "续借提示"); 178 | } 179 | console.log(rewnew_info) 180 | _this.setData({ 181 | yjxjTap: false 182 | }); 183 | wx.hideToast() 184 | } else { 185 | _this.setData({ 186 | remind: res.data.msg || '未知错误' 187 | }); 188 | } 189 | wx.hideNavigationBarLoading(); 190 | }).catch(function (res) { 191 | console.log(res) 192 | if (_this.data.remind == '加载中') { 193 | _this.setData({ 194 | remind: '网络错误' 195 | }); 196 | } 197 | console.warn('网络错误'); 198 | wx.hideNavigationBarLoading(); 199 | }) 200 | }, 201 | renewBook: function() { 202 | var _this = this; 203 | if (!_this.data.yjxjTap) { 204 | //按键加锁 205 | _this.setData({ 206 | yjxjTap: true 207 | }); 208 | app.showLoadToast("续借中") 209 | //续借 210 | _this.renew(); 211 | //刷新用户信息 212 | _this.getBookList(); 213 | // _this.getInfo(); 214 | } 215 | }, 216 | tapType: function(e) { 217 | if (e.currentTarget.dataset.type == 'record') { 218 | this.setData({ 219 | history: false 220 | }); 221 | } else { 222 | this.setData({ 223 | history: true 224 | }); 225 | } 226 | } 227 | }); -------------------------------------------------------------------------------- /pages/core/jy/jy.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#73b4ef", 3 | "navigationBarTitleText": "借阅信息" , 4 | "backgroundColor": "#73b4ef" 5 | } -------------------------------------------------------------------------------- /pages/core/jy/jy.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | {{remind}} 8 | 9 | 10 | 11 | 12 | 13 | 姓名 14 | 15 | {{jyData.real_name}} 16 | 17 | 18 | 19 | 20 | 当前借阅 21 | 历史借阅 22 | 23 | {{jyData.books_num}} 24 | {{historyData.books_num}} 25 | 26 | 27 | 28 | 29 | 欠费 30 | 31 | {{jyData.arrears_money}} 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 借阅记录 40 | 41 | 42 | 43 | 历史借阅 44 | 45 | 46 | 47 | 48 | 当前无借阅 49 | 50 | 51 | 52 | 53 | 54 | 55 | {{itemName.title}} 56 | 57 | 58 | 59 | 图书条码: 60 | {{itemName.barcode}} 61 | 62 | 63 | 流通状态: 64 | {{itemName.circle_status}} 65 | 66 | 67 | 68 | 69 | 收藏部门: 70 | {{itemName.department}} 71 | 72 | 73 | 应还日期: 74 | {{itemName.deadline}} 75 | 76 | 77 | 78 | 79 | 80 | 83 | 84 | 85 | 86 | 今年还没借过书哦 87 | 88 | 89 | 90 | 91 | 92 | 93 | {{itemName.title}} 94 | 95 | 96 | 97 | 图书条码: 98 | {{itemName.barcode}} 99 | 100 | 101 | 102 | 103 | 操作类型: 104 | {{itemName.operate_type}} 105 | 106 | 107 | 操作日期: 108 | {{itemName.operate_time}} 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | -------------------------------------------------------------------------------- /pages/core/jy/jy.wxss: -------------------------------------------------------------------------------- 1 | /**jy.wxss**/ 2 | 3 | .container { 4 | background-color: #f7f7f7; 5 | } 6 | 7 | .user-jy { 8 | display: flex; 9 | background: #fefefe; 10 | border-bottom: 1rpx solid #eee; 11 | } 12 | 13 | .user-jy-item { 14 | flex: 1; 15 | display: flex; 16 | flex-direction: column; 17 | justify-content: flex-start; 18 | font-size: 11pt; 19 | line-height: 150%; 20 | height: 150rpx; 21 | padding: 20rpx; 22 | border-right: 1rpx solid #eee; 23 | } 24 | 25 | .user-jy-dbet { 26 | border: none; 27 | } 28 | 29 | .user-jy-hd { 30 | color: #777; 31 | } 32 | 33 | .user-jy-bd { 34 | display: flex; 35 | justify-content: center; 36 | } 37 | 38 | .user-jy-name { 39 | font-size: 25px; 40 | color: #73b4ef; 41 | font-weight: bold; 42 | line-height: 150%; 43 | padding: 19rpx 20rpx 0 30rpx; 44 | } 45 | 46 | .user-jy-value { 47 | font-size: 37px; 48 | color: #73b4ef; 49 | font-weight: bold; 50 | line-height: 150%; 51 | padding: 0 20rpx 0 30rpx; 52 | } 53 | 54 | .user-jy-text { 55 | color: #999; 56 | font-size: 14px; 57 | line-height: 200%; 58 | align-self: flex-end; 59 | } 60 | 61 | .book-list { 62 | display: flex; 63 | flex-direction: column; 64 | align-items: stretch; 65 | padding: 5rpx 30rpx 25rpx 30rpx; 66 | } 67 | 68 | .choose-type { 69 | display: flex; 70 | flex-direction: row; 71 | align-items: stretch; 72 | padding: 10rpx 30rpx 0rpx 30rpx; 73 | margin: 10rpx 10rpx 0 10rpx; 74 | } 75 | 76 | .current-type { 77 | color: #fff; 78 | line-height: 200%; 79 | background-color: #62adf5; 80 | width: 25%; 81 | border-radius: 10px; 82 | font-size: 10pt; 83 | display: flex; 84 | align-items: center; 85 | justify-content: center; 86 | margin: 0rpx 5rpx 15rpx 5rpx; 87 | } 88 | 89 | .yuan-dian { 90 | width: 10rpx; 91 | height: 10rpx; 92 | border-radius: 5rpx; 93 | background-color: #fff; 94 | } 95 | 96 | .jyjl { 97 | padding-left: 10rpx; 98 | } 99 | 100 | .book-wraper { 101 | display: flex; 102 | flex-direction: column; 103 | align-items: stretch; 104 | justify-content: space-between; 105 | overflow: hidden; 106 | padding: 35rpx 30rpx 10rpx; 107 | margin-bottom: 20rpx; 108 | background: #fff; 109 | border-radius: 3px; 110 | } 111 | 112 | .book-name { 113 | font-size: 21px; 114 | line-height: 135%; 115 | white-space: nowrap; 116 | text-overflow: ellipsis; 117 | overflow: hidden; 118 | color: #6a94cd; 119 | } 120 | 121 | .book-info { 122 | display: flex; 123 | align-items: flex-end; 124 | justify-content: space-between; 125 | margin-top: 25rpx; 126 | font-size: 12px; 127 | color: #888; 128 | } 129 | 130 | .book-date { 131 | display: flex; 132 | align-items: flex-end; 133 | justify-content: space-between; 134 | margin-top: 5rpx; 135 | font-size: 12px; 136 | color: #888; 137 | } 138 | 139 | .yhrq-value { 140 | font-size: 12px; 141 | white-space: nowrap; 142 | text-overflow: ellipsis; 143 | overflow: hidden; 144 | } 145 | 146 | .book-img { 147 | height: 13pt; 148 | width: 13pt; 149 | margin-top: 2pt; 150 | margin-right: 10rpx; 151 | } 152 | button { 153 | margin: 0; 154 | padding: 0; 155 | } 156 | .yjxj { 157 | width: 110rpx; 158 | height: 110rpx; 159 | border-radius: 50rpx; 160 | box-shadow: 2px 2px 5px #999; 161 | background-color: #72adfa; 162 | position: fixed; 163 | left: 75%; 164 | top: 85%; 165 | display: flex; 166 | align-items: center; 167 | justify-content: center; 168 | } 169 | .yjxj-check { 170 | background-color: #1f7bff; 171 | } 172 | 173 | .yjxj text { 174 | color: #fff; 175 | font-size: 14px; 176 | width: 30px; 177 | line-height:1.5; 178 | } 179 | -------------------------------------------------------------------------------- /pages/core/kb/kb.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#73b4ef", 3 | "navigationBarTitleText": "我的课表", 4 | "backgroundColor": "#73b4ef", 5 | "enablePullDownRefresh": true 6 | } -------------------------------------------------------------------------------- /pages/core/kjs/kjs.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#9f8bea", 3 | "navigationBarTitleText": "空教室", 4 | "backgroundColor": "#9f8bea" 5 | } -------------------------------------------------------------------------------- /pages/core/kjs/kjs.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | {{remind}} 8 | 9 | 10 | 11 | 12 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | {{item}} 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | {{item}} 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | {{item.time}} 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | {{item}} 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | {{item}} 81 | 82 | 83 | 84 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /pages/core/kjs/kjs.wxss: -------------------------------------------------------------------------------- 1 | /**kjs.wxss**/ 2 | 3 | page { 4 | position: relative; 5 | height: 100%; 6 | } 7 | 8 | .container { 9 | background: #fff; 10 | padding-bottom: 480rpx; 11 | box-sizing: border-box; 12 | } 13 | 14 | scroll-view { 15 | width:auto; 16 | } 17 | 18 | /* ========================================================================== 19 | main-roomUl 20 | ============================================================================ */ 21 | .main-roomUl { 22 | 23 | display: flex; 24 | flex-flow: column nowrap; 25 | padding: 30rpx 45rpx; 26 | height: 600px; 27 | } 28 | .roomUl-floor { 29 | 30 | display: flex; 31 | /*width: 600rpx;*/ 32 | flex-flow: column nowrap; 33 | margin-top: 20rpx; 34 | padding: 0 0 0 65rpx; 35 | /*background: url('/images/core/kjs/classroom-icon.png') no-repeat;*/ 36 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 37 | background: url('https://cache.gxgkcat.com/wxapp/core/kjs/classroom-icon.png') no-repeat; 38 | background-size: 30rpx 25rpx; 39 | background-position: 15rpx 8rpx; 40 | } 41 | .floor { 42 | 43 | flex: 1; 44 | width: 600rpx; 45 | display: flex; 46 | flex-wrap: wrap; 47 | } 48 | .floor text { 49 | 50 | padding-bottom: 25rpx; 51 | width: 120rpx; 52 | font-size: 11pt; 53 | letter-spacing: 0.1rem; 54 | text-align: center; 55 | } 56 | 57 | /* ========================================================================== 58 | main-condition 59 | ============================================================================ */ 60 | .main-condition { 61 | 62 | position: fixed; 63 | bottom: 0; 64 | left: 0; 65 | z-index: 100; 66 | display: flex; 67 | flex-flow: column wrap; 68 | width: 100%; 69 | height: 480rpx; 70 | border-top: 1rpx solid #F1F1F2; 71 | padding-bottom: env(safe-area-inset-bottom); 72 | padding-bottom: constant(safe-area-inset-bottom); 73 | } 74 | .condition { 75 | 76 | box-sizing: border-box; 77 | padding: 0; 78 | width: 100%; 79 | height: 120rpx; 80 | white-space: nowrap; 81 | } 82 | .condition-li { 83 | 84 | display: inline-block; 85 | width: 111rpx; 86 | height: 120rpx; 87 | line-height: 120rpx; 88 | text-align: center; 89 | } 90 | .building-condition .condition-li { 91 | width: 115rpx; 92 | } 93 | .day-condition .condition-li { 94 | width: 115rpx; 95 | } 96 | .week-active, 97 | .day-active, 98 | .classTime-active, 99 | .building-active { 100 | color: #FFF; 101 | font-weight: 900; 102 | } 103 | .scroll-space { 104 | 105 | display: inline-block; 106 | width: 30rpx; 107 | height: 30rpx; 108 | } 109 | 110 | 111 | /* main-condition > condition-week 112 | ============================================================================ */ 113 | .condition-week { 114 | 115 | background-color: #FBFAF8; 116 | } 117 | .week-active { 118 | 119 | /*background: url('/images/core/kjs/week-icon.png') no-repeat;*/ 120 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 121 | background: url('https://cache.gxgkcat.com/wxapp/core/kjs/week-icon.png') no-repeat; 122 | background-size: 100rpx 100rpx; 123 | background-position: 50% 50%; 124 | } 125 | 126 | 127 | /* main-condition > condition-day 128 | ============================================================================ */ 129 | .condition-day { 130 | 131 | background-color: #F1F1F2; 132 | } 133 | .day-active { 134 | 135 | /*background: url('/images/core/kjs/day-icon.png') no-repeat;*/ 136 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 137 | background: url('https://cache.gxgkcat.com/wxapp/core/kjs/day-icon.png') no-repeat; 138 | background-size: 100rpx 100rpx; 139 | background-position: 50% 50%; 140 | } 141 | 142 | /* main-condition > condition-classTime 143 | ============================================================================ */ 144 | .condition-classTime { 145 | 146 | background-color: #FBFAF8; 147 | overflow: hidden; 148 | } 149 | .classTime-active { 150 | 151 | /*background: url('/images/core/kjs/classTime-icon.png') no-repeat;*/ 152 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 153 | background: url('https://cache.gxgkcat.com/wxapp/core/kjs/classTime-icon.png') no-repeat; 154 | background-size: 100rpx 100rpx; 155 | background-position: 50% 50%; 156 | } 157 | 158 | /* main-condition > condition-building 159 | ============================================================================ */ 160 | .condition-building { 161 | 162 | background-color: #F1F1F2; 163 | overflow: hidden; 164 | } 165 | .building-active { 166 | 167 | /*background: url('/images/core/kjs/building-icon.png') no-repeat;*/ 168 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 169 | background: url('https://cache.gxgkcat.com/wxapp/core/kjs/building-icon.png') no-repeat; 170 | background-size: 100rpx 100rpx; 171 | background-position: 50% 50%; 172 | } 173 | -------------------------------------------------------------------------------- /pages/core/ks/ks.js: -------------------------------------------------------------------------------- 1 | //ks.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | list: [], 8 | first: 1, 9 | teacher: false, 10 | id: '', 11 | name: '', 12 | share_id: '' 13 | }, 14 | togglePage: function (e) { 15 | var id = e.currentTarget.id, data = {}; 16 | data.show = []; 17 | for (var i = 0, len = this.data.class.length; i < len; i++) { 18 | data.show[i] = false; 19 | } 20 | if (this.data.first) { 21 | this.setData(data); 22 | this.data.first = 0; 23 | } 24 | data.show[id] = !this.data.show[id]; 25 | this.setData(data); 26 | }, 27 | //分享 28 | onShareAppMessage: function () { 29 | var id = this.data.share_id 30 | return { 31 | title: this.data.name + '的考试安排', 32 | desc: '莞香小喵 - 考试安排', 33 | path: `/pages/index/index?r=/pages/core/ks/ks|id:${id}` 34 | }; 35 | }, 36 | //下拉更新 37 | onPullDownRefresh: function () { 38 | var _this = this; 39 | _this.loginHandler({ 40 | id: '', 41 | }); 42 | }, 43 | onLoad: function (options) { 44 | var _this = this; 45 | app.loginLoad().then(function () { 46 | _this.loginHandler.call(_this, options); 47 | }); 48 | }, 49 | //让分享时自动登录 50 | loginHandler: function (options) { 51 | var _this = this; 52 | var data = { 53 | share_id: options.id || '' 54 | }; 55 | //判断并读取缓存 56 | if (app.cache.ks && !options.id) { 57 | ksRender(app.cache.ks); 58 | } 59 | function ksRender(list) { 60 | if (!list || !list.length) { 61 | _this.setData({ 62 | remind: '无考试安排' 63 | }); 64 | return false; 65 | } 66 | var days = ['一', '二', '三', '四', '五', '六', '日']; 67 | for (var i = 0, len = list.length; i < len; ++i) { 68 | list[i].open = false; 69 | list[i].index = i; 70 | list[i].day = days[list[i].day - 1]; 71 | list[i].time = list[i].time.trim().replace('—', '~'); 72 | //list[i].lesson = list[i].lesson.replace(',','-'); 73 | //倒计时提醒 74 | if (list[i].days > 0) { 75 | list[i].countdown = '还有' + list[i].days + '天考试'; 76 | list[i].place = '(' + list[i].time + ')' + list[i].room; 77 | } else if (list[i].days < 0) { 78 | list[i].countdown = '考试已过了' + (-list[i].days) + '天'; 79 | list[i].place = ''; 80 | } else { 81 | list[i].countdown = '今天考试'; 82 | list[i].place = '(' + list[i].time + ')' + list[i].room; 83 | } 84 | } 85 | list[0].open = true; 86 | _this.setData({ 87 | list: list, 88 | remind: '' 89 | }); 90 | } 91 | wx.showNavigationBarLoading(); 92 | app.wx_request("/exam/api_exam_schedule", "GET", data).then(function (res) { 93 | if (res.data && res.data.status === 200) { 94 | var data = res.data.data; 95 | if (data) { 96 | if (!options.id) { 97 | //保存考试缓存 98 | app.saveCache('ks', data.exam); 99 | } 100 | ksRender(data.exam); 101 | _this.setData({ 102 | id: data.account, 103 | name: data.real_name, 104 | share_id: data.share_id 105 | }); 106 | } else { _this.setData({ remind: '暂无数据' }); } 107 | 108 | } else { 109 | app.removeCache('ks'); 110 | _this.setData({ 111 | remind: res.data.msg || '未知错误' 112 | }); 113 | } 114 | wx.hideNavigationBarLoading(); 115 | wx.stopPullDownRefresh(); 116 | }).catch(function (res) { 117 | if (_this.data.remind == '加载中') { 118 | _this.setData({ 119 | remind: '网络错误' 120 | }); 121 | } 122 | console.warn('网络错误'); 123 | wx.hideNavigationBarLoading(); 124 | wx.stopPullDownRefresh(); 125 | }) 126 | }, 127 | // 展示考试详情 128 | slideDetail: function (e) { 129 | var id = e.currentTarget.dataset.id, 130 | list = this.data.list; 131 | // 每次点击都将当前open换为相反的状态并更新到视图,视图根据open的值来切换css 132 | for (var i = 0, len = list.length; i < len; ++i) { 133 | if (i == id) { 134 | list[i].open = !list[i].open; 135 | } else { 136 | list[i].open = false; 137 | } 138 | } 139 | this.setData({ 140 | list: list 141 | }); 142 | } 143 | }); 144 | -------------------------------------------------------------------------------- /pages/core/ks/ks.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#73b4ef", 3 | "navigationBarTitleText": "考试安排", 4 | "backgroundColor": "#73b4ef" 5 | } -------------------------------------------------------------------------------- /pages/core/ks/ks.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{remind}} 9 | 10 | 11 | 12 | 13 | 14 | 考试安排 15 | {{ks.ksName}} 16 | 学号:{{id}} 17 | 教师号:{{id}} 18 | 姓名:{{name}} 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 【{{item.type}}】{{item.course}} 29 | 30 | 31 | {{item.countdown}} 32 | {{item.place}} 33 | 34 | 35 | 36 | 37 | 38 | 39 | 类型 40 | {{item.type}} 41 | 42 | 43 | 人数 44 | {{item.exam_num}} 45 | 46 | 47 | 日期 48 | {{item.date}}(第{{item.week}}周-周{{item.day}}) 49 | 50 | 51 | 时间 52 | {{item.time}}{{item.lesson ? '('+item.lesson+')':''}} 53 | 54 | 55 | 地点 56 | {{item.room}} 57 | 58 | 59 | 60 | 主监考 61 | {{item.main_supervisor}} 62 | 63 | 64 | 手机 65 | {{item.main_supervisor_phone}} 66 | 67 | 68 | 副监考 69 | {{item.supervisor?item.supervisor:'无'}} 70 | 71 | 72 | 手机 73 | {{item.supervisor_phone}} 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | -------------------------------------------------------------------------------- /pages/core/ks/ks.wxss: -------------------------------------------------------------------------------- 1 | /**ks.wxss**/ 2 | .container{ 3 | padding-left: 30rpx; 4 | padding-right: 30rpx; 5 | background-color: #f7f7f7; 6 | } 7 | .ks-header{ 8 | display: flex; 9 | flex-flow: row nowrap; 10 | justify-content: space-between; 11 | align-items: center; 12 | padding: 50rpx 0; 13 | } 14 | .ks-text{ 15 | display: flex; 16 | flex-flow: column nowrap; 17 | justify-content: flex-start; 18 | padding-left: 25rpx; 19 | } 20 | .ks-header-title{ 21 | font-size: 20pt; 22 | font-weight: bold; 23 | line-height: 150%; 24 | margin-bottom: 15rpx; 25 | color: #222; 26 | } 27 | .ks-header-info, .ks-header-info-ksName{ 28 | font-size: 11pt; 29 | line-height: 160%; 30 | color: #888; 31 | } 32 | 33 | .ks-bg{ 34 | display: block; 35 | width: 200rpx; 36 | height: 200rpx; 37 | padding-right: 5rpx; 38 | opacity: .3; 39 | } 40 | 41 | .ks-class-ctn{ 42 | display: flex; 43 | flex-flow: column nowrap; 44 | align-items: stretch; 45 | } 46 | 47 | .ks-class-item { 48 | display: flex; 49 | flex-direction: column; 50 | font-size: 11pt; 51 | padding: 0 40rpx; 52 | margin-bottom: 20rpx; 53 | background-color: #fff; 54 | border-radius: 3px; 55 | } 56 | .ks-hd { 57 | display: flex; 58 | align-items: center; 59 | justify-content: space-between; 60 | height: 145rpx; 61 | } 62 | 63 | .ks-hd-left { 64 | flex: 1; 65 | display: flex; 66 | flex-direction: column; 67 | overflow: hidden; 68 | padding-right: 30rpx; 69 | } 70 | 71 | /**列表展开时标题的颜色变化 **/ 72 | .ks-hd-name { 73 | font-size: 12pt; 74 | line-height: 225%; 75 | letter-spacing: 1px; 76 | transition: color .15s ease-in-out; 77 | overflow: hidden; 78 | white-space: nowrap; 79 | text-overflow: ellipsis; 80 | } 81 | .ks-item-show .ks-hd-name { 82 | transition: color .15s ease-in-out; 83 | color: #73b4ef; 84 | } 85 | .ks-hd-other { 86 | font-size: 10pt; 87 | line-height: 100%; 88 | color: #aaa; 89 | } 90 | .ks-item-show .ks-hd-place { 91 | display: none; 92 | } 93 | 94 | /**列表展开的icon旋转 **/ 95 | .ks-item-icon{ 96 | flex-shrink: 0; 97 | width: 30rpx; 98 | height: 30rpx; 99 | transition: transform .2s; 100 | transform: rotate(0deg); 101 | } 102 | .ks-item-show .ks-item-icon{ 103 | transform: rotate(180deg); 104 | } 105 | 106 | .ks-detail { 107 | display: none; 108 | flex-direction: column; 109 | overflow: hidden; 110 | padding: 0; 111 | } 112 | .ks-item-show .ks-detail { 113 | display: flex; 114 | padding: 5rpx 0 15rpx; 115 | } 116 | .ks-detail-item { 117 | display: flex; 118 | align-items: center; 119 | padding: 25rpx 5rpx 20rpx; 120 | border-top: 1px solid #eee; 121 | } 122 | .ks-detail-label { 123 | color: #888; 124 | width: 55pt; 125 | } 126 | .ks-detail-content { 127 | flex: 1; 128 | } 129 | .ks-jxb { 130 | /*background: url('/images/core/xs.png') no-repeat;*/ 131 | /*微信暂不支持静态bgimg文件,改用服务器url*/ 132 | background: url('https://cache.gxgkcat.com/wxapp/core/xs.png') no-repeat; 133 | background-size: 30rpx 30rpx; 134 | background-position: 0 50%; 135 | padding-left: 40rpx; 136 | color: #888; 137 | } -------------------------------------------------------------------------------- /pages/core/mht/mht.js: -------------------------------------------------------------------------------- 1 | Page({ 2 | 3 | /** 4 | * 页面的初始数据 5 | */ 6 | data: { 7 | 8 | }, 9 | 10 | /** 11 | * 生命周期函数--监听页面加载 12 | */ 13 | onLoad: function (options) { 14 | 15 | }, 16 | 17 | /** 18 | * 生命周期函数--监听页面初次渲染完成 19 | */ 20 | onReady: function () { 21 | 22 | }, 23 | 24 | /** 25 | * 生命周期函数--监听页面显示 26 | */ 27 | onShow: function () { 28 | 29 | }, 30 | 31 | /** 32 | * 生命周期函数--监听页面隐藏 33 | */ 34 | onHide: function () { 35 | 36 | }, 37 | 38 | /** 39 | * 生命周期函数--监听页面卸载 40 | */ 41 | onUnload: function () { 42 | 43 | }, 44 | 45 | /** 46 | * 页面相关事件处理函数--监听用户下拉动作 47 | */ 48 | onPullDownRefresh: function () { 49 | 50 | }, 51 | 52 | /** 53 | * 页面上拉触底事件的处理函数 54 | */ 55 | onReachBottom: function () { 56 | 57 | }, 58 | 59 | /** 60 | * 用户点击右上角分享 61 | */ 62 | onShareAppMessage: function () { 63 | return { 64 | title: '喵话题 - 知无不谈,就你话多', 65 | path: `/pages/index/index?r=/pages/core/mht/mht`, 66 | imageUrl: "https://qn.gxgk.cc/ui/topic_share.jpg" 67 | }; 68 | } 69 | }) -------------------------------------------------------------------------------- /pages/core/mht/mht.json: -------------------------------------------------------------------------------- 1 | { 2 | "usingComponents": {} 3 | } -------------------------------------------------------------------------------- /pages/core/mht/mht.wxml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pages/core/mht/mht.wxss: -------------------------------------------------------------------------------- 1 | /* pages/core/mht/mht.wxss */ -------------------------------------------------------------------------------- /pages/core/xs/xs.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#7acfa6", 3 | "navigationBarTitleText": "学生查询", 4 | "backgroundColor": "#7acfa6", 5 | "enablePullDownRefresh": false 6 | } -------------------------------------------------------------------------------- /pages/core/xs/xs.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 25 | 28 |
29 |
30 |
31 | 32 | 33 | 34 | 35 | 36 | 37 | 学生名单 ({{main.total}}人) 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | {{item.activeName}}{{item.normalXm}} 53 | 54 | 55 | {{item.normalXm}}{{item.activeName}} 56 | 57 | 学号: 58 | {{item.activeXh}}{{item.normalXh}} 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 99 | 100 | 101 | 102 | 103 | 104 | {{main.message}} 105 | 106 | 107 | 108 | 109 | 110 | 帮助 111 | 112 | 113 | 114 | 1、根据姓名、学号、班级、专业等查询 115 | 116 | 您可以通过输入姓名、学号、班级、专业等学生信息的完整关键词进行精确搜索,也可以输入学生信息的前一部分进行模糊搜索。例如搜索 “陈” ,将会搜索到所有姓‘陈’的同学。 117 | 118 | 2、根据课程教学班查询 119 | 120 | 您可以通过输入 ‘年级’+‘专业’+‘班号’ 进行精确搜索。如搜索 “14软件本科1班” ,将会搜索到14软件本科1班的学生名单。 121 | 122 | 3、该项功能仅提供老师使用 123 | 124 | 学生列表仅供参考,该学生在该系统上绑定,才能搜索到数据 125 | 126 | 127 | 128 | 129 | 130 | 131 | 134 |
-------------------------------------------------------------------------------- /pages/core/ykt/ykt.js: -------------------------------------------------------------------------------- 1 | //ykt.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | canvas_remind: '加载中', 8 | fontSize: 12, // 字体大小, 24rpx=12px 9 | count: 10, // 展示的消费次数 10 | width: 0, // 画布宽 11 | height: 300, // 画布高, wxss给定canvas高300px 12 | dict: [], // 所有消费数据 13 | points: [], // 点的集合(包括点的横坐标x、纵坐标y、当前点的详情detail) 14 | costArr: [], // 消费金额集合 15 | balanceArr: [], // 余额金额集合 16 | tapDetail: {}, // 每个点对应的详情集合 17 | lineLeft: 0, // 详情垂直线的初始左边距 18 | gridMarginLeft: 35,// 表格左边距 19 | gridMarginTop: 20, // 表格上边距 20 | balance: 0, // 当前余额(余额卡片上的展示数据) 21 | last_time: '', 22 | ykt_id: '', 23 | switchBtn: true, // true:余额 or false:交易额 24 | options: {}, 25 | currentIndex: 0, // 当前点的索引,切换视图的时候保持当前详情 26 | polling: 10 // 轮询次数 27 | }, 28 | onLoad: function () { 29 | var _this = this; 30 | _this.loadData(); 31 | }, 32 | loadData: function () { 33 | var _this = this; 34 | // if (!app.user.is_bind_mealcard) { 35 | // wx.redirectTo({ 36 | // url: '/pages/more/append?type=mealcard' 37 | // }) 38 | // return false; 39 | // } 40 | //判断并读取缓存 41 | if (app.cache.ykt) { _this.yktRender(app.cache.ykt); } 42 | _this.getData(); 43 | }, 44 | yktRender: function (data) { 45 | this.setData({ 46 | ykt_info: data, 47 | remind: '', 48 | }); 49 | }, 50 | getData: function () { 51 | var _this = this; 52 | wx.request({ 53 | url: app.server + '/api/users/get_mealcard', 54 | method: 'POST', 55 | data: { 56 | session_id: app.user.id 57 | }, 58 | success: function (res) { 59 | if (res.data && res.data.status === 200) { 60 | // 停止异步轮询 61 | _this.data.polling = 0; 62 | var info = res.data.data; 63 | if (info) { 64 | //保存一卡通缓存 65 | app.saveCache('ykt', info); 66 | _this.yktRender(info); 67 | } else { _this.setData({ remind: '暂无数据' }); } 68 | 69 | } else if (res.data && res.data.status === 404) { 70 | // 异步等待中 71 | } else { 72 | // 停止异步轮询 73 | _this.data.polling = 0; 74 | app.removeCache('ykt'); 75 | _this.setData({ 76 | remind: res.data.message || '未知错误' 77 | }); 78 | } 79 | }, 80 | fail: function (res) { 81 | if (_this.data.remind == '加载中') { 82 | _this.setData({ 83 | remind: '网络错误' 84 | }); 85 | } 86 | console.warn('网络错误'); 87 | }, 88 | complete: function () { 89 | wx.hideNavigationBarLoading(); 90 | setTimeout(function () { 91 | if (_this.data.polling == 1){ 92 | //轮询失败 93 | _this.setData({ remind: '服务器繁忙,请稍后再试' }); 94 | } else if (_this.data.polling > 0) { 95 | _this.data.polling = _this.data.polling - 1; 96 | _this.getData(); 97 | } 98 | }, 2000); 99 | } 100 | }); 101 | } 102 | }); -------------------------------------------------------------------------------- /pages/core/ykt/ykt.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#EC92B7", 3 | "navigationBarTitleText": "校园卡" , 4 | "backgroundColor": "#EC92B7", 5 | "enablePullDownRefresh": false 6 | } -------------------------------------------------------------------------------- /pages/core/ykt/ykt.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{remind}} 9 | 10 | 11 | 12 | 13 | 14 | CAMPUS CARD 15 | 16 | 17 | 18 | 19 | 20 | 21 | 余额 22 | 23 | {{ykt_info.mainFare}}元 24 | 25 | 26 | 27 | 卡号:{{ykt_info.outid}} 28 | 更新时间:{{ykt_info.lasttime}} 29 | 30 | 31 | 32 | 33 | 校园卡详情 34 | 35 | 36 | 37 | 卡片状态 38 | {{ykt_info.status}} 39 | 40 | 41 | 用电支出 42 | {{ykt_info.electric_xffare?ykt_info.electric_xffare + '元':'获取不到数据'}} 43 | 44 | 45 | 用电比重 46 | {{ykt_info.electric_xffare_per * 100}}% 47 | 48 | 49 | 餐费支出 50 | {{ykt_info.meal_xffare?ykt_info.meal_xffare+'元':'获取不到数据'}} 51 | 52 | 53 | 餐费比重 54 | {{ykt_info.meal_xffare_per * 100}}% 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /pages/core/ykt/ykt.wxss: -------------------------------------------------------------------------------- 1 | /**ykt.wxss**/ 2 | 3 | .container { 4 | background-color: #f7f7f7; 5 | padding: 30rpx; 6 | } 7 | 8 | /* 今日余额 */ 9 | 10 | .ykt-card { 11 | display: flex; 12 | flex-direction: column; 13 | height: 350rpx; 14 | margin: 15rpx 50rpx 45rpx; 15 | background: linear-gradient(to top right,rgba(255,93,166,0.6), rgba(255,93,166,1)); 16 | border-radius: 15rpx; 17 | box-shadow: 5rpx 5rpx 15rpx #ccc; 18 | } 19 | 20 | .ykt-line { 21 | height: 80rpx; 22 | margin: 10rpx 0 0; 23 | display: flex; 24 | align-items: center; 25 | justify-content: space-between; 26 | padding: 0 30rpx; 27 | } 28 | .ykt-balance { 29 | font-size: 15px; 30 | color: #fff; 31 | } 32 | .two-balls { 33 | display: flex; 34 | position: relative; 35 | } 36 | .ball-one,.ball-two { 37 | width: 50rpx; 38 | height: 50rpx; 39 | border-radius: 25rpx; 40 | background-color: #fff; 41 | opacity: 0.7; 42 | } 43 | .ball-one { 44 | position: absolute; 45 | right: 30rpx; 46 | } 47 | 48 | .ykt-content { 49 | flex: 1; 50 | display: flex; 51 | align-items: center; 52 | justify-content: center; 53 | flex-direction: column; 54 | margin-top: 0rpx; 55 | } 56 | 57 | .ykt-ye-name { 58 | font-size: 11pt; 59 | line-height: 35rpx; 60 | margin-left: -130px; 61 | color: #fff; 62 | } 63 | 64 | .ykt-ye-money { 65 | text-align: center; 66 | font-size: 10pt; 67 | color: #fff; 68 | margin: 15rpx 0 30rpx 0; 69 | } 70 | 71 | .ykt-ye-value { 72 | font-size: 36pt; 73 | font-weight: bold; 74 | line-height: 80rpx; 75 | padding-right: 25rpx; 76 | } 77 | 78 | 79 | .ykt-card-more { 80 | display: flex; 81 | justify-content: space-between; 82 | align-items: flex-end; 83 | margin: 5rpx 25rpx 30rpx 25rpx; 84 | line-height: 100%; 85 | color: #fff; 86 | } 87 | 88 | .ykt-ye-time { 89 | font-size: 9pt; 90 | } 91 | 92 | .ykt-ye-id { 93 | font-size: 10pt; 94 | width: 250rpx; 95 | overflow: hidden; 96 | white-space:nowrap; 97 | text-overflow:ellipsis; 98 | } 99 | 100 | /* canvas */ 101 | 102 | .grid-remind { 103 | padding-left: 40rpx; 104 | color: #999; 105 | margin-bottom: 25rpx; 106 | } 107 | 108 | /* 余额、消费切换按钮 */ 109 | 110 | .balance-consumption { 111 | display: flex; 112 | margin: 0 45rpx 10rpx; 113 | border-radius: 5px; 114 | box-shadow: 0 0 10rpx #ddd; 115 | overflow: hidden; 116 | } 117 | 118 | .balance-consumption text { 119 | flex: 1; 120 | flex-shrink: 0; 121 | line-height: 150%; 122 | font-size: 10pt; 123 | padding: 12rpx 0; 124 | font-weight: bold; 125 | text-align: center; 126 | background: #fff; 127 | } 128 | 129 | .balance-consumption .current-btn { 130 | color: #fff; 131 | background: #ffcb63; 132 | } 133 | 134 | /* 网格 */ 135 | 136 | .grid-wraper { 137 | display: flex; 138 | align-items: center; 139 | justify-content: center; 140 | position: relative; 141 | margin-top: 50rpx; 142 | width: 100%; 143 | height: 300px; 144 | } 145 | 146 | #ykt-canvas { 147 | position: absolute; 148 | top: 0; 149 | right: 0; 150 | left: 0; 151 | bottom: 0; 152 | z-index: 1; 153 | width: 100%; 154 | height: 100%; 155 | } 156 | 157 | /* 详情竖线 */ 158 | 159 | .line { 160 | position: absolute; 161 | z-index: 999; 162 | top: 15px; 163 | height: 265px; 164 | width: 3px; 165 | background: #e78ab0; 166 | } 167 | 168 | /* 横纵坐标的含义 */ 169 | 170 | .y-text { 171 | position: absolute; 172 | left: 15rpx; 173 | top: -40rpx; 174 | padding: 0 10rpx; 175 | font-size: 24rpx; 176 | color: #999; 177 | } 178 | 179 | .x-text { 180 | position: absolute; 181 | right: 25rpx; 182 | bottom: -10rpx; 183 | padding: 0 10rpx; 184 | font-size: 24rpx; 185 | color: #999; 186 | } 187 | 188 | /* 详情盒子 */ 189 | 190 | .detail-remind { 191 | font-size: 9pt; 192 | line-height: 100%; 193 | color: #aaa; 194 | text-align: center; 195 | margin: 30rpx 5rpx; 196 | } 197 | 198 | .ykt-detail-wraper { 199 | display: flex; 200 | flex-direction: column; 201 | margin: 0 30rpx 30rpx; 202 | background: #fff; 203 | border-radius: 3px; 204 | } 205 | 206 | .ykt-detail { 207 | display: flex; 208 | flex-direction: column; 209 | padding: 0 10rpx; 210 | overflow: hidden; 211 | } 212 | 213 | .ykt-head { 214 | display: flex; 215 | justify-content: center; 216 | align-items: center; 217 | height: 120rpx; 218 | } 219 | 220 | .ykt-type-name { 221 | font-size: 11pt; 222 | } 223 | 224 | .detail-list { 225 | display: flex; 226 | flex-direction: column; 227 | align-items: stretch; 228 | padding: 0 35rpx 10rpx; 229 | } 230 | 231 | .detail-item { 232 | display: flex; 233 | justify-content: space-between; 234 | align-items: center; 235 | padding: 25rpx 5rpx 20rpx; 236 | border-top: 1px solid #eee; 237 | } 238 | 239 | .detail-item-label { 240 | color: #888; 241 | width: 60pt; 242 | } 243 | 244 | .detail-item-value { 245 | flex: 1; 246 | } 247 | -------------------------------------------------------------------------------- /pages/core/zs/detail/detail.js: -------------------------------------------------------------------------------- 1 | //detail.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | xfData: [], // 书籍数据 8 | listAnimation: {}, // 列表动画 9 | book_url: '' 10 | }, 11 | //分享 12 | onShareAppMessage: function () { 13 | return { 14 | title: this.data.book_name + ' - 书籍详情 - 莞香小喵', 15 | desc: '广东科技学院唯一的小程序', 16 | path: '/pages/index/index?r=/pages/core/zs/detail/detail|url:' + this.data.book_url 17 | }; 18 | }, 19 | // 页面加载 20 | onLoad: function (options) { 21 | var _this = this; 22 | //判断并读取缓存 23 | _this.data.book_url = options.url; 24 | //if (app.cache.zs) { xfRender(app.cache.zs); } 25 | function zsRender(info) { 26 | // 为每一本书设置是否显示当前数据详情的标志open, false表示不显示 27 | var list = info.rows; 28 | for (var i = 0, len = list.length; i < len; ++i) { 29 | list[i].open = false; 30 | } 31 | list[0].open = true; 32 | _this.setData({ 33 | remind: '', 34 | book_name: info.book_name, 35 | xfData: list, 36 | catalog: info.catalog 37 | }); 38 | } 39 | wx.showNavigationBarLoading(); 40 | wx.request({ 41 | url: app.server + "/library/book_detail", 42 | method: 'GET', 43 | data: { 44 | url: options.url 45 | }, 46 | success: function (res) { 47 | if (res.data && res.data.code === 200) { 48 | var info = res.data.data; 49 | if (info) { 50 | zsRender(info); 51 | } else { _this.setData({ remind: '暂无数据' }); } 52 | 53 | } else { 54 | app.removeCache('zs'); 55 | _this.setData({ 56 | remind: res.data.message || '未知错误' 57 | }); 58 | } 59 | 60 | }, 61 | fail: function (res) { 62 | if (_this.data.remind == '加载中') { 63 | _this.setData({ 64 | remind: '网络错误' 65 | }); 66 | } 67 | console.warn('网络错误'); 68 | }, 69 | complete: function () { 70 | wx.hideNavigationBarLoading(); 71 | } 72 | }); 73 | }, 74 | 75 | // 展示书籍详情 76 | slideDetail: function (e) { 77 | 78 | var id = e.currentTarget.id, 79 | list = this.data.xfData; 80 | 81 | // 每次点击都将当前open换为相反的状态并更新到视图,视图根据open的值来切换css 82 | for (var i = 0, len = list.length; i < len; ++i) { 83 | if (list[i].access_num == id) { 84 | list[i].open = !list[i].open; 85 | } else { 86 | list[i].open = false; 87 | } 88 | } 89 | this.setData({ 90 | xfData: list 91 | }); 92 | } 93 | }); -------------------------------------------------------------------------------- /pages/core/zs/detail/detail.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#9f8bea", 3 | "navigationBarTitleText": "书籍详情", 4 | "backgroundColor": "#9f8bea", 5 | "enablePullDownRefresh": false 6 | } -------------------------------------------------------------------------------- /pages/core/zs/detail/detail.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {{remind}} 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | {{book_name}} 17 | 18 | 19 | {{itemName}} 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | {{itemName.book_name}} ({{itemName.status}}) 33 | 34 | 35 | 36 | 37 | 索书号 38 | {{itemName.callno}} 39 | 40 | 41 | 条码号 42 | {{itemName.barcode}} 43 | 44 | 45 | 登录号 46 | {{itemName.access_num}} 47 | 48 | 49 | 藏书部门 50 | {{itemName.collect_dept}} 51 | 52 | 53 | 流通状态 54 | {{itemName.status}} 55 | 56 | 57 | 应还日期 58 | {{itemName.deadline}} 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /pages/core/zs/detail/detail.wxss: -------------------------------------------------------------------------------- 1 | /**xf.wxss**/ 2 | 3 | .container { 4 | padding-left: 30rpx; 5 | padding-right: 30rpx; 6 | background-color: #f7f7f7; 7 | } 8 | 9 | /** 学费title **/ 10 | 11 | .xf-title-wraper { 12 | display: flex; 13 | justify-content: space-between; 14 | padding: 50rpx 0; 15 | } 16 | 17 | .xf-title-info { 18 | display: flex; 19 | flex-direction: column; 20 | justify-content: center; 21 | padding-left: 25rpx; 22 | } 23 | 24 | .xf-stu-info { 25 | display: flex; 26 | flex-direction: column; 27 | } 28 | 29 | .xf-stu-info text { 30 | font-size: 11pt; 31 | line-height: 160%; 32 | color: #888; 33 | } 34 | 35 | .xf-title { 36 | font-size: 20pt; 37 | font-weight: bold; 38 | line-height: 150%; 39 | margin-bottom: 15rpx; 40 | color: #222; 41 | } 42 | 43 | .xf-title-icon { 44 | display: block; 45 | width: 200rpx; 46 | height: 200rpx; 47 | padding-right: 5rpx; 48 | opacity: 0.3; 49 | } 50 | 51 | /** 学费类型 **/ 52 | 53 | .xf-types { 54 | display: flex; 55 | flex-direction: column; 56 | } 57 | 58 | .xf-type-item { 59 | display: flex; 60 | flex-direction: column; 61 | font-size: 11pt; 62 | padding: 0 40rpx; 63 | margin-bottom: 20rpx; 64 | background-color: #fff; 65 | border-radius: 3px; 66 | } 67 | 68 | .xf-head { 69 | display: flex; 70 | align-items: center; 71 | justify-content: space-between; 72 | height: 145rpx; 73 | } 74 | 75 | .xf-detail { 76 | display: none; 77 | flex-direction: column; 78 | overflow: hidden; 79 | padding: 0; 80 | } 81 | 82 | .xf-item-show .xf-detail { 83 | display: flex; 84 | padding: 5rpx 0 15rpx; 85 | } 86 | 87 | .xf-detail-item { 88 | display: flex; 89 | align-items: center; 90 | padding: 25rpx 5rpx 20rpx; 91 | border-top: 1px solid #eee; 92 | } 93 | 94 | .xf-detail-label { 95 | color: #888; 96 | width: 75pt; 97 | } 98 | 99 | .xf-detail-content { 100 | flex: 1; 101 | } 102 | 103 | /**列表展开的icon旋转 **/ 104 | 105 | .xf-item-icon { 106 | width: 30rpx; 107 | height: 30rpx; 108 | transition: transform 0.2s; 109 | transform: rotate(0deg); 110 | } 111 | 112 | .xf-item-show .xf-item-icon { 113 | transform: rotate(180deg); 114 | } 115 | 116 | /**列表展开时标题的颜色变化 **/ 117 | 118 | .xf-type-name { 119 | font-size: 12pt; 120 | letter-spacing: 1px; 121 | transition: color 0.15s ease-in-out; 122 | white-space: nowrap; 123 | text-overflow: ellipsis; 124 | overflow: hidden; 125 | } 126 | 127 | .xf-item-show .xf-type-name { 128 | transition: color 0.15s ease-in-out; 129 | color: #8271bf; 130 | } 131 | 132 | .xf-TotalTuition, .xf-ApartmentPay, .xf-CollectingPay { 133 | margin-left: 25rpx; 134 | } 135 | 136 | .xf-MajorTuition, .xf-GradeTuition, .xf-SecMajorTuition { 137 | margin-left: 50rpx; 138 | } 139 | -------------------------------------------------------------------------------- /pages/core/zs/zs.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarBackgroundColor": "#9f8bea", 3 | "navigationBarTitleText": "我要找书", 4 | "backgroundColor": "#9f8bea", 5 | "enablePullDownRefresh": false 6 | } -------------------------------------------------------------------------------- /pages/core/zs/zs.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 24 | 27 |
28 |
29 | 30 | 图书馆开放时间 31 | 32 | 周一至周四 10:00-12:00 14:40-21:00 33 | 周   五 10:00-12:00 14:40-17:40 34 | 周六、周日 09:00-12:00 14:40-21:00 35 | 自习室开放时间为每天8:00-23:00 36 | 寒暑假、法定节假日不开放! 37 | 38 | 39 |
40 | 41 | 42 | 43 | 44 | 45 | 46 | 书籍信息:{{main.total}}本 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | {{item.title}} 62 | 63 | 责任者:{{item.author}} 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 88 | 89 | 90 | 91 | 92 | 93 | {{main.message}} 94 | 95 | 96 | 97 | 98 | 99 | 帮助 100 | 101 | 102 | 103 | 1.根据题名/作者/主题词等查询 104 | 105 | 例如:围城,可搜索到所有带有围城字样的书籍 106 | 107 | 2.图书馆开放时间 108 | 109 | 周一至周四 10:00-12:00 14:40-21:00 110 | 周   五 10:00-12:00 14:40-17:40 111 | 周六、周日 09:00-12:00 14:40-21:00 112 | 自习室开放时间为每天8:00-23:00 113 | 寒暑假、法定节假日不开放! 114 | 115 | 116 | 117 | 118 | 119 | 120 | 123 |
-------------------------------------------------------------------------------- /pages/index/index.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /pages/index/index.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | {{item.name}} 17 | 18 | 19 | 20 | {{item.name}} 21 | 22 | 23 | 24 | 25 | 26 | {{item.name}} 27 | 28 | 29 | 30 | 31 | 32 | 33 | 请先绑定帐号 34 | 该服务不可用 35 | 36 | 37 | 38 | 39 | 40 | 41 | {{remind}} 42 | 前往绑定 43 | 44 | 45 | 46 | 47 | 48 | 49 | 课表安排 50 | MORE > 51 | 52 | 53 | 54 | 今天没有课~😆 55 | 56 | 57 | 58 | 59 | 60 | {{item[0].name}} 61 | {{item[0].time}} 62 | 63 | 64 | {{item[0].place}} 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 校园卡 74 | MORE > 75 | 76 | 77 | 78 | 79 | 卡号:{{card.ykt.data.outid}} 80 | 余额:{{card.ykt.data.balance}}元 81 | 更新时间:{{card.ykt.data.last_time}} 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 图书馆 90 | 91 | 92 | 93 | 94 | 95 | 图书证:{{card.jy.data.account}} 96 | 过期:{{card.jy.data.licence_end_time}} 97 | 98 | 99 | 100 | 101 | 102 | 逾期欠费:{{card.jy.data.arrears_money}}元 103 | 类型:{{card.jy.data.user_type}} 104 | 105 | 106 | 107 | 108 | 109 | 更多好书 110 | 请点击 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 我是一个乖巧的结尾 119 | 120 | 121 | -------------------------------------------------------------------------------- /pages/more/about.js: -------------------------------------------------------------------------------- 1 | //about.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | version: '', 7 | showLog: false 8 | }, 9 | onLoad: function () { 10 | this.setData({ 11 | version: app.version, 12 | year: new Date().getFullYear() 13 | }); 14 | }, 15 | onShareAppMessage: function () { 16 | return { 17 | title: '莞香小喵微信小程序', 18 | desc: '分享你的大学生活', 19 | path: '/pages/more/about' 20 | } 21 | }, 22 | toggleLog: function () { 23 | this.setData({ 24 | showLog: !this.data.showLog 25 | }); 26 | } 27 | }); -------------------------------------------------------------------------------- /pages/more/about.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarTitleText": "关于", 3 | "enablePullDownRefresh": false 4 | } -------------------------------------------------------------------------------- /pages/more/about.wxss: -------------------------------------------------------------------------------- 1 | /**about.wxss**/ 2 | .container{ 3 | background: #f4f4f4; 4 | padding: 0; 5 | font-size: 11pt; 6 | } 7 | .header{ 8 | position: relative; 9 | width: 100%; 10 | height: 400rpx; 11 | text-align: center; 12 | box-sizing: border-box; 13 | overflow: hidden; 14 | display: flex; 15 | align-items: center; 16 | justify-content: center; 17 | } 18 | .header .title{ 19 | position: relative; 20 | width: 600rpx; 21 | height: 200rpx; 22 | z-index: 3; 23 | opacity: .95; 24 | } 25 | .black-cover{ 26 | position: absolute; 27 | z-index: 2; 28 | top:0; 29 | left: 0; 30 | width: 100%; 31 | height: 100%; 32 | background: #888; 33 | opacity: .18; 34 | } 35 | .about_bg{ 36 | position: absolute; 37 | top:0; 38 | left: 0; 39 | z-index: 1; 40 | width: 100%; 41 | height: 100%; 42 | border-radius: 10rpx; 43 | } 44 | .content{ 45 | flex: 1; 46 | } 47 | .version{ 48 | height: 100rpx; 49 | background: #fff; 50 | display: flex; 51 | align-items: center; 52 | padding: 0 45rpx; 53 | box-sizing: border-box; 54 | font-size: 13pt; 55 | color: #666; 56 | border-bottom: 1px #e5e5e5 solid; 57 | } 58 | .version-title{ 59 | flex: 1; 60 | display: flex; 61 | align-items: center; 62 | } 63 | .title-name{ 64 | padding-right: 10rpx; 65 | } 66 | .version-text{ 67 | font-size: 10pt; 68 | line-height: 100%; 69 | color: #079df2; 70 | border: 1px solid #079df2; 71 | padding: 5rpx 10rpx; 72 | border-radius: 5rpx; 73 | margin-left: 10rpx; 74 | text-align: center; 75 | } 76 | .version-log-link{ 77 | font-size: 12pt; 78 | color: #079df2; 79 | } 80 | .version-log-link:active{ 81 | opacity: .8; 82 | } 83 | .log-list{ 84 | display: flex; 85 | flex-direction: column; 86 | align-items: stretch; 87 | } 88 | .describe{ 89 | width: 100%; 90 | box-sizing: border-box; 91 | padding: 20rpx 45rpx 30rpx; 92 | display: flex; 93 | flex-flow: column nowrap; 94 | color: #545454; 95 | line-height: 175%; 96 | background: #fff; 97 | margin-top: 15rpx; 98 | border-top: 1px #e5e5e5 solid; 99 | border-bottom: 1px #e5e5e5 solid; 100 | } 101 | .desc-title{ 102 | display: flex; 103 | font-size: 13pt; 104 | line-height: 200%; 105 | margin-bottom: 15rpx; 106 | } 107 | .desc-v{ 108 | flex: 1; 109 | } 110 | .desc-time{ 111 | font-size: 11pt; 112 | color: #888; 113 | } 114 | .desc-list{ 115 | display: flex; 116 | flex-direction: column; 117 | border-left: 8rpx solid #ddd; 118 | padding-left: 15rpx; 119 | color: #777; 120 | margin-bottom: 15rpx; 121 | font-size: 10pt; 122 | } 123 | .desc-content{ 124 | padding-bottom: 15rpx; 125 | } 126 | .footer{ 127 | font-size: 10pt; 128 | text-align: center; 129 | padding: 100rpx 0 15rpx; 130 | color: #c2c2c2; 131 | } 132 | .footer-gx{ 133 | height: 10pt; 134 | line-height: 10pt; 135 | display: flex; 136 | align-items: stretch; 137 | justify-content: center; 138 | margin-bottom: 5rpx; 139 | } 140 | .footer-gx image{ 141 | width: 10pt; 142 | height: 10pt; 143 | margin-right: 5rpx; 144 | } 145 | -------------------------------------------------------------------------------- /pages/more/append.js: -------------------------------------------------------------------------------- 1 | //append.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | remind: '加载中', 7 | help_status: false, 8 | title: '', 9 | form_id: '', 10 | form_pwd: '', 11 | bind_type: '', 12 | userid_focus: false, 13 | passwd_focus: false, 14 | userid: '', 15 | passwd: '', 16 | angle: 0 17 | }, 18 | onLoad: function (options) { 19 | var _this = this; 20 | app.loginLoad().then(function () { 21 | _this.setData({ 22 | title: '绑定图书证', 23 | form_id: '图书证卡号', 24 | form_pwd: '图书证密码', 25 | bind_type: 'library' 26 | }) 27 | }); 28 | }, 29 | onReady: function() { 30 | var _this = this; 31 | setTimeout(function() { 32 | _this.setData({ 33 | remind: '' 34 | }); 35 | }, 1000); 36 | wx.onAccelerometerChange(function(res) { 37 | var angle = -(res.x * 30).toFixed(1); 38 | if (angle > 14) { 39 | angle = 14; 40 | } else if (angle < -14) { 41 | angle = -14; 42 | } 43 | if (_this.data.angle !== angle) { 44 | _this.setData({ 45 | angle: angle 46 | }); 47 | } 48 | }); 49 | }, 50 | bind: function() { 51 | var _this = this; 52 | if (app.g_status) { 53 | app.showErrorModal(app.g_status, '绑定失败'); 54 | return; 55 | } 56 | if (!_this.data.userid || !_this.data.passwd) { 57 | app.showErrorModal('卡号及密码不能为空', '提醒'); 58 | return false; 59 | } 60 | wx.showLoading({ 61 | title: '绑定中', 62 | }) 63 | var data = { 64 | account: _this.data.userid, 65 | password: _this.data.passwd 66 | }; 67 | app.wx_request("/library/xcx_login", 'POST', data).then(function(res) { 68 | if (res.data && res.data.status === 200) { 69 | app.showLoadToast('请稍候'); 70 | //清除缓存 71 | if (app.cache) { 72 | app.removeCache('ykt'); 73 | app.removeCache('jy'); 74 | } 75 | wx.hideLoading(); 76 | wx.showToast({ 77 | title: '绑定成功', 78 | icon: 'success', 79 | duration: 1500 80 | }); 81 | setTimeout(function() { 82 | // 直接跳转回首页 83 | wx.redirectTo({ 84 | url: '/pages/core/jy/jy' 85 | }) 86 | }, 1500) 87 | } else { 88 | wx.hideToast(); 89 | wx.hideLoading(); 90 | app.showErrorModal(res.data.msg, '绑定失败'); 91 | } 92 | }).catch(function(res) { 93 | wx.hideToast(); 94 | wx.hideLoading(); 95 | app.showErrorModal(res.errMsg, '绑定失败'); 96 | }); 97 | }, 98 | useridInput: function(e) { 99 | this.setData({ 100 | userid: e.detail.value 101 | }); 102 | if (e.detail.value.length >= 18) { 103 | wx.hideKeyboard(); 104 | } 105 | }, 106 | passwdInput: function(e) { 107 | this.setData({ 108 | passwd: e.detail.value 109 | }); 110 | }, 111 | inputFocus: function(e) { 112 | if (e.target.id == 'userid') { 113 | this.setData({ 114 | 'userid_focus': true 115 | }); 116 | } else if (e.target.id == 'passwd') { 117 | this.setData({ 118 | 'passwd_focus': true 119 | }); 120 | } 121 | }, 122 | inputBlur: function(e) { 123 | if (e.target.id == 'userid') { 124 | this.setData({ 125 | 'userid_focus': false 126 | }); 127 | } else if (e.target.id == 'passwd') { 128 | this.setData({ 129 | 'passwd_focus': false 130 | }); 131 | } 132 | }, 133 | tapHelp: function(e) { 134 | if (e.target.id == 'help') { 135 | this.hideHelp(); 136 | } 137 | }, 138 | showHelp: function(e) { 139 | this.setData({ 140 | 'help_status': true 141 | }); 142 | }, 143 | hideHelp: function(e) { 144 | this.setData({ 145 | 'help_status': false 146 | }); 147 | } 148 | }); -------------------------------------------------------------------------------- /pages/more/append.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarTitleText": " ", 3 | "enablePullDownRefresh": false, 4 | "disableScroll": true 5 | } -------------------------------------------------------------------------------- /pages/more/append.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | {{remind}} 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | {{title}} 18 |
19 | 20 | {{form_id}} 21 | 22 | 23 | 24 | {{form_pwd}} 25 | 26 | 27 | 31 |
32 | 33 | 确认绑定 34 | 35 |
36 | 37 | 38 | 39 | 帮助 40 | 41 | 42 | 43 | 1、账号密码是什么? 44 | 45 | 账号:正方教务系统账号,学生为学号,老师为教工号 46 | 密码:学生初始密码卡号后六位,教室初始密码为教工号 47 | 忘记卡号或者密码请咨询辅导员或教务系统管理人员 48 | 49 | 50 | 51 | 52 | 53 | 帮助 54 | 55 | 56 | 57 | 1、校园卡帐号和密码是什么? 58 | 59 | 卡号:一般写在校园卡背面,丢失请用完美校园的NFC读取或者充电处查看 60 | 密码:初始密码或者已更改密码 61 | 62 | 2、忘记密码? 63 | 64 | ①16级饭卡卡号是身份证 65 | ②16级默认密码为身份证号码后6位,如果身份证最后一位为X,则用0代替 66 | ③15级默认密码为000000 67 | ④其余默认密码为888888 68 | ⑤依旧错误请到到1栋楼下饭卡充值处更改密码 69 | 70 | 71 | 72 | 73 | 74 | 帮助 75 | 76 | 77 | 78 | 1、图书证帐号和密码是什么? 79 | 80 | 卡号:一般写在图书证背面 81 | 密码:初始密码卡号后六位 82 | 忘记卡号或者密码请咨询图书馆管理员 83 | 84 | 85 | 86 | 87 |
88 |
89 |
-------------------------------------------------------------------------------- /pages/more/append.wxss: -------------------------------------------------------------------------------- 1 | /**append.wxss**/ 2 | @import './login.wxss'; 3 | .append-title { 4 | position: absolute; 5 | top: 50rpx; 6 | width: 100%; 7 | color: #777; 8 | font-size: 22pt; 9 | line-height: 200%; 10 | text-align: center; 11 | } 12 | .append-form { 13 | padding: 140rpx 0 50rpx; 14 | } -------------------------------------------------------------------------------- /pages/more/issues.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarTitleText": "反馈", 3 | "enablePullDownRefresh": false, 4 | "navigationBarBackgroundColor": "#7acfa6" 5 | } -------------------------------------------------------------------------------- /pages/more/issues.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 我的反馈记录({{list.count}}次) 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | #{{item.issues}} 17 | 18 | 19 | {{label.name}} 20 | 21 | 已解决 22 | 进行中 23 | 24 | 25 | 26 | {{item.title}} 27 | 28 | 29 | 30 | 31 | 32 | {{item_remind ? item_remind : item.content.body}} 33 | 34 | 35 | 36 | {{comment.user.login}} 37 | {{comment.body}} 38 | 39 | 40 | 41 | 42 | 43 | 该反馈记录仅显示了反馈及回复的内容摘要,若要了解反馈详细,请访问 https://github.com/gxgk/gxgk-wechat-app/issues 莞香小喵-Github。 44 | 45 | {{list_remind}} 46 | 47 | 48 | 49 | 新建反馈 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 选择图片(可选) 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 您的反馈将会以Issues的形式提交至莞香小喵的Github,您可通过访问 https://github.com/gxgk/gxgk-wechat-app/issues 来了解反馈动态;此外,您还可以加入莞香小喵用户反馈QQ群437249421进行即时反馈。另注:频繁恶意反馈的用户将取消其反馈资格。 71 | 72 | 提交反馈 73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /pages/more/issues.wxss: -------------------------------------------------------------------------------- 1 | /**issuse.wxss**/ 2 | .container{ 3 | background-color: #f6f6f6; 4 | padding: 0; 5 | padding-top: 30rpx; 6 | font-size: 11pt; 7 | box-sizing: border-box; 8 | } 9 | .list-btn { 10 | align-items: center; 11 | font-size: 11pt; 12 | padding: 0 30rpx 0 10px; 13 | margin-bottom: 10rpx; 14 | display: flex; 15 | background-color: #fff; 16 | min-height: 85rpx; 17 | border-top: 1px solid #e5e5e5; 18 | border-bottom: 1px solid #e5e5e5; 19 | } 20 | .list-btn:active { 21 | background-color: #fcfcfc; 22 | } 23 | .btn-icon { 24 | width: 45rpx; 25 | height: 45rpx; 26 | margin-right: 15rpx; 27 | } 28 | .btn-text{ 29 | flex: 1; 30 | margin: 20rpx 0 15rpx; 31 | } 32 | .btn-open { 33 | flex-shrink: 0; 34 | display: flex; 35 | align-items: center; 36 | justify-content: flex-end; 37 | margin-left: 10rpx; 38 | } 39 | .btn-open-img { 40 | width: 30rpx; 41 | height: 30rpx; 42 | } 43 | .issues-list{ 44 | display: flex; 45 | flex-direction: column; 46 | align-items: stretch; 47 | margin-top: 10rpx; 48 | } 49 | .item-labels{ 50 | flex: 1; 51 | } 52 | .item-label{ 53 | flex: 1; 54 | background: #7acfa6; 55 | color: #fff; 56 | font-size: 9pt; 57 | padding: 4rpx 10rpx; 58 | border-radius: 3px; 59 | margin: 0 5rpx; 60 | } 61 | .item-status{ 62 | font-size: 10pt; 63 | color: #999; 64 | } 65 | .issues-item{ 66 | position: relative; 67 | display: flex; 68 | flex-direction: column; 69 | align-items: stretch; 70 | background-color: #fff; 71 | margin: 10rpx 30rpx; 72 | font-size: 11pt; 73 | padding: 15rpx 25rpx; 74 | min-height: 100rpx; 75 | border-radius: 3px; 76 | box-shadow: 1px 2px 3px #ddd; 77 | } 78 | .issues-item.close { 79 | flex-direction: row; 80 | align-items: center; 81 | } 82 | .issues-item.close:active{ 83 | background-color: #fcfcfc; 84 | opacity: .8; 85 | } 86 | .item-hd{ 87 | display: flex; 88 | align-items: center; 89 | } 90 | .btn-id { 91 | flex-shrink: 0; 92 | color: #aaa; 93 | font-size: 10pt; 94 | margin-right: 10rpx; 95 | } 96 | .issues-item.close .btn-text{ 97 | flex: 1 1 auto; 98 | white-space: nowrap; 99 | text-overflow: ellipsis; 100 | overflow: hidden; 101 | margin: 0; 102 | } 103 | .item-bd{ 104 | display: flex; 105 | flex-direction: column; 106 | align-items: stretch; 107 | padding: 0 10rpx 15rpx; 108 | font-size: 10pt; 109 | } 110 | .item-content { 111 | padding-bottom: 20rpx; 112 | } 113 | .item-comment{ 114 | display: flex; 115 | border-top: 1rpx solid #eee; 116 | padding: 10rpx 5rpx; 117 | } 118 | .item-comment-img{ 119 | flex-shrink: 0; 120 | width: 50rpx; 121 | height: 50rpx; 122 | margin: 10rpx 20rpx 10rpx 10rpx; 123 | border-radius: 3px; 124 | } 125 | .item-comment-bd{ 126 | flex: 1; 127 | display: flex; 128 | flex-direction: column; 129 | align-items: stretch; 130 | } 131 | .item-comment-name{ 132 | font-size: 9pt; 133 | color: #999; 134 | } 135 | 136 | .issues-label{ 137 | font-size: 10pt; 138 | line-height: 100%; 139 | color: #999; 140 | margin: 25rpx 20rpx 15rpx; 141 | } 142 | .issues-panel{ 143 | display: flex; 144 | flex-direction: column; 145 | align-items: stretch; 146 | background-color: #fff; 147 | border-top: 1px solid #e5e5e5; 148 | border-bottom: 1px solid #e5e5e5; 149 | } 150 | .issues-img-panel{ 151 | display: flex; 152 | flex-wrap: wrap; 153 | background-color: #fff; 154 | border-top: 1px solid #e5e5e5; 155 | border-bottom: 1px solid #e5e5e5; 156 | padding: 15rpx 25rpx; 157 | } 158 | .issues-img-panel.error{ 159 | background: rgba(231, 138, 176, 0.06); 160 | } 161 | .issues-input{ 162 | border-bottom: 1px solid #e5e5e5; 163 | padding: 15rpx 25rpx; 164 | } 165 | .issues-input.error{ 166 | background: rgba(231, 138, 176, 0.06); 167 | } 168 | .issues-textarea{ 169 | width: 100%; 170 | padding: 25rpx; 171 | min-height: 225rpx; 172 | box-sizing: border-box; 173 | } 174 | .issues-textarea.error{ 175 | background: rgba(231, 138, 176, 0.06); 176 | } 177 | .issues-photo-item { 178 | position: relative; 179 | display: flex; 180 | align-items: center; 181 | justify-content: center; 182 | color: #888; 183 | margin: 20rpx; 184 | margin-right: 0; 185 | width: 135rpx; 186 | height: 135rpx; 187 | border: 1rpx solid #e5e5e5; 188 | border-radius: 5rpx; 189 | } 190 | .issues-photo-item:active{ 191 | opacity: .8; 192 | } 193 | .issues-photo-item .remind-img{ 194 | padding: 0; 195 | } 196 | .issues-photo-item image{ 197 | width: 100%; 198 | height: 100%; 199 | } 200 | .add-photo:active { 201 | background: #f0f0f0; 202 | } 203 | .add-photo::before, .add-photo::after{ 204 | content: ''; 205 | position: absolute; 206 | top: 50%; 207 | left: 50%; 208 | background: #e5e5e5; 209 | } 210 | .add-photo:active::before, .add-photo:active::after{ 211 | background: #ddd; 212 | } 213 | .add-photo::before { 214 | width: 10rpx; 215 | height: 80rpx; 216 | margin-top: -40rpx; 217 | margin-left: -5rpx; 218 | } 219 | .add-photo::after { 220 | width: 80rpx; 221 | height: 10rpx; 222 | margin-top: -5rpx; 223 | margin-left: -40rpx; 224 | } 225 | .issues-remind { 226 | flex: 1; 227 | font-size: 9pt; 228 | line-height: 135%; 229 | color: #ccc; 230 | padding: 0 30rpx; 231 | word-break: break-all; 232 | text-indent: 1em; 233 | padding-top: 30rpx; 234 | } 235 | .issues-remind.text-center{ 236 | text-align: center; 237 | } 238 | .submit-btn { 239 | display: flex; 240 | align-items: center; 241 | justify-content: center; 242 | margin: 40rpx 3%; 243 | height: 80rpx; 244 | border-radius: 3px; 245 | text-align: center; 246 | background-color: #7acfa6; 247 | color: #fff; 248 | font-size: 12pt; 249 | line-height: 150%; 250 | padding: 0; 251 | border: none; 252 | } 253 | .submit-btn.disabled{ 254 | opacity: .7; 255 | } 256 | .submit-btn:active{ 257 | opacity: .7; 258 | } -------------------------------------------------------------------------------- /pages/more/login.js: -------------------------------------------------------------------------------- 1 | //login.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | schools_list: [], 7 | index: 0, 8 | usertype: [{ 9 | name: '0', 10 | value: '学生', 11 | checked: 'true' 12 | }, 13 | { 14 | name: '1', 15 | value: '教师' 16 | }, 17 | { 18 | name: '2', 19 | value: '部门' 20 | }, 21 | ], 22 | remind: '加载中', 23 | help_status: false, 24 | userid_focus: false, 25 | passwd_focus: false, 26 | userid: '', 27 | passwd: '', 28 | utype: 0, 29 | angle: 0 30 | }, 31 | onReady: function() { 32 | var _this = this; 33 | wx.onAccelerometerChange(function(res) { 34 | var angle = -(res.x * 30).toFixed(1); 35 | if (angle > 14) { 36 | angle = 14; 37 | } else if (angle < -14) { 38 | angle = -14; 39 | } 40 | if (_this.data.angle !== angle) { 41 | _this.setData({ 42 | angle: angle 43 | }); 44 | } 45 | }); 46 | }, 47 | onLoad: function(options) { 48 | var _this = this; 49 | app.loginLoad().then(function() { 50 | _this.getSchoolList().then(function(res) { 51 | _this.setData({ 52 | remind: '' 53 | }); 54 | }).catch(function(res) { 55 | _this.setData({ 56 | remind: res.errMsg 57 | }); 58 | }); 59 | }); 60 | }, 61 | getSchoolList: function() { 62 | var _this = this; 63 | return new Promise(function(resolve, reject) { 64 | app.wx_request("/school_sys/school_list").then( 65 | function(res) { 66 | if (res.data && res.data.status === 200) { 67 | _this.setData({ 68 | schools_list: res.data.data 69 | }) 70 | resolve(); 71 | } 72 | } 73 | ).catch(function(res) { 74 | reject(res); 75 | }) 76 | }) 77 | }, 78 | bind: function() { 79 | var _this = this; 80 | if (!_this.data.userid || !_this.data.passwd) { 81 | app.showErrorModal('账号及密码不能为空', '提醒'); 82 | return false; 83 | } 84 | wx.showLoading({ 85 | title: '绑定中', 86 | }) 87 | var school_id = _this.data.schools_list[_this.data.index].id; 88 | var account = _this.data.userid; 89 | var data = { 90 | account: account, 91 | password: _this.data.passwd, 92 | school_id: school_id, 93 | usertype: _this.data.utype 94 | } 95 | app.wx_request("/school_sys/xcx_bind", 'POST', data).then( 96 | function(res) { 97 | if (res.data && res.data.status === 200) { 98 | _this.getBindResult(school_id, account) 99 | return 100 | } else { 101 | wx.hideToast(); 102 | wx.hideLoading() 103 | app.showErrorModal(res.data.msg, '绑定失败'); 104 | } 105 | } 106 | ).catch(function(res) { 107 | wx.hideToast(); 108 | wx.hideLoading() 109 | app.showErrorModal(res.errMsg, '绑定失败'); 110 | }) 111 | }, 112 | getBindResult: function (school_id, account){ 113 | var _this = this; 114 | _this.checkBindResult(school_id, account).then(function (res) { 115 | if (res.data.status === 100) { 116 | // 绑定中,开始轮询 117 | setTimeout(function () { 118 | return _this.getBindResult(school_id, account) 119 | }, 500) 120 | } 121 | if (res.data.status === 200) { 122 | wx.hideLoading() 123 | wx.showToast({ 124 | title: '绑定成功', 125 | icon: 'success', 126 | duration: 1500 127 | }); 128 | setTimeout(function () { 129 | // 直接跳转回首页 130 | wx.reLaunch({ 131 | url: '/pages/index/index' 132 | }) 133 | }, 1500) 134 | return 135 | } 136 | }).catch(function (res) { 137 | wx.hideToast(); 138 | wx.hideLoading() 139 | app.showErrorModal(res, '绑定失败'); 140 | return 141 | }) 142 | }, 143 | checkBindResult: function(school_id, account) { 144 | // 检查是否绑定成功 145 | var _this = this; 146 | return new Promise(function(resolve, reject) { 147 | var data = { 148 | school_id: school_id, 149 | account: account 150 | } 151 | app.wx_request("/school_sys/xcx_bind/result", 'POST', data).then(function(res) { 152 | if (res.data && res.data.status === 200) { 153 | resolve(res); 154 | } else if (res.data && res.data.status === 100) { 155 | // 绑定中,开始轮询 156 | resolve(res); 157 | } else { 158 | reject(res.data.msg); 159 | } 160 | }).catch(function(res) { 161 | console.log(res); 162 | reject(res); 163 | }) 164 | }) 165 | }, 166 | schoolPickerChange: function(e) { 167 | console.log(this.data.schools_list[e.detail.value].id) 168 | this.setData({ 169 | index: e.detail.value, 170 | }) 171 | }, 172 | radioChange: function(e) { 173 | this.setData({ 174 | utype: e.detail.value 175 | }); 176 | }, 177 | useridInput: function(e) { 178 | this.setData({ 179 | userid: e.detail.value 180 | }); 181 | if (e.detail.value.length >= 11) { 182 | wx.hideKeyboard(); 183 | } 184 | }, 185 | passwdInput: function(e) { 186 | this.setData({ 187 | passwd: e.detail.value 188 | }); 189 | }, 190 | inputFocus: function(e) { 191 | if (e.target.id == 'userid') { 192 | this.setData({ 193 | 'userid_focus': true 194 | }); 195 | } else if (e.target.id == 'passwd') { 196 | this.setData({ 197 | 'passwd_focus': true 198 | }); 199 | } 200 | }, 201 | inputBlur: function(e) { 202 | if (e.target.id == 'userid') { 203 | this.setData({ 204 | 'userid_focus': false 205 | }); 206 | } else if (e.target.id == 'passwd') { 207 | this.setData({ 208 | 'passwd_focus': false 209 | }); 210 | } 211 | }, 212 | tapHelp: function(e) { 213 | if (e.target.id == 'help') { 214 | this.hideHelp(); 215 | } 216 | }, 217 | showHelp: function(e) { 218 | this.setData({ 219 | 'help_status': true 220 | }); 221 | }, 222 | hideHelp: function(e) { 223 | this.setData({ 224 | 'help_status': false 225 | }); 226 | } 227 | }); -------------------------------------------------------------------------------- /pages/more/login.json: -------------------------------------------------------------------------------- 1 | { 2 | "navigationBarTitleText": " ", 3 | "enablePullDownRefresh": false, 4 | "disableScroll": true 5 | } -------------------------------------------------------------------------------- /pages/more/login.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | {{remind}} 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 41 | 42 | 确认绑定 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /pages/more/login.wxss: -------------------------------------------------------------------------------- 1 | /**login.wxss**/ 2 | .remind-text { 3 | font-size: 12pt; 4 | line-height: 150%; 5 | color:white; 6 | } 7 | .container { 8 | background: #079df2; 9 | align-items: stretch; 10 | padding: 0; 11 | height: 100%; 12 | overflow: hidden; 13 | } 14 | .content{ 15 | flex: 1; 16 | display: flex; 17 | position: relative; 18 | z-index: 10; 19 | flex-direction: column; 20 | align-items: stretch; 21 | justify-content: center; 22 | width: 100%; 23 | height: 100%; 24 | padding-bottom: 450rpx; 25 | background: -webkit-gradient(linear, left top, left bottom, from(rgba(244,244,244,0)), color-stop(0.1, #f4f4f4), to(#f4f4f4)); 26 | opacity: 0; 27 | transform: translate3d(0,100%,0); 28 | animation: rise 3s cubic-bezier(0.19, 1, 0.22, 1) .25s forwards; 29 | } 30 | @keyframes rise{ 31 | 0% {opacity: 0;transform: translate3d(0,100%,0);} 32 | 50% {opacity: 1;} 33 | 100% {opacity: 1;transform: translate3d(0,450rpx,0);} 34 | } 35 | .title{ 36 | position: absolute; 37 | top: 30rpx; 38 | left: 50%; 39 | width: 600rpx; 40 | height: 200rpx; 41 | margin-left: -300rpx; 42 | opacity: 0; 43 | animation: show 2.5s cubic-bezier(0.19, 1, 0.22, 1) .5s forwards; 44 | } 45 | @keyframes show{ 46 | 0% {opacity: 0;} 47 | 100% {opacity: .95;} 48 | } 49 | 50 | .hd { 51 | position: absolute; 52 | top: 0; 53 | left: 50%; 54 | width: 1000rpx; 55 | margin-left: -500rpx; 56 | height: 200rpx; 57 | transition: all .35s ease; 58 | } 59 | .logo { 60 | position: absolute; 61 | z-index: 2; 62 | left: 50%; 63 | bottom: 200rpx; 64 | width: 160rpx; 65 | height: 160rpx; 66 | margin-left: -80rpx; 67 | border-radius: 160rpx; 68 | animation: sway 10s ease-in-out infinite; 69 | opacity: .95; 70 | } 71 | @keyframes sway{ 72 | 0% {transform: translate3d(0,20rpx,0) rotate(-15deg); } 73 | 17% {transform: translate3d(0,0rpx,0) rotate(25deg); } 74 | 34% {transform: translate3d(0,-20rpx,0) rotate(-20deg); } 75 | 50% {transform: translate3d(0,-10rpx,0) rotate(15deg); } 76 | 67% {transform: translate3d(0,10rpx,0) rotate(-25deg); } 77 | 84% {transform: translate3d(0,15rpx,0) rotate(15deg); } 78 | 100% {transform: translate3d(0,20rpx,0) rotate(-15deg); } 79 | } 80 | .wave { 81 | position: absolute; 82 | z-index: 3; 83 | right: 0; 84 | bottom: 0; 85 | opacity: 0.725; 86 | height: 260rpx; 87 | width: 2250rpx; 88 | animation: wave 10s linear infinite; 89 | } 90 | .wave-bg { 91 | z-index: 1; 92 | animation: wave-bg 10.25s linear infinite; 93 | } 94 | @keyframes wave{ 95 | from {transform: translate3d(125rpx,0,0);} 96 | to {transform: translate3d(1125rpx,0,0);} 97 | } 98 | @keyframes wave-bg{ 99 | from {transform: translate3d(375rpx,0,0);} 100 | to {transform: translate3d(1375rpx,0,0);} 101 | } 102 | 103 | .bd { 104 | position: relative; 105 | flex: 1; 106 | display: flex; 107 | flex-direction: column; 108 | align-items: stretch; 109 | animation: bd-rise 2s cubic-bezier(0.23,1,0.32,1) .75s forwards; 110 | opacity: 0; 111 | } 112 | @keyframes bd-rise{ 113 | from {opacity: 0; transform: translate3d(0,60rpx,0); } 114 | to {opacity: 1; transform: translate3d(0,0,0); } 115 | } 116 | form { 117 | flex: 1; 118 | display: flex; 119 | flex-direction: column; 120 | align-items: stretch; 121 | justify-content: center; 122 | } 123 | .input-group { 124 | display: flex; 125 | align-items: center; 126 | padding: 25rpx 10rpx; 127 | margin: 40rpx 3%; 128 | background: #fff; 129 | border-radius: 5px; 130 | border: 2px solid #f4f4f4; 131 | transition: all .25s ease-in-out; 132 | } 133 | .input-group.active { 134 | border: 2px solid #7acfa6; 135 | } 136 | .input-label { 137 | color: #888; 138 | font-size: 13pt; 139 | height: 25rpx; 140 | line-height: 25rpx; 141 | padding: 0 25rpx; 142 | border-right: 1px solid #d8d8d8; 143 | } 144 | .input-group input, 145 | .input-group picker { 146 | flex: 1; 147 | font-size: 13pt; 148 | min-height: 52rpx; 149 | height: 52rpx; 150 | line-height: 52rpx; 151 | padding: 0 25rpx; 152 | } 153 | .input-placeholder, 154 | .input-group picker.placeholder { 155 | color: #ccc; 156 | } 157 | .login-help { 158 | display: flex; 159 | align-items: center; 160 | justify-content: flex-end; 161 | padding: 0 30rpx; 162 | font-size: 10pt; 163 | color: #bbb; 164 | } 165 | .login-help-img { 166 | width: 11pt; 167 | height: 11pt; 168 | margin: 0 5rpx; 169 | } 170 | .confirm-btn { 171 | font-size: 13pt; 172 | line-height: 85rpx; 173 | height: 85rpx; 174 | background: #079df2; 175 | color: #fff; 176 | text-align: center; 177 | border-radius: 5px; 178 | margin: 50rpx 3%; 179 | } 180 | .confirm-btn:active { 181 | opacity: .8; 182 | } 183 | .help { 184 | position: absolute; 185 | z-index: 100; 186 | top: 0; 187 | left: 0; 188 | width: 100%; 189 | height: 100%; 190 | display: flex; 191 | align-items: center; 192 | justify-content: center; 193 | } 194 | .box { 195 | position: relative; 196 | display: flex; 197 | flex-direction: column; 198 | align-items: stretch; 199 | width: 80%; 200 | background: #fff; 201 | border-radius: 10px; 202 | box-shadow: 0 0 50px rgba(22,22,22,.35); 203 | transform: translate3d(0,-400rpx,0); 204 | } 205 | .box-hd { 206 | display: flex; 207 | align-items: center; 208 | justify-content: center; 209 | height: 100rpx; 210 | border-bottom: 1px solid #eee; 211 | } 212 | .box-title { 213 | font-size: 13pt; 214 | } 215 | .box-close { 216 | position: absolute; 217 | right: 20rpx; 218 | width: 35rpx; 219 | height: 35rpx; 220 | padding: 15rpx; 221 | } 222 | .box-bd { 223 | flex: 1; 224 | display: flex; 225 | flex-direction: column; 226 | padding: 15rpx 40rpx 30rpx; 227 | } 228 | .help-q { 229 | color: #999; 230 | font-size: 11pt; 231 | line-height: 200%; 232 | margin-top: 5rpx; 233 | } 234 | .help-a { 235 | text-indent: 1em; 236 | line-height: 160%; 237 | display: flex; 238 | flex-direction: column; 239 | } 240 | .help-a text{ 241 | word-break: break-all; 242 | } 243 | /**登录动画**/ 244 | .login_video{ 245 | position: absolute; 246 | z-index: 1; 247 | top: 50%; 248 | left: 50%; 249 | width: 750rpx; 250 | margin-left: -375rpx; 251 | height: 1334rpx; 252 | margin-top: -667rpx; 253 | } 254 | .video_hidden{ 255 | visibility: hidden; 256 | } 257 | page .wx-video-bar{ 258 | display: none; 259 | } 260 | .user-type{ 261 | display: flex; 262 | align-items: center; 263 | justify-content: center; 264 | 265 | } -------------------------------------------------------------------------------- /pages/more/more.js: -------------------------------------------------------------------------------- 1 | //more.js 2 | //获取应用实例 3 | var app = getApp(); 4 | Page({ 5 | data: { 6 | user: {} 7 | }, 8 | onShow: function () { 9 | var _this = this; 10 | app.loginLoad().then(function () { 11 | _this.getData(); 12 | }) 13 | }, 14 | getData: function () { 15 | var _this = this; 16 | _this.setData({ 17 | 'user': app.user, 18 | 'is_library': app.cache.jy 19 | }); 20 | }, 21 | refreshSchedule: function() { 22 | wx.showToast({ 23 | title: '刷新中', 24 | icon: 'loading', 25 | duration: 1500 26 | }); 27 | app.wx_request("/school_sys/refresh_schedule", 'GET').then( 28 | function (res) { 29 | if (res.data && res.data.status === 200) { 30 | wx.hideLoading() 31 | wx.showToast({ 32 | title: '刷新成功', 33 | icon: 'success', 34 | duration: 1500 35 | }); 36 | } 37 | } 38 | ).catch(function (res) { 39 | app.showErrorModal(res.errMsg, '刷新失败'); 40 | }) 41 | } 42 | }); -------------------------------------------------------------------------------- /pages/more/more.json: -------------------------------------------------------------------------------- 1 | { 2 | "enablePullDownRefresh": false 3 | } -------------------------------------------------------------------------------- /pages/more/more.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 43 | 44 | 54 | 55 | 56 | 57 | 绑定图书证 58 | 59 | 60 | 61 | 改绑图书证 62 | 63 | 64 | 65 | 66 | 67 | 个人设置 68 | 69 | 70 | 71 | 72 | 刷新课表 73 | 74 | 80 | 81 | 82 | 83 | 关于小喵 84 | 85 | 86 | 87 | 88 | 89 | 104 | 105 | 111 | 112 | 113 | 114 | 关于小喵 115 | 116 | 117 | 118 | 119 | 120 | 切换绑定 121 | 立即绑定 122 | 123 | -------------------------------------------------------------------------------- /pages/more/more.wxss: -------------------------------------------------------------------------------- 1 | /**more.wxss**/ 2 | .container{ 3 | background-color: #f6f6f6; 4 | padding: 0; 5 | } 6 | .top-bgcolor { 7 | width: 100%; 8 | height: 160rpx; 9 | background-color: #079df2; 10 | } 11 | .user-info-box { 12 | width: 95%; 13 | height: 270rpx; 14 | margin: 0 auto -30rpx auto; 15 | border: 1px solid #e5e5e5; 16 | border-radius: 5px; 17 | box-shadow: 2px 2px 5px #e5e5e5; 18 | background-color: #fff; 19 | position: relative; 20 | top: -60rpx; 21 | } 22 | .user-image{ 23 | width: 120rpx; 24 | height: 120rpx; 25 | border: 2px solid #fff; 26 | border-radius: 50%; 27 | position: absolute; 28 | left: 50%; 29 | margin-left: -2.5em; 30 | top: -60rpx; 31 | display: block; 32 | overflow: hidden; 33 | } 34 | .user-name { 35 | position: absolute; 36 | width: 100%; 37 | top: 80rpx; 38 | font-size: 14pt; 39 | color: #5d9e9d; 40 | font-family: '微软雅黑'; 41 | letter-spacing: 5px; 42 | text-align: center; 43 | } 44 | .user-infos { 45 | position: absolute; 46 | width:100%; 47 | display: flex; 48 | top: 150rpx; 49 | } 50 | .info1,.info2,.info3 { 51 | flex: 1; 52 | text-align: center; 53 | color: #6d6d6d; 54 | font-size: 11pt; 55 | font-family: '华文细黑'; 56 | } 57 | .xuehao,.xibie,.banji { 58 | margin-bottom: 15rpx; 59 | font-family: '微软雅黑'; 60 | } 61 | .more-info { 62 | width: 95%; 63 | margin: 0 auto 30rpx auto; 64 | border-radius: 10rpx; 65 | border: 1px solid #e5e5e5; 66 | box-shadow: 2px 2px 5px #e5e5e5; 67 | } 68 | .more-info-btn { 69 | display: flex; 70 | min-height: 85rpx; 71 | align-items: center; 72 | background-color: #fff; 73 | font-size: 11pt; 74 | font-family: '微软雅黑'; 75 | padding: 0 30rpx; 76 | border-radius: 10rpx; 77 | border-bottom: 1px solid #e5e5e5; 78 | } 79 | .btn-icon { 80 | width: 45rpx; 81 | height: 45rpx; 82 | margin-right: 15rpx; 83 | } 84 | .btn-text { 85 | flex: 1; 86 | } 87 | .user-info { 88 | display: flex; 89 | flex-direction: column; 90 | margin: 30rpx 0 -1px; 91 | padding: 25rpx 30rpx 20rpx; 92 | } 93 | .login-btn { 94 | font-size: 13pt; 95 | line-height: 85rpx; 96 | height: 85rpx; 97 | background: #e55c5c; 98 | color: #fff; 99 | text-align: center; 100 | border-radius: 5px; 101 | width: 95%; 102 | margin: 0 18rpx 30rpx 18rpx; 103 | position: absolute; 104 | bottom: 0; 105 | font-family: '微软雅黑'; 106 | } 107 | .btn-enter { 108 | width: 18rpx; 109 | height: 27rpx; 110 | } 111 | 112 | @media only screen and (max-device-height: 465px) { 113 | .login-btn { 114 | font-size: 13pt; 115 | line-height: 85rpx; 116 | height: 85rpx; 117 | background: #e55c5c; 118 | color: #fff; 119 | text-align: center; 120 | border-radius: 5px; 121 | width: 95%; 122 | display: block; 123 | margin: 30rpx 18rpx; 124 | position: static; 125 | font-family: '微软雅黑'; 126 | } 127 | } 128 | .more-info button { 129 | border:none; 130 | text-align: left; 131 | padding: 0px; 132 | position: none; 133 | box-sizing: none; 134 | color: #666; 135 | } 136 | 137 | .more-info button::after{ 138 | border:none; 139 | } -------------------------------------------------------------------------------- /pages/news/detail/detail.wxml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | {{remind}} 10 | 11 | 12 | 13 | 14 | {{title}} 15 | 16 | 17 | 发布时间:{{date}} 18 | 作者:{{author}} 19 | 阅读量:{{reading}} 20 | 来源:{{originate}} 21 | 22 | {{content}} 23 | 24 |