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/produce/workstationList/workstationList.vue |  287 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 287 insertions(+), 0 deletions(-)

diff --git a/pages/product/produce/workstationList/workstationList.vue b/pages/product/produce/workstationList/workstationList.vue
new file mode 100644
index 0000000..438127d
--- /dev/null
+++ b/pages/product/produce/workstationList/workstationList.vue
@@ -0,0 +1,287 @@
+<template>
+	<view class="page">
+	  <view class="productfeed-workstation-bg"/>
+		<!-- <u-navbar title="宸ヤ綔绔�" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" back-icon-color="#000"/> -->
+		<view class="productfeed-workstation-search">
+			<u-search v-model="keywords" shape="square" bg-color="rgba(250,252,255,0.36)" :show-action="false" placeholder="璇疯緭鍏ュ伐浣滅珯缂栧彿" @clear="search" @custom="search" @search="search">
+			</u-search>
+	  </view>
+	  <view class="wrap">
+		<scroll-view class="productfeed-workstation-scroll-list" scroll-y="true" @scrolltolower="loadMore">
+			<u-cell-group class="productfeed-workstation-scroll-list-group" :border="false">
+				<view class="content" v-for="(item, index) in list" :key="item.workstationNo" :index="index"
+					@click="selectWorkstation(item)">
+					<view class="content-header">
+							<view class="content-header-icon"></view>
+							<view class="content-header-title">{{ item.workstationNo }}</view>
+						</view>
+						<view class="content-body">
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-icon-1">
+									</view>
+									<view class="_label-name">缂栧彿锛�</view>	
+								</view>
+								<view class="_content">
+									{{ item.workstationNo }}
+								</view>
+							</view>
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-icon-2">
+									</view>
+									<view class="_label-name">鍚嶇О锛�</view>	
+								</view>
+								<view class="_content">
+									{{ item.name }}
+								</view>
+							</view>
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-icon-3">
+									</view>
+									<view class="_label-name">澶囨敞锛�</view>	
+								</view>
+								<view class="_content s1">
+									{{ item.remark }}
+								</view>
+							</view>
+						</view>
+				</view>
+			</u-cell-group>
+			<view class="loadmore" @click="loadMore">
+				<u-loadmore :status="loadStatus"></u-loadmore>
+			</view>
+		</scroll-view>
+		<scan></scan>		
+	</view>
+    </view>
+</template>
+<script>
+	import content_bg from '@/static/custom/product/productBg.png'
+	import scan from "@/components/scan/scan.vue";
+	export default {
+		components: {
+			scan
+		},
+		data() {
+			return {
+				background:{
+					backgroundImage: `url(${content_bg})`,
+					backgroundAttachment: 'fixed',
+					backgroundSize: '100% auto',
+					backgroundRepeat: 'no-repeat',
+				},
+				keywords: '',
+				workStationList:[],
+				originList: [],
+				list: [],
+				count: 0,
+				loadStatus: 'loadmore',
+				query: {
+					current: 1,
+					size: 10,
+					workstationNo:""
+				},
+			};
+		},
+		onLoad() {
+			this.loadList();
+		},
+		onShow() {
+			
+			let that = this
+					
+			uni.$off('scan') // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒
+			uni.$on('scan', function(data) {
+				console.log('onscan');
+				//鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲�
+				console.log('鎵爜缁撴灉锛�', data.code);
+				that.search(data.code);					
+			})
+		},
+		onNavigationBarButtonTap(e) {
+			uni.scanCode({
+				success: res => {
+					try {
+						const result = JSON.parse(res.result)
+		
+					} catch (e) {}
+				}
+			});
+		},
+		methods: {	
+			loadMore() {
+				this.loadStatus = "loading";
+				setTimeout(() => {
+					this.query.current += 1;
+					this.loadList();
+				}, 100);
+			},
+			loadList() {
+
+				// 鏌ヨ宸ヤ綔绔欏垪琛�
+				this.$u.api.pigxFeed.fetchWorkstationList(this.query).then(res => {
+					
+					if (!res.data.records || res.data.records.length == 0) {
+						this.loadStatus = "nomore";
+						return;
+					}									
+					this.list = this.list.concat(res.data.records);
+					this.total = res.data.total;
+					this.query.current = res.data.current;
+					this.query.size = res.data.size;
+					this.loadStatus = "loadmore";
+				});
+			},
+			search(value) {
+							
+				let that = this
+				that.list = [];
+				that.total = 0;
+				
+				that.query= {
+					current: 1,
+					size: 20,
+					workstationNo:value
+				}
+				that.loadList()
+			},
+			selectWorkstation(workstation) {
+				this.refreshLastPage(workstation)
+			},
+			//鍒锋柊涓婁竴涓〉闈�
+			refreshLastPage(workstation) {
+				// 鍛婄煡 A.vue 鏇存柊鏁版嵁
+				// 鑾峰彇椤甸潰鏍�
+				let pages = getCurrentPages()
+
+				// 鑾峰彇涓婁竴椤垫爤
+				let prevPage = pages[pages.length - 2]
+				let prevTwoPage = pages[pages.length - 3]
+
+				// 瑙﹀彂涓婁竴椤� upData 鍑芥暟(骞舵惡甯﹀弬鏁�)
+				prevPage.$vm.setWorkstation(workstation)
+				prevTwoPage.$vm.setWorkstation(workstation)
+
+				// 杩斿洖涓婁竴椤�
+				uni.navigateBack({
+					delta: 1
+				})
+			},
+		}
+	};
+</script>
+<style lang="scss">
+	.productfeed-workstation-bg{
+		background-color: #F6F9FF;
+		background-image: url('~@/static/custom/product/productBg.png');
+		// background: linear-gradient(180deg,rgba(206,227,254,1),rgba(206,227,254,1) 20%,rgba(206,227,254,0.5) 40%,rgba(206,227,254,0.25) 60%,rgba(206,227,254,0.08) 80%,rgba(206,227,254,0));
+		padding: 0 20rpx;
+		background-attachment: fixed;
+		background-size: 100% auto;
+		background-repeat: no-repeat;
+		position: fixed;
+		top: 0;
+		bottom: 0;
+		width: 100%;
+		z-index: -1;
+	}
+	.productfeed-workstation-search{
+		padding: 40rpx 30rpx 20rpx 30rpx;
+	}
+	.wrap .productfeed-workstation-scroll-list{
+		height:calc(100vh - var(--window-top) - var(--window-bottom) - 242rpx);
+	    width:100%;
+	}
+	.productfeed-workstation-scroll-list-group{
+		::v-deep .u-cell-item-box {
+			background-color:rgba(250,252,255,0.36) !important;
+			padding:0rpx 30rpx ;
+	    }
+		.content {
+			font-size: 12px;
+			background-color: #FFFFFF;
+			box-sizing: border-box;
+			border-radius: 10rpx;
+			margin: 0rpx 0rpx 16rpx;
+			height: 298rpx;
+			padding: 10rpx 20rpx;
+			box-shadow: none;
+			.content-header{
+				height: 90rpx;
+				display: flex;
+				align-items:center;
+				.content-header-icon{
+					background-image: url('~@/static/custom/moveWareHouse/header_icon.png');
+					background-size: 100% auto;
+					background-repeat: no-repeat;
+					height:28rpx;
+					width:28rpx;
+				}
+				.content-header-title{
+					margin-left: 11rpx;
+					font-size: 26rpx;
+					font-weight: bold;
+					color: #333333;
+				}
+			}
+			.content-body{
+				height:184rpx;
+				background: #F5F9FF;
+				border-radius: 10rpx;
+				padding: 0rpx 23rpx;
+				.row-list {
+					height: 60rpx;
+					display: flex;
+					flex-direction: row;
+					padding: 0px;
+					align-items: center;
+				}
+				.row-list ._label {
+					display: flex;
+					flex: 0.8;
+					color: #909399;
+					align-items: center;
+					._label-icon-1{
+						background-image: url('~@/static/custom/moveWareHouse/label-icon-1.png');
+						background-size: 100% auto;
+						background-repeat: no-repeat;
+						height:26rpx;
+						width:26rpx;
+					}
+					._label-icon-2{
+						background-image: url('~@/static/custom/moveWareHouse/label-icon-2.png');
+						background-size: 100% auto;
+						background-repeat: no-repeat;
+						height:26rpx;
+						width:26rpx;
+					}
+					._label-icon-3{
+						background-image: url('~@/static/custom/moveWareHouse/label-icon-3.png');
+						background-size: 100% auto;
+						background-repeat: no-repeat;
+						height:26rpx;
+						width:26rpx;
+					}
+					._label-name{
+						margin-left: 11rpx;
+						font-size: 26rpx;
+						font-weight: 500;
+						color: #666666;
+					}
+				}
+				
+				.row-list ._content {
+					flex: 1.5;
+					text-align: right;
+					color: #909399;
+					font-size: 24rpx;
+				}
+				.row-list .s1 {
+					color:#D35651;
+				}
+			}
+		}
+	}	
+</style>

--
Gitblit v1.9.3