first commit
This commit is contained in:
167
pages/admin/shop/create.vue
Normal file
167
pages/admin/shop/create.vue
Normal file
@@ -0,0 +1,167 @@
|
||||
<template>
|
||||
<view style="padding: 30rpx;">
|
||||
<view style="height: 50rpx;"></view>
|
||||
<u--form labelPosition="left" :model="form" :rules="rules" errorType="border-bottom" ref="uForm"
|
||||
labelWidth="130rpx">
|
||||
<u-form-item label="昵称" prop="nickname" borderBottom>
|
||||
<u--input v-model="form.nickname" border="none"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="用户名" prop="username" borderBottom>
|
||||
<u--input v-model="form.username" border="none"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="密码" prop="password" borderBottom>
|
||||
<u--input v-model="form.password" type="password" border="none"></u--input>
|
||||
</u-form-item>
|
||||
|
||||
<u-form-item label="手机号" prop="mobile" borderBottom>
|
||||
<u--input v-model="form.mobile" type="mobile" border="none"></u--input>
|
||||
</u-form-item>
|
||||
|
||||
<u-form-item label="验证码" prop="code" borderBottom>
|
||||
<u-code-input v-model="form.code" :maxlength="4" mode="line"></u-code-input>
|
||||
<view slot="right">
|
||||
<u-toast ref="uToast"></u-toast>
|
||||
<u-code :seconds="code.seconds" @end="end" @start="start" ref="uCode" @change="codeChange"></u-code>
|
||||
<u-button type="primary" @tap="getCode">{{code.tips}}</u-button>
|
||||
</view>
|
||||
</u-form-item>
|
||||
<u-form-item label="等级" borderBottom>
|
||||
<u-number-box v-model="form.vip" :min="0" :max="9"></u-number-box>
|
||||
</u-form-item>
|
||||
|
||||
</u--form>
|
||||
<view style="height: 100rpx;"></view>
|
||||
<u-button type="primary" @click="userlogin">提交</u-button>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
API_URL,
|
||||
STATIC_URL
|
||||
} from '@/env'
|
||||
let self;
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
form: {
|
||||
nickname: '',
|
||||
username: '',
|
||||
password: '',
|
||||
mobile: '',
|
||||
code: '',
|
||||
invite_code: '',
|
||||
vip: 0
|
||||
},
|
||||
rules: {
|
||||
'nickname': {
|
||||
type: 'string',
|
||||
required: true,
|
||||
message: '昵称必填项',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
'username': {
|
||||
type: 'string',
|
||||
required: true,
|
||||
message: '用户名必填项',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
'password': {
|
||||
type: 'string',
|
||||
required: true,
|
||||
message: '密码必填项',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
'mobile': {
|
||||
type: 'string',
|
||||
required: true,
|
||||
message: '手机号必填项',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
'code': {
|
||||
type: 'string',
|
||||
required: true,
|
||||
message: '验证码必填项',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
|
||||
},
|
||||
code: {
|
||||
tips: '获取验证码',
|
||||
// refCode: null,
|
||||
seconds: 60,
|
||||
}
|
||||
}
|
||||
},
|
||||
onLoad(option) {
|
||||
self = this;
|
||||
if (option && option.invite_code) {
|
||||
self.form.invite_code = option.invite_code;
|
||||
}
|
||||
},
|
||||
onReady() {
|
||||
//onReady 为uni-app支持的生命周期之一
|
||||
self.$refs.uForm.setRules(self.rules)
|
||||
},
|
||||
methods: {
|
||||
topage(url) {
|
||||
uni.redirectTo({
|
||||
url: url
|
||||
})
|
||||
},
|
||||
codeChange(text) {
|
||||
self.code.tips = text;
|
||||
},
|
||||
getCode() {
|
||||
if (self.form.mobile.length != 11) {
|
||||
uni.$u.toast('请输入手机号');
|
||||
return;
|
||||
}
|
||||
if (self.$refs.uCode.canGetCode) {
|
||||
// 模拟向后端请求验证码
|
||||
uni.showLoading({
|
||||
title: '正在获取验证码'
|
||||
})
|
||||
self.$http.get('/com/sms/sendcode', self.form).then(res => {
|
||||
if (res.success) {
|
||||
uni.hideLoading();
|
||||
// 这里此提示会被this.start()方法中的提示覆盖
|
||||
uni.$u.toast('验证码已发送');
|
||||
// 通知验证码组件内部开始倒计时
|
||||
self.$refs.uCode.start();
|
||||
}
|
||||
})
|
||||
} else {
|
||||
uni.$u.toast('倒计时结束后再发送');
|
||||
}
|
||||
},
|
||||
end() {
|
||||
uni.$u.toast('倒计时结束');
|
||||
},
|
||||
start() {
|
||||
uni.$u.toast('倒计时开始');
|
||||
},
|
||||
userlogin() {
|
||||
|
||||
this.$refs.uForm.validate().then(res => {
|
||||
self.$http.get('/shop/admin/shop/create', self.form).then(res => {
|
||||
if (res.success) {
|
||||
uni.navigateBack();
|
||||
}
|
||||
})
|
||||
}).catch(errors => {
|
||||
|
||||
uni.$u.toast(errors[0].message)
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
||||
128
pages/admin/shop/index.vue
Normal file
128
pages/admin/shop/index.vue
Normal file
@@ -0,0 +1,128 @@
|
||||
<template>
|
||||
<view class="xkl-com-bg">
|
||||
<view style="height: 20rpx;"></view>
|
||||
<navigator url="/pages/admin/shop/create">
|
||||
<u-button type="primary">添加</u-button>
|
||||
</navigator>
|
||||
<view style="height: 20rpx;"></view>
|
||||
<u-search placeholder="请输入手机号" shape="square" v-model="search.mobile" @search="onsearch"></u-search>
|
||||
<view style="height: 20rpx;"></view>
|
||||
<view>
|
||||
<navigator :url="`/pages/team/detail?team_shop_id=${item.id}`" v-for="(item,index) in shopItems"
|
||||
:key="index"
|
||||
style="background-color: #ffffff;color: #666666;padding: 20rpx;font-size: 28rpx; margin-bottom: 20rpx;border-radius: 12rpx;">
|
||||
<view class="u-flex">
|
||||
<view>
|
||||
<view>用户名:{{item.username}}</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view>手机号:{{item.mobile}}</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view>余额:{{item.money}}</view>
|
||||
</view>
|
||||
<view style="width: 100rpx;"></view>
|
||||
<view>
|
||||
<view>等级:v{{item.vip}}</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view>充电桩:{{item.device_num}}</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view>已安装:{{item.install_num}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view style="height: 20rpx;"></view>
|
||||
<view>注册时间:{{item.created_at}}</view>
|
||||
<!-- <view class="u-flex u-flex-between">
|
||||
<view>用户名:{{item.username}}</view>
|
||||
<view>手机号:{{item.mobile}}</view>
|
||||
</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view class="u-flex u-flex-between">
|
||||
<view>等级:v{{item.vip}}</view>
|
||||
<view>余额:{{item.money}}</view>
|
||||
</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view class="u-flex u-flex-between">
|
||||
<view>充电桩:{{item.device_num}}</view>
|
||||
<view>已安装:{{item.install_num}}</view>
|
||||
</view>
|
||||
<view style="height: 10rpx;"></view>
|
||||
<view>注册时间:{{item.created_at}}</view> -->
|
||||
</navigator>
|
||||
</view>
|
||||
<u-loadmore :status="loadStatus" />
|
||||
<view style="height: 100rpx;"></view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
let self;
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
shopItems: [],
|
||||
status: [],
|
||||
type: [],
|
||||
loadStatus: 'loadmore',
|
||||
search: {
|
||||
page: 1,
|
||||
status: 0,
|
||||
mobile: ''
|
||||
},
|
||||
page: {
|
||||
current: 0,
|
||||
last_page: 1
|
||||
}
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
self = this;
|
||||
},
|
||||
onShow() {
|
||||
self.shopItems = [];
|
||||
self.getShopItems();
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
self.search.page = 1;
|
||||
self.shopItems = [];
|
||||
self.getShopItems();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
onReachBottom() {
|
||||
if (!self.pageStatus()) {
|
||||
return;
|
||||
}
|
||||
self.loadStatus = 'loading';
|
||||
self.search.page = ++self.search.page;
|
||||
self.getShopItems();
|
||||
},
|
||||
methods: {
|
||||
onsearch() {
|
||||
self.shopItems = [];
|
||||
self.getShopItems();
|
||||
},
|
||||
pageStatus() {
|
||||
self.loadStatus = 'loadmore';
|
||||
if (self.search.page >= self.page.last_page) {
|
||||
self.loadStatus = 'nomore';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
|
||||
|
||||
getShopItems() {
|
||||
self.$http.get('/shop/admin/shop/items', self.search).then(({
|
||||
data,
|
||||
success
|
||||
}) => {
|
||||
self.shopItems = self.shopItems.concat(data.data);
|
||||
self.page.last_page = data.last_page;
|
||||
self.pageStatus();
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
</style>
|
||||
Reference in New Issue
Block a user