From 50b0f1787720062df58bf9be64b0aa8403955765 Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期五, 25 八月 2023 18:27:13 +0800
Subject: [PATCH] h5
---
h5_standard/src/views/workOrder/reportingForWork.vue | 6
minipro_standard/manifest.json | 2
h5_standard/src/views/index.vue | 2
h5_standard/src/router/module/index.ts | 9
h5_standard/src/views/plannedProgress/details.vue | 57 ++
minipro_standard/pages/index/index.vue | 79 +---
h5_standard/src/apis/index.ts | 20 +
minipro_standard/pages.json | 139 ++++--
minipro_standard/pages/updateMailbox/updateMailbox.vue | 130 +++++++
h5_standard/.env.production | 4
h5_standard/src/views/tabPage/my.vue | 16
h5_standard/public/redirect.html | 2
h5_standard/src/views/workOrder/workOrderReporting.vue | 4
h5_standard/src/views/LogInAgain.vue | 2
h5_standard/src/views/children.vue | 2
minipro_standard/main.js | 4
minipro_standard/pages/updatePhone/updatePhone.vue | 127 +++++++
h5_standard/.env | 2
minipro_standard/App.vue | 1
minipro_standard/pages/mine/mine.vue | 35 +
h5_standard/src/utils/request.ts | 5
h5_standard/src/store/index.ts | 2
h5_standard/src/views/appletLogin.vue | 191 ++++++++++
minipro_standard/pages/personal/personal.vue | 89 ++++
h5_standard/src/utils/utils.ts | 2
minipro_standard/pages/changePassword/changePassword.vue | 128 +++++++
26 files changed, 910 insertions(+), 150 deletions(-)
diff --git a/h5_standard/.env b/h5_standard/.env
index 4e27e94..3a04738 100644
--- a/h5_standard/.env
+++ b/h5_standard/.env
@@ -1,5 +1,5 @@
# 鎺ュ彛鍓嶇紑 _api
-VUE_APP_API_PREFIX = '/doumeeplant_api'
+VUE_APP_API_PREFIX = '/doumeeplant'
# 涓婁笅鏂囪矾寰� --> 榛樿./锛堝彲浠ラ儴缃插湪鏈嶅姟鍣ㄤ换鎰忚矾寰勶級
VUE_APP_CONTEXT = './'
diff --git a/h5_standard/.env.production b/h5_standard/.env.production
index af03e19..c874a31 100644
--- a/h5_standard/.env.production
+++ b/h5_standard/.env.production
@@ -18,7 +18,7 @@
# VUE_APP_API = 'https://hsky.doumee.com/doumeeplant_api/'
# 娴嬭瘯
-VUE_APP_API = 'https://dmtest.ahapp.net/doumeeplant_api/'
+# VUE_APP_API = 'https://dmtest.ahapp.net/doumeeplant_api/'
# 婕旂ず
-# VUE_APP_API = 'https://www.mes.red/doumeeplant/'
+VUE_APP_API = 'https://www.mes.red/doumeeplant/'
diff --git a/h5_standard/public/redirect.html b/h5_standard/public/redirect.html
index 4da729b..d5db9b2 100644
--- a/h5_standard/public/redirect.html
+++ b/h5_standard/public/redirect.html
@@ -10,10 +10,12 @@
if (url.indexOf('?code') === -1) {
let query = url.split('?')[1]
let tempUrl = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx6ea339a336f26380&redirect_url=https://www.mes.red/h5/redirect.html&response_type=code&scope=snsapi_base&state=#wechat_redirect`
+ // let tempUrl = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx6ea339a336f26380&redirect_url=https://dmtest.ahapp.net/doumeeplant_h5/redirect.html&response_type=code&scope=snsapi_base&state=#wechat_redirect`
window.location.replace(tempUrl)
} else {
var code = url.substring(url.indexOf('?') + 6, url.indexOf('&'))
let href1 = `https://www.mes.red/h5/#/wxLogin?code=${code}`
+ // let href1 = `https://dmtest.ahapp.net/doumeeplant_h5/#/wxLogin?code=${code}`
window.location.replace(href1)
}
</script>
diff --git a/h5_standard/src/apis/index.ts b/h5_standard/src/apis/index.ts
index 9a34f2b..90d69b7 100644
--- a/h5_standard/src/apis/index.ts
+++ b/h5_standard/src/apis/index.ts
@@ -20,7 +20,16 @@
})
}
-// 寰俊绔櫥褰�
+// 寰俊灏忕▼搴忕櫥褰�
+export function wxProgramLogin(params: any): Promise<any> {
+ return httpRequest({
+ url: '/system/wxProgramLogin',
+ method: 'get',
+ params
+ })
+}
+
+// 寰俊鍏紬鍙风櫥褰�
export function wxAccountLogin(data: any): Promise<any> {
return httpRequest({
url: '/system/wxAccountLogin',
@@ -29,6 +38,15 @@
})
}
+// 寰俊閫�鍑虹櫥褰�
+export function wxLoginOut(data: any): Promise<any> {
+ return httpRequest({
+ url: '/system/wxLoginOut',
+ method: 'post',
+ data
+ })
+}
+
// 鑾峰彇浼佷笟id
export function getDingdingCorpId(companyId: any): Promise<any> {
return httpRequest({
diff --git a/h5_standard/src/router/module/index.ts b/h5_standard/src/router/module/index.ts
index 9c09218..af41af7 100644
--- a/h5_standard/src/router/module/index.ts
+++ b/h5_standard/src/router/module/index.ts
@@ -104,6 +104,15 @@
keepAlive: false
},
component: () => import('@/views/wxLogin.vue')
+ },
+ {
+ path: '/appletLogin',
+ name: 'appletLogin',
+ meta: {
+ title: 'DM浜戝伐鍘�',
+ keepAlive: false
+ },
+ component: () => import('@/views/appletLogin.vue')
}
]
diff --git a/h5_standard/src/store/index.ts b/h5_standard/src/store/index.ts
index 8842991..eac1058 100644
--- a/h5_standard/src/store/index.ts
+++ b/h5_standard/src/store/index.ts
@@ -10,7 +10,7 @@
export default createStore({
state: {
- // 椤圭洰鍏ュ彛鐜 DD / H5
+ // 椤圭洰鍏ュ彛鐜 DD / H5 / WX / XCX
env: env ? env : null,
// 鏄惁闇�瑕侀�傞厤鑻规灉搴曢儴瀹夊叏璺濈
diff --git a/h5_standard/src/utils/request.ts b/h5_standard/src/utils/request.ts
index 733c77b..06d7b67 100644
--- a/h5_standard/src/utils/request.ts
+++ b/h5_standard/src/utils/request.ts
@@ -29,10 +29,9 @@
// 娣诲姞鍝嶅簲鎷︽埅鍣�
service.interceptors.response.use(
(response) => {
-
- if (response.config.url?.indexOf('/lingyang/login') == -1 && response.config.url?.indexOf('/edgp/loginDemo') == -1 && response.config.url?.indexOf('/lingyang/loginDemo') == -1 && response.config.url?.indexOf('/edgp/login') == -1) {
+ // if (response.config.url?.indexOf('/lingyang/login') == -1 && response.config.url?.indexOf('/edgp/loginDemo') == -1 && response.config.url?.indexOf('/lingyang/loginDemo') == -1 && response.config.url?.indexOf('/edgp/login') == -1) {
loading.clear();
- }
+ // }
if (response.data.code === 401) { // 澶勭悊鐧诲綍杩囨湡
Toast.fail({ message: '鐧诲綍杩囨湡锛屽噯澶囪嚜鍔ㄩ噸鏂扮櫥褰�', duration: 2000, forbidClick: true })
setTimeout(() => {
diff --git a/h5_standard/src/utils/utils.ts b/h5_standard/src/utils/utils.ts
index d04a906..aebc40d 100644
--- a/h5_standard/src/utils/utils.ts
+++ b/h5_standard/src/utils/utils.ts
@@ -199,7 +199,7 @@
function judgmentPlatform (): boolean {
// alert(store.state.env)
// alert(store.state.env !== 'DD')
- return store.state.env === 'DD'
+ return store.state.env === 'DD' || store.state.env === 'WX';
// return dd.env.platform !== 'notInDingTalk';
}
diff --git a/h5_standard/src/views/LogInAgain.vue b/h5_standard/src/views/LogInAgain.vue
index 8ccb876..b7856d0 100644
--- a/h5_standard/src/views/LogInAgain.vue
+++ b/h5_standard/src/views/LogInAgain.vue
@@ -94,7 +94,7 @@
let res = await testLogin({ // 鏂囨
username: '18656077929',
password: '123456',
- companyId: '8',
+ companyId: '111',
uuid: '0000',
code: '0000'
})
diff --git a/h5_standard/src/views/appletLogin.vue b/h5_standard/src/views/appletLogin.vue
new file mode 100644
index 0000000..e77dd96
--- /dev/null
+++ b/h5_standard/src/views/appletLogin.vue
@@ -0,0 +1,191 @@
+<template>
+ <div class="wx">
+ <img class="wx_bg" src="@/assets/background/login_bg@2x.png" alt="" />
+ <div class="wx_login">
+ <img class="wx_login_icon" src="@/assets/icon/logo@2x.png" alt="" />
+ <span>DM浜戝伐鍘�</span>
+ <div class="wx_login_list">
+ <div class="wx_login_list_item">
+ <img src="@/assets/icon/login_ic_code@2x.png" alt="" />
+ <input type="text" v-model="from.companyId" placeholder="浼佷笟浠g爜" />
+ </div>
+ <div class="wx_login_list_item">
+ <img src="@/assets/icon/login_ic_phone@2x.png" alt="" />
+ <input type="text" maxlength="11" v-model="from.username" placeholder="鎵嬫満鍙�" />
+ </div>
+ <div class="wx_login_list_item">
+ <img src="@/assets/icon/login_ic_password@2x.png" alt="" />
+ <input type="password" v-model="from.password" placeholder="瀵嗙爜" />
+ </div>
+ </div>
+ <div class="wx_login_footer">
+ <div class="wx_login_footer_btn" @click="login">绔嬪嵆鐧诲綍</div>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script setup lang="ts">
+import { onMounted, reactive } from 'vue';
+import { useRoute, useRouter } from 'vue-router';
+import { useStore } from 'vuex';
+import { wxAccountLogin, getUserInfo, wxProgramLogin } from '@/apis/index';
+import { Toast } from 'vant';
+
+const route = useRoute()
+const router = useRouter()
+const store = useStore()
+
+let from: any = reactive({
+ openid: '',
+ unionid: '',
+ companyId: '',
+ username: '',
+ password: ''
+})
+
+const login = async () => {
+ // if (!from.openid) return Toast('openid涓嶈兘涓虹┖')
+ // if (!from.unionid) return Toast('unionid涓嶈兘涓虹┖')
+ if (!from.companyId) return Toast('浼佷笟浠g爜涓嶈兘涓虹┖')
+ if (!from.username) return Toast('鎵嬫満鍙蜂笉鑳戒负绌�')
+ if (!from.password) return Toast('瀵嗙爜涓嶈兘涓虹┖')
+ Toast.loading({
+ message: '鐧诲綍涓�...',
+ forbidClick: true
+ });
+ let res = await wxAccountLogin(from)
+ if (res.code === 200) {
+ let info = await getUserInfo()
+ if (info.code === 200) {
+ await store.commit('setEntrance', 'XCX')
+ await store.commit('setUserInfo', info.data)
+ await store.dispatch('getMenuList', 2)
+ await router.replace('/workbench')
+ }
+ }
+ Toast.clear();
+}
+
+onMounted(() => {
+ wxProgramLogin({ code: route.query.code })
+ .then(async (res) => {
+ if (res.code === 200) {
+ // 鍏嶇櫥褰曪紝鐩存帴璺抽椤�
+ if (res.data.loginStatus == 0) {
+ let info = await getUserInfo()
+ if (info.code === 200) {
+ await store.commit('setEntrance', 'XCX')
+ await store.commit('setUserInfo', info.data)
+ await store.dispatch('getMenuList', 2)
+ await router.replace('/workbench')
+ }
+ } else {
+ from.openid = res.data.openid
+ from.unionid = res.data.unionid
+ }
+ }
+ })
+})
+</script>
+
+<style lang="scss" scoped>
+ .wx {
+ width: 100vw;
+ height: 100vh;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ background: #FFFFFF linear-gradient(180deg, rgba(66,117,252,0.2) 0%, rgba(66,117,252,0) 100%);
+ .wx_bg {
+ width: 100vw;
+ height: 812px;
+ position: fixed;
+ top: 0;
+ left: 0;
+ }
+ .wx_login {
+ width: 100vw;
+ height: auto;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ flex-direction: column;
+ .wx_login_icon {
+ width: 180px;
+ height: 180px;
+ }
+ span {
+ font-size: 44px;
+ font-family: PingFangSC-Semibold, PingFang SC;
+ font-weight: 600;
+ color: #333333;
+ margin-top: 40px;
+ }
+ .wx_login_list {
+ width: 100vw;
+ padding: 0 60px;
+ box-sizing: border-box;
+ margin-top: 80px;
+ position: relative;
+ z-index: 9;
+ .wx_login_list_item {
+ width: 100%;
+ height: 98px;
+ background: #FFFFFF;
+ border-radius: 8px;
+ padding: 0 40px;
+ box-sizing: border-box;
+ display: flex;
+ align-items: center;
+ margin-bottom: 40px;
+ &:last-child {
+ margin-bottom: 0 !important;
+ }
+ img {
+ width: 40px;
+ height: 40px;
+ flex-shrink: 0;
+ margin-right: 24px;
+ }
+ input::-webkit-input-placeholder {
+ font-size: 30px;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #B7BBC5;
+ }
+ input {
+ flex: 1;
+ height: 100%;
+ padding: 0 !important;
+ font-size: 30px;
+ font-family: PingFangSC-Regular, PingFang SC;
+ font-weight: 400;
+ color: #222222;
+ border: none;
+ outline: none;
+ }
+ }
+ }
+ .wx_login_footer {
+ width: 100vw;
+ padding: 0 60px;
+ box-sizing: border-box;
+ margin-top: 80px;
+ .wx_login_footer_btn {
+ width: 100%;
+ height: 98px;
+ line-height: 98px;
+ text-align: center;
+ background: #4275FC;
+ box-shadow: 0px 12px 24px 0px rgba(66,117,252,0.2);
+ border-radius: 8px;
+ font-size: 32px;
+ font-family: PingFangSC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
+ }
+ }
+ }
+</style>
\ No newline at end of file
diff --git a/h5_standard/src/views/children.vue b/h5_standard/src/views/children.vue
index adfe02d..bd66219 100644
--- a/h5_standard/src/views/children.vue
+++ b/h5_standard/src/views/children.vue
@@ -1,7 +1,7 @@
<template>
<div class="box">
<!-- 澶撮儴瀵艰埅 -->
- <template v-if="env == 'H5'">
+ <template v-if="env == 'H5' || env == 'XCX'">
<v-Header :pathList="pathLists">
<template v-slot:title>{{title}}</template>
</v-Header>
diff --git a/h5_standard/src/views/index.vue b/h5_standard/src/views/index.vue
index 55141cd..1a9e4f8 100644
--- a/h5_standard/src/views/index.vue
+++ b/h5_standard/src/views/index.vue
@@ -1,7 +1,7 @@
<template>
<div class="index">
<!-- 澶撮儴瀵艰埅 -->
- <template v-if="env == 'H5'">
+ <template v-if="env == 'H5' || env == 'XCX'">
<v-Header :pathList="pathLists">
<template v-slot:title>{{ title }}</template>
</v-Header>
diff --git a/h5_standard/src/views/plannedProgress/details.vue b/h5_standard/src/views/plannedProgress/details.vue
index 29d7c25..e4d9b0a 100644
--- a/h5_standard/src/views/plannedProgress/details.vue
+++ b/h5_standard/src/views/plannedProgress/details.vue
@@ -53,7 +53,7 @@
</div>
<div class="content_list_item_content_item">
<div class="content_list_item_content_item_label">鍒嗛厤鏁伴噺锛�</div>
- <div class="content_list_item_content_item_nr">{{info.createTime}}</div>
+ <div class="content_list_item_content_item_nr" v-if="info.umodel">{{info.distributNum}}{{info.umodel.name}}</div>
</div>
<div class="content_list_item_content_item">
<div class="content_list_item_content_item_label">瀹屽伐鏁伴噺锛�</div>
@@ -64,20 +64,22 @@
</div>
<NotFound info="鏆傛湭鍒嗛厤宸ュ崟" v-if="info.workorderList && info.workorderList.length === 0" />
<template v-else>
- <div class="details_list">
- <div class="details_list_item" v-for="(item, i) in info.workorderList" :key="i" @click="jump(item.id)">
+ <!-- <div class="details_list">
+ <div class="details_list_item" v-for="(item, i) in info.workorderList" :key="i" @click="jump(item)">
<div class="details_list_item_top">
- <span>{{ item.createUserName }}</span><span>{{ item.code }}</span>
+ <span>{{ item.createUserName }}</span>
+ <span>{{ item.code }}</span>
</div>
<div class="details_list_item_center">
- <span>鑹搧鏁帮細{{ item.qualifiedNum }}</span><span>涓嶈壇鏁帮細<span class="red">{{ item.unqualifiedNum }}</span></span>
+ <span>鑹搧鏁帮細{{ item.qualifiedNum }}</span>
+ <span>涓嶈壇鏁帮細<span class="red">{{ item.unqualifiedNum }}</span></span>
</div>
<div class="details_list_item_bottom">
<span>{{ item.createTime }}</span>
</div>
</div>
- </div>
- <!-- <div class="details_timeline" v-for="(item, i) in info.workorderList" :key="i">
+ </div> -->
+ <div class="details_timeline" v-for="(item, i) in info.workorderList" :key="i">
<div class="details_timeline_header">
<div class="details_timeline_header_code">
<span>宸ュ崟缂栧彿锛歿{item.code}}</span>
@@ -89,10 +91,10 @@
<span v-if="item.status === 3" class="purple">宸叉楠�</span>
<span v-if="item.status === 4">宸叉姤宸�</span>
<span v-if="item.status === 5">宸插叆搴�</span>
- <span v-if="item.status === 6">宸插彇娑�</span> -->
+ <span v-if="item.status === 6">宸插彇娑�</span>
<!-- <span v-if="item.status === 7">宸插彇娑�</span>-->
<!-- <span v-if="item.status === 8">宸插叧闂�</span>-->
- <!-- </div>
+ </div>
<div class="details_timeline_item" v-if="item.produceDate">
<div class="activedian"></div>
<div class="dian active"></div>
@@ -153,8 +155,10 @@
</div>
</div>
</div>
- </div> -->
+ </div>
</template>
+ <!-- <div class="details_zw"></div> -->
+ <!-- <div class="details_btn" @click="toJump">鍘绘姤宸�</div> -->
</div>
</template>
@@ -182,8 +186,17 @@
})
}
- const jump = (id: any) => {
- router.push({ name: 'workOrderReporting', query: { id } })
+ const toJump = () => {
+ router.push({ name: 'reportingForWork' })
+ }
+
+ const jump = (item: any) => {
+ if (item.status === 4 || item.status === 6 || item.paused === 1) {
+ router.push({ name: 'afterWorkReport', query: { id: item.id } })
+ } else {
+ router.push({ name: 'workOrderReporting', query: { id: item.id } })
+ }
+ // router.push({ name: 'workOrderReporting', query: { id } })
}
const proUserStr = (item: any) => {
@@ -210,6 +223,26 @@
height: 100%;
position: absolute;
background: #F7F7F7;
+ .details_zw {
+ width: 100%;
+ height: 148px;
+ }
+ .details_btn {
+ position: fixed;
+ bottom: 60px;
+ left: 30px;
+ width: calc(100% - 60px);
+ height: 88px;
+ line-height: 88px;
+ text-align: center;
+ background: #305ED5;
+ box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.08);
+ border-radius: 8px;
+ font-size: 30px;
+ font-family: PingFangSC-Medium, PingFang SC;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
.van-skeleton {
padding: 0 !important;
}
diff --git a/h5_standard/src/views/tabPage/my.vue b/h5_standard/src/views/tabPage/my.vue
index 1bd4eb8..5df450e 100644
--- a/h5_standard/src/views/tabPage/my.vue
+++ b/h5_standard/src/views/tabPage/my.vue
@@ -21,7 +21,7 @@
</div>
</div>
</div>
-<!-- <div class="box_out"><span>閫�鍑虹櫥褰�</span></div>-->
+ <div class="box_out" v-if="store.state.env && (store.state.env == 'WX' || store.state.env == 'XCX')" @click="loginOut"><span>閫�鍑虹櫥褰�</span></div>
</div>
<van-popup v-model:show="show" position="bottom" round :style="{ height: '50%' }">
<van-picker
@@ -40,6 +40,7 @@
import { Dialog, Toast } from 'vant'
const VanDialog = Dialog.Component;
import { changeCom, getDepartmentListByConditon } from '@/apis/PersonalAPI'
+ import { wxLoginOut } from '@/apis'
const router = useRouter()
@@ -69,6 +70,19 @@
})
};
+ // 閫�鍑虹櫥褰�
+ const loginOut = () => {
+ wxLoginOut({
+ companyUserId: store.state.userInfo.companyUser.id
+ }).then(res => {
+ if (res.code === 200) {
+ // window.parent.postMessage('闃垮悍', '*')
+ let href = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx6ea339a336f26380&redirect_url=https://www.mes.red/h5/redirect.html&response_type=code&scope=snsapi_base&state=#wechat_redirect'
+ window.open(href)
+ }
+ })
+ }
+
// 鍏抽棴缁勭粐寮规
const onCancel = (): void => {
show.value = false
diff --git a/h5_standard/src/views/workOrder/reportingForWork.vue b/h5_standard/src/views/workOrder/reportingForWork.vue
index 241b071..ccaceec 100644
--- a/h5_standard/src/views/workOrder/reportingForWork.vue
+++ b/h5_standard/src/views/workOrder/reportingForWork.vue
@@ -392,6 +392,12 @@
if (!from.qualified && !from.undesirable) {
return Toast('鑹搧鏁颁笌涓嶈壇鏁颁笉鑳藉悓鏃朵负绌�')
}
+ if (from.qualified && from.qualified <= 0) {
+ return Toast('鑹搧鏁板繀椤诲ぇ浜�0')
+ }
+ if (from.undesirable && from.undesirable <= 0) {
+ return Toast('涓嶈壇鍝佹暟蹇呴』澶т簬0')
+ }
// if (!from.qualified) return Toast('鑹搧鏁颁笉鑳戒负绌�')
// 鏈変笉鑹暟
if (from.undesirable > 0) {
diff --git a/h5_standard/src/views/workOrder/workOrderReporting.vue b/h5_standard/src/views/workOrder/workOrderReporting.vue
index b24be91..689f086 100644
--- a/h5_standard/src/views/workOrder/workOrderReporting.vue
+++ b/h5_standard/src/views/workOrder/workOrderReporting.vue
@@ -962,7 +962,7 @@
if (info.value.bomType === 1) { // 鎷夊紡
console.log('鎷夊紡')
statisticsData.value = []
- if (produceFrom.qualified <= 0) {
+ if (produceFrom.qualified <= 0 && produceFrom.undesirable <= 0) {
Toast.fail({ message: '浜у嚭鏄庣粏涓嶈兘涓虹┖' })
return
}
@@ -1121,7 +1121,7 @@
Toast.fail({ message: '鎶曟枡鏄庣粏涓嶈兘涓虹┖' })
return
}
- if (produceFrom.qualified <= 0) {
+ if (produceFrom.qualified <= 0 && produceFrom.undesirable <= 0) {
Toast.fail({ message: '浜у嚭鏄庣粏涓嶈兘涓虹┖' })
return
}
diff --git a/minipro_standard/App.vue b/minipro_standard/App.vue
index d1aed6d..d52fd35 100644
--- a/minipro_standard/App.vue
+++ b/minipro_standard/App.vue
@@ -1,5 +1,4 @@
<script>
- console.log('app------');
// import { pageCount } from '@/util/api/index.js'
export default {
onLaunch: function() {
diff --git a/minipro_standard/main.js b/minipro_standard/main.js
index a8ee7ad..4686581 100644
--- a/minipro_standard/main.js
+++ b/minipro_standard/main.js
@@ -10,7 +10,7 @@
store.dispatch('getHeight')
Vue.config.productionTip = false
App.mpType = 'app'
-console.log(uni.$u);
+// console.log(uni.$u);
// #ifdef MP
// 寮曞叆uView瀵瑰皬绋嬪簭鍒嗕韩鐨刴ixin灏佽
const mpShare = require('@/uni_modules/uview-ui/libs/mixin/mpShare.js')
@@ -24,6 +24,6 @@
})
require('./util/request/index')(app)
// 鑾峰彇寰呭姙鏁伴噺
-store.dispatch('getUpcomingNum')
+// store.dispatch('getUpcomingNum')
app.$mount()
\ No newline at end of file
diff --git a/minipro_standard/manifest.json b/minipro_standard/manifest.json
index a25c0b8..0bc644d 100644
--- a/minipro_standard/manifest.json
+++ b/minipro_standard/manifest.json
@@ -50,7 +50,7 @@
"quickapp" : {},
/* 灏忕▼搴忕壒鏈夌浉鍏� */
"mp-weixin" : {
- "appid" : "wxcd2b89fd2ff065f8",
+ "appid" : "wx1605a61f7a48cea6",
"setting" : {
"urlCheck" : false,
"es6" : true,
diff --git a/minipro_standard/pages.json b/minipro_standard/pages.json
index cb37cc6..b77d9e9 100644
--- a/minipro_standard/pages.json
+++ b/minipro_standard/pages.json
@@ -1,65 +1,104 @@
{
"pages": [
- {
- "path": "pages/workbench/workbench",
- "style": {
- "navigationBarTitleText": "宸ヤ綔鍙�",
- "enablePullDownRefresh": false
- }
- },
+ // {
+ // "path": "pages/workbench/workbench",
+ // "style": {
+ // "navigationBarTitleText": "宸ヤ綔鍙�",
+ // "enablePullDownRefresh": false
+ // }
+ // },
{
"path": "pages/index/index",
"style": {
- "navigationBarTitleText": "寰呭姙"
- }
- }, {
- "path": "pages/mine/mine",
- "style": {
- "navigationBarTitleText": "鎴戠殑",
- "enablePullDownRefresh": false
+ "navigationBarTitleText": "",
+ "navigationStyle": "custom"
}
}
- ,{
- "path" : "pages/login/login",
- "style" :
- {
- "navigationBarTitleText": "鐧诲綍",
- "enablePullDownRefresh": false,
- "navigationStyle": "custom"
- }
- }
+ // , {
+ // "path": "pages/mine/mine",
+ // "style": {
+ // "navigationBarTitleText": "鎴戠殑",
+ // "enablePullDownRefresh": false
+ // }
+ // }
+ // ,{
+ // "path" : "pages/login/login",
+ // "style" :
+ // {
+ // "navigationBarTitleText": "鐧诲綍",
+ // "enablePullDownRefresh": false,
+ // "navigationStyle": "custom"
+ // }
+ // }
+ // ,{
+ // "path" : "pages/personal/personal",
+ // "style" :
+ // {
+ // "navigationBarTitleText": "涓汉淇℃伅",
+ // "enablePullDownRefresh": false
+ // }
+
+ // }
+ // ,{
+ // "path" : "pages/changePassword/changePassword",
+ // "style" :
+ // {
+ // "navigationBarTitleText": "淇敼瀵嗙爜",
+ // "enablePullDownRefresh": false
+ // }
+
+ // }
+ // ,{
+ // "path" : "pages/updatePhone/updatePhone",
+ // "style" :
+ // {
+ // "navigationBarTitleText": "鏇存柊鎵嬫満鍙�",
+ // "enablePullDownRefresh": false
+ // }
+
+ // }
+ // ,{
+ // "path" : "pages/updateMailbox/updateMailbox",
+ // "style" :
+ // {
+ // "navigationBarTitleText": "鏇存柊閭鍙�",
+ // "enablePullDownRefresh": false
+ // }
+
+ // }
],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",
"navigationBarBackgroundColor": "#ffffff",
- "backgroundColor": "#ffffff"
+ "backgroundColor": "#ffffff",
+ "navigationStyle": "custom"
},
- "tabBar": {
- "color": "#666666",
- "selectedColor": "#222222",
- "borderStyle": "black",
- "backgroundColor": "#fff",
- "list": [
- {
- "pagePath": "pages/index/index",
- "iconPath": "static/nav_daiban@2x.png",
- "selectedIconPath": "static/nav_daiban_sel@2x.png",
- "text": "寰呭姙"
- },
- {
- "pagePath": "pages/workbench/workbench",
- "iconPath": "static/nav_gongzuotai@2x.png",
- "selectedIconPath": "static/nav_gongzuotai_sel@2x.png",
- "text": "宸ヤ綔鍙�"
- },
- {
- "pagePath": "pages/mine/mine",
- "iconPath": "static/nav_wode@2x.png",
- "selectedIconPath": "static/nav_wode_sel@2x.png",
- "text": "鎴戠殑"
- }
- ]
- },
+ // "tabBar": {
+ // "color": "#666666",
+ // "selectedColor": "#222222",
+ // "borderStyle": "black",
+ // "backgroundColor": "#fff",
+ // "list": [
+ // {
+ // "pagePath": "pages/index/index",
+ // "iconPath": "static/nav_daiban@2x.png",
+ // "selectedIconPath": "static/nav_daiban_sel@2x.png",
+ // "text": "寰呭姙"
+ // },
+ // {
+ // "pagePath": "pages/workbench/workbench",
+ // "iconPath": "static/nav_gongzuotai@2x.png",
+ // "selectedIconPath": "static/nav_gongzuotai_sel@2x.png",
+ // "text": "宸ヤ綔鍙�"
+ // },
+ // {
+ // "pagePath": "pages/mine/mine",
+ // "iconPath": "static/nav_wode@2x.png",
+ // "selectedIconPath": "static/nav_wode_sel@2x.png",
+ // "text": "鎴戠殑"
+ // }
+ // ]
+ // },
"uniIdRouter": {}
}
diff --git a/minipro_standard/pages/changePassword/changePassword.vue b/minipro_standard/pages/changePassword/changePassword.vue
new file mode 100644
index 0000000..a975dd8
--- /dev/null
+++ b/minipro_standard/pages/changePassword/changePassword.vue
@@ -0,0 +1,128 @@
+<template>
+ <view class="password">
+ <view class="password_tip">
+ <image src="@/static/password_ic_tip@2x.png" alt="" />
+ <text>瀵嗙爜鐢�6-20涓嫳鏂囧瓧姣嶃�佹暟瀛楁垨绗﹀彿缁勬垚</text>
+ </view>
+ <view class="password_list">
+ <view class="password_list_item">
+ <text>鍘熷瘑鐮�</text>
+ <view class="password_list_item_box">
+ <input type="password" v-model="form.originalPassword" maxlength="20" placeholder="璇疯緭鍏ュ師瀵嗙爜">
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>鏂板瘑鐮�</text>
+ <view class="password_list_item_box">
+ <input type="password" v-model="form.newPassword" maxlength="20" placeholder="璇疯緭鍏ユ柊瀵嗙爜">
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>纭瀵嗙爜</text>
+ <view class="password_list_item_box">
+ <input type="password" v-model="form.confirmPassword" maxlength="20" placeholder="鍐嶆杈撳叆鏂板瘑鐮�">
+ </view>
+ </view>
+ </view>
+ <view class="password_footer">
+ <button v-preventReClick class="password_footer_submit">
+ <text>瀹屾垚</text>
+ </button>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ form: {
+ originalPassword: '',
+ newPassword: '',
+ confirmPassword: ''
+ }
+ };
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .password {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ background: white;
+ .password_tip {
+ height: 72rpx;
+ display: flex;
+ align-items: center;
+ background: #F7F7F7;
+ padding: 0 30rpx;
+ image {
+ width: 24rpx;
+ height: 24rpx;
+ margin-right: 10rpx;
+ }
+ text {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ }
+ }
+ .password_list {
+ padding: 0 30rpx;
+ .password_list_item {
+ display: flex;
+ align-items: center;
+ height: 90rpx;
+ border-bottom: 1rpx solid #E5E5E5;
+ text {
+ width: 150rpx;
+ flex-shrink: 0;
+ font-size: 30rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ .password_list_item_box {
+ display: flex;
+ justify-content: space-between;
+ flex: 1;
+ input {
+ border: none;
+ font-size: 30rpx;
+ }
+ input::-webkit-input-placeholder {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #B2B2B2;
+ }
+ p {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #4275FC;
+ }
+ }
+ }
+ }
+ .password_footer {
+ margin-top: 80rpx;
+ padding: 0 30rpx;
+ .password_footer_submit {
+ width: 100%;
+ height: 88rpx;
+ border: none;
+ background: #4275FC;
+ box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+ border-radius: 8rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ text {
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
+ }
+ }
+ }
+</style>
diff --git a/minipro_standard/pages/index/index.vue b/minipro_standard/pages/index/index.vue
index c6d7304..74356de 100644
--- a/minipro_standard/pages/index/index.vue
+++ b/minipro_standard/pages/index/index.vue
@@ -1,73 +1,44 @@
<template>
- <view>
- <myTabbar :index="0" />
+ <view class="index">
+ <web-view v-if="show" @onPostMessage="onMessage" :src="'https://dmtest.ahapp.net/doumeeplant_h5/#/appletLogin?code=' + code"></web-view>
+ <!-- <myTabbar :index="0" /> -->
</view>
</template>
<script>
- import myTabbar from "@/components/myTabber.vue"
+ // import myTabbar from "@/components/myTabber.vue"
export default {
- components: {
- myTabbar
- },
+ // components: {
+ // myTabbar
+ // },
data() {
return {
- form: {
- account: '',
- password: '',
- },
- logining: false,
- openId: ''
+ code: '',
+ show: false
}
},
onLoad() {
- // uni.login({
- // success: data => {
- // this.wxLogin(data.code)
- // },
- // fail: err => {
- // uni.$u.toast(err)
- // }
- // })
+ var that = this
+ uni.login({
+ provider: 'weixin',
+ success: function (loginRes) {
+ // console.log(loginRes);
+ that.code = loginRes.code
+ that.show = true
+ }
+ });
},
methods: {
- // loginAction() {
- // if (!this.form.account || !this.form.password) {
- // uni.$u.toast('璐﹀彿鎴栬�呭瘑鐮佷笉鑳戒负绌�')
- // }
- // this.logining = true
- // coustomLogin({...this.form, openid: this.openId})
- // .then(res => {
- // this.$store.commit('SETTOKEN', res.token)
- // this.$store.commit('SETUSERINFO', res)
- // uni.navigateTo({
- // url:'/pages/projectList/projectList'
- // })
- // })
- // .finally(() => {
- // this.logining = false
- // })
- // },
- // wxLogin(code) {
- // wxEmpower({code})
- // .then(res => {
- // this.openId = res.openid
- // if (res.userInfo) {
- // this.$store.commit('SETTOKEN', res.userInfo.token)
- // this.$store.commit('SETUSERINFO', res.userInfo)
- // uni.navigateTo({
- // url:'/pages/projectList/projectList'
- // })
- // }
- // })
- // .catch(err => {
- // uni.$u.toast(err)
- // })
- // }
+ onMessage(e) {
+ console.log('12345654321')
+ }
}
}
</script>
<style lang="scss" scoped>
-
+ .index {
+ width: 100vw;
+ height: 100vh;
+ }
</style>
diff --git a/minipro_standard/pages/mine/mine.vue b/minipro_standard/pages/mine/mine.vue
index 081c8eb..18f9c4f 100644
--- a/minipro_standard/pages/mine/mine.vue
+++ b/minipro_standard/pages/mine/mine.vue
@@ -5,14 +5,14 @@
<image src="@/static/2@2x.png" mode="widthFix" />
<div class="box_info_box">
<text>寮犱笁</text>
- <div class="box_info_box_x">
+ <div class="box_info_box_x" @click="show = true">
<text>璞嗙背绉戞妧</text>
<image src="@/static/mine_ic_change@2x.png" alt="" />
</div>
</div>
</div>
<div class="box_function">
- <div class="box_function_item" v-for="(item, index) in MENU" :key="index">
+ <div class="box_function_item" v-for="(item, index) in MENU" :key="index" @click="jump(item.url)">
<div class="box_function_item_left">
<image :src="item.icon" alt="" />
<text>{{item.name}}</text>
@@ -24,6 +24,8 @@
</div>
<div class="box_out"><text>閫�鍑虹櫥褰�</text></div>
</div>
+ <!-- 閮ㄩ棬閫夋嫨鍣� -->
+ <u-picker :show="show" :columns="columns" @confirm="confirm"></u-picker>
<myTabbar :index="2" />
</view>
</template>
@@ -37,28 +39,31 @@
data() {
return {
MENU: [
- { name: '涓汉淇℃伅', url: '/personal/personalInformation', icon: require('@/static/mine_ic_gerenxinxi@2x.png') },
+ { name: '涓汉淇℃伅', url: '/pages/personal/personal', icon: require('@/static/mine_ic_gerenxinxi@2x.png') },
// { name: '绯荤粺閫氱煡', url: '', icon: require('@/assets/icon/mine_ic_xitonggonggao@2x.png') },
- { name: '鏇存柊鎵嬫満鍙�', url: '/personal/updatePhone', icon: require('@/static/mine_ic_shoujihao@2x.png') },
- { name: '鏇存柊閭鍙�', url: '/personal/updateMailbox', icon: require('@/static/mine_ic_youxianghao@2x.png') },
+ { name: '鏇存柊鎵嬫満鍙�', url: '/pages/updatePhone/updatePhone', icon: require('@/static/mine_ic_shoujihao@2x.png') },
+ { name: '鏇存柊閭鍙�', url: '/pages/updateMailbox/updateMailbox', icon: require('@/static/mine_ic_youxianghao@2x.png') },
{ name: '鎵爜缁戝畾璐﹀彿', url: '', icon: require('@/static/mine_ic_bangding@2x.png') },
- { name: '淇敼瀵嗙爜', url: '/personal/changePassword', icon: require('@/static/mine_ic_xiugaimima@2x.png') },
+ { name: '淇敼瀵嗙爜', url: '/pages/changePassword/changePassword', icon: require('@/static/mine_ic_xiugaimima@2x.png') },
],
- img: require('@/static/mine_bg@2x.png')
+ img: require('@/static/mine_bg@2x.png'),
+ show: false,
+ columns: [
+ ['涓浗', '缇庡浗', '鏃ユ湰']
+ ]
}
},
onLoad() {
uni.hideTabBar()
- // uni.login({
- // success: data => {
- // this.wxLogin(data.code)
- // },
- // fail: err => {
- // uni.$u.toast(err)
- // }
- // })
},
methods: {
+ jump(url) {
+ uni.navigateTo({ url })
+ },
+ confirm(val) {
+ console.log(val)
+ this.show = false
+ }
}
}
</script>
diff --git a/minipro_standard/pages/personal/personal.vue b/minipro_standard/pages/personal/personal.vue
new file mode 100644
index 0000000..22f5c25
--- /dev/null
+++ b/minipro_standard/pages/personal/personal.vue
@@ -0,0 +1,89 @@
+<template>
+ <view class="info">
+ <view class="info_portrait">
+ <image src="@/static/2@2x.png" mode="widthFix" />
+ <text>鐢ㄦ埛鍚�</text>
+ </view>
+ <view class="info_list">
+ <view class="info_list_item">
+ <text>鏄电О</text>
+ <text>鏆傛棤鏄电О</text>
+ </view>
+ <view class="info_list_item">
+ <text>鎵嬫満鍙�</text>
+ <text>鏆傛棤鎵嬫満鍙�</text>
+ </view>
+ <view class="info_list_item">
+ <text>鎵�灞為儴闂�</text>
+ <text>鏆傛棤鎵�灞為儴闂�</text>
+ </view>
+ <view class="info_list_item">
+ <text>宀椾綅</text>
+ <text>鏆傛棤宀椾綅</text>
+ </view>
+ <view class="info_list_item">
+ <text>褰撳墠缁勭粐</text>
+ <text>鏆傛棤缁勭粐</text>
+ </view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+
+ };
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+.info {
+ padding: 30rpx;
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ box-sizing: border-box;
+ background: white;
+ .info_portrait {
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+ margin-top: 60rpx;
+ image {
+ width: 140rpx;
+ height: 140rpx;
+ margin-bottom: 30rpx;
+ }
+ text {
+ font-size: 30rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ .info_list {
+ margin-top: 30rpx;
+ .info_list_item {
+ height: 98rpx;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ border-bottom: 1rpx solid #E5E5E5;
+ text {
+ &:first-child {
+ font-size: 30rpx;
+ font-weight: 400;
+ color: #777777;
+ }
+ &:last-child {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ }
+ }
+ }
+}
+</style>
diff --git a/minipro_standard/pages/updateMailbox/updateMailbox.vue b/minipro_standard/pages/updateMailbox/updateMailbox.vue
new file mode 100644
index 0000000..5af8c3f
--- /dev/null
+++ b/minipro_standard/pages/updateMailbox/updateMailbox.vue
@@ -0,0 +1,130 @@
+<template>
+ <view class="password">
+ <view class="password_tip">
+ <image src="@/static/password_ic_tip@2x.png" mode="widthFix" />
+ <text>缁戝畾閭鍙峰彲浠ユ洿濂藉湴淇濇姢鎮ㄧ殑璐︽埛瀹夊叏锛屼繚鎶や釜浜轰俊鎭笉琚镜瀹炽��</text>
+ </view>
+ <view class="password_list">
+ <view class="password_list_item">
+ <text>褰撳墠缁戝畾</text>
+ <view class="password_list_item_box">
+ <input type="text" disabled v-model="form.currentMailbox" />
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>鏂伴偖绠卞彿</text>
+ <view class="password_list_item_box">
+ <input type="text" v-model="form.newMailbox" placeholder="璇疯緭鍏ユ柊鐨勯偖绠�" />
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>楠岃瘉鐮�</text>
+ <view class="password_list_item_box">
+ <input type="text" v-model="form.verificationCode" maxlength="4" placeholder="璇疯緭鍏ラ獙璇佺爜">
+ <p @click="getVerificationCode" v-if="!code.isOpen">鑾峰彇楠岃瘉鐮�</p>
+ <p @click="getVerificationCode" v-else>{{code.num}}</p>
+ </view>
+ </view>
+ </view>
+ <view class="password_footer">
+ <button v-preventReClick class="password_footer_submit">
+ <text>瀹屾垚</text>
+ </button>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ form: {
+ currentMailbox: '',
+ newMailbox: '',
+ verificationCode: ''
+ }
+ };
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .password {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ background: white;
+ .password_tip {
+ padding: 20rpx 30rpx;
+ display: flex;
+ background: #F7F7F7;
+ box-sizing: border-box;
+ image {
+ width: 24rpx;
+ height: 24rpx;
+ margin-right: 10rpx;
+ margin-top: 8rpx;
+ }
+ text {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ }
+ }
+ .password_list {
+ padding: 0 30rpx;
+ .password_list_item {
+ display: flex;
+ align-items: center;
+ height: 90rpx;
+ border-bottom: 1rpx solid #E5E5E5;
+ text {
+ width: 150rpx;
+ flex-shrink: 0;
+ font-size: 30rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ .password_list_item_box {
+ display: flex;
+ justify-content: space-between;
+ flex: 1;
+ input {
+ border: none;
+ font-size: 30rpx;
+ }
+ input::-webkit-input-placeholder {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #B2B2B2;
+ }
+ p {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #4275FC;
+ }
+ }
+ }
+ }
+ .password_footer {
+ margin-top: 80rpx;
+ padding: 0 30rpx;
+ .password_footer_submit {
+ width: 100%;
+ height: 88rpx;
+ border: none;
+ background: #4275FC;
+ box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+ border-radius: 8rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ text {
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
+ }
+ }
+ }
+</style>
diff --git a/minipro_standard/pages/updatePhone/updatePhone.vue b/minipro_standard/pages/updatePhone/updatePhone.vue
new file mode 100644
index 0000000..b70fb79
--- /dev/null
+++ b/minipro_standard/pages/updatePhone/updatePhone.vue
@@ -0,0 +1,127 @@
+<template>
+ <view class="password">
+ <view class="password_tip">
+ <image src="@/static/password_ic_tip@2x.png" alt="" />
+ <text>缁戝畾鎵嬫満鍙峰彲浠ユ洿濂藉湴淇濇姢鎮ㄧ殑璐︽埛瀹夊叏锛屼繚鎶や釜浜轰俊鎭笉琚镜瀹炽��</text>
+ </view>
+ <view class="password_list">
+ <view class="password_list_item">
+ <text>褰撳墠缁戝畾</text>
+ <view class="password_list_item_box">
+ <input type="number" disabled v-model="form.currentPhone" maxlength="11">
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>鏂版墜鏈哄彿</text>
+ <view class="password_list_item_box">
+ <input type="text" v-model="form.newPhone" maxlength="11" placeholder="璇疯緭鍏ユ柊鎵嬫満鍙�">
+ </view>
+ </view>
+ <view class="password_list_item">
+ <text>楠岃瘉鐮�</text>
+ <view class="password_list_item_box">
+ <input type="text" v-model="form.verificationCode" maxlength="4" placeholder="璇疯緭鍏ユ墜鏈洪獙璇佺爜">
+ <p @click="getVerificationCode" v-if="!code.isOpen">鑾峰彇楠岃瘉鐮�</p>
+ <p @click="getVerificationCode" v-else>{{code.num}}</p>
+ </view>
+ </view>
+ </view>
+ <view class="password_footer">
+ <button v-preventReClick class="password_footer_submit" @click="submit">
+ <text>瀹屾垚</text>
+ </button>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default {
+ data() {
+ return {
+ form: {
+ currentPhone: '',
+ newPhone: '',
+ verificationCode: ''
+ }
+ };
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ .password {
+ width: 100%;
+ .password_tip {
+ padding: 20rpx 30rpx;
+ display: flex;
+ background: #F7F7F7;
+ box-sizing: border-box;
+ image {
+ width: 24rpx;
+ height: 24rpx;
+ margin-right: 10rpx;
+ margin-top: 8rpx;
+ }
+ text {
+ font-size: 24rpx;
+ font-weight: 400;
+ color: #666666;
+ }
+ }
+ .password_list {
+ padding: 0 30rpx;
+ .password_list_item {
+ display: flex;
+ align-items: center;
+ height: 90rpx;
+ border-bottom: 1rpx solid #E5E5E5;
+ text {
+ width: 150rpx;
+ flex-shrink: 0;
+ font-size: 30rpx;
+ font-weight: 400;
+ color: #222222;
+ }
+ .password_list_item_box {
+ display: flex;
+ justify-content: space-between;
+ flex: 1;
+ input {
+ border: none;
+ font-size: 30rpx;
+ }
+ input::-webkit-input-placeholder {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #B2B2B2;
+ }
+ p {
+ font-size: 26rpx;
+ font-weight: 400;
+ color: #4275FC;
+ }
+ }
+ }
+ }
+ .password_footer {
+ margin-top: 80rpx;
+ padding: 0 30rpx;
+ .password_footer_submit {
+ width: 100%;
+ height: 88rpx;
+ border: none;
+ background: #4275FC;
+ box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+ border-radius: 8rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ text {
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #FFFFFF;
+ }
+ }
+ }
+ }
+</style>
--
Gitblit v1.9.3