Browse Source

物流详情页面细节调整,新增电话

qianduan 10 months ago
parent
commit
2d944efa55
29 changed files with 201 additions and 22 deletions
  1. 8 2
      components/x-steps.vue
  2. 3 3
      manifest.json
  3. 17 2
      pages/order/delivery.vue
  4. 76 4
      pages/order/logisticsDetails.vue
  5. 88 2
      pages/order/orderDetails.vue
  6. BIN
      static/task/arrows.png
  7. BIN
      static/task/endpoint.png
  8. BIN
      static/task/startpoint.png
  9. BIN
      unpackage/cache/apk/__UNI__92DFF97_cm.apk
  10. 1 1
      unpackage/cache/apk/apkurl
  11. 0 0
      unpackage/cache/apk/cmManifestCache.json
  12. 1 1
      unpackage/cache/wgt/__UNI__92DFF97/app-config-service.js
  13. 0 0
      unpackage/cache/wgt/__UNI__92DFF97/app-service.js
  14. 0 0
      unpackage/cache/wgt/__UNI__92DFF97/app-view.js
  15. 0 0
      unpackage/cache/wgt/__UNI__92DFF97/manifest.json
  16. BIN
      unpackage/cache/wgt/__UNI__92DFF97/static/task/arrows.png
  17. BIN
      unpackage/cache/wgt/__UNI__92DFF97/static/task/endpoint.png
  18. BIN
      unpackage/cache/wgt/__UNI__92DFF97/static/task/startpoint.png
  19. 1 1
      unpackage/dist/build/app-plus/app-config-service.js
  20. 0 0
      unpackage/dist/build/app-plus/app-service.js
  21. 0 0
      unpackage/dist/build/app-plus/app-view.js
  22. 0 0
      unpackage/dist/build/app-plus/manifest.json
  23. BIN
      unpackage/dist/build/app-plus/static/task/arrows.png
  24. BIN
      unpackage/dist/build/app-plus/static/task/endpoint.png
  25. BIN
      unpackage/dist/build/app-plus/static/task/startpoint.png
  26. 0 0
      unpackage/dist/dev/app-plus/app-service.js
  27. 6 6
      unpackage/dist/dev/app-plus/app-view.js
  28. 0 0
      unpackage/dist/dev/app-plus/manifest.json
  29. BIN
      unpackage/release/apk/__UNI__92DFF97__20240507092319.apk

+ 8 - 2
components/x-steps.vue

@@ -17,7 +17,7 @@
 			<view class="steps_item" v-for="(i, index) in infoList" :key="index">
 				<view class="s_r">
 					<view class="line" :style="{ backgroundColor: index != 0 ? '#EAEAEA' : 'rgba(0,0,0,0)' }"></view>
-					<view class="index" :style="{ backgroundColor: backgroundColor, color: color }"></view>
+					<view class="index" :style="{ backgroundColor: i.backgroundColor, color: color }"></view>
 					<view class="line"
 						:style="{ backgroundColor: index != infoList.length - 1 ? '#EAEAEA' : 'rgba(0,0,0,0)' }"></view>
 				</view>
@@ -25,7 +25,12 @@
 					<view class="info_item">
 						<!-- 真是节点名称、时间 -->
 						<view class="top_info">
-							<view class="title">{{ i.text }}</view>
+							<view class="title">{{ i.text }}
+								<view v-if="i.phone">
+									联系电话:<span style="color: #f29100;margin-right: 15rpx;">{{i.phone}}</span>
+								</view>
+								{{ i.text1 }}
+							</view>
 							<view class="date">{{ i.createdAt || '测试产业单位'}}</view>
 						</view>
 					</view>
@@ -89,6 +94,7 @@
 
 		.steps_item {
 			display: flex;
+			flex-direction: row;
 
 			.s_r {
 				padding: 0 20rpx;

+ 3 - 3
manifest.json

@@ -1,9 +1,9 @@
 {
-    "name" : "宝智达冷链物流",
+    "name" : "冷链物流",
     "appid" : "__UNI__92DFF97",
     "description" : "",
-    "versionName" : "1.0.4",
-    "versionCode" : 500,
+    "versionName" : "1.0.6",
+    "versionCode" : 502,
     "transformPx" : false,
     /* 5+App特有相关 */
     "app-plus" : {

+ 17 - 2
pages/order/delivery.vue

@@ -58,7 +58,8 @@
 			</view>
 			<view style="width: 100%;height: 120rpx;"></view>
 			<view class="card_btn">
-				<u-button style="margin-bottom: 20rpx;" type="primary" @click="submit">提交</u-button>
+				<u-button style="margin-bottom: 20rpx;" type="primary" :disabled="jurisdiction"
+					@click="submit">提交</u-button>
 			</view>
 		</view>
 	</view>
@@ -83,6 +84,20 @@
 				fileList3: [],
 			}
 		},
+		computed: {
+			jurisdiction() {
+				if (this.fileList1.length > 0 && this.fileList2.length > 0 && this.fileList3.length > 0) {
+					if (this.fileList1[0].message == '成功' && this.fileList2[0].message == '成功' && this.fileList3[0]
+						.message == '成功') {
+						return false
+					} else {
+						return true
+					}
+				} else {
+					return true
+				}
+			}
+		},
 		onLoad(receive) {
 			this.navTitle = receive.title
 			this.selectiveType = receive.id
@@ -223,7 +238,7 @@
 					let item = this[`fileList${event.name}`][fileListLen]
 					this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
 						status: 'success',
-						message: '',
+						message: '成功',
 						url: result
 					}))
 					fileListLen++

+ 76 - 4
pages/order/logisticsDetails.vue

@@ -4,7 +4,10 @@
 		<u-navbar title="物流详情" autoBack placeholder></u-navbar>
 		<view style="width: 100%;">
 			<map style="width: 100%;height: 500rpx;" id="container" :latitude="latitude" :longitude="longitude"
-				:scale="scale">
+				:scale="scale" :polyline="polylineList" :markers="markersList">
+				<view slot="loading">
+					<view class="loading-icon">加载中...</view>
+				</view>
 			</map>
 		</view>
 		<view class="card_logistics">
@@ -29,7 +32,7 @@
 				map: null,
 				longitude: 106.6282014,
 				latitude: 26.64669,
-				scale: 11,
+				scale: 14,
 				activitiesList: [],
 				active: 0,
 				statusList: [{
@@ -57,6 +60,8 @@
 					id: 8,
 					title: '已签收',
 				}],
+				polylineList: [],
+				markersList: [],
 			}
 		},
 		mounted() {
@@ -76,20 +81,78 @@
 					if (res.code == 200) {
 						var arrList = res.data.list
 						arrList.forEach(async (item) => {
+							item.backgroundColor = '#ffffff'
 							item.text = ''
 							let arr = this.statusList.filter((i) => {
 								return item.status == i.id;
 							});
 							let yonTitle = ''
+							let phone = ''
 							if (item.car.id) {
 								yonTitle = item.car.carNo
+								phone = item.car.user.phone
 							} else if (item.warehouse.id) {
 								yonTitle = item.warehouse.name
+								phone = item.warehouse.user.phone
 							}
 							// const trapeze = await this.reverseGeocode(item.lng, item.lat)
-							item.text = '【' + yonTitle + '】' + '您的货物' + arr[0].title
+							item.phone = phone
+							item.text = item.address + '【' + yonTitle + '】'
+							item.text1 = '您的货物' + arr[0].title
 						})
-						this.activitiesList = arrList
+						arrList[0].backgroundColor = '#2979ff'
+						this.activitiesList = arrList.reverse()
+						this.getTrack()
+					}
+				})
+			},
+			// 获取轨迹
+			getTrack() {
+				this.$api.get('/api/waybill-task/locus', {
+					waybillNo: this.orderList.waybillNo,
+				}).then(res => {
+					if (res.code == 200) {
+						let arr = res.data
+						let arrList = []
+						arr.forEach(item => {
+							const arr1 = item.T_site.split(',')
+							const list = {
+								latitude: arr1[1],
+								longitude: arr1[0],
+							}
+							arrList.push(list)
+						})
+
+						let polyline = [{
+							width: 10,
+							points: arrList,
+							color: '#3591FC',
+							arrowLine: true,
+							arrowIconPath: '/static/task/arrows.png',
+						}]
+						this.polylineList = polyline
+						const markers0 = {
+							latitude: arrList[0].latitude,
+							longitude: arrList[0].longitude,
+							id: 0,
+							iconPath: '/static/task/startpoint.png',
+							width: 40,
+							height: 43
+						}
+						const markers1 = {
+							latitude: arrList[length].latitude,
+							longitude: arrList[length].longitude,
+							id: 1,
+							iconPath: '/static/task/endpoint.png',
+							width: 40,
+							height: 43
+						}
+						this.markersList[0] = markers0
+						this.markersList[1] = markers1
+						this.latitude = arrList[length].latitude
+						this.longitude = arrList[length].longitude
+						// console.log(this.polylineList, this.markersList, 266)
+						this.$forceUpdate()
 					}
 				})
 			},
@@ -115,6 +178,15 @@
 </script>
 
 <style lang="scss" scoped>
+	.loading-icon {
+		color: #333;
+		font-size: 28rpx;
+		padding: 10px;
+		background-color: rgba(255, 255, 255, 0.8);
+		border-radius: 5px;
+		text-align: center;
+	}
+
 	::v-deep .u-navbar__content {
 		z-index: 9999999;
 	}

+ 88 - 2
pages/order/orderDetails.vue

@@ -3,7 +3,13 @@
 	<view>
 		<u-navbar title="" autoBack placeholder></u-navbar>
 		<view class="card_order_detail">
-			<view class="orderNumber"><span>运单号:</span>{{orderList.waybillNo}}</view>
+			<view class="orderNumber">
+				<view class="card_order_title">
+					<span>运单号:</span>{{orderList.waybillNo}}
+				</view>
+				<span class="card_state"
+					:style="{color:getState(orderList.status)}">{{orderStatus(orderList.status)}}</span>
+			</view>
 			<view class="title_delivery">寄件人:</view>
 			<x-orderCard :list="senderList"></x-orderCard>
 			<view class="title_delivery">收件人:</view>
@@ -72,10 +78,13 @@
 				}, {
 					title: '冷链交接单图片',
 					url: '',
-				}, ],
+				}],
+				userInfo: {},
 			}
 		},
 		onLoad(value) {
+			var userInfo = this.$cache.getCache('userInfo')
+			this.userInfo = userInfo
 			this.type = value.type
 		},
 		onShow() {
@@ -106,6 +115,74 @@
 				uni.navigateTo({
 					url: '/pages/order/humiture'
 				});
+			},
+			// 订单状态
+			orderStatus(value) {
+				if (this.userInfo.userType == 'sys') {
+					if (this.userInfo.type == 2) {
+						// 仓管
+						if (value == 3) {
+							return '未入库'
+						} else if (value == 5) {
+							return '已入库'
+						} else {
+							return '已出库'
+						}
+					} else if (this.userInfo.type == 3) {
+						// 司机
+						if (value == 2) {
+							return '未装车'
+						} else if (value == 4) {
+							return '已装车'
+						} else if (value == 6) {
+							return '已下车'
+						} else {
+							return '已签收'
+						}
+					}
+				} else {
+					if (value == 1 || value == 2 || value == 3) {
+						return '未发货'
+					} else if (value == 4 || value == 5 || value == 6 || value == 7) {
+						return '已发货'
+					} else {
+						return '已签收'
+					}
+				}
+			},
+			// 订单文字颜色
+			getState(value) {
+				if (this.userInfo.userType == 'sys') {
+					if (this.userInfo.type == 2) {
+						// 仓管
+						if (value == 3) {
+							return '#ff9900'
+						} else if (value == 5) {
+							return '#19be6b'
+						} else {
+							return '#606266'
+						}
+					} else if (this.userInfo.type == 3) {
+						// 司机
+						if (value == 2) {
+							return '#ff9900'
+						} else if (value == 4) {
+							return '#19be6b'
+						} else if (value == 6) {
+							return '#19be6b'
+						} else {
+							return '#606266'
+						}
+					}
+				} else {
+					if (value == 1 || value == 2 || value == 3) {
+						return '#ff9900'
+					} else if (value == 4 || value == 5 || value == 6 || value == 7) {
+						return '#19be6b'
+					} else {
+						return '#606266'
+					}
+				}
 			}
 		}
 	}
@@ -117,10 +194,15 @@
 	}
 
 	.orderNumber {
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
 		background-color: #fff;
 		border-radius: 20rpx;
 		padding: 15rpx;
+	}
 
+	.card_order_title {
 		span {
 			font-size: 28rpx;
 			color: #909399;
@@ -128,6 +210,10 @@
 		}
 	}
 
+	.card_state {
+		color: #606266;
+		font-size: 30rpx;
+	}
 	.title_delivery {
 		font-size: 30rpx;
 		font-weight: 600;

BIN
static/task/arrows.png


BIN
static/task/endpoint.png


BIN
static/task/startpoint.png


BIN
unpackage/cache/apk/__UNI__92DFF97_cm.apk


+ 1 - 1
unpackage/cache/apk/apkurl

@@ -1 +1 @@
-https://app.liuyingyong.cn/build/download/1210b180-06f1-11ef-ad83-1d7b652050d8
+https://app.liuyingyong.cn/build/download/62fac940-0c10-11ef-8bfb-a3e7ae69e40b

File diff suppressed because it is too large
+ 0 - 0
unpackage/cache/apk/cmManifestCache.json


+ 1 - 1
unpackage/cache/wgt/__UNI__92DFF97/app-config-service.js

@@ -1,7 +1,7 @@
 
 var isReady=false;var onReadyCallbacks=[];
 var isServiceReady=false;var onServiceReadyCallbacks=[];
-var __uniConfig = {"pages":["pages/indexRouter","pages/login","pages/codeLogin","pages/register","pages/home/particulars","pages/order/index","pages/order/delivery","pages/order/orderDetails","pages/order/quantum","pages/order/addWaybill","pages/mine/password","pages/order/logisticsDetails","pages/order/humiture"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"uni-app","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"宝智达冷链物流","compilerVersion":"4.08","entryPagePath":"pages/indexRouter","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
+var __uniConfig = {"pages":["pages/indexRouter","pages/login","pages/codeLogin","pages/register","pages/home/particulars","pages/order/index","pages/order/delivery","pages/order/orderDetails","pages/order/quantum","pages/order/addWaybill","pages/mine/password","pages/order/logisticsDetails","pages/order/humiture"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"uni-app","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"冷链物流","compilerVersion":"4.08","entryPagePath":"pages/indexRouter","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
 var __uniRoutes = [{"path":"/pages/indexRouter","meta":{"isQuit":true},"window":{"navigationStyle":"custom"}},{"path":"/pages/login","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/codeLogin","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/register","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/home/particulars","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/index","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/delivery","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/orderDetails","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/quantum","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/addWaybill","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/mine/password","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/logisticsDetails","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/humiture","meta":{},"window":{"navigationStyle":"custom"}}];
 __uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
 __uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});

File diff suppressed because it is too large
+ 0 - 0
unpackage/cache/wgt/__UNI__92DFF97/app-service.js


File diff suppressed because it is too large
+ 0 - 0
unpackage/cache/wgt/__UNI__92DFF97/app-view.js


File diff suppressed because it is too large
+ 0 - 0
unpackage/cache/wgt/__UNI__92DFF97/manifest.json


BIN
unpackage/cache/wgt/__UNI__92DFF97/static/task/arrows.png


BIN
unpackage/cache/wgt/__UNI__92DFF97/static/task/endpoint.png


BIN
unpackage/cache/wgt/__UNI__92DFF97/static/task/startpoint.png


+ 1 - 1
unpackage/dist/build/app-plus/app-config-service.js

@@ -1,7 +1,7 @@
 
 var isReady=false;var onReadyCallbacks=[];
 var isServiceReady=false;var onServiceReadyCallbacks=[];
-var __uniConfig = {"pages":["pages/indexRouter","pages/login","pages/codeLogin","pages/register","pages/home/particulars","pages/order/index","pages/order/delivery","pages/order/orderDetails","pages/order/quantum","pages/order/addWaybill","pages/mine/password","pages/order/logisticsDetails","pages/order/humiture"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"uni-app","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"宝智达冷链物流","compilerVersion":"4.08","entryPagePath":"pages/indexRouter","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
+var __uniConfig = {"pages":["pages/indexRouter","pages/login","pages/codeLogin","pages/register","pages/home/particulars","pages/order/index","pages/order/delivery","pages/order/orderDetails","pages/order/quantum","pages/order/addWaybill","pages/mine/password","pages/order/logisticsDetails","pages/order/humiture"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"uni-app","navigationBarBackgroundColor":"#F8F8F8","backgroundColor":"#F8F8F8"},"darkmode":false,"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"冷链物流","compilerVersion":"4.08","entryPagePath":"pages/indexRouter","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
 var __uniRoutes = [{"path":"/pages/indexRouter","meta":{"isQuit":true},"window":{"navigationStyle":"custom"}},{"path":"/pages/login","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/codeLogin","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/register","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/home/particulars","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/index","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/delivery","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/orderDetails","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/quantum","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/addWaybill","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/mine/password","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/logisticsDetails","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/order/humiture","meta":{},"window":{"navigationStyle":"custom"}}];
 __uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
 __uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});

File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/build/app-plus/app-service.js


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/build/app-plus/app-view.js


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/build/app-plus/manifest.json


BIN
unpackage/dist/build/app-plus/static/task/arrows.png


BIN
unpackage/dist/build/app-plus/static/task/endpoint.png


BIN
unpackage/dist/build/app-plus/static/task/startpoint.png


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/app-plus/app-service.js


File diff suppressed because it is too large
+ 6 - 6
unpackage/dist/dev/app-plus/app-view.js


File diff suppressed because it is too large
+ 0 - 0
unpackage/dist/dev/app-plus/manifest.json


BIN
unpackage/release/apk/宝智达冷链物流.apk → unpackage/release/apk/__UNI__92DFF97__20240507092319.apk


Some files were not shown because too many files changed in this diff