ysy 1 ano atrás
pai
commit
d33e16a4a7

+ 2 - 2
pages/pda/common.js

@@ -83,7 +83,7 @@ export const tableHeader = selectEquiType => {
 					prop: 'shrinkEffictive',
 				},
 				{
-					label: '已压次数',
+					label: '已压次数',
 					prop: '',
 					formatter(row) {
 						return row.extInfo.startCyTimes || 0
@@ -91,7 +91,7 @@ export const tableHeader = selectEquiType => {
 				},
 
 				{
-					label: '最大压次数',
+					label: '最大压次数',
 					prop: '',
 					formatter(row) {
 						return row.extInfo.maxCyTimes

+ 385 - 389
pages/pda/feeding/components/deviceBom.vue

@@ -10,7 +10,7 @@
 		</view>
 
 
-		<view class="material rx-ss" v-for="(item,index) in list" :key='index'>
+		<view class="material rx-ss" v-for="(item, index) in list" :key='index'>
 			<view class="left rx-ss" @click="getDelete(index)" v-if='workOrderId'>
 				<uni-icons custom-prefix="iconfont" type="icon-shanchu" size="20" color="#fa3534"></uni-icons>
 			</view>
@@ -18,20 +18,20 @@
 				<view class="item">
 					<view class="lable rx-cc">工位名称</view>
 					<view class="content">
-						{{item.workstationName || (item.extInfo && item.extInfo.workstationName)}}
+						{{ item.workstationName || (item.extInfo && item.extInfo.workstationName) }}
 					</view>
 				</view>
 
 				<view class="item">
 					<view class="lable rx-cc">设备编码</view>
 					<view class="content">
-						{{ item.code  }}
+						{{ item.code }}
 					</view>
 				</view>
 
 				<view class="item">
 					<view class="lable rx-cc">设备名称</view>
-					<view class="content">{{ item.name  }}</view>
+					<view class="content">{{ item.name }}</view>
 				</view>
 
 
@@ -39,14 +39,14 @@
 				<view class="item rx-sc">
 					<view class="rx ww50">
 						<view class="lable  rx-cc">固资编码</view>
-						<view class="content">{{item.extInfo.fixCode }} </view>
+						<view class="content">{{ item.extInfo.fixCode }} </view>
 
 					</view>
 
 
 					<view class="rx ww50">
 						<view class="lable ww80 rx-cc">编号</view>
-						<view class="content">{{item.extInfo.codeNumber}}</view>
+						<view class="content">{{ item.extInfo.codeNumber }}</view>
 					</view>
 
 				</view>
@@ -60,7 +60,7 @@
 					</view>
 
 					<view v-if="clientEnvironmentId == 2" class="lable rx-cc"
-						:style="Object.prototype.hasOwnProperty.call(item.extInfo, 'positionList') && item.extInfo.positionList.length > 0 ? 'color: #E6A23C' : 'color: #157A2C'"
+						:style="Object.prototype.hasOwnProperty.call(item.extInfo, 'turnoverList') && item.extInfo.turnoverList.length > 0 ? 'color: #E6A23C' : 'color: #157A2C'"
 						@click="handleStorage(index)">货位</view>
 
 				</view>
@@ -72,69 +72,88 @@
 
 		<SearchPopup mode="center" v-if='popupShow'>
 			<template v-slot:list>
-				<view class="search_list">
-					<u-form labelPosition="left" :model="formData" labelWidth="90" labelAlign="left" class="baseForm">
 
-						<u-form-item label="层数:" class="required-form" borderBottom prop="levelNum">
-							<u-input v-model="formData.levelNum" :disabled="!ishuoWei" placeholder="请输入">
-							</u-input>
-						</u-form-item>
 
-						<u-form-item label="列数:" class="required-form" borderBottom prop="lineNum">
-							<u-input v-model="formData.lineNum" :disabled="!ishuoWei" placeholder="请输入">
-							</u-input>
-						</u-form-item>
+				<view class="tab_box">
+					<view class="tab_item" :style="tabAct == idxx ? 'color: #E6A23C' : ''"
+						v-for="(idItem, idxx) in turnoverList" :key="idxx" @click="handTab(idxx)">
+						{{ idItem.name }}{{ idxx + 1 }}
+						<uni-icons style="margin-left: 10rpx;" custom-prefix="iconfont" @click.native="handDel(idxx)"
+							type="icon-shanchu" size="16" color="#fa3534"></uni-icons>
+					</view>
 
-						<view class="rx-bs" style="margin-top: 6rpx;" v-if="ishuoWei">
-							<u-button size="small" style="width: 260rpx" type="success" @click="handleHjCode()">
-								自动生成
-							</u-button>
+					<view class="tab_add" @click="handTabAdd()">新增</view>
+				</view>
 
+				<view v-for="(idItem, idxx) in turnoverList" :key="idxx" v-show="tabAct == idxx">
 
-							<u-button size="small" style="width: 260rpx" type="success" @click="addHjCode()">
-								添加货位
-							</u-button>
-						</view>
 
-					</u-form>
-				</view>
 
-				<view class="content_table2">
-					<view class="head row rx-sc">
-						<view class="item ww30">货位</view>
-						<view class="item ww40">数量</view>
-						<view class="item ww30">操作</view>
 
-					</view>
-					<view class="table">
-						<u-list @scrolltolower="scrolltolower" class="z_list">
-							<view class="tr row rx-sc" v-for="(it, idx) in list[listIndex].extInfo.positionList"
-								:key='idx'>
-								<view class="item ww30 content content_num">
+					<view class="search_list">
+						<u-form labelPosition="left" :model="idItem" labelWidth="160" labelAlign="left"
+							class="baseForm">
 
-									<input class="uni-input" :disabled="!ishuoWei" v-model="it.code"></input>
+							<u-form-item label="周转车:" class="required-form" borderBottom prop="">
+								<zxz-uni-data-select :localdata="turnover" v-model="idItem.turnoverId" dataValue='id'
+									format='{name}-{code}' dataKey="id" filterable :clear='false'
+									@change="e => changeTurnover(e, idxx)"></zxz-uni-data-select>
+							</u-form-item>
+							<view class="rx-bs" style="margin-top: 6rpx;" v-if="ishuoWei">
 
-								</view>
+							</view>
 
-								<view class="item ww40 content content_num">
-									<input class="uni-input" :disabled="!ishuoWei" v-model="it.num"></input>
+						</u-form>
+					</view>
 
+					<view class="content_table2">
+						<view class="head row rx-sc">
+							<view class="item ww10">货位</view>
+							<view class="item ww25">工单编号</view>
+							<view class="item ww25">产品编码</view>
+							<view class="item ww20">数量</view>
+							<view class="item ww20">投料</view>
+
+						</view>
+						<view class="table">
+							<u-list @scrolltolower="scrolltolower" class="z_list">
+								<view class="tr row rx-sc" v-for="(it, idx) in idItem.positionList" :key='idx'>
+									<view class="tr row rx-sc">
+										<view class="item ww10">
+											{{ it.code }}
+										</view>
+										<view class="item ww25 " :class="{'color157': it.workOrderCode === wordItem.code}">
+											{{ it.workOrderCode }}
+										</view>
+										<view class="item ww25 " :class="{'color157': it.workOrderCode === wordItem.code}">
+											{{ it.categoryCode }}
+										</view>
+
+										<view class="item ww20 ">
+											<text>{{ it.quantity }} </text>
+										</view>
+
+										<view class="item ww20">
+											<input :class="['uni-input', wordItem.code == it.workOrderCode && it.quantity > 0 ? 'content_num' : '']"
+												v-model="it.feedNum" type="digit" :disabled="it.quantity <= 0 || wordItem.code != it.workOrderCode "
+												@blur="Number(it.feedNum) > Number(it.quantity) ? it.feedNum = Number(it.quantity) : ''"></input>
+										</view>
+
+									</view>
 								</view>
 
+							</u-list>
 
-								<view class="ww30 rx-cc" @click="removeGoods(idx)" >
-									<uni-icons custom-prefix="iconfont"  v-if="ishuoWei" type="icon-shanchu" size="20"
-										color="#fa3534"></uni-icons>
-								</view>
-							</view>
+						</view>
 
-						</u-list>
 
 					</view>
 
-
 				</view>
 
+
+
+
 			</template>
 
 			<template v-slot:operate>
@@ -158,474 +177,451 @@
 </template>
 
 <script>
-	import SearchPopup from '../../components/searchPopup.vue'
-	export default {
-		components: {
-			SearchPopup
+import SearchPopup from '../../components/searchPopup.vue'
+export default {
+	components: {
+		SearchPopup
+	},
+	props: {
+		workOrderId: {
+			type: String,
+			default: ''
+		},
+		list: {
+			type: Array,
+			default: () => []
 		},
-		props: {
-			workOrderId: {
-				type: String,
-				default: ''
-			},
-			list: {
-				type: Array,
-				default: () => []
-			},
-			
-			ishuoWei: {
-				type: Boolean,
-				default: true
-			}
-
 
+		ishuoWei: {
+			type: Boolean,
+			default: true
 		},
-		data() {
-			return {
-				popupShow: false,
-				formData: {
-					levelNum: null,
-					lineNum: null,
-					type: 3,
-					code: 'A'
-				},
-				listIndex: null,
-				clientEnvironmentId: uni.getStorageSync("userInfo") && uni.getStorageSync("userInfo").clientEnvironmentId
-			}
+		wordItem: {
+			type: Object,
+			default: () => { }
 		},
-		methods: {
-			handleScan(id) {
-				this.$emit('scanIt', id, )
-			},
-
-			getDelete(idx) {
-				this.list.splice(idx, 1)
-			},
-
-			handleStorage(idx) {
-				this.listIndex = idx || 0
-				this.formData.lineNum = this.list[this.listIndex].extInfo.lineNum || null
-				this.formData.levelNum = this.list[this.listIndex].extInfo.levelNum || null
-
-				this.popupShow = true
 
-			},
+		turnover: {
+			type: Array,
+			default: () => []
+		}
 
-			handleHjCode() {
-				if (!this.formData.levelNum) {
 
-					uni.showToast({
-						title: `请输入层数`,
-						icon: 'none'
-					})
-					return false
-				}
 
-				if (!this.formData.lineNum) {
-					uni.showToast({
-						title: `请输入列数`,
-						icon: 'none'
-					})
-					return false
-				}
-				this.handleMine()
+	},
+	data() {
+		return {
+			popupShow: false,
+			formData: {
+				turnoverId: null
 			},
+			listIndex: null,
+			clientEnvironmentId: uni.getStorageSync("userInfo") && uni.getStorageSync("userInfo").clientEnvironmentId,
 
+			turnoverList: [{
+				name: '周转车',
+				turnoverId: '',
+				turnoverName: '',
+				positionList: []
+			}],
 
-			handleMine() {
-
-				const ruleName = this.formData.code;
-				let preCode = 0;
-				let codeEng = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
-				let currentLetterIndex = 0;
-				let positionList = []
-
-				if (ruleName.length > 0) {
-					// 计算初始索引
-					let multiplier = Math.pow(codeEng.length, ruleName.length - 1);
-					for (let i = 0; i < ruleName.length; i++) {
-						currentLetterIndex +=
-							(codeEng.indexOf(ruleName[i]) + 1) * multiplier;
-						multiplier /= codeEng.length;
-					}
-				}
-
-
-				if (this.formData.type == 3) {
-					for (let i = 0; i < this.formData.lineNum; i++) {
-						// 获取当前字母
-						let index = currentLetterIndex;
-						let dividend = codeEng.length;
-						let remainder;
-						let quotient;
-						let code = '';
+			tabAct: 0
 
 
-						while (index > 0) {
-							remainder = index % dividend;
-							quotient = Math.floor(index / dividend);
 
-							if (remainder === 0) {
-								remainder = codeEng.length;
-								quotient--;
-							}
-							code = codeEng[remainder - 1] + code;
-							index = quotient;
-						}
 
-						for (let j = 0; j < this.formData.levelNum; j++) {
-							let obj1111 = {
-								code: code + (j + 1),
-
-							};
-
-							positionList.push(obj1111)
-
-
-
-						}
-						console.log(positionList)
-						this.$set(this.list[this.listIndex].extInfo, 'positionList', positionList)
-						this.$set(this.list[this.listIndex].extInfo, 'lineNum', this.formData.lineNum)
-						this.$set(this.list[this.listIndex].extInfo, 'levelNum', this.formData.levelNum)
-						this.$forceUpdate()
-
-						currentLetterIndex++; // 自增索引
-
-					}
+		}
+	},
+	created() {
 
-				} else {
-					let num = Number(this.form.levelNum) * Number(this.form.lineNum)
+	},
+	methods: {
+		handleScan(id) {
+			this.$emit('scanIt', id,)
+		},
 
+		getDelete(idx) {
+			this.list.splice(idx, 1)
+		},
 
-					for (let i = 0; i < num; i++) {
-						// 获取当前字母
-						let index = currentLetterIndex;
-						let dividend = codeEng.length;
-						let remainder;
-						let quotient;
-						let code = '';
+		handleStorage(idx) {
+			this.listIndex = idx || 0
+			this.popupShow = true
 
 
-						while (index > 0) {
-							remainder = index % dividend;
-							quotient = Math.floor(index / dividend);
+		},
 
-							if (remainder === 0) {
-								remainder = codeEng.length;
-								quotient--;
-							}
-							code = codeEng[remainder - 1] + code;
-							index = quotient;
-						}
 
 
 
 
-						let obj1111 = {
-							code: this.formData.type === 1 ? code : ruleName + (i + 1),
+		handleClose() {
+			this.list[this.listIndex].extInfo.turnoverList = []
+			this.popupShow = false
+			this.listIndex = 0
 
-						};
-						positionList.push(obj1111)
 
 
+		},
 
-						currentLetterIndex++; // 自增索引
+		handleOk() {
+			this.listIndex = 0
+			this.$set(this.list[this.listIndex].extInfo, 'turnoverList', this.turnoverList)
+			this.popupShow = false
+		},
 
-					}
-				}
 
+		scrolltolower() { },
 
 
-			},
+		changeTurnover(e, idxx) {
 
-			removeGoods(idx) {
-				if (this.list[this.listIndex].extInfo.positionList == 1) {
-					uni.showToast({
-						title: `至少保留一个货架!`,
-						icon: 'none'
-					})
-					return false
-				}
 
 
-				this.list[this.listIndex].extInfo && this.list[this.listIndex].extInfo.positionList.splice(idx, 1)
+			let _arr = e.extInfo.positionList || []
+			console.log(_arr)
 
+			let isFalse = _arr.some(it => {
+				return it.workOrderCode == this.wordItem.code && it.categoryCode == this.wordItem
+					.productCode && it.quantity > 0
+			})
+			if (!isFalse) {
+				uni.showToast({
+					title: "该周转车没有此工单",
+					icon: "none",
+				})
+				this.$set(this.turnoverList[idxx], 'turnoverId', '')
+				this.$set(this.turnoverList[idxx], 'turnoverName', '')
+				this.$set(this.turnoverList[idxx], 'positionList', [])
 
-			},
+				return false
+			}
 
-			handleClose() {
+			this.$set(this.turnoverList[idxx], 'turnoverName', e.name + '-' + e.code)
+			this.$set(this.turnoverList[idxx], 'positionList', e.extInfo.positionList)
+			this.$forceUpdate()
 
-				this.list[this.listIndex].extInfo.positionList = []
-				this.list[this.listIndex].extInfo.lineNum = null
-				this.list[this.listIndex].extInfo.levelNum = null
+		},
 
-				this.popupShow = false
-				this.formData.levelNum = null
-				this.formData.lineNum = null
-				this.listIndex = 0
+		handTabAdd() {
+			if (this.turnover.length <= this.turnoverList.length) {
+				uni.showToast({
+					title: "超过最大周转车数",
+					icon: "none",
+				})
+				return false
+			}
 
+			this.turnoverList.push({
+				name: '周转车',
+				turnoverId: '',
+				turnoverName: '',
+				positionList: []
+			})
 
+			console.log(this.list[this.listIndex].extInfo)
+			this.$forceUpdate()
 
-			},
+		},
 
-			handleOk() {
-				this.listIndex = 0
-				this.popupShow = false
-			},
+		handTab(idxx) {
+			this.tabAct = idxx
+		},
 
-			addHjCode() {
-				this.list[this.listIndex].extInfo.positionList.unshift({
-					code: ''
+		handDel(idx) {
+			if(this.turnoverList.length <= 1) {
+				uni.showToast({
+					title: "最少需要一个周转车",
+					icon: "none",
 				})
-				this.$forceUpdate()
-			},
-
-			scrolltolower() {},
+				return
+			}
+			this.turnoverList.splice(idx, 1)
 		}
 	}
+}
 </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;
-			}
-
-
+.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;
+	}
 
-			}
+	.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;
 
+.material {
+	margin-top: 10rpx;
 
 
-		.content_table {
-			width: 680rpx;
-			border: 2rpx solid $border-color;
-			margin-bottom: 10rpx;
 
-			.item {
-				display: flex;
-				border-bottom: 2rpx solid $border-color;
+	.content_table {
+		width: 680rpx;
+		border: 2rpx solid $border-color;
+		margin-bottom: 10rpx;
 
+		.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;
-				}
+			.lable {
+				width: 132rpx;
+				text-align: center;
+				background-color: #F7F9FA;
+				font-size: 26rpx;
+				border-right: 2rpx solid $border-color;
+				flex-shrink: 0;
+			}
 
-				.ww80 {
-					width: 80rpx;
-				}
+			.lable150 {
+				width: 156rpx !important;
+				font-size: 24rpx;
+			}
 
-				.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;
-					}
+			.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;
 
 
-				.pd4 {
-					padding: 4rpx 8rpx;
+				.unit {
+					padding: 0 4rpx;
+					font-size: 24rpx;
+					color: #404446;
 				}
 
-
-
-				&:last-child {
-					border-bottom: none;
-				}
 			}
 
-			.ww50 {
-				width: 50%;
 
+			.pd4 {
+				padding: 4rpx 8rpx;
 			}
 
-			.ww55 {
-				width: 55%;
-			}
 
-			.ww45 {
-				width: 45%;
+
+			&:last-child {
+				border-bottom: none;
 			}
 		}
-	}
 
+		.ww50 {
+			width: 50%;
 
+		}
 
-	.search_list {
-		min-height: 100rpx;
-		width: 96vw;
-		padding: 0 8rpx;
+		.ww55 {
+			width: 55%;
+		}
 
-		/deep/ .u-form-item__body {
-			padding: 6rpx 0rpx !important;
+		.ww45 {
+			width: 45%;
 		}
+	}
+}
+
+
 
+.search_list {
+	min-height: 100rpx;
+	width: 96vw;
+	padding: 0 8rpx;
+
+	/deep/ .u-form-item__body {
+		padding: 6rpx 0rpx !important;
 	}
 
+}
+
+
 
 
+.content_table2 {
+	width: 100%;
+	margin-top: 6rpx;
 
-	.content_table2 {
+	.row {
 		width: 100%;
-		margin-top: 6rpx;
 
-		.row {
-			width: 100%;
 
+		.item {
 
-			.item {
+			color: #404446;
+			font-size: 28rpx;
+			padding-left: 12rpx;
+			padding-right: 6rpx;
 
-				color: #404446;
-				font-size: 28rpx;
-				padding-left: 12rpx;
-				padding-right: 6rpx;
+		}
 
-			}
+		.color157 {
+			color: $theme-color;
+		}
 
-			.color157 {
-				color: $theme-color;
-			}
 
-			.ww40 {
-				width: 40%;
-			}
+		.ww20 {
+			width: 20%;
+		}
 
-			.ww30 {
-				width: 30%;
-			}
+		.ww25 {
+			width: 25%;
+		}
 
 
 
+		.ww35 {
+			width: 35%;
 
 		}
 
-		.head {
+		.ww10 {
+			width: 10%;
+		}
+
+
+
+	}
+
+	.head {
+		height: 64rpx;
+		background: #F7F9FA;
+		border-top: 2rpx solid #E3E5E5;
+		border-left: 2rpx solid #E3E5E5;
+		box-sizing: border-box;
+
+		.item {
 			height: 64rpx;
-			background: #F7F9FA;
-			border-top: 2rpx solid #E3E5E5;
-			border-left: 2rpx solid #E3E5E5;
+			line-height: 64rpx;
+			border-right: 2rpx solid #E3E5E5;
 			box-sizing: border-box;
-
-			.item {
-				height: 64rpx;
-				line-height: 64rpx;
-				border-right: 2rpx solid #E3E5E5;
-				box-sizing: border-box;
-				font-size: 24rpx;
-			}
+			font-size: 24rpx;
 		}
+	}
 
 
 
-		.tr {
-			border-top: 2rpx solid #E3E5E5;
-			border-left: 2rpx solid #E3E5E5;
-			box-sizing: border-box;
+	.tr {
+		border-top: 2rpx solid #E3E5E5;
+		border-left: 2rpx solid #E3E5E5;
+		box-sizing: border-box;
 
-			.item {
-				font-size: 24rpx;
-				min-height: 64rpx;
-				display: flex;
-				align-items: center;
-				border-right: 2rpx solid #E3E5E5;
-				box-sizing: border-box;
-				white-space: normal;
-				word-break: break-all;
+		.item {
+			font-size: 24rpx;
+			min-height: 64rpx;
+			display: flex;
+			align-items: center;
+			border-right: 2rpx solid #E3E5E5;
+			box-sizing: border-box;
+			white-space: normal;
+			word-break: break-all;
 
-			}
+		}
 
-			&:last-child {
-				border-bottom: 2rpx solid #E3E5E5;
+		&:last-child {
+			border-bottom: 2rpx solid #E3E5E5;
 
-			}
 		}
 	}
+}
 
 
-	.z_list {
-		max-height: 500rpx;
+.z_list {
+	max-height: 500rpx;
+}
+
+.content_num {
+	display: flex;
+	align-items: center;
+	padding: 0 4rpx;
+
+	/deep/ .uni-input-input {
+		border: 2rpx solid #F0F8F2;
+		background: #F0F8F2;
+		color: $theme-color;
 	}
 
-	.content_num {
-		display: flex;
-		align-items: center;
-		padding: 0 4rpx;
 
-		/deep/ .uni-input-input {
-			border: 2rpx solid #F0F8F2;
-			background: #F0F8F2;
-			color: $theme-color;
-		}
+}
 
 
+.tab_box {
+	margin-top: 14rpx;
+	margin-left: 8rpx;
+	display: flex;
+	align-items: center;
+
+	.tab_item {
+		display: flex;
+		padding: 0 6rpx;
+		height: 48rpx;
+		line-height: 48rpx;
+		width: 128rpx;
+		text-align: center;
+		background: #157A2C;
+		font-style: normal;
+		font-weight: 400;
+		font-size: 24rpx;
+		color: #fff;
+		border-radius: 4rpx;
+		margin-right: 8rpx;
+	}
+
+	.tab_add {
+		color: #157A2C;
+		font-size: 34rpx;
 	}
+}
 </style>

+ 2 - 2
pages/pda/feeding/components/feedBom.js

@@ -42,7 +42,7 @@ export const tableHeader = selectEquiType => {
 
 
 				{
-					label: '已压次数',
+					label: '已压次数',
 					prop: 'startCyTimes',
 					write: false,
 					extInfo: true
@@ -51,7 +51,7 @@ export const tableHeader = selectEquiType => {
 
 
 				{
-					label: '最大压次数',
+					label: '最大压次数',
 					prop: 'maxCyTimes',
 					write: false,
 					extInfo: true

+ 1 - 1
pages/pda/feeding/components/modelBom.vue

@@ -43,7 +43,7 @@
 
 				</view>
 
-				<view class="item">
+				<view class="item" v-if="pattern != 'feed'">
 					<view class="lable lable240 rx-sc">本次冲压数 </view>
 					<view class="content content_num">
 						<input class="uni-input" v-model="item.extInfo.cyTimes" type='digit'></input>

+ 4 - 3
pages/pda/feeding/details.vue

@@ -13,8 +13,8 @@
 					<paramBom v-if='item.paramDetailList.length != 0' :list='item.paramDetailList'></paramBom>
 
 
-					<deviceBom v-if='item.equipmentList.length != 0' :workOrderId='item.workOrderId'
-						:list='item.equipmentList' @scanIt='scanIt'></deviceBom>
+					<deviceBom v-if='item.equipmentList.length != 0' :workOrderId='item.workOrderId' :wordItem='item'
+						:list='item.equipmentList' :turnover="item.turnover" @scanIt='scanIt'></deviceBom>
 
 
 					<productsBom v-if="item.product != null && item.product != '{}'" :itemObj="item"
@@ -22,7 +22,7 @@
 					</productsBom>
 
 					<modelBom v-if='item.modelList.length != 0' :workOrderId='item.workOrderId' :list='item.modelList'
-						@scanIt='scanIt'>
+						@scanIt='scanIt'  :pattern="'feed'">
 					</modelBom>
 
 					<instanceBom v-if='item.instanceList.length != 0' :workOrderId='item.workOrderId'
@@ -647,6 +647,7 @@
 								f['instanceList'] = o.instanceList || []
 								f['revolvingDiskList'] = o.revolvingDiskList || []
 								f['semiProductList'] = o.semiProductList || []
+								f['turnover'] = o.turnover || []
 								this.$forceUpdate()
 							}
 						})

+ 5 - 3
pages/pda/jobBooking/components/jobBom.vue

@@ -201,8 +201,7 @@
 
 			blurNum() {
 
-				let total = Number(this.item.workReportInfo.formedNum) + Number(this.notFormedList[0].notFormedNum)
-				this.$emit('modeNum', total)
+		
 
 
 				if (this.item.product[0] && this.item.product[0].feedQuantity > 0 && Number(this.item.workReportInfo
@@ -226,7 +225,9 @@
 
 				this.$set(this.item.workReportInfo, 'formedWeight', weight)
 
-
+	         	let total = Number(this.item.workReportInfo.formedNum) + Number(this.notFormedList[0].notFormedNum)
+				this.$emit('modeNum', total)
+		
 				this.$forceUpdate()
 
 			},
@@ -272,6 +273,7 @@
 			changeNum() {
 				
 				let total = Number(this.item.workReportInfo.formedNum) + Number(this.notFormedList[0].notFormedNum)
+			
 				this.$emit('modeNum', total)
 				
 				this.notForme()

+ 2 - 2
pages/pda/picking/bill/components/outCommon.js

@@ -34,14 +34,14 @@ export const tableHeader = selectEquiType => {
 				},
 
 				{
-					label: '已压次数',
+					label: '已压次数',
 					prop: '',
 					formatter(row) {
 						return row.extInfo.startCyTimes || 0
 					}
 				},
 				{
-					label: '最大压次数',
+					label: '最大压次数',
 					prop: '',
 					formatter(row) {
 						return row.extInfo.maxCyTimes

+ 2 - 2
pages/pda/picking/components/pickBom.js

@@ -24,7 +24,7 @@ export const tableHeader = selectEquiType => {
 				},
 
 				// {
-				// 	label: '已压次数',
+				// 	label: '已压次数',
 				// 	prop: 'startCyTimes',
 				// 	write: false,
 				// 	extInfo: true
@@ -32,7 +32,7 @@ export const tableHeader = selectEquiType => {
 
 
 				{
-					label: '最大压次数',
+					label: '最大压次数',
 					prop: 'maxCyTimes',
 					write: false,
 					extInfo: true

+ 13 - 3
pages/pda/workOrder/extrusionMolding/index.vue

@@ -113,14 +113,19 @@
 			<u-list @scrolltolower="scrolltolower" key="detail" v-if="tabType == 2">
 
 				<view v-for="(item,index) in produceList" :key="index" class="detail-list">
-					<view class="name">{{item.taskName}}</view>
+					<view class="name">{{item.taskName}}  <text v-if="index == 0"  style="color: #157A2C; font-size: 32rpx;"> (首工序)</text> </view>
 					<view class="list rx-bc" @click="handDetails(item)">
 						<view class="title rx-sc" >
 							<image class="icon" src="~@/static/pda/layers.svg"></image>
 							待投料数量
 						</view>
 
-						<view class="rx-ec">
+	                    <view class="rx-ec"  v-if="item.firstTaskDetails.length > 0">
+							 <text style="color: #157A2C; font-size: 24rpx;"> 明细</text>
+							<image class="arrow_right2" src="~@/static/pda/arrow_right2.svg"></image>
+						</view>
+						
+						<view class="rx-ec" v-else>
 							{{item.waitFeedNum}}
 							<image class="arrow_right2" src="~@/static/pda/arrow_right2.svg"></image>
 						</view>
@@ -131,8 +136,13 @@
 							<image class="icon" src="~@/static/pda/check-square.svg"></image>
 							已投料数量
 						</view>
+						
+						<view class="rx-ec"  v-if="item.firstTaskDetails.length > 0">
+							 <text style="color: #157A2C; font-size: 24rpx;"> 明细</text>
+							<image class="arrow_right2" src="~@/static/pda/arrow_right2.svg"></image>
+						</view>
 
-						<view class="rx-ec">
+						<view class="rx-ec" v-else>
 							{{item.feedNum}}
 							<image class="arrow_right2" src="~@/static/pda/arrow_right2.svg"></image>
 						</view>