diff --git a/common/script/util.js b/common/script/util.js new file mode 100644 index 0000000..0d5521e --- /dev/null +++ b/common/script/util.js @@ -0,0 +1,34 @@ +/** + * 显示模态框 + * @param {string} msg + * @param {boolean} showCancel + * @param {string} confirmText + */ +export const showModal = (msg, showCancel = false, confirmText = '知道了') => + uni.showModal({ + title: '提示', + content: msg, + showCancel, + confirmText, + confirmColor: '#1890ff', + }); + +/** + * 显示toast + * @param {string} msg + */ +export const showToast = msg => + uni.showToast({ + title: msg, + icon: 'none', + duration: 3000, + }); + +// 显示加载动画 +export const showLoading = (msg = '努力加载中...') => uni.showLoading({ title: msg }); + +// 隐藏加载动画 +export const hideLoading = () => + setTimeout(() => { + uni.hideLoading(); + }, 1000); diff --git a/common/style/iconfont.scss b/common/style/iconfont.scss index 1fbfc8e..ea7522a 100644 --- a/common/style/iconfont.scss +++ b/common/style/iconfont.scss @@ -1,5 +1,5 @@ @font-face {font-family: "iconfont"; - src: url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'); /* iOS 4.1- */ + src: url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'); /* iOS 4.1- */ } .iconfont { @@ -10,6 +10,10 @@ -moz-osx-font-smoothing: grayscale; } +.icon-border:before { + content: "\e7a9"; +} + .icon-timer:before { content: "\e668"; } diff --git a/components/timeline/timeline.vue b/components/timeline/timeline.vue new file mode 100644 index 0000000..0cfa809 --- /dev/null +++ b/components/timeline/timeline.vue @@ -0,0 +1,32 @@ + + + diff --git a/components/uni-segmented-control/uni-segmented-control.vue b/components/uni-segmented-control/uni-segmented-control.vue new file mode 100644 index 0000000..2074131 --- /dev/null +++ b/components/uni-segmented-control/uni-segmented-control.vue @@ -0,0 +1,124 @@ + + + + + diff --git a/pages.json b/pages.json index 521b7e4..c514991 100644 --- a/pages.json +++ b/pages.json @@ -1,15 +1,19 @@ { "pages": [ { - "path": "pages/sign/sign", + "path": "pages/index/index", "style": { - "navigationBarTitleText": "打卡" + "navigationBarTitleText": "山大健康码" } }, { - "path": "pages/index/index", + "path": "pages/my-signs/my-signs", + "style": { "navigationBarTitleText": "我的校园打卡" } + }, + { + "path": "pages/sign/sign", "style": { - "navigationBarTitleText": "山大健康码" + "navigationBarTitleText": "打卡" } }, { @@ -27,8 +31,19 @@ "style": { "navigationBarTitleText": "基本信息填写" } - } - + }, + { + "path": "pages/add-stroke/add-stroke", + "style": { + "navigationBarTitleText": "添加行程" + } + }, + { + "path": "pages/apply-code/apply-code", + "style": { + "navigationBarTitleText": "申请健康码" + } + } ], "globalStyle": { "navigationBarTextStyle": "black", diff --git a/pages/add-stroke/add-stroke.vue b/pages/add-stroke/add-stroke.vue new file mode 100644 index 0000000..2f2e194 --- /dev/null +++ b/pages/add-stroke/add-stroke.vue @@ -0,0 +1,144 @@ + + + + + \ No newline at end of file diff --git a/pages/add-stroke/components/date-selector.vue b/pages/add-stroke/components/date-selector.vue new file mode 100644 index 0000000..172cf3d --- /dev/null +++ b/pages/add-stroke/components/date-selector.vue @@ -0,0 +1,56 @@ + + + + + diff --git a/pages/apply-code/apply-code.vue b/pages/apply-code/apply-code.vue new file mode 100644 index 0000000..3377855 --- /dev/null +++ b/pages/apply-code/apply-code.vue @@ -0,0 +1,213 @@ + + + + + \ No newline at end of file diff --git a/pages/basic-info/basic-info.vue b/pages/basic-info/basic-info.vue index 6f13354..b9336b6 100644 --- a/pages/basic-info/basic-info.vue +++ b/pages/basic-info/basic-info.vue @@ -1,32 +1,32 @@ \ No newline at end of file +.portrait { + overflow: hidden; +} +.healthy-coad { + font-size: 40px; +} +.more { + font-size: 18px; + color: $grey; +} + diff --git a/pages/my-signs/my-signs.vue b/pages/my-signs/my-signs.vue new file mode 100644 index 0000000..61f20b4 --- /dev/null +++ b/pages/my-signs/my-signs.vue @@ -0,0 +1,63 @@ + + + + + diff --git a/static/img/qrcode.png b/static/img/qrcode.png new file mode 100644 index 0000000..ce2ddca Binary files /dev/null and b/static/img/qrcode.png differ diff --git a/uni.scss b/uni.scss index a5f27b5..cb06d34 100644 --- a/uni.scss +++ b/uni.scss @@ -16,7 +16,7 @@ $brown: #a5673f; $grey: #CDCDCD; $black: #333333; $darkGray: #666666; -$gray: #101010; +$gray: #808080; $ghostWhite: #f1f1f1; $white: #ffffff;