ysy 2 سال پیش
والد
کامیت
858f56e326
3فایلهای تغییر یافته به همراه260 افزوده شده و 8 حذف شده
  1. 8 0
      pages.json
  2. 203 0
      pages/pda/feeding/components/deviceBom.vue
  3. 49 8
      pages/pda/feeding/details.vue

+ 8 - 0
pages.json

@@ -1440,6 +1440,14 @@
 				"navigationBarTitleText" : "",
 				"enablePullDownRefresh" : false
 			}
+		},
+		{
+			"path" : "pages/pda/feeding/components/deviceBom",
+			"style" : 
+			{
+				"navigationBarTitleText" : "",
+				"enablePullDownRefresh" : false
+			}
 		}
 		
 

+ 203 - 0
pages/pda/feeding/components/deviceBom.vue

@@ -0,0 +1,203 @@
+<template>
+	<view>
+		<view class="title_box rx-bc">
+			<view class="name">设备信息</view>
+
+			<view class="btn_box rx-bc" @click="handleScan(item.workOrderId)">
+				<image class="scan" src="@/static/pda/ScanIt.svg"></image>
+				更换设备
+			</view>
+		</view>
+
+
+		<view class="material ">
+
+			<view class="content_table">
+				<view class="item">
+					<view class="lable rx-cc">设备编码</view>
+					<view class="content">
+						{{item.code}}
+					</view>
+				</view>
+
+				<view class="item">
+					<view class="lable rx-cc">设备名称</view>
+					<view class="content">{{ item.productCode }}</view>
+				</view>
+
+				<view class="item">
+					<view class="lable rx-cc">固资编码</view>
+					<view class="content">{{ item.produceRoutingName }}</view>
+				</view>
+
+	
+
+
+
+
+			</view>
+		</view>
+
+
+	</view>
+</template>
+
+<script>
+	export default {
+		props: {
+			item: {
+				type: Object,
+				default: () => {}
+			},
+		},
+		data() {
+			return {
+
+			}
+		},
+		methods: {
+			handleScan(id) {
+				this.$emit('handleScan', id, 'device')
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.title_box {
+		margin-top: 20rpx;
+		.name {
+			font-size: 28rpx;
+			font-style: normal;
+			font-weight: 400;
+			color: $theme-color;
+			padding-left: 20rpx;
+
+			position: relative;
+
+			&:before {
+				position: absolute;
+				content: '';
+				left: 0rpx;
+				top: 0rpx;
+				bottom: 0rpx;
+				width: 4rpx;
+				height: 28rpx;
+				background: $theme-color;
+				margin: auto;
+			}
+
+
+		}
+
+		.btn_box {
+			padding: 0 18rpx;
+			height: 60rpx;
+			background: $theme-color;
+			font-size: 26rpx;
+			font-style: normal;
+			font-weight: 400;
+			font-size: 24rpx;
+			color: #fff;
+			border-radius: 4rpx;
+
+			.scan {
+				width: 34rpx;
+				height: 34rpx;
+				margin-right: 12rpx;
+
+			}
+
+		}
+
+	}
+
+
+	.material {
+		margin-top: 10rpx;
+
+
+
+		.content_table {
+			width: 100%;
+			border: 2rpx solid $border-color;
+
+			.item {
+				display: flex;
+				border-bottom: 2rpx solid $border-color;
+
+
+				.lable {
+					width: 132rpx;
+					text-align: center;
+					background-color: #F7F9FA;
+					font-size: 26rpx;
+					border-right: 2rpx solid $border-color;
+					flex-shrink: 0;
+				}
+
+				.lable150 {
+					width: 156rpx !important;
+					font-size: 24rpx;
+				}
+
+				.ww80 {
+					width: 80rpx;
+				}
+
+				.content {
+					width: 518rpx;
+					min-height: 64rpx;
+					font-size: 28rpx;
+					line-height: 28rpx;
+					font-style: normal;
+					font-weight: 400;
+					padding: 18rpx 8rpx;
+					box-sizing: border-box;
+					word-wrap: break-word;
+					flex-grow: 1 !important;
+
+
+					.unit {
+						padding: 0 4rpx;
+						font-size: 24rpx;
+						color: #404446;
+					}
+
+				}
+
+				.content_num {
+					display: flex;
+					align-items: center;
+					padding: 0 4rpx;
+
+					/deep/ .uni-input-input {
+						border: 2rpx solid #F0F8F2;
+						background: #F0F8F2;
+						color: $theme-color;
+					}
+
+
+				}
+
+				.pd4 {
+					padding: 4rpx 8rpx;
+				}
+
+
+
+				&:last-child {
+					border-bottom: none;
+				}
+			}
+
+			.ww55 {
+				width: 55%;
+			}
+
+			.ww45 {
+				width: 45%;
+			}
+		}
+	}
+</style>

+ 49 - 8
pages/pda/feeding/details.vue

@@ -8,6 +8,13 @@
 
 				<view v-for="(item,index) in List" :key="index" class="card_box">
 					<workOrderBom :item='item' @handleScan='handleScan'></workOrderBom>
+					
+					<deviceBom :item='item'></deviceBom>
+					
+						<view class="operate_box rx-sc">
+							<u-button size="small" class="u-reset-button" type="success" >手动添加</u-button>
+							<u-button size="small" class="u-reset-button" type="success" >扫一扫</u-button>
+						</view>
 				</view>
 			</u-list>
 
@@ -25,6 +32,7 @@
 
 <script>
 	import workOrderBom from './components/workOrderBom.vue'
+	import deviceBom from './components/deviceBom.vue'
 	import {
 		workorderList,
 		getByCode
@@ -36,7 +44,8 @@
 
 	export default {
 		components: {
-			workOrderBom
+			workOrderBom,
+			deviceBom
 		},
 		data() {
 			return {
@@ -122,6 +131,9 @@
 				console.log(id)
 				console.log(type)
 
+				// this.scanData('SCJHGD20240117002', type, id)
+				// return false
+
 				let _this = this
 				uni.scanCode({
 					success: function(res) {
@@ -133,15 +145,37 @@
 			},
 
 			scanData(result, type, id) {
-				console.log(444)
-				getByCode(result).then(res => {
-					console.log(res)
-				})
-			}
 
-		},
+				if (type == 'wordOrder') {
+					let isFals = this.List.some(m => m.code == result)
+					if (isFals) {
+						uni.showToast({
+								title: '工单已存在',
+								icon: 'none'
+							})
+							return false
+						}
 
-	}
+						getByCode(result).then(res => {
+							let _arr = this.List
+							_arr.forEach((e, index) => {
+								if (e.workOrderId == id) {
+									_arr[index] = res
+								}
+							})
+
+							this.List = _arr
+							this.$forceUpdate()
+
+
+						})
+					}
+
+				}
+
+			},
+
+		}
 </script>
 
 <style lang="scss" scoped>
@@ -187,4 +221,11 @@
 			color: #fff;
 		}
 	}
+	
+		.operate_box{
+			padding: 10rpx 32rpx;
+			/deep/ .u-button{
+				width: 40%;
+			}
+		}
 </style>