From 2dbe50d4f3cc8f205a912914b916a5b1e1a851c3 Mon Sep 17 00:00:00 2001 From: lzx_win <2602107437@qq.com> Date: Wed, 26 Mar 2025 20:50:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=9B=B8=E5=85=B3=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/home.js | 86 ++++++++ api/system/user.js | 31 +-- manifest.json | 3 +- otherPages/authentication/completed/index.scss | 161 ++++++++++++++ otherPages/authentication/completed/index.vue | 84 ++++++++ otherPages/authentication/examination/detail.vue | 109 ++++++++++ otherPages/authentication/list/index.vue | 4 +- otherPages/authentication/training/base.vue | 64 ++++++ otherPages/authentication/training/detail.scss | 174 +++++++++++++++ otherPages/authentication/training/detail.vue | 64 ++++++ otherPages/authentication/training/index.scss | 54 +++++ otherPages/authentication/training/index.vue | 40 ++++ otherPages/binding/components/y-card.vue | 49 ++++- otherPages/binding/list/index.vue | 95 +++++++-- otherPages/binding/partner/index.vue | 102 ++++++--- otherPages/binding/share/index.vue | 87 +++++++- otherPages/binding/withdrawal/index.vue | 125 ++++++----- otherPages/myOrdersManage/bond/index.vue | 13 +- otherPages/myOrdersManage/clock/detail.vue | 176 +++++++++++++++ otherPages/myOrdersManage/clock/index.scss | 50 +++++ otherPages/myOrdersManage/clock/index.vue | 149 +++++++++++++ otherPages/myOrdersManage/service/add.vue | 114 ++++++++++ otherPages/myOrdersManage/service/base.vue | 90 ++++++++ otherPages/myOrdersManage/service/detail.scss | 92 ++++++++ otherPages/myOrdersManage/service/detail.vue | 217 ++++++++++++++++++- otherPages/myOrdersManage/service/dog.vue | 101 +++++++++ otherPages/myOrdersManage/service/index.vue | 2 +- otherPages/orderTakingManage/create/index.css | 31 +-- otherPages/orderTakingManage/create/index.vue | 151 +++++++++++-- otherPages/userManage/record/index.scss | 18 +- otherPages/userManage/record/index.vue | 41 +++- otherPages/workbenchManage/bindUser/index.scss | 29 ++- otherPages/workbenchManage/bindUser/index.vue | 153 +++++++------ otherPages/workbenchManage/components/cardData.vue | 2 +- otherPages/workbenchManage/myLevel/index.scss | 236 +++++++++++---------- otherPages/workbenchManage/myLevel/index.vue | 117 +++++----- .../myUser/components/haveOrder.vue | 64 ++++-- otherPages/workbenchManage/myUser/index.scss | 16 +- otherPages/workbenchManage/myUser/index.vue | 121 ++++++----- .../workbenchManage/myWallet/components/myData.vue | 81 +++++++ otherPages/workbenchManage/myWallet/index.scss | 154 ++++++++++++++ otherPages/workbenchManage/myWallet/index.vue | 162 ++++++++++++++ package.json | 5 + pages.json | 55 +++++ pages/login/index.vue | 130 +++++++----- pages/userManage/index.vue | 8 +- pages/workbenchManage/components/modal.vue | 40 ++-- pages/workbenchManage/index.vue | 196 ++++++++++++----- project.config.json | 2 +- static/images/levelImage/bg1.png | Bin 0 -> 3954 bytes static/images/levelImage/bg2.png | Bin 0 -> 3762 bytes static/images/levelImage/bg3.png | Bin 0 -> 4688 bytes static/images/levelImage/gl.png | Bin 0 -> 611 bytes static/images/levelImage/jc.png | Bin 0 -> 1203 bytes static/images/levelImage/money.png | Bin 0 -> 1059 bytes static/images/ydd/add_photo.png | Bin 0 -> 5032 bytes static/images/ydd/approved.png | Bin 0 -> 25642 bytes static/images/ydd/examine.png | Bin 0 -> 25966 bytes static/images/ydd/photograph.png | Bin 0 -> 1423 bytes static/images/ydd/profile.png | Bin 0 -> 5062 bytes static/images/ydd/unqualified.png | Bin 0 -> 25435 bytes style/common.scss | 6 + utils/auth.js | 28 +-- utils/getUrl.js | 16 +- utils/request.js | 137 ++++++------ 65 files changed, 3599 insertions(+), 736 deletions(-) create mode 100644 api/home.js create mode 100644 otherPages/authentication/completed/index.scss create mode 100644 otherPages/authentication/completed/index.vue create mode 100644 otherPages/authentication/examination/detail.vue create mode 100644 otherPages/authentication/training/base.vue create mode 100644 otherPages/authentication/training/detail.scss create mode 100644 otherPages/authentication/training/detail.vue create mode 100644 otherPages/authentication/training/index.scss create mode 100644 otherPages/authentication/training/index.vue create mode 100644 otherPages/myOrdersManage/clock/detail.vue create mode 100644 otherPages/myOrdersManage/clock/index.scss create mode 100644 otherPages/myOrdersManage/clock/index.vue create mode 100644 otherPages/myOrdersManage/service/add.vue create mode 100644 otherPages/myOrdersManage/service/base.vue create mode 100644 otherPages/myOrdersManage/service/detail.scss create mode 100644 otherPages/myOrdersManage/service/dog.vue create mode 100644 otherPages/workbenchManage/myWallet/components/myData.vue create mode 100644 otherPages/workbenchManage/myWallet/index.scss create mode 100644 otherPages/workbenchManage/myWallet/index.vue create mode 100644 package.json create mode 100644 static/images/levelImage/bg1.png create mode 100644 static/images/levelImage/bg2.png create mode 100644 static/images/levelImage/bg3.png create mode 100644 static/images/levelImage/gl.png create mode 100644 static/images/levelImage/jc.png create mode 100644 static/images/levelImage/money.png create mode 100644 static/images/ydd/add_photo.png create mode 100644 static/images/ydd/approved.png create mode 100644 static/images/ydd/examine.png create mode 100644 static/images/ydd/photograph.png create mode 100644 static/images/ydd/profile.png create mode 100644 static/images/ydd/unqualified.png diff --git a/api/home.js b/api/home.js new file mode 100644 index 0000000..6f37af5 --- /dev/null +++ b/api/home.js @@ -0,0 +1,86 @@ +import request from '@/utils/request' + +export const banner = (data) => { + return request({ + url: '/applet/workIn/bannerList', + headers: { + isToken: false + }, + method: 'get', + data + }) +} +export const joinHh = (data) => { + return request({ + url: '/applet/workIn/joinHh', + headers: { + isToken: true + }, + method: 'post', + data + }) +} +export const joiBcs = (data) => { + return request({ + url: "/applet/workIn/joiBcs", + headers: { + isToken: true + }, + method: 'post', + data + }) +} +export const indexConfig = () => { + return request({ + url: "/applet/workIn/indexConfig", + headers: { + isToken: false + }, + method: "get" + }) +} +export const indexConfigIco = () => { + return request({ + url: "/applet/workIn/indexConfigIco", + headers: { + isToken: false + }, + method: "get" + }) +} +export const successList = () => { + return request({ + url: "/applet/workIn/list", + headers: { + isToken: false + }, + method: "get" + }) +} +export const getbaseInfo = (appUserId) => { + return request({ + url: `/applet/login/getAppletUserInfo/${appUserId}`, + headers: { + isToken: true + }, + method: "get" + }) +} +export const binBaseInfo = (appUserId) => { + return request({ + url: `/applet/workOut/hhrInfo/${appUserId}`, + headers: { + isToken: true + }, + method: "get" + }) +} +export const bindCode = (appUserId) => { + return request({ + url: `/applet/workOut/hhrCode/${appUserId}`, + headers: { + isToken: true + }, + method: "get" + }) +} \ No newline at end of file diff --git a/api/system/user.js b/api/system/user.js index 497b4d3..abd00a6 100644 --- a/api/system/user.js +++ b/api/system/user.js @@ -1,31 +1,38 @@ import request from '@/utils/request' // 个人中心信息 -export function getPersonalInfo(){ +export function getPersonalInfo() { return request({ - headers:{ "isToken":true}, + headers: { + "isToken": true + }, url: "/h5/companion/staff/getStaffInfo", method: 'get' }) } //获取openId -export function getOpenId(code){ +export function getOpenId(code) { return request({ - url: `/no-auth/wechat/getOpenId?code=${code}&sourceType=1`, - method: 'get' + url: `/no-auth/wechat/getOpenId?code=${code}&sourceType=1`, + method: 'get' }) } //获取手机号 -export function getPhoneNumber(data){ +export function getPhoneNumber(data) { return request({ - url: `/no-auth/wechat/getPhoneNumber`, - method: 'post', - data + url: `/applet/login/bindPhone`, + method: 'post', + data }) } - - - +// 微信授权登录 +export const wxLogin = (data) => { + return request({ + url: `/applet/login/wechatLogin`, + method: 'post', + data + }) +} \ No newline at end of file diff --git a/manifest.json b/manifest.json index 5fdfb28..0ce331e 100644 --- a/manifest.json +++ b/manifest.json @@ -1,6 +1,6 @@ { "name" : "uni-vuu3", - "appid" : "", + "appid" : "__UNI__08423D1", "description" : "", "versionName" : "1.0.0", "versionCode" : "100", @@ -49,7 +49,6 @@ "quickapp" : {}, /* 快应用特有相关 */ "mp-weixin" : { - /* 小程序特有相关 */ "appid" : "wx01f0f43759922fda", "setting" : { "urlCheck" : false, diff --git a/otherPages/authentication/completed/index.scss b/otherPages/authentication/completed/index.scss new file mode 100644 index 0000000..9799fde --- /dev/null +++ b/otherPages/authentication/completed/index.scss @@ -0,0 +1,161 @@ +.bt120 { + margin-bottom: 120rpx; + width: 716rpx; + box-sizing: border-box; + } + + .footer-btn { + width: 100vw; + height: 144rpx; + background-color: #fff; + display: flex; + justify-content: center; + position: fixed; + bottom: 0; + left: 0; + align-items: center; + + .btn { + font-size: 30rpx; + color: #fff; + display: flex; + justify-content: center; + align-items: center; + width: 574rpx; + height: 94rpx; + border-radius: 94rpx; + background-color: #FFBF60; + } + } + + .type { + width: 190rpx; + margin-bottom: 74rpx; + } + + .form { + padding: 40rpx 32rpx; + box-sizing: border-box; + width: 716rpx; + } + + .title { + &::before { + content: ""; + display: block; + width: 9rpx; + height: 33rpx; + background-color: #FFBF60; + margin-right: 7rpx; + } + } + + .mb6 { + margin-bottom: 6rpx; + } + + .containers { + position: relative; + .neir { + padding: 47rpx 27rpx 36rpx 27rpx; + border-radius: 16rpx; + box-sizing: border-box; + width: 716rpx; + + .steps { + .line { + width: 163rpx; + height: 3rpx; + background-color: #BDBDBD; + margin-bottom: 30rpx; + } + + .num { + width: 50rpx; + height: 50rpx; + background-color: #FFBF60; + border-radius: 50%; + } + + } + } + + + .mainBg { + width: 100vw; + height: 442rpx; + background-image: linear-gradient(to bottom, #FFBF60, #f5f5f5); + } + + .content { + top: 0; + left: 0; + padding: 16rpx; + + .logo { + width: 194rpx; + height: 70rpx; + } + + .renz { + + image { + width: 26rpx; + height: 26rpx; + } + } + } + } + + .content_{ + width: 675rpx; + height: auto; + background-color: pink; + position: absolute; + top: 410rpx; + left: 15rpx; + padding: 1% 3%; + + .top{ + width: 625rpx; + height: 132rpx; + background-color: #FFFCF1; + padding: 16rpx 26rpx; + font-size: 28rpx; + + .img image{ + width: 40rpx; + height: 40rpx; + border-radius: 100%; + background-color: red; + margin:3rpx 10rpx 0 0; + } + + .text{ + width: 40rpx; + height: 40rpx; + border: 1rpx solid gray; + border-radius: 100%; + // background-color: red; + margin:3rpx 10rpx 0 0; + display: grid; + place-items: center; + } + + .veo{ + justify-content: space-between; + + .veo_ video{ + width: 100rpx; + height: 150rpx; + background-color: red; + } + } + + + } + } + + .level{ + display: flex; + } \ No newline at end of file diff --git a/otherPages/authentication/completed/index.vue b/otherPages/authentication/completed/index.vue new file mode 100644 index 0000000..6cc6f01 --- /dev/null +++ b/otherPages/authentication/completed/index.vue @@ -0,0 +1,84 @@ + + + + + \ No newline at end of file diff --git a/otherPages/authentication/examination/detail.vue b/otherPages/authentication/examination/detail.vue new file mode 100644 index 0000000..272d5f6 --- /dev/null +++ b/otherPages/authentication/examination/detail.vue @@ -0,0 +1,109 @@ + + + + + \ No newline at end of file diff --git a/otherPages/myOrdersManage/clock/index.scss b/otherPages/myOrdersManage/clock/index.scss new file mode 100644 index 0000000..88e3d33 --- /dev/null +++ b/otherPages/myOrdersManage/clock/index.scss @@ -0,0 +1,50 @@ +.container{ + width: 100vw; + height: 103rpx; + background-color: #FFFAF2; + padding: 25rpx 250rpx; +} + +.box{ + width: 100vw; + height: auto; + padding: 20rpx; + position: absolute; + + .top{ + width: 710rpx; + height: auto; + background-color: #fff; + padding: 0 20rpx 20rpx 20rpx; + } + + .buttom{ + width: 750rpx; + height: 163rpx; + background-color: #fff; + position: relative; + bottom: 32rpx; + left: -20rpx; + padding: 40rpx 85rpx; + + .buttom-item{ + width: 594rpx; + height: 94rpx; + background-color: #FFBF60; + align-items: center; + justify-content: center; + } + } +} + +.box-size{ + box-sizing: border-box; +} + +.level{ + display: flex; +} + +.jus-center{ + justify-content: center; +} \ No newline at end of file diff --git a/otherPages/myOrdersManage/clock/index.vue b/otherPages/myOrdersManage/clock/index.vue new file mode 100644 index 0000000..4bf104c --- /dev/null +++ b/otherPages/myOrdersManage/clock/index.vue @@ -0,0 +1,149 @@ + + + + + \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/add.vue b/otherPages/myOrdersManage/service/add.vue new file mode 100644 index 0000000..234ed39 --- /dev/null +++ b/otherPages/myOrdersManage/service/add.vue @@ -0,0 +1,114 @@ + + + + + \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/base.vue b/otherPages/myOrdersManage/service/base.vue new file mode 100644 index 0000000..39035a3 --- /dev/null +++ b/otherPages/myOrdersManage/service/base.vue @@ -0,0 +1,90 @@ + + + + + \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/detail.scss b/otherPages/myOrdersManage/service/detail.scss new file mode 100644 index 0000000..fa2426d --- /dev/null +++ b/otherPages/myOrdersManage/service/detail.scss @@ -0,0 +1,92 @@ +.box { + width: 100vw; + height: 100vh; + padding: 0 20rpx; + position: absolute; + + .top{ + width: 710rpx; + height: auto; + background-color: #fff; + padding: 0 23rpx 53rpx 23rpx; + } + + .img image{ + width: 173rpx; + height: 230rpx; + background-color: red; + } + + .notes{ + width: 681rpx; + height: auto; + padding: 4rpx 10rpx; + border: 1rpx solid #999999; + } + + .input_{ + border-bottom: 1px solid #000; + text-align: center; + } + + .line{ + width: 691rpx; + height: 1rpx; + background-color: #707070; + opacity: 0.14; + margin: 35rpx 0 35rpx -13rpx; + } + + .buttom{ + width: 750rpx; + height: 163rpx; + background-color: #fff; + position: relative; + bottom: 32rpx; + left: -20rpx; + padding: 40rpx 85rpx; + + .buttom-item{ + width: 594rpx; + height: 94rpx; + background-color: #FFBF60; + align-items: center; + justify-content: center; + } + } + + .buttom_{ + width: 750rpx; + height: 163rpx; + background-color: #fff; + padding: 40rpx 40rpx; + position: relative; + bottom: 32rpx; + left: -20rpx; + justify-content: space-between; + + .buttom_item{ + width: 307rpx; + height: 94rpx; + background-color: #FFBF60; + align-items: center; + justify-content: center; + } + } +} + +.ml--15{ + margin-left: -15rpx; +} + +.color-A55{ + color: #A55822; +} + +.box-size { + box-sizing: border-box; +} + +.level{ + display: flex; +} \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/detail.vue b/otherPages/myOrdersManage/service/detail.vue index e0e7377..74fcab6 100644 --- a/otherPages/myOrdersManage/service/detail.vue +++ b/otherPages/myOrdersManage/service/detail.vue @@ -1,13 +1,226 @@ \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/dog.vue b/otherPages/myOrdersManage/service/dog.vue new file mode 100644 index 0000000..5ef55ce --- /dev/null +++ b/otherPages/myOrdersManage/service/dog.vue @@ -0,0 +1,101 @@ + + + + + \ No newline at end of file diff --git a/otherPages/myOrdersManage/service/index.vue b/otherPages/myOrdersManage/service/index.vue index c64dfe5..a5bed2d 100644 --- a/otherPages/myOrdersManage/service/index.vue +++ b/otherPages/myOrdersManage/service/index.vue @@ -11,7 +11,7 @@ - + diff --git a/otherPages/orderTakingManage/create/index.css b/otherPages/orderTakingManage/create/index.css index 5399ec9..0d08d73 100644 --- a/otherPages/orderTakingManage/create/index.css +++ b/otherPages/orderTakingManage/create/index.css @@ -21,7 +21,7 @@ height: 165rpx; /* background-color: pink; */ color: #7D8196; - font-size: 28rpx; + font-size: 25rpx; margin: 1% 39%; display: grid; jplace-items: center; @@ -61,35 +61,6 @@ /* color: #AAAAAA; */ } -/* .information_item { - width: 100vw; - height: 550rpx; - font-size: 30rpx; - display: grid; - justify-content: space-around; - } */ - -/* .item_ { - width: auto; - height: 40rpx; - } */ - -/* .name { - width: 100vw; - height: 40rpx; - justify-content: space-between; - } */ -/* .name input { - width: 50rpx; - background-color: #FFFFFF; - } */ - -/* .sex { - width: 200rpx; - height: 40rpx; - background-color: #7D8196; - } */ - .bottom { width: 100vw; height: 120rpx; diff --git a/otherPages/orderTakingManage/create/index.vue b/otherPages/orderTakingManage/create/index.vue index bbea912..65bba29 100644 --- a/otherPages/orderTakingManage/create/index.vue +++ b/otherPages/orderTakingManage/create/index.vue @@ -6,13 +6,13 @@ 宠物头像 - + 点击更换头像 - + @@ -22,14 +22,13 @@ - - + 删除 @@ -56,15 +55,23 @@ placeholder: "请输入宠物名字", }, { - type: "input", + type: "select", label: "类别", - key: "idCard", - placeholder: "请输入您的真实身份证号", + key: "category", + placeholder: "请选择", + options: [{ + name: "猫咪" + }, + { + name: "狗狗" + } + ] }, { - type: "radio", + type: "select", label: "性别", key: "sex", + placeholder: "请选择", options: [{ name: "男生" }, @@ -74,24 +81,128 @@ ] }, { - type: "input", + type: "select", label: "品种", - key: "gender", - placeholder: "请输入您的年龄", + key: "variety", + placeholder: "请选择", + options: [{ + name: "男生" + }, + { + name: "女生" + } + ] }, { - type: "input", + type: "select", label: "体重", - key: "shij", - placeholder: "请输入您的养宠年限", - unit: "年" + key: "variety", + placeholder: "请选择", + options: [{ + name: "小型(<10KG)" + }, + { + name: "中型(10~20KG)" + }, + { + name: "大型(20KG以上)" + } + ] + } + ] + }) + + const nostate = reactive({ + list: [{ + type: "select", + label: "生日", + key: "birthday", + placeholder: "请选择", + options: [{ + name: "猫咪" + }, + { + name: "狗狗" + } + ] + }, + { + type: "input", + label: "性格", + key: "character ", + placeholder: "请描述", }, + { + type: "select", + label: "疫苗", + key: "sex", + placeholder: "请选择", + options: [{ + name: "每年都免疫" + }, + { + name: "有免疫史" + }, + { + name: "未免疫" + } + ] + }, + { + type: "select", + label: "驱虫", + key: "variety", + placeholder: "请选择", + options: [{ + name: "未驱虫" + }, + { + name: "定期驱虫" + }, + { + name: "有驱虫史" + } + ] + }, + { + type: "select", + label: "绝育", + key: "variety", + placeholder: "请选择", + options: [{ + name: "未绝育" + }, + { + name: "已绝育" + } + ] + }, + { + type: "select", + label: "健康", + key: "variety", + placeholder: "请选择(多选)", + options: [{ + name: "小型(<10KG)" + }, + { + name: "中型(10~20KG)" + }, + { + name: "大型(20KG以上)" + } + ] + } ] }) const handleSubmit = (val) => { console.log("获取参数", val) } + + const nohandleSubmit = (val) => { + console.log("获取参数", val) + } \ No newline at end of file diff --git a/otherPages/workbenchManage/components/cardData.vue b/otherPages/workbenchManage/components/cardData.vue index ffe1369..e313860 100644 --- a/otherPages/workbenchManage/components/cardData.vue +++ b/otherPages/workbenchManage/components/cardData.vue @@ -2,7 +2,7 @@ - + {{item.title}} {{item.num}} diff --git a/otherPages/workbenchManage/myLevel/index.scss b/otherPages/workbenchManage/myLevel/index.scss index e3af24d..6ea6e0d 100644 --- a/otherPages/workbenchManage/myLevel/index.scss +++ b/otherPages/workbenchManage/myLevel/index.scss @@ -1,119 +1,121 @@ -.bind-user { - // height: 100vh; - height: 315rpx; - background: linear-gradient(360deg, #ffffff 0%, #ffbf60 99%); - &-header { - padding: 60rpx 20rpx 0; - color: #ffffff; - } - - .header-name { - margin-left: 20rpx; - } - - .header-card { - padding: 20rpx; - border-radius: 20rpx; - font-size: 28rpx; - } - - .card-left { - background: #78f7eb; - } - - .card-right { - background: #de8585; - } - - &-foot { - width: 100%; - height: 180rpx; - background-color: #ffffff; - position: fixed; - bottom: 0; - .tab-bar { - margin-bottom: 60rpx; - .activeColor { - color: #000; - } - } - } -} - -.bind-main { - padding: 0 40rpx; - box-sizing: border-box; - height: 100vh; -} - -.my-data { +.bind-user { + // height: 100vh; + height: 453rpx; + background: linear-gradient(360deg, #ffffff 0%, #ffbf60 99%); + &-header { + padding: 60rpx 20rpx 0; + color: #ffffff; + } + + .header-name { + margin-left: 20rpx; + .label1 { + background-color: #ffa848; + border-radius: 20rpx; + font-size: 22rpx; + border: 1px solid #ffffff; + padding: 0 10rpx; + box-sizing: border-box; + } + } + + .header-card { + padding: 20rpx; + border-radius: 20rpx; + font-size: 28rpx; + } + + .card-left { + background: #78f7eb; + } + + .card-right { + background: #de8585; + } + + &-foot { + width: 100%; + height: 180rpx; + background-color: #ffffff; + position: fixed; + bottom: 0; + .tab-bar { + margin-bottom: 60rpx; + .activeColor { + color: #000; + } + } + } +} + +.bind-main { + padding: 0 20rpx; + box-sizing: border-box; + height: 100vh; +} + +.my-data { + padding: 0 40rpx; + box-sizing: border-box; + background-color: #ffffff; + margin-bottom: 40rpx; + border-radius: 20rpx; + &-mounth { + padding: 40rpx 0; + box-sizing: border-box; + background-color: #ffffff; + } + &-total { + padding: 40rpx 0; + box-sizing: border-box; + background-color: #ffffff; + } +} +.bottom { + height: 546rpx; + background-color: #fff4e6; + padding: 3%; + font-size: 22rpx; + box-sizing: border-box; + .line1 { + position: relative; + margin-bottom: 50rpx; + &::before { + position: absolute; + top: 25rpx; + left: 0; + content: ''; + width: 660rpx; + height: 1rpx; + background-color: #f5f5f7; + } + } + .form_item { + font-size: 22rpx; + color: #a55822; + position: relative; + margin-left: 10rpx; + &::before { + position: absolute; + top: 5rpx; + left: -18rpx; + content: '*'; + } + } +} +.my-level { padding: 0 40rpx; - box-sizing: border-box; background-color: #ffffff; - margin-bottom: 40rpx; - border-radius: 20rpx; &-mounth { - padding: 40rpx 0; - box-sizing: border-box; - background-color: #ffffff; - } - &-total { - padding: 40rpx 0; - box-sizing: border-box; - background-color: #ffffff; - } -} - -.bottom { - height: 546rpx; - background-color: #fff4e6; - padding: 3%; - font-size: 22rpx; - box-sizing: border-box; - - .line1 { - position: relative; - margin-bottom: 50rpx; - - &::before { - position: absolute; - top: 25rpx; - left: 0; - content: ''; - width: 660rpx; - height: 1rpx; - background-color: #f5f5f7; - } - } - - .form_item { - font-size: 22rpx; - color: #a55822; - position: relative; - margin-left: 10rpx; - - &::before { - position: absolute; - top: 5rpx; - left: -18rpx; - content: '*'; - } - } -} - -.my-level{ - padding: 0 40rpx; - box-sizing: border-box; - background-color: #ffffff; - margin-bottom: 40rpx; - border-radius: 20rpx; - &-need{ - padding: 40rpx 0; - box-sizing: border-box; - background-color: #ffffff; - } - &-content{ - - .data{ - - } - } + box-sizing: border-box; + background-color: #ffffff; + margin-bottom: 40rpx; + border-radius: 20rpx; + &-need { + padding: 40rpx 0; + box-sizing: border-box; + background-color: #ffffff; + } + &-content { + .data { + } + } } diff --git a/otherPages/workbenchManage/myLevel/index.vue b/otherPages/workbenchManage/myLevel/index.vue index 5348ab6..977b51f 100644 --- a/otherPages/workbenchManage/myLevel/index.vue +++ b/otherPages/workbenchManage/myLevel/index.vue @@ -1,28 +1,36 @@ \ No newline at end of file diff --git a/otherPages/workbenchManage/myUser/components/haveOrder.vue b/otherPages/workbenchManage/myUser/components/haveOrder.vue index 1cc4525..887d696 100644 --- a/otherPages/workbenchManage/myUser/components/haveOrder.vue +++ b/otherPages/workbenchManage/myUser/components/haveOrder.vue @@ -8,7 +8,8 @@ {{ item.isShow == true ? '收起' : '展开' }} - + @@ -46,26 +47,65 @@ + \ No newline at end of file diff --git a/otherPages/workbenchManage/myWallet/components/myData.vue b/otherPages/workbenchManage/myWallet/components/myData.vue new file mode 100644 index 0000000..db0f30b --- /dev/null +++ b/otherPages/workbenchManage/myWallet/components/myData.vue @@ -0,0 +1,81 @@ + + + + + \ No newline at end of file diff --git a/otherPages/workbenchManage/myWallet/index.scss b/otherPages/workbenchManage/myWallet/index.scss new file mode 100644 index 0000000..304583f --- /dev/null +++ b/otherPages/workbenchManage/myWallet/index.scss @@ -0,0 +1,154 @@ +.bind-user { + &-header { + height: 315rpx; + padding: 60rpx 20rpx 0; + background: linear-gradient(360deg, #FFFFFF 0%, #FFBF60 99%); + color: #FFFFFF; + } + + .header-name { + margin-left: 20rpx; + .label1{ + width: 120rpx; + height: 28rpx; + line-height: 28rpx; + text-align: center; + background-color: #ffa848; + border-radius: 20rpx; + font-size: 22rpx; + border: 1px solid #ffffff; + margin-bottom: 10rpx; + } + } + + .header-card { + padding: 20rpx; + border-radius: 20rpx; + font-size: 28rpx; + } + + .card-left { + background: #78f7eb; + } + + .card-right { + background: #de8585; + } +} + +.bind-main { + position: absolute; + top: 180rpx; + width: 100vw; + &-content{ + padding: 30rpx 20rpx; + box-sizing: border-box; + + .top { + // height: 259rpx; + background-color: #FFF6EC; + padding: 3% 4%; + + .account { + display: flex; + justify-content: space-between; + color: #000000; + font-size: 30rpx; + + .text { + color: #A55822; + display: flex; + } + + .line { + position: relative; + padding: 0 0 0 20rpx; + &::before { + position: absolute; + top: 7rpx; + left: 10rpx; + content: ""; + width: 3rpx; + height: 30rpx; + border-radius: 9rpx; + background-color: #A55822; + } + } + + } + + .money { + width: auto; + height: 60rpx; + margin: 20rpx 0; + color: #FF2A2A; + font-size: 42rpx; + align-items: center; + + .text1 { + font-size: 25rpx !important; + color: #FF2A2A !important; + margin-right: 10rpx; + } + } + + .line1 { + position: relative; + + &::before { + position: absolute; + top: -10rpx; + left: 0; + content: ""; + width: 660rpx; + height: 1rpx; + background-color: #FFBF60; + } + } + + .divide { + color: #A55822; + font-size: 30rpx; + margin-top: 50rpx; + display: flex; + justify-content: space-between; + } + + } + + + + + + + .my-data { + padding: 0 40rpx; + box-sizing: border-box; + background-color: #ffffff; + margin-bottom: 40rpx; + border-radius: 20rpx; + + &-total { + padding: 40rpx 0; + box-sizing: border-box; + background-color: #ffffff; + } + } + + + + + + + + + } + // &-list{ + // background: #FFFFFF; + // min-height: 900rpx; + // border-radius: 30rpx; + // padding: 0 0 30rpx 0; + // box-sizing: border-box; + // } +} + diff --git a/otherPages/workbenchManage/myWallet/index.vue b/otherPages/workbenchManage/myWallet/index.vue new file mode 100644 index 0000000..b6591d9 --- /dev/null +++ b/otherPages/workbenchManage/myWallet/index.vue @@ -0,0 +1,162 @@ + + + + + \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..8155ec5 --- /dev/null +++ b/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "dayjs": "^1.11.13" + } +} diff --git a/pages.json b/pages.json index 30212ab..b9749f3 100644 --- a/pages.json +++ b/pages.json @@ -70,6 +70,11 @@ "style": { "navigationBarTitleText": "伴宠师认证" } + }, { + "path": "examination/detail", + "style": { + "navigationBarTitleText": "伴宠师认证" + } }, { "path": "serve/index", "style": { @@ -90,6 +95,26 @@ "style": { "navigationBarTitleText": "接单地址" } + }, { + "path": "completed/index", + "style": { + "navigationBarTitleText": "伴宠师认证" + } + }, { + "path": "training/index", + "style": { + "navigationBarTitleText": "培训考核" + } + }, { + "path": "training/detail", + "style": { + "navigationBarTitleText": "伴宠师认证" + } + }, { + "path": "training/base", + "style": { + "navigationBarTitleText": "伴宠师认证" + } }] }, { @@ -222,6 +247,31 @@ "style": { "navigationBarTitleText": "服务档案" } + }, { + "path": "service/base", + "style": { + "navigationBarTitleText": "服务档案" + } + }, { + "path": "service/add", + "style": { + "navigationBarTitleText": "服务档案" + } + }, { + "path": "service/dog", + "style": { + "navigationBarTitleText": "服务档案" + } + }, { + "path": "clock/index", + "style": { + "navigationBarTitleText": "打卡" + } + }, { + "path": "clock/detail", + "style": { + "navigationBarTitleText": "打卡记录" + } } ] }, @@ -245,6 +295,11 @@ "style": { "navigationBarTitleText": "我的等级" } + }, { + "path": "myWallet/index", + "style": { + "navigationBarTitleText": "我的钱包" + } }, //喂养员工作台 { diff --git a/pages/login/index.vue b/pages/login/index.vue index 314c972..e7c964a 100644 --- a/pages/login/index.vue +++ b/pages/login/index.vue @@ -6,6 +6,8 @@ + @@ -36,7 +38,8 @@ import { getOpenId, getPersonalInfo, - getPhoneNumber + getPhoneNumber, + wxLogin } from "../../api/system/user"; import { ref @@ -45,60 +48,91 @@ const value = ref(false) - - // 获取openid - if (!getOpenIdKey() && !getToken()) { + // 微信授权登陆 + const loginWx = () => { uni.login({ - provider: 'weixin', - success: async (res) => { - const { - code, - data - } = await getOpenId(res.code) - if (code === 200 && data) { - let resData = JSON.parse(data) - setOpenIdKey(resData.openId) - } - }, - fail: function(error) { - // 授权失败处理 - uni.showToast('授权失败,请授权后再试') + success: (res) => { + const code = res.code + console.log(code) + wxLogin({ + code + }).then(res => { + if (res.code === 200) { + uni.setStorageSync("token", res.data.token) + uni.setStorageSync("baseInfo", JSON.stringify(res.data.userInfo)) + uni.navigateBack({ + delta: 1 + }) + } + }) } - }); + }) } + + + + // 获取openid + // if (!getOpenIdKey() && !getToken()) { + // uni.login({ + // provider: 'weixin', + // success: async (res) => { + // const { + // code, + // data + // } = await getOpenId(res.code) + // if (code === 200 && data) { + // let resData = JSON.parse(data) + // setOpenIdKey(resData.openId) + // } + // }, + // fail: function(error) { + // // 授权失败处理 + // uni.showToast('授权失败,请授权后再试') + // } + // }); + // } // 获取token const onGetPhoneNumber = async (e) => { - if (e.detail.errMsg === "getPhoneNumber:ok") { - if (getOpenIdKey()) { - try { - const { - data - } = await getPhoneNumber({ - "openId": getOpenIdKey(), - "code": e.detail.code, - sourceType: 1 - }) - setToken(data.token) - setIsLogin(true) - await getUserInfo() - } catch (e) { - uni.showToast({ - icon: 'error', - title: '获取手机号失败' - }) - } - } - } + // uni.login({ + // success: res => { + // console.log("====>", res) + // } + // }) + console.log(e) + getPhoneNumber({ + phoneCode: e.detail.code + }) + // if (e.detail.errMsg === "getPhoneNumber:ok") { + // if (getOpenIdKey()) { + // try { + // const { + // data + // } = await getPhoneNumber({ + // "openId": getOpenIdKey(), + // "code": e.detail.code, + // sourceType: 1 + // }) + // setToken(data.token) + // setIsLogin(true) + // await getUserInfo() + // } catch (e) { + // uni.showToast({ + // icon: 'error', + // title: '获取手机号失败' + // }) + // } + // } + // } } - // h获取用户信息 - const getUserInfo = async () => { - const { - data - } = await getPersonalInfo() - setStorage('userInfo', data) - uni.navigateBack() - } + // // h获取用户信息 + // const getUserInfo = async () => { + // const { + // data + // } = await getPersonalInfo() + // setStorage('userInfo', data) + // uni.navigateBack() + // }