From b4cfbad98fb66aecfc925ac40673d782e4bc9fd7 Mon Sep 17 00:00:00 2001 From: zdx <731335498@qq.com> Date: Wed, 30 Dec 2020 15:16:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=AA=E4=BA=BA=E4=B8=AD=E5=BF=83=E6=96=B0?= =?UTF-8?q?=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.json | 10 +- pages/home/activeDetail/activeDetail.wxml | 2 +- .../focusedCompany/focusedCompany.js | 88 +++ .../focusedCompany/focusedCompany.json | 6 + .../focusedCompany/focusedCompany.wxml | 15 + .../focusedCompany/focusedCompany.wxss | 82 +++ .../focusedProject/focusedProject.js | 4 + .../companyMine/myBlockchain/myBlockchain.js | 88 +++ .../myBlockchain/myBlockchain.json | 6 + .../myBlockchain/myBlockchain.wxml | 10 + .../myBlockchain/myBlockchain.wxss | 53 ++ pages/user/companyMine/myTeam/myTeam.js | 88 +++ pages/user/companyMine/myTeam/myTeam.json | 6 + pages/user/companyMine/myTeam/myTeam.wxml | 20 + pages/user/companyMine/myTeam/myTeam.wxss | 108 ++++ pages/user/index.wxml | 50 +- pages/user/index.wxss | 64 +- pages/user/setting/aboutAdvice/aboutAdvice.js | 3 + .../user/setting/aboutAdvice/aboutAdvice.json | 6 + .../user/setting/aboutAdvice/aboutAdvice.wxml | 1 + .../user/setting/aboutAdvice/aboutAdvice.wxss | 17 + pages/user/setting/aboutMine/aboutMine.js | 89 +++ pages/user/setting/aboutMine/aboutMine.json | 4 + pages/user/setting/aboutMine/aboutMine.wxml | 67 +++ pages/user/setting/aboutMine/aboutMine.wxss | 79 +++ pages/user/setting/aboutUs/aboutUs.js | 3 + pages/user/setting/aboutUs/aboutUs.json | 6 + pages/user/setting/aboutUs/aboutUs.wxml | 1 + pages/user/setting/aboutUs/aboutUs.wxss | 17 + pages/user/setting/setting.js | 3 + pages/user/setting/setting.json | 6 + pages/user/setting/setting.wxml | 9 + pages/user/setting/setting.wxss | 17 + pages/user/setting/tailoring/tailoring.js | 555 ++++++++++++++++++ pages/user/setting/tailoring/tailoring.json | 5 + pages/user/setting/tailoring/tailoring.wxml | 46 ++ pages/user/setting/tailoring/tailoring.wxss | 397 +++++++++++++ project.config.json | 29 + static/images/aboutAdvice.png | Bin 0 -> 6165 bytes static/images/aboutMine.png | Bin 0 -> 6692 bytes static/images/aboutUs.png | Bin 0 -> 3569 bytes static/images/zs.png | Bin 0 -> 68866 bytes static/images/zuan.png | Bin 0 -> 6148 bytes static/user_iocn/userNav_00.png | Bin 585 -> 3906 bytes static/user_iocn/userNav_001.png | Bin 0 -> 585 bytes static/user_iocn/userNav_01.png | Bin 398 -> 3659 bytes static/user_iocn/userNav_0100.png | Bin 0 -> 398 bytes static/user_iocn/userNav_02.png | Bin 648 -> 3970 bytes static/user_iocn/userNav_0211.png | Bin 0 -> 648 bytes static/user_iocn/userTool_08.png | Bin 0 -> 6883 bytes 50 files changed, 2012 insertions(+), 48 deletions(-) create mode 100644 pages/user/companyMine/focusedCompany/focusedCompany.js create mode 100644 pages/user/companyMine/focusedCompany/focusedCompany.json create mode 100644 pages/user/companyMine/focusedCompany/focusedCompany.wxml create mode 100644 pages/user/companyMine/focusedCompany/focusedCompany.wxss create mode 100644 pages/user/companyMine/myBlockchain/myBlockchain.js create mode 100644 pages/user/companyMine/myBlockchain/myBlockchain.json create mode 100644 pages/user/companyMine/myBlockchain/myBlockchain.wxml create mode 100644 pages/user/companyMine/myBlockchain/myBlockchain.wxss create mode 100644 pages/user/companyMine/myTeam/myTeam.js create mode 100644 pages/user/companyMine/myTeam/myTeam.json create mode 100644 pages/user/companyMine/myTeam/myTeam.wxml create mode 100644 pages/user/companyMine/myTeam/myTeam.wxss create mode 100644 pages/user/setting/aboutAdvice/aboutAdvice.js create mode 100644 pages/user/setting/aboutAdvice/aboutAdvice.json create mode 100644 pages/user/setting/aboutAdvice/aboutAdvice.wxml create mode 100644 pages/user/setting/aboutAdvice/aboutAdvice.wxss create mode 100644 pages/user/setting/aboutMine/aboutMine.js create mode 100644 pages/user/setting/aboutMine/aboutMine.json create mode 100644 pages/user/setting/aboutMine/aboutMine.wxml create mode 100644 pages/user/setting/aboutMine/aboutMine.wxss create mode 100644 pages/user/setting/aboutUs/aboutUs.js create mode 100644 pages/user/setting/aboutUs/aboutUs.json create mode 100644 pages/user/setting/aboutUs/aboutUs.wxml create mode 100644 pages/user/setting/aboutUs/aboutUs.wxss create mode 100644 pages/user/setting/setting.js create mode 100644 pages/user/setting/setting.json create mode 100644 pages/user/setting/setting.wxml create mode 100644 pages/user/setting/setting.wxss create mode 100644 pages/user/setting/tailoring/tailoring.js create mode 100644 pages/user/setting/tailoring/tailoring.json create mode 100644 pages/user/setting/tailoring/tailoring.wxml create mode 100644 pages/user/setting/tailoring/tailoring.wxss create mode 100644 static/images/aboutAdvice.png create mode 100644 static/images/aboutMine.png create mode 100644 static/images/aboutUs.png create mode 100644 static/images/zs.png create mode 100644 static/images/zuan.png create mode 100644 static/user_iocn/userNav_001.png create mode 100644 static/user_iocn/userNav_0100.png create mode 100644 static/user_iocn/userNav_0211.png create mode 100644 static/user_iocn/userTool_08.png diff --git a/app.json b/app.json index 406141c..1e665d4 100644 --- a/app.json +++ b/app.json @@ -1,7 +1,7 @@ { "pages": [ + "pages/user/index", "pages/config/config", - "pages/welcome/index", "pages/company/index", "pages/company/search/search", @@ -9,12 +9,18 @@ "pages/richText/richText", "pages/login/login", "pages/card/index", - "pages/user/index", "pages/user/companyMine/myActives/myActives", "pages/user/companyMine/focusedProject/focusedProject", + "pages/user/companyMine/focusedCompany/focusedCompany", + "pages/user/companyMine/myTeam/myTeam", + "pages/user/companyMine/myBlockchain/myBlockchain", "pages/user/companyMine/companyOrder", "pages/user/user_coupon/user_coupon", "pages/user/user_coupon_data/user_coupon_data", + "pages/user/setting/setting", + "pages/user/setting/aboutUs/aboutUs", + "pages/user/setting/aboutMine/aboutMine", + "pages/user/setting/aboutAdvice/aboutAdvice", "pages/mall/index", "pages/mall/mall_address/mall_address", "pages/mall/mall_address_form/mall_address_form", diff --git a/pages/home/activeDetail/activeDetail.wxml b/pages/home/activeDetail/activeDetail.wxml index 6e687e5..35514a1 100644 --- a/pages/home/activeDetail/activeDetail.wxml +++ b/pages/home/activeDetail/activeDetail.wxml @@ -42,7 +42,7 @@ {{info.price> 0 ? '¥' + info.price:'免费'}} - {{!info.canEnroll?'无法报名':'立即报名'}} + {{info.canEnrollText}} diff --git a/pages/user/companyMine/focusedCompany/focusedCompany.js b/pages/user/companyMine/focusedCompany/focusedCompany.js new file mode 100644 index 0000000..54c9f16 --- /dev/null +++ b/pages/user/companyMine/focusedCompany/focusedCompany.js @@ -0,0 +1,88 @@ +// pages/user/companyMine/focusedProject/focusedProject.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + lists: [], + page: 1, + has_more: true + }, + onShow() { + this.getList(); + }, + + // 获取活动列表 + getList() { + wx.$api.companyModule.getCrowdfundsLike(this.data.page).then(res => { + setTimeout(() => { + wx.hideLoading({}) + }, 1000); + var lists = this.data.lists.concat(res.data) + if (res.page.has_more) { + this.setData({ + has_more: res.page.has_more, + page: this.data.page + 1, + lists: lists + }) + } else { + this.setData({ + has_more: res.page.has_more, + lists: lists + }) + } + }) + }, + // 触底加载更多 + onReachBottom() { + if (this.data.has_more) { + this.getList(); + } else { + wx.showToast({ + icon: 'none', + title: '没有更多', + }) + } + }, + //跳转到详情页 + goUrl(e) { + wx.navigateTo({ + url: '/pages/home/activeDetail/activeDetail?id=' + e.currentTarget.dataset.id, + }) + }, + // 取消项目 + crowdfundsUnLike(e) { + var id = e.currentTarget.dataset.id + var index = e.currentTarget.dataset.index + var arr = this.data.lists + var temp = [] + for (var i = 0; i < arr.length; i++) { + if (i != index) { + temp.push(arr[i]); + } + } + console.log(temp) + wx.showModal({ + title: '提示', + content: '确认取消关注么?', + success: res => { + if (res.confirm) { + wx.showLoading({ + title: '取消中', + }) + wx.$api.companyModule.crowdfundsUnLike(id).then(res => { + this.setData({ + lists: temp + }) + wx.showToast({ + title: '取消成功', + icon:'none' + }) + wx.hideLoading({}) + }); + } + } + }) + } +}) \ No newline at end of file diff --git a/pages/user/companyMine/focusedCompany/focusedCompany.json b/pages/user/companyMine/focusedCompany/focusedCompany.json new file mode 100644 index 0000000..c471cf8 --- /dev/null +++ b/pages/user/companyMine/focusedCompany/focusedCompany.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "我关注的企业", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/companyMine/focusedCompany/focusedCompany.wxml b/pages/user/companyMine/focusedCompany/focusedCompany.wxml new file mode 100644 index 0000000..e7f31c4 --- /dev/null +++ b/pages/user/companyMine/focusedCompany/focusedCompany.wxml @@ -0,0 +1,15 @@ + + + + + 域展科技 已关注 + 诚信值1587 + + 进入 + + + + + {{has_more?'~ 上拉加载更多 ~':'~ 暂无更多数据 ~'}} + \ No newline at end of file diff --git a/pages/user/companyMine/focusedCompany/focusedCompany.wxss b/pages/user/companyMine/focusedCompany/focusedCompany.wxss new file mode 100644 index 0000000..fda985b --- /dev/null +++ b/pages/user/companyMine/focusedCompany/focusedCompany.wxss @@ -0,0 +1,82 @@ +.content { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + box-sizing: border-box; + background-color: #fff; + padding: 20rpx 30rpx; + /* box-shadow: 0 0 5rpx rgba(0, 0, 0, 0.1); */ + margin-top: 2rpx; +} + +.content image { + width: 100rpx; + height: 100rpx; + border-radius: 50%; +} + +.content .left { + flex: 1; + margin-left: 20rpx; + box-sizing: border-box; +} + +.content .title { + color: #333; + font-size: 30rpx; + padding-right: 120rpx; + position: relative; +} + +.content .title>span { + color: #378fff; + border: solid 1rpx #378fff; + border-radius: 50rpx; + font-size: 20rpx; + padding: 4rpx 16rpx; + /* position: absolute; + top: 0; + right: 0; */ + margin-left: 20rpx; + position: relative; + top: -4rpx; +} + +.content .bottom { + justify-content: space-between; + display: flex; + flex-direction: row; + align-items: stretch; + box-sizing: border-box; + font-size: 26rpx; + color: #222; + font-weight: 600; + padding: 10rpx 0; +} + +.has_more { + color: #999; + font-size: 26rpx; + text-align: center; + padding: 30rpx; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding-top: 30rpx; +} + +.has_more image { + margin-bottom: 30rpx; +} + +.runIn { + color: #fff; + border: solid 1rpx #fff; + border-radius: 50rpx; + background-color: #378fff; + font-size: 30rpx; + padding: 4rpx 20rpx 4rpx 30rpx; +} \ No newline at end of file diff --git a/pages/user/companyMine/focusedProject/focusedProject.js b/pages/user/companyMine/focusedProject/focusedProject.js index c820175..d2e9f14 100644 --- a/pages/user/companyMine/focusedProject/focusedProject.js +++ b/pages/user/companyMine/focusedProject/focusedProject.js @@ -75,6 +75,10 @@ Page({ this.setData({ lists: temp }) + wx.showToast({ + title: '取消成功', + icon: 'none' + }) wx.hideLoading({}) }); } diff --git a/pages/user/companyMine/myBlockchain/myBlockchain.js b/pages/user/companyMine/myBlockchain/myBlockchain.js new file mode 100644 index 0000000..54c9f16 --- /dev/null +++ b/pages/user/companyMine/myBlockchain/myBlockchain.js @@ -0,0 +1,88 @@ +// pages/user/companyMine/focusedProject/focusedProject.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + lists: [], + page: 1, + has_more: true + }, + onShow() { + this.getList(); + }, + + // 获取活动列表 + getList() { + wx.$api.companyModule.getCrowdfundsLike(this.data.page).then(res => { + setTimeout(() => { + wx.hideLoading({}) + }, 1000); + var lists = this.data.lists.concat(res.data) + if (res.page.has_more) { + this.setData({ + has_more: res.page.has_more, + page: this.data.page + 1, + lists: lists + }) + } else { + this.setData({ + has_more: res.page.has_more, + lists: lists + }) + } + }) + }, + // 触底加载更多 + onReachBottom() { + if (this.data.has_more) { + this.getList(); + } else { + wx.showToast({ + icon: 'none', + title: '没有更多', + }) + } + }, + //跳转到详情页 + goUrl(e) { + wx.navigateTo({ + url: '/pages/home/activeDetail/activeDetail?id=' + e.currentTarget.dataset.id, + }) + }, + // 取消项目 + crowdfundsUnLike(e) { + var id = e.currentTarget.dataset.id + var index = e.currentTarget.dataset.index + var arr = this.data.lists + var temp = [] + for (var i = 0; i < arr.length; i++) { + if (i != index) { + temp.push(arr[i]); + } + } + console.log(temp) + wx.showModal({ + title: '提示', + content: '确认取消关注么?', + success: res => { + if (res.confirm) { + wx.showLoading({ + title: '取消中', + }) + wx.$api.companyModule.crowdfundsUnLike(id).then(res => { + this.setData({ + lists: temp + }) + wx.showToast({ + title: '取消成功', + icon:'none' + }) + wx.hideLoading({}) + }); + } + } + }) + } +}) \ No newline at end of file diff --git a/pages/user/companyMine/myBlockchain/myBlockchain.json b/pages/user/companyMine/myBlockchain/myBlockchain.json new file mode 100644 index 0000000..bf379dd --- /dev/null +++ b/pages/user/companyMine/myBlockchain/myBlockchain.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "区块链证书", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/companyMine/myBlockchain/myBlockchain.wxml b/pages/user/companyMine/myBlockchain/myBlockchain.wxml new file mode 100644 index 0000000..74d983f --- /dev/null +++ b/pages/user/companyMine/myBlockchain/myBlockchain.wxml @@ -0,0 +1,10 @@ + + + 企获客授权 [ 艾米家的傻钢 ] 区块链证书 + + 区块链编号 + jiquwrofkdjs09u834545124dkafodjfihi + + + +区块链技术支持:域展科技 \ No newline at end of file diff --git a/pages/user/companyMine/myBlockchain/myBlockchain.wxss b/pages/user/companyMine/myBlockchain/myBlockchain.wxss new file mode 100644 index 0000000..ae24a62 --- /dev/null +++ b/pages/user/companyMine/myBlockchain/myBlockchain.wxss @@ -0,0 +1,53 @@ +.content { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + box-sizing: border-box; + padding: 20rpx 140rpx; + margin-top: 2rpx; + position: relative; + width: 100%; + height: 1066rpx; +} + +.content .bg { + width: 750rpx; + height: 1066rpx; + position: absolute; + top: 0; + left: 0; + z-index: -1; +} + +.bottom { + color: #999; + font-size: 26rpx; + text-align: center; + padding-top: 30rpx; +} + +.content .title { + color: #043e5f; + font-size: 40rpx; + font-weight: 600; + text-align: center; +} + +.content .num { + position: absolute; + bottom: 264rpx; + color: #043e5f; + text-align: center; +} + +.font22 { + font-size: 24rpx; + padding-top: 16rpx; +} + +.font32 { + font-size: 32rpx; + font-weight: 600; + +} \ No newline at end of file diff --git a/pages/user/companyMine/myTeam/myTeam.js b/pages/user/companyMine/myTeam/myTeam.js new file mode 100644 index 0000000..54c9f16 --- /dev/null +++ b/pages/user/companyMine/myTeam/myTeam.js @@ -0,0 +1,88 @@ +// pages/user/companyMine/focusedProject/focusedProject.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + lists: [], + page: 1, + has_more: true + }, + onShow() { + this.getList(); + }, + + // 获取活动列表 + getList() { + wx.$api.companyModule.getCrowdfundsLike(this.data.page).then(res => { + setTimeout(() => { + wx.hideLoading({}) + }, 1000); + var lists = this.data.lists.concat(res.data) + if (res.page.has_more) { + this.setData({ + has_more: res.page.has_more, + page: this.data.page + 1, + lists: lists + }) + } else { + this.setData({ + has_more: res.page.has_more, + lists: lists + }) + } + }) + }, + // 触底加载更多 + onReachBottom() { + if (this.data.has_more) { + this.getList(); + } else { + wx.showToast({ + icon: 'none', + title: '没有更多', + }) + } + }, + //跳转到详情页 + goUrl(e) { + wx.navigateTo({ + url: '/pages/home/activeDetail/activeDetail?id=' + e.currentTarget.dataset.id, + }) + }, + // 取消项目 + crowdfundsUnLike(e) { + var id = e.currentTarget.dataset.id + var index = e.currentTarget.dataset.index + var arr = this.data.lists + var temp = [] + for (var i = 0; i < arr.length; i++) { + if (i != index) { + temp.push(arr[i]); + } + } + console.log(temp) + wx.showModal({ + title: '提示', + content: '确认取消关注么?', + success: res => { + if (res.confirm) { + wx.showLoading({ + title: '取消中', + }) + wx.$api.companyModule.crowdfundsUnLike(id).then(res => { + this.setData({ + lists: temp + }) + wx.showToast({ + title: '取消成功', + icon:'none' + }) + wx.hideLoading({}) + }); + } + } + }) + } +}) \ No newline at end of file diff --git a/pages/user/companyMine/myTeam/myTeam.json b/pages/user/companyMine/myTeam/myTeam.json new file mode 100644 index 0000000..495f241 --- /dev/null +++ b/pages/user/companyMine/myTeam/myTeam.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "我的团队", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/companyMine/myTeam/myTeam.wxml b/pages/user/companyMine/myTeam/myTeam.wxml new file mode 100644 index 0000000..49a30c5 --- /dev/null +++ b/pages/user/companyMine/myTeam/myTeam.wxml @@ -0,0 +1,20 @@ + + + + + + 域展科技 + + + VIP会员 + + + 旗下团队5人 + 2020-11-11 11:11:11 + + + + + + {{has_more?'~ 上拉加载更多 ~':'~ 暂无更多数据 ~'}} + \ No newline at end of file diff --git a/pages/user/companyMine/myTeam/myTeam.wxss b/pages/user/companyMine/myTeam/myTeam.wxss new file mode 100644 index 0000000..981ed41 --- /dev/null +++ b/pages/user/companyMine/myTeam/myTeam.wxss @@ -0,0 +1,108 @@ +.content { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + box-sizing: border-box; + background-color: #fff; + padding: 20rpx 30rpx; + /* box-shadow: 0 0 5rpx rgba(0, 0, 0, 0.1); */ + margin-top: 2rpx; +} + +.content image { + width: 100rpx; + height: 100rpx; + border-radius: 50%; +} + +.content .left { + flex: 1; + margin-left: 20rpx; + box-sizing: border-box; + position: relative; +} + +.content .title { + color: #333; + font-size: 30rpx; + padding-right: 200rpx; + position: relative; + font-weight: 400; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + flex-wrap: wrap; + box-sizing: border-box; +} + +.content .title>span { + background-color: #378fff; + color: #fff; + border: solid 1rpx #378fff; + border-radius: 50rpx; + font-size: 22rpx; + padding: 4rpx 16rpx; + margin-left: 20rpx; + position: relative; + top: -4rpx; +} + +.content .bottom { + justify-content: space-between; + display: flex; + flex-direction: row; + align-items: stretch; + box-sizing: border-box; + font-size: 24rpx; + color: #999; + font-weight: 400; + padding: 10rpx 0; +} + +.has_more { + color: #999; + font-size: 26rpx; + text-align: center; + padding: 30rpx; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + box-sizing: border-box; + padding-top: 30rpx; +} + +.has_more image { + margin-bottom: 30rpx; +} + +.runIn { + color: #fff; + border: solid 1rpx #fff; + border-radius: 50rpx; + background-color: #378fff; + font-size: 30rpx; + padding: 4rpx 20rpx 4rpx 30rpx; +} + +.total { + position: absolute; + right: 0; + top: 0; + color: #333; + font-size: 26rpx; +} + +.vip { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + flex-wrap: wrap; + box-sizing: border-box; +} +.vip image{ + margin-right: 10rpx; +} \ No newline at end of file diff --git a/pages/user/index.wxml b/pages/user/index.wxml index 110d4d5..b069757 100644 --- a/pages/user/index.wxml +++ b/pages/user/index.wxml @@ -1,38 +1,25 @@ - - 艾米家的傻钢^ - 游客 - + 艾米家的傻钢^ 游客 - - 89 - 钱包 - - - 5 - 关注 - - - 125 - 团队 - + + + 128 团队 + + 11259 关注企业 - - 升级VIP会员 享会员特权 + 升级VIP会员 享会员特权 - - 立即开通 + 立即开通 - @@ -78,11 +65,12 @@ 我的购物车 - - + + + 客服服务 @@ -97,17 +85,23 @@ 项目关注 - + 区块链证书 + + + + + + 企获客广场 - + 设置 - + \ No newline at end of file diff --git a/pages/user/index.wxss b/pages/user/index.wxss index 4ab7aba..5bc0bd7 100644 --- a/pages/user/index.wxss +++ b/pages/user/index.wxss @@ -5,6 +5,7 @@ page { background-color: #e9e9e9; + padding-bottom: 20rpx; } /* 个人中心头部 */ @@ -13,11 +14,12 @@ page { padding: 0 30rpx; box-sizing: border-box; color: #fff; + padding-bottom: 80rpx; } .userTop-head { display: flex; - padding: 30rpx; + padding: 24rpx 30rpx; } .userTop-name { @@ -45,25 +47,29 @@ page { .userTop-nav { display: flex; + flex-direction: row; + justify-content: flex-start; + padding-left: 30rpx; } .userTop-label { - flex: 3; - text-align: center; - font-size: 28rpx; + text-align: left; + font-size: 26rpx; + min-width: 160rpx; } .userTop-label text { display: block; - font-size: 42rpx; + font-size: 36rpx; + font-weight: 600; } .userTop-vip { background-image: linear-gradient(to left, #1b2653, #354273); - border-radius: 20rpx 20rpx 0 0; - padding: 25rpx; + border-radius: 20rpx; + padding: 16rpx 25rpx; box-sizing: border-box; - margin-top: 30rpx; + margin-top: 46rpx; } .userTop-vip, @@ -75,7 +81,7 @@ page { .userTop-text { flex: 1; line-height: 60rpx; - font-size: 30rpx; + font-size: 28rpx; } .userTop-text image { @@ -91,7 +97,7 @@ page { height: 60rpx; line-height: 60rpx; padding-right: 20rpx; - font-size: 26rpx; + font-size: 24rpx; } .userTop-btn image { @@ -107,37 +113,43 @@ page { background-color: white; overflow: hidden; margin: 30rpx 20rpx; + position: relative; + top: -80rpx; } .userNav-label { width: 33.33%; float: left; text-align: center; - font-weight: 600; + font-weight: 400; color: #353535; - font-size: 30rpx; + font-size: 28rpx; } .userNav-label-img { width: 104rpx; height: 104rpx; border-radius: 40rpx; - margin: 0 auto 20rpx; + margin: 0 auto 1rpx; color: #fff; padding: 25rpx; box-sizing: border-box; } .userNav-label:nth-child(1) .userNav-label-img { - background-image: linear-gradient(to top, #91d634, #75c470); + /* background-image: linear-gradient(to top, #91d634, #75c470); */ } .userNav-label:nth-child(2) .userNav-label-img { - background-image: linear-gradient(to top, #04d2c1, #3caff1); + /* background-image: linear-gradient(to top, #04d2c1, #3caff1); */ } .userNav-label:nth-child(3) .userNav-label-img { - background-image: linear-gradient(to top, #ff686c, #ff0d76); + /* background-image: linear-gradient(to top, #ff686c, #ff0d76); */ +} + +.bgcolor { + background-image: linear-gradient(to top, #91d634, #75c470); } .userNav-label image { @@ -154,6 +166,8 @@ page { margin: 0 20rpx; padding: 30rpx 20rpx 0; box-sizing: border-box; + position: relative; + top: -80rpx; } .userTool-title { @@ -166,7 +180,7 @@ page { .userTool-title::after { position: absolute; content: ''; - background-color: #066aff; + background-color: #378fff; left: 0; top: 15%; width: 8rpx; @@ -185,6 +199,8 @@ page { float: left; text-align: center; margin-bottom: 50rpx; + font-size: 26rpx; + color: #333; } .userTool-label-img { @@ -195,6 +211,20 @@ page { margin-bottom: 15rpx; } +.userTool-label-img-button { + width: 94rpx; + height: 94rpx; + margin-bottom: 15rpx; + background-color: red; +} +.userTool-label-img-button image{ + position: absolute; + left: 0; + top: 0; + height: 100%; + width: 100%; +} + .userTool-label-img image { position: absolute; left: 0; diff --git a/pages/user/setting/aboutAdvice/aboutAdvice.js b/pages/user/setting/aboutAdvice/aboutAdvice.js new file mode 100644 index 0000000..28f0b32 --- /dev/null +++ b/pages/user/setting/aboutAdvice/aboutAdvice.js @@ -0,0 +1,3 @@ +Page({ + data: {} +}) \ No newline at end of file diff --git a/pages/user/setting/aboutAdvice/aboutAdvice.json b/pages/user/setting/aboutAdvice/aboutAdvice.json new file mode 100644 index 0000000..a5166db --- /dev/null +++ b/pages/user/setting/aboutAdvice/aboutAdvice.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "意见建议", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/setting/aboutAdvice/aboutAdvice.wxml b/pages/user/setting/aboutAdvice/aboutAdvice.wxml new file mode 100644 index 0000000..276fab6 --- /dev/null +++ b/pages/user/setting/aboutAdvice/aboutAdvice.wxml @@ -0,0 +1 @@ +yijian \ No newline at end of file diff --git a/pages/user/setting/aboutAdvice/aboutAdvice.wxss b/pages/user/setting/aboutAdvice/aboutAdvice.wxss new file mode 100644 index 0000000..b664d44 --- /dev/null +++ b/pages/user/setting/aboutAdvice/aboutAdvice.wxss @@ -0,0 +1,17 @@ +.item { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + box-sizing: border-box; + padding: 30rpx 30rpx; + color: #333; + font-weight: 400; + background-color: #fff; + border-top: #f7f7f7 solid 1rpx; +} + +.item image { + width: 50rpx; + margin-right: 10rpx; +} \ No newline at end of file diff --git a/pages/user/setting/aboutMine/aboutMine.js b/pages/user/setting/aboutMine/aboutMine.js new file mode 100644 index 0000000..2bd47c2 --- /dev/null +++ b/pages/user/setting/aboutMine/aboutMine.js @@ -0,0 +1,89 @@ +Page({ + + /** + * 页面的初始数据 + */ + data: { + userId: "", //用户id + phone: "", //用户信息 + nickname: "", //用户昵称 + cover: "", //用户头像 + columns: ["未知", "男", "女"], + gender: 0 || wx.getStorageSync("gender") * 1, + date: '2016-09-01', + region: ['广东省', '广州市', '海珠区'], + }, + + // 选择性别 + pickSex: function (e) { + this.setData({ + gender: e.detail.value + }); + // console.log("当前选择性别-sex", e.detail.value); + }, + // 选择出生年月日 + bindTimeChange: function (e) { + console.log('picker发送选择改变,携带值为', e.detail.value) + this.setData({ + time: e.detail.value + }) + }, + // 选择所在区域 + bindRegionChange: function (e) { + console.log('picker发送选择改变,携带值为', e.detail.value) + this.setData({ + region: e.detail.value + }) + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad() { + wx.$api.user.userInfoEdit().then(res => { + this.setData({ + phone: res.username, + nickname: res.nickname, + cover: res.avatar + }) + }) + }, + + // 跳转到修改页面 + goUrl() { + wx.navigateTo({ + url: "../editUserInfo/editUserInfo?nickname=" + this.data.nickname + }) + }, + + // 更新头像 + upload() { + wx.chooseImage({ + count: 1, // 默认9 + success: res => { + const src = res.tempFilePaths[0] + wx.navigateTo({ + url: '../tailoring/tailoring?src=' + src + }) + } + }) + }, + + logOut() { + wx.showModal({ + title: "退出提示", + content: "是否现在就退出", + showCancel: true, + confirmColor: "#0b0041", + confirmText: "确定", + success: (res) => { + if (res.confirm) { + wx.clearStorage({ + success: () => { + wx.navigateBack() + } + }) + } + } + }) + } +}) \ No newline at end of file diff --git a/pages/user/setting/aboutMine/aboutMine.json b/pages/user/setting/aboutMine/aboutMine.json new file mode 100644 index 0000000..e8c2c06 --- /dev/null +++ b/pages/user/setting/aboutMine/aboutMine.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "设置" +} \ No newline at end of file diff --git a/pages/user/setting/aboutMine/aboutMine.wxml b/pages/user/setting/aboutMine/aboutMine.wxml new file mode 100644 index 0000000..c49c851 --- /dev/null +++ b/pages/user/setting/aboutMine/aboutMine.wxml @@ -0,0 +1,67 @@ + + + 头像 + + + + + + + 昵称 + + + + + + + 真实姓名 + + + + + + + 性别 + + + + {{ columns[gender] == "" ? "请输入性别" : "" }}{{ columns[gender] }} + + + + + + + 手机号 + + + + + + + 生日 + + + + 当前选择: {{date}} + + + + + + + 所在区域 + + + + 当前选择:{{region[0]}},{{region[1]}},{{region[2]}} + + + + + + + + +退出登录 +保存 \ No newline at end of file diff --git a/pages/user/setting/aboutMine/aboutMine.wxss b/pages/user/setting/aboutMine/aboutMine.wxss new file mode 100644 index 0000000..a50f86d --- /dev/null +++ b/pages/user/setting/aboutMine/aboutMine.wxss @@ -0,0 +1,79 @@ +.info_blcok { + margin-top: 30rpx; +} + +.info_list { + background-color: #fff; + width: 100%; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + box-sizing: border-box; + color: #8e8e8e; + font-size: 30rpx; + border-bottom: solid 1rpx #f7f7f7; + line-height: 90rpx; + padding: 0 30rpx; +} + +.info_list.cover { + padding: 20rpx 30rpx; +} + +.info_list:last-child { + border-bottom: none; +} + +.info_list_title { + width: 200rpx; +} + +.info_list .header { + width: 100rpx; + height: 100rpx; + border-radius: 50%; + margin-right: 10rpx; + background-color: #eee; +} + +.info_list .end { + display: flex; + flex-direction: row; + justify-content: flex-end; + align-items: center; + box-sizing: border-box; + flex: 1; +} + +.info_list .txt { + padding-right: 10rpx; + color: #333; + text-align: right; +} + +.info_list .txt1 { + color: #f89602; + font-weight: 600; +} + +.beSure { + background-color: #cacaca; + color: #fff; + font-weight: bold; + position: fixed; + bottom: 30rpx; + left: 30rpx; + right: 30rpx; + height: 90rpx; + line-height: 90rpx; + text-align: center; + border-radius: 0; + font-size: 32rpx; + width: 44%; +} + +.beSure1 { + background-color: #378fff; + left: calc(48% + 30rpx); +} \ No newline at end of file diff --git a/pages/user/setting/aboutUs/aboutUs.js b/pages/user/setting/aboutUs/aboutUs.js new file mode 100644 index 0000000..28f0b32 --- /dev/null +++ b/pages/user/setting/aboutUs/aboutUs.js @@ -0,0 +1,3 @@ +Page({ + data: {} +}) \ No newline at end of file diff --git a/pages/user/setting/aboutUs/aboutUs.json b/pages/user/setting/aboutUs/aboutUs.json new file mode 100644 index 0000000..0d3baf0 --- /dev/null +++ b/pages/user/setting/aboutUs/aboutUs.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "设置", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/setting/aboutUs/aboutUs.wxml b/pages/user/setting/aboutUs/aboutUs.wxml new file mode 100644 index 0000000..3a6ecdd --- /dev/null +++ b/pages/user/setting/aboutUs/aboutUs.wxml @@ -0,0 +1 @@ +关于我们 \ No newline at end of file diff --git a/pages/user/setting/aboutUs/aboutUs.wxss b/pages/user/setting/aboutUs/aboutUs.wxss new file mode 100644 index 0000000..b664d44 --- /dev/null +++ b/pages/user/setting/aboutUs/aboutUs.wxss @@ -0,0 +1,17 @@ +.item { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + box-sizing: border-box; + padding: 30rpx 30rpx; + color: #333; + font-weight: 400; + background-color: #fff; + border-top: #f7f7f7 solid 1rpx; +} + +.item image { + width: 50rpx; + margin-right: 10rpx; +} \ No newline at end of file diff --git a/pages/user/setting/setting.js b/pages/user/setting/setting.js new file mode 100644 index 0000000..28f0b32 --- /dev/null +++ b/pages/user/setting/setting.js @@ -0,0 +1,3 @@ +Page({ + data: {} +}) \ No newline at end of file diff --git a/pages/user/setting/setting.json b/pages/user/setting/setting.json new file mode 100644 index 0000000..0d3baf0 --- /dev/null +++ b/pages/user/setting/setting.json @@ -0,0 +1,6 @@ +{ + "usingComponents": {}, + "navigationBarTitleText": "设置", + "navigationBarTextStyle": "white", + "navigationBarBackgroundColor": "#378fff" +} \ No newline at end of file diff --git a/pages/user/setting/setting.wxml b/pages/user/setting/setting.wxml new file mode 100644 index 0000000..8a7e730 --- /dev/null +++ b/pages/user/setting/setting.wxml @@ -0,0 +1,9 @@ + + 个人信息 + + + 意见建议 + + + 关于我们 + \ No newline at end of file diff --git a/pages/user/setting/setting.wxss b/pages/user/setting/setting.wxss new file mode 100644 index 0000000..b664d44 --- /dev/null +++ b/pages/user/setting/setting.wxss @@ -0,0 +1,17 @@ +.item { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + box-sizing: border-box; + padding: 30rpx 30rpx; + color: #333; + font-weight: 400; + background-color: #fff; + border-top: #f7f7f7 solid 1rpx; +} + +.item image { + width: 50rpx; + margin-right: 10rpx; +} \ No newline at end of file diff --git a/pages/user/setting/tailoring/tailoring.js b/pages/user/setting/tailoring/tailoring.js new file mode 100644 index 0000000..3ced202 --- /dev/null +++ b/pages/user/setting/tailoring/tailoring.js @@ -0,0 +1,555 @@ +/** + * wx-cropper 2.0 + * 基于微信小程序的图片裁剪工具 + * @author ifmiss + */ + +// 裁剪图片的宽度设置 +const CROPPER_WIDTH = 720 + +// 裁剪显示的最大比例,如果裁剪的图片过长,则做限制,默认最大宽高比例为 宽640 / 高960 (宽高比例) +const CROPPER_RATIO = 0.7 + +/** + * 初始化裁剪的比例 如果是正方形则是 1 + * 比例为宽高比 建议区间为 0.25 - 4 + * 设置为0的时候则是不固定宽高 + */ +const CROPPER_AREA_RATIO = 1 + +// 裁剪的位置 +let CUT_L, // 初始化拖拽元素的left值 + CUT_T, // 初始化拖拽元素的top值 + CUT_R, // 初始化拖拽元素的 + CUT_B, // 初始化拖拽元素的 + + // 裁剪的宽度 + CUT_W, // 初始化拖拽元素的宽度 + CUT_H, // 初始化拖拽元素的高度 + + // 拖拽相关 + PAGE_X, // 手按下的x位置 + PAGE_Y, // 手按下y的位置 + T_PAGE_X, // 手移动的时候x的位置 + T_PAGE_Y, // 手移动的时候Y的位置x + + // 图片比例 + IMG_RATIO, + + // 图片实际宽高 + IMG_REAL_W, // 图片实际的宽度 + IMG_REAL_H, // 图片实际的高度 + + // 裁剪图片区域的信息 + CROPPER_IMG_W, + CROPPER_IMG_H, + + // 移动的比例 + DRAFG_MOVE_RATIO = 750 / wx.getSystemInfoSync().windowWidth, //移动时候的比例, + + + INIT_DRAG_POSITION = 0, // 初始化屏幕宽度和裁剪区域的宽度之差,用于设置初始化裁剪的宽度 + + DRAW_IMAGE_W, // 设置生成的图片宽度 + + // 最大可显示得图片宽度,需要设定最大值,否则安卓部分机器会闪退, 控制qualityWidth的最大值 + maxQW = 2550 + +/** + * 最小裁剪宽度 由于设置了裁剪的UI样式,裁剪的宽高必须要有最小宽度,这个宽度是裁剪长或者宽的最短一方的宽度 + * 如 400 200 + * 那么如果只能设置为100的时候 + * 那么最小缩放到200 100的效果,之后只能放大不能缩小 + */ +const MIN_CROPPER_DIS = 100 + + + +Page({ + /** + * 页面的初始数据 + */ + data: { + imageSrc: "", + // 是否显示图片(在图片加载完成之后设置为true) + isShowImg: false, + + // 初始化的宽高 + cropperInitW: CROPPER_WIDTH, + cropperInitH: CROPPER_WIDTH, + + // 动态的宽高 + cropperW: CROPPER_WIDTH, + cropperH: CROPPER_WIDTH, + + // 动态的left top值 + cropperL: 0, + cropperT: 0, + + // 图片缩放值 + scaleP: 0, + + // 裁剪框 宽高 + cutL: 0, + cutT: 0, + cutB: 0, + cutR: 0, + + qualityWidth: DRAW_IMAGE_W, + + innerAspectRadio: DRAFG_MOVE_RATIO, + + // 图片类型 + cropperType : "" + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad (options) { + this.setData({ + imageSrc : options.src, + cropperType : options.type || "" + }) + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function () { + // 初始化 + this.loadImage(); + }, + + /** + * 选择本地图片 + * 基于底部中间的按钮的点击事件 + */ + getImage: function () { + var _this = this + wx.chooseImage({ + success: function (res) { + _this.setData({ + isShowImg: false, + imageSrc: res.tempFilePaths[0], + }) + _this.loadImage(); + }, + }) + }, + + /** + * 初始化图片信息 + * 获取图片内容,并初始化裁剪框 + */ + loadImage: function () { + var _this = this + wx.showLoading({ + title: '图片加载中...', + }) + + wx.getImageInfo({ + src: _this.data.imageSrc, + success: function success(res) { + DRAW_IMAGE_W = IMG_REAL_W = res.width + IMG_REAL_H = res.height + IMG_RATIO = IMG_REAL_W / IMG_REAL_H + + let MIN_RANGE = IMG_REAL_W > IMG_REAL_H ? IMG_REAL_W : IMG_REAL_H + + // 用于设置图片的比例(以设置裁剪的比例,方便定位裁剪的left right top bottom) + INIT_DRAG_POSITION = MIN_RANGE > INIT_DRAG_POSITION ? INIT_DRAG_POSITION : MIN_RANGE + + // 拿到裁剪位置 + let cropperPosition = _this.initCropperPosition(IMG_RATIO, CROPPER_WIDTH) + + // 根据图片的宽高显示不同的效果 保证图片可以正常显示 + if (IMG_RATIO >= 1) { + _this.setData({ + cropperW: CROPPER_WIDTH, + cropperH: CROPPER_WIDTH / IMG_RATIO, + // 初始化left right + cropperL: Math.ceil((CROPPER_WIDTH - CROPPER_WIDTH) / 2), + cropperT: 0, + cutL: cropperPosition.left, + cutT: cropperPosition.top, + cutR: cropperPosition.right, + cutB: cropperPosition.bottom, + // 图片缩放值 + scaleP: IMG_REAL_W / CROPPER_WIDTH, + qualityWidth: DRAW_IMAGE_W > maxQW ? maxQW : DRAW_IMAGE_W, + innerAspectRadio: IMG_RATIO + }) + } else { + // 此时需要判断图片的比例以设定显示裁剪区域的比例 + // let cropper_real_ratio = CROPPER_RATIO > IMG_RATIO ? CROPPER_RATIO : IMG_RATIO + + if (CROPPER_RATIO > IMG_RATIO) { + CROPPER_IMG_W = CROPPER_WIDTH / CROPPER_RATIO * IMG_RATIO + CROPPER_IMG_H = CROPPER_WIDTH / CROPPER_RATIO + } else { + CROPPER_IMG_W = CROPPER_WIDTH + CROPPER_IMG_H = CROPPER_IMG_W / IMG_RATIO + } + + // 动态生成新的CROPPER的真实宽度 高度 + // CROPPER_IMG_W = CROPPER_WIDTH * cropper_real_ratio + // CROPPER_IMG_H = CROPPER_WIDTH / cropper_real_ratio / IMG_RATIO + + + _this.setData({ + cropperW: CROPPER_IMG_W, + cropperH: CROPPER_IMG_H, + // 初始化left right + cropperL: Math.ceil((CROPPER_WIDTH - CROPPER_IMG_W) / 2), + cropperT: 0, + + cutL: cropperPosition.left, + cutT: cropperPosition.top, + cutR: cropperPosition.right, + cutB: cropperPosition.bottom, + // 图片缩放值 + scaleP: IMG_REAL_W / CROPPER_IMG_W, + qualityWidth: DRAW_IMAGE_W > maxQW ? maxQW : DRAW_IMAGE_W, + innerAspectRadio: IMG_RATIO + }) + } + _this.setData({ + isShowImg: true + }) + wx.hideLoading() + } + }) + }, + + /** + * 初始化裁剪区域的 + * left right top bottom + * 需要 CROPPER_AREA_RATIO 来判断 + * @return 返回裁剪的left, right, top bottom的值 + */ + initCropperPosition(radio) { + let left = 0, + right = 0, + top = 0, + bottom = 0, + cropperW, + cropperH + // 如果 CROPPER_AREA_RATIO = 0 则不限制固定宽高 + if (CROPPER_AREA_RATIO === 0) return { + left, + right, + top, + bottom + } + + // 宽大于等于高 + if (radio >= 1) { + cropperW = CROPPER_WIDTH + cropperH = CROPPER_WIDTH / IMG_RATIO + if (radio > CROPPER_AREA_RATIO) { + return { + left: Math.ceil((cropperW - cropperH * CROPPER_AREA_RATIO) / 2), + right: Math.ceil((cropperW - cropperH * CROPPER_AREA_RATIO) / 2), + top: 0, + bottom: 0 + } + } + return { + left: 0, + right: 0, + top: Math.ceil((cropperH - cropperW / CROPPER_AREA_RATIO) / 2), + bottom: Math.ceil((cropperH - cropperW / CROPPER_AREA_RATIO) / 2) + } + } + + // 此时需要判断图片的比例以设定显示裁剪区域的比例 + let cropper_real_ratio = CROPPER_RATIO > IMG_RATIO ? CROPPER_RATIO : IMG_RATIO + // 高大于宽 + cropperW = CROPPER_WIDTH / cropper_real_ratio * IMG_RATIO + cropperH = CROPPER_WIDTH / cropper_real_ratio + if (radio < CROPPER_AREA_RATIO) { + return { + left: 0, + right: 0, + top: Math.ceil((cropperH - cropperW / CROPPER_AREA_RATIO) / 2), + bottom: Math.ceil((cropperH - cropperW / CROPPER_AREA_RATIO) / 2) + } + } + return { + left: Math.ceil((cropperW - cropperH * CROPPER_AREA_RATIO) / 2), + right: Math.ceil((cropperW - cropperH * CROPPER_AREA_RATIO) / 2), + top: 0, + bottom: 0 + } + }, + + /** + * 拖动时候触发的touchStart事件 + */ + contentStartMove(e) { + PAGE_X = e.touches[0].pageX + PAGE_Y = e.touches[0].pageY + }, + + /** + * 拖动时候触发的touchMove事件 + */ + contentMoveing(e) { + var _this = this + var dragLengthX = (PAGE_X - e.touches[0].pageX) * DRAFG_MOVE_RATIO + var dragLengthY = (PAGE_Y - e.touches[0].pageY) * DRAFG_MOVE_RATIO * DRAFG_MOVE_RATIO + + // 左移右移 + if (dragLengthX > 0) { + if (this.data.cutL - dragLengthX < 0) dragLengthX = this.data.cutL + } else { + if (this.data.cutR + dragLengthX < 0) dragLengthX = -this.data.cutR + } + + + // 上移下移 + if (dragLengthY > 0) { + if (this.data.cutT - dragLengthY < 0) dragLengthY = this.data.cutT + } else { + if (this.data.cutB + dragLengthY < 0) dragLengthY = -this.data.cutB + } + this.setData({ + cutL: this.data.cutL - dragLengthX, + cutT: this.data.cutT - dragLengthY, + cutR: this.data.cutR + dragLengthX, + cutB: this.data.cutB + dragLengthY + }) + + + PAGE_X = e.touches[0].pageX + PAGE_Y = e.touches[0].pageY + }, + + contentTouchEnd() { + + }, + + /** + * 点击取消关闭裁剪页面 + */ + close() { + // wx.redirectTo() + }, + + /** + * 点击完成之后 + * 生成图片信息 + */ + getImageInfo() { + var _this = this + wx.showLoading({ + title: '图片生成中...', + }) + // 将图片写入画布 + const ctx = wx.createCanvasContext('myCanvas') + let w = this.data.qualityWidth + let h = this.data.qualityWidth / IMG_RATIO + ctx.drawImage(_this.data.imageSrc, 0, 0, w, h); + ctx.draw(true, () => { + // 获取画布要裁剪的位置和宽度 均为百分比 * 画布中图片的宽度 保证了在微信小程序中裁剪的图片模糊 位置不对的问题 + var canvasW = ((_this.data.cropperW - _this.data.cutL - _this.data.cutR) / _this.data.cropperW) * w + var canvasH = ((_this.data.cropperH - _this.data.cutT - _this.data.cutB) / _this.data.cropperH) * h + var canvasL = (_this.data.cutL / _this.data.cropperW) * w + var canvasT = (_this.data.cutT / _this.data.cropperH) * h + + // 生成图片 + wx.canvasToTempFilePath({ + x: canvasL, + y: canvasT, + width: canvasW, + height: canvasH, + destWidth: canvasW, + destHeight: canvasH, + quality: 0.5, + canvasId: 'myCanvas', + success: res=> { + wx.hideLoading() + wx.$api.file.uploadImg(res.tempFilePath, {}).then(res => { + //获取页面栈 + let pages = getCurrentPages(), + updData = res + //获取所需页面 + let prevPage = pages[pages.length -2];//上一页 + + if(this.data.cropperType == "logo" || this.data.cropperType == "cardImg"){ + prevPage.setData({ + cover : updData + }) + wx.navigateBack() + }else{ + // 头像上传 + wx.$api.user.EditCover({ + value: updData.path + }).then(() => { + prevPage.setData({ + cover: updData.showpath + }); + wx.navigateBack() + }) + } + }) + } + }) + }) + }, + + /** + * 设置大小的时候触发的touchStart事件 + * 存数据 + */ + dragStart(e) { + T_PAGE_X = e.touches[0].pageX + T_PAGE_Y = e.touches[0].pageY + CUT_L = this.data.cutL + CUT_R = this.data.cutR + CUT_B = this.data.cutB + CUT_T = this.data.cutT + }, + + /** + * 设置大小的时候触发的touchMove事件 + * 根据dragType判断类型 + * 4个方向的边线拖拽效果 + * 右下角按钮的拖拽效果 + */ + dragMove(e) { + var _this = this + var dragType = e.target.dataset.drag + switch (dragType) { + case 'right': + var dragLength = (T_PAGE_X - e.touches[0].pageX) * DRAFG_MOVE_RATIO + if (CUT_R + dragLength < 0) dragLength = -CUT_R + if (CUT_R + dragLength + MIN_CROPPER_DIS > this.data.cropperW - this.data.cutL) dragLength = (this.data.cropperW - this.data.cutL) - MIN_CROPPER_DIS - CUT_R + + if (CROPPER_AREA_RATIO) { + // 底部线的限制 不允许超出 + // dragLength 最大不能超过CUT_B + if (CUT_B + dragLength / CROPPER_AREA_RATIO <= 0) { + this.setData({ + cutB: 0 + }) + return + } + this.setData({ + cutR: CUT_R + dragLength, + cutB: CUT_B + dragLength / CROPPER_AREA_RATIO + }) + } else { + this.setData({ + cutR: CUT_R + dragLength + }) + } + + break; + case 'left': + var dragLength = (T_PAGE_X - e.touches[0].pageX) * DRAFG_MOVE_RATIO + if (CUT_L - dragLength < 0) dragLength = CUT_L + if ((CUT_L - dragLength + MIN_CROPPER_DIS) > (this.data.cropperW - this.data.cutR)) dragLength = CUT_L - (this.data.cropperW - this.data.cutR) + MIN_CROPPER_DIS + + if (CROPPER_AREA_RATIO) { + // 顶部线的限制 不允许超出 + // dragLength 最大不能超过CUT_T + if (CUT_T - dragLength / CROPPER_AREA_RATIO < 0) { + this.setData({ + cutT: 0 + }) + return + } + this.setData({ + cutL: CUT_L - dragLength, + cutT: CUT_T - dragLength / CROPPER_AREA_RATIO + }) + } else { + this.setData({ + cutL: CUT_L - dragLength + }) + } + break; + case 'top': + var dragLength = (T_PAGE_Y - e.touches[0].pageY) * DRAFG_MOVE_RATIO + if (CUT_T - dragLength < 0) dragLength = CUT_T + if ((CUT_T - dragLength + MIN_CROPPER_DIS) > this.data.cropperH - this.data.cutB) dragLength = CUT_T - (this.data.cropperH - this.data.cutB) + MIN_CROPPER_DIS + + if (CROPPER_AREA_RATIO) { + // left 线的限制 不允许超出 + // dragLength 最大不能超过CUT_L + if (CUT_L - dragLength * CROPPER_AREA_RATIO < 0) { + this.setData({ + cutL: 0 + }) + return + } + this.setData({ + cutL: CUT_L - dragLength * CROPPER_AREA_RATIO, + cutT: CUT_T - dragLength + }) + } else { + this.setData({ + cutT: CUT_T - dragLength + }) + } + break; + case 'bottom': + var dragLength = (T_PAGE_Y - e.touches[0].pageY) * DRAFG_MOVE_RATIO + if (CUT_B + dragLength < 0) dragLength = -CUT_B + if (CUT_B + dragLength + MIN_CROPPER_DIS > this.data.cropperH - this.data.cutT) dragLength = (this.data.cropperH - this.data.cutT) - MIN_CROPPER_DIS - CUT_B + + if (CROPPER_AREA_RATIO) { + // right 线的限制 不允许超出 + // dragLength 最大不能超过 CUT_R + if (CUT_R + dragLength * CROPPER_AREA_RATIO < 0) { + this.setData({ + cutR: 0 + }) + return + } + this.setData({ + cutR: CUT_R + dragLength * CROPPER_AREA_RATIO, + cutB: CUT_B + dragLength + }) + } else { + this.setData({ + cutB: CUT_B + dragLength + }) + } + break; + case 'rightBottom': + var dragType = e.target.dataset.drag + var dragLengthX = (T_PAGE_X - e.touches[0].pageX) * DRAFG_MOVE_RATIO + var dragLengthY = (T_PAGE_Y - e.touches[0].pageY) * DRAFG_MOVE_RATIO + if (CUT_B + dragLengthY < 0) dragLengthY = -CUT_B + if (CUT_B + dragLengthY + MIN_CROPPER_DIS > this.data.cropperH - this.data.cutT) dragLengthY = (this.data.cropperH - this.data.cutT) - MIN_CROPPER_DIS - CUT_B + if (CUT_R + dragLengthX < 0) dragLengthX = -CUT_R + if (CUT_R + dragLengthX + MIN_CROPPER_DIS > this.data.cropperW - this.data.cutL) dragLengthX = (this.data.cropperW - this.data.cutL) - MIN_CROPPER_DIS - CUT_R + + if (CROPPER_AREA_RATIO) { + // right 线的限制 不允许超出 + // dragLength 最大不能超过 CUT_R + if (CUT_R + dragLengthY * CROPPER_AREA_RATIO < 0) { + this.setData({ + cutR: 0 + }) + return + } + this.setData({ + cutR: CUT_R + dragLengthY * CROPPER_AREA_RATIO, + cutB: CUT_B + dragLengthY + }) + } else { + this.setData({ + cutB: CUT_B + dragLengthY, + cutR: CUT_R + dragLengthX + }) + } + break; + default: + break; + } + }, +}) \ No newline at end of file diff --git a/pages/user/setting/tailoring/tailoring.json b/pages/user/setting/tailoring/tailoring.json new file mode 100644 index 0000000..6461b9a --- /dev/null +++ b/pages/user/setting/tailoring/tailoring.json @@ -0,0 +1,5 @@ +{ + "navigationBarBackgroundColor": "#000000", + "navigationBarTitleText": "", + "navigationBarTextStyle": "white" +} \ No newline at end of file diff --git a/pages/user/setting/tailoring/tailoring.wxml b/pages/user/setting/tailoring/tailoring.wxml new file mode 100644 index 0000000..8a2b777 --- /dev/null +++ b/pages/user/setting/tailoring/tailoring.wxml @@ -0,0 +1,46 @@ + \ No newline at end of file diff --git a/pages/user/setting/tailoring/tailoring.wxss b/pages/user/setting/tailoring/tailoring.wxss new file mode 100644 index 0000000..15b1f55 --- /dev/null +++ b/pages/user/setting/tailoring/tailoring.wxss @@ -0,0 +1,397 @@ +/* pages/wx-cropper/index.wxss */ +Page { + /* 点的颜色 */ + --primary-color: #69f; + /* 边框颜色 */ + --primary-color-outline: rgba(102, 153, 255, .75); + /* 虚线颜色 */ + --primary-color-dashed: rgba(255, 255, 255, 0.46); + /* 裁剪区域背景色 */ + --box-bg: rgba(255, 255, 255, 0.3); +} + +.wx-content-info { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: block; + align-items: center; + flex-direction: column; + background: #000; +} + +.cropper-config { + position: fixed; + bottom: 0; + left: 0; + right: 0; + height: 90rpx; + display: flex; + align-items: center; + justify-content: space-between; + border-top: 1px solid rgba(255, 255, 255, .12); + padding-bottom: env(safe-area-inset-bottom); +} + +.cropper-config .cropper-cancle, +.cropper-config .cropper-save { + color: #fff; + font-size: 26rpx; + padding: 15rpx 25px; +} + +.cropper-content { + min-height: calc(100% - 80rpx); + width: 720rpx; + margin: 0 auto; + margin-top: 8rpx; + display: flex; + align-items: center; +} + +.wx-corpper { + position: relative; + overflow: visible; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; + -webkit-touch-callout: none; + box-sizing: border-box; +} + +.wx-corpper-content { + position: relative; +} + +.wx-corpper-content image { + display: block; + width: 100%; + min-width: 0 !important; + max-width: none !important; + height: 100%; + min-height: 0 !important; + max-height: none !important; + image-orientation: 0deg !important; + margin: 0 auto; +} + +/* 移动图片效果 */ +.wx-cropper-drag-box { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + cursor: move; + background: rgba(0, 0, 0, 0.6); + z-index: 1; +} + +/* 内部的信息 */ +.wx-corpper-crop-box { + position: absolute; + background: var(--box-bg); + z-index: 2; +} + +.wx-corpper-crop-box .wx-cropper-view-box { + position: relative; + display: block; + width: 100%; + height: 100%; + overflow: visible; + outline: 1px solid var(--primary-color-outline); +} + +/* 横向虚线 */ +.wx-cropper-dashed-h { + position: absolute; + top: 33.33333333%; + left: 0; + width: 100%; + height: 33.33333333%; + border-top: 1px dashed var(--primary-color-dashed); + border-bottom: 1px dashed var(--primary-color-dashed); +} + +/* 纵向虚线 */ +.wx-cropper-dashed-v { + position: absolute; + left: 33.33333333%; + top: 0; + width: 33.33333333%; + height: 100%; + border-left: 1px dashed var(--primary-color-dashed); + border-right: 1px dashed var(--primary-color-dashed); +} + +/* 四个方向的线 为了之后的拖动事件*/ +.wx-cropper-line-t { + position: absolute; + display: block; + width: 100%; + background-color: var(--primary-color); + top: 0; + left: 0; + height: 1px; + opacity: 0.1; + cursor: n-resize; +} + +.wx-cropper-line-t::before { + content: ''; + position: absolute; + top: 50%; + right: 0rpx; + width: 100%; + -webkit-transform: translate3d(0, -50%, 0); + transform: translate3d(0, -50%, 0); + bottom: 0; + height: 41rpx; + background: transparent; + z-index: 11; +} + +.wx-cropper-line-r { + position: absolute; + display: block; + background-color: var(--primary-color); + top: 0; + right: 0px; + width: 1px; + opacity: 0.1; + height: 100%; + cursor: e-resize; +} + +.wx-cropper-line-r::before { + content: ''; + position: absolute; + top: 0; + left: 50%; + width: 41rpx; + -webkit-transform: translate3d(-50%, 0, 0); + transform: translate3d(-50%, 0, 0); + bottom: 0; + height: 100%; + background: transparent; + z-index: 11; +} + +.wx-cropper-line-b { + position: absolute; + display: block; + width: 100%; + background-color: var(--primary-color); + bottom: 0; + left: 0; + height: 1px; + opacity: 0.1; + cursor: s-resize; +} + +.wx-cropper-line-b::before { + content: ''; + position: absolute; + top: 50%; + right: 0rpx; + width: 100%; + -webkit-transform: translate3d(0, -50%, 0); + transform: translate3d(0, -50%, 0); + bottom: 0; + height: 41rpx; + background: transparent; + z-index: 11; +} + +.wx-cropper-line-l { + position: absolute; + display: block; + background-color: var(--primary-color); + top: 0; + left: 0; + width: 1px; + opacity: 0.1; + height: 100%; + cursor: w-resize; +} + +.wx-cropper-line-l::before { + content: ''; + position: absolute; + top: 0; + left: 50%; + width: 41rpx; + -webkit-transform: translate3d(-50%, 0, 0); + transform: translate3d(-50%, 0, 0); + bottom: 0; + height: 100%; + background: transparent; + z-index: 11; +} + +.wx-cropper-point { + width: 5px; + height: 5px; + /* background-color: var(--primary-color); */ + opacity: .75; + position: absolute; + z-index: 3; +} + +.point-t { + top: -3px; + left: 50%; + margin-left: -3px; + cursor: n-resize; +} + +.point-r { + top: 50%; + left: 100%; + margin-left: -3px; + margin-top: -3px; + cursor: n-resize; +} + +.point-tr, +.point-rb, +.point-bl, +.point-lt { + cursor: n-resize; + width: 29rpx; + height: 29rpx; + position: absolute; + z-index: 1112; + opacity: 1; +} + +.point-rb { + right: 0; + bottom: 0; + -webkit-transform: translate3d(50%, 50%, 0); +} + +.point-tr { + right: 0; + top: 0; + -webkit-transform: translate3d(50%, -50%, 0); +} + +.point-bl { + left: 0; + bottom: 0; + -webkit-transform: translate3d(-50%, 50%, 0); +} + +.point-lt { + top: 0; + left: 0; + -webkit-transform: translate3d(-50%, -50%, 0); +} + +.point-rb::before, +.point-rb::after, +.point-tr::before, +.point-tr::after, +.point-bl::before, +.point-bl::after, +.point-lt::before, +.point-lt::after { + content: ''; + position: absolute; + background-color: var(--primary-color); +} + +/* 右下 */ +.point-rb::before { + width: 6rpx; + height: 30rpx; + right: calc(50% - 6rpx); + bottom: calc(50% - 6rpx); +} + +.point-rb::after { + height: 6rpx; + width: 30rpx; + right: calc(50% - 6rpx); + bottom: calc(50% - 6rpx); +} + +/* 右上 */ +.point-tr::before { + width: 6rpx; + height: 30rpx; + right: calc(50% - 6rpx); + top: calc(50% - 6rpx); +} + +.point-tr::after { + height: 6rpx; + width: 30rpx; + right: calc(50% - 6rpx); + top: calc(50% - 6rpx); +} + +/* 左下 */ +.point-bl::before { + width: 6rpx; + height: 30rpx; + left: calc(50% - 6rpx); + bottom: calc(50% - 6rpx); +} + +.point-bl::after { + height: 6rpx; + width: 30rpx; + left: calc(50% - 6rpx); + bottom: calc(50% - 6rpx); +} + +/* 左上 */ +.point-lt::before { + width: 6rpx; + height: 30rpx; + left: calc(50% - 6rpx); + top: calc(50% - 6rpx); +} + +.point-lt::after { + height: 6rpx; + width: 30rpx; + left: calc(50% - 6rpx); + top: calc(50% - 6rpx); +} + +.point-b { + left: 50%; + top: 100%; + margin-left: -3px; + margin-top: -3px; + cursor: n-resize; +} + +.point-l { + left: 0%; + top: 50%; + margin-left: -3px; + margin-top: -3px; + cursor: n-resize; +} + +/* 裁剪框预览内容 */ +.wx-cropper-viewer { + position: relative; + width: 100%; + height: 100%; + overflow: hidden; +} + +.wx-cropper-viewer image { + position: absolute; + z-index: 2; +} \ No newline at end of file diff --git a/project.config.json b/project.config.json index eb21eb3..f520b8a 100644 --- a/project.config.json +++ b/project.config.json @@ -113,6 +113,35 @@ "pathName": "pages/home/index", "query": "orderid=20201229132338964625", "scene": null + }, + { + "name": "pages/user/companyMine/focusedCompany/focusedCompany", + "pathName": "pages/user/companyMine/focusedCompany/focusedCompany", + "query": "", + "scene": null + }, + { + "name": "pages/user/companyMine/myTeam/myTeam", + "pathName": "pages/user/companyMine/myTeam/myTeam", + "query": "", + "scene": null + }, + { + "name": "pages/user/companyMine/myBlockchain/myBlockchain", + "pathName": "pages/user/companyMine/myBlockchain/myBlockchain", + "query": "", + "scene": null + }, + { + "name": "pages/user/setting/setting", + "pathName": "pages/user/setting/setting", + "query": "", + "scene": null + }, + { + "name": "pages/user/setting/aboutMine/aboutMine", + "pathName": "pages/user/setting/aboutMine/aboutMine", + "scene": null } ] } diff --git a/static/images/aboutAdvice.png b/static/images/aboutAdvice.png new file mode 100644 index 0000000000000000000000000000000000000000..77b87b992dfa9087039cd7c912151a72637545cd GIT binary patch literal 6165 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 literal 0 HcmV?d00001 diff --git a/static/images/zs.png b/static/images/zs.png new file mode 100644 index 0000000000000000000000000000000000000000..09a061f099ce547d751c4b72d0e6bf37b2dd2baa GIT binary patch literal 68866 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%0A;96LEFlJ*$C!=~<-C8Db~X8nNR`_!_qq>zMUE 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 literal 0 HcmV?d00001 diff --git a/static/images/zuan.png b/static/images/zuan.png new file mode 100644 index 0000000000000000000000000000000000000000..f102a95c4bd472176a001915e97420ad5fb3fbae GIT binary patch literal 6148 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 literal 0 HcmV?d00001 diff --git a/static/user_iocn/userNav_00.png b/static/user_iocn/userNav_00.png index cac57b236a13f7c795bb1a704b149743cbf1d059..642c8daef9b6e117b42d072fef6d97e17b241cb9 100644 GIT binary patch literal 3906 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 literal 585 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf3?viMZ?gia-TOM?7@ z8NP6Q|HYOuJ()T0!ALw#rSIF&KzS-Z;9r|s5Z^1Ih&fddkQ}lk_m9eN% zEOIz7JN&{=pFfjs&N(2;R+F5)NdLi%7iK!bcYh_@N|Y@7^7m}8?EA7=7bHJ?nX5g) z=Y=Cz%-n4mtP|L(6u&zqvx-ccqrn{Z>jr1#s{D{c6C)kj=4CMZ&0;Rud*#wc=BrZu z5#H|XU2VIbzrWG7k&9vdjGT8>lb<-a-&`%bbjp^^Cmb@@ugbQ$xk9;KP1iwu>b@Hq zwX3Hko42&IOM?7@ z8NP6Q|HYOuJ()T0!ALw#rSIF&KzS-Z;9r|s5Z^1Ih&fddkQ}lk_m9eN% zEOIz7JN&{=pFfjs&N(2;R+F5)NdLi%7iK!bcYh_@N|Y@7^7m}8?EA7=7bHJ?nX5g) z=Y=Cz%-n4mtP|L(6u&zqvx-ccqrn{Z>jr1#s{D{c6C)kj=4CMZ&0;Rud*#wc=BrZu z5#H|XU2VIbzrWG7k&9vdjGT8>lb<-a-&`%bbjp^^Cmb@@ugbQ$xk9;KP1iwu>b@Hq zwX3Hko42&IKLZ*U+5Lu!Sk^o_Z5E4Meg@_7P6crJiNL9pw)e1;Xm069{HJUZAPk55R%$-RIA z6-eL&AQ0xu!e<4=008gy@A0LT~suv4>S3ILP<0Bm`DLLvaF4FK%)Nj?Pt*r}7;7Xa9z9H|HZjR63e zC`Tj$K)V27Re@400>HumpsYY5E(E}?0f1SyGDiY{y#)Yvj#!WnKwtoXnL;eg03bL5 z07D)V%>y7z1E4U{zu>7~aD})?0RX_umCct+(lZpemCzb@^6=o|A>zVpu|i=NDG+7} zl4`aK{0#b-!z=TL9Wt0BGO&T{GJWpjryhdijfaIQ&2!o}p04JRKYg3k&Tf zVxhe-O!X z{f;To;xw^bEES6JSc$k$B2CA6xl)ltA<32E66t?3@gJ7`36pmX0IY^jz)rRYwaaY4 ze(nJRiw;=Qb^t(r^DT@T3y}a2XEZW-_W%Hszxj_qD**t_m!#tW0KDiJT&R>6OvVTR z07RgHDzHHZ48atvzz&?j9lXF70$~P3Knx_nJP<+#`N z#-MZ2bTkiLfR>_b(HgWKJ%F~Nr_oF3b#wrIijHG|(J>BYjM-sajE6;FiC7vY#};Gd zST$CUHDeuEH+B^pz@B062qXfFfD`NpUW5?BY=V%GM_5c)L#QR}BeW8_2v-S%gfYS= zB9o|3v?Y2H`NVi)In3rTB8+ej^> zQ=~r95NVuDChL%G$=>7$vVg20myx%S50Foi`^m%Pw-h?Xh~i8Mq9jtJloCocWk2Nv zrJpiFnV_ms&8eQ$2&#xWpIS+6pmtC%Q-`S&GF4Q#^mhymh7E(qNMa}%YZ-ePrx>>xFPTiH1=E+A$W$=bG8>s^ zm=Bn5Rah$aDtr}@$`X}2l~$F0mFKEdRdZE8)p@E5RI61Ft6o-prbbn>P~)iy)E2AN zsU20jsWz_8Qg>31P|s0cqrPALg8E|(vWA65poU1JRAaZs8I2(p#xiB`SVGovRs-uS zYnV-9TeA7=Om+qP8+I>yOjAR1s%ETak!GFdam@h^# z)@rS0t$wXH+Irf)+G6c;?H29p+V6F6oj{!|o%K3xI`?%6x;DB|x`n#ibhIR?(H}Q3Gzd138Ei2)WAMz7W9Vy`X}HnwgyEn!VS)>mv$8&{hQn>w4zwy3R}t;BYlZQm5)6pty=DfLrs+A-|>>;~;Q z_F?uV_HFjh9n2gO9o9Q^JA86v({H5aB!kjoO6 zc9$1ZZKsN-Zl8L~mE{`ly3)1N^`o1+o7}D0ZPeY&J;i;i`%NyJ8_8Y6J?}yE@b_5a zam?eLr<8@mESk|3$_SkmS{wQ>%qC18))9_|&j{ZT zes8AvOzF(F2#DZEY>2oYX&IRp`F#{ADl)1r>QS^)ba8a|EY_^#S^HO&t^Rgqwv=MZThqqEWH8 zxJo>d=ABlR_Bh=;eM9Tw|Ih34~oTE|= zX_mAr*D$vzw@+p(E0Yc6dFE}(8oqt`+R{gE3x4zjX+Sb3_cYE^= zgB=w+-tUy`ytONMS8KgRef4hA?t0j zufM;t32jm~jUGrkaOInTZ`zyfns>EuS}G30LFK_G-==(f<51|K&cocp&EJ`SxAh3? zNO>#LI=^+SEu(FqJ)ynt=!~PC9bO$rzPJB=?=j6w@a-(u02P7 zaQ)#(uUl{HW%tYNS3ItC^iAtK(eKlL`f9+{bJzISE?u8_z3;~C8@FyI-5j_jy7l;W z_U#vU3hqqYU3!mrul&B+{ptt$59)uk{;_4iZQ%G|z+lhASr6|H35TBkl>gI*;nGLU zN7W-nBaM%pA0HbH8olyl&XeJ%vZoWz%6?Y=dFykl=imL}`%BMQ{Mhgd`HRoLu6e2R za__6DuR6yg#~-}Tc|Gx_{H@O0eebyMy5GmWADJlpK>kqk(fVV@r_fLLKIeS?{4e)} z^ZO;zpECde03c&XQcVB=dL;k=fP(-4`Tqa_faw4Lbua(`>RI+y?e7jKeZ#YO-C z19(Y9K~#9!)R;|+6jv06pZ8LB4@#CU29XE>e}R(tF%oE^2C@o_L&z%0DnFe>I32!bGPgG7*O6^@JQ`u@1hU}vrc-BtHg)x8f@?|ILy zt3BspFfd5|(%-0Uh2u1C#wVEFYlxTb&H5;}w*dFk_Tr%_#@QSK1R~jIzfoI-<1{Xj zpQyzP*Hh`cX+P%Xii3p=>!?8d@33QTkyOx-*aUnpW2=dNc9mrV9XI22Hi#uqh7y6+ z;`zN<9|o4R_aT1#^5?j!>7l_A##!K>s|$&SHFrJ+W0e`#Fm@Ibq#?ncVXQafW8hvr zk&H1CYzxK%gQpnls)<)g!0W&lR~M#UYwmn3;0DH^)@d{B0gRJoe9#Q#g?$11fN{cF zASTMq?{Yv-Z2;lG_FS!lKw({D2LZym z>VTobx~2g`gpEoTL4%zn?Wc%4V_H{kbK_apjKqgN>x#Mt9Kl`(c4NsH6Mz-QUlKdJ zV7=2kiCZY?dlE9Zyno6Nw|z3uSHH*Rsqe3Vff-L4XaD}WLD!c8m~8-VV)VMc6r$p5 zX?c}BjJp-hG9ekXmfLdH`(?0VZs3r3A7Dp@A3kg$>%)ePN^?Mj%<^Q&#eY=BT~AS1 zZi3Aq4*L?UA?s_frw|LCqOfe(OMCl&&Yl^rLCkl-wq$)t2EB>OAi2NqlYzdzGPIge zXUCStPhmXt8N0O^eRomV49t6q0#Qa>d^L3$%rnNToMcgOjZ>?38LXHaxYl`KV6d)p z(i#w~^UkmXfsN7*J0`6!flo0Wdy2wx6YL}4ZyBq*5-h7s9k54C1#5c8uz!5l|99@! z;Su0imm8FlsYM361e%l#=6)Lr^3|F)8AR3fo`xqoKs=N2$o%DYIZt+@!L;w*%!hfK!uC{y3 literal 398 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf3?viMZ?l4^0G|+7ApM_~phi_@7tjv*k|4ie zhK|sgEs}~k!M41`3uN2!L3skz#)5S5w>^2Hw6jwRYyL)z4*}Q$iB} DeeKuq diff --git a/static/user_iocn/userNav_0100.png b/static/user_iocn/userNav_0100.png new file mode 100644 index 0000000000000000000000000000000000000000..10daa89000d37f982fc44f50dd330ceaf01b2656 GIT binary patch literal 398 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf3?viMZ?l4^0G|+7ApM_~phi_@7tjv*k|4ie zhK|sgEs}~k!M41`3uN2!L3skz#)5S5w>^2Hw6jwRYyL)z4*}Q$iB} DeeKuq literal 0 HcmV?d00001 diff --git a/static/user_iocn/userNav_02.png b/static/user_iocn/userNav_02.png index 0259ebddc2ca1f6c01c538c004cf2b7edd0b48e8..b6cc4cf46e845b631ee430a69c49a7d722b4c4fa 100644 GIT binary patch literal 3970 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 literal 648 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf3?viMZ?giaMFBn`u0Z<#;07#uWlca=nwA9l z1v5Oq^k(C^iGp$m{)lrw)MEW{tToTi&gkBa%~ML#T`g7k`IuKNo;#x}IxNUt;nVx8 z+Z*1+c~3t4xP*a$F~QTtF~sBe)5|9(H5mvrJPdQ>IkB&K&AZ*3pZtx_JraK z%31#>oi2ar$MoOOc&5wiFA*WOwex=7y!d&lUiqwvtA6ecnr&NpsiLOCP4?yWo{xs_ z@{ayk!an`Led(_Z`wl5b7j4=8XHk%y>hn*$)63h+vx{TTeEt0|YxmKKGj$VzTK<8@T@!In~*bC zpULOiaWW*V=lUuBI7gCOaQi2*@&%b%4;CIP?)-Nv`tynH{xXcm7YoU0UQb)M_tvBA zdFdgOcl*4Qn6g}^yy1K-Q|95qtI0A~KWM3@{Q2y%Gxfl0n`6!u1y@-EqfaHDdb=tl z&RqWsd%4E-i8`m2)woxNw@5et@Q^+-(Xv6^f^pK_=6uIP-EGe^?p#fai~At>OZ@TX ui`>^*r{|^ksJ)$>^y8h>QN}+z>liG|53hDJV+jLB7K5j&pUXO@geCyUMu9N^ diff --git a/static/user_iocn/userNav_0211.png b/static/user_iocn/userNav_0211.png new file mode 100644 index 0000000000000000000000000000000000000000..0259ebddc2ca1f6c01c538c004cf2b7edd0b48e8 GIT binary patch literal 648 zcmeAS@N?(olHy`uVBq!ia0vp^dLYcf3?viMZ?giaMFBn`u0Z<#;07#uWlca=nwA9l z1v5Oq^k(C^iGp$m{)lrw)MEW{tToTi&gkBa%~ML#T`g7k`IuKNo;#x}IxNUt;nVx8 z+Z*1+c~3t4xP*a$F~QTtF~sBe)5|9(H5mvrJPdQ>IkB&K&AZ*3pZtx_JraK z%31#>oi2ar$MoOOc&5wiFA*WOwex=7y!d&lUiqwvtA6ecnr&NpsiLOCP4?yWo{xs_ z@{ayk!an`Led(_Z`wl5b7j4=8XHk%y>hn*$)63h+vx{TTeEt0|YxmKKGj$VzTK<8@T@!In~*bC zpULOiaWW*V=lUuBI7gCOaQi2*@&%b%4;CIP?)-Nv`tynH{xXcm7YoU0UQb)M_tvBA zdFdgOcl*4Qn6g}^yy1K-Q|95qtI0A~KWM3@{Q2y%Gxfl0n`6!u1y@-EqfaHDdb=tl z&RqWsd%4E-i8`m2)woxNw@5et@Q^+-(Xv6^f^pK_=6uIP-EGe^?p#fai~At>OZ@TX ui`>^*r{|^ksJ)$>^y8h>QN}+z>liG|53hDJV+jLB7K5j&pUXO@geCyUMu9N^ literal 0 HcmV?d00001 diff --git a/static/user_iocn/userTool_08.png b/static/user_iocn/userTool_08.png new file mode 100644 index 0000000000000000000000000000000000000000..69a0bfdcdef24fba900769be39ea95a764fc2cbf GIT binary patch literal 6883 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