From f26f29d84e0a68831a6af14dab3eec5500496d2e Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 28 五月 2025 16:48:52 +0800
Subject: [PATCH] 初始化项目

---
 pages/product/pick/materialNeed.vue |  179 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 179 insertions(+), 0 deletions(-)

diff --git a/pages/product/pick/materialNeed.vue b/pages/product/pick/materialNeed.vue
new file mode 100644
index 0000000..62746ed
--- /dev/null
+++ b/pages/product/pick/materialNeed.vue
@@ -0,0 +1,179 @@
+<template>
+	<view class="wrap">
+		<scroll-view class="scroll-list material-need-scan-record" scroll-y="true">
+			<u-cell-group class="list material-need-scan-record-cell" :border="false">
+				<u-card :title="item.partName" :sub-title="item.partNo" v-for="(item, index) in materialNeedList" :key="item.id"
+					:index="item.id" :showHead="showCardHead" @click="materialNeedCardClick(item)" :bodyStyle="item.selected?bodyStyle:{}">
+					<view slot="body">
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">闆朵欢鍙�</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.partNo}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">闆朵欢鎻忚堪</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.partDesc}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">闇�姹傛暟閲�</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.demandQuantity}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">绉诲簱鏁伴噺</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.transferQuantity}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">鍓╀綑鏁伴噺</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.surplusQuantity}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+								<view class="row-list">
+									<u-row justify="space-between">
+										<u-col span="4">
+											<span class="span-lable">IFS鑷冲簱浣�</span>
+										</u-col>
+										<u-col span="8">
+											<view class="material-need-val-col">
+											    <span>{{item.toIfsLocationNo}}</span>
+											</view>
+										</u-col>
+									</u-row>
+								</view>
+					</view>
+				</u-card>
+			</u-cell-group>
+		</scroll-view>
+		<view class="view-fixed-two material-need-bottom-btns">
+				<u-button type="success" text="纭畾" size="medium"
+					@click="toSaveDetail()">纭畾</u-button>
+		</view>
+	</view>
+</template>
+<script>
+	export default {
+		data() {
+			return {
+				showCardHead: false,
+				materialNeedList: [],
+				bodyStyle: {
+					background: '#bbf59c'
+				}
+			};
+		},
+		onLoad() {
+			this.loadList();
+		},
+		onShow() {
+
+		},
+		methods: {
+			loadList(){
+				// 鑾峰彇椤甸潰鏍�
+				let pages = getCurrentPages()		
+				// 鑾峰彇涓婁竴椤垫爤
+				let prevPage = pages[pages.length - 2]
+				this.materialNeedList=prevPage.$vm.getMaterialNeedList()
+			},
+			materialNeedCardClick(item){
+				item.selected=!item.selected
+				this.materialNeedList.forEach((el)=>{
+					if(el!==item){
+						el.selected=false
+					}
+				})
+			},
+			toSaveDetail() {
+				let materialNeed=this.materialNeedList.find((item)=>{
+					return item.selected
+				})
+				if(materialNeed){
+					this.refreshLastPage(materialNeed)
+				}else{
+					this.$u.toast('璇烽�夋嫨鐗╂枡闇�姹�');
+				}
+			},
+			//鍒锋柊涓婁竴涓〉闈�
+			refreshLastPage(materialNeed) {
+				// 鍛婄煡 A.vue 鏇存柊鏁版嵁
+				// 鑾峰彇椤甸潰鏍�
+				let pages = getCurrentPages()
+			
+				// 鑾峰彇涓婁竴椤垫爤
+				let prevPage = pages[pages.length - 2]
+			
+				// 瑙﹀彂涓婁竴椤� upData 鍑芥暟(骞舵惡甯﹀弬鏁�)
+				prevPage.$vm.saveDetail(materialNeed)
+			
+				// 杩斿洖涓婁竴椤�
+				uni.navigateBack({
+					delta: 1
+				})
+			}
+			
+		}
+	};
+</script>
+<style lang="scss">
+	.material-need-val-col{
+		 display: flex;
+		 justify-content:flex-end;
+	}
+	.material-need-scan-record {
+		background-color: #F8F8F8;
+		height: calc(100vh - var(--window-top) - var(--window-bottom) - 100rpx);
+	}
+
+	.material-need-scan-record-cell {
+		::v-deep .u-cell-item-box {
+			background-color: #F8F8F8;
+		}
+	}
+
+	.material-need-bottom-btns{
+		width: 750rpx;
+		height: 100rpx;
+		background-color: #fff;
+		display: flex;
+		justify-content:center;
+		align-items: center;
+	}
+	
+</style>

--
Gitblit v1.9.3