11.27.14.18
16
gasStation-uni/.hbuilderx/launch.json
Normal file
@ -0,0 +1,16 @@
|
||||
{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/
|
||||
// launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数
|
||||
"version": "0.0",
|
||||
"configurations": [{
|
||||
"default" :
|
||||
{
|
||||
"launchtype" : "local"
|
||||
},
|
||||
"mp-weixin" :
|
||||
{
|
||||
"launchtype" : "local"
|
||||
},
|
||||
"type" : "uniCloud"
|
||||
}
|
||||
]
|
||||
}
|
57
gasStation-uni/App.vue
Normal file
@ -0,0 +1,57 @@
|
||||
<script>
|
||||
export default {
|
||||
onLaunch: function() {
|
||||
console.log('App Launch')
|
||||
// #ifdef MP-WEIXIN
|
||||
//检查是否存在新版本
|
||||
uni.getUpdateManager().onCheckForUpdate(function(res) {
|
||||
// 请求完新版本信息的回调
|
||||
console.log("是否有新版本:" + res.hasUpdate);
|
||||
if (res.hasUpdate) { //如果有新版本
|
||||
|
||||
// 小程序有新版本,会主动触发下载操作(无需开发者触发)
|
||||
uni.getUpdateManager().onUpdateReady(function() { //当新版本下载完成,会进行回调
|
||||
uni.showModal({
|
||||
title: '更新提示',
|
||||
content: '新版本已经准备好,单击确定重启应用',
|
||||
showCancel: false,
|
||||
success: function(res) {
|
||||
if (res.confirm) {
|
||||
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
|
||||
uni.getUpdateManager().applyUpdate();
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
})
|
||||
|
||||
// 小程序有新版本,会主动触发下载操作(无需开发者触发)
|
||||
uni.getUpdateManager().onUpdateFailed(function() { //当新版本下载失败,会进行回调
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
content: '检查到有新版本,但下载失败,请检查网络设置',
|
||||
showCancel: false,
|
||||
})
|
||||
})
|
||||
}
|
||||
});
|
||||
// #endif
|
||||
},
|
||||
onShow: function() {
|
||||
console.log('App Show')
|
||||
},
|
||||
onHide: function() {
|
||||
console.log('App Hide')
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
// /*每个页面公共css */
|
||||
@import "@/node_modules/uview-ui/index.scss";
|
||||
|
||||
|
||||
.dis {
|
||||
display: flex;
|
||||
}
|
||||
</style>
|
47
gasStation-uni/api/login.js
Normal file
@ -0,0 +1,47 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 登录方法
|
||||
export function login(username, password, code, uuid) {
|
||||
const data = {
|
||||
username,
|
||||
password,
|
||||
code,
|
||||
uuid
|
||||
}
|
||||
return request({
|
||||
'url': '/login',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
'method': 'post',
|
||||
'data': data
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户详细信息
|
||||
export function getInfo() {
|
||||
return request({
|
||||
'url': '/getInfo',
|
||||
'method': 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 退出方法
|
||||
export function logout() {
|
||||
return request({
|
||||
'url': '/logout',
|
||||
'method': 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取验证码
|
||||
export function getCodeImg() {
|
||||
return request({
|
||||
'url': '/captchaImage',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'get',
|
||||
timeout: 20000
|
||||
})
|
||||
}
|
41
gasStation-uni/api/system/user.js
Normal file
@ -0,0 +1,41 @@
|
||||
import upload from '@/utils/upload'
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 用户密码重置
|
||||
export function updateUserPwd(oldPassword, newPassword) {
|
||||
const data = {
|
||||
oldPassword,
|
||||
newPassword
|
||||
}
|
||||
return request({
|
||||
url: '/system/user/profile/updatePwd',
|
||||
method: 'put',
|
||||
params: data
|
||||
})
|
||||
}
|
||||
|
||||
// 查询用户个人信息
|
||||
export function getUserProfile() {
|
||||
return request({
|
||||
url: '/system/user/profile',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 修改用户个人信息
|
||||
export function updateUserProfile(data) {
|
||||
return request({
|
||||
url: '/system/user/profile',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 用户头像上传
|
||||
export function uploadAvatar(data) {
|
||||
return upload({
|
||||
url: '/system/user/profile/avatar',
|
||||
name: data.name,
|
||||
filePath: data.filePath
|
||||
})
|
||||
}
|
123
gasStation-uni/components/tabbar/tabbar.vue
Normal file
@ -0,0 +1,123 @@
|
||||
<template>
|
||||
<view class="bar">
|
||||
<view class="barbox" @click="gogogo(1)">
|
||||
<view class="bar-img">
|
||||
<image v-show="actindex == 1" src="../../static/imgs/homex.png" mode=""></image>
|
||||
<image v-show="actindex != 1" src="../../static/imgs/home.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">首页</view>
|
||||
</view>
|
||||
<view class="barbox" @click="gogogo(2)">
|
||||
<view class="centerbox">
|
||||
<view class="qiu">
|
||||
<image src="../../static/imgs/jy.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="">一键加油</view>
|
||||
</view>
|
||||
<view class="barbox" @click="gogogo(3)">
|
||||
<view class="bar-img">
|
||||
<image v-show="actindex == 3" src="../../static/imgs/myx.png" mode=""></image>
|
||||
<image v-show="actindex != 3" src="../../static/imgs/my.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">我的</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
actindex: 1,
|
||||
}
|
||||
},
|
||||
props: {
|
||||
msg: String
|
||||
},
|
||||
mounted() {
|
||||
this.actindex = this.msg
|
||||
},
|
||||
methods: {
|
||||
gogogo(id) {
|
||||
this.actindex = id
|
||||
if (id == 1) {
|
||||
uni.reLaunch({
|
||||
url: '/pages/index/index'
|
||||
})
|
||||
}
|
||||
if (id == 2) {
|
||||
uni.reLaunch({
|
||||
url: '/pages/refuel/refuel'
|
||||
})
|
||||
}
|
||||
if (id == 3) {
|
||||
uni.reLaunch({
|
||||
url: '/pages/my/my'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.bar {
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
background-color: white;
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
font-size: 12px;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
}
|
||||
|
||||
.barbox {
|
||||
width: 33%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.centerbox {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
background-color: white;
|
||||
border-radius: 50%;
|
||||
margin: 0 auto;
|
||||
margin-top: -30px;
|
||||
box-sizing: border-box;
|
||||
padding: 5px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.qiu {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 50%;
|
||||
background: linear-gradient(135deg, #2FF7D3 0%, #2F72F7 100%);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
image {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.bar-img {
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
margin: 0px auto;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
29
gasStation-uni/config.js
Normal file
@ -0,0 +1,29 @@
|
||||
// 应用全局配置
|
||||
module.exports = {
|
||||
// baseUrl: 'https://vue.ruoyi.vip/prod-api',
|
||||
baseUrl: 'http://192.168.0.196:8081/',
|
||||
// baseUrl: 'http://192.168.1.5:8002/cdJdc',
|
||||
|
||||
imagesUrl: 'http://www.nuoyunr.com/lananRsc',
|
||||
// 应用信息
|
||||
appInfo: {
|
||||
// 应用名称
|
||||
name: "ruoyi-app",
|
||||
// 应用版本
|
||||
version: "1.1.0",
|
||||
// 应用logo
|
||||
logo: "http://www.nuoyunr.com/lananRsc/logo.png'",
|
||||
// 官方网站
|
||||
site_url: "http://ruoyi.vip",
|
||||
// 政策协议
|
||||
agreements: [{
|
||||
title: "隐私政策",
|
||||
url: "https://ruoyi.vip/protocol.html"
|
||||
},
|
||||
{
|
||||
title: "用户服务协议",
|
||||
url: "https://ruoyi.vip/protocol.html"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
20
gasStation-uni/index.html
Normal file
@ -0,0 +1,20 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<script>
|
||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
|
||||
CSS.supports('top: constant(a)'))
|
||||
document.write(
|
||||
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
|
||||
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
||||
</script>
|
||||
<title></title>
|
||||
<!--preload-links-->
|
||||
<!--app-context-->
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"><!--app-html--></div>
|
||||
<script type="module" src="/main.js"></script>
|
||||
</body>
|
||||
</html>
|
32
gasStation-uni/main.js
Normal file
@ -0,0 +1,32 @@
|
||||
import App from './App'
|
||||
import uView from "uview-ui";
|
||||
Vue.use(uView);
|
||||
import config from '@/config'
|
||||
|
||||
import share from './utils/share.js'
|
||||
Vue.mixin(share)
|
||||
const baseUrl = config.baseUrl
|
||||
Vue.prototype.$baseUrl = baseUrl;
|
||||
|
||||
// #ifndef VUE3
|
||||
import Vue from 'vue'
|
||||
import './uni.promisify.adaptor'
|
||||
Vue.config.productionTip = false
|
||||
App.mpType = 'app'
|
||||
const app = new Vue({
|
||||
...App
|
||||
})
|
||||
app.$mount()
|
||||
// #endif
|
||||
|
||||
// #ifdef VUE3
|
||||
import {
|
||||
createSSRApp
|
||||
} from 'vue'
|
||||
export function createApp() {
|
||||
const app = createSSRApp(App)
|
||||
return {
|
||||
app
|
||||
}
|
||||
}
|
||||
// #endif
|
75
gasStation-uni/manifest.json
Normal file
@ -0,0 +1,75 @@
|
||||
{
|
||||
"name" : "gasStation",
|
||||
"appid" : "__UNI__F922205",
|
||||
"description" : "",
|
||||
"versionName" : "1.0.0",
|
||||
"versionCode" : "100",
|
||||
"transformPx" : false,
|
||||
/* 5+App特有相关 */
|
||||
"app-plus" : {
|
||||
"usingComponents" : true,
|
||||
"nvueStyleCompiler" : "uni-app",
|
||||
"compilerVersion" : 3,
|
||||
"splashscreen" : {
|
||||
"alwaysShowBeforeRender" : true,
|
||||
"waiting" : true,
|
||||
"autoclose" : true,
|
||||
"delay" : 0
|
||||
},
|
||||
/* 模块配置 */
|
||||
"modules" : {},
|
||||
/* 应用发布信息 */
|
||||
"distribute" : {
|
||||
/* android打包配置 */
|
||||
"android" : {
|
||||
"permissions" : [
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
|
||||
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
|
||||
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
|
||||
]
|
||||
},
|
||||
/* ios打包配置 */
|
||||
"ios" : {},
|
||||
/* SDK配置 */
|
||||
"sdkConfigs" : {}
|
||||
}
|
||||
},
|
||||
/* 快应用特有相关 */
|
||||
"quickapp" : {},
|
||||
/* 小程序特有相关 */
|
||||
"mp-weixin" : {
|
||||
"appid" : "wx7ad01a99a7247643",
|
||||
"setting" : {
|
||||
"urlCheck" : false,
|
||||
"es6" : true,
|
||||
"postcss" : true,
|
||||
"minified" : true
|
||||
},
|
||||
"usingComponents" : true
|
||||
},
|
||||
"mp-alipay" : {
|
||||
"usingComponents" : true
|
||||
},
|
||||
"mp-baidu" : {
|
||||
"usingComponents" : true
|
||||
},
|
||||
"mp-toutiao" : {
|
||||
"usingComponents" : true
|
||||
},
|
||||
"uniStatistics" : {
|
||||
"enable" : false
|
||||
},
|
||||
"vueVersion" : "2"
|
||||
}
|
2240
gasStation-uni/package-lock.json
generated
Normal file
10
gasStation-uni/package.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"dependencies": {
|
||||
"@dcloudio/uni-ui": "^1.4.28",
|
||||
"uview-ui": "^2.0.36"
|
||||
},
|
||||
"devDependencies": {
|
||||
"sass": "^1.69.5",
|
||||
"sass-loader": "^10.4.1"
|
||||
}
|
||||
}
|
69
gasStation-uni/package/cji/cji.vue
Normal file
@ -0,0 +1,69 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">样版页</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
</style>
|
202
gasStation-uni/pages.json
Normal file
@ -0,0 +1,202 @@
|
||||
{
|
||||
"easycom": {
|
||||
"autoscan": true,
|
||||
"custom": {
|
||||
// uni-ui 规则如下配置
|
||||
"^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"
|
||||
}
|
||||
},
|
||||
"subPackages": [{
|
||||
"root": "package",
|
||||
"pages": [{
|
||||
"path": "cji/cji",
|
||||
"style": {
|
||||
"navigationBarTitleText": "样板页"
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"root": "pagesHome",
|
||||
"pages": [{
|
||||
"path": "Activity/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "本站活动",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "Address/Address",
|
||||
"style": {
|
||||
"navigationBarTitleText": "选择收货地址",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "oilRecharge/oilRecharge",
|
||||
"style": {
|
||||
"navigationBarTitleText": "油卡充值",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "myPointsOrder/myPointsOrder",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的订单",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "editress/editress",
|
||||
"style": {
|
||||
"navigationBarTitleText": "编辑收货地址",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"path": "goodsDetails/goodsDetails",
|
||||
"style": {
|
||||
"navigationBarTitleText": "商品详情",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "order/order",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提交订单",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "PointsMall/PointsMall",
|
||||
"style": {
|
||||
"navigationBarTitleText": "积分商城",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "PointsMing/PointsMing",
|
||||
"style": {
|
||||
"navigationBarTitleText": "积分明细",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "Pointsdetail/Pointsdetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "积分规则",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "MyCard/MyCard",
|
||||
"style": {
|
||||
"navigationBarTitleText": "卡包",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"root": "pagesRefuel",
|
||||
"pages": [{
|
||||
"path": "pagesRefuel/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "选择站点",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"root": "pagesMy",
|
||||
"pages": [{
|
||||
"path": "setup/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "设置",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "integral/integral",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的积分",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "myorder/myorder",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的订单",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "moneyBalance/moneyBalance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "储值余额",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "oilBalance/oilBalance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "囤油余额",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "today/today",
|
||||
"style": {
|
||||
"navigationBarTitleText": "今日油价",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "details/details",
|
||||
"style": {
|
||||
"navigationBarTitleText": "详情",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "comment/comment",
|
||||
"style": {
|
||||
"navigationBarTitleText": "评论",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
],
|
||||
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
|
||||
{
|
||||
"path": "pages/index/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "首页",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/refuel/refuel",
|
||||
"style": {
|
||||
"navigationBarTitleText": "一键加油",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/my/my",
|
||||
"style": {
|
||||
"navigationBarTitleText": "个人中心",
|
||||
"navigationStyle": "custom"
|
||||
}
|
||||
}
|
||||
],
|
||||
"globalStyle": {
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "uni-app",
|
||||
"navigationBarBackgroundColor": "#F8F8F8",
|
||||
"backgroundColor": "#F8F8F8"
|
||||
},
|
||||
"uniIdRouter": {}
|
||||
}
|
441
gasStation-uni/pages/index/index.vue
Normal file
@ -0,0 +1,441 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<!--外层 -->
|
||||
<!-- 顶部 -->
|
||||
<view class="conttainer-top">
|
||||
<!-- 标题 -->
|
||||
<view class="top-title">
|
||||
出行服务 优惠加油
|
||||
</view>
|
||||
<view class="lan-gang">
|
||||
<view class="lsiez"> <uni-icons type="checkbox" color="#ffffff" size="10"></uni-icons> 一键加油</view>
|
||||
<view class="lsiez"> <uni-icons type="checkbox" color="#ffffff" size="10"></uni-icons> 最近油站</view>
|
||||
<view class="lsiez"> <uni-icons type="checkbox" color="#ffffff" size="10"></uni-icons> 地址导航</view>
|
||||
</view>
|
||||
<!-- 金刚区 -->
|
||||
<view class="conttainer-jg">
|
||||
<view class="jg-box">
|
||||
<view class="jg-img">
|
||||
<image src="../../static/imgs/viprwm.png" mode=""></image>
|
||||
</view>
|
||||
<view class="jg-size">便利店</view>
|
||||
</view>
|
||||
<view class="jg-box" @click="goActivity()">
|
||||
<view class="jg-img">
|
||||
<image src="../../static/imgs/bzhd.png" mode=""></image>
|
||||
</view>
|
||||
<view class="jg-size">本站活动</view>
|
||||
</view>
|
||||
<view class="jg-box" @click="gocard()">
|
||||
<view class="jg-img">
|
||||
<image src="../../static/imgs/ykcz.png" mode=""></image>
|
||||
</view>
|
||||
<view class="jg-size">油卡充值</view>
|
||||
</view>
|
||||
<view class="jg-box" @click="gomall()">
|
||||
<view class="jg-img">
|
||||
<image src="../../static/imgs/jfsc.png" mode=""></image>
|
||||
</view>
|
||||
<view class="jg-size">积分商城</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<!-- 金刚区结束 -->
|
||||
</view>
|
||||
<!-- 顶部结束 -->
|
||||
<!-- centenr -->
|
||||
<view class="conttainer-cetr">
|
||||
<view class="conttainer-title">今日会员价</view>
|
||||
<view class="conttainer-box">
|
||||
<view class="c-box-box1" @click="show = true">
|
||||
<view class="">92#</view>
|
||||
<view class="">
|
||||
<u-icon name="arrow-down-fill"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<view class="c-box-box2">
|
||||
<view class="xred">会员价</view>
|
||||
<view class="dred"> <text class="xred">¥</text> 6.55</view>
|
||||
</view>
|
||||
<view class="c-box-box3">
|
||||
<view class="xblck">国际价</view>
|
||||
<view class="dblck"> <text class="xblck">¥</text> 6.55</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<!-- centenr结束 -->
|
||||
<!-- 加油站卡片-->
|
||||
<view class="station">
|
||||
<view class="station-box">
|
||||
|
||||
<view class="station-title">顺通石化加油站(工业南路站)</view>
|
||||
<view class="bule-icon">全天营业</view>
|
||||
<view class="dis-bt">
|
||||
<view class="">
|
||||
<view class="hui1">济南市历城区工业南路</view>
|
||||
<view class="hui2">891.9km</view>
|
||||
</view>
|
||||
<view class="lananniu" @click="gogogo"> <uni-icons type="paperplane-filled" color="#195ADA"
|
||||
size="16"></uni-icons> 984.6米</view>
|
||||
</view>
|
||||
<!-- <scroll-view scroll-x="true">
|
||||
<view class="scrollbox" >
|
||||
<view style="margin: 0px 10px;" v-for="(item,index) in 13" :key="index">123123</view>
|
||||
</view>
|
||||
</scroll-view> -->
|
||||
<u-swiper :list="list3" previousMargin="30" nextMargin="30" circular :autoplay="false" radius="5"
|
||||
bgColor="#ffffff"></u-swiper>
|
||||
<view class="juanniu" @click="gooil()">
|
||||
<view class="">一键加油</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
</view>
|
||||
<view style="height: 88px; width: 100%;"></view>
|
||||
</view>
|
||||
<!-- 加油站卡片结束-->
|
||||
<u-picker :show="show" :columns="columns" @confirm="confirm" @cancel="cancel"></u-picker>
|
||||
<!--外层结束 -->
|
||||
<tabbar :msg="msg"></tabbar>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import tabbar from "../../components/tabbar/tabbar.vue"
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
msg: "1",
|
||||
show: false,
|
||||
title: '',
|
||||
columns: [
|
||||
['#92', '#95', '#98']
|
||||
],
|
||||
list3: [
|
||||
'http://47.95.206.185:83/topbj.png',
|
||||
'http://47.95.206.185:83/centerbj.png',
|
||||
'https://cdn.uviewui.com/uview/swiper/swiper1.png',
|
||||
],
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
|
||||
},
|
||||
components: {
|
||||
tabbar
|
||||
},
|
||||
methods: {
|
||||
confirm(e) {
|
||||
console.log('选中的油号', e);
|
||||
this.show = false
|
||||
},
|
||||
cancel() {
|
||||
this.show = false
|
||||
},
|
||||
goActivity() {
|
||||
// 去活动页
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/Activity/index'
|
||||
})
|
||||
},
|
||||
gocard() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/MyCard/MyCard'
|
||||
})
|
||||
},
|
||||
gooil() {
|
||||
uni.navigateTo({
|
||||
url: '/pages/refuel/refuel'
|
||||
})
|
||||
},
|
||||
gomall() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/PointsMall/PointsMall'
|
||||
})
|
||||
},
|
||||
gogogo() {
|
||||
uni.openLocation({
|
||||
latitude: 36.651441,
|
||||
longitude: 116.901224,
|
||||
success: function() {
|
||||
console.log('success');
|
||||
},
|
||||
complete: function(res) {
|
||||
console.log(res);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #ebf5ff;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
}
|
||||
|
||||
.conttainer-top {
|
||||
width: 100%;
|
||||
height: 250px;
|
||||
// background-color: #3da4df;
|
||||
background: url('http://47.95.206.185:83/topbj.png')center no-repeat;
|
||||
background-size: 100% 100%;
|
||||
position: relative;
|
||||
margin-bottom: 60px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
.top-title {
|
||||
font-size: 26px;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
color: #FFFFFF;
|
||||
line-height: 25px;
|
||||
text-shadow: 0px 2px 0px #2F64CD;
|
||||
position: absolute;
|
||||
top: 120px;
|
||||
left: 20px;
|
||||
}
|
||||
|
||||
.lan-gang {
|
||||
width: 200px;
|
||||
height: 22px;
|
||||
background: #2F43F7;
|
||||
border-radius: 11px;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
position: absolute;
|
||||
top: 155px;
|
||||
left: 20px;
|
||||
color: white;
|
||||
|
||||
}
|
||||
|
||||
.lsiez {
|
||||
font-size: 10px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.conttainer-jg {
|
||||
width: 95%;
|
||||
border-radius: 6px;
|
||||
background: white;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
height: 90px;
|
||||
margin: 0px auto;
|
||||
position: absolute;
|
||||
transform: translate(-50%, -50%);
|
||||
left: 50%;
|
||||
bottom: -90px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.conttainer-cetr {
|
||||
width: 95%;
|
||||
border-radius: 6px;
|
||||
background: white;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin: 10px auto;
|
||||
}
|
||||
|
||||
.jg-box {
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.jg-img {
|
||||
width: 38px;
|
||||
height: 38px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
margin: 5px auto;
|
||||
}
|
||||
|
||||
.jg-size {
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.conttainer-title {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.conttainer-box {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
background: #F3F6F9;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-radius: 8px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.c-box-box1 {
|
||||
width: 33%;
|
||||
height: 44px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.c-box-box2 {
|
||||
width: 33%;
|
||||
height: 44px;
|
||||
text-align: center;
|
||||
border-left: 1px solid #DDDDDD;
|
||||
border-right: 1px solid #DDDDDD;
|
||||
}
|
||||
|
||||
.c-box-box3 {
|
||||
width: 33%;
|
||||
height: 44px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.xblck {
|
||||
font-size: 14px;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.dblck {
|
||||
font-size: 20px;
|
||||
color: #333333;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.xred {
|
||||
font-size: 14px;
|
||||
color: #ED2828;
|
||||
}
|
||||
|
||||
.dred {
|
||||
font-size: 20px;
|
||||
color: #ED2828;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.station {
|
||||
width: 100%;
|
||||
height: 120px;
|
||||
background: url('http://47.95.206.185:83/centerbj.png')center no-repeat;
|
||||
background-size: 100% 100%;
|
||||
box-sizing: border-box;
|
||||
padding-top: 30px;
|
||||
}
|
||||
|
||||
.station-box {
|
||||
width: 95%;
|
||||
background-color: white;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
margin: 0px auto;
|
||||
}
|
||||
|
||||
.station-title {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.bule-icon {
|
||||
width: 70px;
|
||||
font-size: 12px;
|
||||
color: #195ADA;
|
||||
box-sizing: border-box;
|
||||
padding: 2px 5px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border: 1px solid #195ADA;
|
||||
border-radius: 4px;
|
||||
margin: 5px 0px;
|
||||
}
|
||||
|
||||
.dis-bt {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.hui1 {
|
||||
color: #666666;
|
||||
font-size: 12px;
|
||||
margin: 5px auto;
|
||||
}
|
||||
|
||||
.hui2 {
|
||||
color: #999999;
|
||||
font-size: 12px;
|
||||
margin: 5px auto;
|
||||
}
|
||||
|
||||
.lananniu {
|
||||
width: 78px;
|
||||
height: 24px;
|
||||
background: #DBE9FF;
|
||||
border-radius: 12px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 14px;
|
||||
color: #195ADA;
|
||||
|
||||
}
|
||||
|
||||
.tabs {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
height: 44px;
|
||||
|
||||
}
|
||||
|
||||
.scrollbox {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.scrollbox-imgs {
|
||||
|
||||
width: 195px;
|
||||
height: 100px;
|
||||
border-radius: 4px;
|
||||
background-color: #195ADA;
|
||||
margin: 0px 10px;
|
||||
}
|
||||
|
||||
.juanniu {
|
||||
height: 36px;
|
||||
background: linear-gradient(90deg, #FF7302 0%, #FF5210 100%);
|
||||
border-radius: 42px;
|
||||
justify-content: center;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
color: white;
|
||||
margin-top: 20px;
|
||||
|
||||
|
||||
}
|
||||
</style>
|
374
gasStation-uni/pages/my/my.vue
Normal file
@ -0,0 +1,374 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-text">个人中心</view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="my-top">
|
||||
<view class="dis-box">
|
||||
<view class="dis">
|
||||
<view class="touxiang" @click="gosetup">
|
||||
<image src="../../static/imgs/myx.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="user-tel">135****7106</view>
|
||||
<view class="user-name" @click="gorefuel">蓝鲸加油站(总站)<uni-icons type="right" color="#c1c1ff"
|
||||
size="12"></uni-icons> </view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="vipnber">会员等级 <uni-icons type="right" color="#ffffff" size="16"></uni-icons></view>
|
||||
</view>
|
||||
<view class="my-top-box">
|
||||
<view class="jg-box" @click="gomony()">
|
||||
<view class="jg-box-title">储值余额</view>
|
||||
<view class="jg-box-nmb">0.00</view>
|
||||
</view>
|
||||
<text style="color: #999999;">|</text>
|
||||
<view class="jg-box" @click="gooil()">
|
||||
<view class="jg-box-title">囤油升数</view>
|
||||
<view class="jg-box-nmb">0.00</view>
|
||||
</view>
|
||||
|
||||
<text style="color: #999999;">|</text>
|
||||
<view class="jg-box">
|
||||
<view class="jg-box-title">卡券</view>
|
||||
<view class="jg-box-nmb">0</view>
|
||||
</view>
|
||||
<text style="color: #999999;">|</text>
|
||||
<view class="jg-box" style="border: none;" @click="gointegral()">
|
||||
<view class="jg-box-title">我的积分</view>
|
||||
<view class="jg-box-nmb">0</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="my-top-box" style="margin-top: 45px;">
|
||||
<view class="centenr-sx" @click="gomyorder()">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/dingdan.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
我的订单
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/dsy.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
待使用
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/ywc.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
已完成
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/dpj.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
待评价
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-centenr">
|
||||
<view class="box-centenr-title">我的服务</view>
|
||||
<view class="wrap-box">
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/lpk.png"></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
礼品卡
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx" @click="gotodaby">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/jryj.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
今日油价
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/jl.png" mode=""></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
核销记录
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/chongzhi.png" style="width: 30px;height: 30px; "></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
充值记录
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/lp.png" style="width: 30px;height: 30px; "></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
邀请有礼
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/jfsc.png" style="width: 30px;height: 30px; "></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
积分商城
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/kb.png"></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
子卡管理
|
||||
</view>
|
||||
</view>
|
||||
<view class="centenr-sx">
|
||||
<view class="centenr-img">
|
||||
<image src="../../static/my/yj.png"></image>
|
||||
</view>
|
||||
<view class="centenr-size">
|
||||
意见反馈
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<u-divider text="蓝鲸智慧加油站" :hairline="true"></u-divider>
|
||||
<tabbar :msg="msg"></tabbar>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import tabbar from "../../components/tabbar/tabbar.vue"
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
msg: "3",
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
tabbar
|
||||
},
|
||||
methods: {
|
||||
gomyorder() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/myorder/myorder'
|
||||
})
|
||||
},
|
||||
gotodaby() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/today/today'
|
||||
})
|
||||
},
|
||||
gointegral() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/integral/integral'
|
||||
})
|
||||
},
|
||||
gooil() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/oilBalance/oilBalance'
|
||||
})
|
||||
},
|
||||
gomony() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/moneyBalance/moneyBalance'
|
||||
})
|
||||
},
|
||||
gosetup() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/setup/index'
|
||||
})
|
||||
},
|
||||
gorefuel() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesRefuel/pagesRefuel/index'
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #304fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
|
||||
.my-text {
|
||||
margin-top: 40px
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.my-top {
|
||||
height: 150px;
|
||||
width: 100%;
|
||||
background: #304fff;
|
||||
box-sizing: border-box;
|
||||
padding-top: 1px;
|
||||
}
|
||||
|
||||
.dis {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.dis-box {
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.touxiang {
|
||||
width: 65px;
|
||||
height: 65px;
|
||||
border-radius: 50%;
|
||||
background-color: #ebf5ff;
|
||||
overflow: hidden;
|
||||
margin-right: 5px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.user-tel {
|
||||
font-weight: bold;
|
||||
font-size: 20px;
|
||||
color: white;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.user-name {
|
||||
font-size: 12px;
|
||||
color: #c1c1ff;
|
||||
}
|
||||
|
||||
.vipnber {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.my-top-box {
|
||||
width: 90%;
|
||||
height: 80px;
|
||||
background-color: white;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.jg-box {
|
||||
width: 33%;
|
||||
// border-right: 1px solid #999999;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.jg-box-title {
|
||||
font-size: 16px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.jg-box-nmb {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.box-centenr {
|
||||
width: 90%;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
background: white;
|
||||
margin: 15px auto;
|
||||
margin-top: 10px;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.box-gang {
|
||||
border-bottom: 1px solid #f4f5f6;
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 10px 0px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #404041;
|
||||
}
|
||||
|
||||
.wrap-box {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.centenr-sx {
|
||||
width: 25%;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.box-centenr-title {
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.centenr-img {
|
||||
|
||||
margin: 2px auto;
|
||||
|
||||
image {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
}
|
||||
|
||||
.centenr-size {
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
279
gasStation-uni/pages/refuel/refuel.vue
Normal file
@ -0,0 +1,279 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-text">一键加油</view>
|
||||
</view>
|
||||
<view class="top">
|
||||
<view class="top-box">
|
||||
<view class="dis">
|
||||
<view class="top-img">
|
||||
<image src="../../static/logo.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="top-title">九州加油站(总站)</view>
|
||||
<view class="top-hui">平安大道东200米</view>
|
||||
<view class="top-hong">¥7.68/L</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="" @click="gorefuel">
|
||||
<view class="bulu">切换站点 <uni-icons type="right" color="#304fff" size="16"></uni-icons> </view>
|
||||
|
||||
</view>
|
||||
<!-- <view class="bulu-icon">
|
||||
<view class=""></view>
|
||||
<view class="">比国标降 0.22 元 </view>
|
||||
</view> -->
|
||||
|
||||
</view>
|
||||
<view class="fa-box">
|
||||
<view class="fa-title">选择油号 <text class="top-hui"> 请务必与员工确认类型</text> </view>
|
||||
<view class="wrap-box">
|
||||
<view class="box-oil" :class=" {'xz' :hindex == index }" @click="gethindex(index)"
|
||||
v-for="(item,index) in 4" :key="index">
|
||||
<text>92#</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="fa-box">
|
||||
<view class="fa-title">选择油枪 <text class="top-hui"> 请务必与员工确认枪号</text> </view>
|
||||
<view class="wrap-box">
|
||||
<view class="box-oil" :class=" {'xz' :qindex == index }" @click="getqindex(index)"
|
||||
v-for="(item,index) in 8" :key="index">
|
||||
<text>{{index}}号枪</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="fa-box">
|
||||
<view class="fa-title">请输入加油金额</view>
|
||||
<view class="inputkuang" @click="show = true">
|
||||
<view class="sbox">¥</view>
|
||||
<view class="sbox" style="text-align: center;font-weight: bold;">{{value}}</view>
|
||||
<view class="sbox-hui">约{{value}}L</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="anniu">
|
||||
<text>立即加油</text>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<u-keyboard ref="uKeyboard" :tips="value" mode="number" @cancel="show = false" @confirm="show = false"
|
||||
@change="valChange" @backspace="backspace" v-model="pic" :show="show"></u-keyboard>
|
||||
<tabbar></tabbar>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import tabbar from "../../components/tabbar/tabbar.vue"
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
value: '',
|
||||
show: false,
|
||||
pic: 0,
|
||||
hindex: 0,
|
||||
qindex: 0
|
||||
}
|
||||
},
|
||||
components: {
|
||||
tabbar
|
||||
},
|
||||
methods: {
|
||||
gethindex(index) {
|
||||
this.hindex = index
|
||||
},
|
||||
getqindex(index) {
|
||||
this.qindex = index
|
||||
},
|
||||
gorefuel() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesRefuel/pagesRefuel/index'
|
||||
})
|
||||
},
|
||||
valChange(val) {
|
||||
// 将每次按键的值拼接到value变量中,注意+=写法
|
||||
this.value += val;
|
||||
console.log(this.value);
|
||||
},
|
||||
// 退格键被点击
|
||||
backspace() {
|
||||
// 删除value的最后一个字符
|
||||
if (this.value.length) this.value = this.value.substr(0, this.value.length - 1);
|
||||
console.log(this.value);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #304fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
|
||||
.my-text {
|
||||
margin-top: 40px
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top {
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
background-image: linear-gradient(180deg, #304fff, #ffffff);
|
||||
box-sizing: border-box;
|
||||
padding: 1px;
|
||||
|
||||
}
|
||||
|
||||
.top-box {
|
||||
width: 90%;
|
||||
height: 100px;
|
||||
background-color: #ffffff;
|
||||
border-radius: 8px;
|
||||
margin: 20px auto;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-top: 60px;
|
||||
}
|
||||
|
||||
.top-title {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.top-img {
|
||||
width: 46px;
|
||||
height: 46px;
|
||||
background-color: #304fff;
|
||||
border-radius: 6px;
|
||||
overflow: hidden;
|
||||
margin-right: 10px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.top-hui {
|
||||
font-size: 14px;
|
||||
margin: 5px 0px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.top-hong {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
.dis {
|
||||
display: flex;
|
||||
|
||||
}
|
||||
|
||||
.bulu {
|
||||
color: #304fff;
|
||||
}
|
||||
|
||||
.bulu-icon {
|
||||
width: 120px;
|
||||
height: 20px;
|
||||
font-size: 12px;
|
||||
color: #304fff;
|
||||
border: 1px solid #304fff;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.wrap-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.box-oil {
|
||||
width: 23%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #666666;
|
||||
background: #f7f7f7;
|
||||
margin-right: 5px;
|
||||
margin-top: 5px;
|
||||
padding: 12px 0px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.fa-box {
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
}
|
||||
|
||||
.fa-title {
|
||||
font-size: 18px;
|
||||
margin: 10px 0px;
|
||||
}
|
||||
|
||||
.xz {
|
||||
color: #ffffff;
|
||||
background: #1678ff;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
width: 90%;
|
||||
margin: 10px auto;
|
||||
height: 40px;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
.inputkuang {
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
border: 1px solid #304fff;
|
||||
border-radius: 6px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 10px;
|
||||
}
|
||||
|
||||
.sbox {
|
||||
width: 33%;
|
||||
|
||||
}
|
||||
|
||||
.sbox-hui {
|
||||
width: 33%;
|
||||
text-align: right;
|
||||
color: #999999;
|
||||
}
|
||||
</style>
|
176
gasStation-uni/pagesHome/Activity/index.vue
Normal file
@ -0,0 +1,176 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">本站活动</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<view class="mub">
|
||||
<view class="mub-box" v-for="(item,index) in activityList" :key="index" @click="getactvity(item.path)">
|
||||
<view class="box-img">
|
||||
<image src="../../static/imgs/xp.jpg" mode=""></image>
|
||||
</view>
|
||||
<view class="box-size">
|
||||
<view class="box-s-title">{{item.title || "活动标题"}}</view>
|
||||
<view class="box-s-size">{{item.size || "内容"}}</view>
|
||||
</view>
|
||||
<view class="box-bottom">
|
||||
<view class="">活动时间</view>
|
||||
<view>{{item.time}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
activityList: [{
|
||||
title: "活动名称",
|
||||
size: '文字信息文字信息文字信息文字信息文字信息文字信息文字信息文字信息',
|
||||
path: null,
|
||||
time: "2023.1.24-2035.1.24 "
|
||||
},
|
||||
{
|
||||
title: "活动名称",
|
||||
size: '文字信息文字信息文字信息文字信息文字信息文字信息文字信息文字信息',
|
||||
path: null,
|
||||
time: "2023.1.24-2035.1.24 "
|
||||
},
|
||||
{
|
||||
title: "活动名称",
|
||||
size: '文字信息文字信息文字信息文字信息文字信息文字信息文字信息文字信息',
|
||||
path: null,
|
||||
time: "2023.1.24-2035.1.24 "
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
getactvity(url) {
|
||||
if (url) {
|
||||
console.log('跳转中');
|
||||
} else {
|
||||
uni.showToast({
|
||||
title: "此活动暂无跳转地址",
|
||||
icon: 'error'
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
getlist() {
|
||||
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.mub {
|
||||
background: #f4f5f6;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.mub-box {
|
||||
width: 100%;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
background-color: #ffffff;
|
||||
border-radius: 8px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.box-img {
|
||||
width: 100%;
|
||||
height: 150px;
|
||||
background-color: cornflowerblue;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.box-size {
|
||||
width: 100%;
|
||||
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.box-bottom {
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-top: 1px solid #f4f5f6;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.box-s-title {
|
||||
font-size: 17px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.box-s-size {
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
</style>
|
142
gasStation-uni/pagesHome/Address/Address.vue
Normal file
@ -0,0 +1,142 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">收货地址</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="box-xianze">
|
||||
<view class="box-left">
|
||||
<view style="display: flex;align-items: center;margin-bottom: 5px;">
|
||||
<view class="tapl">默认</view>
|
||||
<view class="">具体的详细地址</view>
|
||||
</view>
|
||||
<view style="display: flex;align-items: center; font-size: 14px; color: #666666;">
|
||||
<view class=""> 用户姓名</view>
|
||||
<view class=""> 186549451154</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-right">
|
||||
<u-icon name="edit-pen-fill" size="22"></u-icon>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom-anniu" @click="goedit()">
|
||||
<view class="">新增收货地址</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goedit() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/editress/editress'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.bottom-anniu {
|
||||
width: 90%;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
justify-content: center;
|
||||
position: fixed;
|
||||
bottom: 15px;
|
||||
left: 50%;
|
||||
|
||||
transform: translateX(-50%);
|
||||
border-radius: 8px;
|
||||
|
||||
}
|
||||
|
||||
.box-xianze {
|
||||
width: 95%;
|
||||
background-color: #ffffff;
|
||||
margin: 10px auto;
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.box-left {
|
||||
width: 85%;
|
||||
}
|
||||
|
||||
.box-right {
|
||||
width: 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
}
|
||||
|
||||
.tapl {
|
||||
width: 40px;
|
||||
height: 20px;
|
||||
border-radius: 6px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #1678ff;
|
||||
border: 1px solid #1678ff;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
255
gasStation-uni/pagesHome/MyCard/MyCard.vue
Normal file
@ -0,0 +1,255 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">卡包</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
|
||||
<!-- 储值卡 -->
|
||||
<view class="card-cz">
|
||||
<view class="card-top">
|
||||
<view class="cardimg">
|
||||
<image src="../../static/imgs/jyz.png" mode=""></image>
|
||||
</view>
|
||||
<text>油站名称</text>
|
||||
</view>
|
||||
<view class="dis-but">
|
||||
<view class="bai-box">
|
||||
<view class="">通用余额</view>
|
||||
<view class="">¥ <text style="font-weight: bold;font-size: 26px;">0.00</text> </view>
|
||||
</view>
|
||||
<view class="anniu-cz" @click="gocard()">
|
||||
<text>立即充值</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<!-- 囤油卡 -->
|
||||
<view class="xyihang">
|
||||
<view class="title-hei">囤油卡</view>
|
||||
<view class="">
|
||||
<text>下一张</text>
|
||||
<uni-icons type="refreshempty" color="#2979ff" size="20"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
<view class="card-ty">
|
||||
<view class="card-top">
|
||||
<view class="cardimg">
|
||||
<image src="../../static/imgs/jyzb.png" mode=""></image>
|
||||
</view>
|
||||
<text style="color: #ffffff;">油站名称</text>
|
||||
</view>
|
||||
|
||||
<view style="width: 100%;display: flex;align-items: center;justify-content: space-between; ">
|
||||
<view class="bai-box">
|
||||
<view class="title-card">囤油卡</view>
|
||||
<view class="">卡券卡密</view>
|
||||
<view style="lins"> **** **** **** 970 </view>
|
||||
</view>
|
||||
<view class="">
|
||||
<uni-icons type="eye-slash-filled" color="#ffffff" size="30"
|
||||
style="margin-right: 15px;"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 礼品卡 -->
|
||||
<view class="xyihang">
|
||||
<view class="title-hei">礼品卡</view>
|
||||
<view class="">
|
||||
<text>下一张</text>
|
||||
<uni-icons type="refreshempty" color="#2979ff" size="20"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
<view class="card-lp">
|
||||
<view class="card-top">
|
||||
<view class="cardimg">
|
||||
<image src="../../static/imgs/jyzb.png" mode=""></image>
|
||||
</view>
|
||||
<text style="color: #ffffff;">油站名称</text>
|
||||
</view>
|
||||
|
||||
<view style="width: 100%;display: flex;align-items: center;justify-content: space-between; ">
|
||||
<view class="bai-box">
|
||||
<view class="title-card">礼品卡</view>
|
||||
<view class="">卡券卡密</view>
|
||||
<view style="lins"> **** **** **** 970 </view>
|
||||
</view>
|
||||
<view class="">
|
||||
<uni-icons type="eye-slash-filled" color="#ffffff" size="30"
|
||||
style="margin-right: 15px;"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
gocard() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/oilRecharge/oilRecharge'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.card-cz {
|
||||
width: 90%;
|
||||
border-radius: 8px;
|
||||
background-color: #9ea1ad;
|
||||
height: 180px;
|
||||
margin: 10px auto;
|
||||
background: url('http://47.95.206.185:83/card.png')center no-repeat;
|
||||
background-size: 100% 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.card-ty {
|
||||
width: 90%;
|
||||
border-radius: 8px;
|
||||
background-color: #9ea1ad;
|
||||
height: 180px;
|
||||
margin: 10px auto;
|
||||
background: url('http://47.95.206.185:83/dhq.png')center no-repeat;
|
||||
background-size: 100% 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.card-lp {
|
||||
width: 90%;
|
||||
border-radius: 8px;
|
||||
background-color: #9ea1ad;
|
||||
height: 180px;
|
||||
margin: 10px auto;
|
||||
background: url('http://47.95.206.185:83/lpk.png')center no-repeat;
|
||||
background-size: 100% 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.dis-but {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.anniu-cz {
|
||||
width: 100px;
|
||||
height: 30px;
|
||||
border-radius: 50px;
|
||||
background-color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
}
|
||||
|
||||
.bai-box {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.card-top {
|
||||
margin-bottom: 20px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
}
|
||||
|
||||
.cardimg {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
// background: linear-gradient(90deg, #FFD57C 0%, #F8A82F 100%);
|
||||
background: #3d4141;
|
||||
border-radius: 6px 1px 6px 1px;
|
||||
margin-right: 5px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
image {
|
||||
width: 50%;
|
||||
height: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.title-card {
|
||||
font-size: 20px;
|
||||
font-weight: bold;
|
||||
color: #FFFFFF;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.xyihang {
|
||||
width: 90%;
|
||||
margin: 0 auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 16px;
|
||||
color: #2979ff;
|
||||
}
|
||||
|
||||
.title-hei {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
}
|
||||
</style>
|
340
gasStation-uni/pagesHome/PointsMall/PointsMall.vue
Normal file
@ -0,0 +1,340 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
|
||||
</view>
|
||||
<view class="my-text">积分商城</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-lanmu">
|
||||
<view style="width: 90%;margin: 0 auto;">
|
||||
<view class="title-bai">0</view>
|
||||
<view class="size-bai">
|
||||
<uni-icons type="location" color="#ffffff" size="16"></uni-icons>
|
||||
<text>蓝鲸加油站(总站)</text>
|
||||
<uni-icons type="right" color="#ffffff" size="16"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="box-bai">
|
||||
<view class="box-box" @click="gojg(1)">
|
||||
<view class="img-jg">
|
||||
<uni-icons type="calendar-filled" color="#ffffff" size="40"></uni-icons>
|
||||
</view>
|
||||
<view class="">积分签到</view>
|
||||
</view>
|
||||
<view class="box-box" @click="gojg(2)">
|
||||
<view class="img-jg" style="background: #fa801c;">
|
||||
<u-icon name="coupon-fill" color="#ffffff" size="40"></u-icon>
|
||||
</view>
|
||||
<view class="">积分明细</view>
|
||||
</view>
|
||||
<view class="box-box" @click="gojg(3)">
|
||||
<view class="img-jg" style="background: #1fcabc;">
|
||||
<u-icon name="info-circle-fill" color="#ffffff" size="40"></u-icon>
|
||||
</view>
|
||||
<view class="">积分规则</view>
|
||||
</view>
|
||||
<view class="box-box" @click="gojg(4)">
|
||||
<view class="img-jg" style="background: #f76b17;">
|
||||
<u-icon name="file-text-fill" color="#ffffff" size="40"></u-icon>
|
||||
</view>
|
||||
<view class="">我的订单</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="bai-center">
|
||||
<scroll-view scroll-x="true" class="tap-top">
|
||||
<view class="sz" v-for="(item,index) in 7" :key="index" @click="transferIndex(index) ">
|
||||
<view class="box" :class="{'xztap': qhindex == index}">文字信息</view>
|
||||
<view class="gang" v-if="qhindex == index"></view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
<view class="wrap-box">
|
||||
<view class="box-goods" v-for="(item,index) in 3" :key="index" @click="godetails()">
|
||||
<view class="goods-img">
|
||||
<image src="../../static/logo.png" mode=""></image>
|
||||
</view>
|
||||
<view class="goods-title">
|
||||
268元套餐券
|
||||
</view>
|
||||
<view class="good-red">
|
||||
<view style="display: flex;align-items: center;">
|
||||
<view class="bi">
|
||||
<image src="../../static/imgs/jb.png" mode=""></image>
|
||||
</view>
|
||||
<view style="color: #FC1708;font-weight: bold;">1992</view>
|
||||
</view>
|
||||
<view class="hui-time">库存190</view>
|
||||
</view>
|
||||
<view class="anniux">
|
||||
<text>立即兑换</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
qhindex: 0,
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
transferIndex(index) {
|
||||
this.qhindex = index
|
||||
},
|
||||
gojg(nmb) {
|
||||
if (nmb == 1) {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/integral/integral'
|
||||
})
|
||||
}
|
||||
if (nmb == 2) {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/PointsMing/PointsMing'
|
||||
})
|
||||
}
|
||||
if (nmb == 3) {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/Pointsdetail/Pointsdetail'
|
||||
})
|
||||
}
|
||||
if (nmb == 4) {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/myPointsOrder/myPointsOrder'
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
godetails() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/goodsDetails/goodsDetails'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
background: #f4f5f6;
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #1678ff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #fff;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
z-index: 9999;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-lanmu {
|
||||
width: 100%;
|
||||
height: 100px;
|
||||
background: linear-gradient(180deg, #1678ff 0%, #3e8dfd 57%, #f4f5f6 100%);
|
||||
box-sizing: border-box;
|
||||
padding-top: 1px;
|
||||
}
|
||||
|
||||
.box-bai {
|
||||
width: 90%;
|
||||
|
||||
margin: 10px auto;
|
||||
background-color: #ffffff;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.size-bai {
|
||||
color: #ffffff;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.title-bai {
|
||||
font-size: 28px;
|
||||
font-weight: bold;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.box-box {
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.img-jg {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
background-color: #1678ff;
|
||||
border-radius: 12px;
|
||||
margin: 0 auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.bai-center {
|
||||
width: 90%;
|
||||
border-radius: 8px;
|
||||
background-color: #ffffff;
|
||||
margin: 0 auto;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin-top: 75px;
|
||||
}
|
||||
|
||||
.tap-top {
|
||||
margin-top: 20rpx;
|
||||
width: 100%;
|
||||
// padding-bottom: 22rpx;
|
||||
box-sizing: border-box;
|
||||
// border-bottom: 1px solid #EEEEEE;
|
||||
white-space: nowrap;
|
||||
|
||||
|
||||
|
||||
.sz {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.box {
|
||||
// margin: 0 auto;
|
||||
text-align: center;
|
||||
font-size: 32rpx;
|
||||
margin-right: 50rpx;
|
||||
line-height: 32rpx;
|
||||
text-align: center;
|
||||
// font-weight: bold;
|
||||
color: #666666;
|
||||
margin-bottom: 22rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.xztap {
|
||||
color: #333333 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 128rpx;
|
||||
height: 8rpx;
|
||||
background: #1678ff;
|
||||
border-radius: 14rpx;
|
||||
}
|
||||
|
||||
.wrap-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
margin: 10px auto;
|
||||
|
||||
}
|
||||
|
||||
.box-goods {
|
||||
width: 49%;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.goods-img {
|
||||
width: 100%;
|
||||
height: 150px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.anniux {
|
||||
background-color: #ecf5ff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 8px;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
width: 100%;
|
||||
margin: 10px auto;
|
||||
color: #1678ff;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.goods-title {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #000000;
|
||||
margin: 5px 0px;
|
||||
}
|
||||
|
||||
.good-red {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.hui-time {
|
||||
font-size: 14px;
|
||||
color: #8895AB;
|
||||
}
|
||||
|
||||
.bi {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
margin-right: 2px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
70
gasStation-uni/pagesHome/PointsMing/PointsMing.vue
Normal file
@ -0,0 +1,70 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">积分明细</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<u-empty text="积分明细" icon="http://cdn.uviewui.com/uview/empty/list.png">
|
||||
</u-empty>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
</style>
|
85
gasStation-uni/pagesHome/Pointsdetail/Pointsdetail.vue
Normal file
@ -0,0 +1,85 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">积分规则</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="centen-siez">
|
||||
积分兑换活动一: 积分抵现
|
||||
积分抵现就是当客户积累了一定量的积分后,可以在积分商城中按照指定积分量兑换一定现金,并且在客户消费的时候可以使用,当然也可以结合节点释放该活动优惠,例如在企业店庆、周年庆、节假日等活动期间,使用100个积分点可以作为100元现金,在消费的时候自动抵扣,这种积分规则可以使客户感受到实在的价值,增加客户对企业品牌的黏性,提高企业产品的复购率.
|
||||
积分兑换活动二: 积分抽奖
|
||||
积分抽奖就是若客户的账户满足一定的积分值后,就可以参加抽奖活动,每次抽奖需要消耗一些积分量。这种方式是企业积分商城消耗客户积分比较快速的一种方式,客户也比较喜欢参与。例如在双十一等活动期间,客户每使用20个积分可以参加一次积分抽奖,客户每次只需要消耗少量的积分就有机会获得大奖。许多客户为得到想要的奖品,会自愿小时许多积分来尝试抽到大奖。有价值的大奖品,比如手机、家电,能有效吸引客户注意
|
||||
积分兑换活动三:积分兑礼
|
||||
积分商城中常见的积分兑换活动有积分兑换礼品,企业可以在积分商城中设置丰富的礼品供客户自行选择,比如客户有100点积分,可以兑换商城中的一个充电宝,或者选择加钱兑换一个小家电等等。这种模式若想要契合所有客户的需求,那么就需要有海量的商品资源提供给客户,帮助企业
|
||||
更好运营。若商家缺乏供应商资源或缺乏开发技术的话,可以使用积分商城,积分商城有超过10万余家供应商,轻松可以帮助企业实现各种积分兑换活动,增加客户黏性,培养忠实客
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.centen-siez {
|
||||
width: 100%;
|
||||
margin: 10px auto;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
|
||||
}
|
||||
</style>
|
134
gasStation-uni/pagesHome/editress/editress.vue
Normal file
@ -0,0 +1,134 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">编辑收货地址</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="g-name">联系人</view>
|
||||
<input type="text" placeholder="请填写收货人" />
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="g-name">手机号</view>
|
||||
<input type="text" placeholder="请填写手机号" />
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="g-name">所在地区</view>
|
||||
<input type="text" placeholder="请填写所在地区" />
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="g-name">详细地区</view>
|
||||
<input type="text" placeholder="请填写详细地区" />
|
||||
</view>
|
||||
<view class="box-gang-bt">
|
||||
<view class="g-name">默认地址</view>
|
||||
<u-switch v-model="value" @change="change"></u-switch>
|
||||
</view>
|
||||
|
||||
<!-- 顶部区域 -->
|
||||
|
||||
<view class="bottom-anniu" @click="goedit()">
|
||||
<view class="">提交</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
value: true
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
change(e) {
|
||||
console.log(e);
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.box-gang {
|
||||
width: 100%;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
border-bottom: 1px solid #f4f5f6;
|
||||
|
||||
}
|
||||
|
||||
.g-name {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.box-gang-bt {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.bottom-anniu {
|
||||
width: 90%;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
justify-content: center;
|
||||
bottom: 15px;
|
||||
margin: 20px auto;
|
||||
border-radius: 8px;
|
||||
|
||||
}
|
||||
</style>
|
155
gasStation-uni/pagesHome/goodsDetails/goodsDetails.vue
Normal file
@ -0,0 +1,155 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">商品详情</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="">
|
||||
<u-swiper :list="list1" height="390" @change="change" @click="click"></u-swiper>
|
||||
</view>
|
||||
<view class="bai-box">
|
||||
<view class="box-title">保养套餐</view>
|
||||
<view class="box-jg">268积分</view>
|
||||
<view class="dt-box">
|
||||
<view class=""><u-tag text="自提" type="error" shape="circle"></u-tag></view>
|
||||
<view class="hui-time">市场价:89.00</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="bai-box">
|
||||
<view style="margin-bottom: 10px;">商品详情</view>
|
||||
<u-line></u-line>
|
||||
<!-- <view class="" v-html="html" ></view> -->
|
||||
</view>
|
||||
|
||||
<view class="bottom-d">
|
||||
<view class="anniux" @click="goorder()">
|
||||
<text>立即兑换</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
list1: [
|
||||
'https://cdn.uviewui.com/uview/swiper/swiper1.png',
|
||||
'https://cdn.uviewui.com/uview/swiper/swiper2.png',
|
||||
'https://cdn.uviewui.com/uview/swiper/swiper3.png',
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
change() {},
|
||||
click() {},
|
||||
goorder() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/order/order'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.bai-box {
|
||||
width: 100%;
|
||||
background-color: #ffffff;
|
||||
padding: 10px;
|
||||
margin: 10px auto;
|
||||
}
|
||||
|
||||
.dt-box {
|
||||
width: 92%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.box-title {
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.box-jg {
|
||||
font-size: 20px;
|
||||
color: red;
|
||||
margin: 10px auto;
|
||||
}
|
||||
|
||||
.hui-time {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.bottom-d {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background-color: #ffffff;
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
z-index: 99999;
|
||||
|
||||
}
|
||||
|
||||
.anniux {
|
||||
width: 90%;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
border-radius: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
</style>
|
124
gasStation-uni/pagesHome/myPointsOrder/myPointsOrder.vue
Normal file
@ -0,0 +1,124 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">我的订单</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="tap-box">
|
||||
<view class="box-tap" :class="{ 'act' :actinput == index }" v-for="(item,index) in taplist" :key="index"
|
||||
@click="getindex(index)">
|
||||
<view class="">{{item.title }}</view>
|
||||
<view class="gang" v-if="actinput == index"></view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<u-empty v-if="arrList.length == 0" mode="list" icon="http://cdn.uviewui.com/uview/empty/list.png">
|
||||
</u-empty>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
taplist: [{
|
||||
title: '全部'
|
||||
},
|
||||
{
|
||||
title: '待收货'
|
||||
},
|
||||
{
|
||||
title: '已完成'
|
||||
},
|
||||
{
|
||||
title: '已退款'
|
||||
},
|
||||
{
|
||||
title: '待支付'
|
||||
},
|
||||
],
|
||||
arrList: [],
|
||||
actinput: 0,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
getindex(index) {
|
||||
this.actinput = index
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.tap-box {
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background-color: #ffffff;
|
||||
|
||||
}
|
||||
|
||||
.box-tap {
|
||||
width: 20%;
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
.act {
|
||||
color: #2979ff;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 25px;
|
||||
height: 5px;
|
||||
background-color: #2979ff;
|
||||
border-radius: 8px;
|
||||
margin: 2px auto;
|
||||
}
|
||||
</style>
|
298
gasStation-uni/pagesHome/oilRecharge/oilRecharge.vue
Normal file
@ -0,0 +1,298 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">油卡充值</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="tap-box">
|
||||
<view class="box-tap" :class="{ 'act' :actinput == index }" v-for="(item,index) in taplist" :key="index"
|
||||
@click="getindex(index)">
|
||||
<view class="title">{{item.title}}</view>
|
||||
<view class="gang" :class="{ 'actgang' : actinput == index }"></view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- 储值充值 -->
|
||||
<view class="boxback" v-if="actinput == 0 || actinput == 1 ">
|
||||
<view class="box-cz">
|
||||
<view class="box-jg" :class="{ 'actbox' : actindex == index }" v-for="(item,index) in 5"
|
||||
:key="index" @click="xzindex(index)">
|
||||
<view class="s-title" :class="{ 'actsize' : actindex == index }">¥ <text
|
||||
style="font-weight: bold;">0.01</text> </view>
|
||||
<view class="min-size" :class="{ 'actsize' : actindex == index }">售价¥0.01</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-hui">
|
||||
<view style="margin-bottom: 15px;">充值权益</view>
|
||||
<view class="huisize">1.该服务为储蓄卡直充服务</view>
|
||||
<view class="huisize">2.请确认充值类型正确后再付款 </view>
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="">推荐员工</view>
|
||||
<view class=""></view>
|
||||
<view class="" @click="show = true">
|
||||
<uni-icons type="right" size="14"></uni-icons>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<!-- 囤油充值 -->
|
||||
<!-- 礼品充值 -->
|
||||
<view class="boxback" style="box-sizing: border-box; padding: 1px; " v-if="actinput == 2 ">
|
||||
<view class="inputbox">
|
||||
<view class="cadname">卡号</view>
|
||||
<!-- <input type="text" placeholder="请输入礼品卡卡号" /> -->
|
||||
</view>
|
||||
<view class="inputbox">
|
||||
<view class="cadname">卡密</view>
|
||||
<!-- <input type="text" placeholder="请输入礼品卡卡密" /> -->
|
||||
</view>
|
||||
</view>
|
||||
<!-- 底部 -->
|
||||
<view class="bottom-box">
|
||||
<view class="anniu">
|
||||
<text>立即充值</text>
|
||||
</view>
|
||||
<view class="dibu">
|
||||
<view class="">充值记录</view>
|
||||
<uni-icons type="right" color="#1678ff" size="14"></uni-icons>
|
||||
</view>
|
||||
|
||||
<view class="box-hui">
|
||||
<view style="margin-bottom: 15px;">服务说明</view>
|
||||
<view class="huisize">1.该服务为储蓄卡直充服务,仅限本站使用</view>
|
||||
<view class="huisize">2.请确认充值类型正确后再付款,一经充值不支持退款; </view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<u-picker :show="show" :columns="columns" @confirm="confirm" @cancel="cancel"></u-picker>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
actindex: 0,
|
||||
show: false,
|
||||
columns: [
|
||||
['员工一', '员工二', '员工三']
|
||||
],
|
||||
taplist: [{
|
||||
title: '储值充值'
|
||||
},
|
||||
{
|
||||
title: '囤油充值'
|
||||
},
|
||||
{
|
||||
title: '礼品卡充值'
|
||||
},
|
||||
|
||||
],
|
||||
|
||||
actinput: 0,
|
||||
}
|
||||
},
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
confirm(e) {
|
||||
this.show = false
|
||||
},
|
||||
cancel() {
|
||||
this.show = false
|
||||
},
|
||||
xzindex(index) {
|
||||
this.actindex = index
|
||||
},
|
||||
getindex(index) {
|
||||
this.actinput = index
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.tap-box {
|
||||
width: 100%;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background-color: #ffffff;
|
||||
|
||||
}
|
||||
|
||||
.box-tap {
|
||||
width: 33%;
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
.act {
|
||||
color: #2979ff;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 25px;
|
||||
height: 5px;
|
||||
// background-color: #2979ff;
|
||||
border-radius: 8px;
|
||||
margin: 2px auto;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.actgang {
|
||||
background-color: #2979ff;
|
||||
}
|
||||
|
||||
.bottom-box {
|
||||
width: 100%;
|
||||
background-color: #ffffff;
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
width: 95%;
|
||||
height: 40px;
|
||||
border-radius: 50px;
|
||||
background: #1678ff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
margin: 15px auto;
|
||||
}
|
||||
|
||||
.dibu {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
color: #1678ff;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.box-hui {
|
||||
width: 95%;
|
||||
border-radius: 8px;
|
||||
background: #f4f5f6;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
|
||||
margin: 15px auto;
|
||||
}
|
||||
|
||||
.huisize {
|
||||
color: #a8a8a8;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.box-cz {
|
||||
flex-wrap: wrap;
|
||||
display: flex;
|
||||
width: 100%;
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.box-jg {
|
||||
width: 30%;
|
||||
border-radius: 8px;
|
||||
border: 1px solid #e2e2e2;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.s-title {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.min-size {
|
||||
width: 100%;
|
||||
font-size: 12px;
|
||||
color: e2e2e2;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.actbox {
|
||||
border: 1px solid #1678ff;
|
||||
background: #e7f1ff;
|
||||
}
|
||||
|
||||
.actsize {
|
||||
color: #1678ff !important;
|
||||
}
|
||||
|
||||
.boxback {
|
||||
width: 100%;
|
||||
background: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding-bottom: 1px;
|
||||
}
|
||||
|
||||
.box-gang {
|
||||
width: 95%;
|
||||
margin: 0 auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.inputbox {
|
||||
width: 95%;
|
||||
margin: 10px auto;
|
||||
display: flex;
|
||||
// align-items: center;
|
||||
|
||||
}
|
||||
|
||||
.cadname {
|
||||
width: 20%;
|
||||
|
||||
}
|
||||
</style>
|
330
gasStation-uni/pagesHome/order/order.vue
Normal file
@ -0,0 +1,330 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">提交订单</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<scroll-view scroll-x="true" class="tap-top">
|
||||
<view class="sz" v-for="(item,index) in tapList" :key="index" @click="transferIndex(index) ">
|
||||
<view class="box" :class="{'xztap': qhindex == index}">{{item.text }}</view>
|
||||
<view class="gang" v-if="qhindex == index"></view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
<view class="box-bai" v-if="qhindex == 0">
|
||||
<view class="dis">
|
||||
<!-- <uni-icons type="location-filled" size="20"></uni-icons> -->
|
||||
<view class="boximg">
|
||||
<image src="../../static/logo.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="">蓝鲸加油站(总站)</view>
|
||||
<view class="hui-time">
|
||||
山东省济南市槐荫区兴福路
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="">
|
||||
<uni-icons type="right" size="20"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-bai" v-if="qhindex == 1" @click="goAdd()">
|
||||
<view class="dis">
|
||||
<uni-icons type="location-filled" color="#666666" size="30" style="margin-right: 5px;"></uni-icons>
|
||||
|
||||
<view class="">
|
||||
<view class="">家庭住址</view>
|
||||
<view class="hui-time">
|
||||
山东省济南市槐荫区兴福路
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="">
|
||||
<uni-icons type="right" size="20"></uni-icons>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="box-bait">
|
||||
<view class="dis-box">
|
||||
<view class="goodsimg">
|
||||
<image src="../../static/logo.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="">商品名称</view>
|
||||
<view class="huyi">市场价:2900</view>
|
||||
<view class="btwo">
|
||||
<view class="">70积分</view>
|
||||
<view class="">
|
||||
<u-number-box v-model="value" @change="valChange" button-size="18"></u-number-box>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="endbox">
|
||||
<view style="color: #666666;font-size: 14px;">共1件商品,合计:</view>
|
||||
<view style="color: red;"> <text style="font-weight: bold;font-size: 20px;">140.00</text> 积分</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="beizhu">
|
||||
<view style="margin-right: 15px;">备注</view>
|
||||
<input type="text" placeholder="选填,请输入备注信息" />
|
||||
|
||||
</view>
|
||||
<view class="bottom-box">
|
||||
<view class="">
|
||||
<view style="color: red;"> <text style="font-weight: bold;font-size: 20px;">140.00</text> 积分</view>
|
||||
<view style="color: #9d9d9d; font-size: 12px; ">积分账户0.00</view>
|
||||
</view>
|
||||
<view class="andeniu">
|
||||
<text>选择</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
qhindex: 0,
|
||||
value: 0,
|
||||
tapList: [{
|
||||
text: '到店自提'
|
||||
},
|
||||
{
|
||||
text: '快递配送'
|
||||
}
|
||||
]
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
valChange(e) {
|
||||
console.log('当前值为: ' + e.value)
|
||||
},
|
||||
transferIndex(index) {
|
||||
this.qhindex = index
|
||||
},
|
||||
goAdd() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesHome/Address/Address'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.dis {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.tap-top {
|
||||
|
||||
box-sizing: border-box;
|
||||
padding-top: 10px;
|
||||
width: 100%;
|
||||
// padding-bottom: 22rpx;
|
||||
padding-bottom: 10px;
|
||||
background: #ffffff;
|
||||
border-bottom: 1px solid #EEEEEE;
|
||||
white-space: nowrap;
|
||||
|
||||
|
||||
|
||||
.sz {
|
||||
width: 50%;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.box {
|
||||
// margin: 0 auto;
|
||||
text-align: center;
|
||||
font-size: 32rpx;
|
||||
margin-right: 50rpx;
|
||||
line-height: 32rpx;
|
||||
text-align: center;
|
||||
// font-weight: bold;
|
||||
color: #666666;
|
||||
margin: 0 auto;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.xztap {
|
||||
color: #333333 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 128rpx;
|
||||
height: 8rpx;
|
||||
margin: 0 auto;
|
||||
background: #1678ff;
|
||||
border-radius: 14rpx;
|
||||
}
|
||||
|
||||
.box-bai {
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 20px;
|
||||
}
|
||||
|
||||
.box-bait {
|
||||
width: 100%;
|
||||
|
||||
background: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
margin: 20px auto;
|
||||
}
|
||||
|
||||
.boximg {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
border-radius: 8px;
|
||||
background-color: #1678ff;
|
||||
margin-right: 10px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.hui-time {
|
||||
font-size: 14px;
|
||||
color: #666666;
|
||||
}
|
||||
|
||||
.dis-box {
|
||||
display: flex;
|
||||
|
||||
}
|
||||
|
||||
.goodsimg {
|
||||
width: 75px;
|
||||
height: 75px;
|
||||
overflow: hidden;
|
||||
margin-right: 10px;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.endbox {
|
||||
margin-top: 15px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.btwo {
|
||||
width: 240px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.huyi {
|
||||
font-size: 14px;
|
||||
margin: 5px auto;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.red {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.beizhu {
|
||||
background-color: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
box-sizing: border-box;
|
||||
padding: 15px 20px;
|
||||
}
|
||||
|
||||
.bottom-box {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: white;
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
position: fixed;
|
||||
bottom: 0px;
|
||||
z-index: 99999;
|
||||
|
||||
}
|
||||
|
||||
.andeniu {
|
||||
width: 100px;
|
||||
height: 45px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #ffffff;
|
||||
border-radius: 4px;
|
||||
background: #1678ff;
|
||||
}
|
||||
</style>
|
191
gasStation-uni/pagesMy/comment/comment.vue
Normal file
@ -0,0 +1,191 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">评论页</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<u-alert :title="title" type="primary" :description="description"></u-alert>
|
||||
|
||||
<view class="comment-box">
|
||||
<view class="c-box-top">您对工作人员满意吗</view>
|
||||
<view class="dis">
|
||||
<view class="touxiang">
|
||||
<image src="../../static/imgs/myx.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="username">username(13583017106)</view>
|
||||
<view class="">
|
||||
<u-rate active-color="#ffd74e" :count="count" v-model="value"></u-rate>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="wrap-box">
|
||||
<view class="w-box" v-for="(item,index) in textlist" :key="index" @click="textindex">
|
||||
{{item.text || "下次还来"}}
|
||||
</view>
|
||||
</view>
|
||||
<u--textarea v-model="value1" placeholder="请输入内容"></u--textarea>
|
||||
</view>
|
||||
<view class="anniu">
|
||||
<text>提交</text>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
description: '您的宝贵建议,就是我们前进的动力~动动手指,帮助我们做得更好~~',
|
||||
count: 10,
|
||||
value: 2,
|
||||
value1: '',
|
||||
textlist: [{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: '外瑞古德'
|
||||
},
|
||||
{
|
||||
text: ''
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.comment-box {
|
||||
width: 95%;
|
||||
border-radius: 8px;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin: 10px auto;
|
||||
|
||||
}
|
||||
|
||||
.dis {
|
||||
display: flex;
|
||||
|
||||
}
|
||||
|
||||
.wrap-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin: 10px 0px;
|
||||
}
|
||||
|
||||
.w-box {
|
||||
width: 70px;
|
||||
height: 25px;
|
||||
border-radius: 50px;
|
||||
background: #f5f6f7;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #999999;
|
||||
margin-right: 10px;
|
||||
margin-bottom: 5px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.c-box-top {
|
||||
box-sizing: border-box;
|
||||
padding: 5px 0px;
|
||||
border-bottom: 1px solid #eee;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.touxiang {
|
||||
width: 65px;
|
||||
height: 65px;
|
||||
background-color: #eef6ff;
|
||||
margin-right: 10px;
|
||||
overflow: hidden;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.username {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
width: 95%;
|
||||
height: 35px;
|
||||
margin: 10px auto;
|
||||
border-radius: 4px;
|
||||
background: #2463dc;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
}
|
||||
</style>
|
170
gasStation-uni/pagesMy/details/details.vue
Normal file
@ -0,0 +1,170 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
|
||||
</view>
|
||||
<view class="my-text">详情页</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-size">
|
||||
<view style="font-weight: bold;margin-bottom: 5px;">已支付订单</view>
|
||||
<view class="">如果有疑问请向客户进行资讯</view>
|
||||
</view>
|
||||
<view class="centen-box">
|
||||
<view class="box-title">订单信息</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="box-title">加油信息</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="box-title">优惠信息</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
<view class="dis-fx">
|
||||
<view class="hui-size">油号油枪</view>
|
||||
<view class="">92#/1号枪</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="anniu" @click="gocomment()">
|
||||
<text>评价有礼</text>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
gocomment() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/comment/comment'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #1678ff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-size {
|
||||
width: 100%;
|
||||
height: 80px;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.centen-box {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
background-color: #ffffff;
|
||||
}
|
||||
|
||||
.box-title {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding-bottom: 8px;
|
||||
border-bottom: 1px solid #dfdfdf;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.dis-fx {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin: 0px auto;
|
||||
margin-top: 10px;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.hui-size {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
width: 95%;
|
||||
height: 55px;
|
||||
background: #1678ff;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 8px;
|
||||
margin: 30px auto;
|
||||
}
|
||||
</style>
|
181
gasStation-uni/pagesMy/integral/integral.vue
Normal file
@ -0,0 +1,181 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" color="#ffffff" size="16"></uni-icons>
|
||||
</view>
|
||||
<view class="my-text">我的积分</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-box">
|
||||
<view class="b-box">
|
||||
<view class="">
|
||||
<view class="hui-size">我的积分</view>
|
||||
<view class="lan-num">0</view>
|
||||
</view>
|
||||
<view class="anniu">
|
||||
积分上传
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="bai-box">
|
||||
<view class="box-title">积分任务</view>
|
||||
<view class="dis-bt">
|
||||
<view class="">
|
||||
<view class="">加油返回积分</view>
|
||||
<view class="hui-min">根据每次加油消费金额,获得比例积分</view>
|
||||
</view>
|
||||
<view class="xanniu">去加油</view>
|
||||
</view>
|
||||
<view class="dis-bt">
|
||||
<view class="">
|
||||
<view class="">油卡充值返积分</view>
|
||||
<view class="hui-min">根据每次加油消费金额,获得比例积分</view>
|
||||
</view>
|
||||
<view class="xanniu">去充值</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #1678ff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-box {
|
||||
width: 100%;
|
||||
height: 100px;
|
||||
background: #1678ff;
|
||||
box-sizing: border-box;
|
||||
padding: 1px;
|
||||
}
|
||||
|
||||
.b-box {
|
||||
width: 90%;
|
||||
height: 100px;
|
||||
background: #ffffff;
|
||||
border-radius: 6px;
|
||||
margin: 10px auto;
|
||||
margin-top: 25px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
box-sizing: border-box;
|
||||
padding: 5px 10px;
|
||||
border-radius: 50px;
|
||||
background: linear-gradient(90deg, #65bfff 0%, #0483ff 100%);
|
||||
color: white;
|
||||
|
||||
}
|
||||
|
||||
.hui-size {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.lan-num {
|
||||
font-weight: bold;
|
||||
font-size: 30px;
|
||||
color: #1678ff;
|
||||
}
|
||||
|
||||
.bai-box {
|
||||
width: 90%;
|
||||
margin: 20px auto;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin-top: 40px;
|
||||
border-radius: 8px;
|
||||
|
||||
}
|
||||
|
||||
.dis-bt {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 15px;
|
||||
|
||||
}
|
||||
|
||||
.hui-min {
|
||||
width: 90%;
|
||||
font-size: 12px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.xanniu {
|
||||
box-sizing: border-box;
|
||||
height: 40px;
|
||||
width: 80px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 50px;
|
||||
background: linear-gradient(90deg, #65bfff 0%, #0483ff 100%);
|
||||
color: white;
|
||||
}
|
||||
|
||||
.box-title {
|
||||
font-size: 20px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
247
gasStation-uni/pagesMy/moneyBalance/moneyBalance.vue
Normal file
@ -0,0 +1,247 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">储值余额</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-box">
|
||||
<view class="kuangbox">使用规则 </view>
|
||||
<view class="box-title">储值余额</view>
|
||||
<view class="box-nmb">0.00元</view>
|
||||
<view class="dis-bt">
|
||||
<view class="">累计获得0.00</view>
|
||||
<view class="">已经抵用0.00</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="">明细</view>
|
||||
<view class="hui-anniu">全部 <u-icon name="arrow-down-fill" size="18"></u-icon> </view>
|
||||
</view>
|
||||
<view class="fuji">
|
||||
|
||||
<view class="mx-box" @click="godetails()">
|
||||
<view class="m-b-box">
|
||||
<view class="box-name">加油站名称</view>
|
||||
<view class="moneyname">充值成功</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">订单金额</view>
|
||||
<view class="sizehei">¥0.01</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">优惠合计</view>
|
||||
<view class="sizehong">¥0.01</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">订单时间</view>
|
||||
<view class="sizehei">2023.01.23</view>
|
||||
</view>
|
||||
<view class="dibu">
|
||||
<view class="xiaanniu">评价有礼</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
godetails() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesMy/details/details'
|
||||
})
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.moni {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-box {
|
||||
width: 90%;
|
||||
// height: 105px;
|
||||
border-radius: 8px;
|
||||
background-color: #056cf2;
|
||||
margin: 10px auto;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
color: white;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.kuangbox {
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
right: 15px;
|
||||
box-sizing: border-box;
|
||||
padding: 5px 10px;
|
||||
background: #024192;
|
||||
display: flex;
|
||||
border-radius: 50px;
|
||||
color: white;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.dis-bt {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.box-title {}
|
||||
|
||||
.box-nmb {
|
||||
font-size: 22px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.box-gang {
|
||||
width: 90%;
|
||||
margin: 10px auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.hui-anniu {
|
||||
box-sizing: border-box;
|
||||
padding: 5px 10px;
|
||||
background: #ebecef;
|
||||
display: flex;
|
||||
border-radius: 50px;
|
||||
}
|
||||
|
||||
.fuji {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.mx-box {
|
||||
width: 100%;
|
||||
border-radius: 8px;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.m-b-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #dedede;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.y-bt {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin: 5px auto;
|
||||
}
|
||||
|
||||
.box-name {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.moneyname {
|
||||
font-size: 16px;
|
||||
color: #056cf2;
|
||||
}
|
||||
|
||||
.sizehui {
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.sizehei {
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.sizehong {
|
||||
font-size: 14px;
|
||||
color: crimson;
|
||||
}
|
||||
|
||||
.dibu {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.xiaanniu {
|
||||
width: 90px;
|
||||
background-color: #1678ff;
|
||||
color: white;
|
||||
border-radius: 50px;
|
||||
height: 25px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 14px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
</style>
|
234
gasStation-uni/pagesMy/myorder/myorder.vue
Normal file
@ -0,0 +1,234 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">我的订单</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-box">
|
||||
<view class="top-input">
|
||||
<u-icon name="search" size="28"></u-icon>
|
||||
<input type="text" placeholder="搜索我的订单" />
|
||||
</view>
|
||||
<view class="">搜索</view>
|
||||
</view>
|
||||
<!-- tap -->
|
||||
<view class="tap-box">
|
||||
<view class="box-fv" :class="{'actbox' : tapindex == index }" v-for="(item,index) in tapList"
|
||||
:key="index" @click="gettapindex(index)">
|
||||
<view class="">{{item.text}}</view>
|
||||
<view class="gang" :class="{'actg' : tapindex == index }"></view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-order">
|
||||
<view class="or-box-top">
|
||||
<view class="">加油站名称</view>
|
||||
<view class="chengg">支付成功</view>
|
||||
</view>
|
||||
|
||||
<view class="but-box">
|
||||
<view class="huis">订单金额</view>
|
||||
<view class="">¥999999</view>
|
||||
</view>
|
||||
<view class="but-box">
|
||||
<view class="huis">优惠合计</view>
|
||||
<view class="reds">¥999999</view>
|
||||
</view>
|
||||
<view class="but-box">
|
||||
<view class="huis">订单时间</view>
|
||||
<view class="">2023.3.4</view>
|
||||
</view>
|
||||
<view class="end-box">
|
||||
<view class="anniu">
|
||||
<text>评价有礼</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
tapindex: 0,
|
||||
tapList: [{
|
||||
text: '全部'
|
||||
},
|
||||
{
|
||||
text: '待使用'
|
||||
},
|
||||
{
|
||||
text: '已完成'
|
||||
},
|
||||
{
|
||||
text: '待评价'
|
||||
},
|
||||
]
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
gettapindex(index) {
|
||||
this.tapindex = index
|
||||
},
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-box {
|
||||
background-color: #ffffff;
|
||||
padding: 10px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
|
||||
.top-input {
|
||||
width: 80%;
|
||||
height: 35px;
|
||||
background: #F3F3F3;
|
||||
border-radius: 33px;
|
||||
margin-right: 15px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
}
|
||||
}
|
||||
|
||||
.tap-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.box-fv {
|
||||
color: #666666;
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 30px;
|
||||
height: 5px;
|
||||
margin: 5px auto;
|
||||
// background: #339DFF;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.actg {
|
||||
background: #339DFF;
|
||||
}
|
||||
|
||||
.actbox {
|
||||
font-weight: bold !important;
|
||||
color: #000 !important;
|
||||
}
|
||||
|
||||
.box-order {
|
||||
width: 95%;
|
||||
border-radius: 8px;
|
||||
background: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
margin: 10px auto;
|
||||
}
|
||||
|
||||
.or-box-top {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding: 5px 0px;
|
||||
border-bottom: 1px solid #e5e5e5;
|
||||
|
||||
}
|
||||
|
||||
.chengg {
|
||||
color: #1678ff;
|
||||
}
|
||||
|
||||
.but-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 14px;
|
||||
margin: 5px 0px;
|
||||
}
|
||||
|
||||
.reds {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.huis {
|
||||
color: #666666;
|
||||
}
|
||||
|
||||
.end-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.anniu {
|
||||
width: 70px;
|
||||
height: 25px;
|
||||
background-color: #1678ff;
|
||||
color: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 14px;
|
||||
border-radius: 15px;
|
||||
}
|
||||
</style>
|
243
gasStation-uni/pagesMy/oilBalance/oilBalance.vue
Normal file
@ -0,0 +1,243 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">囤油升数</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-box">
|
||||
<view class="kuangbox">使用规则 </view>
|
||||
<view class="box-title">囤油升数</view>
|
||||
|
||||
<view class="box-nmb">0.00升</view>
|
||||
<view class="dis-bt">
|
||||
<view class="">累计获得0.00</view>
|
||||
<view class="">已经抵用0.00</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box-gang">
|
||||
<view class="">明细</view>
|
||||
<view class="hui-anniu">全部 <u-icon name="arrow-down-fill" size="18"></u-icon> </view>
|
||||
</view>
|
||||
<view class="fuji">
|
||||
|
||||
<view class="mx-box">
|
||||
<view class="m-b-box">
|
||||
<view class="box-name">加油站名称</view>
|
||||
<view class="moneyname">充值成功</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">订单金额</view>
|
||||
<view class="sizehei">¥0.01</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">优惠合计</view>
|
||||
<view class="sizehong">¥0.01</view>
|
||||
</view>
|
||||
<view class="y-bt">
|
||||
<view class="sizehui">订单时间</view>
|
||||
<view class="sizehei">2023.01.23</view>
|
||||
</view>
|
||||
<view class="dibu">
|
||||
<view class="xiaanniu">评价有礼</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.moni {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-box {
|
||||
width: 90%;
|
||||
// height: 105px;
|
||||
border-radius: 8px;
|
||||
background-color: #056cf2;
|
||||
margin: 10px auto;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
color: white;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.kuangbox {
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
right: 15px;
|
||||
box-sizing: border-box;
|
||||
padding: 5px 10px;
|
||||
background: #024192;
|
||||
display: flex;
|
||||
border-radius: 50px;
|
||||
color: white;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.dis-bt {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.box-title {}
|
||||
|
||||
.box-nmb {
|
||||
font-size: 22px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.box-gang {
|
||||
width: 90%;
|
||||
margin: 10px auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
|
||||
}
|
||||
|
||||
.hui-anniu {
|
||||
box-sizing: border-box;
|
||||
padding: 5px 10px;
|
||||
background: #ebecef;
|
||||
display: flex;
|
||||
border-radius: 50px;
|
||||
}
|
||||
|
||||
.fuji {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.mx-box {
|
||||
width: 100%;
|
||||
border-radius: 8px;
|
||||
background-color: #ffffff;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.m-b-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-bottom: 1px solid #dedede;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
.y-bt {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
margin: 5px auto;
|
||||
}
|
||||
|
||||
.box-name {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.moneyname {
|
||||
font-size: 16px;
|
||||
color: #056cf2;
|
||||
}
|
||||
|
||||
.sizehui {
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.sizehei {
|
||||
font-size: 14px;
|
||||
|
||||
}
|
||||
|
||||
.sizehong {
|
||||
font-size: 14px;
|
||||
color: crimson;
|
||||
}
|
||||
|
||||
.dibu {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.xiaanniu {
|
||||
width: 90px;
|
||||
background-color: #1678ff;
|
||||
color: white;
|
||||
border-radius: 50px;
|
||||
height: 25px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 14px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
</style>
|
116
gasStation-uni/pagesMy/setup/index.vue
Normal file
@ -0,0 +1,116 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">设置</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="box-hang">
|
||||
<view class="">头像</view>
|
||||
<view class="touxiang"></view>
|
||||
</view>
|
||||
<view class="box-hang">
|
||||
<view class="">昵称</view>
|
||||
<view class="dis"> <text>修改昵称</text> <uni-icons type="right" size="16"></uni-icons> </view>
|
||||
</view>
|
||||
<view class="box-hang">
|
||||
<view class="">手机号</view>
|
||||
<view class="dis"> <text></text> <uni-icons type="right" size="16"></uni-icons> </view>
|
||||
</view>
|
||||
<view class="box-hang">
|
||||
<view class="">会员卡号</view>
|
||||
<view class="dis"> <text></text> <uni-icons type="right" size="16"></uni-icons> </view>
|
||||
</view>
|
||||
<view class="box-hang">
|
||||
<view class="">车牌号</view>
|
||||
<view class="dis"> <text></text> <uni-icons type="right" size="16"></uni-icons> </view>
|
||||
</view>
|
||||
<view class="box-hang">
|
||||
<view class="">支付密码</view>
|
||||
<view class="dis"> <text></text> <uni-icons type="right" size="16"></uni-icons> </view>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.box-hang {
|
||||
background-color: white;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
box-sizing: border-box;
|
||||
padding: 15px 10px;
|
||||
border-bottom: 1px solid #f4f5f6;
|
||||
}
|
||||
|
||||
.touxiang {
|
||||
width: 45px;
|
||||
height: 45px;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
background-color: #f4f5f6;
|
||||
}
|
||||
|
||||
.dis {
|
||||
color: #a69999;
|
||||
}
|
||||
</style>
|
128
gasStation-uni/pagesMy/today/today.vue
Normal file
@ -0,0 +1,128 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">今日油价</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="top-box">
|
||||
<view class="t-left-box">
|
||||
<div>政府指导油价</div>
|
||||
</view>
|
||||
<view class="t-right-box">
|
||||
<div>最新油价(山东)</div>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="box-centenr">
|
||||
<!-- <view class="box-bor">
|
||||
<view class="">92#(国VIB)</view>
|
||||
<view class="gang"></view>
|
||||
<view class="">7.88/升</view>
|
||||
</view> -->
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.top-box {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background-color: #ffffff;
|
||||
border-bottom: 1px solid #ffffff;
|
||||
height: 50px;
|
||||
}
|
||||
|
||||
.t-left-box {
|
||||
width: 50%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.t-right-box {
|
||||
width: 50%;
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
.box-centenr {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
padding: 15px;
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.box-bor {
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.gang {
|
||||
width: 10px;
|
||||
height: 20px;
|
||||
background: crimson;
|
||||
margin: 0px 15px;
|
||||
}
|
||||
</style>
|
250
gasStation-uni/pagesRefuel/pagesRefuel/index.vue
Normal file
@ -0,0 +1,250 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="container">
|
||||
<view class="my-header">
|
||||
<view class="my-icons" @click="goback()"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||||
<view class="my-text">选择站点</view>
|
||||
<view class="my-icons"></view>
|
||||
</view>
|
||||
<!-- 顶部区域 -->
|
||||
<view class="bacek">
|
||||
|
||||
<view class="back-input">
|
||||
<view class="hui-input">
|
||||
<uni-icons type="search" size="20"></uni-icons>
|
||||
<input type="text" placeholder="请输入站点名" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="b-box" v-for="(item,index) in 5" :key="index">
|
||||
<view class="box-top">
|
||||
<view class="dis">
|
||||
<view class="touxiang">
|
||||
<image src="../../static/imgs/topbj.png" mode=""></image>
|
||||
</view>
|
||||
<view class="box-top-size">
|
||||
<view class="box-title">蓝鲸加油站(总站)</view>
|
||||
<view class="box-hui"> 平安大道东200米 </view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="">
|
||||
<view class="top-right-icon" v-if="index == 0"> <u-tag text="距离最近" size="mini" type="error"
|
||||
plain plainFill></u-tag>
|
||||
</view>
|
||||
<view class="box-hui">347.99km</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<scroll-view scroll-x="true" class="fa-scroll">
|
||||
<view class="scrollbox" v-for="(item,index) in 7" :key="index">
|
||||
<view style="font-size: 16px;">98#</view>
|
||||
<view style="font-size: 18px;">$7.69</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
<view class="wrap-box">
|
||||
<u-tag text="标签" type="warning" shape="circle"></u-tag>
|
||||
</view>
|
||||
<view class="box-bottom">
|
||||
<view class="box-bottom-anniu">
|
||||
<view class="bottom-icon">
|
||||
<image src="../../static/icon/daohang.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">到这去</view>
|
||||
</view>
|
||||
<view style="color: #ececec;">
|
||||
|
|
||||
</view>
|
||||
<view class="box-bottom-anniu">
|
||||
<view class="bottom-icon">
|
||||
<image src="../../static/icon/jiayou.png" mode=""></image>
|
||||
</view>
|
||||
<view class="">去加油</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
title: '',
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
components: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
goback() {
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.content {
|
||||
background: #f4f5f6;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
height: 100vh;
|
||||
box-sizing: border-box;
|
||||
padding-top: 88px;
|
||||
}
|
||||
|
||||
.my-header {
|
||||
width: 100%;
|
||||
height: 88px;
|
||||
background: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
color: #000;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 15px;
|
||||
padding-top: 40px;
|
||||
|
||||
.my-icons {
|
||||
width: 20px;
|
||||
|
||||
}
|
||||
|
||||
position: fixed;
|
||||
top: 0px;
|
||||
}
|
||||
|
||||
.bacek {
|
||||
background: #f4f5f6;
|
||||
box-sizing: border-box;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
|
||||
.back-input {
|
||||
width: 100%;
|
||||
height: 60px;
|
||||
background-color: #ffffff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.hui-input {
|
||||
width: 90%;
|
||||
height: 30px;
|
||||
border-radius: 50px;
|
||||
background-color: #f2f2f2;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
box-sizing: border-box;
|
||||
padding: 0px 10px;
|
||||
|
||||
input {
|
||||
width: 90%;
|
||||
}
|
||||
}
|
||||
|
||||
.b-box {
|
||||
width: 90%;
|
||||
padding: 10px;
|
||||
box-sizing: border-box;
|
||||
background-color: white;
|
||||
border-radius: 8px;
|
||||
margin: 10px auto;
|
||||
}
|
||||
|
||||
.box-top {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.touxiang {
|
||||
width: 45px;
|
||||
height: 45px;
|
||||
border-radius: 50%;
|
||||
overflow: hidden;
|
||||
|
||||
image {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.box-top-size {
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.box-title {
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.box-hui {
|
||||
font-size: 14px;
|
||||
color: #999999;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.fa-scroll {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.scrollbox {
|
||||
display: inline-block;
|
||||
width: 85px;
|
||||
border: 1px solid #f2f2f2;
|
||||
border-radius: 6px;
|
||||
height: 65px;
|
||||
margin: 5px;
|
||||
box-sizing: border-box;
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
color: #666666;
|
||||
}
|
||||
|
||||
.box-bottom {
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
border-top: 1px solid #ececec;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.box-bottom-anniu {
|
||||
width: 50%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: #1678ff;
|
||||
}
|
||||
|
||||
.bottom-icon {
|
||||
|
||||
margin-right: 5px;
|
||||
|
||||
image {
|
||||
width: 25px;
|
||||
height: 25px;
|
||||
}
|
||||
}
|
||||
|
||||
.wrap-box {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
</style>
|
42
gasStation-uni/request/index.js
Normal file
@ -0,0 +1,42 @@
|
||||
// 同时发送异步代码的次数
|
||||
let ajaxTimes = 0;
|
||||
export const request = (params) => {
|
||||
var openid = wx.getStorageSync("openid") || '';
|
||||
let header = {
|
||||
...params.header
|
||||
};
|
||||
|
||||
let urls;
|
||||
if (params.url.indexOf('?')) {
|
||||
urls = params.url
|
||||
} else {
|
||||
urls = params.url
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 定义公共的url
|
||||
// const baseUrl="https://jfsc.lmweixin.com/";
|
||||
const baseUrl = "http://192.168.1.159:8080/";
|
||||
return new Promise((resolve, reject) => {
|
||||
wx.request({
|
||||
...params,
|
||||
header: header,
|
||||
|
||||
url: baseUrl + urls,
|
||||
success: (result) => {
|
||||
resolve(result.data);
|
||||
},
|
||||
fail: (err) => {
|
||||
reject(err);
|
||||
},
|
||||
complete: () => {
|
||||
ajaxTimes--;
|
||||
if (ajaxTimes === 0) {
|
||||
// 关闭正在等待的图标
|
||||
wx.hideLoading();
|
||||
}
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
BIN
gasStation-uni/static/icon/daohang.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
gasStation-uni/static/icon/jiayou.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
gasStation-uni/static/imgs/Frame 25@2x.png
Normal file
After Width: | Height: | Size: 386 B |
BIN
gasStation-uni/static/imgs/bzhd.png
Normal file
After Width: | Height: | Size: 973 B |
BIN
gasStation-uni/static/imgs/centerbj.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
gasStation-uni/static/imgs/dui.png
Normal file
After Width: | Height: | Size: 428 B |
BIN
gasStation-uni/static/imgs/home.png
Normal file
After Width: | Height: | Size: 730 B |
BIN
gasStation-uni/static/imgs/homex.png
Normal file
After Width: | Height: | Size: 777 B |
BIN
gasStation-uni/static/imgs/jb.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
gasStation-uni/static/imgs/jfsc.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
gasStation-uni/static/imgs/jy.png
Normal file
After Width: | Height: | Size: 405 B |
BIN
gasStation-uni/static/imgs/jyz.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
gasStation-uni/static/imgs/jyzb.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
gasStation-uni/static/imgs/my.png
Normal file
After Width: | Height: | Size: 613 B |
BIN
gasStation-uni/static/imgs/myx.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
gasStation-uni/static/imgs/topbj.png
Normal file
After Width: | Height: | Size: 58 KiB |
BIN
gasStation-uni/static/imgs/viprwm.png
Normal file
After Width: | Height: | Size: 800 B |
BIN
gasStation-uni/static/imgs/xp.jpg
Normal file
After Width: | Height: | Size: 213 KiB |
BIN
gasStation-uni/static/imgs/ykcz.png
Normal file
After Width: | Height: | Size: 644 B |
BIN
gasStation-uni/static/logo.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
BIN
gasStation-uni/static/my/chongzhi.png
Normal file
After Width: | Height: | Size: 4.7 KiB |
BIN
gasStation-uni/static/my/dingdan.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
gasStation-uni/static/my/dpj.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
gasStation-uni/static/my/dsy.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
gasStation-uni/static/my/jfsc.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
gasStation-uni/static/my/jl.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
gasStation-uni/static/my/jryj.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
gasStation-uni/static/my/kb.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
gasStation-uni/static/my/lp.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
gasStation-uni/static/my/lpk.png
Normal file
After Width: | Height: | Size: 4.3 KiB |
BIN
gasStation-uni/static/my/yj.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
gasStation-uni/static/my/ywc.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
10
gasStation-uni/uni.promisify.adaptor.js
Normal file
@ -0,0 +1,10 @@
|
||||
uni.addInterceptor({
|
||||
returnValue (res) {
|
||||
if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) {
|
||||
return res;
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
res.then((res) => res[0] ? reject(res[0]) : resolve(res[1]));
|
||||
});
|
||||
},
|
||||
});
|
75
gasStation-uni/uni.scss
Normal file
@ -0,0 +1,75 @@
|
||||
/**
|
||||
* 这里是uni-app内置的常用样式变量
|
||||
*
|
||||
* uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
|
||||
* 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
|
||||
*
|
||||
* 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
|
||||
*/
|
||||
@import 'uview-ui/theme.scss';
|
||||
/* 颜色变量 */
|
||||
|
||||
/* 行为相关颜色 */
|
||||
$uni-color-primary: #007aff;
|
||||
$uni-color-success: #4cd964;
|
||||
$uni-color-warning: #f0ad4e;
|
||||
$uni-color-error: #dd524d;
|
||||
/* 文字基本颜色 */
|
||||
$uni-text-color:#333;//基本色
|
||||
$uni-text-color-inverse:#fff;//反色
|
||||
$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
|
||||
$uni-text-color-placeholder: #808080;
|
||||
$uni-text-color-disable:#c0c0c0;
|
||||
|
||||
/* 背景颜色 */
|
||||
$uni-bg-color:#ffffff;
|
||||
$uni-bg-color-grey:#f8f8f8;
|
||||
$uni-bg-color-hover:#f1f1f1;//点击状态颜色
|
||||
$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
|
||||
|
||||
/* 边框颜色 */
|
||||
$uni-border-color:#c8c7cc;
|
||||
|
||||
/* 尺寸变量 */
|
||||
|
||||
/* 文字尺寸 */
|
||||
$uni-font-size-sm:12px;
|
||||
$uni-font-size-base:14px;
|
||||
$uni-font-size-lg:16;
|
||||
|
||||
/* 图片尺寸 */
|
||||
$uni-img-size-sm:20px;
|
||||
$uni-img-size-base:26px;
|
||||
$uni-img-size-lg:40px;
|
||||
|
||||
/* Border Radius */
|
||||
$uni-border-radius-sm: 2px;
|
||||
$uni-border-radius-base: 3px;
|
||||
$uni-border-radius-lg: 6px;
|
||||
$uni-border-radius-circle: 50%;
|
||||
|
||||
/* 水平间距 */
|
||||
$uni-spacing-row-sm: 5px;
|
||||
$uni-spacing-row-base: 10px;
|
||||
$uni-spacing-row-lg: 15px;
|
||||
|
||||
/* 垂直间距 */
|
||||
$uni-spacing-col-sm: 4px;
|
||||
$uni-spacing-col-base: 8px;
|
||||
$uni-spacing-col-lg: 12px;
|
||||
|
||||
/* 透明度 */
|
||||
$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
|
||||
|
||||
/* 文章场景相关 */
|
||||
$uni-color-title: #2C405A; // 文章标题颜色
|
||||
$uni-font-size-title:20px;
|
||||
$uni-color-subtitle: #555555; // 二级标题颜色
|
||||
$uni-font-size-subtitle:26px;
|
||||
$uni-color-paragraph: #3F536E; // 文章段落颜色
|
||||
$uni-font-size-paragraph:15px;
|
13
gasStation-uni/utils/auth.js
Normal file
@ -0,0 +1,13 @@
|
||||
const TokenKey = 'App-Token'
|
||||
|
||||
export function getToken() {
|
||||
return uni.getStorageSync(TokenKey)
|
||||
}
|
||||
|
||||
export function setToken(token) {
|
||||
return uni.setStorageSync(TokenKey, token)
|
||||
}
|
||||
|
||||
export function removeToken() {
|
||||
return uni.removeStorageSync(TokenKey)
|
||||
}
|
54
gasStation-uni/utils/common.js
Normal file
@ -0,0 +1,54 @@
|
||||
/**
|
||||
* 显示消息提示框
|
||||
* @param content 提示的标题
|
||||
*/
|
||||
export function toast(content) {
|
||||
uni.showToast({
|
||||
icon: 'none',
|
||||
title: content
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 显示模态弹窗
|
||||
* @param content 提示的标题
|
||||
*/
|
||||
export function showConfirm(content) {
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
content: content,
|
||||
cancelText: '取消',
|
||||
confirmText: '确定',
|
||||
success: function(res) {
|
||||
resolve(res)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 参数处理
|
||||
* @param params 参数
|
||||
*/
|
||||
export function tansParams(params) {
|
||||
let result = ''
|
||||
for (const propName of Object.keys(params)) {
|
||||
const value = params[propName]
|
||||
var part = encodeURIComponent(propName) + "="
|
||||
if (value !== null && value !== "" && typeof (value) !== "undefined") {
|
||||
if (typeof value === 'object') {
|
||||
for (const key of Object.keys(value)) {
|
||||
if (value[key] !== null && value[key] !== "" && typeof (value[key]) !== 'undefined') {
|
||||
let params = propName + '[' + key + ']'
|
||||
var subPart = encodeURIComponent(params) + "="
|
||||
result += subPart + encodeURIComponent(value[key]) + "&"
|
||||
}
|
||||
}
|
||||
} else {
|
||||
result += part + encodeURIComponent(value) + "&"
|
||||
}
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
8
gasStation-uni/utils/constant.js
Normal file
@ -0,0 +1,8 @@
|
||||
const constant = {
|
||||
avatar: 'vuex_avatar',
|
||||
name: 'vuex_name',
|
||||
roles: 'vuex_roles',
|
||||
permissions: 'vuex_permissions'
|
||||
}
|
||||
|
||||
export default constant
|
6
gasStation-uni/utils/errorCode.js
Normal file
@ -0,0 +1,6 @@
|
||||
export default {
|
||||
'401': '认证失败,无法访问系统资源',
|
||||
'403': '当前操作没有权限',
|
||||
'404': '访问资源不存在',
|
||||
'default': '系统未知错误,请反馈给管理员'
|
||||
}
|
51
gasStation-uni/utils/permission.js
Normal file
@ -0,0 +1,51 @@
|
||||
import store from '@/store'
|
||||
|
||||
/**
|
||||
* 字符权限校验
|
||||
* @param {Array} value 校验值
|
||||
* @returns {Boolean}
|
||||
*/
|
||||
export function checkPermi(value) {
|
||||
if (value && value instanceof Array && value.length > 0) {
|
||||
const permissions = store.getters && store.getters.permissions
|
||||
const permissionDatas = value
|
||||
const all_permission = "*:*:*"
|
||||
|
||||
const hasPermission = permissions.some(permission => {
|
||||
return all_permission === permission || permissionDatas.includes(permission)
|
||||
})
|
||||
|
||||
if (!hasPermission) {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
} else {
|
||||
console.error(`need roles! Like checkPermi="['system:user:add','system:user:edit']"`)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 角色权限校验
|
||||
* @param {Array} value 校验值
|
||||
* @returns {Boolean}
|
||||
*/
|
||||
export function checkRole(value) {
|
||||
if (value && value instanceof Array && value.length > 0) {
|
||||
const roles = store.getters && store.getters.roles
|
||||
const permissionRoles = value
|
||||
const super_admin = "admin"
|
||||
|
||||
const hasRole = roles.some(role => {
|
||||
return super_admin === role || permissionRoles.includes(role)
|
||||
})
|
||||
|
||||
if (!hasRole) {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
} else {
|
||||
console.error(`need roles! Like checkRole="['admin','editor']"`)
|
||||
return false
|
||||
}
|
||||
}
|
347
gasStation-uni/utils/privacyPolicy.js
Normal file
@ -0,0 +1,347 @@
|
||||
let str = `
|
||||
<p style="text-align:center;line-height:30px;background:white">
|
||||
<strong><span style="font-size: 24px;"><span style="font-family: 宋体; color: rgb(51, 51, 51); background: white;">ASD隐私政策</span></span></strong>
|
||||
</p>
|
||||
<p style="line-height: 30px; background: white; text-align: right;">
|
||||
<span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: 宋体; color: rgb(51, 51, 51);">生效日期:</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: Arial, sans-serif; color: rgb(51, 51, 51);">2023</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: 宋体; color: rgb(51, 51, 51);">年</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: Arial, sans-serif; color: rgb(51, 51, 51);">5</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: 宋体; color: rgb(51, 51, 51);">月</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: Arial, sans-serif; color: rgb(51, 51, 51);">1</span><span style="background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-indent: 28px; font-size: 18px; font-family: 宋体; color: rgb(51, 51, 51);">日</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">ASD(以下或称</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">我们</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)非常注重保护用户(</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">您</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)的个人信息及隐私,我们深知个人信息对您的重要性,并将按照法律法规要求和业界成熟的安全标准,采取相应的安全保护措施来保护您的个人信息。我们希望通过本隐私政策向您清晰地介绍在使用我们的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务时,我们如何处理您的个人信息,以及我们为您提供的访问、更正、删除和保护这些信息的方式。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">本政策将帮助您了解以下内容:</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">一、我们如何收集和使用您的个人信息</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">二、我们如何共享、转让、公开披露您的个人信息</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">三、我们如何保存和保护您的个人信息</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">四、您如何管理您的个人信息</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">五、通知和修订</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">六、如何联系我们</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;color:#333333"> </span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">【特别提示】请您在使用我们提供的各项产品</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务前,仔细阅读并充分理解本《隐私政策》(重点内容我们已将字体加粗请您特别关注)并作出相应选择</span></span></strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">。<strong>一旦您使用或继续使用我们的产品</strong></span></span><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务时,即意味着您同意我们按照本隐私政策处理您的相关信息。</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">如对本隐私政策有任何疑问,您可以通过本隐私政策</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">“</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">如何联系我们</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span></span></strong><strong><span style="text-decoration:underline;"><span style="font-size:18px;font-family:宋体;color:#333333;background:white">中提供的方式与我们联系)。</span></span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">ASD的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务是由</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">***</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">有限公司(注册地址:</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">***</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)及其关联方提供者通过下述途径向您提供的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务:包括但不限于ASD小程序等。针对某些特定的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务,我们还将制定单独的隐私政策,向您说明这些产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务的特殊政策。如相关特定的隐私政策与本隐私政策有不一致之处,适用该特定隐私政策。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">本政策所称的ASD及其关联方是指</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">***</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">有限公司的相关关联公司的单称或合称。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">请您注意,本政策不适用于您通过我们的产品</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务而接入的其他第三方产品</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务</span></strong><strong><span style="font-size: 18px;font-family:'Arial',sans-serif;color:#333333;background:white">(“</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">其他第三方</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,包括您的交易相对方、任何第三方网站以及第三方服务提供者等</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">)</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,具体规定请参照该第三方的隐私政策或类似声明。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">一、我们如何收集和使用您的个人信息</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">在您使用我们的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务时,您需要</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">可以选择授权我们收集和使用个人信息的场景包括:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为了向您提供我们产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务的基本功能,您需要授权我们收集、使用必要信息的情形,如您拒绝提供必要信息,您将无法正常使用我们的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为了向您提供我们产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务的拓展功能,您可以选择授权我们收集、使用信息的情形,如您拒绝提供前述信息,您将无法正常使用相关附加功能或无法实现我们拟达到的功能效果,但并不会影响您正常使用我们产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务的基本功能。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(一)您需要授权我们收集和使用个人信息的场景</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">我们会遵循正当、合法、必要的原则,出于本政策所述的下列目的收集和使用您的个人信息。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">1</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、帮助您成为我们的用户</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为遵守法律法规的要求,以及向您提供更便捷的服务,在您注册成为ASD用户时,您需要至少提供<strong>手机号码</strong>以创建ASD账号,并完善相关的<strong>网络身份识别信息(如头像、昵称及登录密码等)</strong>;如果您仅需使用浏览等功能,您无需注册成为我们的用户以及提供上述信息。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">2</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、向您提供基于地理位置的信息展示</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为了向您提供周边商家及周边抽奖活动,提升我们的服务表现、效率和功能,经您授权我们会收集您在使用我们服务过程中产生的相关信息,包括:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)位置信息。当您通过系统授权开启移动设备的定位功能并使用基于位置提供的服务时,我们会收集和使用您的位置信息以便为您推荐周边的服务</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(例如您不需要手动输入所在地理位置就可获得相关服务,估算商家与您之间的实际距离方便您进行消费决策,为您推荐附近的服务品类和优惠信息等)。我们会使用</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">GPS</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">技术获取您的<strong>位置信息</strong>(准确度会有所不同)</span> <span style="font-size:18px;font-family:宋体;color:#333333;background:white">。<strong>您可以在移动设备的系统中关闭定位服务停止我们对您所在位置信息的收集,但可能因此无法使用我们基于地理位置为您提供的服务,或者无法达到相关服务的预期效果。</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)日志信息。</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">当您使用我们提供的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务时,我们会收集您的交易、分享等信息并作为有关网络日志进行保存,其中包括您的访问日期和时间、网络请求等。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">3</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为您提供绑定儿童的功能</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">您在ASD上使用绑定儿童服务时,您需要根据所选择的服务类型提供<strong>联系人信息(姓名、性别、电话号码等)</strong>、<strong>地址信息</strong>等。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">您可能需要根据有关法律规定和相关方要求</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">提供您的<strong>实名身份信息(包括但不限于您的身份证、军官证、护照、驾驶证、学生证等载明您身份的证件照片、复印件、号码等)</strong>、<strong>联系人信息(姓名、性别、电话号码等)</strong>等。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">您在ASD上做的测试信息属于敏感信息,请您谨慎向他人展示或对外提供</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">4</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为您提供设备推荐功能</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">当您在ASD上测试完成后,您需要提供</span><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">地址信息等</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,以便于您查看附近的设备。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">5</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、帮助您完成支付</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">您在ASD上进行订单支付时,您可以选择微信支付进行支付。我们需要收集您的<strong>ASD对账信息及其他法律要求的必要信息并与这些合作机构共享</strong>,以确认您的支付指令并帮助您完成支付。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(二)您可以选择授权我们收集和使用个人信息的场景</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为向您提供个性化、便捷的服务,您可以选择使用我们提供的拓展功能,我们会在符合法律规定并根据您具体授权的情况下收集并使用如下信息。这类信息将在您选择的具体功能和业务场景中进行收集,如果您不提供这些信息,不会影响您使用基本功能。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">1</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、基于运动与健身授权的拓展功能</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">当您使用步数统计、走路抽奖等功能时,我们会申请获取您的运动与健身权限。</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">在您开启相关权限后,我们会访问您的运动与健身权限,帮助您完成步数统计、走路抽奖等功能。<strong>拒绝授权将无法使用上述服务,但不会影响ASD其他功能的正常使用。</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(三)征得同意的例外</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">请您知悉,以下情形中,我们收集、使用个人信息无需征得您的授权同意:</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">1</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为订立、履行个人作为一方当事人的合同所必需,或者按照依法制定的劳动规章制度和依法签订的集体合同实施人力资源管理所必需;</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">2</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为履行法定职责或者法定义务所必需;</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">3</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为应对突发公共卫生事件,或者紧急情况下为保护自然人的生命健康和财产安全所必需;</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">4</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、为公共利益实施新闻报道、舆论监督等行为,在合理的范围内处理个人信息;</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">5</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、依照本法规定在合理的范围内处理个人自行公开或者其他已经合法公开的个人信息;</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family: 'Arial',sans-serif;color:#333333;background:white">6</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、法律法规规定的其他情形。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">请注意,单独或与其他信息相结合无法识别您的身份或者与您直接建立联系的信息,不属于个人信息。如果我们将单独无法与任何特定个人建立联系的信息与其他信息结合用于识别自然人个人身份,或者将其与个人信息结合使用,则在结合使用期间,此类信息将被视为个人信息。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(四)个人信息的使用规则</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为满足您的个性化需求,维护、改进我们的产品或服务质量,我们会在符合法律规定并根据您具体授权的情况下使用如下信息:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>我们可能会收集您的订单信息、位置信息等,以及将您在ASD上使用某项服务中提供的信息与来自其他服务中的信息结合起来,进行综合统计、分析以形成用户画像,</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、我们可能会收集您在参与产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务调查时主动向我们提供的信息,以及您与我们的关联方、合作伙伴之间互动时提供的相关信息,以便于您追踪订单情况以及我们优化客户服务的质量与流程。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、我们可能将业务中收集的个人信息用于统计分析和改进运营,将已经去标识化无法识别您身份且不能复原的信息用于建立数据库并进行商业化利用。例如通过您所在的位置、偏好等进行统计分析,从而改进我们的产品、服务或营销计划;又如为改进我们系统而进行的技术改造、网络维护、故障排除、内部政策与流程制定、生成内部报告等。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(五)设备权限调用</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为确保相关业务功能的正常实现,我们需要根据具体的使用场景调用对应的必要权限,并在调用前向您弹窗询问</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">您可以在设备的设置中选择关闭部分或者全部权限,这可能导致对应的业务功能无法实现或者无法达到预期效果。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">三、我们如何共享、转让、公开披露您的个人信息</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(一)共享</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">在我们向您提供产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务时,我们会采取严格的安全措施,由我们所完成的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务中我们不会与ASD以外的任何公司、组织和个人共享您的个人信息。但请您知悉,我们提供的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务大多是无法单独完成的,因此我们可能会与我们的关联公司以及其他合作商等第三方共享或委托其处理您的部分个人信息,以保障和优化我们为您提供的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务,此类情况包括:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>提供平台服务</strong>。我们可能会作为电子商务平台向您提供产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务,<strong>如您在我们的平台上使用商家或其他合作方提供的产品</strong></span><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务,我们可能会与相应产品</span></strong><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务的提供方共享您的必要个人信息</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,以便于您能够正常使用相应的浏览、交易、支付等功能。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>提供统一管理服务</strong>。如您使用我们的账号登录和使用我们关联公司和其他第三方所提供的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务,我们可能会共享您的个人信息。我们只会共享必要的个人信息以便向您提供一致化的服务和统一管理,例如在我们的产品</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">服务内查看订单并进行管理,<strong>如果我们共享您的个人敏感信息或者关联方改变个人信息的使用目的,将再次征求您的授权同意</strong>。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>提供必要的合作服务</strong>。仅为实现本政策中声明的目的,我们的某些服务将由业务合作伙伴提供。为保障为您提供的服务顺利完成,我们可能会将您的个人信息共享给我们的合作伙伴,包括配送业务、技术服务、支付服务、金融业务服务等的供应商、服务合作商、第三方商家等,其中可能包括您的联络信息、订单信息、支付信息、地址信息等。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">4</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、除了上述情况外,我们如果对其他任何公司、组织和个人共享您的个人信息,会再次征求您的明确同意或授权。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">请您知悉,我们仅会出于合法、正当、必要、特定、明确的目的共享您的个人信息,对我们仅为实现本政策中声明的目的与之共享个人信息的公司、组织和个人,我们会与其签署严格的信息保护和保密协定,要求他们遵守协议并采取相关的安全措施来保护您的个人信息。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(二)转让</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">随着我们业务的发展,我们及我们的关联方有可能进行合并、收购、重组、资产转让或类似的交易,<strong>如涉及个人信息的转让,我们会要求受让您个人信息的公司、组织继续接受本隐私政策的约束,否则</strong></span><strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">,</span></strong><strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">我们将要求该公司、组织重新征求您的授权同意</span></strong><span style="font-size: 18px;font-family:宋体;color:#333333;background:white">。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">除了上述情况,我们不会未经您的明确同意将您的个人信息进行转让。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(三)公开披露</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">我们仅会在以下情况下,且采取符合业界标准的安全防护措施的前提下,才可能公开披露您的个人信息:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、根据您的需求,在您明确同意的披露方式下披露您所指定的个人信息;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、根据法律、法规的要求、强制性的行政执法或司法要求所必须提供您个人信息的情况下,我们可能会依据所要求的个人信息类型和披露方式公开披露您的个人信息。在符合法律法规的前提下,当我们收到上述披露信息的请求时,我们会要求必须出具与之相应的法律文件,如传票或调查函。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(四)共享、转让、公开披露个人信息时事先征得授权同意的例外</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">以下情形中,共享、转让、公开披露您的个人信息无需事先征得您的授权同意:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、与国家安全、国防安全有关的;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、与公共安全、公共卫生、重大公共利益有关的;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、与犯罪侦查、起诉、审判和判决执行等有关的;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">4</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、出于维护您或其他个人的生命、财产等重大合法权益但又很难得到本人同意的;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">5</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、其他维护公共利益的情形,例如您的信用评价信息需要被公开</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">/</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">共享;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">6</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、您自行向社会公众公开的个人信息;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">7</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、从合法公开披露的信息中收集个人信息的,如合法的新闻报道、政府信息公开等渠道。但是您明确拒绝或者处理该信息侵害您重大利益的除外;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">8</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、其他依法规定可以无需征得授权的情况。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">根据法律规定,共享、转让、公开披露经去标识化处理的个人信息,且确保数据接收方无法复原并重新识别个人信息主体的,我们对此类数据的处理将无需另行向您通知并征得您的同意。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">四、我们如何保存和保护您的个人信息</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(一)个人信息的保存</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>保存期限:我们只会在达成本政策所述目的所需的期限内保留您的个人信息,除非法律法规有强制的留存要求,</strong>例如《中华人民共和国电子商务法》要求商品和服务信息、交易信息保存时间自交易完成之日起不少于三年。我们判断个人信息的存储期限主要参考以下标准并以其中较长者为准:完成与您相关的交易目的、维护相应交易及业务记录,以应对您可能的查询或投诉;保证我们为您提供服务的安全和质量;您是否同意更长的留存期间;是否存在关于保留期限的其他特别约定或法律法规规定。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">在超出保留期间后,我们会根据适用法律的要求删除您的个人信息,或使其匿名化处理。在您主动注销账号时,我们将根据法律法规的要求进行数据处理。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>保存地域:</strong>我们在<strong>中华人民共和国境内</strong>收集和产生的个人信息,将<strong>存储在中国境内</strong>,但以下情形除外:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">(</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)法律法规有明确规定的;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">(</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)单独征得您的授权同意;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">(</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">)您主动发起的跨境预定、下单、交易等个人行为。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">在上述情形中,我们会根据法律法规要求履行相应流程和义务,并要求数据接收方按照不低于本隐私政策以及其他相关的安全保密措施来处理个人信息。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>终止运营:</strong>如果发生终止运营等情形,我们将会至少提前</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">30</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">天通知您,并在终止运营后对您的个人信息根据法律法规的要求进行处理。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(二)个人信息的保护措施</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>数据安全措施</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为保障您的信息安全,我们努力采取各种符合业界标准的物理、电子和管理方面的安全措施来保护您的个人信息,建立数据分类分级制度、数据安全管理规范、数据安全开发规范来管理规范个人信息的存储和使用。ASD通过信息接触者保密协议、监控和审计机制来对数据进行全面安全控制,防止您的个人信息遭到未经授权访问、公开披露、使用、修改、损坏或丢失。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、请您知悉并理解,<strong>互联网并非绝对安全的环境,我们强烈建议您通过安全方式、使用复杂密码,协助我们保证您的账号安全。如您发现自己的个人信息泄密,尤其是您的账号或密码发生泄露,请您立即根据本隐私政策中提供的联系方式联络我们,以便我们采取相应措施。</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">3</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、<strong>安全事件</strong></span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">在不幸发生个人信息安全事件后,我们会立即成立专项应急小组,启动应急预案,防止安全事件扩大,并按照法律法规的要求及时向您告知:安全事件的基本情况和可能的影响、我们已采取或将要采取的处置措施、您可自主防范和降低风险的建议、对您的补救措施等。<strong>我们将及时将事件相关情况以邮件、信函、电话、推送通知等方式告知您,难以逐一告知个人信息主体时,我们会采取合理、有效的方式发布公告。同时,我们还将按照监管部门要求,主动上报个人信息安全事件的处置情况</strong>。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">五、您如何管理您的个人信息</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">您对您的个人信息享有以下权利。根据法律法规要求,在特定情形下,除您另有安排,您的近亲属为了自身的合法、正当利益,可以对您的相关个人信息行使以下权利。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">(一)您有权访问、更正、删除您的个人信息</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,<strong>法律法规规定的例外情况除外。</strong>您可以通过以下方式管理您的信息</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">:</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">个人信息查阅与管理</span></strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">:您可以通过</span><span style="font-size: 18px;font-family:'Arial',sans-serif;color:#333333;background:white">“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">我的</span><span style="font-size: 18px;font-family:'Arial',sans-serif;color:#333333;background:white">”-“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">设置</span><span style="font-size: 18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">,进行个人信息的查阅与管理。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">地址信息</span></strong><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">——</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">您可以通过</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">我的</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”-“</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">设置</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">”</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">中随时添加、更改、删除您的收货地址信息(包括收货人姓名、性别、收货地址、电话号码等)。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">请您知悉,根据法律法规的要求及不同信息的技术条件需要,我们可能无法立即从系统中完全删除您所希望删除的相应信息,在此之前,我们将根据法规要求对相应信息仅进行存储并采取必要的安全保护措施方面的处理。</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">如果您无法通过上述链接管理这些个人信息,您可以随时通过本隐私政策中提供的反馈方式联系我们。我们将在</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">15</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">天内回复您的访问请求。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">七、通知和修订</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">为给您提供更好的服务,我们的业务将不时变化,本隐私政策也将随之调整,对我们的基本情况、您的个人信息的处理目的方式种类和保存期限、您管理个人信息的方式、我们的联系方式发生变更的,我们会进行及时更新。未经您明确同意,我们不会削减您依据本隐私政策所应享有的权利。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">我们会通过在我们网站、移动端上发出更新版本或以其他方式提醒您相关内容的更新,也请您访问我们以便及时了解最新的隐私政策。在前述情况下,若您继续使用我们的服务,即表示同意接受修订后的本政策并受之约束。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<strong><span style="font-size:18px;font-family:宋体;color:#333333;background:white">八、如何联系我们</span></strong>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:宋体;color:#333333;background:white">您可以通过以下方式与我们联系,我们将在</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">15</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">天内答复您的请求;</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">1</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、您可以联系ASD的客服电话进行反馈</span><span style="font-size: 18px;font-family:'Arial',sans-serif;color:#333333;background:white">******</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">。</span>
|
||||
</p>
|
||||
<p style="margin-top:24px;line-height:30px;background:white">
|
||||
<span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white">2</span><span style="font-size:18px;font-family:宋体;color:#333333;background:white">、我们还设立了专门的个人信息保护团队,您可以联系我们的个人信息保护负责人邮箱</span><span style="font-size:18px;font-family:'Arial',sans-serif;color:#333333;background:white"> ******.com </span>
|
||||
</p>
|
||||
<p>
|
||||
<br/>
|
||||
</p>
|
||||
`
|
||||
export {
|
||||
str
|
||||
}
|
70
gasStation-uni/utils/request.js
Normal file
@ -0,0 +1,70 @@
|
||||
import store from '@/store'
|
||||
import config from '@/config'
|
||||
import { getToken } from '@/utils/auth'
|
||||
import errorCode from '@/utils/errorCode'
|
||||
import { toast, showConfirm, tansParams } from '@/utils/common'
|
||||
|
||||
let timeout = 10000
|
||||
const baseUrl = config.baseUrl
|
||||
|
||||
const request = config => {
|
||||
// 是否需要设置 token
|
||||
const isToken = (config.headers || {}).isToken === false
|
||||
config.header = config.header || {}
|
||||
if (getToken() && !isToken) {
|
||||
config.header['Authorization'] = 'Bearer ' + getToken()
|
||||
}
|
||||
// get请求映射params参数
|
||||
if (config.params) {
|
||||
let url = config.url + '?' + tansParams(config.params)
|
||||
url = url.slice(0, -1)
|
||||
config.url = url
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.request({
|
||||
method: config.method || 'get',
|
||||
timeout: config.timeout || timeout,
|
||||
url: config.baseUrl || baseUrl + config.url,
|
||||
data: config.data,
|
||||
header: config.header,
|
||||
dataType: 'json'
|
||||
}).then(response => {
|
||||
// debugger
|
||||
let res = response
|
||||
|
||||
const code = res.data.code || 200
|
||||
const msg = errorCode[code] || res.data.msg || errorCode['default']
|
||||
if (code === 401) {
|
||||
showConfirm('登录状态已过期,您可以继续留在该页面,或者重新登录?').then(res => {
|
||||
if (res.confirm) {
|
||||
store.dispatch('LogOut').then(res => {
|
||||
uni.reLaunch({ url: '/pages/login/login' })
|
||||
})
|
||||
}
|
||||
})
|
||||
reject('无效的会话,或者会话已过期,请重新登录。')
|
||||
} else if (code === 500) {
|
||||
toast(msg)
|
||||
reject('500')
|
||||
} else if (code !== 200) {
|
||||
toast(msg)
|
||||
reject(code)
|
||||
}
|
||||
resolve(res.data)
|
||||
})
|
||||
.catch(error => {
|
||||
let { message } = error
|
||||
if (message === 'Network Error') {
|
||||
message = '后端接口连接异常'
|
||||
} else if (message.includes('timeout')) {
|
||||
message = '系统接口请求超时'
|
||||
} else if (message.includes('Request failed with status code')) {
|
||||
message = '系统接口' + message.substr(message.length - 3) + '异常'
|
||||
}
|
||||
toast(message)
|
||||
reject(error)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export default request
|
31
gasStation-uni/utils/share.js
Normal file
@ -0,0 +1,31 @@
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
//设置默认的分享参数
|
||||
share: {
|
||||
title: '机动车管家',
|
||||
path: '/pages/detection/detection',
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
onShareAppMessage(res) {
|
||||
return {
|
||||
title: this.share.title,
|
||||
path: this.share.path,
|
||||
|
||||
success(res) {
|
||||
uni.showToast({
|
||||
title: '分享成功'
|
||||
})
|
||||
},
|
||||
fail(res) {
|
||||
uni.showToast({
|
||||
title: '分享失败',
|
||||
icon: 'none'
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
onShareTimeline() {},
|
||||
}
|
33
gasStation-uni/utils/storage.js
Normal file
@ -0,0 +1,33 @@
|
||||
import constant from './constant'
|
||||
|
||||
// 存储变量名
|
||||
let storageKey = 'storage_data'
|
||||
|
||||
// 存储节点变量名
|
||||
let storageNodeKeys = [constant.avatar, constant.name, constant.roles, constant.permissions]
|
||||
|
||||
// 存储的数据
|
||||
let storageData = uni.getStorageSync(storageKey) || {}
|
||||
|
||||
const storage = {
|
||||
set: function(key, value) {
|
||||
if (storageNodeKeys.indexOf(key) != -1) {
|
||||
let tmp = uni.getStorageSync(storageKey)
|
||||
tmp = tmp ? tmp : {}
|
||||
tmp[key] = value
|
||||
uni.setStorageSync(storageKey, tmp)
|
||||
}
|
||||
},
|
||||
get: function(key) {
|
||||
return storageData[key] || ""
|
||||
},
|
||||
remove: function(key) {
|
||||
delete storageData[key]
|
||||
uni.setStorageSync(storageKey, storageData)
|
||||
},
|
||||
clean: function() {
|
||||
uni.removeStorageSync(storageKey)
|
||||
}
|
||||
}
|
||||
|
||||
export default storage
|
70
gasStation-uni/utils/upload.js
Normal file
@ -0,0 +1,70 @@
|
||||
import store from '@/store'
|
||||
import config from '@/config'
|
||||
import { getToken } from '@/utils/auth'
|
||||
import errorCode from '@/utils/errorCode'
|
||||
import { toast, showConfirm, tansParams } from '@/utils/common'
|
||||
|
||||
let timeout = 10000
|
||||
const baseUrl = config.baseUrl
|
||||
|
||||
const upload = config => {
|
||||
// 是否需要设置 token
|
||||
const isToken = (config.headers || {}).isToken === false
|
||||
config.header = config.header || {}
|
||||
if (getToken() && !isToken) {
|
||||
config.header['Authorization'] = 'Bearer ' + getToken()
|
||||
}
|
||||
// get请求映射params参数
|
||||
if (config.params) {
|
||||
let url = config.url + '?' + tansParams(config.params)
|
||||
url = url.slice(0, -1)
|
||||
config.url = url
|
||||
}
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.uploadFile({
|
||||
timeout: config.timeout || timeout,
|
||||
url: baseUrl + config.url,
|
||||
filePath: config.filePath,
|
||||
name: config.name || 'file',
|
||||
header: config.header,
|
||||
formData: config.formData,
|
||||
success: (res) => {
|
||||
let result = JSON.parse(res.data)
|
||||
const code = result.code || 200
|
||||
const msg = errorCode[code] || result.msg || errorCode['default']
|
||||
if (code === 200) {
|
||||
resolve(result)
|
||||
} else if (code == 401) {
|
||||
showConfirm("登录状态已过期,您可以继续留在该页面,或者重新登录?").then(res => {
|
||||
if (res.confirm) {
|
||||
store.dispatch('LogOut').then(res => {
|
||||
uni.reLaunch({ url: '/pages/login/login' })
|
||||
})
|
||||
}
|
||||
})
|
||||
reject('无效的会话,或者会话已过期,请重新登录。')
|
||||
} else if (code === 500) {
|
||||
toast(msg)
|
||||
reject('500')
|
||||
} else if (code !== 200) {
|
||||
toast(msg)
|
||||
reject(code)
|
||||
}
|
||||
},
|
||||
fail: (error) => {
|
||||
let { message } = error
|
||||
if (message == 'Network Error') {
|
||||
message = '后端接口连接异常'
|
||||
} else if (message.includes('timeout')) {
|
||||
message = '系统接口请求超时'
|
||||
} else if (message.includes('Request failed with status code')) {
|
||||
message = '系统接口' + message.substr(message.length - 3) + '异常'
|
||||
}
|
||||
toast(message)
|
||||
reject(error)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
export default upload
|