Commit 23860b66 authored by 李俊赕's avatar 李俊赕
parents a07dc269 01a87f75
......@@ -11,13 +11,18 @@
authUserInfo: '',
},
onLaunch: function() {
// console.log('App Launch')
// 应用初始化(全局只触发一次)
let that = this
that.globalData.token = util.getToken()
},
onShow: function() {
// console.log('App Show--')
// 应用启动,或从后台进入前台显示
if (!this.globalData.token) {
this.autoLogin()
}
},
onHide: function() {
// console.log('App Hide')
// 应用从前台进入后台
},
methods: {
async getBaseInfo(vm, callBack) {
......@@ -33,15 +38,7 @@
});
return false;
}
// if (!res || !res.code) {
// if (res && res.message) {
// uni.showToast({
// title: res && res.message || '获取基本信息错误',
// icon: 'none'
// });
// }
// return false;
// }
this.globalData.settledInfo = res.data
if (!res.data) {
return
......@@ -60,7 +57,11 @@
uni.login({
async success(res) {
if (res.code) {
let result = await that.$u.api.loginWechatAuth({code: res.code})
let params = {
code: res.code,
wxAppNo: 1, // 自营平台小程序
}
let result = await that.$u.api.loginWechatAuth(params)
if (result) {
if (result.code == 200 && result.data) {
that.setUserData(result.data)
......
<template>
<view class="order-view">
<text>订单</text>
</view>
</template>
<script>
export default {
props: {
orderData: {
type: Object,
default: {}
}
},
data() {
return {
};
}
}
</script>
<style lang="scss" scoped>
.order-view {
width: 100%;
height: 200rpx;
}
</style>
<template>
<view class="process-wrap">
<view class="process-title">
<text>{{ title }}</text>
</view>
<view class="process-steps">
<u-steps :list="numList" :current="process" mode="number"></u-steps>
</view>
</view>
</template>
<script>
export default {
// import {u-steps} from ''
name: 'process',
props:{
process: {
type: Number,
default: 0
},
title: {
type: String,
default: '业务流程'
},
type: {
type: Number,
default: 0
}
},
data() {
return {
stepsNums: [],
numList: [
{
name: '业务介绍'
},
{
name: '申请入驻'
},
{
name: '在线考试'
},
{
name: '在线签约'
},
{
name: '开始接单'
}
]
};
},
onLoad() {
let that = this
// 兼容后期配置,有需要可以加载数据显示
that.stepsNums = that.numList
},
computed: {},
methods: {},
};
</script>
<style lang="scss" scoped>
.process-wrap {
border: 4rpx solid #2272ff;
border-radius: 10rpx;
background-color: #ebebeb;
margin: 20rpx;
padding: 10rpx;
}
.process-title {
font-size: 40rpx;
font-weight: bold;
text-align: center;
}
.process-steps {
margin-top: 40rpx;
}
</style>
......@@ -55,7 +55,7 @@
/* 快应用特有相关 */
"mp-weixin" : {
/* 微信小程序特有相关 */
"appid" : "wxd1d6eede324b0465",
"appid" : "wx402a711597dddbaf",
"setting" : {
"urlCheck" : false,
"es6" : true,
......
{
{
"easycom": {
"^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue"
},
......@@ -36,13 +36,13 @@
{
"path": "pages/settle/index",
"style": {
"navigationBarTitleText": "uni-app"
"navigationBarTitleText": "入驻"
}
},
{
"path": "pages/settle/base",
"style": {
"navigationBarTitleText": "uni-app"
"navigationBarTitleText": "入驻"
}
},
{
......@@ -140,6 +140,15 @@
}
}
,{
"path" : "components/business-card/business-card",
"style" :
{
"navigationBarTitleText": "",
"enablePullDownRefresh": false
}
}
],
"globalStyle": {
"navigationBarTextStyle": "black",
......@@ -208,5 +217,5 @@
"query": "" //启动参数,在页面的onLoad函数里面得到
}]
}
}
<template>
<view class="backView">
<process :process="2" :type="0" title="业务流程"></process>
<template v-if="isStart==false">
<view class="noticeView">
<text class="noticeText">规则:系统随机出现20道考试题目,每道题5分,每题答题时间100秒,在规定时间内答对题目的记分。
......
<template>
<view class="content">
<view class="wrap">
<!-- <u-image width="100%" height="300rpx" src="/static/anime3.jpg" mode="widthFix"></u-image> -->
</view>
<u-card title="最新消息">
<view class="" slot="body">
<view class="u-body-item u-flex u-border-bottom u-col-between u-p-t-0">
<image src="https://img11.360buyimg.com/n7/jfs/t1/94448/29/2734/524808/5dd4cc16E990dfb6b/59c256f85a8c3757.jpg" mode="aspectFill"></image>
<view class="u-body-item-title u-line-2">瓶身描绘的牡丹一如你初妆,冉冉檀香透过窗心事我了然,宣纸上走笔至此搁一半</view>
</view>
</view>
</u-card>
<u-card title="订单推荐">
<view class="" slot="body">
<view class="u-body-item u-flex u-row-between u-p-b-0">
<view class="u-body-item-title u-line-2">釉色渲染仕女图韵味被私藏,而你嫣然的一笑如含苞待放</view>
<image src="https://img12.360buyimg.com/n7/jfs/t1/102191/19/9072/330688/5e0af7cfE17698872/c91c00d713bf729a.jpg" mode="aspectFill"></image>
</view>
</view>
<view class="order-foot" slot="foot">
<view class="btn-settle">
<u-button type="primary" shape="circle" @click="immediatelyIn">立即入驻</u-button>
</view>
</view>
</u-card>
</view>
</template>
<script>
const app = getApp()
export default {
data() {
return {
}
},
onLoad() {
},
methods: {
immediatelyIn() {
if(app.globalData.token) {
uni.navigateTo({
url: "pages/settle/index"
})
} else {
uni.navigateTo({
url: "pages/login/index"
})
}
}
}
}
</script>
<style scoped lang="scss">
.content {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.wrap {
padding: 40rpx;
}
.u-card-wrap {
background-color: $u-bg-color;
padding: 1px;
}
.u-body-item {
font-size: 32rpx;
color: #333;
padding: 20rpx 10rpx;
}
.u-body-item image {
width: 120rpx;
flex: 0 0 120rpx;
height: 120rpx;
border-radius: 8rpx;
margin-left: 12rpx;
margin-right: 12rpx;
}
.order-foot {
display: flex;
flex-direction: column;
align-items: center;
}
.btn-settle {
width: 400rpx;
}
</style>
<template>
<view class="content">
<scroll-view scroll-y style="height: 100%;width: 100%;" @scrolltolower="reachBottom" @scroll="handleScroll"
refresher-enabled :refresher-triggered="triggered" @refresherrefresh="onRefresh" scroll-anchoring
@refresherrestore="onRestore">
<u-swiper :height="250" :list="list" :indicator-pos="indicatorPos" :mode="mode" :interval="3000"
@click="clickSwiper">
</u-swiper>
<view>
<text class="title">最新消息</text>
<view v-for="(item, index) in messageList" :key="index">
<text class="title">{{ item.body }}</text>
</view>
<view class="order-view">
<!-- 订单推荐吸顶 -->
<u-sticky>
<view class="sticky">
<text>订单推荐</text>
</view>
</u-sticky>
<!-- 入驻成功之后显示订单列表 -->
<view v-if="status > 0 && orderList.length > 0">
<view v-for="(item, index) in orderList" :key="index">
<OrderCell :orderData="item">
</OrderCell>
</view>
<u-loadmore :status="currentLoadStatus" bgColor="#f2f2f2"></u-loadmore>
</view>
<view v-else-if="status > 0 && orderList.length <= 0">
暂无订单
</view>
<!-- 入驻前-->
<view v-else>
<text class="title">当前订单{{ count }}笔\n入驻通过后,平台将向您推荐订单</text>
<u-button class="settle-button" type="primary" shape="circle" @click="immediatelyIn"
:custom-style="buttonStyle">
立即入驻
</u-button>
</view>
</view>
</view>
</scroll-view>
</view>
</template>
<script>
import util from '@/utils/util.js';
const app = getApp();
import OrderCell from '@/components/order/index.vue'
export default {
components: {
OrderCell
},
data() {
return {
settled: false,
triggered: false,
list: [{
image: 'https://cdn.uviewui.com/uview/swiper/1.jpg',
},
{
image: 'https://cdn.uviewui.com/uview/swiper/2.jpg',
},
{
image: 'https://cdn.uviewui.com/uview/swiper/3.jpg',
}
],
title: false,
mode: 'round',
indicatorPos: 'bottomCenter',
title: 'Hello',
count: 0, // 推荐订单数量
status: 0, // 入驻状态
messageList: [{
id: 1234,
type: '',
level: '',
title: '',
url: '',
body: '好消息',
}, {
id: 1234,
type: '',
level: '',
title: '',
url: '',
body: '好消息',
}, {
id: 1234,
type: '',
level: '',
title: '',
url: '',
body: '好消息',
}],
loadStatus: ['more', 'loading', 'noMore'],
currentLoadStatus: 'loading',
orderList: [{}, {}, {}, {}, {}, {}, {}, {}, {}, {}],
bottomLoading: false
}
},
computed: {
buttonStyle() {
return {
'width': '300rpx',
}
}
},
onLoad() {
this._freshing = false;
this.triggered = true;
},
onShow() {
// 每次进入页面都刷新入驻状态
if (app.globalData.token) {
this.initSettleInfo()
}
},
methods: {
async initSettleInfo() {
const callBack = (vm, result) => {
// 后台自动判断入驻流程是否完成,前台通过settled确定状态
if (result && result.settled) {
vm.settled = result.settled
} else {
vm.settled = false
}
}
await app.getBaseInfo(this, callBack)
},
onRefresh() {
if (this._freshing) return;
this._freshing = true;
// 加载数据
// ...
setTimeout(() => {
// 数据加载完成更新status和推荐列表
this.triggered = false;
this._freshing = false;
}, 1000)
},
onRestore() {
this.triggered = 'restore';
},
reachBottom() {
console.log('-----bottom will-----')
if (this.bottomLoading || this.currentLoadStatus == this.loadStatus[2]) {
return
}
console.log('-----bottom did-----')
this.bottomLoading = true
setTimeout(() => {
// 加载更多数据
// ...
this.orderList.push(...[{}, {}, {}, {}, {}, {}, {}, {}, {}, {}])
// 加载完成
this.currentLoadStatus = this.loadStatus[2]
this.$nextTick(function () {
this.bottomLoading = false
})
}, 1000);
},
clickSwiper(index) {
},
handleScroll() {
console.log('-----scroll-------')
},
immediatelyIn() {
if (util.getToken()) {
uni.navigateTo({
url: 'pages/settle/index'
});
} else {
uni.navigateTo({
url: 'pages/login/index'
});
}
}
}
}
}
</script>
<style lang="scss" scoped>
.content {
height: 100vh;
}
.logo {
height: 200 rpx;
width: 100%;
margin: 0 rpx auto 50 rpx auto;
}
.text-area {
display: flex;
justify-content: center;
}
.title {
font-size: 36 rpx;
color: #8f8f94;
}
.sticky {
height: 120 rpx;
background-color: #2979ff;
color: #fff;
padding: 24 rpx;
text-align: left;
}
.order-view {
text-align: center;
}
</style>
......@@ -81,7 +81,7 @@ export default {
let params = {
nickname: app.globalData.authUserInfo.nickName,
avatar: app.globalData.authUserInfo.avatarUrl,
// wxAppNo: 1,
wxAppNo: 1,
}
login.appLogin().then(res => {
params.code = res.code
......@@ -113,7 +113,7 @@ export default {
avatar: app.globalData.authUserInfo.avatarUrl,
encryptedData: e.detail.encryptedData,
iv: e.detail.iv,
// wxAppNo: 1,
wxAppNo: 1,
}
login.appLogin().then(res => {
params.code = res.code
......
<template>
</template>
<template>
<view>
<view class="u-flex user-box u-p-l-30 u-p-r-20 u-p-b-30">
<view class="u-m-r-10">
<u-avatar :src="pic" size="140"></u-avatar>
</view>
<view class="u-flex-1">
<view class="u-font-18 u-p-b-20">uView ui</view>
<view class="u-font-14 u-tips-color">微信号:helang_uView</view>
</view>
</view>
<view class="u-m-t-20">
<u-cell-group>
<u-cell-item v-for="(item, index) in items" :title="item.title" :value="item.value" :key="index">
<u-icon slot="icon" size="32" name="search"></u-icon>
</u-cell-item>
</u-cell-group>
</view>
<view class="u-m-t-20">
<u-cell-group>
<u-cell-item icon="setting" title="设置"></u-cell-item>
</u-cell-group>
</view>
</view>
</template>
<script>
export default {
data() {
return {
pic:'https://uviewui.com/common/logo.png',
show:true
}
},
computed: {
items() {
return [
{title: '我的钱包', value: '', icon: ''},
{title: '我的质保金', value: '', icon: ''},
{title: '我的合同', value: '', icon: ''},
{title: '我的证件', value: '', icon: ''},
{title: '我的收货地址', value: '', icon: ''},
{title: '我的仓库', value: '', icon: ''},
{title: '联系客服', value: '6666666', icon: ''}]
}
},
onLoad() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<script>
</script>
<style>
</style>
<template>
<view class="content">
<view class="title">入驻基本信息</view>
<process :process="1" :type="0" title="业务流程"></process>
<view class="base-list">
<!--view class="item item-input flex-yc">
<label class="label">姓名</label>
<span class="required">*</span>
<input placeholder="请输入您的姓名" v-model.trim="baseInfo.name" class="input flex1" />
</view-->
<!--view class="item item-input flex u-row-between">
<label class="label">电话</label>
<span class="required">*</span>
<input placeholder="请输入您的电话" v-model="baseInfo.mobile" class="input flex1" />
</view-->
<view class="item item-select u-row-between">
<view class="label">实名认证</view>
<p class="u-flex-1 u-text-right txt">{{ areaTxts.slice(0,2).join(',') || "" }}</p>
<u-icon name="arrow-right" color="#999" size="28"></u-icon>
</view>
<view class="newAddressView">
<view class="newAddressTitleView" @click="locationClick()">
<view class="address">
<text class="itemTitle">收货地址</text>
</view>
<view class="right-margin-40">
<u-icon name="map" color="#999" size="34"></u-icon>
<text class="blueColor">定位</text>
</view>
</view>
<view class="addressBackView">
<textarea
class="addressTextAreaView"
maxlength="100"
v-model="baseInfo.address"
auto-height="true"
value=""
placeholder="请输入详细服务地址"
placeholder-style='color:#CCCCCC;font-size:28rpx;'/>
</view>
<view class="tips">(必填项)填写可接收物料的地址</view>
</view>
<view class="item item-select u-row-between" @click="gopage('/pages/settle/select?selectType=area')">
<view class="label">接单城市:</view>
<p class="u-flex-1 u-text-right txt">{{ areaTxts.slice(0,2).join(',') || "" }}</p>
<u-icon name="arrow-right" color="#999" size="28"></u-icon>
</view>
<view class="tips">(必选项)选择你可以服务的城市,可选多个</view>
<view class="item item-select u-row-between">
<view class="label">电工证</view>
<p class="u-flex-1 u-text-right txt">{{ areaTxts.slice(0,2).join(',') || "" }}</p>
<u-icon name="arrow-right" color="#999" size="28"></u-icon>
</view>
<view class="item item-select flex-yc" @click="gopage('/pages/settle/select?selectType=working_age')">
<view class="label">电工工龄(年):</view>
<p class="u-flex-1 u-text-right area" v-show="baseInfo.working_age !== ''">
......@@ -27,11 +49,12 @@
<!-- <i class="iconfont icon-xiangyou"></i> -->
</view>
<view class="tips">(必选项)选择你从事电工工作的工龄</view>
<!--view class="item item-input flex u-row-between">
<label class="label">详细地址:</label>
<u-icon name="map" color="#999" size="34"></u-icon>
</view-->
<!--view class="tips">{{baseInfo.address}}</view-->
<view class="item item-select u-row-between">
<view class="label">个人车辆信息</view>
<p class="u-flex-1 u-text-right txt">{{ areaTxts.slice(0,2).join(',') || "" }}</p>
<u-icon name="arrow-right" color="#999" size="28"></u-icon>
</view>
<view class="tips">(选填项)填写你的车辆信息</view>
<view class="itemView">
<view class="itemTitleView">
......@@ -49,43 +72,11 @@
</view>
<view class="tips bottom_padding_80">(选填项)输入可投入交付服务的人员数量</view>
<view class="newAddressView">
<view class="newAddressTitleView" @click="locationClick()">
<view class="address">
<text class="itemTitle">详细地址</text>
<!--text class="itemRedStar">*</text-->
</view>
<view class="right-margin-40">
<u-icon name="map" color="#999" size="34"></u-icon>
<text class="blueColor">定位</text>
</view>
</view>
<view class="addressBackView">
<textarea
class="addressTextAreaView"
maxlength="100"
v-model="baseInfo.address"
auto-height="true"
value=""
placeholder="请输入详细服务地址"
placeholder-style='color:#CCCCCC;font-size:28rpx;'/>
</view>
<view class="tips">(必填项)填写可接收物料的地址</view>
</view>
</view>
<view class="seat"></view>
<view class="btn-wrap flex-xc">
<button class="btn-submit" :disabled="!submitStatus" @click="$u.debounce(submitBaseInfo, 500)">
<!--view class="">submitBaseInfo</view-->
<!--button class="btn-submit" :disabled="!submitStatus" @click="submitBaseInfo()"-->
确定
</button>
</view>
......@@ -368,6 +359,7 @@
.label {
color: #333;
font-size: 32rpx;
font-weight: bold;
}
.txt {
......
<template>
<view class="back_view">
<image class="theme_image" :src="theme_url" mode="widthFix"></image>
<view class="wrap">
<process :process="0" :type="0" title="业务流程"></process>
<view class="introduction">
<view class="item">
<view class="label">
<text>招募要求</text>
</view>
<view class="content">
<text>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aenean euismod bibendum laoreet. Proin gravida dolor sit
amet lacus accumsan et viverra justo commodo. Proin sodales
pulvinar sic tempor. Sociis natoque penatibus et magnis dis
parturient montes, nascetur ridiculus mus. Nam fermentum,
nulla luctus pharetra vulputate, felis tellus 。
</text>
</view>
</view>
<view class="item">
<view class="label">
<text>结算价格</text>
</view>
<view class="content">
<text>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aenean euismod bibendum laoreet. Proin gravida dolor sit
amet lacus accumsan et viverra justo commodo. Proin sodales
pulvinar sic tempor. Sociis natoque penatibus et magnis dis
parturient montes, nascetur ridiculus mus. Nam fermentum,
nulla luctus pharetra vulputate, felis tellus 。
</text>
</view>
</view>
<view class="item">
<view class="label">
<text>入驻资料</text>
</view>
<view class="content">
<text>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aenean euismod bibendum laoreet. Proin gravida dolor sit
amet lacus accumsan et viverra justo commodo. Proin sodales
pulvinar sic tempor. Sociis natoque penatibus et magnis dis
parturient montes, nascetur ridiculus mus. Nam fermentum,
nulla luctus pharetra vulputate, felis tellus 。
</text>
</view>
</view>
<view class="item careful-color">
<view class="careful-content">
<text>注意事项:</text>
<text>
身份证、银行卡、签约人均为同一人,否则无法入驻;
</text>
<text>
充电桩材料按要求自行准备
</text>
</view>
</view>
</view>
<view class="bottom_view">
<button :class="isStop ? 'bottom_btn apply_color' : 'bottom_btn default_color' " @click="$u.debounce(applyClick, 500)">
<text class="bottom_title" v-if="!isStop">浏览 {{count}} 秒后可申请入驻</text>
<text class="bottom_title" v-if="isStop">申请入驻</text>
</button>
<!-- <view :class="isStop ? 'bottom_btn apply_color' : 'bottom_btn default_color' "
@click="$u.deapplyClick">
<text class="bottom_title" v-if="!isStop">浏览 {{count}} 秒后可申请入驻</text>
<text class="bottom_title" v-if="isStop">申请入驻</text>
</view> -->
</view>
</view>
</template>
<script>
import { process } from '@/components/process/process'
export default {
components: {
process
},
data() {
return {
theme_url:'https://qn-static.banshouhui.com/settle_theme.png?v=' + new Date().getTime(),
count:9,
......@@ -128,7 +184,18 @@
}
</script>
<style lang="scss">
<style>
/* page {
background-color: rgb(240, 242, 244);
} */
</style>
<style lang="scss" scoped>
.u-cell-icon {
width: 36rpx;
height: 36rpx;
margin-right: 8rpx;
}
.back_view{
background-color: #FFFFFF;
......@@ -189,5 +256,31 @@
.apply_color{
background-color: #2272FF;
}
.introduction {
border: 4rpx solid #2272FF;
border-radius: 10rpx;
background-color: #FFFFFF;
margin: 20rpx;
margin-bottom: 200rpx;
}
.introduction .item {
padding: 20rpx;
}
.introduction .item .label {
font-size: 32rpx;
padding: 10rpx;
}
.introduction .item .content {
font-size: 28rpx;
padding: 20rpx 40rpx 20rpx 40rpx;
}
.careful-color{
color: red;
}
.careful-content {
padding: 10rpx;
font-size: 32rpx;
}
</style>
......@@ -21,13 +21,13 @@
promptList:[{
status:1,
statusName:'待审核',
txtArr:['您已成功提交资料','正在审核中'],
txtArr:['已提交,等待审核','正在审核中'],
btnTxt:'去接单广场逛逛',
url:'/pages/take/index'
},{
status:2,
statusName:'已通过',
txtArr:['您已通过','“充电桩安装入驻审核”'],
txtArr:['恭喜,审核通过','“充电桩安装入驻审核”'],
btnTxt:'去考试',
url:'/pages/exam/start'
},{
......
<template>
<view class="content">
<process :process="3" :type="0" title="业务流程"></process>
<view class="content-txt">
<view class="title">入驻协议内容</view>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment