Commit 29cd5170 authored by miko's avatar miko

aa

parent 5759fb9f
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectTasksOptions">
<TaskOptions isEnabled="true">
<TaskOptions isEnabled="false">
<option name="arguments" value="-i &quot;&quot; s/&quot;\ rpx&quot;/rpx/g $FilePath$" />
<option name="checkSyntaxErrors" value="true" />
<option name="description" />
......
{
"description": "A WePY project",
"setting": {
"urlCheck": true,
"es6": false,
"postcss": false,
"minified": false,
"newFeature": true,
"coverView": true,
"autoAudits": false,
"showShadowRootInWxmlPanel": true,
"scopeDataCheck": false,
"checkInvalidKey": true,
"checkSiteMap": true,
"uploadWithSourceMap": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
},
"nodeModules": true
},
"compileType": "miniprogram",
"appid": "wx5cda879d33846e26",
"projectname": "mpshaodai",
"miniprogramRoot": "weapp/",
"simulatorType": "wechat",
"simulatorPluginLibVersion": {},
"condition": {}
"description": "A WePY project",
"setting": {
"urlCheck": false,
"es6": true,
"postcss": false,
"minified": false,
"newFeature": true,
"coverView": true,
"nodeModules": true,
"autoAudits": false,
"showShadowRootInWxmlPanel": true,
"scopeDataCheck": false,
"checkInvalidKey": true,
"checkSiteMap": true,
"uploadWithSourceMap": true,
"compileHotReLoad": false,
"useMultiFrameRuntime": false,
"useApiHook": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
},
"useIsolateContext": true,
"useCompilerModule": false,
"userConfirmedUseCompilerModuleSwitch": false,
"packNpmManually": false,
"packNpmRelationList": [],
"minifyWXSS": true
},
"compileType": "miniprogram",
"appid": "wx5cda879d33846e26",
"projectname": "mpshaodai",
"miniprogramRoot": "weapp/",
"simulatorType": "wechat",
"simulatorPluginLibVersion": {},
"condition": {}
}
\ No newline at end of file
......@@ -12,9 +12,13 @@
height: 100%;
}
.pc{
background: #FE991B!important;
background: #FAC135!important;
}
.sc{
background: #0468C3!important;
}
.mytabbar {
--tabbar-item-font-size: 32rpx;
//--tabbar-item-icon-size:61px;
......@@ -31,13 +35,14 @@ wepy.use(vuex);
wepy.app({
hooks: {
// App 级别 hook,对整个 App 生效
// 同时存在 Page hook 和 App hook 时,优先执行 Page hook,返回值再交由 App hook 处
'before-setData': function (dirty) {
console.log('setData dirty: ', dirty);
return dirty;
}
// 'before-setData': function (dirty) {
// console.log('setData dirty: ', dirty);
// return dirty;
// }
},
globalData: {
userInfo: null
......@@ -46,8 +51,6 @@ wepy.app({
onLaunch() {
this.testAsync();
eventHub.$on('app-launch', (...args) => {
console.log('app-launch event emitted, the params are:');
console.log(args);
});
wx.getSystemInfo({
success: res => {
......@@ -56,7 +59,6 @@ wepy.app({
this.$options.config.statusbarHeight = res.statusBarHeight;
}, fail(err) {
console.log(err);
}
})
},
......@@ -72,7 +74,6 @@ wepy.app({
async testAsync () {
let d = await this.sleep(3);
console.log(d);
}
},
config:{
......@@ -82,7 +83,10 @@ wepy.app({
titleIcon_width: "87",
title_top: "24",
title_text: "xxx", // iphone X + 24
prefix: 24
prefix: 24,
urlPrefix: 'https://tmallab.com/sd/api'
// urlPrefix: "http://127.0.0.1:8888/api"
}
});
</script>
......@@ -90,9 +94,14 @@ wepy.app({
{
pages: [
'pages/index',
'pages/progress'
'pages/progress',
],
<!--"plugins": {-->
<!--"ocr-plugin": {-->
<!--"version": "3.0.2",-->
<!--"provider": "wx4418e3e031e551be"-->
<!--}-->
<!--},-->
window: {
navigationStyle: "custom",
backgroundTextStyle: 'light',
......@@ -100,6 +109,7 @@ wepy.app({
navigationBarTextStyle: 'black'
}
,
"tabBar": {
"custom": true,
......@@ -122,3 +132,5 @@ wepy.app({
}
}
</config>
src/assets/tab1.png

3.22 KB | W: | H:

src/assets/tab1.png

2.09 KB | W: | H:

src/assets/tab1.png
src/assets/tab1.png
src/assets/tab1.png
src/assets/tab1.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/tab1s.png

4.64 KB | W: | H:

src/assets/tab1s.png

3.11 KB | W: | H:

src/assets/tab1s.png
src/assets/tab1s.png
src/assets/tab1s.png
src/assets/tab1s.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/tab2.png

1.02 KB | W: | H:

src/assets/tab2.png

1.28 KB | W: | H:

src/assets/tab2.png
src/assets/tab2.png
src/assets/tab2.png
src/assets/tab2.png
  • 2-up
  • Swipe
  • Onion skin
src/assets/tab2s.png

2.66 KB | W: | H:

src/assets/tab2s.png

1.36 KB | W: | H:

src/assets/tab2s.png
src/assets/tab2s.png
src/assets/tab2s.png
src/assets/tab2s.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -3,13 +3,15 @@ module.exports = {
get,
upload
}
const app = getApp().$wepy.$options
// LOG控制
const isLog = false
// 网络请求超时
const timeOut = 30 * 1000
const prefix = 'http://127.0.0.1:8888/api'
const prefix = app.config.urlPrefix
// MARK 网络请求
function get(url, data) {
......
......@@ -13,6 +13,8 @@
width: 100%;
}
.header {
z-index: 1000;
width: 100%;
height: 170rpx;
display: flex;
......@@ -29,25 +31,34 @@
width: 490rpx;
.avatar-small {
display: flex;flex-direction: row;
align-items: center;
justify-content: center;
border-radius: 50%;
overflow: hidden;
background: #aaaaaa;
background: white;
z-index: 1000;
width: 83rpx;
height: 83rpx;
width: 98rpx;
height: 98rpx;
}
.avatar-big {
display: flex;flex-direction: row;
align-items: center;
justify-content: center;
border-radius: 50%;
overflow: hidden;
background: #aaaaaa;
background: white;
z-index: 1000;
width: 119rpx;
height: 119rpx;
width: 138rpx;
height: 138rpx;
}
}
}
.van-image{
display: block!important;
}
.message {
border: 1px solid #EBEBEB;
......@@ -76,6 +87,7 @@
padding-right: 24rpx;
.scroll-container {
position: relative;
display: flex;
flex-direction: row;
align-items: center;
......@@ -110,7 +122,7 @@
}
.placeholder {
color: black !important;
color: #0468C3 !important;
}
.input-notnull {
......@@ -231,13 +243,13 @@
}
.tag-checked {
border: 1px solid #FE991B;
border: 1px solid #FAC135;
margin: 12rpx 24rpx 10rpx 0;
box-sizing: border-box;
height: 72rpx;
padding: 16rpx 31rpx;
font-size: 29rpx;
color: #FE991B;
color: #FAC135;
border-radius: 34rpx;
background: #F7F7F7;
}
......@@ -297,8 +309,6 @@
width: 100%;
height: 66rpx;
align-items: flex-end;
display: flex;
flex-direction: row;
label {
font-weight: 600;
......@@ -334,10 +344,7 @@
flex-direction: row;
width: 100%;
height: 66rpx;
display: flex;
align-items: flex-end;
flex-direction: row;
label {
font-size: 26rpx;
margin-left: 26rpx
......@@ -347,7 +354,60 @@
}
}
}
.pop-icon{
height: 162rpx;width: 162rpx;border-radius: 50%;background: white;margin-top: -74rpx;display: flex;flex-direction: column;align-items: center;justify-content: center
}
.pop-item{
margin-top: 22rpx;
display: flex;
flex-direction: row;
align-items: center;
width: 484rpx;
height: 82rpx;
background: rgba(4, 104, 195, 0.08);
border-radius: 46px;
image{
height: 44rpx;
width: 44rpx;
}
label{
font-size: 29rpx;
font-weight: 400;
color: #0468C3;
line-height: 40rpx;
}
}
.pop-button{
display: flex;
align-items: center;
flex-direction: row;
justify-content:center;
margin-top: 64rpx;
font-size: 33rpx;
font-weight: 500;
color: #FFFFFF;
line-height: 46rpx;
letter-spacing: 2rpx;
width: 651rpx;
height: 91rpx;
background: #0468C3;
border-radius: 46rpx;
}
.cellChecked{
background-color: #07c1604C!important;
color: #969799!important;
}
.bt-service{
box-shadow:0 2rpx 4rpx rgba(0, 0, 0, .3);
width: 160rpx!important;
position: fixed!important;
right: -30rpx!important;
bottom: 460rpx!important;
}
</style>
......@@ -364,13 +424,124 @@
<!--</wxs>-->
<template>
<div class="container" style="align-items: center">
<header background="#FE991B" title_text="捎带"/>
<van-overlay show="{{ showMark }}" bind:click="onClickHide">
<header background="transparent" title_text="熊猫派捎带"/>
<scroll-view scroll-y="true" class="main">
<div class="header pc">
<div class="inner">
<div @tap="openChange" class="avatar-small">
<van-image
round
fit="cover"
width="88rpx"
height="88rpx"
:src="schoolIconUrl"
/>
</div>
<div class="avatar-big">
<van-image
round
fit="cover"
width="126rpx"
height="126rpx"
src="../assets/main-logo.png"
/>
</div>
<div class="avatar-small" @tap="mallClick">
<van-image
round
fit="cover"
width="88rpx"
height="88rpx"
src="../assets/mall.png"
/>
</div>
</div>
</div>
<div class="message">
<div class="inner">
<div class="inner-top">
<div class="scroll-container">
<div v-if="!messageText"
style="width: 9rpx;height: 40rpx;margin-top: -3rpx;align-self: center;margin-left: 24rpx"
class="sc"/>
<textarea contenteditable="true" placeholder="粘贴短信或者识别截图"
auto-height="true"
fixed="true"
@input="messageInput"
placeholder-class="placeholder"
v-model="messageText"
class="{{messageText? 'input-notnull':'input-null'}}"/>
</div>
<img v-if="!messageText" src="@/assets/pic.png"/>
<img v-if="messageText" @tap="cleanMessage" src="@/assets/close.png"/>
</div>
<div class="parse-result" v-if="messageText">
<span style="font-size: 28rpx">识别结果</span>
<div>
<span style="color: #0468C3" v-if="messageComp">{{ messageComp }}</span>
<span style="color: #0468C3" v-else>未知快递公司</span>
<span v-if="messagePacketCode" style="margin-left: 25rpx;color: #0468C3;">{{ messagePacketCode }}</span>
<span v-else style="margin-left: 25rpx;color: #0468C3">无取件码</span>
</div>
<van-button icon="success" round type="primary" size="small" @tap="confirmMessage"
v-bind:disabled="messageConfirmed">确认
</van-button>
</div>
<div v-if="messageText" class="parse-result" style="font-size: 24rpx;color: #BABABA;border: none">
识别仅供参考,若与实际意思不一致,请自行输入快递公司和取件码,例如:"顺丰123"即可
</div>
</div>
</div>
<image style="margin-left: 150rpx" src="@/assets/hint.png"/>
<span style="width: 482rpx!important;margin: 10rpx 160rpx;height: 91rpx!important;font-size: 33rpx;font-weight: 500;color: #FFFFFF;line-height: 46rpx;letter-spacing: 2rpx;">
注意不是快递运单号,而是取件时使用的短信取件码哦~~
</span>
<van-button style="z-index: 1000!important;" @tap="know()" round color="#0468C3" custom-class="bt-submit">我知道了</van-button>
</scroll-view>
</van-overlay>
<header background="#FAC135" title_text="熊猫派捎带"/>
<div class="main">
<div class="header pc">
<div class="inner">
<image class="avatar-small"></image>
<image class="avatar-big"></image>
<image class="avatar-small"></image>
<div @tap="openChange" class="avatar-small">
<van-image
round
fit="cover"
width="88rpx"
height="88rpx"
:src="schoolIconUrl"
/>
</div>
<div class="avatar-big">
<van-image
round
fit="cover"
width="126rpx"
height="126rpx"
src="../assets/main-logo.png"
/>
</div>
<div class="avatar-small" @tap="mallClick">
<van-image
round
fit="cover"
width="88rpx"
height="88rpx"
src="../assets/mall.png"
/>
</div>
</div>
</div>
......@@ -380,7 +551,7 @@
<div class="scroll-container">
<div v-if="!messageText"
style="width: 9rpx;height: 40rpx;margin-top: -3rpx;align-self: center;margin-left: 24rpx"
class="pc"/>
class="sc"/>
<textarea contenteditable="true" placeholder="粘贴短信或者识别截图"
auto-height="true"
......@@ -388,7 +559,6 @@
placeholder-class="placeholder"
v-model="messageText"
class="{{messageText? 'input-notnull':'input-null'}}"/>
</div>
<img v-if="!messageText" src="@/assets/pic.png"/>
<img v-if="messageText" @tap="cleanMessage" src="@/assets/close.png"/>
......@@ -397,10 +567,10 @@
<div class="parse-result" v-if="messageText">
<span style="font-size: 28rpx">识别结果</span>
<div>
<span v-if="messageComp">{{ messageComp }}</span>
<span v-else>未知快递公司</span>
<span v-if="messagePacketCode" style="margin-left: 25rpx">{{ messagePacketCode }}</span>
<span v-else style="margin-left: 25rpx">无取件码</span>
<span style="color: #0468C3" v-if="messageComp">{{ messageComp }}</span>
<span style="color: #0468C3" v-else>未知快递公司</span>
<span v-if="messagePacketCode" style="margin-left: 25rpx;color: #0468C3;">{{ messagePacketCode }}</span>
<span v-else style="margin-left: 25rpx;color: #0468C3">无取件码</span>
</div>
<van-button icon="success" round type="primary" size="small" @tap="confirmMessage"
v-bind:disabled="messageConfirmed">确认
......@@ -426,11 +596,10 @@
</div>
</div>
<div class="remark">
<div class="remark" v-if="!showMark">
<div class="top">
<span class="panel-title">留言</span>
</div>
<div class="middle">
<div class="{{item.checked?'tag-checked':'tag-uncheck'}}" @tap="remarkCheck(index)"
v-for="(item,index) in remarkList">{{ item.label }}
......@@ -442,8 +611,9 @@
<input v-model="remarkText" placeholder="也可以填写其他留言"/>
</div>
</div>
<van-button @tap="taskSubmit" round custom-class="bt-submit pc">提 交</van-button>
<van-button @tap="taskSubmit" round color="#0468C3" custom-class="bt-submit">提 交</van-button>
</div>
<van-button icon="service" open-type="contact" round custom-class="bt-service">客服</van-button>
<van-action-sheet
@close="closeAddressSheet"
......@@ -470,9 +640,9 @@
style="width: 220rpx;font-size: 34rpx;margin-left: 46rpx;"
placeholder="13000000000"/>
</div>
<div style="width: 20%;color: #FE991B" @tap="getPhone">
自动获取
</div>
<!-- <div style="width: 20%;color: #FAC135" @tap="getPhone">-->
<!-- 自动获取-->
<!-- </div>-->
</div>
<div class="bottom">
<image style="height: 32rpx;width: 32rpx" src="@/assets/info.png"></image>
......@@ -492,11 +662,85 @@
</div>
</div>
</div>
<van-button @tap="updateAddress" round custom-class="bt-update pc">更 新</van-button>
<van-button @tap="updateAddress" round custom-class="bt-update sc">更 新</van-button>
</div>
</van-action-sheet>
<van-action-sheet
title="我所在的校区"
@close="closeSchoolSheet"
@click-overlay="closeSchoolSheet"
v-bind:show="showChangeSchoolSheet"
>
<div style="display: flex;flex-direction: column;align-items: center;width: 100%;padding: 20rpx 0 40rpx 0rpx">
<van-cell-group style="width: 100%">
<div style="width: 100%" v-for="item in schoolSearchResult" >
<van-cell v-if="item.checked" custom-class="cellChecked" @tap="schoolItmeClick(item)" :title="item.schoolName" />
<van-cell v-else @tap="schoolItmeClick(item)" :title="item.schoolName" />
</div>
</van-cell-group>
<van-search @change="onChange" style="width: 90%;"
@search="onSearch" :value="searchText" placeholder="请输入校区名" />
<van-button @tap="updateSchool" round custom-class="bt-update sc">更 新</van-button>
</div>
</van-action-sheet>
<van-popup
@close="closeUnOpen"
@click-overlay="closeUnOpen"
v-bind:show="showUnOpenSheet"
closeable
position="bottom"
custom-style="height: 1000rpx;display: flex;flex-direction: column;align-items: center;width: 100%;overflow-y: visible"
>
<div class="pop-icon" v-if="showUnOpenSheet">
<van-image
round
fit="cover"
width="150rpx"
height="150rpx"
:src="schoolIconUrl"
/>
</div>
<span style="height: 48rpx;font-size: 37rpx;color: #000000;line-height: 44rpx;letter-spacing: 2rpx;margin-top: 12rpx">{{school.schoolName}}</span>
<span style="font-size: 26rpx;margin-top: 24rpx;color: #858585">暂未开通</span>
<div class="pop-item" style="margin-top: 64rpx!important;">
<image style="margin-left: 48rpx" src="@/assets/r1.png"/>
<span style="margin-left: 48rpx">0元投入</span>
</div>
<div class="pop-item">
<image style="margin-left: 48rpx" src="@/assets/r2.png"/>
<span style="margin-left: 48rpx">全方位扶持</span>
</div>
<div class="pop-item">
<image style="margin-left: 48rpx" src="@/assets/r3.png"/>
<span style="margin-left: 48rpx">锻炼管理能力</span>
</div>
<div class="pop-item">
<image style="margin-left: 48rpx" src="@/assets/r4.png"/>
<span style="margin-left: 48rpx">服务同学,结交朋友</span>
</div>
<div class="pop-item">
<image style="margin-left: 48rpx" src="@/assets/r5.png"/>
<span style="margin-left: 48rpx">享受月薪+提成</span>
</div>
<button class="pop-button" open-type="contact">
申请成为校区负责人
</button>
</van-popup>
<van-action-sheet
title="选择宿舍楼"
......@@ -515,9 +759,11 @@
</van-action-sheet>
<!-- 自定义tabbar-->
<van-tabbar
active-color="#FE991B"
active-color="#FAC135"
active="{{ active }}" @change="onTabChange" class="mytabbar">
<van-tabbar-item>
<image
......@@ -582,12 +828,18 @@ wepy.page({
mixins: [testMixin],
data: {
showMark: false,
showUnOpenSheet: false,
school: {},
schoolSearchResult: [],
showChangeSchoolSheet: false,
schoolIconUrl: '',
active: 0,
messageComp: '',
messagePacketCode: '',
messageConfirmed: false,
carrierCoList: ['德邦', 'EMS',
'百世', '国通', '汇通', '联邦', '申通', '顺丰', '天天', '菜鸟', '韵达', '圆通', '邮政', '中铁', '中通', '宅急送', '中邮', '中环'],
'百世', '国通', '汇通', '联邦', '申通', '顺丰', '天天', '菜鸟', '韵达', '圆通', '邮政', '中铁', '中通', '宅急送', '中邮', '中环', '京东'],
dormitoryList: [],
showDormitorySheet: false,
......@@ -599,7 +851,6 @@ wepy.page({
addressSheet_Floor: '',
addressSheet_Room: '',
address: '',
messageText: '',
remarkText: '',
......@@ -617,12 +868,65 @@ wepy.page({
showMessageParse: true
},
computed: {},
methods: {
openChange(){
this.showUnOpenSheet = false
this.showChangeSchoolSheet = true
},
know(){
this.showMark = false
wx.setStorageSync("know",true)
},
apply(){
},
mallClick(){
wx.showToast({
title: '超市功能尚未开启,尽请期待',
icon: 'none',
duration: 4000
})
},
closeUnOpen(){
this.showUnOpenSheet = false
},
updateSchool(){
this.showChangeSchoolSheet = false
let s = this.schoolSearchResult.find(v=>{
return v.checked
})
wx.setStorageSync('schoolID',s.schoolID)
this.$wx.onShow()
},
schoolItmeClick(item){
let i = JSON.parse(JSON.stringify(item))
let l = JSON.parse(JSON.stringify(this.schoolSearchResult))
l.map(v=>{
v.checked = v.schoolName === i.schoolName
return v
})
this.schoolSearchResult = l
},
onChange(detail){
this.searchText = detail.$wx.detail
if(!this.searchText){
this.schoolSearchResult = []
return
}
let param = {
searchText: this.searchText
}
http.post('/school/search',param).then(data => {
this.schoolSearchResult = data.data
})
},
closeSchoolSheet(){
this.showChangeSchoolSheet = false
},
onTabChange(event){
this.active = event.detail
this.active = event.$wx.detail
if(this.active === 0){
}else{
......@@ -645,15 +949,12 @@ wepy.page({
}
this.messageConfirmed = true
if(!this.address){
if (!this.messageComp || !this.messagePacketCode) {
wx.showToast({
title: '请填写正确的收货地址',
icon: 'none',
duration: 4000
})
return
}
this.messageConfirmed = true
}
let remark = this.remarkText
......@@ -663,7 +964,6 @@ wepy.page({
}
})
let param = {
remark: remark,
phone: this.address.phone,
......@@ -790,13 +1090,23 @@ wepy.page({
},
parsePaketCode(str) {
let result = ''
var pattern = /\d(\-|\/|.)\d{1,}\1\d{1,}/
var pattern = /\d{1,}(\-|\/|.)\d{1,}\1\d{1,}/
var arr = str.match(pattern)
if (arr && arr.length > 0) {
result = arr[0]
return result
}
pattern = /\d{1,}(\-|\/|.)\d{1,6}/
arr = str.match(pattern)
if (arr && arr.length > 0 && !result) {
result = arr[0]
return result
}
pattern = /\d{3,}/
pattern = /\d{2,}/
arr = str.match(pattern)
if (arr && arr.length > 0 && !result) {
......@@ -806,13 +1116,26 @@ wepy.page({
},
getPhone() {
},initSchool(){
let schoolID = wx.getStorageSync('schoolID')
this.schoolIconUrl = app.config.urlPrefix+'/school/icon/'+schoolID
http.get('/school/info/'+schoolID).then(res => {
this.school = res.data
if(res.data.deleted === 1){
this.showUnOpenSheet = true
}
})
}
},
onLoad() {
onShow() {
this.showMark = !wx.getStorageSync("know")
this.active = 0
//TODO 初始化学校 id
wx.setStorageSync('schoolID', 2)
if(!wx.getStorageSync('schoolID')){
wx.setStorageSync('schoolID', 2)
}
const _that = this
wx.login({
......@@ -836,16 +1159,21 @@ wepy.page({
_that.address = null
}
})
_that.initSchool()
http.post('/dormitory/getDormitoryBySchool', { pageIndex: 1, pageSize: 100 }).then(res => {
_that.dormitoryList = res.data.map(v => {
return v.name
})
_that.dormitoryList.unshift('其他')
})
})
}
})
http.post('/dormitory/getDormitoryBySchool', { pageIndex: 1, pageSize: 100 }).then(res => {
this.dormitoryList = res.data.records.map(v => {
return v.name
})
this.dormitoryList.unshift('其他')
})
}
})
</script>
......@@ -855,6 +1183,11 @@ navigationBarTextStyle: "white",
navigationBarBackgroundColor: "#45C9C3",
navigationBarTitleText: '小树懒捎带',
usingComponents: {
"van-overlay": "module:@vant/weapp/lib/overlay/index",
"van-cell": "module:@vant/weapp/lib/cell/index",
"van-cell-group": "module:@vant/weapp/lib/cell-group/index",
"van-search": "module:@vant/weapp/lib/search/index",
"van-image": "module:@vant/weapp/lib/image/index",
header: '~@/components/header',
"van-picker": "module:@vant/weapp/lib/picker/index",
"van-popup": "module:@vant/weapp/lib/popup/index",
......
......@@ -44,14 +44,26 @@
align-items: center;
justify-content: center;
position: absolute;
background: red;width: 52rpx;height: 52rpx;
background: #BABABA;width: 52rpx;height: 52rpx;
}
.pp1{
border-radius: 26rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
position: absolute;
background: #FAC135;
width: 52rpx;height: 52rpx;
}
label{
color: white;
font-size: 24rpx;
}
}
.bottom{
justify-content: space-between;
display: flex;
flex-direction: row;
align-items: center;
......@@ -112,7 +124,17 @@
align-items: center;
justify-content: center;
position: absolute;
background: red;width: 52rpx;height: 52rpx;
background: #BABABA;width: 52rpx;height: 52rpx;
}
.pp1{
border-radius: 26rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
position: absolute;
background: #FAC135;
width: 52rpx;height: 52rpx;
}
label{
color: white;
......@@ -136,6 +158,23 @@
}
}
}
.bottom-button{
width: 272px;
height: 91px;
color: white!important;
background: #0468C3!important;
border-radius: 46px!important;
}
.bt-subscribe{
border-radius: 19rpx;
text-align: center;
font-size: 19rpx;
line-height: 37rpx;
width: 118rpx;
height: 37rpx;
color: white;
background: #FAC135;
}
</style>
<wxs module="m1" lang="babel">
......@@ -152,16 +191,21 @@ module.exports.getTime = getTime;
<template>
<div class="container" style="align-items: center">
<header background="#FE991B " title_text="进度查询"/>
<header background="#FAC135 " title_text="进度查询"/>
<div class="main">
<div v-for="(item,index) in list" class="list-item" @tap="itemClick(item)">
<van-empty v-if="list.length===0" description="您还没有发布过捎带订单哦">
<van-button custom-class="bottom-button">
发布捎带
</van-button>
</van-empty>
<div v-if="list.length>0" v-for="(item,index) in list" class="list-item" @tap="itemClick(item)">
<div class="top">
<div class="right">
<span>{{item.courierCompany}}</span>
<span style="margin-left: 20rpx">{{item.pickupCode}}</span>
</div>
<span style="font-size: 23rpx;color: #BABABA">{{item.submitTime}}</span>
<span style="font-size: 23rpx;color: #BABABA">{{item.create}}</span>
</div>
<div class="middle">
......@@ -170,29 +214,37 @@ module.exports.getTime = getTime;
:percentage="item.percentage"
track-color="#B9b9b9"
pivot-text=" "
color="linear-gradient(to right, #FE9f1f, #FE991B)"
color="linear-gradient(to right, #FAC135 30%, #FEC135 100%);"
stroke-width="" />
<div class="cover">
<span style="margin-left: 30rpx">取件点</span>
<span style="margin-left: 50rpx" >快到楼下</span>
<div class="p1" style="margin-left: 266rpx">
<div @tap.stop="photo1(item)" class="{{[item.status>=1?'pp1':'p1']}}" style="margin-left: 116rpx">
<van-icon color="white" name="photograph" />
</div>
<span style="margin-left: 100rpx" >楼内配送</span>
<span style="margin-left: 90rpx" >送达照片</span>
<div class="p1" style="margin-left: 637rpx">
<span style="margin-left:78rpx" >快到楼下</span>
<div @tap.stop="photo2(item)" class="{{[item.status>=2?'pp1':'p1']}}" style="margin-left: 296rpx">
<van-icon color="white" name="photograph" />
</div>
<span style="margin-left: 110rpx" >楼内配送</span>
<span style="margin-left: 40rpx" >订单送达</span>
<div @tap.stop="photo3(item)" class="{{[item.status==3 ?'pp1':'p1']}}" style="margin-left: 637rpx">
<van-icon color="white" name="photograph" />
</div>
</div>
</div>
<div class="bottom">
<van-icon name="info-o" color="#BABABA" size="36rpx"/>
<span style="margin-left: 9rpx;color: #bABABa">已送达,普通规格快递</span>
<div style="display: flex;flex-direction: row;align-items: center;width: 350rpx;justify-content: flex-start">
<van-icon name="info-o" color="#BABABA" size="36rpx"/>
<span style="margin-left: 9rpx;color: #bABABa">{{item.statusStr}}</span>
</div>
<div class="bt-subscribe" @tap.stop="sub(item)">
订阅消息
</div>
</div>
</div>
</div>
</div>
......@@ -206,22 +258,27 @@ module.exports.getTime = getTime;
<div class="middle">
<van-progress
class="progress"
:percentage="item.percentage"
:percentage="currentItem.percentage"
track-color="#B9b9b9"
pivot-text=" "
color="linear-gradient(to right, #FE9f1f, #FE991B)"
color="linear-gradient(162deg, #FAC135 0%, #0468C3 100%);"
stroke-width="" />
<div class="cover">
<span style="margin-left: 30rpx">取件点</span>
<span style="margin-left: 50rpx" >快到楼下</span>
<div class="p1" style="margin-left: 266rpx">
<div @tap="photo1(currentItem)" class="{{[currentItem.status>=1?'pp1':'p1']}}" style="margin-left: 116rpx">
<van-icon color="white" name="photograph" />
</div>
<span style="margin-left: 100rpx" >楼内配送</span>
<span style="margin-left: 90rpx" >送达照片</span>
<div class="p1" style="margin-left: 637rpx">
<span style="margin-left:78rpx" >快到楼下</span>
<div @tap="photo2(currentItem)" class="{{[currentItem.status>=2?'pp1':'p1']}}" style="margin-left: 296rpx">
<van-icon color="white" name="photograph" />
</div>
<span style="margin-left: 110rpx" >楼内配送</span>
<span style="margin-left: 40rpx" >订单送达</span>
<div @tap="photo3(currentItem)" class="{{[currentItem.status==3 ?'pp1':'p1']}}" style="margin-left: 637rpx">
<van-icon color="white" name="photograph" />
</div>
</div>
......@@ -252,7 +309,7 @@ module.exports.getTime = getTime;
<div class="item">
<div class="left">下单时间</div>
<div class="right">{{currentItem.submitTime}}</div>
<div class="right">{{currentItem.createTime}}</div>
</div>
<div class="item">
......@@ -261,7 +318,7 @@ module.exports.getTime = getTime;
</div>
<div class="item">
<div class="left">情况描述</div>
<div class="right">{{currentItem.remark}}</div>
<div class="right">{{currentItem.statusStr}}</div>
</div>
......@@ -271,7 +328,7 @@ module.exports.getTime = getTime;
<!-- 自定义tabbar-->
<van-tabbar
active-color="#FE991B"
active-color="#FAC135"
active="{{ active }}" @change="onTabChange" class="mytabbar">
<van-tabbar-item>
<image
......@@ -327,6 +384,12 @@ wepy.page({
},
methods: {
sub(item) {
wx.requestSubscribeMessage({
tmplIds: ['8VhR4ruZ-b6kZRzSzQ4TwI-Y8Rh8vSR1kg5R7kFDrfQ','8VhR4ruZ-b6kZRzSzQ4TwP1fPXITxSawzR-z_XsgMok','8VhR4ruZ-b6kZRzSzQ4TwOHT914KwUCpusAX0y6w2Wo'],
success (res) { }
})
},
closeDetailSheet(){
this.showDetailSheet = false
},
......@@ -334,9 +397,54 @@ wepy.page({
this.currentItem = item
this.showDetailSheet = true
},
photo1(item){
if(item.takeCredentials){
console.log(app.config.urlPrefix+'/download/'+item.takeCredentials)
wx.previewImage({
current: app.config.urlPrefix+'/download/'+item.takeCredentials, // 当前显示图片的http链接
urls: [app.config.urlPrefix+'/download/'+item.takeCredentials]
})
}else{
wx.showToast({
title: '尚未取件',
icon: 'none',
duration: 4000
})
}
},
photo2(item){
if(item.sendCredentials){
wx.previewImage({
current: app.config.urlPrefix+'/download/'+item.sendCredentials, // 当前显示图片的http链接
urls: [app.config.urlPrefix+'/download/'+item.sendCredentials]
})
}else{
wx.showToast({
title: '尚未送达宿舍楼',
icon: 'none',
duration: 4000
})
}
},
photo3(item){
if(item.innerSendCredentials){
wx.previewImage({
current: app.config.urlPrefix+'/download/'+item.innerSendCredentials, // 当前显示图片的http链接
urls: [app.config.urlPrefix+'/download/'+item.innerSendCredentials]
})
}else{
wx.showToast({
title: '尚未配送完成',
icon: 'none',
duration: 4000
})
}
},
onTabChange(event){
this.active = event.detail
this.active = event.$wx.detail
console.log(this.active)
if(this.active === 1){
}else{
......@@ -348,20 +456,25 @@ wepy.page({
}
},
onShow() {
http.post('/task/getSdHistory', { pageIndex: 1, pageSize: 1000, pageSorts: [{column: 'submittime',asc: false }] }).then(res => {
this.active = 1
http.post('/task/getSdHistory', { pageIndex: 1, pageSize: 1000, pageSorts: [{column: 'createtime',asc: false }] }).then(res => {
if(res.code === 200){
this.list = res.data.records
this.list.map(v=>{
if(v.status === 0){
v.percentage = 20
v.percentage = 10
v.statusStr = '取件点取件中'
}else if(v.status === 1){
v.percentage = 40
v.percentage = 35
v.statusStr = '正在送往宿舍楼'
}else if(v.status === 2){
v.percentage = 60
v.statusStr = '楼内配送中'
}else if(v.status === 3){
v.percentage = 100
v.statusStr = '配送完成'
}
return v
})
}
......@@ -375,6 +488,7 @@ navigationBarTextStyle: "white",
navigationBarBackgroundColor: "#45C9C3",
navigationBarTitleText: '',
usingComponents: {
"van-empty": "module:@vant/weapp/lib/empty/index",
header: '~@/components/header',
"van-picker": "module:@vant/weapp/lib/picker/index",
"van-popup": "module:@vant/weapp/lib/popup/index",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment