<template>
	<view>
		<view class="title_box rx-bc">
			<view class="name">报工信息</view>


		</view>


		<view class="material ">


			<view class="content_table">

				<view class="item rx-sc">
					<view class="rx ww55 ">
						<view class="lable lable150 rx-cc ">要求生产数量</view>
						<view class="content rx-sc">
							<view>{{item.formingNum}}</view>
							<view class="unit">{{item.unit}}</view>
						</view>
					</view>

					<view class="rx ww45">
						<view class="lable rx-cc ww80">重量</view>
						<view class="content content_num">
							<view>{{item.formingWeight}}</view>
							<view class="unit">{{item.weightUnit}}</view>

						</view>
					</view>

				</view>


				<view class="item rx-sc">
					<view class="rx ww55 ">
						<view class="lable lable150 rx-cc ">合格品数量</view>
						<view class="content content_num">
							<input class="uni-input" v-model="item.workReportInfo.formedNum" @blur="blurNum" type="digit"></input>
							<view class="unit">{{item.unit}}</view>
						</view>
					</view>

					<view class="rx ww45">
						<view class="lable rx-cc ww80">重量</view>
						<view class="content content_num">
							<input class="uni-input" v-model="item.workReportInfo.formedWeight" type="digit"></input>
							<view class="unit">{{item.weightUnit}}</view>
						</view>
					</view>

				</view>




				<view class="item rx-sc" v-for="(not,notIndex) in notFormedList" :key='notIndex'>
					
					<view class="rx ww55 ">
					
						<view class="lable lable150 rx-cc ">不合格数量</view>
						<view class="content content_num">
							<input class="uni-input" v-model="not.notFormedNum" type="digit" @blur="blurNum"></input>
							<view class="unit">{{item.unit}}</view>
						</view>
					</view>
                    
					<view class="rx ww45">
						<view class="lable rx-cc ww80">重量</view>
						<view class="content content_num">
							<input class="uni-input" v-model="not.notFormedWeight" type="digit"></input>
							<view class="unit">{{item.weightUnit}}</view>
							
							<view class="penalize" v-if='!isDetails'  :style="{ color: not.warehouseId ? 'rgb(255 170 42)' : ''}"  @click="penalize">处置</view>
							<view class="penalize" v-if='isDetails'  :style="{ color: not.warehouseId ? 'rgb(255 170 42)' : ''}"  @click="handleView(item.warehouseName)">查看</view>
						</view>
					</view>

				</view>









			</view>

			<view class='content_table' v-for="(item,index) in palletList" :key='index'>
				<view class="item" @click="handleType">
					<view class="lable rx-cc">舟皿类型</view>
					<view class="content content_num">
						<input class="uni-input" v-model="item.categoryLevelName"></input>
					</view>
				</view>



				<view class="item">
					<view class="lable rx-cc">舟皿名称</view>
					<view class="content ">
						<zxz-uni-data-select :localdata="boatList" v-model="item.categoryId" dataValue='id'
							format='{name}-{code}'  dataKey="code" filterable :clear='false' @change='inputChange'></zxz-uni-data-select>
					</view>
				</view>

				<view class="item">
					<view class="lable rx-cc">舟皿型号</view>
					<view class="content">
						{{item.modelType}}
					</view>
				</view>

				<view class="item">
					<view class="lable rx-cc">舟皿数量</view>
					<view class="content content_num">
						<input class="uni-input" v-model="item.quantity" type='digit'></input>
					</view>
				</view>

			</view>

		</view>

		<ba-tree-picker ref="treePicker" key="verify" :multiple="false" @select-change="confirm" title="选择分类"
			:localdata="classificationList" valueKey="id" textKey="name" childrenKey="children" />

	</view>
</template>

<script>
	import baTreePicker from '@/components/ba-tree-picker/ba-tree-picker.vue'
	import {
		treeByPid,
		pageeLedgerMain,
		assetPage
	} from '@/api/pda/workOrder.js'
import { number } from 'echarts'
	export default {
		props: {
			item: {
				type: Object,
				default: () => {}
			},
			notFormed: {
				type: Array,
				default: () => []
			},
			isDetails: {
				type: Boolean,
				default: false
			},

			palletList: {
				type: Array,
				default: () => []
			}

		},
		
		watch: {
		
			notFormed: {
				immediate: true,
				deep: true,
				handler(newVal) {
					console.log(newVal)
					this.notFormedList = newVal
				
				}
			}
		},
		
		
		data() {
			return {
				classificationList: [],
				boatList: [],
				
				notFormedList: []

			}
		},
		created() {


			this.getTreeList()
		},
		methods: {

			getTreeList() {
				let params = {
					ids: [8]
				}
				treeByPid(params).then(res => {
					this.classificationList = res

				})
			},

			confirm(id, name, rootCategoryLevelId) {
				this.$set(this.palletList[0], 'categoryLevelId', id[0])
				this.$set(this.palletList[0], 'categoryLevelName', name)
				this.$set(this.palletList[0], 'rootCategoryLevelId', rootCategoryLevelId)




				let param = {
					categoryLevelId: id,
					pageNum: 1,
					size: -1,
				}
				assetPage(param).then(res => {
					this.boatList = res.list
				})
			},

			inputChange(e) {
				this.$set(this.palletList[0], 'categoryId', e.id)
				this.$set(this.palletList[0], 'code', e.code)
				this.$set(this.palletList[0], 'name', e.name)
				this.$set(this.palletList[0], 'specification', e.specification)
				this.$set(this.palletList[0], 'categoryId', e.id)
				this.$set(this.palletList[0], 'brandNum', e.brandNum)
				this.$set(this.palletList[0], 'modelType', e.modelType)
				this.$set(this.palletList[0], 'quantity', e.quantity)
				this.$set(this.palletList[0], 'unit', e.unit)
				this.$forceUpdate()



			},

			handleType() {
				this.$refs.treePicker._show()
			},
			
			penalize() {
				this.$emit('penalize', null)
			},
			
			handleView(name) {
				uni.showToast({
					icon: 'none',
					title: name || '未设置'
				})
			},
			
			blurNum() {
				let total = Number(this.item.workReportInfo.formedNum) + Number(this.notFormedList[0].notFormedNum)
				this.$emit('modeNum', total)
			},
		}
	}
</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;
			}


		}



	}


	.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;
					}

					.penalize {
						width: 160rpx;
						line-height: 60rpx;
						background: $theme-color;
						font-size: 24rpx;
						text-align: center;
						color: #fff;
					}

				}

				.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>