From 1bda72a44cccfb9f79673b95c33cce91057214d2 Mon Sep 17 00:00:00 2001
From: Mr.Shi <1878285526@qq.com>
Date: 星期五, 01 九月 2023 09:11:42 +0800
Subject: [PATCH] 小程序

---
 minipro_standard/pages_adjust/pages/warehousingDetails1/warehousingDetails1.vue |  346 +++++++
 minipro_standard/pages_adjust/components/Material.vue                           |  131 ++
 minipro_standard/pages_adjust/pages/outboundList/outboundList.vue               |  553 +++++++++++
 minipro_standard/pages_adjust/pages/transferList/transferList.vue               |    2 
 minipro_standard/pages_adjust/pages/outboundDetails/outboundDetails.vue         |  331 +++++++
 minipro_standard/pages_adjust/pages/warehousingList/warehousingList.vue         |  562 ++++++++++++
 minipro_standard/pages_adjust/pages/InventoryQuery/InventoryQuery.vue           |  485 ++++++++++
 minipro_standard/pages.json                                                     |   37 
 minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue                   |   98 +
 minipro_standard/pages_adjust/pages/newOutbound/newOutbound.vue                 |   19 
 minipro_standard/pages_adjust/components/ProductionProcess.vue                  |  111 ++
 minipro_standard/pages_adjust/components/location.vue                           |   36 
 minipro_standard/components/Search.vue                                          |    7 
 13 files changed, 2,684 insertions(+), 34 deletions(-)

diff --git a/minipro_standard/components/Search.vue b/minipro_standard/components/Search.vue
index 9c33b94..347b379 100644
--- a/minipro_standard/components/Search.vue
+++ b/minipro_standard/components/Search.vue
@@ -11,9 +11,9 @@
 			</view>
 		</view>
 		<u-popup :show="open" :round="10" mode="bottom">
-			<view class="content">
+			<scroll-view scroll-y class="content">
 				<slot name="content"></slot>
-			</view>
+			</scroll-view>
 			<view class="zhanwei"></view>
 			<view class="footer">
 				<view class="footer_close" @click="closes">閲嶇疆</view>
@@ -71,6 +71,9 @@
 	    }
 	    .content {
 	        padding: 30rpx 30rpx 0 30rpx;
+			width: 100%;
+			height: 800rpx;
+			box-sizing: border-box;
 	    }
 	    .footer {
 	        width: 100%;
diff --git a/minipro_standard/pages.json b/minipro_standard/pages.json
index 1504f4e..1a3e092 100644
--- a/minipro_standard/pages.json
+++ b/minipro_standard/pages.json
@@ -96,9 +96,16 @@
 			"root": "pages_adjust",
 			"pages": [
 				{
+					"path": "pages/newOutbound/newOutbound",
+					"style": {
+						"navigationBarTitleText": "鏂板缓鍑哄簱",
+						"enablePullDownRefresh": false
+					}
+				},
+				{
 					"path": "pages/addReceipt/addReceipt",
 					"style": {
-						"navigationBarTitleText": "鏂板鍏ュ簱",
+						"navigationBarTitleText": "鏂板缓鍏ュ簱",
 						"enablePullDownRefresh": false
 					}
 				},
@@ -143,6 +150,34 @@
 						"navigationBarTitleText": "鍑哄簱鍗曞垪琛�",
 						"enablePullDownRefresh": false
 					}
+				},
+				{
+					"path": "pages/outboundDetails/outboundDetails",
+					"style": {
+						"navigationBarTitleText": "鍑哄簱璇︽儏",
+						"enablePullDownRefresh": false
+					}
+				},
+				{
+					"path": "pages/warehousingList/warehousingList",
+					"style": {
+						"navigationBarTitleText": "鍏ュ簱鍗曞垪琛�",
+						"enablePullDownRefresh": false
+					}
+				},
+				{
+					"path": "pages/warehousingDetails1/warehousingDetails1",
+					"style": {
+						"navigationBarTitleText": "鍏ュ簱璇︽儏",
+						"enablePullDownRefresh": false
+					}
+				},
+				{
+					"path": "pages/InventoryQuery/InventoryQuery",
+					"style": {
+						"navigationBarTitleText": "搴撳瓨閲忔煡璇�",
+						"enablePullDownRefresh": false
+					}
 				}
 			]
 		},
diff --git a/minipro_standard/pages_adjust/components/Material.vue b/minipro_standard/pages_adjust/components/Material.vue
new file mode 100644
index 0000000..0685993
--- /dev/null
+++ b/minipro_standard/pages_adjust/components/Material.vue
@@ -0,0 +1,131 @@
+<template>
+	<u-popup :show="show" mode="bottom" :closeable="true" :round="10" @open="open" @close="close">
+		<view class="title">
+			<text>閫夋嫨鐗╂枡</text>
+		</view>
+		<view class="content">
+			<view class="content_search">
+				<u-search :showAction="false" placeholder="鎼滅储鐗╂枡鍚嶇О" v-model="keyword"></u-search>
+			</view>
+			<div class="content_total">鍏眥{total}}鏉℃暟鎹�</div>
+			<view class="content_list">
+				<u-list @scrolltolower="scrolltolower">
+					<u-list-item v-for="(item, index) in indexList" :key="index">
+						<div class="content_list_item" @click="getVal(item)">
+							<div class="content_list_item_name">
+								<span>{{item.name}}</span>
+							</div>
+						</div>
+					</u-list-item>
+				</u-list>
+			</view>
+		</view>
+	</u-popup>
+</template>
+
+<script>
+	export default {
+		props: {
+			show: Boolean
+		},
+		data() {
+			return {
+				keyword: '',
+				total: 0,
+				indexList: []
+			};
+		},
+		methods: {
+			getVal(item) {
+				this.$emit('value', item)
+			},
+			open() {
+				this.indexList = []
+				this.loadmore()
+			},
+			scrolltolower() {
+				this.loadmore()
+			},
+			loadmore() {
+				for (let i = 0; i < 20; i++) {
+					this.indexList.push({
+						id: i,
+						name: `浠撳簱${i}`
+					})
+				}
+			},
+			close() {
+				this.$emit('close')
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.title {
+        width: 100%;
+		height: 85rpx;
+		line-height: 85rpx;
+		text-align: center;
+		text {
+			font-size: 30rpx;
+			font-family: PingFangSC-Medium, PingFang SC;
+			font-weight: 500;
+			color: #222222;
+		}
+    }
+	.content {
+		width: 100%;
+		.content_search {
+			width: 100%;
+			padding: 0 30rpx 30rpx 30rpx;
+			background: white;
+			position: sticky;
+			top: 85rpx;
+			z-index: 9;
+			box-sizing: border-box;
+		}
+		.content_total {
+			padding: 24rpx 30rpx;
+			background: #F7F7F7;
+			font-size: 24rpx;
+			font-weight: 400;
+			color: #666666;
+		}
+		.content_list {
+			width: 100%;
+			height: 800rpx;
+			display: flex;
+			flex-direction: column;
+			.content_list_item {
+				padding: 30rpx;
+				display: flex;
+				border-bottom: 1rpx solid #ececec;
+				.serious {
+					color: $nav-stateColor4 !important;
+				}
+				.success {
+					color: $nav-stateColor2 !important;
+				}
+				.warning {
+					color: $nav-stateColor5 !important;
+				}
+				.content_list_item_status {
+					font-size: 28rpx;
+					margin-right: 10rpx;
+				}
+				.content_list_item_name {
+					width: 100%;
+					display: flex;
+					align-items: center;
+					span {
+						font-size: 30rpx;
+						font-family: PingFangSC-Regular, PingFang SC;
+						font-weight: 400;
+						color: #222222;
+					}
+				}
+			}
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/components/ProductionProcess.vue b/minipro_standard/pages_adjust/components/ProductionProcess.vue
new file mode 100644
index 0000000..297839e
--- /dev/null
+++ b/minipro_standard/pages_adjust/components/ProductionProcess.vue
@@ -0,0 +1,111 @@
+<template>
+	<u-popup :show="show" mode="bottom" :closeable="true" :round="10" @open="open" @close="close">
+		<view class="title">
+			<text>閫夋嫨宸ュ簭</text>
+		</view>
+		<view class="content">
+			<scroll-view scroll-y class="content_list">
+				<div class="content_list_item" v-for="(item, index) in list" :key="index" @click="getVal(item)">
+					<div class="content_list_item_name">
+						<span>{{item.name}}</span>
+					</div>
+				</div>
+			</scroll-view>
+		</view>
+	</u-popup>
+</template>
+
+<script>
+	export default {
+		props: {
+			show: {
+				type: Boolean,
+				required: true
+			},
+			list: {
+				type: Array,
+				required: true
+			}
+		},
+		methods: {
+			getVal(item) {
+				this.$emit('value', item)
+			},
+			open() {
+				this.indexList = []
+			},
+			close() {
+				this.$emit('close')
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.title {
+        width: 100%;
+		height: 85rpx;
+		line-height: 85rpx;
+		text-align: center;
+		text {
+			font-size: 30rpx;
+			font-family: PingFangSC-Medium, PingFang SC;
+			font-weight: 500;
+			color: #222222;
+		}
+    }
+	.content {
+		width: 100%;
+		.content_search {
+			width: 100%;
+			padding: 0 30rpx 30rpx 30rpx;
+			background: white;
+			position: sticky;
+			top: 85rpx;
+			z-index: 9;
+			box-sizing: border-box;
+		}
+		.content_total {
+			padding: 24rpx 30rpx;
+			background: #F7F7F7;
+			font-size: 24rpx;
+			font-weight: 400;
+			color: #666666;
+		}
+		.content_list {
+			width: 100%;
+			height: 800rpx;
+			display: flex;
+			flex-direction: column;
+			.content_list_item {
+				padding: 30rpx;
+				display: flex;
+				border-bottom: 1rpx solid #ececec;
+				.serious {
+					color: $nav-stateColor4 !important;
+				}
+				.success {
+					color: $nav-stateColor2 !important;
+				}
+				.warning {
+					color: $nav-stateColor5 !important;
+				}
+				.content_list_item_status {
+					font-size: 28rpx;
+					margin-right: 10rpx;
+				}
+				.content_list_item_name {
+					width: 100%;
+					display: flex;
+					align-items: center;
+					span {
+						font-size: 30rpx;
+						font-family: PingFangSC-Regular, PingFang SC;
+						font-weight: 400;
+						color: #222222;
+					}
+				}
+			}
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/components/location.vue b/minipro_standard/pages_adjust/components/location.vue
index 1dadea7..abc7135 100644
--- a/minipro_standard/pages_adjust/components/location.vue
+++ b/minipro_standard/pages_adjust/components/location.vue
@@ -1,19 +1,13 @@
 <template>
-	<u-popup :show="show" mode="bottom" :closeable="true" :round="10" @open="open" @close="close">
+	<u-popup :show="show" mode="bottom" :closeable="true" :round="10" @close="close">
 		<view class="title">
 			<text>閫夋嫨璐т綅</text>
 		</view>
 		<view class="content">
 			<view class="content_list">
-				<u-list @scrolltolower="scrolltolower">
-					<u-list-item v-for="(item, index) in indexList" :key="index">
-						<div class="content_list_item">
-							<div class="content_list_item_name">
-								璐т綅{{index}}
-							</div>
-						</div>
-					</u-list-item>
-				</u-list>
+				<div class="content_list_item" v-for="(item, i) in list" :key="i" @click="jump(item)">
+					<div class="content_list_item_name">{{item.unionName}}</div>
+				</div>
 			</view>
 		</view>
 	</u-popup>
@@ -22,13 +16,23 @@
 <script>
 	export default {
 		props: {
-			show: Boolean
+			show: {
+				type: Boolean,
+				required: true
+			},
+			list: {
+				type: Array,
+				required: true
+			}
 		},
-		data() {
-			return {
-				indexList: [1,2,3,4,5,6,7,8,9]
-			};
-		},
+		methods: {
+			close() {
+				this.$emit('close')
+			},
+			jump(item) {
+				this.$emit('value', item)
+			}
+		}
 	}
 </script>
 
diff --git a/minipro_standard/pages_adjust/pages/InventoryQuery/InventoryQuery.vue b/minipro_standard/pages_adjust/pages/InventoryQuery/InventoryQuery.vue
new file mode 100644
index 0000000..83ffa40
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/InventoryQuery/InventoryQuery.vue
@@ -0,0 +1,485 @@
+<template>
+	<view class="content">
+		<view class="content_search">
+			<Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true"
+				placeholder="鎼滅储浠撳簱鍚嶇О/鐗╂枡鍚嶇О">
+				<template v-slot:content>
+					<view class="Search_item">
+						<view class="Search_item_label">姹囨�讳緷鎹�</view>
+						<view class="Search_item_content">
+							<view class="tag">
+								<view
+									class="tag_item"
+									:class="{ tag_active: item.isActive }"
+									v-for="(item, i) in groupTypes"
+									:key="item.id"
+									@click="changeGroup(i)"
+								>
+									{{ item.name }}
+								</view>
+							</view>
+						</view>
+					</view>
+				</template>
+			</Search>
+		</view>
+		<view class="content_total" :style="{top: top}">鍏眥{controlData.total}}鏉℃暟鎹�</view>
+		<view class="content_list">
+			<scroll-view @scrolltolower="getLists" scroll-y :style="{height: height}">
+				<view class="content_list_item" v-for="(item, i) in list" :key="i">
+					<view class="content_list_item_top">
+						<view class="content_list_item_top_left">
+							<text>{{ item.materialName }}&nbsp;|&nbsp;{{ item.materialCode }}</text>
+						</view>
+						<view class="content_list_item_top_right">
+							<text class="created">{{ '搴撳瓨锛�' + item.num + item.unitName }}</text>
+						</view>
+					</view>
+					<view class="content_list_item_sx">
+						<text v-if="item.qualityType == 0" class="green">鍚堟牸 | </text>
+						<text v-if="item.qualityType == 1" class="yellow">涓嶈壇 | </text>
+						<text v-if="item.qualityType == 2" class="red">鎶ュ簾 | </text>
+						<text>{{ item.procedureName ? item.procedureName : '-' }} | </text>
+						<text>{{ item.batch ? item.batch : '-' }}</text>
+					</view>
+					<!-- item涓婚淇℃伅閮ㄥ垎 -->
+					<view class="content_list_item_content">
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">瑙勬牸锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.attr }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item" v-if="data.groupType == '3' || data.groupType == '2'">
+							<view class="content_list_item_content_item_label">浠撳簱锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.wareHouseName ? item.wareHouseName : '-' }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item" v-if="data.groupType == '3' || data.groupType == '2'">
+							<view class="content_list_item_content_item_label">璐т綅锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.locationName }}
+							</view>
+						</view>
+					</view>
+				</view>
+			</scroll-view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import Search from '@/components/Search.vue'
+	import { orderTyepToStr } from '@/util/constData.js'
+	export default {
+		components: {
+			Search
+		},
+		data() {
+			return {
+				height: '',
+				top: '',
+				controlData: {
+					finished: false,
+					loading: false,
+					total: 0,
+					page: 0,
+					capacity: 10,
+				},
+				groupTypes: [
+					{ name: '榛樿', id: '3', isActive: true },
+					{ name: '鐗╂枡', id: '1', isActive: false },
+					{ name: '鐗╂枡+浠撳簱', id: '2', isActive: false }
+				],
+				data: {
+					materialName: '',
+					groupType: '3'
+				},
+				list: []
+			};
+		},
+		onReady() {
+			var that = this
+			this.$nextTick(() => {
+				uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => {
+					that.height = `calc(100vh - ${rect.height + 80}px)`
+					that.top = `${rect.height}px`
+				}).exec()
+			})
+		},
+		methods: {
+			changeGroup(i) {
+				this.groupTypes[i].isActive = !this.groupTypes[i].isActive;
+				this.data.groupType = this.groupTypes[i].id
+				for (const index in this.groupTypes) {
+					if (index != i) {
+						// console.log(index, i)
+						const item = this.groupTypes[index]
+						item.isActive = false
+					}
+				}
+			},
+			tyepToStr(type) {
+				//  <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+				for (const item of this.orderType) {
+					if (item.id == type) {
+						return item.name
+					}
+				}
+				return '-'
+			},
+			// 璺宠浆
+			jump(item) {
+				uni.navigateTo({
+					url: `/pages/planDetails/planDetails?id=${item.id}`
+				})
+			},
+			// 鑾峰彇澶撮儴缁勪欢楂樺害
+			getHeight(height) {
+				this.height = height
+			},
+			// 閲嶇疆
+			reset() {
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.listData.mixParam = ''
+				this.listData.startDate = ''
+				this.listData.endDate = ''
+				this.listData.procedureIds = []
+				if (this.factoryList.length > 0) {
+					this.listData.departIds = this.factoryList[0].id
+				}
+				if (this.data.length > 0) {
+					this.data.forEach(item => {
+						item.isActive = false
+					})
+				}
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鏃ユ湡纭畾
+			timeConfirm(val) {
+				this.listData.startDate = val[0]
+				this.listData.endDate = val[val.length - 1]
+				this.timeShow = false
+			},
+			// 鍒囨崲宸ュ巶
+			changeTags(i, id) {
+				this.listData.departIds = id
+				this.getWorkingProcedures(id)
+				this.factoryList.forEach((item, index) => {
+					if (index === i) {
+						item.isActive = true
+					} else {
+						item.isActive = false
+					}
+				})
+			},
+			// 鎵撳紑鏃ユ湡鎻掍欢
+			openDate() {
+				this.timeShow = true
+			},
+			// 鎼滅储
+			searchInput(val) {
+				this.listData.mixParam = val
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.getLists()
+			},
+			// 鐐瑰嚮鏍囩鎼滅储
+			clickTag(ids) {
+				this.listData.cateIds = ids
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+			},
+			// 鑾峰彇鍒楄〃缁熻
+			pageCounts() {
+				pageCount({
+					factoryId: this.listData.departIds,
+					procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+					startDate: this.listData.startDate,
+					endDate: this.listData.endDate,
+					statusList: this.listData.cateIds
+				}).then(res => {
+					if (res.code === 200 && res.data) {
+						this.tagList[0].num = res.data.allNum.toString()
+						this.tagList[1].num = res.data.startNum.toString()
+						this.tagList[2].num = res.data.ingNum.toString()
+						this.tagList[3].num = res.data.endNum.toString()
+					}
+				})
+			},
+			// 鑾峰彇宸ュ巶鏁版嵁
+			getOrganizations() {
+				getOrganization({
+					type: 1
+				}).then(res => {
+					if (res.code === 200 && res.data && res.data.length !== 0) {
+						res.data.forEach((item, i) => {
+							item.isActive = i === 0;
+						})
+						if (res.data.length > 0) {
+							this.factoryList = res.data
+							this.listData.departIds = this.factoryList[0].id
+							this.listData.procedureIds = ''
+							this.finished = false
+							this.getWorkingProcedures(this.factoryList[0].id)
+							this.getLists()
+							this.pageCounts()
+						}
+					}
+				})
+			},
+			// 鑾峰彇宸ュ簭鏁版嵁
+			getWorkingProcedures(orgId) {
+				this.data = []
+				getWorkingProcedure({
+						orgId
+					})
+					.then(res => {
+						if (res.code === 200 && res.data && res.data.length !== 0) {
+							res.data.forEach((item, i) => {
+								item.isActive = false;
+							})
+							this.data = res.data
+						}
+					})
+			},
+			// 鎼滅储寮规鎻愪氦
+			submit() {
+				let pmodelOrgId = []
+				this.data.forEach((item) => {
+					if (item.isActive) {
+						pmodelOrgId.push(item.id)
+					}
+				})
+				this.listData.procedureIds = pmodelOrgId
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鑾峰彇璁″垝鍒楄〃鏁版嵁
+			getLists() {
+				console.log('getLists')
+				if (!this.finished) {
+					this.loading = true
+					this.listData.page = this.listData.page++
+					getList({
+						capacity: this.listData.capacity,
+						model: {
+							mixParam: this.listData.mixParam,
+							startDate: this.listData.startDate,
+							endDate: this.listData.endDate,
+							procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+							factoryId: this.listData.departIds,
+							statusList: this.listData.cateIds
+						},
+						page: this.listData.page,
+						sorts: [{
+							direction: 'ASC',
+							property: 'publishDate'
+						}]
+					}).then(res => {
+						this.loading = false
+						this.listData.total = res.data.total
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+						if (res.code === 200 && res.data.records.length !== 0) {
+							if (this.lists.length === 0) {
+								this.lists = res.data.records
+							} else {
+								this.lists.push(...res.data.records)
+							}
+						} else {
+							this.finished = true
+						}
+					}).catch(err => {
+						this.loading = false
+						this.finished = true
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+					})
+				}
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content {
+		.content_search {
+			width: 100%;
+			padding: 30rpx;
+			background: white;
+			position: sticky;
+			top: 0;
+			z-index: 999;
+			box-sizing: border-box;
+
+			.Search_item {
+				margin-bottom: 40rpx;
+
+				.Search_item_label {
+					font-size: 30rpx;
+					font-weight: 500;
+					color: #222222;
+				}
+
+				.Search_item_content {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					margin-top: 30rpx;
+
+					.tag {
+						display: flex;
+						flex-wrap: wrap;
+						align-items: center;
+
+						.tag_active {
+							background: $nav-color !important;
+							color: #ffffff !important;
+						}
+
+						.tag_item {
+							padding: 22rpx 26rpx;
+							box-sizing: border-box;
+							background: #F2F2F2;
+							border-radius: 8rpx;
+							font-size: 26rpx;
+							font-weight: 400;
+							color: #333333;
+							display: flex;
+							align-items: center;
+							justify-content: center;
+							margin-right: 22rpx;
+							margin-bottom: 22rpx;
+						}
+					}
+
+					text {
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #333333;
+						margin: 0 30rpx;
+					}
+
+					.Search_item_content_a {
+						padding: 20rpx 0;
+						flex: 1;
+						background: #F7F7F7;
+						border-radius: 8rpx;
+						border: 1rpx solid #EEEEEE;
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #B2B2B2;
+						display: flex;
+						align-items: center;
+						justify-content: center;
+					}
+				}
+			}
+
+			.content_search_x {
+				height: 24rpx;
+			}
+		}
+
+		.content_list {
+			width: 100%;
+			display: flex;
+			flex-direction: column;
+			.content_list_item {
+				background: #ffffff;
+				padding: 30rpx;
+				display: flex;
+				flex-direction: column;
+				border-bottom: 1rpx solid #ececec;
+				.content_list_item_sx {
+					margin-top: 20rpx;
+				}
+				.content_list_item_top {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					.content_list_item_top_left {
+						text {
+							font-size: 32rpx;
+							font-weight: 500;
+							color: #333333;
+						}
+					}
+					.content_list_item_top_right {
+						font-size: 26rpx;
+						font-weight: 400;
+						.created {
+							color: $nav-stateColor1 !important;
+						}
+						.warning {
+							color: $nav-stateColor5 !important;
+						}
+						.green {
+							color: $nav-stateColor6 !important;
+						}
+						.info {
+							color: $nav-stateColor3 !important;
+						}
+					}
+				}
+				.content_list_item_content {
+					padding: 24rpx 30rpx;
+					background: #f7f7f7;
+					border-radius: 16rpx;
+					display: flex;
+					flex-wrap: wrap;
+					justify-content: space-between;
+					margin-top: 32rpx;
+					.content_list_item_content_item {
+						width: 100%;
+						display: flex;
+						margin-top: 24rpx;
+						&:nth-child(1) {
+							margin-top: 0 !important;
+						}
+						.content_list_item_content_item_label {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #666666;
+							flex-shrink: 0;
+						}
+						.content_list_item_content_item_nr {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #222222;
+							margin-right: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.content_total {
+			width: 100%;
+			height: 80rpx;
+			padding: 24rpx 30rpx;
+			background: #F7F7F7;
+			font-size: 24rpx;
+			font-weight: 400;
+			box-sizing: border-box;
+			color: #666666;
+			position: sticky;
+			z-index: 99;
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue b/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
index 4e5b4ab..3b9b607 100644
--- a/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
+++ b/minipro_standard/pages_adjust/pages/addReceipt/addReceipt.vue
@@ -29,14 +29,14 @@
 			</view>
 			<van-swipe-cell v-for="(item, index) in list" :key="index">
 				<view class="rework_qd_list">
-					<view class="rework_qd_item">
+					<view class="rework_qd_item" @click="locationShow = true">
 						<text><b>*</b>鍏ュ簱璐т綅</text>
 						<view class="rework_qd_item_right">
 							<text :class="item.locationName ? 'black' : ''">{{item.locationName ? item.locationName : '璇烽�夋嫨'}}</text>
 							<u-icon name="arrow-right"></u-icon>
 						</view>
 					</view>
-					<view class="rework_qd_item">
+					<view class="rework_qd_item" @click="materialsShow = true">
 						<text><b>*</b>鍏ュ簱鐗╂枡</text>
 						<view class="rework_qd_item_right">
 							<text :class="item.materialName ? 'black' : ''">{{item.materialName ? item.materialName : '璇烽�夋嫨'}}</text>
@@ -44,7 +44,7 @@
 						</view>
 					</view>
 					<template v-if="form.type !== 25">
-						<view class="rework_qd_item">
+						<view class="rework_qd_item" @click="productionShow = true">
 							<text>鐢熶骇宸ュ簭</text>
 							<view class="rework_qd_item_right">
 								<text :class="item.procedureName ? 'black' : ''">{{item.procedureName ? item.procedureName : '璇烽�夋嫨'}}</text>
@@ -52,7 +52,7 @@
 							</view>
 						</view>
 					</template>
-					<view class="rework_qd_item">
+					<view class="rework_qd_item" @click="qualityShow = true">
 						<text><b>*</b>璐ㄩ噺灞炴��</text>
 						<view class="rework_qd_item_right">
 							<text :class="item.qualityTypeName ? 'black' : ''">{{item.qualityTypeName ? item.qualityTypeName : '璇烽�夋嫨'}}</text>
@@ -62,13 +62,13 @@
 					<view class="rework_qd_item">
 						<text>鎵规鍙�</text>
 						<view class="rework_qd_item_right">
-							<u--input placeholder="璇疯緭鍏�" style="width: 230rpx;" border="surround" v-model="item.batch"></u--input>
+							<u--input placeholder="璇疯緭鍏�" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.batch"></u--input>
 						</view>
 					</view>
 					<view class="rework_qd_item">
 						<text><b>*</b>鍏ュ簱鏁伴噺<template v-if="item.unitName">({{ item.unitName }})</template></text>
 						<view class="rework_qd_item_right">
-							<u--input placeholder="0" border="surround" v-model="item.num"></u--input>
+							<u--input placeholder="0" inputAlign="right" :customStyle="{width: '230rpx'}" border="surround" v-model="item.num"></u--input>
 						</view>
 					</view>
 				</view>
@@ -78,32 +78,51 @@
 			</van-swipe-cell>
 		</view>
 		<view class="rework_zw"></view>
+		<!-- 搴曢儴鎿嶄綔鎸夐挳 -->
 		<view class="rework_footer">
 			<button class="rework_footer_submit">鎻愪氦</button>
 		</view>
 		<u-toast ref="uToast"></u-toast>
 		<!-- 浠撳簱 -->
 		<Warehouse :show="warehouseShow" @close="close" @value="getValue" />
+		<!-- 鐗╂枡 -->
+		<Material :show="materialsShow" @close="close1" @value="getValue1" />
 		<!-- 璐т綅 -->
-		<location :show="locationShow" @close="close1" @value="getValue1" />
+		<location :show="locationShow" :list="locationList" @close="close3" @value="getValue3" />
+		<!-- 宸ュ簭 -->
+		<ProductionProcess :show="productionShow" :list="productionList" @close="close4" @value="getValue4" />
 		<!-- 鍗曟嵁绫诲瀷 -->
 		<u-picker :show="typeShow" keyName="name" :columns="typeList" @confirm="confirm" @cancel="typeClose"></u-picker>
+		<!-- 璐ㄩ噺灞炴�� -->
+		<u-picker :show="qualityShow" :columns="columns" @cancel="qualityShow = false" keyName="name" @confirm="onConfirm1"></u-picker>
 	</view>
 </template>
 
 <script>
 	import Warehouse from '../../components/Warehouse.vue'
 	import location from '../../components/location.vue'
+	import Material from '../../components/Material.vue'
+	import ProductionProcess from '../../components/ProductionProcess.vue'
 	export default {
-		components: { Warehouse, location },
+		components: { Warehouse, location, Material, ProductionProcess },
 		data() {
 			return {
+				i: 0,
 				form: {
 					warehouseName: '',
 					warehouseId: '',
 					type: '',
 					typeName: ''
 				},
+				locationList: [],
+				productionList: [],
+				columns: [
+					[
+						{ name: '鍚堟牸', id: '0' },
+						{ name: '涓嶈壇', id: '1' },
+						{ name: '鎶ュ簾', id: '2' }
+					]
+				],
 				list: [
 					{
 						batch: '',
@@ -125,10 +144,71 @@
 				typeList: [[{name: '閲囪喘鍏ュ簱', id: 25}, {name: '搴撳瓨璋冩暣', id: 28}]],
 				warehouseShow: false,
 				typeShow: false,
-				locationShow: false
+				locationShow: false,
+				materialsShow: false,
+				productionShow: false,
+				qualityShow: false
 			};
 		},
 		methods: {
+			// 璐ㄩ噺灞炴�х‘璁�
+			onConfirm1(value) {
+				this.form.typeName = value.name
+				this.form.type = value.id
+				if (value.id == 25) {
+					this.list.forEach(item => {
+						item.procedureId = ''
+						item.procedureName = ''
+					})
+				}
+				this.typeShow = false
+			},
+			// 閫夋嫨鐗╂枡
+			getValue1(item) {
+				this.list[this.i].materialName = item.mmodelUnionName
+				this.list[this.i].materialId = item.id
+				this.list[this.i].unitId = item.unitId
+				this.list[this.i].hasBom = item.hasBom
+				this.list[this.i].unitName = item.umodelName
+				// 鑾峰彇鐗╂枡涓嬪伐搴�
+				getListByMaterialId({
+					materialId: item.id
+				}).then(res => {
+					if (res.code === 200) {
+						productionList.value = res.data
+						this.list[this.i].procedureId = ''
+						this.list[this.i].procedureName = ''
+					}
+				})
+				materialsShow.value = false
+			},
+			// 鍏抽棴浠撳簱閫夋嫨寮规
+			close1() {
+				this.materialsShow = false
+			},
+			// 閫夋嫨璐т綅
+			getValue3(item) {
+				this.list[this.i].locationId = item.id
+				this.list[this.i].locationName = item.unionName
+				this.list[this.i].qualityType = ''
+				this.list[this.i].qualityTypeName = ''
+				this.list[this.i].locationIdLabel = item.label
+				if (item.label === 'APPLIANCE_ONTEST') {
+					this.list[this.i].qualityType = '0'
+					this.list[this.i].qualityTypeName = '鍚堟牸'
+				} else if (item.label === 'APPLIANCE_OFFTEST') {
+					this.list[this.i].qualityType = '1'
+					this.list[this.i].qualityTypeName = '涓嶈壇'
+				} else if (item.label === 'APPLIANCE_USELESS') {
+					this.list[this.i].qualityType = '2'
+					this.list[this.i].qualityTypeName = '鎶ュ簾'
+				}
+				this.locationShow = false
+			},
+			// 鍏抽棴璐т綅閫夋嫨寮规
+			close3() {
+				this.locationShow = false
+			},
 			// 纭鍗曟嵁绫诲瀷
 			confirm(val) {
 				this.form.type = val.value[0].id
diff --git a/minipro_standard/pages_adjust/pages/newOutbound/newOutbound.vue b/minipro_standard/pages_adjust/pages/newOutbound/newOutbound.vue
new file mode 100644
index 0000000..8c3b35f
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/newOutbound/newOutbound.vue
@@ -0,0 +1,19 @@
+<template>
+	<view>
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			};
+		}
+	}
+</script>
+
+<style lang="scss">
+
+</style>
diff --git a/minipro_standard/pages_adjust/pages/outboundDetails/outboundDetails.vue b/minipro_standard/pages_adjust/pages/outboundDetails/outboundDetails.vue
new file mode 100644
index 0000000..100f272
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/outboundDetails/outboundDetails.vue
@@ -0,0 +1,331 @@
+<template>
+	<view class="content1">
+		<view class="order-message">
+			<view class="content_list_item_top">
+				<view class="content_list_item_top_left">
+					<!--          <text>鍑哄簱鍗曞彿锛�</text>-->
+					<text>{{ data.code }}</text>
+				</view>
+				<view class="content_list_item_top_right">
+					<text class="warning" v-if="data.status === 0">寰呭嚭搴�</text>
+					<text class="green" v-else-if="data.status === 1">宸插嚭搴�</text>
+					<text class="info" v-else-if="data.status === 2">宸插彇娑�</text>
+				</view>
+			</view>
+			<view class="content_list_item_content">
+				<view style="margin-top: 0 " class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+					<view class="content_list_item_content_item_nr" v-if="data.billType">
+						{{ orderTyepToStr(data.billType) }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鍑鸿揣浠撳簱锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.warehouseCode + ' | ' + data.warehouseName }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">璁″垝鏃ユ湡锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.planDate }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鏉ユ簮绫诲瀷锛�</view>
+					<view class="content_list_item_content_item_nr" v-if="data.originType">
+						{{ tyepToStr(data.originType) }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鏉ユ簮鍗曞彿锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.originCode ? data.originCode : '-' }}
+					</view>
+				</view>
+				<view v-if="data.updateName" class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鎿嶄綔浜猴細</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.updateName + ' - ' + data.updateMobile }}
+					</view>
+				</view>
+				<view v-if="data.updateTime" class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鎿嶄綔鏃堕棿锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.updateTime }}
+					</view>
+				</view>
+			</view>
+		</view>
+		<!-- 杞簱鐗╂枡 -->
+		<view class="title">
+			<text class="title-prefix"></text>
+			<text>{{ data.status == 1 ? '宸插嚭搴撶墿鏂�' : '寰呭嚭搴撶墿鏂�' }}</text>
+		</view>
+		<view class="material-content">
+			<view class="item-style" v-for="(item, index) in materailArray" :key="index">
+				<view class="item-title-style">
+					<text style="font-weight: 500;">{{ item.materialName + ' | ' + item.materialCode}}</text>
+				</view>
+				<view class="item-content-style">
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">鎵规鍙凤細</view>
+						<view class="content_list_item_content_item_nr">
+							{{ item.batch }}
+						</view>
+					</view>
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">鏁伴噺锛�</view>
+						<view class="content_list_item_content_item_nr">
+							{{ item.num + item.unitName }}
+						</view>
+					</view>
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">宸ュ簭锛�</view>
+						<view class="content_list_item_content_item_nr">
+							{{ item.procedureName || '-' }}
+						</view>
+					</view>
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">璐ㄩ噺锛�</view>
+						<view class="content_list_item_content_item_nr">
+							<text v-if="item.qualityType == 0" class="green">鍚堟牸</text>
+							<text v-else-if="item.qualityType == 1" class="yellow">涓嶈壇</text>
+							<text v-else-if="item.qualityType == 2" class="red">鎶ュ簾</text>
+							<text v-else>-</text>
+						</view>
+					</view>
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">鍑哄簱璐т綅锛�</view>
+						<view class="content_list_item_content_item_nr">
+							{{ item.locationName }}
+						</view>
+					</view>
+				</view>
+				<!--        <view style="margin-top:10rpx; background: #cccccc; height:0.5rpx"></view>-->
+			</view>
+		</view>
+		<view v-if="data.status === 0" style="height:94rpx"></view>
+		<view v-if="data.status === 0" class="bottom-button">
+			<button class="button button-action" @click="submit">鍘诲嚭搴�</button>
+			<button class="button button-cancel" @click="cancel">鍙栨秷</button>
+		</view>
+	</view>
+</template>
+
+<script>
+	import { orderTyepToStr } from '@/util/constData.js'
+	
+	export default {
+		data() {
+			return {
+				data: {},
+				types: [
+					{ name: '鍏ㄩ儴', id: '', isActive: true },
+					{ name: '閲囪喘璁㈠崟', id: '0', isActive: false },
+					{ name: '鐢熶骇宸ュ崟', id: '1', isActive: false },
+					{ name: '閿�鍞鍗�', id: '2', isActive: false },
+					{ name: '杞簱鍗�', id: '3', isActive: false },
+					{ name: '鐩樼偣鍗�', id: '4', isActive: false },
+				],
+				materailArray: []
+			};
+		},
+		methods: {
+			tyepToStr(type) {
+				//  <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+				for (const item of this.types) {
+					if (parseInt(item.id) === type) {
+						return item.name
+					}
+				}
+				return '-'
+			},
+			submit() {
+				
+			},
+			cancel() {
+				
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content1 {
+		padding: 30rpx;
+		background: white;
+
+		.order-message {
+			display: flex;
+			flex-direction: column;
+
+			// border-bottom: 1rpx solid #ececec;
+			.content_list_item_top {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+
+				.content_list_item_top_left {
+					display: flex;
+
+					// align-items: center;
+					text {
+						font-size: 32rpx;
+						font-weight: 500;
+						color: #333333;
+					}
+				}
+
+				.content_list_item_top_right {
+					font-size: 26rpx;
+					font-weight: 400;
+
+					.created {
+						color: $nav-stateColor1 !important;
+					}
+
+					.warning {
+						color: $nav-stateColor5 !important;
+					}
+
+					.green {
+						color: $nav-stateColor6 !important;
+					}
+
+					.info {
+						color: $nav-stateColor3 !important;
+					}
+				}
+			}
+
+			.content_list_item_content {
+				padding: 24rpx 30rpx;
+				background: #f7f7f7;
+				border-radius: 16rpx;
+				display: flex;
+				flex-wrap: wrap;
+				justify-content: space-between;
+				margin-top: 32rpx;
+
+				.content_list_item_content_item {
+					width: 100%;
+					display: flex;
+					margin-top: 24rpx;
+
+					.content_list_item_content_item_label {
+						font-size: 24rpx;
+						font-weight: 400;
+						color: #666666;
+						flex-shrink: 0;
+					}
+
+					.content_list_item_content_item_nr {
+						font-size: 24rpx;
+						font-weight: 400;
+						color: #222222;
+						margin-right: 10rpx;
+					}
+				}
+			}
+		}
+
+		.title {
+			font-size: 30rpx;
+			display: flex;
+			align-items: center;
+			margin-top: 30rpx;
+
+			.title-prefix {
+				display: inline-block;
+				background-color: #4275FC;
+				height: 30rpx;
+				width: 8rpx;
+				border-radius: 1rpx;
+				margin-right: 12rpx;
+			}
+		}
+
+		.material-content {
+			margin-top: 30rpx;
+
+			.item-style {
+				width: initial;
+				border-bottom: 1rpx solid #ececec;
+				margin-top: 30rpx;
+
+				&:last-child {
+					border: none;
+				}
+
+				.item-title-style {
+					margin-bottom: 12rpx;
+					font-size: 30rpx;
+				}
+
+				.item-content-style {
+					// padding: 24rpx 30rpx;
+					// background-color: #f7f7f7;
+					// border-radius: 16rpx;
+					display: flex;
+					flex-wrap: wrap;
+					justify-content: space-between;
+					padding: 1rpx 1rpx 30rpx 1rpx;
+
+					.content_list_item_content_item {
+						width: 100%;
+						display: flex;
+						margin-top: 24rpx;
+
+						.content_list_item_content_item_label {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #666666;
+							flex-shrink: 0;
+						}
+
+						.content_list_item_content_item_nr {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #222222;
+							margin-right: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.bottom-button {
+			padding: 1rpx;
+			background-color: #f7f7f7;
+			position: fixed;
+			width: 100%;
+			bottom: 0;
+			height: 188rpx;
+			display: flex;
+			justify-content: space-between;
+
+			.button-action {
+				background: #fff;
+				color: $nav-color;
+			}
+
+			.button-cancel {
+				background: $nav-color;
+				color: #FFFFFF;
+			}
+
+			.button {
+				margin: 32rpx 32rpx 68rpx 32rpx;
+				height: 88rpx;
+				width: 334rpx;
+				border: none;
+				border-radius: 8rpx;
+				box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+				display: flex;
+				align-items: center;
+				justify-content: center;
+			}
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue b/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue
index fba7cbb..5aeff0b 100644
--- a/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue
+++ b/minipro_standard/pages_adjust/pages/outboundList/outboundList.vue
@@ -1,19 +1,562 @@
 <template>
-	<view>
-		鍑哄簱鍗曞垪琛�
+	<view class="content">
+		<view class="content_search">
+			<Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true"
+				placeholder="鎼滅储鍑哄簱鍗曞彿/鍑哄簱浠撳簱">
+				<template v-slot:content>
+					<view class="Search_item">
+						<view class="Search_item_label">璁″垝鏃ユ湡</view>
+						<view class="Search_item_content" @click="openDate">
+							<view class="Search_item_content_a" :style="listData.startDate ? 'color: #000' : ''">
+								{{ listData.startDate ? listData.startDate : '寮�濮嬫棩鏈�'}}</view>
+							<text>-</text>
+							<view class="Search_item_content_a" :style="listData.endDate ? 'color: #000' : ''">
+								{{ listData.endDate ? listData.endDate : '缁撴潫鏃ユ湡'}}</view>
+						</view>
+					</view>
+					<view class="Search_item">
+						<view class="Search_item_label">鍗曟嵁绫诲瀷</view>
+						<view class="Search_item_content">
+							<view class="tag">
+								<view class="tag_item" :class="{'tag_active': item.isActive}" v-for="(item, i) in types"
+								:key="item.id" @click="changeTags(i)">{{item.name}}</view>
+							</view>
+						</view>
+					</view>
+				</template>
+			</Search>
+			<view class="content_search_x"></view>
+			<LabelSelection :TagList="tagList" :isShow="true" @change="clickTag" />
+		</view>
+		<view class="content_total" :style="{top: top}">鍏眥{listData.total}}鏉℃暟鎹�</view>
+		<view class="content_list">
+			<scroll-view @scrolltolower="getLists" scroll-y :style="{height: height}">
+				<view class="content_list_item" v-for="(item, i) in lists" :key="i" @click="jump(item)">
+					<!-- item澶撮儴瑙嗗浘 -->
+					<view class="content_list_item_top">
+						<view class="content_list_item_top_left">
+							<!--                <text>杞簱鍗曞彿锛�</text>-->
+							<text>{{ item.code }}</text>
+						</view>
+						<view class="content_list_item_top_right">
+							<span class="warning" v-if="item.status === 0">寰呭嚭搴�</span>
+							<span class="green" v-else-if="item.status === 1">宸插嚭搴�</span>
+							<span class="info" v-else-if="item.status === 2">宸插彇娑�</span>
+						</view>
+					</view>
+					<!-- item涓婚淇℃伅閮ㄥ垎 -->
+					<view class="content_list_item_content">
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ orderTyepToStr(item.billType) }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鍑哄簱浠撳簱锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.warehouseName + ' | ' + item.warehouseCode }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">璁″垝鍑哄簱锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.planDate }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鏉ユ簮绫诲瀷锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ tyepToStr(item.originType) }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鏉ユ簮鍗曞彿锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.originCode ? item.originCode : '-' }}
+							</view>
+						</view>
+					</view>
+				</view>
+			</scroll-view>
+		</view>
+		<!-- 閫夋嫨鏃ユ湡 -->
+		<u-calendar :show="timeShow" @close="timeShow = false" @confirm="timeConfirm"></u-calendar>
 	</view>
 </template>
 
 <script>
+	import Search from '@/components/Search.vue'
+	import LabelSelection from '@/components/LabelSelection.vue'
+	import { orderTyepToStr } from '@/util/constData.js'
 	export default {
+		components: {
+			Search,
+			LabelSelection
+		},
 		data() {
 			return {
-				
+				height: '',
+				top: '',
+				listData: {
+					capacity: 10,
+					page: 0,
+					total: 0,
+					planDateEnd: "",
+					planDateStart: "",
+					code: "",
+					originType: "",
+					status: ""
+				},
+				types: [
+					{ name: '杞﹂棿棰嗘枡', id: '1', isActive: false },
+					{ name: '鏈哄彴澶囨枡', id: '2', isActive: false },
+					{ name: '杞﹂棿杞簱', id: '3', isActive: false },
+					{ name: '瀹屽伐鍏ュ簱', id: '4', isActive: false },
+					{ name: '璁″垝棰嗘枡', id: '5', isActive: false },
+					{ name: '澶栧崗棰嗘枡', id: '6', isActive: false },
+					{ name: '澶栧崗瀹屽伐杞簱', id: '7', isActive: false },
+					{ name: '浜у搧鍏ュ簱', id: '8', isActive: false },
+					{ name: '浜у搧杞簱', id: '9', isActive: false },
+					{ name: '璁╂鏀捐鍏ュ簱', id: '10', isActive: false },
+					{ name: '璁╂鏀捐杞簱', id: '11', isActive: false },
+					{ name: '瀹㈣繑杩斾慨棰嗘枡', id: '12', isActive: false },
+					{ name: '瀹㈣繑杩斾慨鍏ュ簱', id: '13', isActive: false },
+					{ name: '璺ㄧ粍缁囪浆搴�', id: '14', isActive: false },
+					{ name: '宸ュ簭鎶ュ簾', id: '15', isActive: false },
+					{ name: '瀹㈤��杩斾慨棰嗘枡', id: '16', isActive: false },
+					{ name: '瀹㈤��杩斾慨鍏ュ簱', id: '17', isActive: false },
+					{ name: '閿�鍞嚭搴�', id: '18', isActive: false },
+					{ name: '璁╂閿�鍞�', id: '19', isActive: false },
+					{ name: '宸ュ崟鎶曟枡', id: '20', isActive: false },
+					{ name: '浠撳簱鎶ュ簾', id: '21', isActive: false },
+					{ name: '瀹㈤��妫�楠岄鏂�', id: '22', isActive: false },
+					{ name: '瀹㈣繑妫�楠岄鏂�', id: '23', isActive: false },
+					{ name: '搴撳瓨璋冩暣', id: '28', isActive: false },
+					{ name: '搴熷搧鍏ュ簱', id: '30', isActive: false }
+				],
+				tagList: [
+					{
+					    id: "",
+					    name: "鍏ㄩ儴",
+					    num: '0',
+					},
+					{
+					    id: "0",
+					    name: "寰呭嚭搴�",
+					    num: '0',
+					},
+					{
+					    id: "1",
+					    name: "宸插嚭搴�",
+					    num: "0",
+					},
+					{
+					    id: "2",
+					    name: "宸插彇娑�",
+					    num: "0",
+					}
+				],
+				data: [], // 宸ュ簭鏁版嵁
+				factoryList: [],
+				finished: true,
+				loading: false,
+				refreshing: false,
+				timeShow: false,
+				lists: []
 			};
+		},
+		onReady() {
+			var that = this
+			this.$nextTick(() => {
+				uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => {
+					that.height = `calc(100vh - ${rect.height + 80}px)`
+					that.top = `${rect.height}px`
+				}).exec()
+			})
+		},
+		methods: {
+			tyepToStr(type) {
+				//  <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+				for (const item of this.orderType) {
+					if (item.id == type) {
+						return item.name
+					}
+				}
+				return '-'
+			},
+			// 璺宠浆
+			jump(item) {
+				uni.navigateTo({
+					url: `/pages/planDetails/planDetails?id=${item.id}`
+				})
+			},
+			// 鑾峰彇澶撮儴缁勪欢楂樺害
+			getHeight(height) {
+				this.height = height
+			},
+			// 閲嶇疆
+			reset() {
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.listData.mixParam = ''
+				this.listData.startDate = ''
+				this.listData.endDate = ''
+				this.listData.procedureIds = []
+				if (this.factoryList.length > 0) {
+					this.listData.departIds = this.factoryList[0].id
+				}
+				if (this.data.length > 0) {
+					this.data.forEach(item => {
+						item.isActive = false
+					})
+				}
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鏃ユ湡纭畾
+			timeConfirm(val) {
+				this.listData.startDate = val[0]
+				this.listData.endDate = val[val.length - 1]
+				this.timeShow = false
+			},
+			// 鍒囨崲宸ュ巶
+			changeTags(i, id) {
+				this.listData.departIds = id
+				this.getWorkingProcedures(id)
+				this.factoryList.forEach((item, index) => {
+					if (index === i) {
+						item.isActive = true
+					} else {
+						item.isActive = false
+					}
+				})
+			},
+			// 鎵撳紑鏃ユ湡鎻掍欢
+			openDate() {
+				this.timeShow = true
+			},
+			// 鎼滅储
+			searchInput(val) {
+				this.listData.mixParam = val
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.getLists()
+			},
+			// 鐐瑰嚮鏍囩鎼滅储
+			clickTag(ids) {
+				this.listData.cateIds = ids
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+			},
+			// 鑾峰彇鍒楄〃缁熻
+			pageCounts() {
+				pageCount({
+					factoryId: this.listData.departIds,
+					procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+					startDate: this.listData.startDate,
+					endDate: this.listData.endDate,
+					statusList: this.listData.cateIds
+				}).then(res => {
+					if (res.code === 200 && res.data) {
+						this.tagList[0].num = res.data.allNum.toString()
+						this.tagList[1].num = res.data.startNum.toString()
+						this.tagList[2].num = res.data.ingNum.toString()
+						this.tagList[3].num = res.data.endNum.toString()
+					}
+				})
+			},
+			// 鑾峰彇宸ュ巶鏁版嵁
+			getOrganizations() {
+				getOrganization({
+					type: 1
+				}).then(res => {
+					if (res.code === 200 && res.data && res.data.length !== 0) {
+						res.data.forEach((item, i) => {
+							item.isActive = i === 0;
+						})
+						if (res.data.length > 0) {
+							this.factoryList = res.data
+							this.listData.departIds = this.factoryList[0].id
+							this.listData.procedureIds = ''
+							this.finished = false
+							this.getWorkingProcedures(this.factoryList[0].id)
+							this.getLists()
+							this.pageCounts()
+						}
+					}
+				})
+			},
+			// 鑾峰彇宸ュ簭鏁版嵁
+			getWorkingProcedures(orgId) {
+				this.data = []
+				getWorkingProcedure({
+						orgId
+					})
+					.then(res => {
+						if (res.code === 200 && res.data && res.data.length !== 0) {
+							res.data.forEach((item, i) => {
+								item.isActive = false;
+							})
+							this.data = res.data
+						}
+					})
+			},
+			// 鎼滅储寮规鎻愪氦
+			submit() {
+				let pmodelOrgId = []
+				this.data.forEach((item) => {
+					if (item.isActive) {
+						pmodelOrgId.push(item.id)
+					}
+				})
+				this.listData.procedureIds = pmodelOrgId
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鑾峰彇璁″垝鍒楄〃鏁版嵁
+			getLists() {
+				console.log('getLists')
+				if (!this.finished) {
+					this.loading = true
+					this.listData.page = this.listData.page++
+					getList({
+						capacity: this.listData.capacity,
+						model: {
+							mixParam: this.listData.mixParam,
+							startDate: this.listData.startDate,
+							endDate: this.listData.endDate,
+							procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+							factoryId: this.listData.departIds,
+							statusList: this.listData.cateIds
+						},
+						page: this.listData.page,
+						sorts: [{
+							direction: 'ASC',
+							property: 'publishDate'
+						}]
+					}).then(res => {
+						this.loading = false
+						this.listData.total = res.data.total
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+						if (res.code === 200 && res.data.records.length !== 0) {
+							if (this.lists.length === 0) {
+								this.lists = res.data.records
+							} else {
+								this.lists.push(...res.data.records)
+							}
+						} else {
+							this.finished = true
+						}
+					}).catch(err => {
+						this.loading = false
+						this.finished = true
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+					})
+				}
+			}
 		}
 	}
 </script>
 
-<style lang="scss">
+<style lang="scss" scoped>
+	.content {
+		.content_search {
+			width: 100%;
+			padding: 30rpx;
+			background: white;
+			position: sticky;
+			top: 0;
+			z-index: 999;
+			box-sizing: border-box;
 
-</style>
+			.Search_item {
+				margin-bottom: 40rpx;
+
+				.Search_item_label {
+					font-size: 30rpx;
+					font-weight: 500;
+					color: #222222;
+				}
+
+				.Search_item_content {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					margin-top: 30rpx;
+
+					.tag {
+						display: flex;
+						flex-wrap: wrap;
+						align-items: center;
+
+						.tag_active {
+							background: $nav-color !important;
+							color: #ffffff !important;
+						}
+
+						.tag_item {
+							padding: 22rpx 26rpx;
+							box-sizing: border-box;
+							background: #F2F2F2;
+							border-radius: 8rpx;
+							font-size: 26rpx;
+							font-weight: 400;
+							color: #333333;
+							display: flex;
+							align-items: center;
+							justify-content: center;
+							margin-right: 22rpx;
+							margin-bottom: 22rpx;
+						}
+					}
+
+					text {
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #333333;
+						margin: 0 30rpx;
+					}
+
+					.Search_item_content_a {
+						padding: 20rpx 0;
+						flex: 1;
+						background: #F7F7F7;
+						border-radius: 8rpx;
+						border: 1rpx solid #EEEEEE;
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #B2B2B2;
+						display: flex;
+						align-items: center;
+						justify-content: center;
+					}
+				}
+			}
+
+			.content_search_x {
+				height: 24rpx;
+			}
+		}
+
+		.content_list {
+			width: 100%;
+			display: flex;
+			flex-direction: column;
+
+			.content_list_item {
+				width: 100%;
+				box-sizing: border-box;
+				padding: 30rpx;
+				display: flex;
+				flex-direction: column;
+				border-bottom: 1rpx solid #ececec;
+				background: white;
+
+				.content_list_item_top {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+
+					.content_list_item_top_left {
+						display: flex;
+						align-items: center;
+
+						text {
+							font-size: 32rpx;
+							font-weight: 500;
+							color: #333333;
+						}
+					}
+
+					.content_list_item_top_right {
+						font-size: 26rpx;
+						font-weight: 400;
+
+						.created {
+							color: $nav-stateColor1 !important;
+						}
+
+						.warning {
+							color: $nav-stateColor5 !important;
+						}
+
+						.green {
+							color: $nav-stateColor6 !important;
+						}
+
+						.info {
+							color: $nav-stateColor3 !important;
+						}
+					}
+				}
+
+				.content_list_item_content {
+					padding: 24rpx 30rpx;
+					background: #f7f7f7;
+					border-radius: 16rpx;
+					display: flex;
+					flex-wrap: wrap;
+					justify-content: space-between;
+					margin-top: 32rpx;
+
+					.content_list_item_content_item {
+						width: 100%;
+						display: flex;
+						margin-top: 24rpx;
+
+						&:first-child {
+							margin-top: 0;
+						}
+
+						// &:nth-child(1) {
+						//   margin-top: 0 !important;
+						// }
+						// &:nth-child(2) {
+						//   margin-top: 0 !important;
+						// }
+						.content_list_item_content_item_label {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #666666;
+							flex-shrink: 0;
+						}
+
+						.content_list_item_content_item_nr {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #222222;
+							margin-right: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.content_total {
+			width: 100%;
+			height: 80rpx;
+			padding: 24rpx 30rpx;
+			background: #F7F7F7;
+			font-size: 24rpx;
+			font-weight: 400;
+			box-sizing: border-box;
+			color: #666666;
+			position: sticky;
+			z-index: 99;
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/pages/transferList/transferList.vue b/minipro_standard/pages_adjust/pages/transferList/transferList.vue
index 8fb249b..411c87c 100644
--- a/minipro_standard/pages_adjust/pages/transferList/transferList.vue
+++ b/minipro_standard/pages_adjust/pages/transferList/transferList.vue
@@ -2,7 +2,7 @@
 	<view class="content">
 		<view class="content_search">
 			<Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true"
-				placeholder="鎼滅储鐗╂枡鍚嶇О/缂栫爜/宸ュ簭鍚嶇О">
+				placeholder="鎼滅储杞簱鍗曞彿">
 				<template v-slot:content>
 					<view class="Search_item">
 						<view class="Search_item_label">璁″垝鏃ユ湡</view>
diff --git a/minipro_standard/pages_adjust/pages/warehousingDetails1/warehousingDetails1.vue b/minipro_standard/pages_adjust/pages/warehousingDetails1/warehousingDetails1.vue
new file mode 100644
index 0000000..3f94b84
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/warehousingDetails1/warehousingDetails1.vue
@@ -0,0 +1,346 @@
+<template>
+	<view class="content">
+		<view class="order-message">
+			<view class="content_list_item_top">
+				<view class="content_list_item_top_left">
+					<!--<text>鍏ュ簱鍗曞彿锛�</text>-->
+					<text>{{ data.code }}</text>
+				</view>
+				<view class="content_list_item_top_right">
+					<text class="warning" v-if="data.status === 0">寰呭叆搴�</text>
+					<text class="green" v-else-if="data.status === 1">宸插叆搴�</text>
+					<text class="info" v-else-if="data.status === 2">宸插彇娑�</text>
+				</view>
+			</view>
+			<view class="content_list_item_content">
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+					<view class="content_list_item_content_item_nr" v-if="data.billType">
+						{{ orderTyepToStr(data.billType) }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鍏ュ簱浠撳簱锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.warehouseCode + ' | ' + data.warehouseName }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">璁″垝鍏ュ簱锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.planDate }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鏉ユ簮绫诲瀷锛�</view>
+					<view class="content_list_item_content_item_nr" v-if="data.originType">
+						{{ tyepToStr(data.originType) }}
+					</view>
+				</view>
+				<view class="content_list_item_content_item">
+					<view class="content_list_item_content_item_label">鏉ユ簮鍗曞彿锛�</view>
+					<view class="content_list_item_content_item_nr">
+						{{ data.originCode ? data.originCode : '-' }}
+					</view>
+				</view>
+			</view>
+		</view>
+		<!-- 杞簱鐗╂枡 -->
+		<view class="title">
+			<text class="title-prefix"></text>
+			<text>鍏ュ嚭搴撶墿鏂�</text>
+		</view>
+		<view class="material-content">
+			<view class="item-style" v-for="(item, index) in materailArray" :key="index">
+				<view class="item-title-style">
+					<text style="font-weight: 500;">{{ item.materialName + ' | ' + item.materialCode}}</text>
+				</view>
+				<view class="item-content-style">
+					<view class="content_list_item_content_item">
+						<text class="content_list_item_content_item_label">鎵规鍙凤細</text>
+						<text class="content_list_item_content_item_nr">{{ item.batch || '-' }}</text>
+					</view>
+					<view class="content_list_item_content_item">
+						<text class="content_list_item_content_item_label">鏁伴噺锛�</text>
+						<text class="content_list_item_content_item_nr">{{ item.doneNum + item.unitName }}</text>
+					</view>
+					<view class="content_list_item_content_item">
+						<text class="content_list_item_content_item_label">宸ュ簭锛�</text>
+						<text class="content_list_item_content_item_nr">{{ item.procedureName || '-' }}</text>
+					</view>
+					<view class="content_list_item_content_item">
+						<view class="content_list_item_content_item_label">璐ㄩ噺锛�</view>
+						<view class="content_list_item_content_item_nr">
+							<text v-if="item.qualityType == 0" class="green">鍚堟牸</text>
+							<text v-else-if="item.qualityType == 1" class="yellow">涓嶈壇</text>
+							<text v-else-if="item.qualityType == 2" class="red">鎶ュ簾</text>
+							<text v-else>-</text>
+						</view>
+					</view>
+					<view class="content_list_item_content_item">
+						<text class="content_list_item_content_item_label">鍏ュ簱璐т綅锛�</text>
+						<text class="content_list_item_content_item_nr">{{ item.locationName ? item.locationName : '-' }}</text>
+					</view>
+				</view>
+			</view>
+		</view>
+		<view v-if="data.status === 0" style="height:94rpx"></view>
+		<view v-if="data.status === 0" class="bottom-button">
+			<button class="button button-cancel" @click="submit">鍘诲叆搴�</button>
+			<!-- <button class="button button-cancel" @click="cancel">鍙栨秷</button> -->
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		orderTyepToStr
+	} from '@/util/constData.js'
+	export default {
+		data() {
+			return {
+				types: [{
+						name: '鍏ㄩ儴',
+						id: '',
+						isActive: true
+					},
+					{
+						name: '閲囪喘璁㈠崟',
+						id: '0',
+						isActive: false
+					},
+					{
+						name: '鐢熶骇宸ュ崟',
+						id: '1',
+						isActive: false
+					},
+					{
+						name: '閿�鍞鍗�',
+						id: '2',
+						isActive: false
+					},
+					{
+						name: '杞簱鍗�',
+						id: '3',
+						isActive: false
+					},
+					{
+						name: '鐩樼偣鍗�',
+						id: '4',
+						isActive: false
+					},
+				],
+				data: {},
+				materailArray: []
+			};
+		},
+		methods: {
+			tyepToStr(type) {
+				//  <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+				for (const item of this.types) {
+					if (parseInt(item.id) === this.type) {
+						return item.name
+					}
+				}
+				return '-'
+			},
+			submit() {
+
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content {
+		background: white;
+
+		.order-message {
+			padding: 30rpx;
+			display: flex;
+			flex-direction: column;
+
+			// border-bottom: 1rpx solid #ececec;
+			.content_list_item_top {
+				display: flex;
+				align-items: center;
+				justify-content: space-between;
+
+				.content_list_item_top_left {
+					display: flex;
+
+					// align-items: center;
+					text {
+						font-size: 32rpx;
+						font-weight: 500;
+						color: #333333;
+					}
+				}
+
+				.content_list_item_top_right {
+					font-size: 26rpx;
+					font-weight: 400;
+
+					.created {
+						color: $nav-stateColor1 !important;
+					}
+
+					.warning {
+						color: $nav-stateColor5 !important;
+					}
+
+					.green {
+						color: $nav-stateColor6 !important;
+					}
+
+					.info {
+						color: $nav-stateColor3 !important;
+					}
+				}
+			}
+
+			.content_list_item_content {
+				padding: 24rpx 30rpx;
+				background: #f7f7f7;
+				border-radius: 16rpx;
+				display: flex;
+				flex-wrap: wrap;
+				justify-content: space-between;
+				margin-top: 32rpx;
+
+				.content_list_item_content_item:first-child {
+					margin-top: 0;
+				}
+
+				.content_list_item_content_item {
+					width: 100%;
+					display: flex;
+					align-items: center;
+					margin-top: 24rpx;
+
+					.content_list_item_content_item_label {
+						font-size: 24rpx;
+						font-weight: 400;
+						color: #666666;
+						flex-shrink: 0;
+					}
+
+					.content_list_item_content_item_nr {
+						font-size: 24rpx;
+						font-weight: 400;
+						color: #222222;
+						margin-right: 10rpx;
+					}
+				}
+			}
+		}
+
+		.title {
+			background-color: #f7f7f7;
+			padding: 30rpx;
+			font-size: 30rpx;
+			display: flex;
+			align-items: center;
+
+			.title-prefix {
+				display: inline-block;
+				background-color: #4275FC;
+				height: 30rpx;
+				width: 8rpx;
+				border-radius: 1rpx;
+				margin-right: 12rpx;
+			}
+		}
+
+		.material-content {
+			padding: 30rpx;
+
+			.item-style {
+				width: initial;
+				border-bottom: 1rpx solid #ececec;
+				margin-top: 30rpx;
+
+				&:first-child {
+					margin-top: 0 !important;
+				}
+
+				&:last-child {
+					border: none;
+				}
+
+				.item-title-style {
+					margin-bottom: 12rpx;
+					font-size: 30rpx;
+				}
+
+				.item-content-style {
+					// padding: 24rpx 30rpx;
+					// background-color: #f7f7f7;
+					// border-radius: 16rpx;
+					display: flex;
+					flex-wrap: wrap;
+					padding-bottom: 30rpx;
+					justify-content: space-between;
+
+					&:last-child {
+						padding-bottom: 0;
+					}
+
+					.content_list_item_content_item {
+						width: 100%;
+						display: flex;
+						margin-top: 24rpx;
+
+						.content_list_item_content_item_label {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #666666;
+							flex-shrink: 0;
+						}
+
+						.content_list_item_content_item_nr {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #222222;
+							margin-right: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.bottom-button {
+			padding: 1rpx;
+			background-color: #f7f7f7;
+			position: fixed;
+			width: 100%;
+			bottom: 0;
+			height: 188rpx;
+			display: flex;
+			justify-content: space-between;
+
+			.button-action {
+				background: #fff;
+				color: $nav-color;
+			}
+
+			.button-cancel {
+				background: $nav-color;
+				color: #FFFFFF;
+			}
+
+			.button {
+				margin: 32rpx 32rpx 68rpx 32rpx;
+				height: 88rpx;
+				/*width: 668rpx;*/
+				// width: 334rpx;
+				border: none;
+				border-radius: 8rpx;
+				box-shadow: 0 0 12rpx 0 rgba(0, 0, 0, 0.08);
+				display: flex;
+				align-items: center;
+				justify-content: center;
+			}
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/minipro_standard/pages_adjust/pages/warehousingList/warehousingList.vue b/minipro_standard/pages_adjust/pages/warehousingList/warehousingList.vue
new file mode 100644
index 0000000..0649278
--- /dev/null
+++ b/minipro_standard/pages_adjust/pages/warehousingList/warehousingList.vue
@@ -0,0 +1,562 @@
+<template>
+	<view class="content">
+		<view class="content_search">
+			<Search @searchInput="searchInput" @submit="submit" @reset="reset" :isShow="true"
+				placeholder="鎼滅储鍏ュ簱鍗曞彿/鍏ュ簱浠撳簱">
+				<template v-slot:content>
+					<view class="Search_item">
+						<view class="Search_item_label">璁″垝鏃ユ湡</view>
+						<view class="Search_item_content" @click="openDate">
+							<view class="Search_item_content_a" :style="listData.startDate ? 'color: #000' : ''">
+								{{ listData.startDate ? listData.startDate : '寮�濮嬫棩鏈�'}}</view>
+							<text>-</text>
+							<view class="Search_item_content_a" :style="listData.endDate ? 'color: #000' : ''">
+								{{ listData.endDate ? listData.endDate : '缁撴潫鏃ユ湡'}}</view>
+						</view>
+					</view>
+					<view class="Search_item">
+						<view class="Search_item_label">鍗曟嵁绫诲瀷</view>
+						<view class="Search_item_content">
+							<view class="tag">
+								<view class="tag_item" :class="{'tag_active': item.isActive}" v-for="(item, i) in types"
+									:key="item.id" @click="changeTags(i)">{{item.name}}</view>
+							</view>
+						</view>
+					</view>
+				</template>
+			</Search>
+			<view class="content_search_x"></view>
+			<LabelSelection :TagList="tagList" :isShow="true" @change="clickTag" />
+		</view>
+		<view class="content_total" :style="{top: top}">鍏眥{listData.total}}鏉℃暟鎹�</view>
+		<view class="content_list">
+			<scroll-view @scrolltolower="getLists" scroll-y :style="{height: height}">
+				<view class="content_list_item" v-for="(item, i) in lists" :key="i" @click="jump(item)">
+					<!-- item澶撮儴瑙嗗浘 -->
+					<view class="content_list_item_top">
+						<view class="content_list_item_top_left">
+							<!--                <text>杞簱鍗曞彿锛�</text>-->
+							<text>{{ item.code }}</text>
+						</view>
+						<view class="content_list_item_top_right">
+							<span class="warning" v-if="item.status == 0">寰呭叆搴�</span>
+							<span class="green" v-else-if="item.status == 1">宸插叆搴�</span>
+							<span class="info" v-else-if="item.status == 2">宸插彇娑�</span>
+						</view>
+					</view>
+					<!-- item涓婚淇℃伅閮ㄥ垎 -->
+					<view class="content_list_item_content">
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鍗曟嵁绫诲瀷锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ orderTyepToStr(item.billType) }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鍏ュ簱浠撳簱锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.warehouseName + ' | ' + item.warehouseCode }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">璁″垝鍏ュ簱锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.planDate }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鏉ユ簮绫诲瀷锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ tyepToStr(item.originType) }}
+							</view>
+						</view>
+						<view class="content_list_item_content_item">
+							<view class="content_list_item_content_item_label">鏉ユ簮鍗曞彿锛�</view>
+							<view class="content_list_item_content_item_nr">
+								{{ item.originCode ? item.originCode : '-' }}
+							</view>
+						</view>
+					</view>
+				</view>
+			</scroll-view>
+		</view>
+		<!-- 閫夋嫨鏃ユ湡 -->
+		<u-calendar :show="timeShow" @close="timeShow = false" @confirm="timeConfirm"></u-calendar>
+	</view>
+</template>
+
+<script>
+	import Search from '@/components/Search.vue'
+	import LabelSelection from '@/components/LabelSelection.vue'
+	import { orderTyepToStr } from '@/util/constData.js'
+	export default {
+		components: {
+			Search,
+			LabelSelection
+		},
+		data() {
+			return {
+				height: '',
+				top: '',
+				listData: {
+					capacity: 10,
+					page: 0,
+					total: 0,
+					planDateEnd: "",
+					planDateStart: "",
+					code: "",
+					originType: "",
+					status: ""
+				},
+				types: [
+					{ name: '杞﹂棿棰嗘枡', id: '1', isActive: false },
+					{ name: '鏈哄彴澶囨枡', id: '2', isActive: false },
+					{ name: '杞﹂棿杞簱', id: '3', isActive: false },
+					{ name: '瀹屽伐鍏ュ簱', id: '4', isActive: false },
+					{ name: '璁″垝棰嗘枡', id: '5', isActive: false },
+					{ name: '澶栧崗棰嗘枡', id: '6', isActive: false },
+					{ name: '澶栧崗瀹屽伐杞簱', id: '7', isActive: false },
+					{ name: '浜у搧鍏ュ簱', id: '8', isActive: false },
+					{ name: '浜у搧杞簱', id: '9', isActive: false },
+					{ name: '璁╂鏀捐鍏ュ簱', id: '10', isActive: false },
+					{ name: '璁╂鏀捐杞簱', id: '11', isActive: false },
+					{ name: '瀹㈣繑杩斾慨棰嗘枡', id: '12', isActive: false },
+					{ name: '瀹㈣繑杩斾慨鍏ュ簱', id: '13', isActive: false },
+					{ name: '璺ㄧ粍缁囪浆搴�', id: '14', isActive: false },
+					{ name: '宸ュ簭鎶ュ簾', id: '15', isActive: false },
+					{ name: '瀹㈤��杩斾慨棰嗘枡', id: '16', isActive: false },
+					{ name: '瀹㈤��杩斾慨鍏ュ簱', id: '17', isActive: false },
+					{ name: '閿�鍞嚭搴�', id: '18', isActive: false },
+					{ name: '璁╂閿�鍞�', id: '19', isActive: false },
+					{ name: '宸ュ崟鎶曟枡', id: '20', isActive: false },
+					{ name: '浠撳簱鎶ュ簾', id: '21', isActive: false },
+					{ name: '瀹㈤��妫�楠岄鏂�', id: '22', isActive: false },
+					{ name: '瀹㈣繑妫�楠岄鏂�', id: '23', isActive: false },
+					{ name: '搴撳瓨璋冩暣', id: '28', isActive: false },
+					{ name: '搴熷搧鍏ュ簱', id: '30', isActive: false }
+				],
+				tagList: [
+					{
+					    id: "",
+					    name: "鍏ㄩ儴",
+					    num: '0',
+					},
+					{
+					    id: "0",
+					    name: "寰呭嚭搴�",
+					    num: '0',
+					},
+					{
+					    id: "1",
+					    name: "宸插嚭搴�",
+					    num: "0",
+					},
+					{
+					    id: "2",
+					    name: "宸插彇娑�",
+					    num: "0",
+					}
+				],
+				data: [], // 宸ュ簭鏁版嵁
+				factoryList: [],
+				finished: true,
+				loading: false,
+				refreshing: false,
+				timeShow: false,
+				lists: []
+			};
+		},
+		onReady() {
+			var that = this
+			this.$nextTick(() => {
+				uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => {
+					that.height = `calc(100vh - ${rect.height + 80}px)`
+					that.top = `${rect.height}px`
+				}).exec()
+			})
+		},
+		methods: {
+			tyepToStr(type) {
+				//  <!-- 1銆佽溅闂撮鏂欙紱2銆佽溅闂村鏂欙紱3銆佸叾浠栵紱4銆佸畬宸ュ叆搴� -->
+				for (const item of this.orderType) {
+					if (item.id == type) {
+						return item.name
+					}
+				}
+				return '-'
+			},
+			// 璺宠浆
+			jump(item) {
+				uni.navigateTo({
+					url: `/pages/planDetails/planDetails?id=${item.id}`
+				})
+			},
+			// 鑾峰彇澶撮儴缁勪欢楂樺害
+			getHeight(height) {
+				this.height = height
+			},
+			// 閲嶇疆
+			reset() {
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.listData.mixParam = ''
+				this.listData.startDate = ''
+				this.listData.endDate = ''
+				this.listData.procedureIds = []
+				if (this.factoryList.length > 0) {
+					this.listData.departIds = this.factoryList[0].id
+				}
+				if (this.data.length > 0) {
+					this.data.forEach(item => {
+						item.isActive = false
+					})
+				}
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鏃ユ湡纭畾
+			timeConfirm(val) {
+				this.listData.startDate = val[0]
+				this.listData.endDate = val[val.length - 1]
+				this.timeShow = false
+			},
+			// 鍒囨崲宸ュ巶
+			changeTags(i, id) {
+				this.listData.departIds = id
+				this.getWorkingProcedures(id)
+				this.factoryList.forEach((item, index) => {
+					if (index === i) {
+						item.isActive = true
+					} else {
+						item.isActive = false
+					}
+				})
+			},
+			// 鎵撳紑鏃ユ湡鎻掍欢
+			openDate() {
+				this.timeShow = true
+			},
+			// 鎼滅储
+			searchInput(val) {
+				this.listData.mixParam = val
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				this.getLists()
+			},
+			// 鐐瑰嚮鏍囩鎼滅储
+			clickTag(ids) {
+				this.listData.cateIds = ids
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+			},
+			// 鑾峰彇鍒楄〃缁熻
+			pageCounts() {
+				pageCount({
+					factoryId: this.listData.departIds,
+					procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+					startDate: this.listData.startDate,
+					endDate: this.listData.endDate,
+					statusList: this.listData.cateIds
+				}).then(res => {
+					if (res.code === 200 && res.data) {
+						this.tagList[0].num = res.data.allNum.toString()
+						this.tagList[1].num = res.data.startNum.toString()
+						this.tagList[2].num = res.data.ingNum.toString()
+						this.tagList[3].num = res.data.endNum.toString()
+					}
+				})
+			},
+			// 鑾峰彇宸ュ巶鏁版嵁
+			getOrganizations() {
+				getOrganization({
+					type: 1
+				}).then(res => {
+					if (res.code === 200 && res.data && res.data.length !== 0) {
+						res.data.forEach((item, i) => {
+							item.isActive = i === 0;
+						})
+						if (res.data.length > 0) {
+							this.factoryList = res.data
+							this.listData.departIds = this.factoryList[0].id
+							this.listData.procedureIds = ''
+							this.finished = false
+							this.getWorkingProcedures(this.factoryList[0].id)
+							this.getLists()
+							this.pageCounts()
+						}
+					}
+				})
+			},
+			// 鑾峰彇宸ュ簭鏁版嵁
+			getWorkingProcedures(orgId) {
+				this.data = []
+				getWorkingProcedure({
+						orgId
+					})
+					.then(res => {
+						if (res.code === 200 && res.data && res.data.length !== 0) {
+							res.data.forEach((item, i) => {
+								item.isActive = false;
+							})
+							this.data = res.data
+						}
+					})
+			},
+			// 鎼滅储寮规鎻愪氦
+			submit() {
+				let pmodelOrgId = []
+				this.data.forEach((item) => {
+					if (item.isActive) {
+						pmodelOrgId.push(item.id)
+					}
+				})
+				this.listData.procedureIds = pmodelOrgId
+				this.listData.page = 0
+				this.finished = false
+				this.lists = []
+				// this.getLists()
+				// this.pageCounts()
+			},
+			// 鑾峰彇璁″垝鍒楄〃鏁版嵁
+			getLists() {
+				console.log('getLists')
+				if (!this.finished) {
+					this.loading = true
+					this.listData.page = this.listData.page++
+					getList({
+						capacity: this.listData.capacity,
+						model: {
+							mixParam: this.listData.mixParam,
+							startDate: this.listData.startDate,
+							endDate: this.listData.endDate,
+							procedureIdList: this.listData.procedureIds ? this.listData.procedureIds : [],
+							factoryId: this.listData.departIds,
+							statusList: this.listData.cateIds
+						},
+						page: this.listData.page,
+						sorts: [{
+							direction: 'ASC',
+							property: 'publishDate'
+						}]
+					}).then(res => {
+						this.loading = false
+						this.listData.total = res.data.total
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+						if (res.code === 200 && res.data.records.length !== 0) {
+							if (this.lists.length === 0) {
+								this.lists = res.data.records
+							} else {
+								this.lists.push(...res.data.records)
+							}
+						} else {
+							this.finished = true
+						}
+					}).catch(err => {
+						this.loading = false
+						this.finished = true
+						if (this.refreshing) {
+							this.lists = []
+							this.refreshing = false;
+						}
+					})
+				}
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.content {
+		.content_search {
+			width: 100%;
+			padding: 30rpx;
+			background: white;
+			position: sticky;
+			top: 0;
+			z-index: 999;
+			box-sizing: border-box;
+
+			.Search_item {
+				margin-bottom: 40rpx;
+
+				.Search_item_label {
+					font-size: 30rpx;
+					font-weight: 500;
+					color: #222222;
+				}
+
+				.Search_item_content {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					margin-top: 30rpx;
+
+					.tag {
+						display: flex;
+						flex-wrap: wrap;
+						align-items: center;
+
+						.tag_active {
+							background: $nav-color !important;
+							color: #ffffff !important;
+						}
+
+						.tag_item {
+							padding: 22rpx 26rpx;
+							box-sizing: border-box;
+							background: #F2F2F2;
+							border-radius: 8rpx;
+							font-size: 26rpx;
+							font-weight: 400;
+							color: #333333;
+							display: flex;
+							align-items: center;
+							justify-content: center;
+							margin-right: 22rpx;
+							margin-bottom: 22rpx;
+						}
+					}
+
+					text {
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #333333;
+						margin: 0 30rpx;
+					}
+
+					.Search_item_content_a {
+						padding: 20rpx 0;
+						flex: 1;
+						background: #F7F7F7;
+						border-radius: 8rpx;
+						border: 1rpx solid #EEEEEE;
+						font-size: 26rpx;
+						font-weight: 400;
+						color: #B2B2B2;
+						display: flex;
+						align-items: center;
+						justify-content: center;
+					}
+				}
+			}
+
+			.content_search_x {
+				height: 24rpx;
+			}
+		}
+
+		.content_list {
+			width: 100%;
+			display: flex;
+			flex-direction: column;
+
+			.content_list_item {
+				width: 100%;
+				box-sizing: border-box;
+				padding: 30rpx;
+				display: flex;
+				flex-direction: column;
+				border-bottom: 1rpx solid #ececec;
+				background: white;
+
+				.content_list_item_top {
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+
+					.content_list_item_top_left {
+						display: flex;
+						align-items: center;
+
+						text {
+							font-size: 32rpx;
+							font-weight: 500;
+							color: #333333;
+						}
+					}
+
+					.content_list_item_top_right {
+						font-size: 26rpx;
+						font-weight: 400;
+
+						.created {
+							color: $nav-stateColor1 !important;
+						}
+
+						.warning {
+							color: $nav-stateColor5 !important;
+						}
+
+						.green {
+							color: $nav-stateColor6 !important;
+						}
+
+						.info {
+							color: $nav-stateColor3 !important;
+						}
+					}
+				}
+
+				.content_list_item_content {
+					padding: 24rpx 30rpx;
+					background: #f7f7f7;
+					border-radius: 16rpx;
+					display: flex;
+					flex-wrap: wrap;
+					justify-content: space-between;
+					margin-top: 32rpx;
+
+					.content_list_item_content_item {
+						width: 100%;
+						display: flex;
+						margin-top: 24rpx;
+
+						&:first-child {
+							margin-top: 0;
+						}
+
+						// &:nth-child(1) {
+						//   margin-top: 0 !important;
+						// }
+						// &:nth-child(2) {
+						//   margin-top: 0 !important;
+						// }
+						.content_list_item_content_item_label {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #666666;
+							flex-shrink: 0;
+						}
+
+						.content_list_item_content_item_nr {
+							font-size: 24rpx;
+							font-weight: 400;
+							color: #222222;
+							margin-right: 10rpx;
+						}
+					}
+				}
+			}
+		}
+
+		.content_total {
+			width: 100%;
+			height: 80rpx;
+			padding: 24rpx 30rpx;
+			background: #F7F7F7;
+			font-size: 24rpx;
+			font-weight: 400;
+			box-sizing: border-box;
+			color: #666666;
+			position: sticky;
+			z-index: 99;
+		}
+	}
+</style>
\ No newline at end of file

--
Gitblit v1.9.3