Pārlūkot izejas kodu

气站空瓶充装、调拨多选取消、气站钢瓶状态页面调整

qianduan 11 mēneši atpakaļ
vecāks
revīzija
be6e743fdb
75 mainītis faili ar 1873 papildinājumiem un 586 dzēšanām
  1. 56 35
      components/orderManagement.vue
  2. 13 6
      components/x-form.vue
  3. 6 5
      components/x-navbottom.vue
  4. 2 2
      manifest.json
  5. 3 1
      pages/home/index.vue
  6. 68 3
      pages/home/selectStore.vue
  7. 2 2
      pages/index/codeTracing.vue
  8. 33 7
      pages/indexRouter.vue
  9. 29 12
      pages/information/cylinder.vue
  10. 50 11
      pages/information/index.vue
  11. 124 28
      pages/information/transfer.vue
  12. 1 1
      pages/information/transferRecord.vue
  13. 4 1
      pages/mine/erweima.vue
  14. 17 0
      pages/mine/personal.vue
  15. 23 4
      pages/order/cannibalize.vue
  16. 286 66
      pages/order/delivery.vue
  17. 44 28
      pages/order/index.vue
  18. 309 285
      pages/order/new_file.js
  19. 108 10
      pages/order/orderDetails.vue
  20. 6 0
      pages/order/quickMark.vue
  21. 31 31
      pages/order/securityCheck.vue
  22. 72 3
      static/fonts/demo_index.html
  23. 15 3
      static/fonts/iconfont.css
  24. 0 0
      static/fonts/iconfont.js
  25. 21 0
      static/fonts/iconfont.json
  26. BIN
      static/fonts/iconfont.ttf
  27. BIN
      static/fonts/iconfont.woff
  28. BIN
      static/fonts/iconfont.woff2
  29. BIN
      unpackage/cache/apk/__UNI__10C0A5F_cm.apk
  30. 1 1
      unpackage/cache/apk/apkurl
  31. 0 0
      unpackage/cache/apk/cmManifestCache.json
  32. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/__uniappchooselocation.js
  33. 1 2
      unpackage/cache/wgt/__UNI__10C0A5F/app-config-service.js
  34. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/app-service.js
  35. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/app-view.js
  36. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/manifest.json
  37. 118 3
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/demo_index.html
  38. 23 3
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.css
  39. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.js
  40. 35 0
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.json
  41. BIN
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.ttf
  42. BIN
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.woff
  43. BIN
      unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.woff2
  44. 33 0
      unpackage/cache/wgt/__UNI__10C0A5F/static/js/uqrcode.js
  45. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/view.css
  46. 0 0
      unpackage/cache/wgt/__UNI__10C0A5F/view.umd.min.js
  47. 0 0
      unpackage/dist/build/app-plus/__uniappchooselocation.js
  48. 1 2
      unpackage/dist/build/app-plus/app-config-service.js
  49. 0 0
      unpackage/dist/build/app-plus/app-service.js
  50. 0 0
      unpackage/dist/build/app-plus/app-view.js
  51. 0 0
      unpackage/dist/build/app-plus/manifest.json
  52. 118 3
      unpackage/dist/build/app-plus/static/fonts/demo_index.html
  53. 23 3
      unpackage/dist/build/app-plus/static/fonts/iconfont.css
  54. 0 0
      unpackage/dist/build/app-plus/static/fonts/iconfont.js
  55. 35 0
      unpackage/dist/build/app-plus/static/fonts/iconfont.json
  56. BIN
      unpackage/dist/build/app-plus/static/fonts/iconfont.ttf
  57. BIN
      unpackage/dist/build/app-plus/static/fonts/iconfont.woff
  58. BIN
      unpackage/dist/build/app-plus/static/fonts/iconfont.woff2
  59. 33 0
      unpackage/dist/build/app-plus/static/js/uqrcode.js
  60. 0 0
      unpackage/dist/build/app-plus/view.css
  61. 0 0
      unpackage/dist/build/app-plus/view.umd.min.js
  62. 0 0
      unpackage/dist/dev/app-plus/__uniappchooselocation.js
  63. 0 1
      unpackage/dist/dev/app-plus/app-config-service.js
  64. 0 0
      unpackage/dist/dev/app-plus/app-service.js
  65. 21 18
      unpackage/dist/dev/app-plus/app-view.js
  66. 0 0
      unpackage/dist/dev/app-plus/manifest.json
  67. 72 3
      unpackage/dist/dev/app-plus/static/fonts/demo_index.html
  68. 15 3
      unpackage/dist/dev/app-plus/static/fonts/iconfont.css
  69. 0 0
      unpackage/dist/dev/app-plus/static/fonts/iconfont.js
  70. 21 0
      unpackage/dist/dev/app-plus/static/fonts/iconfont.json
  71. BIN
      unpackage/dist/dev/app-plus/static/fonts/iconfont.ttf
  72. BIN
      unpackage/dist/dev/app-plus/static/fonts/iconfont.woff
  73. BIN
      unpackage/dist/dev/app-plus/static/fonts/iconfont.woff2
  74. BIN
      unpackage/release/apk/__UNI__10C0A5F__20240723104159.apk
  75. BIN
      unpackage/release/apk/__UNI__10C0A5F__20240723110556.apk

+ 56 - 35
components/orderManagement.vue

@@ -1,43 +1,46 @@
 <template>
 	<view class="card_order_management">
-		<view class="card_order" v-for="(item,index) in datalist" :key="index" v-if="datalist.length > 0">
-			<view @click="goDetails(item)">
-				<view class="space_between">
-					<view class="item_headline" v-if="item.goods && item.spec">{{item.goods.name}}{{item.spec.name}}
-					</view>
-					<view v-if="item.state == 5">
-						<view class="item_tag" v-if="item.customer.isSyncProv">
-							<u-tag text="已完善" plain size="mini" type="success"></u-tag>
+		<view class="card_order frame" v-for="(item,index) in datalist" :key="index" v-if="datalist.length > 0">
+			<view style="padding: 30rpx 20rpx">
+				<view @click="goDetails(item)">
+					<view class="space_between">
+						<view class="item_headline" v-if="item.goods && item.spec">{{item.goods.name}}{{item.spec.name}}
 						</view>
-						<view class="item_tag" v-else>
-							<u-tag text="补全客户信息" plain size="mini" @click="goCompletionTasks(item)"></u-tag>
+						<view v-if="item.state == 5 || item.state == 6">
+							<view class="item_tag" v-if="item.customer.isSyncProv">
+								<u-tag text="已完善" plain size="mini" type="success"></u-tag>
+							</view>
+							<view class="item_tag" v-else>
+								<u-tag text="补全客户信息" plain size="mini" @click="goCompletionTasks(item)"></u-tag>
+							</view>
+						</view>
+						<view v-if="item.state == 3 || item.state == 4">
+							<view class="details_title" style="color: #5ac725;" v-if="item.state == 3">已送达</view>
+							<view class="details_title" style="color: #f56c6c;" v-else-if="item.state == 4">已取消</view>
+						</view>
+						<view v-if="item.state == 1 || item.state == 2">
+							<view class="details_title" style="color: #3c9cff;">待配送</view>
 						</view>
 					</view>
-					<view v-if="item.state == 3 || item.state == 4">
-						<view class="details_title" style="color: #5ac725;" v-if="item.state == 3">已送达</view>
-						<view class="details_title" style="color: #f56c6c;" v-else-if="item.state == 4">已取消</view>
-					</view>
-					<view v-if="item.state == 1 || item.state == 2">
-						<view class="details_title" style="color: #3c9cff;">待配送</view>
+					<view class="item_num">×{{item.quantity}}</view>
+					<view class="item_address">配送地址:{{item.address}}</view>
+					<view class="item_address" v-if="item.state == 5 || item.state == 6">联系电话:{{item.phone}}
+						<u-icon color="#70B603" size="26" name="phone-fill"
+							@click.native.stop="phone(item.phone)"></u-icon>
 					</view>
+					<view class="item_address">下单时间:{{item.orderTime}}</view>
+					<view class="item_address" v-if="item.state == 3">送达时间:{{item.arriveTime}}</view>
 				</view>
-				<view class="item_num">×{{item.quantity}}</view>
-				<view class="item_address">配送地址:{{item.address}}</view>
-				<view class="item_address" v-if="item.state == 5">联系电话:{{item.phone}}
-					<u-icon color="#70B603" size="26" name="phone-fill" @click.native.stop="phone(item.phone)"></u-icon>
-				</view>
-				<view class="item_address">下单时间:{{item.orderTime}}</view>
-				<view class="item_address" v-if="item.state == 3">送达时间:{{item.arriveTime}}</view>
-			</view>
-			<view v-if="item.state == 2">
-				<u-button type="primary" @click="toDeliver(item)">去配送</u-button>
-			</view>
-			<view class="card_delivery" v-if="item.state == 5">
-				<view style="margin-right: 10rpx;flex: 1;">
-					<u-button type="warning" @click="goSecurityCheck(item)">入户安全检查</u-button>
+				<view v-if="item.state == 2">
+					<u-button type="success" @click="toDeliver(item)">去配送</u-button>
 				</view>
-				<view style="margin-left: 10rpx;flex: 1;">
-					<u-button type="primary" @click="confirmedDelivery(item)">确认送达</u-button>
+				<view class="card_delivery" v-if="item.state == 5 || item.state == 6">
+					<view style="flex: 1;" v-if="item.state == 5">
+						<u-button type="warning" @click="goSecurityCheck(item)">入户安全检查</u-button>
+					</view>
+					<view style="flex: 1;" v-if="item.state == 6">
+						<u-button type="primary" @click="confirmedDelivery(item)">确认送达</u-button>
+					</view>
 				</view>
 			</view>
 		</view>
@@ -112,11 +115,29 @@
 	}
 
 	.card_order {
-		width: calc(100% - 40rpx);
+		width: 100%;
 		margin-top: 20rpx;
-		border: 1rpx solid rgba(215, 215, 215, 1);
+		// border: 1rpx solid rgba(215, 215, 215, 1);
 		border-radius: 8rpx;
-		padding: 30rpx 20rpx;
+	}
+
+	.frame {
+		position: relative;
+	}
+
+	.frame::after {
+		content: '';
+		position: absolute;
+		display: block;
+		bottom: 0;
+		pointer-events: none;
+		// z-index: -1;
+		width: 200%;
+		height: 200%;
+		border: 2rpx solid rgba(215, 215, 215, 1);
+		border-radius: 16rpx;
+		transform: scale(0.5);
+		transform-origin: left bottom;
 	}
 
 	.item_headline {

+ 13 - 6
components/x-form.vue

@@ -29,8 +29,8 @@
 				<u-form-item :required="item.required ? true : false" :label="item.label" :prop="item.field"
 					v-else-if="item.type == 'upload' && !item.visible">
 					<view class="card_form_item">
-						<u-upload :fileList="fileList1" name="1" multiple :maxCount="10" @afterRead="afterRead"
-							@delete="deletePic"></u-upload>
+						<u-upload :fileList="fileList1" name="1" multiple :maxCount="10" @afterRead="afterRead($event, item.field)"
+							@delete="deletePic($event, item.field)"></u-upload>
 					</view>
 				</u-form-item>
 				<u-form-item :required="item.required ? true : false" :label="item.label" :prop="item.field"
@@ -122,7 +122,7 @@
 				let arr = value.value
 				let arr1 = []
 				let arr2 = []
-				arr.forEach(item=>{
+				arr.forEach(item => {
 					arr1.push(item.value)
 					arr2.push(item.label)
 				})
@@ -143,7 +143,7 @@
 				})
 			},
 			// 新增图片
-			async afterRead(event) {
+			async afterRead(event,type) {
 				// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
 				let lists = [].concat(event.file)
 				let fileListLen = this[`fileList${event.name}`].length
@@ -169,11 +169,18 @@
 					arr.push(item1.url)
 				})
 				this.model.addressImg = arr.join()
+				this.model[type] = this.model.addressImg
 				this.$refs.uForm.validateField('addressImg')
 			},
 			// 删除图片
-			deletePic(event) {
+			deletePic(event,type) {
 				this[`fileList${event.name}`].splice(event.index, 1)
+				var arr = []
+				this.fileList1.forEach(item1 => {
+					arr.push(item1.url)
+				})
+				this.model.addressImg = arr.join()
+				this.model[type] = this.model.addressImg
 			},
 			uploadFilePromise(url) {
 				return new Promise((resolve, reject) => {
@@ -225,7 +232,7 @@
 				let index, index1 = 0
 				let arr, arr1 = []
 				//市区对应每列的第几个
-				this.areaData.forEach((item, i) => { 
+				this.areaData.forEach((item, i) => {
 					if (item.value == temp[0]) {
 						index = i
 						item.children.forEach((val, ind) => {

+ 6 - 5
components/x-navbottom.vue

@@ -30,10 +30,10 @@
 			return {
 				dataList: [],
 				list: [{
-						icon: 'icon-shouye',
+						icon: 'icon-shouye1',
 						title: '首页',
 					}, {
-						icon: 'icon-dingdan',
+						icon: 'icon-dingdan2',
 						title: '订单',
 					},
 					{
@@ -41,18 +41,18 @@
 						title: '我的钢瓶',
 					},
 					{
-						icon: 'icon-wode',
+						icon: 'icon-icon-test',
 						title: '我的',
 					}
 				],
 				gasList: [{
-					icon: 'icon-shouye',
+					icon: 'icon-shouye1',
 					title: '首页',
 				}, {
 					icon: 'icon-yehuaqiping',
 					title: '我的钢瓶',
 				}, {
-					icon: 'icon-wode',
+					icon: 'icon-icon-test',
 					title: '我的',
 				}],
 			}
@@ -120,6 +120,7 @@
 	}
 
 	.icon_image {
+		color: #606266;
 		font-size: 44rpx;
 	}
 </style>

+ 2 - 2
manifest.json

@@ -2,8 +2,8 @@
     "name" : "气瓶安全追溯",
     "appid" : "__UNI__10C0A5F",
     "description" : "",
-    "versionName" : "1.0.2",
-    "versionCode" : 102,
+    "versionName" : "1.0.4",
+    "versionCode" : 104,
     "transformPx" : false,
     /* 5+App特有相关 */
     "app-plus" : {

+ 3 - 1
pages/home/index.vue

@@ -68,7 +68,7 @@
 		mounted() {},
 		methods: {
 			scanCodes(value) {
-				if (['25', '27', '11', '12', '17', '19'].includes(value.id)) {
+				if (['11', '12', '17', '19'].includes(value.id)) {
 					uni.navigateTo({
 						url: '/pages/home/selectStore?id=' + value.id + '&title=' + value.title
 					});
@@ -82,6 +82,8 @@
 					uni.navigateTo({
 						url: '/pages/order/cylinderTransfer'
 					});
+				} else if (value.id == '14') {
+					this.$emit('tankFilling')
 				} else {
 					uni.navigateTo({
 						url: '/pages/order/delivery?id=' + value.id + '&title=' + value.title

+ 68 - 3
pages/home/selectStore.vue

@@ -1,12 +1,19 @@
 <template>
 	<!-- 选择门店 -->
 	<view>
-		<u-navbar border title="选择门店" autoBack placeholder></u-navbar>
-		<view v-if="treeData.length > 0">
+		<u-navbar border title="" autoBack placeholder></u-navbar>
+		<!-- <view v-if="treeData.length > 0">
 			<tree-item v-for="item in treeData" :key="item.id" :item="item" @confirm="confirm"></tree-item>
 		</view>
 		<view style="margin-top: 30%;" v-else>
 			<u-empty mode="list" text="门店列表为空"></u-empty>
+		</view> -->
+		<view class="card_head_mark">
+			<view class="card_sys" @click="sweep()">
+				<u-icon name="scan" size="60" color="#18b566"></u-icon>
+				<view class="sys_title">扫一扫</view>
+			</view>
+			<view class="title_sad">扫描门店/气站二维码</view>
 		</view>
 	</view>
 </template>
@@ -27,9 +34,36 @@
 		onLoad(receive) {
 			this.navTitle = receive.title
 			this.selectiveType = receive.id
-			this.getList()
+			// this.getList()
 		},
 		methods: {
+			// 扫一扫
+			sweep() {
+				// 允许从相机和相册扫码
+				uni.scanCode({
+					scanType: ['qrCode'],
+					autoZoom: false,
+					success: (res) => {
+						// console.log(res, '--------');
+						if (res.result) {
+							let url = res.result;
+							const arrf = url.split(',')
+							this.$cache.setCache('storeInformation', arrf)
+							uni.navigateTo({
+								url: '/pages/order/delivery?id=' + this.selectiveType + '&title=' +
+									this.navTitle +
+									'&cmpCode=' + arrf[0]
+							});
+						} else {
+							console.log('请重新扫描');
+							return false;
+						}
+					},
+					fail: (res) => {
+						console.log('未识别到二维码1');
+					}
+				})
+			},
 			getList() {
 				if (this.selectiveType == '25' || this.selectiveType == '27') {
 					this.$api.get('/api/store/all2').then(res => {
@@ -61,4 +95,35 @@
 </script>
 
 <style lang="scss">
+	.card_head_mark {
+		display: flex;
+		justify-content: center;
+		flex-direction: column;
+		align-items: center;
+		padding-bottom: 30rpx;
+		border-bottom: 2rpx solid #e4e7ed;
+	}
+
+	.card_sys {
+		cursor: pointer;
+		margin-top: 30rpx;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		flex-direction: column;
+		width: 180rpx;
+		height: 180rpx;
+		border-radius: 20rpx;
+		background-color: #f4f4f5;
+	}
+
+	.sys_title {
+		font-size: 32rpx;
+		color: #18b566;
+	}
+
+	.title_sad {
+		font-size: 30rpx;
+		margin-top: 20rpx;
+	}
 </style>

+ 2 - 2
pages/index/codeTracing.vue

@@ -2,7 +2,7 @@
 	<view class="card_code_tracing">
 		<u-navbar title="二维码溯源" autoBack placeholder></u-navbar>
 		<!-- <view class="details_title">二维码溯源</view> -->
-		<view class="details_title1">高频编码 <span class="line_title">*</span></view>
+		<view class="details_title1">钢瓶编号 <span class="line_title">*</span></view>
 		<view class="card_search">
 			<view class="card_input">
 				<u-search :showAction="true" v-model="frequencyCoding" actionText="搜索" :animation="true"
@@ -34,7 +34,7 @@
 			<u-empty mode="search" text="当前气瓶没有溯源信息"></u-empty>
 		</view>
 		<view style="width: 100%; height: 200rpx;"></view>
-		<view class="card_Booking center_in" @click="goBooking">订气</view>
+		<!-- <view class="card_Booking center_in" @click="goBooking">订气</view> -->
 	</view>
 </template>
 

+ 33 - 7
pages/indexRouter.vue

@@ -1,10 +1,11 @@
 <template>
 	<!-- 底部tab导航 -->
 	<view>
-		<Home :dataList="dataList" :genreTitle="genreTitle" ref="home" v-if="nowchos === 0"></Home>
+		<Home :dataList="dataList" :genreTitle="genreTitle" ref="home" @tankFilling="tankFilling" v-if="nowchos === 0">
+		</Home>
 		<!-- isorders == 0 同时userType == 3 送气员 -->
-		<Order v-else-if="nowchos === 1 && isorders == 0 && userType == 3"></Order>
-		<Information ref="cylinder" v-else-if="steelCylinder(isorders,userType)"></Information>
+		<Order ref="waybill" v-else-if="nowchos === 1 && isorders == 0 && userType == 3"></Order>
+		<Information ref="cylinder" :tabNumber="tabNumber" v-else-if="steelCylinder(isorders,userType)"></Information>
 		<Mine :token="token" :userInfo="userInfo" v-else-if="getType(isorders,userType)"></Mine>
 		<view class="bottomboxs">
 			<x-navbottom :nowchos='nowchos' @botomchos='botomchos'></x-navbottom>
@@ -83,7 +84,7 @@
 					id: '12',
 					title: '空瓶到达气站',
 					icon: 'icon-yidaoda',
-					color: '#8ac247',
+					color: '#83e908',
 				}, {
 					id: '17',
 					title: '气站重瓶出库',
@@ -94,6 +95,16 @@
 					title: '重瓶交付门店',
 					icon: 'icon-yunsonghejiaofu',
 					color: '#f4b237',
+				}, {
+					id: '16',
+					title: '重瓶退回气站',
+					icon: 'icon-tuihuo',
+					color: '#f3553e',
+				}, {
+					id: '033',
+					title: '重瓶门店出库',
+					icon: 'icon-owNote',
+					color: '#8ac247',
 				}],
 				stationList: [{
 					id: '13',
@@ -111,6 +122,11 @@
 					icon: 'icon-owNote',
 					color: '#8ac247',
 				}, {
+					id: '016',
+					title: '重瓶到达气站',
+					icon: 'icon-yidaoda',
+					color: '#c7be16',
+				}, {
 					id: 'inspect',
 					title: '充气前后检查',
 					icon: 'icon-jianchaxiang',
@@ -118,15 +134,20 @@
 				}, ],
 				dataList: [],
 				genreTitle: '',
+				tabNumber: 0,
 			}
 		},
 		onReachBottom() {
-			this.$refs.cylinder.bottomingEvent()
+			if (this.$refs.cylinder) {
+				this.$refs.cylinder.bottomingEvent()
+			}
+			if (this.$refs.waybill) {
+				this.$refs.waybill.bottomingEvent()
+			}
 		},
 		onLoad(value) {
-			console.log(value, 333)
 			if (value.page) {
-				this.nowchos = value.page
+				this.nowchos = Number(value.page)
 			}
 			var userInfo = this.$cache.getCache('userInfo')
 			if (userInfo.provUser) {
@@ -169,6 +190,11 @@
 				uni.setStorageSync('nowchos', e);
 				this.nowchos = e
 			},
+			// 充装
+			tankFilling() {
+				this.nowchos = 1
+				this.tabNumber = 1
+			},
 			getType(isorders, userType) {
 				if (isorders == 0) {
 					if (userType == 3) {

+ 29 - 12
pages/information/cylinder.vue

@@ -3,7 +3,7 @@
 	<view>
 		<u-navbar title="添加钢瓶" autoBack placeholder @leftClick="leftClick"></u-navbar>
 		<view class="card_cylinder">
-			<view class="title_index">钢瓶编号</view>
+			<view class="title_index">钢瓶编号 <span class="line_title">*</span></view>
 			<view style="display: flex;align-items: center;">
 				<u-input border="surround" placeholder="点击输入" v-model="frequencyCoding"></u-input>
 				<view class="btn_add_card">
@@ -11,14 +11,17 @@
 				</view>
 			</view>
 			<view class="scan_card_code">
-				<view style="display: flex;align-items: center;" @click="addLine">
-					<u-icon name="scan" size="26"></u-icon>
-					<view class="title_subhead">增加一条</view>
-				</view>
-				<view style="display: flex;align-items: center;margin-left: 30rpx;" @click="continuousAddition">
-					<u-icon name="scan" size="26"></u-icon>
-					<view class="title_subhead">连续扫码增加</view>
+				<view style="display: flex;align-items: center;">
+					<view style="display: flex;align-items: center;" @click="addLine">
+						<u-icon name="scan" size="26"></u-icon>
+						<view class="title_subhead">增加一条</view>
+					</view>
+					<view style="display: flex;align-items: center;margin-left: 30rpx;" @click="continuousAddition">
+						<u-icon name="scan" size="26"></u-icon>
+						<view class="title_subhead">连续扫码增加</view>
+					</view>
 				</view>
+				<view class="card_bottle">已扫<span>{{codeList.length}}</span>瓶</view>
 			</view>
 			<view v-if="codeList.length > 0">
 				<view class="space_between card_code_trac" v-for="(item,index) in codeList" :key="index">
@@ -37,7 +40,7 @@
 		<view class="card_btn">
 			<u-button style="margin-bottom: 20rpx;" type="primary" @click="submit">提交</u-button>
 		</view>
-		<u-popup :show="show" :round="10" mode="center" @close="close">
+		<u-popup :show="show" :round="10" :closeOnClickOverlay="false" mode="center" @close="close">
 			<view class="card_coding_scan">
 				<view class="title_coding">钢瓶编号</view>
 				<view class="coding_title1">{{scanCoding}}</view>
@@ -68,7 +71,7 @@
 		},
 		methods: {
 			// 返回
-			leftClick(){
+			leftClick() {
 				uni.$emit('refresh');
 			},
 			// 添加钢瓶
@@ -186,6 +189,10 @@
 		font-size: 34rpx;
 	}
 
+	.line_title {
+		color: red;
+	}
+
 	.btn_add_card {
 		margin-left: 20rpx;
 	}
@@ -203,11 +210,21 @@
 	.scan_card_code {
 		display: flex;
 		align-items: center;
-		margin-top: 20rpx;
-		padding-bottom: 20rpx;
+		justify-content: space-between;
+		margin-top: 30rpx;
+		padding-bottom: 30rpx;
 		border-bottom: 1rpx solid #d7d7d7;
 	}
 
+	.card_bottle {
+		font-size: 30rpx;
+
+		span {
+			margin: 0rpx 5rpx;
+			color: red;
+		}
+	}
+
 	.card_code_trac {
 		margin-top: 30rpx;
 		padding-bottom: 30rpx;

+ 50 - 11
pages/information/index.vue

@@ -4,11 +4,12 @@
 		<view class="head_sticky">
 			<view class="head_mine_title">我的钢瓶</view>
 			<view style="width: 100%;">
-				<u-tabs :list="bottleList" lineWidth="40" :scrollable="false" @click="bottleClick"></u-tabs>
+				<u-tabs :current="tabNumber" :list="bottleList" lineWidth="40" :scrollable="false"
+					@click="bottleClick"></u-tabs>
 			</view>
 		</view>
 		<!-- 在这里放置可滚动的内容 -->
-		<view style="width: 100%;" v-if="list.length > 0">
+		<view style="width: calc(100% - 40rpx);padding: 0rpx 20rpx;" v-if="list.length > 0">
 			<view class="card_dinay" v-for="(item,index) in list" :key="index">
 				<view style="display: flex;align-items: center;">
 					<view class="item_current">{{index + 1}}</view>
@@ -23,10 +24,15 @@
 		</view>
 		<view class="card_button_bottom">
 			<view class="bottom_btn_flex">
-				<view class="but_allot center_in" @click="addCylinder">添加</view>
+				<u-button class="but_allot" type="primary" text="添加" @click="addCylinder"></u-button>
 			</view>
-			<view class="bottom_btn_flex">
-				<view class="but_allot center_in" @click="transferCylinders">调拨</view>
+			<view style="flex: 1;" v-if="disqualification">
+				<view class="bottom_btn_flex" v-if="allotFlag">
+					<u-button class="but_allot" type="primary" text="调拨" @click="transferCylinders"></u-button>
+				</view>
+				<view class="bottom_btn_flex" v-else>
+					<u-button class="but_allot" type="success" text="充装" @click="transferCylinders"></u-button>
+				</view>
 			</view>
 		</view>
 	</view>
@@ -34,6 +40,12 @@
 
 <script>
 	export default {
+		props: {
+			tabNumber: {
+				type: Number,
+				default: 0
+			},
+		},
 		data() {
 			return {
 				list: [],
@@ -51,9 +63,21 @@
 					Total: 0,
 				},
 				loadingMore: true,
+				allotFlag: true,
+				disqualification: true,
 			}
 		},
 		mounted() {
+			var userInfo = this.$cache.getCache('userInfo')
+			if (userInfo.provUser && this.tabNumber == 1) {
+				if (userInfo.provUser.userType == 5) {
+					this.current = 2
+					this.allotFlag = false
+				}
+			} else {
+				this.allotFlag = true
+				this.disqualification = true
+			}
 			uni.$on('refresh', () => {
 				this.list = []
 				this.Pagination.PageIndex = 1
@@ -69,6 +93,22 @@
 				}
 			},
 			bottleClick(value) {
+				var userInfo = this.$cache.getCache('userInfo')
+				if (userInfo.provUser && value.index == 1) {
+					if (userInfo.provUser.userType == 5) {
+						this.allotFlag = false
+					}
+				} else {
+					this.allotFlag = true
+					this.disqualification = true
+				}
+				if (userInfo.provUser && value.index == 2) {
+					if (userInfo.provUser.userType == 5) {
+						this.disqualification = false
+					}
+				} else {
+					this.disqualification = true
+				}
 				this.current = value.index + 1
 				this.Pagination.PageIndex = 1
 				this.list = []
@@ -114,7 +154,7 @@
 			// 调拨钢瓶
 			transferCylinders() {
 				uni.navigateTo({
-					url: '/pages/information/transfer?status=' + this.current
+					url: '/pages/information/transfer?status=' + this.current + '&allotFlag=' + this.allotFlag
 				});
 			}
 		}
@@ -176,6 +216,7 @@
 		padding-bottom: env(safe-area-inset-bottom); //兼容 IOS>11.2
 		display: flex;
 		align-items: flex-start;
+		z-index: 2025;
 	}
 
 	.bottom_btn_flex {
@@ -184,14 +225,12 @@
 		display: flex;
 		align-items: center;
 		justify-content: center;
+		z-index: 2026;
 	}
 
 	.but_allot {
-		width: 80%;
-		background-color: #3C9CFE;
-		padding: 20rpx;
-		color: #fff;
-		border-radius: 10rpx;
+		width: 90%;
+		z-index: 2027;
 	}
 
 	.empty_information {

+ 124 - 28
pages/information/transfer.vue

@@ -3,8 +3,8 @@
 	<view>
 		<u-navbar title="钢瓶调拨" autoBack placeholder></u-navbar>
 		<view class="card_transfer">
-			<view style="display: flex;align-items: center;" @click="allotSweep">
-				<view class="tran_title">1.扫描调拨码</view>
+			<view style="display: flex;align-items: center;" @click="allotSweep" v-if="allotFlag">
+				<view class="tran_title">扫描调拨码</view>
 				<u-icon name="scan" size="30"></u-icon>
 			</view>
 			<view class="card_assigner_aaf" v-if="assignerFlag">
@@ -22,24 +22,25 @@
 				</view>
 			</view>
 			<view class="space_between cylinder_ccsfs">
-				<view class="tran_title">2.钢瓶编号</view>
+				<view class="tran_title">钢瓶编号</view>
 				<view style="display: flex;align-items: center;">
-					<view class="blue_title" @click="checkAll">全选</view>
+					<view class="blue_titleil" @click="checkAll">全选</view>
+					<view class="blue_titleilred" @click="Inverse">反选</view>
 					<view class="card_right_num">
 						<span class="blue_title">选择前</span>
 						<view class="num_card">
-							<u--input class="input_taaf" type="number" fontSize="12" inputAlign="center"
-								border="surround" @blur="howMany"></u--input>
+							<u--input class="input_taaf" v-model="codeValue" type="number" fontSize="12"
+								inputAlign="center" border="surround" @blur="howMany"></u--input>
 						</view>
 						<span class="blue_title">个</span>
 					</view>
 				</view>
 			</view>
 			<view style="width: 100%;" v-if="list.length > 0">
-				<u-checkbox-group v-model="checked">
+				<u-checkbox-group v-model="checked" @change="checkboxChange">
 					<view style="width: 100%;display: flex;flex-direction: column;">
 						<view class="card_dinay" v-for="(item,index) in list" :key="index">
-							<u-checkbox :name="item.inner_code"></u-checkbox>
+							<u-checkbox :name="item.inner_code" :checked="item.checked"></u-checkbox>
 							<view style="display: flex;align-items: center;margin-left: 20rpx;">
 								<view class="item_current">{{index + 1}}</view>
 								<view class="item_title1">{{item.inner_code}}</view>
@@ -105,6 +106,8 @@
 					Total: 0,
 				},
 				loadingMore: true,
+				codeValue: '',
+				allotFlag: true,
 			}
 		},
 		onReachBottom() {
@@ -114,6 +117,9 @@
 		},
 		onLoad(value) {
 			this.current = value.status
+			if (value.allotFlag == 'false') {
+				this.allotFlag = false
+			}
 		},
 		mounted() {
 			this.getList()
@@ -129,6 +135,9 @@
 				}).then(res => {
 					if (res.code == 200) {
 						const data = res.data.list
+						data.forEach(item => {
+							item.checked = false
+						})
 						if (this.loadingMore == true && data) {
 							this.list = this.list.concat(data);
 						}
@@ -143,32 +152,73 @@
 			},
 			// 调拨提交
 			submit() {
-				if (this.assignerData.length > 0) {
+				if (this.allotFlag) {
+					if (this.assignerData.length > 0) {
+						if (this.checked.length > 0) {
+							uni.showLoading({
+								mask: true,
+							});
+							this.$api.post('/api/gas-cylinder-allot', {
+								optType: this.assignerData[0],
+								acceptUserId: Number(this.assignerData[1]),
+								acceptCompanyId: Number(this.assignerData[3]),
+								innerCodeList: this.checked,
+								gasCylinderStatus: Number(this.current),
+							}).then(res => {
+								uni.hideLoading();
+								if (res.code == 200) {
+									this.loadingMore = true
+									this.Pagination.PageIndex = 1
+									this.list = []
+									this.getList()
+									this.checked = []
+									uni.$u.toast(res.msg)
+									this.$forceUpdate()
+									setTimeout(() => {
+										uni.redirectTo({
+											url: '/pages/information/transferRecord'
+										});
+									}, 1500)
+								} else {
+									uni.$u.toast(res.data.msg)
+								}
+							}).catch(() => {
+								uni.hideLoading();
+							})
+						} else {
+							uni.$u.toast('请先选择调拨钢瓶')
+						}
+					} else {
+						uni.$u.toast('请先扫描调拨码')
+					}
+				} else {
+					// 空瓶充装
 					if (this.checked.length > 0) {
-						this.$api.post('/api/gas-cylinder-allot', {
-							optType: this.assignerData[0],
-							acceptUserId: Number(this.assignerData[1]),
-							acceptCompanyId: Number(this.assignerData[3]),
-							innerCodeList: this.checked,
-							gasCylinderStatus: this.current,
-						}).then(res => {
+						// 操作记录、流转步骤接口
+						const param = {
+							chipUidList: this.checked,
+							optType: '14',
+						}
+						uni.showLoading({
+							mask: true,
+						});
+						this.$api.post('/api/operation-log', param).then(res => {
 							if (res.code == 200) {
-								this.loadingMore = true
 								this.Pagination.PageIndex = 1
 								this.list = []
 								this.getList()
 								this.checked = []
-								uni.$u.toast(res.msg)
+								uni.$u.toast('操作成功')
 							} else {
 								uni.$u.toast(res.data.msg)
 							}
-							this.$forceUpdate()
+							uni.hideLoading();
+						}).catch(() => {
+							uni.hideLoading();
 						})
 					} else {
 						uni.$u.toast('请先选择调拨钢瓶')
 					}
-				} else {
-					uni.$u.toast('请先扫描调拨码')
 				}
 			},
 			// 扫一扫
@@ -223,22 +273,55 @@
 				})
 				return title
 			},
+			// 选择钢瓶编号
+			checkboxChange(value) {
+				setMatchingIds(this.list, value)
+
+				function setMatchingIds(arr1, arr2) {
+					arr1.forEach(item => {
+						item.checked = arr2.some(otherItem => otherItem === item.inner_code);
+					});
+				}
+				this.checked = value
+			},
 			// 输入第几个
 			howMany(value) {
-				const result = this.list.slice(0, value)
 				this.checked = []
-				result.forEach(item => {
-					this.checked.push(item.inner_code)
+				this.list.forEach((item, index) => {
+					if (index < value) {
+						item.checked = true
+						this.checked.push(item.inner_code)
+					} else {
+						item.checked = false
+					}
 				})
-				this.$forceUpdate()
 			},
 			// 全选
 			checkAll() {
+				this.codeValue = ''
 				this.checked = []
+				for (let i = 0; i < this.list.length; i++) {
+					this.$set(this.list[i], 'checked', true)
+				}
 				this.list.forEach(item => {
-					this.checked.push(item.inner_code)
+					if (item.checked) {
+						this.checked.push(item.inner_code)
+					}
+				})
+			},
+			// 反选
+			Inverse() {
+				this.codeValue = ''
+				this.checked = []
+				for (let i = 0; i < this.list.length; i++) {
+					let flag = this.list[i].checked;
+					this.$set(this.list[i], 'checked', !flag)
+				}
+				this.list.forEach(item => {
+					if (item.checked) {
+						this.checked.push(item.inner_code)
+					}
 				})
-				this.$forceUpdate()
 			}
 		}
 	}
@@ -299,12 +382,25 @@
 		border-bottom: 1rpx solid #d7d7d7;
 	}
 
+	.blue_titleil {
+		font-size: 30rpx;
+		color: #2979ff;
+		margin-right: 20rpx;
+	}
+
+	.blue_titleilred {
+		font-size: 30rpx;
+		color: #ff9900;
+		margin-right: 20rpx;
+	}
+
 	.blue_title {
+		font-size: 30rpx;
 		color: #2979ff;
 	}
 
 	.card_right_num {
-		margin-left: 40rpx;
+		margin-left: 30rpx;
 		display: flex;
 		align-items: center;
 	}

+ 1 - 1
pages/information/transferRecord.vue

@@ -116,7 +116,7 @@
 	}
 </script>
 
-<style lang="scss" scoped>
+<style lang="scss">
 	page {
 		background-color: #f4f4f5;
 	}

+ 4 - 1
pages/mine/erweima.vue

@@ -28,7 +28,10 @@
 			var userInfo = this.$cache.getCache('userInfo')
 			this.userInfo = userInfo
 			const qr = new UQRCode();
-			qr.data = '二维码内容';
+			let numarr = userInfo.dept.cmpCode + ',' + userInfo.id + ',' + userInfo.nickName + ',' + userInfo.dept
+				.id + ',' +
+				userInfo.dept.name
+			qr.data = numarr;
 			qr.size = 200;
 			qr.make();
 			const ctx = uni.createCanvasContext('qrcode', this);

+ 17 - 0
pages/mine/personal.vue

@@ -124,6 +124,12 @@
 						message: '请上传燃气从业资格证',
 						trigger: ['blur', 'change']
 					},
+					'imgUrls': {
+						type: 'string',
+						required: true,
+						message: '请上传燃气从业资格证',
+						trigger: ['blur', 'change']
+					},
 				},
 				userInfo: {},
 				userType: 5,
@@ -238,16 +244,27 @@
 						remarks: this.model.remarks,
 					}
 				}
+				if (this.model.addressImg != undefined) {
+					param.provTruckUserBindCertificate.imgUrl = this.model.addressImg
+				}
 				if (this.userType == 3) {
 					delete param.provTruckUserBindCertificate
 				} else if (this.userType == 4) {
 					delete param.provStoreUserBindCertificate
 				}
+				uni.showLoading({
+					mask: true,
+				});
+				uni.hideLoading();
+				console.log(param, this.model, 2667)
 				this.$api.put('/api/sys-user', param).then(res => {
 					if (res.code == 200) {
 						this.getUser()
 						uni.$u.toast(res.msg)
 					}
+					uni.hideLoading();
+				}).catch(() => {
+					uni.hideLoading();
 				})
 			}
 		}

+ 23 - 4
pages/order/cannibalize.vue

@@ -81,18 +81,27 @@
 			},
 			// 取消调拨
 			cancelAllocation() {
+				uni.showLoading({
+					mask: true,
+				});
 				this.$api.post('/api/gas-cylinder-allot/cancel', {
 					id: this.transferList.id,
 				}).then(res => {
+					uni.hideLoading();
 					if (res.code == 200) {
 						this.transferFlag = false
 						this.transferList = {}
 						uni.$u.toast(res.msg)
 					}
+				}).catch(() => {
+					uni.hideLoading();
 				})
 			},
 			// 确定调拨钢瓶
 			submit() {
+				uni.showLoading({
+					mask: true,
+				});
 				this.$api.post('/api/gas-cylinder-allot/submit', {
 					id: this.transferList.id,
 					optType: this.transferList.optType,
@@ -107,18 +116,28 @@
 						this.transferList = {}
 						uni.$u.toast(res.msg)
 						setTimeout(() => {
-							uni.redirectTo({
-								url: '/pages/indexRouter?page=1'
-							});
+							if (this.userInfo.provUser.isorders == 0 && this.userInfo.provUser.userType ==
+								3) {
+								uni.redirectTo({
+									url: '/pages/indexRouter?page=2'
+								});
+							} else {
+								uni.redirectTo({
+									url: '/pages/indexRouter?page=1'
+								});
+							}
 						}, 1500)
 					}
+					uni.hideLoading();
+				}).catch(() => {
+					uni.hideLoading();
 				})
 			}
 		}
 	}
 </script>
 
-<style lang="scss" scoped>
+<style lang="scss">
 	page {
 		background-color: #f4f4f5;
 	}

+ 286 - 66
pages/order/delivery.vue

@@ -3,51 +3,80 @@
 	<view>
 		<u-navbar :title="navTitle" autoBack placeholder @leftClick="leftClick"></u-navbar>
 		<view class="card_order_details">
-			<view class="details_title">高频编码 <span class="line_title">*</span></view>
-			<view class="card_search">
+			<view style="display: flex;align-items: center;margin-bottom: 20rpx;" v-if="storeFlag">
+				<image class="mine_image" src="../../static/portrait.png" mode=""></image>
+				<view class="card_user_title">
+					<view class="mine_phone">{{storeData[2]}}
+					</view>
+					<view class="mine_phone">{{storeData[4]}}
+					</view>
+				</view>
+			</view>
+			<view class="details_title">钢瓶编号 <span class="line_title">*</span></view>
+			<view style="display: flex;align-items: center;" v-if="selectiveType != 'inspect'">
+				<u-input border="surround" placeholder="点击输入" v-model="frequencyCoding"></u-input>
+				<view class="btn_add_card">
+					<u-button type="primary" text="添加" @click="addCode"></u-button>
+				</view>
+			</view>
+			<view class="card_search" v-else-if="selectiveType == 'inspect'">
 				<view class="card_sweep" @click="sweep">
 					<u-icon name="scan" size="36"></u-icon>
 					<view class="scan_title">扫一扫</view>
 				</view>
 				<view class="card_input">
-					<u-input border="surround" v-model="frequencyCoding"></u-input>
+					<u-input border="surround" v-model="frequencyCoding" @blur="inputBlur"></u-input>
 				</view>
 				<view class="deleteCurrent" @click="removeWaybill(frequencyCoding)">
 					<u-icon class="icon_current" name="backspace" height="10" size="20"></u-icon>
 					<view class="title_nape">删除</view>
 				</view>
 			</view>
-			<view v-if="selectiveType != '99' && selectiveType != '100'">
-				<view class="card_frequency" v-if="selectiveType != 'inspect'">
-					<view class="card_high space_between">
-						<view class="card_frequency_title">高频编码列表</view>
-						<view class="card_bottle">已扫<span>{{list.length}}</span>瓶</view>
-					</view>
-					<view style="width: 100%;" v-if="list.length > 0">
-						<view class="item_coding" v-for="(item,index) in list" :key="index">
-							<view class="title_coding">{{item}}</view>
-							<u-icon name="close-circle-fill" color="#c0c4cc" size="20"
-								@click="removeWaybill(item)"></u-icon>
+			<view class="card_frequency" v-if="selectiveType != 'inspect'">
+				<view class="scan_card_code">
+					<view style="display: flex;align-items: center;">
+						<view style="display: flex;align-items: center;" @click="addLine">
+							<u-icon name="scan" size="26"></u-icon>
+							<view class="title_subhead">增加一条</view>
+						</view>
+						<view style="display: flex;align-items: center;margin-left: 30rpx;" @click="continuousAddition">
+							<u-icon name="scan" size="26"></u-icon>
+							<view class="title_subhead">连续扫码增加</view>
 						</view>
 					</view>
-					<view class="card_empty" v-else>
-						<u-empty mode="list"></u-empty>
-					</view>
+					<view class="card_bottle">已扫<span>{{list.length}}</span>瓶</view>
 				</view>
-				<view class="card_examine" v-else>
-					<view class="card_examine_item space_between" v-for="(item,index) in checkEntry" :key="index">
-						<view class="title_entry">{{item.label}}</view>
-						<view style="height: 40rpx;" v-if="item.type == 'radio'">
-							<u-radio-group v-model="ruleForm.state" placement="row">
-								<u-radio shape="circle" :customStyle="{width:'140rpx'}"
-									v-for="(item, index) in item.options" :key="index" :label="item.label"
-									:name="item.value"></u-radio>
-							</u-radio-group>
-						</view>
-						<view class="center_row" v-if="item.type == 'input'">
-							<u-input class="input_item" border="surround" v-model="ruleForm[`${item.field}`]"></u-input>
-							<view style="margin-left: 15rpx;width: 90rpx;">{{item.unit}}</view>
+				<view style="width: 100%;" v-if="list.length > 0">
+					<view class="item_coding" v-for="(item,index) in list" :key="index">
+						<view style="display: flex;align-items: center;">
+							<view class="item_current">{{index + 1}}</view>
+							<view class="title_codingewtw">{{item}}</view>
 						</view>
+						<view class="item_title1 title_red" @click="removeWaybill(item)">删除</view>
+					</view>
+				</view>
+				<view class="card_empty" v-else>
+					<u-empty mode="list" text="请先扫描添加钢瓶编号"></u-empty>
+				</view>
+			</view>
+			<view class="card_examine" v-else>
+				<view class="card_examine_item space_between" v-for="(item,index) in checkEntry" :key="index">
+					<view class="title_entry">{{item.label}}</view>
+					<view style="height: 40rpx;" v-if="item.type == 'radio'">
+						<u-radio-group v-model="ruleForm[`${item.field}`]" placement="row">
+							<u-radio shape="circle" :customStyle="{width:'140rpx'}"
+								v-for="(item, index) in item.options" :key="index" :label="item.label"
+								:name="item.value"></u-radio>
+						</u-radio-group>
+					</view>
+					<view class="center_row" v-if="item.type == 'input'">
+						<u-input class="input_item" border="surround" v-model="ruleForm[`${item.field}`]"></u-input>
+						<view style="margin-left: 15rpx;width: 90rpx;">{{item.unit}}</view>
+					</view>
+					<view class="center_row" v-if="item.type == 'numinput'">
+						<u-input class="input_item" type="digit" border="surround"
+							v-model="ruleForm[`${item.field}`]"></u-input>
+						<view style="margin-left: 15rpx;width: 90rpx;">{{item.unit}}</view>
 					</view>
 				</view>
 			</view>
@@ -56,6 +85,17 @@
 				<u-button style="margin-bottom: 20rpx;" type="primary" @click="submit">提交</u-button>
 			</view>
 		</view>
+		<u-popup :show="show" :round="10" :closeOnClickOverlay="false" mode="center" @close="close">
+			<view class="card_coding_scan">
+				<view class="title_coding">钢瓶编号</view>
+				<view class="coding_title1">{{scanCoding}}</view>
+				<view style="display: flex;align-items: center;">
+					<u-icon color="#19be6b" size="30" name="checkmark-circle-fill"></u-icon>
+					<view class="success_title">扫描成功</view>
+				</view>
+				<view class="title_coding">3秒后再次扫描</view>
+			</view>
+		</u-popup>
 	</view>
 </template>
 
@@ -72,11 +112,44 @@
 				cmpCode: '',
 				list: [],
 				checkEntry: formRules(),
-				ruleForm: {},
+				ruleForm: {
+					deadWeight: '',
+					color: '',
+					pipePressure: '',
+					fillWeight: '',
+					repeatWeight: '',
+					corrosion: 0,
+					crackle: 0,
+					deform: 0,
+					damage: 0,
+					safeAnnex: 0,
+					gasPressure: 0,
+					bodyDeform: 0,
+					fillingLeak: 0,
+					bodyTemperature: 0,
+					filledLeak: 0,
+					warnSign: 0,
+					fillLabel: 0,
+					seal: 0,
+				},
 				orderId: '',
+				scanType: 1,
+				show: false,
+				scanCoding: '',
+				storeFlag: false,
+				storeData: []
 			}
 		},
+		onUnload() {
+			console.log('页面销毁了!');
+			this.$cache.removeCache('storeInformation')
+		},
 		onLoad(receive) {
+			var storeList = this.$cache.getCache('storeInformation')
+			if (storeList) {
+				this.storeFlag = true
+				this.storeData = storeList
+			}
 			this.navTitle = receive.title
 			this.selectiveType = receive.id
 			this.cmpCode = receive.cmpCode
@@ -87,33 +160,72 @@
 				uni.$emit('refresh');
 			},
 			submit() {
+				// 99订单扫码确定送达、100订单扫码确定取消
 				if (this.selectiveType == '99' || this.selectiveType == '100') {
 					// 修改订单状态
-					if (this.frequencyCoding) {
+					if (this.list.length > 0) {
 						const param = {
 							id: Number(this.orderId),
 							state: null,
-							chipUid: this.frequencyCoding,
+							chipUid: this.list,
 						}
 						if (this.selectiveType == '99') {
 							param.state = 3
 						} else if (this.selectiveType == '100') {
 							param.state = 4
 						}
+						uni.showLoading({
+							mask: true,
+						});
 						this.$api.put('/api/order/state', param).then(res => {
 							if (res.code == 200) {
 								this.frequencyCoding = ''
+								this.list = []
 								uni.$u.toast('操作成功')
+								setTimeout(() => {
+									uni.$emit('refresh');
+									uni.navigateBack({
+										delta: 1
+									});
+								}, 1000)
 							} else {
 								uni.$u.toast(res.data.msg)
 							}
+							uni.hideLoading();
+						}).catch(() => {
+							uni.hideLoading();
+						})
+					} else {
+						uni.$u.toast('请先扫钢瓶编号')
+					}
+				} else if (this.selectiveType == 'inspect') {
+					if (this.frequencyCoding) {
+						uni.showLoading({
+							mask: true,
+						});
+						let params = JSON.parse(JSON.stringify(this.ruleForm))
+						params.repeatWeight = Number(this.ruleForm.repeatWeight)
+						params.fillWeight = Number(this.ruleForm.fillWeight)
+						params.deadWeight = Number(this.ruleForm.deadWeight)
+						params.pipePressure = Number(this.ruleForm.pipePressure)
+						this.$api.post('/api/fill-check', {
+							innerCode: this.frequencyCoding,
+							...params,
+						}).then(res => {
+							if (res.code == 200) {
+								this.frequencyCoding = ''
+								uni.$u.toast('操作成功')
+							}
+							uni.hideLoading();
+						}).catch(() => {
+							uni.hideLoading();
 						})
 					} else {
-						uni.$u.toast('请先扫高频编码')
+						uni.$u.toast('请先扫钢瓶编号')
 					}
 				} else {
 					if (this.list.length > 0) {
-						// 操作记录
+						// 操作记录、流转步骤接口
 						const param = {
 							chipUidList: this.list,
 							currentEnterprise: this.cmpCode,
@@ -122,6 +234,9 @@
 						if (!param.currentEnterprise) {
 							delete param.currentEnterprise
 						}
+						uni.showLoading({
+							mask: true,
+						});
 						this.$api.post('/api/operation-log', param).then(res => {
 							if (res.code == 200) {
 								this.list = []
@@ -130,12 +245,38 @@
 							} else {
 								uni.$u.toast(res.data.msg)
 							}
+							uni.hideLoading();
+						}).catch(() => {
+							uni.hideLoading();
 						})
 					} else {
-						uni.$u.toast('请先扫高频编码')
+						uni.$u.toast('请先扫钢瓶编号')
 					}
 				}
 			},
+			// 输入值
+			inputBlur(value) {
+				this.list.push(value)
+				this.list = Array.from(new Set(this.list));
+			},
+			// 输入钢瓶编号添加
+			addCode() {
+				if (this.frequencyCoding) {
+					this.list.push(this.frequencyCoding)
+					this.list = Array.from(new Set(this.list));
+					this.frequencyCoding = ''
+				}
+			},
+			// 添加一条
+			addLine() {
+				this.scanType = 1
+				this.sweep()
+			},
+			// 连续添加
+			continuousAddition() {
+				this.scanType = 2
+				this.sweep()
+			},
 			// 扫一扫
 			sweep() {
 				// 允许从相机和相册扫码
@@ -175,14 +316,26 @@
 					success: (res) => {
 						if (res.data.code == 0) {
 							var arr = res.data.data
-							this.frequencyCoding = arr.inner_code
 							if (this.selectiveType != '99' || this.selectiveType != '100') {
-								this.list.push(arr.inner_code)
-
-								function methods1(arr) {
-									return Array.from(new Set(arr));
+								if (this.selectiveType == 'inspect') {
+									this.frequencyCoding = arr.inner_code
+								}
+								if (this.scanType == 1) {
+									this.list.push(arr.inner_code)
+									this.list = Array.from(new Set(this.list));
+								} else {
+									this.show = true
+									this.list.push(arr.inner_code)
+									this.list = Array.from(new Set(this.list));
+									this.scanCoding = arr.inner_code
+									// 扫码间隔两秒
+									setTimeout(() => {
+										this.sweep()
+										this.show = false
+									}, 3000)
 								}
-								this.list = methods1(this.list)
+							} else {
+								this.frequencyCoding = arr.inner_code
 							}
 							uni.hideLoading();
 						}
@@ -201,13 +354,34 @@
 					return arr.filter((item) => item !== key);
 				}
 			},
+			// 弹窗关闭
+			close() {
+				this.show = false
+			}
 		}
 	}
 </script>
 
 <style lang="scss" scoped>
 	.card_order_details {
-		margin: 25rpx;
+		margin: 0rpx 25rpx 25rpx 25rpx;
+	}
+
+	.mine_image {
+		width: 100rpx;
+		height: 100rpx;
+		border-radius: 50%;
+	}
+
+	.card_user_title {
+		display: flex;
+		flex-direction: column;
+		align-items: flex-start;
+	}
+
+	.mine_phone {
+		margin-left: 20rpx;
+		font-size: 30rpx;
 	}
 
 	.details_title {
@@ -217,6 +391,10 @@
 		margin-bottom: 10rpx;
 	}
 
+	.btn_add_card {
+		margin-left: 20rpx;
+	}
+
 	.card_search {
 		display: flex;
 		align-items: center;
@@ -239,12 +417,31 @@
 		margin-left: 30rpx;
 	}
 
-	.line_title {
-		color: red;
+	.deleteCurrent {
+		display: flex;
+		align-items: center;
+		flex-direction: column;
+		justify-content: center;
+		border: 1px solid #e5e5e5;
+		padding: 5rpx 0rpx 5rpx 5rpx;
+		margin-left: 10rpx;
+		border-radius: 8rpx;
+		height: 66rpx;
+
+		.icon_current {
+			height: 15px;
+		}
+
+		.title_nape {
+			margin: 0rpx 10rpx;
+			display: flex;
+			font-size: 20rpx;
+			width: 40rpx;
+		}
 	}
 
-	.card_high {
-		margin-top: 30rpx;
+	.line_title {
+		color: red;
 	}
 
 	.card_frequency {
@@ -252,14 +449,21 @@
 		flex-wrap: wrap;
 	}
 
-	.card_frequency_title {
-		font-size: 32rpx;
+	.scan_card_code {
+		width: 100%;
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+		margin-top: 30rpx;
+		padding-bottom: 30rpx;
+		border-bottom: 1rpx solid #d7d7d7;
 	}
 
 	.card_bottle {
 		font-size: 30rpx;
 
 		span {
+			margin: 0rpx 5rpx;
 			color: red;
 		}
 	}
@@ -274,10 +478,24 @@
 		border-bottom: 2rpx solid #dfdfdf;
 	}
 
-	.title_coding {
+	.item_current {
+		width: 40rpx;
+		color: #82848a;
+	}
+
+	.title_codingewtw {
+		margin-left: 10rpx;
 		font-size: 30rpx;
 	}
 
+	.item_title1 {
+		margin-left: 10rpx;
+	}
+
+	.title_red {
+		color: #fa3534;
+	}
+
 	.card_empty {
 		width: 100%;
 		margin-top: 50rpx;
@@ -306,6 +524,7 @@
 	.card_examine_item {
 		display: flex;
 		margin-bottom: 20rpx;
+		height: 72rpx;
 	}
 
 	.title_entry {
@@ -322,26 +541,27 @@
 		width: 240rpx;
 	}
 
-	.deleteCurrent {
+	.card_coding_scan {
 		display: flex;
 		align-items: center;
 		flex-direction: column;
-		justify-content: center;
-		border: 1px solid #e5e5e5;
-		padding: 5rpx 0rpx 5rpx 5rpx;
-		margin-left: 10rpx;
-		border-radius: 8rpx;
-		height: 66rpx;
+		width: 400rpx;
+		padding: 30rpx;
+	}
 
-		.icon_current {
-			height: 15px;
-		}
+	.title_coding {
+		font-size: 32rpx;
+		margin: 20rpx;
+	}
 
-		.title_nape {
-			margin: 0rpx 10rpx;
-			display: flex;
-			font-size: 20rpx;
-			width: 40rpx;
-		}
+	.success_title {
+		font-size: 40rpx;
+		margin-left: 10rpx;
+	}
+
+	.coding_title1 {
+		font-size: 60rpx;
+		margin-bottom: 20rpx;
+		font-weight: 600;
 	}
 </style>

+ 44 - 28
pages/order/index.vue

@@ -6,25 +6,9 @@
 				@change="tabClick"></u-tabs>
 		</view>
 		<view class="cardOrder_tab"></view>
-		<view class="card_order_manag" v-if="current == 0">
+		<view class="card_order_manag">
 			<orderManagement :datalist="datalist" @toDeliver="toDeliver"></orderManagement>
 		</view>
-		<!-- 待配送 -->
-		<view class="card_order_manag" v-if="current == 1">
-			<orderManagement :datalist="datalist" @toDeliver="toDeliver"></orderManagement>
-		</view>
-		<!-- 配送中 -->
-		<view class="card_order_manag" v-if="current == 2">
-			<orderManagement :datalist="datalist"></orderManagement>
-		</view>
-		<!-- 已送达 -->
-		<view class="card_order_manag" v-if="current == 3">
-			<orderManagement :datalist="datalist"></orderManagement>
-		</view>
-		<!-- 已取消 -->
-		<view class="card_order_manag" v-if="current == 4">
-			<orderManagement :datalist="datalist"></orderManagement>
-		</view>
 		<view class="card_empty" v-if="datalist.length === 0">
 			<u-empty mode="order"></u-empty>
 		</view>
@@ -53,6 +37,12 @@
 					name: '已取消'
 				}],
 				datalist: [],
+				Pagination: {
+					PageIndex: 1,
+					PageSize: 20,
+					Total: 0,
+				},
+				loadingMore: true,
 			}
 		},
 		onTabItemTap() {
@@ -60,6 +50,7 @@
 		},
 		mounted() {
 			uni.$on('refresh', () => {
+				this.datalist = []
 				this.getOrderList()
 			})
 			var token = this.$cache.getToken()
@@ -68,15 +59,31 @@
 			}
 		},
 		methods: {
+			// 触底事件
+			bottomingEvent() {
+				if (!this.loadingMore) {
+					this.getOrderList()
+				}
+			},
 			// 获取订单列表
-			getOrderList(stateType) {
+			getOrderList() {
+				console.log(this.orderID, 34)
 				this.$api.get('/api/order/delivery', {
-					state: stateType,
+					page: this.Pagination.PageIndex,
+					pageSize: this.Pagination.PageSize,
+					state: this.orderID,
 				}).then(res => {
 					if (res.code == 200) {
-						this.datalist = res.data.list
-					} else {
-						this.datalist = []
+						const data = res.data.list
+						if (this.loadingMore == true && data) {
+							this.datalist = this.datalist.concat(data);
+						}
+						if (data.length < this.Pagination.PageSize) {
+							this.loadingMore = true
+						} else {
+							this.loadingMore = false
+							this.Pagination.PageIndex++
+						}
 					}
 				})
 			},
@@ -87,24 +94,33 @@
 					state: 5,
 				}).then(res => {
 					if (res.code == 200) {
-						this.getOrderList(this.current)
+						this.current = 2
+						this.orderID = 5
+						this.datalist = []
+						this.getOrderList()
 					}
 				})
 			},
 			tabClick(row) {
 				// console.log(row, 26)
 				if (row.index == 1) {
-					this.getOrderList(2)
+					// 待配送 
+					this.orderID = 2
 				} else if (row.index == 2) {
-					this.getOrderList(5)
+					// 配送中
+					this.orderID = 5
 				} else if (row.index == 3) {
-					this.getOrderList(3)
+					// 已送达
+					this.orderID = 3
 				} else if (row.index == 4) {
-					this.getOrderList(4)
+					// 已取消
+					this.orderID = 4
 				} else {
-					this.getOrderList()
+					this.orderID = null
 				}
+				this.datalist = []
 				this.current = row.index;
+				this.getOrderList()
 			}
 		}
 	}

+ 309 - 285
pages/order/new_file.js

@@ -1,286 +1,310 @@
 export const formRules = () => {
-  return [ {
-    field: 'T_sn',
-    label: '1、充装管道压力',
-    placeholder: '充装管道压力',
-    type: 'input',
-    colWidth: 12,
-    unit: 'MPa',
-    rules: [{
-      required: true,
-      message: '请输入充装管道压力',
-      trigger: 'blur'
-    }]
-  }, {
-    field: 'T_sn',
-    label: '2、充装重量',
-    placeholder: '充装重量',
-    type: 'input',
-    colWidth: 12,
-    unit: 'kg',
-    rules: [{
-      required: true,
-      message: '请输入充装重量',
-      trigger: 'blur'
-    }]
-  }, {
-    field: 'T_sn',
-    label: '3、复称重量',
-    placeholder: '复称重量',
-    type: 'input',
-    colWidth: 12,
-    unit: 'kg',
-    rules: [{
-      required: true,
-      message: '请输入复称重量',
-      trigger: 'blur'
-    }]
-  }, {
-    field: 'T_name',
-    label: '4、是否腐蚀',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择是否腐蚀',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '5、是否有裂纹',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择是否有裂纹',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '6、是否变形',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择是否变形',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '7、是否有损伤',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择是否有损伤',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '8、安全附件完好',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择安全附件完好状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '完好',
-        value: "1",
-      },
-      {
-        label: '缺失',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '9、余压正常(或抽真空)',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择余压状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '正常',
-        value: "1",
-      },
-      {
-        label: '不正常',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '10、瓶体有无变形',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择瓶体有无变形',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '11、充装过程有无泄漏',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择充装过程有无泄漏',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '12、瓶体温度正常',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择瓶体温度正常状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '正常',
-        value: "1",
-      },
-      {
-        label: '不正常',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '13、充装后有无泄漏',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择充装后有无泄漏',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '无',
-        value: "1",
-      },
-      {
-        label: '有',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '14、警示标志完好',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择警示标志完好状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '完好',
-        value: "1",
-      },
-      {
-        label: '缺失',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '15、充装标签完好',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择充装标签完好状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '完好',
-        value: "1",
-      },
-      {
-        label: '缺失',
-        value: "2",
-      }
-    ]
-  }, {
-    field: 'T_name',
-    label: '16、封口完好',
-    type: 'radio',
-    colWidth: 12,
-    rules: [{
-      required: true,
-      message: '请选择封口完好状态',
-      trigger: 'change'
-    }],
-    options: [{
-        label: '完好',
-        value: "1",
-      },
-      {
-        label: '缺失',
-        value: "2",
-      }
-    ]
-  }, ]
-}
+	return [{
+		field: 'deadWeight',
+		label: '1、气瓶自重',
+		placeholder: '气瓶自重',
+		type: 'numinput',
+		colWidth: 12,
+		unit: 'kg',
+		rules: [{
+			required: true,
+			message: '请输入气瓶自重',
+			trigger: 'blur'
+		}]
+	}, {
+		field: 'color',
+		label: '2、颜色',
+		placeholder: '颜色',
+		type: 'input',
+		colWidth: 12,
+		unit: '',
+		rules: [{
+			required: true,
+			message: '请输入颜色',
+			trigger: 'blur'
+		}]
+	}, {
+		field: 'pipePressure',
+		label: '3、充装管道压力',
+		placeholder: '充装管道压力',
+		type: 'numinput',
+		colWidth: 12,
+		unit: 'MPa',
+		rules: [{
+			required: true,
+			message: '请输入充装管道压力',
+			trigger: 'blur'
+		}]
+	}, {
+		field: 'fillWeight',
+		label: '4、充装重量',
+		placeholder: '充装重量',
+		type: 'numinput',
+		colWidth: 12,
+		unit: 'kg',
+		rules: [{
+			required: true,
+			message: '请输入充装重量',
+			trigger: 'blur'
+		}]
+	}, {
+		field: 'repeatWeight',
+		label: '5、复称重量',
+		placeholder: '复称重量',
+		type: 'numinput',
+		colWidth: 12,
+		unit: 'kg',
+		rules: [{
+			required: true,
+			message: '请输入复称重量',
+			trigger: 'blur'
+		}]
+	}, {
+		field: 'corrosion',
+		label: '6、是否腐蚀',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择是否腐蚀',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'crackle',
+		label: '7、是否有裂纹',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择是否有裂纹',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'deform',
+		label: '8、是否变形',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择是否变形',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'damage',
+		label: '9、是否有损伤',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择是否有损伤',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'safeAnnex',
+		label: '10、安全附件完好',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择安全附件完好状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '完好',
+				value: 0,
+			},
+			{
+				label: '缺失',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'gasPressure',
+		label: '11、余压正常(或抽真空)',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择余压状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '正常',
+				value: 0,
+			},
+			{
+				label: '不正常',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'bodyDeform',
+		label: '12、瓶体有无变形',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择瓶体有无变形',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'fillingLeak',
+		label: '13、充装过程有无泄漏',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择充装过程有无泄漏',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'bodyTemperature',
+		label: '14、瓶体温度正常',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择瓶体温度正常状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '正常',
+				value: 0,
+			},
+			{
+				label: '不正常',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'filledLeak',
+		label: '15、充装后有无泄漏',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择充装后有无泄漏',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '无',
+				value: 0,
+			},
+			{
+				label: '有',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'warnSign',
+		label: '16、警示标志完好',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择警示标志完好状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '完好',
+				value: 0,
+			},
+			{
+				label: '缺失',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'fillLabel',
+		label: '17、充装标签完好',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择充装标签完好状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '完好',
+				value: 0,
+			},
+			{
+				label: '缺失',
+				value: 1,
+			}
+		]
+	}, {
+		field: 'seal',
+		label: '18、封口完好',
+		type: 'radio',
+		colWidth: 12,
+		rules: [{
+			required: true,
+			message: '请选择封口完好状态',
+			trigger: 'change'
+		}],
+		options: [{
+				label: '完好',
+				value: 0,
+			},
+			{
+				label: '缺失',
+				value: 1,
+			}
+		]
+	}, ]
+}

+ 108 - 10
pages/order/orderDetails.vue

@@ -4,7 +4,8 @@
 		<u-navbar title="详情" autoBack placeholder></u-navbar>
 		<view class="card_order_details">
 			<view class="details_title" style="color: #3c9cff;" v-if="orderData.state == 2">待配送</view>
-			<view class="details_title" style="color: #f9ae3d;" v-else-if="orderData.state == 5">配送中</view>
+			<view class="details_title" style="color: #f9ae3d;"
+				v-else-if="orderData.state == 5 || orderData.state == 6">配送中</view>
 			<view class="details_title" style="color: #5ac725;" v-else-if="orderData.state == 3">已送达</view>
 			<view class="details_title" style="color: #f56c6c;" v-else-if="orderData.state == 4">已取消</view>
 			<view class="gas_card">
@@ -18,20 +19,39 @@
 			</view>
 			<view class="details_title1">订单编号: <span>{{orderData.orderId}}</span></view>
 			<view class="details_title1">配送地址: <span>{{orderData.address}}</span></view>
-			<view class="details_title1" v-if="orderData.state == 5 || orderData.state == 4">联系电话:
+			<view class="details_title1" v-if="orderData.state == 5 || orderData.state == 6 ||  orderData.state == 4">
+				联系电话:
 				<span>{{orderData.phone}}</span> <u-icon color="#70B603" size="26" name="phone-fill"
 					@click.native.stop="phone(orderData.phone)"></u-icon>
 			</view>
 			<view class="details_title1">下单时间: <span>{{orderData.orderTime}}</span></view>
-			<view class="details_title1" v-if="orderData.state == 5 || orderData.state == 4">配送时间:
+			<view class="details_title1" v-if="orderData.state == 5 || orderData.state == 6 || orderData.state == 4">
+				配送时间:
 				<span>{{orderData.deliveryTime}}</span>
 			</view>
 			<view class="details_title1" v-if="orderData.state == 3 || orderData.state == 4">送达时间:
 				<span>{{orderData.arriveTime}}</span>
 			</view>
+			<view class="card_steel_cylinder" v-if="orderData.orderInnerCodeList">
+				<view class="steel_list_title">钢瓶列表</view>
+				<u-checkbox-group v-model="checked" @change="checkboxChange">
+					<view style="width: 100%;display: flex;flex-direction: column;">
+						<view class="item_steel" v-for="(item,index) in orderData.orderInnerCodeList" :key="index">
+							<view style="display: flex;align-items: center;">
+								<u-checkbox :name="item.innerCode" :checked="item.checked"
+									:disabled="item.state == 2"></u-checkbox>
+								<view class="steel_title">{{index + 1}}</view>
+								<view class="steel_title1">{{item.innerCode}}</view>
+							</view>
+							<view class="steel_red" v-if="item.state == 2">已取消</view>
+						</view>
+					</view>
+				</u-checkbox-group>
+			</view>
 		</view>
+		<view style="width: 100%;height: 120rpx;"></view>
 		<view class="btn_cancel" v-if="orderData.state == 3">
-			<u-button text="取消订单" color="#d7d7d7" @click="cancel"></u-button>
+			<u-button type="error" text="取消订单" @click="cancel"></u-button>
 		</view>
 	</view>
 </template>
@@ -40,11 +60,18 @@
 	export default {
 		data() {
 			return {
+				checked: [],
 				orderData: {},
+				arrCode: [],
 			}
 		},
 		mounted() {
 			var value = uni.getStorageSync('detailsData');
+			if (value.orderInnerCodeList) {
+				value.orderInnerCodeList.forEach(item => {
+					item.checked = false
+				})
+			}
 			this.orderData = value
 			uni.$on('refresh', () => {
 				this.getOrderList()
@@ -55,10 +82,44 @@
 				var value = uni.getStorageSync('detailsData');
 				this.orderData = value
 			},
+			// 选择钢瓶编号
+			checkboxChange(value) {
+				this.arrCode = value
+			},
 			cancel() {
-				uni.redirectTo({
-					url: '/pages/order/delivery?id=' + '100' + '&title=' + '确定取消' + '&orderId=' + this.orderData.id
-				});
+				if (this.arrCode.length > 0) {
+					const param = {
+						id: Number(this.orderData.id),
+						state: 4,
+						chipUid: this.arrCode,
+					}
+					uni.showLoading({
+						mask: true,
+					});
+					this.$api.put('/api/order/state', param).then(res => {
+						if (res.code == 200) {
+							this.frequencyCoding = ''
+							this.list = []
+							uni.$u.toast('取消成功')
+							setTimeout(() => {
+								uni.$emit('refresh');
+								uni.navigateBack({
+									delta: 1
+								});
+							}, 1000)
+						} else {
+							uni.$u.toast(res.data.msg)
+						}
+						uni.hideLoading();
+					}).catch(() => {
+						uni.hideLoading();
+					})
+				} else {
+					uni.$u.toast('请选择取消钢瓶编码')
+				}
+				// uni.redirectTo({
+				// 	url: '/pages/order/delivery?id=' + '100' + '&title=' + '确定取消' + '&orderId=' + this.orderData.id
+				// });
 			},
 			phone(phone) {
 				uni.makePhoneCall({
@@ -114,6 +175,40 @@
 		margin-top: 10rpx;
 	}
 
+	.card_steel_cylinder {
+		margin-top: 30rpx;
+	}
+
+	.steel_list_title {
+		font-size: 32rpx;
+		font-weight: 600;
+	}
+
+	.item_steel {
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+		margin: 30rpx 0rpx;
+		padding-bottom: 20rpx;
+		border-bottom: 1rpx solid #E4E7ED;
+	}
+
+	.steel_title {
+		margin-left: 20rpx;
+		margin-right: 10rpx;
+		color: #7f7f7f;
+		font-size: 30rpx;
+	}
+
+	.steel_title1 {
+		font-size: 30rpx;
+	}
+
+	.steel_red {
+		color: #fa3534;
+		font-size: 30rpx;
+	}
+
 	.details_title1 {
 		display: flex;
 		align-items: center;
@@ -129,8 +224,11 @@
 	}
 
 	.btn_cancel {
-		margin-top: 40rpx;
-		margin-left: 30rpx;
-		width: 300rpx;
+		position: absolute;
+		bottom: 0;
+		left: 0;
+		right: 0;
+		padding: 20rpx;
+		background-color: #fff;
 	}
 </style>

+ 6 - 0
pages/order/quickMark.vue

@@ -103,6 +103,9 @@
 			// 添加钢瓶
 			submit() {
 				if (this.cylinderInformation.inner_code) {
+					uni.showLoading({
+						mask: true,
+					});
 					this.$api.post('/api/gas-cylinder', {
 						...this.cylinderInformation,
 					}).then(res => {
@@ -110,6 +113,9 @@
 							this.cylinderInformation = {}
 							uni.$u.toast('添加成功')
 						}
+						uni.hideLoading();
+					}).catch(() => {
+						uni.hideLoading();
 					})
 				} else {
 					uni.$u.toast('请先扫描钢瓶二维码')

+ 31 - 31
pages/order/securityCheck.vue

@@ -3,7 +3,7 @@
 	<view>
 		<u-navbar title="入户安全检查" autoBack placeholder></u-navbar>
 		<view class="card_order_details">
-			<u--form labelPosition="top" :model="ruleForm" :rules="rules" ref="uForm" labelWidth="auto">
+			<u-form labelPosition="top" :model="ruleForm" :rules="rules" ref="uForm" labelWidth="auto">
 				<u-form-item label="入户检查图片" prop="homeCheckImg">
 					<u-upload :fileList="fileList1" name="1" multiple :maxCount="10" @afterRead="afterRead"
 						@delete="deletePic"></u-upload>
@@ -20,13 +20,13 @@
 				</u-form-item>
 				<u-form-item label="客户签字" prop="customerImg">
 					<view class="card_signs center_in" v-if="clientFlag" @click="goSignature('client')">客户签字</view>
-					<u--image :showLoading="true" :src="imageData" width="200rpx" height="160rpx" v-else></u--image>
+					<u-image :showLoading="true" :src="imageData" width="200rpx" height="160rpx" v-else></u-image>
 				</u-form-item>
 				<u-form-item label="送气员签字" prop="signImg">
 					<view class="card_signs center_in" v-if="aeratorFlag" @click="goSignature('aerator')">送气员签字</view>
-					<u--image :showLoading="true" :src="aeratorData" width="200rpx" height="160rpx" v-else></u--image>
+					<u-image :showLoading="true" :src="aeratorData" width="200rpx" height="160rpx" v-else></u-image>
 				</u-form-item>
-			</u--form>
+			</u-form>
 			<view class="card_plate">
 				<view class="card_check">安全检查项目<span style="color: red;">*</span></view>
 				<u-line></u-line>
@@ -125,15 +125,11 @@
 				if (this.personnelType == 'client') {
 					this.clientFlag = false
 					this.imageData = data.replace(/[\r\n]/g, "");
-					const blob = this.base64ToBlob(data);
-					const url = URL.createObjectURL(blob);
-					this.getUpload(url)
+					this.getUpload(data)
 				} else {
 					this.aeratorFlag = false
 					this.aeratorData = data.replace(/[\r\n]/g, "");
-					const blob = this.base64ToBlob(data);
-					const url = URL.createObjectURL(blob);
-					this.getUpload(url)
+					this.getUpload(data)
 				}
 				//处理自己的业务逻辑
 			})
@@ -163,15 +159,25 @@
 						arrList.push(arr1)
 					})
 					param.inspectExpandList = arrList
+					uni.showLoading({
+						mask: true,
+					});
 					this.$api.post('/api/inspect_record', param).then(res => {
 						if (res.code == 200) {
+							uni.hideLoading();
 							uni.$u.toast('操作成功')
-							setTimeout(()=>{
+							setTimeout(() => {
+								uni.$emit('refresh');
 								uni.navigateBack({
 									delta: 1
 								});
-							},1500)
+							}, 1000)
+						} else {
+							uni.hideLoading();
+							uni.$u.toast(res.data.msg)
 						}
+					}).catch(() => {
+						uni.hideLoading();
 					})
 				}).catch(errors => {
 					// uni.$u.toast('校验失败')
@@ -186,12 +192,21 @@
 				const result = await this.uploadFilePromise(file)
 				if (this.personnelType == 'client') {
 					this.ruleForm.customerImg = result
+					if (this.$refs.uForm) {
+						this.$refs.uForm.validateField('customerImg')
+					}
 				} else {
 					this.ruleForm.signImg = result
+					if (this.$refs.uForm) {
+						this.$refs.uForm.validateField('signImg')
+					}
 				}
 			},
 			// 新增图片
 			async afterRead(event) {
+				uni.showLoading({
+					mask: true,
+				});
 				// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
 				let lists = [].concat(event.file)
 				let fileListLen = this[`fileList${event.name}`].length
@@ -227,20 +242,7 @@
 					this.ruleForm.beforeRectifyImg = arr1.join()
 					this.$refs.uForm.validateField('beforeRectifyImg')
 				}
-			},
-			base64ToBlob(base64Data) {
-				const arr = base64Data.split(','); // 分割Base64字符串
-				const mimeType = arr[0].match(/:(.*?);/)[1]; // 获取MIME类型
-				const byteString = atob(arr[1]); // Base64解码
-				let n;
-				const dataLength = byteString.length;
-				const uInt8Array = new Uint8Array(dataLength);
-				for (n = 0; n < dataLength; ++n) {
-					uInt8Array[n] = byteString.charCodeAt(n);
-				}
-				return new Blob([uInt8Array], {
-					type: mimeType
-				});
+				uni.hideLoading();
 			},
 			uploadFilePromise(url) {
 				return new Promise((resolve, reject) => {
@@ -256,11 +258,9 @@
 						},
 						success: (res) => {
 							let state = JSON.parse(res.data)
-							setTimeout(() => {
-								if (state.code == 200) {
-									resolve(state.data)
-								}
-							}, 1000)
+							if (state.code == 200) {
+								resolve(state.data)
+							}
 						}
 					});
 				})

+ 72 - 3
static/fonts/demo_index.html

@@ -55,6 +55,24 @@
           <ul class="icon_lists dib-box">
           
             <li class="dib">
+              <span class="icon iconfont">&#xe60a;</span>
+                <div class="name">订单</div>
+                <div class="code-name">&amp;#xe60a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe606;</span>
+                <div class="name">我的</div>
+                <div class="code-name">&amp;#xe606;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63a;</span>
+                <div class="name">首页</div>
+                <div class="code-name">&amp;#xe63a;</div>
+              </li>
+          
+            <li class="dib">
               <span class="icon iconfont">&#xe69d;</span>
                 <div class="name">调拨</div>
                 <div class="code-name">&amp;#xe69d;</div>
@@ -210,9 +228,9 @@
 <pre><code class="language-css"
 >@font-face {
   font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1721114513553') format('woff2'),
-       url('iconfont.woff?t=1721114513553') format('woff'),
-       url('iconfont.ttf?t=1721114513553') format('truetype');
+  src: url('iconfont.woff2?t=1721630616175') format('woff2'),
+       url('iconfont.woff?t=1721630616175') format('woff'),
+       url('iconfont.ttf?t=1721630616175') format('truetype');
 }
 </code></pre>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@@ -239,6 +257,33 @@
         <ul class="icon_lists dib-box">
           
           <li class="dib">
+            <span class="icon iconfont icon-dingdan2"></span>
+            <div class="name">
+              订单
+            </div>
+            <div class="code-name">.icon-dingdan2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-icon-test"></span>
+            <div class="name">
+              我的
+            </div>
+            <div class="code-name">.icon-icon-test
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-shouye1"></span>
+            <div class="name">
+              首页
+            </div>
+            <div class="code-name">.icon-shouye1
+            </div>
+          </li>
+          
+          <li class="dib">
             <span class="icon iconfont icon-tiaobo"></span>
             <div class="name">
               调拨
@@ -474,6 +519,30 @@
           
             <li class="dib">
                 <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-dingdan2"></use>
+                </svg>
+                <div class="name">订单</div>
+                <div class="code-name">#icon-dingdan2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-icon-test"></use>
+                </svg>
+                <div class="name">我的</div>
+                <div class="code-name">#icon-icon-test</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-shouye1"></use>
+                </svg>
+                <div class="name">首页</div>
+                <div class="code-name">#icon-shouye1</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
                   <use xlink:href="#icon-tiaobo"></use>
                 </svg>
                 <div class="name">调拨</div>

+ 15 - 3
static/fonts/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4430625 */
-  src: url('@/static/fonts/iconfont.woff2?t=1721114513553') format('woff2'),
-       url('@/static/fonts/iconfont.woff?t=1721114513553') format('woff'),
-       url('@/static/fonts/iconfont.ttf?t=1721114513553') format('truetype');
+  src: url('@/static/fonts/iconfont.woff2?t=1721630616175') format('woff2'),
+       url('@/static/fonts/iconfont.woff?t=1721630616175') format('woff'),
+       url('@/static/fonts/iconfont.ttf?t=1721630616175') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,18 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-dingdan2:before {
+  content: "\e60a";
+}
+
+.icon-icon-test:before {
+  content: "\e606";
+}
+
+.icon-shouye1:before {
+  content: "\e63a";
+}
+
 .icon-tiaobo:before {
   content: "\e69d";
 }

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
static/fonts/iconfont.js


+ 21 - 0
static/fonts/iconfont.json

@@ -6,6 +6,27 @@
   "description": "",
   "glyphs": [
     {
+      "icon_id": "852293",
+      "name": "订单",
+      "font_class": "dingdan2",
+      "unicode": "e60a",
+      "unicode_decimal": 58890
+    },
+    {
+      "icon_id": "6647873",
+      "name": "我的",
+      "font_class": "icon-test",
+      "unicode": "e606",
+      "unicode_decimal": 58886
+    },
+    {
+      "icon_id": "23635942",
+      "name": "首页",
+      "font_class": "shouye1",
+      "unicode": "e63a",
+      "unicode_decimal": 58938
+    },
+    {
       "icon_id": "10222328",
       "name": "调拨",
       "font_class": "tiaobo",

BIN
static/fonts/iconfont.ttf


BIN
static/fonts/iconfont.woff


BIN
static/fonts/iconfont.woff2


BIN
unpackage/cache/apk/__UNI__10C0A5F_cm.apk


+ 1 - 1
unpackage/cache/apk/apkurl

@@ -1 +1 @@
-https://app.liuyingyong.cn/build/download/689b55b0-10e9-11ef-96b0-c3d764bd9d5a
+https://app.liuyingyong.cn/build/download/2281c610-489d-11ef-9723-9dda9e6e218f

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/apk/cmManifestCache.json


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/__uniappchooselocation.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 2
unpackage/cache/wgt/__UNI__10C0A5F/app-config-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/app-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/app-view.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/manifest.json


+ 118 - 3
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/demo_index.html

@@ -55,6 +55,36 @@
           <ul class="icon_lists dib-box">
           
             <li class="dib">
+              <span class="icon iconfont">&#xe60a;</span>
+                <div class="name">订单</div>
+                <div class="code-name">&amp;#xe60a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe606;</span>
+                <div class="name">我的</div>
+                <div class="code-name">&amp;#xe606;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63a;</span>
+                <div class="name">首页</div>
+                <div class="code-name">&amp;#xe63a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe69d;</span>
+                <div class="name">调拨</div>
+                <div class="code-name">&amp;#xe69d;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe745;</span>
+                <div class="name">二维码</div>
+                <div class="code-name">&amp;#xe745;</div>
+              </li>
+          
+            <li class="dib">
               <span class="icon iconfont">&#xe822;</span>
                 <div class="name">默认头像</div>
                 <div class="code-name">&amp;#xe822;</div>
@@ -198,9 +228,9 @@
 <pre><code class="language-css"
 >@font-face {
   font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1710482073792') format('woff2'),
-       url('iconfont.woff?t=1710482073792') format('woff'),
-       url('iconfont.ttf?t=1710482073792') format('truetype');
+  src: url('iconfont.woff2?t=1721630616175') format('woff2'),
+       url('iconfont.woff?t=1721630616175') format('woff'),
+       url('iconfont.ttf?t=1721630616175') format('truetype');
 }
 </code></pre>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@@ -227,6 +257,51 @@
         <ul class="icon_lists dib-box">
           
           <li class="dib">
+            <span class="icon iconfont icon-dingdan2"></span>
+            <div class="name">
+              订单
+            </div>
+            <div class="code-name">.icon-dingdan2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-icon-test"></span>
+            <div class="name">
+              我的
+            </div>
+            <div class="code-name">.icon-icon-test
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-shouye1"></span>
+            <div class="name">
+              首页
+            </div>
+            <div class="code-name">.icon-shouye1
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-tiaobo"></span>
+            <div class="name">
+              调拨
+            </div>
+            <div class="code-name">.icon-tiaobo
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-erweima"></span>
+            <div class="name">
+              二维码
+            </div>
+            <div class="code-name">.icon-erweima
+            </div>
+          </li>
+          
+          <li class="dib">
             <span class="icon iconfont icon-morentouxiang"></span>
             <div class="name">
               默认头像
@@ -444,6 +519,46 @@
           
             <li class="dib">
                 <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-dingdan2"></use>
+                </svg>
+                <div class="name">订单</div>
+                <div class="code-name">#icon-dingdan2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-icon-test"></use>
+                </svg>
+                <div class="name">我的</div>
+                <div class="code-name">#icon-icon-test</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-shouye1"></use>
+                </svg>
+                <div class="name">首页</div>
+                <div class="code-name">#icon-shouye1</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-tiaobo"></use>
+                </svg>
+                <div class="name">调拨</div>
+                <div class="code-name">#icon-tiaobo</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-erweima"></use>
+                </svg>
+                <div class="name">二维码</div>
+                <div class="code-name">#icon-erweima</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
                   <use xlink:href="#icon-morentouxiang"></use>
                 </svg>
                 <div class="name">默认头像</div>

+ 23 - 3
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4430625 */
-  src: url('@/static/fonts/iconfont.woff2?t=1710482073792') format('woff2'),
-       url('@/static/fonts/iconfont.woff?t=1710482073792') format('woff'),
-       url('@/static/fonts/iconfont.ttf?t=1710482073792') format('truetype');
+  src: url('@/static/fonts/iconfont.woff2?t=1721630616175') format('woff2'),
+       url('@/static/fonts/iconfont.woff?t=1721630616175') format('woff'),
+       url('@/static/fonts/iconfont.ttf?t=1721630616175') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,26 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-dingdan2:before {
+  content: "\e60a";
+}
+
+.icon-icon-test:before {
+  content: "\e606";
+}
+
+.icon-shouye1:before {
+  content: "\e63a";
+}
+
+.icon-tiaobo:before {
+  content: "\e69d";
+}
+
+.icon-erweima:before {
+  content: "\e745";
+}
+
 .icon-morentouxiang:before {
   content: "\e822";
 }

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.js


+ 35 - 0
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.json

@@ -6,6 +6,41 @@
   "description": "",
   "glyphs": [
     {
+      "icon_id": "852293",
+      "name": "订单",
+      "font_class": "dingdan2",
+      "unicode": "e60a",
+      "unicode_decimal": 58890
+    },
+    {
+      "icon_id": "6647873",
+      "name": "我的",
+      "font_class": "icon-test",
+      "unicode": "e606",
+      "unicode_decimal": 58886
+    },
+    {
+      "icon_id": "23635942",
+      "name": "首页",
+      "font_class": "shouye1",
+      "unicode": "e63a",
+      "unicode_decimal": 58938
+    },
+    {
+      "icon_id": "10222328",
+      "name": "调拨",
+      "font_class": "tiaobo",
+      "unicode": "e69d",
+      "unicode_decimal": 59037
+    },
+    {
+      "icon_id": "1330723",
+      "name": "二维码",
+      "font_class": "erweima",
+      "unicode": "e745",
+      "unicode_decimal": 59205
+    },
+    {
       "icon_id": "1585356",
       "name": "默认头像",
       "font_class": "morentouxiang",

BIN
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.ttf


BIN
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.woff


BIN
unpackage/cache/wgt/__UNI__10C0A5F/static/fonts/iconfont.woff2


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 33 - 0
unpackage/cache/wgt/__UNI__10C0A5F/static/js/uqrcode.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/view.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/cache/wgt/__UNI__10C0A5F/view.umd.min.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/__uniappchooselocation.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1 - 2
unpackage/dist/build/app-plus/app-config-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/app-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/app-view.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/manifest.json


+ 118 - 3
unpackage/dist/build/app-plus/static/fonts/demo_index.html

@@ -55,6 +55,36 @@
           <ul class="icon_lists dib-box">
           
             <li class="dib">
+              <span class="icon iconfont">&#xe60a;</span>
+                <div class="name">订单</div>
+                <div class="code-name">&amp;#xe60a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe606;</span>
+                <div class="name">我的</div>
+                <div class="code-name">&amp;#xe606;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63a;</span>
+                <div class="name">首页</div>
+                <div class="code-name">&amp;#xe63a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe69d;</span>
+                <div class="name">调拨</div>
+                <div class="code-name">&amp;#xe69d;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe745;</span>
+                <div class="name">二维码</div>
+                <div class="code-name">&amp;#xe745;</div>
+              </li>
+          
+            <li class="dib">
               <span class="icon iconfont">&#xe822;</span>
                 <div class="name">默认头像</div>
                 <div class="code-name">&amp;#xe822;</div>
@@ -198,9 +228,9 @@
 <pre><code class="language-css"
 >@font-face {
   font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1710482073792') format('woff2'),
-       url('iconfont.woff?t=1710482073792') format('woff'),
-       url('iconfont.ttf?t=1710482073792') format('truetype');
+  src: url('iconfont.woff2?t=1721630616175') format('woff2'),
+       url('iconfont.woff?t=1721630616175') format('woff'),
+       url('iconfont.ttf?t=1721630616175') format('truetype');
 }
 </code></pre>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@@ -227,6 +257,51 @@
         <ul class="icon_lists dib-box">
           
           <li class="dib">
+            <span class="icon iconfont icon-dingdan2"></span>
+            <div class="name">
+              订单
+            </div>
+            <div class="code-name">.icon-dingdan2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-icon-test"></span>
+            <div class="name">
+              我的
+            </div>
+            <div class="code-name">.icon-icon-test
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-shouye1"></span>
+            <div class="name">
+              首页
+            </div>
+            <div class="code-name">.icon-shouye1
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-tiaobo"></span>
+            <div class="name">
+              调拨
+            </div>
+            <div class="code-name">.icon-tiaobo
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-erweima"></span>
+            <div class="name">
+              二维码
+            </div>
+            <div class="code-name">.icon-erweima
+            </div>
+          </li>
+          
+          <li class="dib">
             <span class="icon iconfont icon-morentouxiang"></span>
             <div class="name">
               默认头像
@@ -444,6 +519,46 @@
           
             <li class="dib">
                 <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-dingdan2"></use>
+                </svg>
+                <div class="name">订单</div>
+                <div class="code-name">#icon-dingdan2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-icon-test"></use>
+                </svg>
+                <div class="name">我的</div>
+                <div class="code-name">#icon-icon-test</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-shouye1"></use>
+                </svg>
+                <div class="name">首页</div>
+                <div class="code-name">#icon-shouye1</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-tiaobo"></use>
+                </svg>
+                <div class="name">调拨</div>
+                <div class="code-name">#icon-tiaobo</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-erweima"></use>
+                </svg>
+                <div class="name">二维码</div>
+                <div class="code-name">#icon-erweima</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
                   <use xlink:href="#icon-morentouxiang"></use>
                 </svg>
                 <div class="name">默认头像</div>

+ 23 - 3
unpackage/dist/build/app-plus/static/fonts/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4430625 */
-  src: url('@/static/fonts/iconfont.woff2?t=1710482073792') format('woff2'),
-       url('@/static/fonts/iconfont.woff?t=1710482073792') format('woff'),
-       url('@/static/fonts/iconfont.ttf?t=1710482073792') format('truetype');
+  src: url('@/static/fonts/iconfont.woff2?t=1721630616175') format('woff2'),
+       url('@/static/fonts/iconfont.woff?t=1721630616175') format('woff'),
+       url('@/static/fonts/iconfont.ttf?t=1721630616175') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,26 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-dingdan2:before {
+  content: "\e60a";
+}
+
+.icon-icon-test:before {
+  content: "\e606";
+}
+
+.icon-shouye1:before {
+  content: "\e63a";
+}
+
+.icon-tiaobo:before {
+  content: "\e69d";
+}
+
+.icon-erweima:before {
+  content: "\e745";
+}
+
 .icon-morentouxiang:before {
   content: "\e822";
 }

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/static/fonts/iconfont.js


+ 35 - 0
unpackage/dist/build/app-plus/static/fonts/iconfont.json

@@ -6,6 +6,41 @@
   "description": "",
   "glyphs": [
     {
+      "icon_id": "852293",
+      "name": "订单",
+      "font_class": "dingdan2",
+      "unicode": "e60a",
+      "unicode_decimal": 58890
+    },
+    {
+      "icon_id": "6647873",
+      "name": "我的",
+      "font_class": "icon-test",
+      "unicode": "e606",
+      "unicode_decimal": 58886
+    },
+    {
+      "icon_id": "23635942",
+      "name": "首页",
+      "font_class": "shouye1",
+      "unicode": "e63a",
+      "unicode_decimal": 58938
+    },
+    {
+      "icon_id": "10222328",
+      "name": "调拨",
+      "font_class": "tiaobo",
+      "unicode": "e69d",
+      "unicode_decimal": 59037
+    },
+    {
+      "icon_id": "1330723",
+      "name": "二维码",
+      "font_class": "erweima",
+      "unicode": "e745",
+      "unicode_decimal": 59205
+    },
+    {
       "icon_id": "1585356",
       "name": "默认头像",
       "font_class": "morentouxiang",

BIN
unpackage/dist/build/app-plus/static/fonts/iconfont.ttf


BIN
unpackage/dist/build/app-plus/static/fonts/iconfont.woff


BIN
unpackage/dist/build/app-plus/static/fonts/iconfont.woff2


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 33 - 0
unpackage/dist/build/app-plus/static/js/uqrcode.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/view.css


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/build/app-plus/view.umd.min.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/dev/app-plus/__uniappchooselocation.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 1
unpackage/dist/dev/app-plus/app-config-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/dev/app-plus/app-service.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 21 - 18
unpackage/dist/dev/app-plus/app-view.js


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/dev/app-plus/manifest.json


+ 72 - 3
unpackage/dist/dev/app-plus/static/fonts/demo_index.html

@@ -55,6 +55,24 @@
           <ul class="icon_lists dib-box">
           
             <li class="dib">
+              <span class="icon iconfont">&#xe60a;</span>
+                <div class="name">订单</div>
+                <div class="code-name">&amp;#xe60a;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe606;</span>
+                <div class="name">我的</div>
+                <div class="code-name">&amp;#xe606;</div>
+              </li>
+          
+            <li class="dib">
+              <span class="icon iconfont">&#xe63a;</span>
+                <div class="name">首页</div>
+                <div class="code-name">&amp;#xe63a;</div>
+              </li>
+          
+            <li class="dib">
               <span class="icon iconfont">&#xe69d;</span>
                 <div class="name">调拨</div>
                 <div class="code-name">&amp;#xe69d;</div>
@@ -210,9 +228,9 @@
 <pre><code class="language-css"
 >@font-face {
   font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1721114513553') format('woff2'),
-       url('iconfont.woff?t=1721114513553') format('woff'),
-       url('iconfont.ttf?t=1721114513553') format('truetype');
+  src: url('iconfont.woff2?t=1721630616175') format('woff2'),
+       url('iconfont.woff?t=1721630616175') format('woff'),
+       url('iconfont.ttf?t=1721630616175') format('truetype');
 }
 </code></pre>
           <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@@ -239,6 +257,33 @@
         <ul class="icon_lists dib-box">
           
           <li class="dib">
+            <span class="icon iconfont icon-dingdan2"></span>
+            <div class="name">
+              订单
+            </div>
+            <div class="code-name">.icon-dingdan2
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-icon-test"></span>
+            <div class="name">
+              我的
+            </div>
+            <div class="code-name">.icon-icon-test
+            </div>
+          </li>
+          
+          <li class="dib">
+            <span class="icon iconfont icon-shouye1"></span>
+            <div class="name">
+              首页
+            </div>
+            <div class="code-name">.icon-shouye1
+            </div>
+          </li>
+          
+          <li class="dib">
             <span class="icon iconfont icon-tiaobo"></span>
             <div class="name">
               调拨
@@ -474,6 +519,30 @@
           
             <li class="dib">
                 <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-dingdan2"></use>
+                </svg>
+                <div class="name">订单</div>
+                <div class="code-name">#icon-dingdan2</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-icon-test"></use>
+                </svg>
+                <div class="name">我的</div>
+                <div class="code-name">#icon-icon-test</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
+                  <use xlink:href="#icon-shouye1"></use>
+                </svg>
+                <div class="name">首页</div>
+                <div class="code-name">#icon-shouye1</div>
+            </li>
+          
+            <li class="dib">
+                <svg class="icon svg-icon" aria-hidden="true">
                   <use xlink:href="#icon-tiaobo"></use>
                 </svg>
                 <div class="name">调拨</div>

+ 15 - 3
unpackage/dist/dev/app-plus/static/fonts/iconfont.css

@@ -1,8 +1,8 @@
 @font-face {
   font-family: "iconfont"; /* Project id 4430625 */
-  src: url('@/static/fonts/iconfont.woff2?t=1721114513553') format('woff2'),
-       url('@/static/fonts/iconfont.woff?t=1721114513553') format('woff'),
-       url('@/static/fonts/iconfont.ttf?t=1721114513553') format('truetype');
+  src: url('@/static/fonts/iconfont.woff2?t=1721630616175') format('woff2'),
+       url('@/static/fonts/iconfont.woff?t=1721630616175') format('woff'),
+       url('@/static/fonts/iconfont.ttf?t=1721630616175') format('truetype');
 }
 
 .iconfont {
@@ -13,6 +13,18 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-dingdan2:before {
+  content: "\e60a";
+}
+
+.icon-icon-test:before {
+  content: "\e606";
+}
+
+.icon-shouye1:before {
+  content: "\e63a";
+}
+
 .icon-tiaobo:before {
   content: "\e69d";
 }

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 0
unpackage/dist/dev/app-plus/static/fonts/iconfont.js


+ 21 - 0
unpackage/dist/dev/app-plus/static/fonts/iconfont.json

@@ -6,6 +6,27 @@
   "description": "",
   "glyphs": [
     {
+      "icon_id": "852293",
+      "name": "订单",
+      "font_class": "dingdan2",
+      "unicode": "e60a",
+      "unicode_decimal": 58890
+    },
+    {
+      "icon_id": "6647873",
+      "name": "我的",
+      "font_class": "icon-test",
+      "unicode": "e606",
+      "unicode_decimal": 58886
+    },
+    {
+      "icon_id": "23635942",
+      "name": "首页",
+      "font_class": "shouye1",
+      "unicode": "e63a",
+      "unicode_decimal": 58938
+    },
+    {
       "icon_id": "10222328",
       "name": "调拨",
       "font_class": "tiaobo",

BIN
unpackage/dist/dev/app-plus/static/fonts/iconfont.ttf


BIN
unpackage/dist/dev/app-plus/static/fonts/iconfont.woff


BIN
unpackage/dist/dev/app-plus/static/fonts/iconfont.woff2


BIN
unpackage/release/apk/__UNI__10C0A5F__20240723104159.apk


BIN
unpackage/release/apk/__UNI__10C0A5F__20240723110556.apk


Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels