lilei 2 anni fa
parent
commit
251c54141b

+ 1 - 1
pages/latePlay/chooseBulk.vue

@@ -162,7 +162,7 @@
 				}
 				.item-info{
 					.item-name{
-						font-size: 32upx;
+						font-size: 30upx;
 						display: flex;
 						align-items: center;
 					}

+ 57 - 52
pages/latePlay/chooseProduct.vue

@@ -2,19 +2,23 @@
 	<view class="moreShelfPart flex flex_column">
 		<view class="moreShelfPart-search">
 			<view class="p-title flex align_center">
-				<view class="shelfName flex"><text></text>{{shelfInfo.shelfName}}</view>
-				<view class="btns" @click="showTab = true">筛选<u-icon name="more-circle"></u-icon></view>
+				<text></text>
+				<view class="shelfName flex">
+					<view>{{shelfInfo.shelfName}}</view>
+				</view>
+				<view class="btns" @click="showTab = true">筛选<u-icon size="20" name="arrow-down"></u-icon></view>
 			</view>
 			<view class="search flex align_center">
 				<view class="input">
 					<u-search 
+					focus
 					v-model="queryWord" 
-					@input="change"
 					@custom="searchPart" 
 					@search="searchPart" 
 					@clear="clearSearch" 
+					@input="$u.debounce(changeSearch, 800)"
 					bg-color="#fff" 
-					:action-style="{border:'0.1rpx solid #00aaff',borderRadius:'50rpx',color:'#00aaff'}" 
+					:show-action="false"
 					placeholder="请输入货位号/产品编码/产品名称搜索"></u-search>
 				</view>
 				<view class="icon" @click="toScan">
@@ -63,7 +67,7 @@
 			<view class="tabBox flex flex_column">
 				<view class="tabs">
 					<view class="flex">
-						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=item">{{item}}层</view>
+						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=curTab==item?'':item">{{item}}层</view>
 					</view>
 				</view>
 				<view class="btns">
@@ -151,15 +155,13 @@
 			// -------------------
 			clearSearch(){
 				this.queryWord = ''
+				this.changeSearch()
+			},
+			changeSearch(v){
 				this.pageNo = 1
 				this.partList = []
 				this.getpartList()
 			},
-			change(v){
-				if(v==''){
-					this.clearSearch()
-				}
-			},
 			// 搜索配件
 			searchPart(){
 				this.getpartList()
@@ -268,53 +270,56 @@
 		width: 100%;
 		height: 100vh;
 		.moreShelfPart-search{
-			padding: 0 10rpx;
+			padding: 10rpx 20rpx;
 			background-color: #FFFFFF;
 			border-bottom: 2rpx solid #f5f5f5;
-		}
-		.p-title{
-			padding: 0 20rpx;
-			display: flex;
-			align-items: center;
-			color: #222;
-			font-size: 32rpx;
-			.shelfName{
-				width: 80%;
-				height: 50rpx;
-				text-overflow: ellipsis;
-				overflow: hidden;
-				flex-grow: 1;
-				font-weight: bold;
-				text{
-					display: block;
-					height: 30rpx;
-					width: 6rpx;
-					background: #0485F6;
-					margin-right: 10rpx;
-					border-radius: 10rpx;
-					margin-top: 10rpx;
+			
+			.p-title{
+				padding: 0 10rpx;
+				display: flex;
+				align-items: center;
+				color: #222;
+				font-size: 30rpx;
+				> text{
+						display: block;
+						height: 30rpx;
+						width: 6rpx;
+						background: #0485F6;
+						margin-right: 10rpx;
+						border-radius: 10rpx;
+					}
+				.shelfName{
+					flex-grow: 1;
+					font-weight: bold;
+					width: 80%;
+					> view{
+						overflow: hidden;
+						white-space: nowrap;
+						text-overflow: ellipsis;
+					}
+				}
+				.btns{
+					width:100rpx;
+					text-align: right;
+					font-size: 28rpx;
+					color: #0485F6;
 				}
 			}
-			.btns{
-				width:100rpx;
-				text-align: right;
-				font-size: 28rpx;
-			}
-		}
-		.search{
-			padding: 0.5rem;
-			.input{
-				flex-grow: 1;
-				border:0.1rpx solid #eee;
-				padding: 0.1rpx;
+			.search{
+				margin-top: 15upx;
+				padding: 0.1rem;
 				border-radius: 50rpx;
-				padding-right: 10rpx;
-			}
-			.icon{
-				width: 10%;
-				text-align: center;
-				font-size: 50rpx;
-				color: #999;
+				border:0.1rpx solid #eee;
+				.input{
+					flex-grow: 1;
+					padding: 0.1rpx;
+				}
+				.icon{
+					width: 13%;
+					text-align: center;
+					font-size: 46rpx;
+					color: #999;
+				}
 			}
 		}
 		.moreShelfPart-body{

+ 1 - 1
pages/shelfSetting/addShelfHw.vue

@@ -3,7 +3,7 @@
 		<view class="form-body">
 			<u-form :model="form" label-width="155rpx" :error-type="['toast']" ref="uForm">
 				<u-form-item label="货位号" required prop="shelfPlaceCode">
-					<u-input v-model="form.shelfPlaceCode" :maxlength="30" placeholder="请输入货位号(最多30个字符)"/>
+					<u-input focus v-model="form.shelfPlaceCode" :maxlength="30" placeholder="请输入货位号(最多30个字符)"/>
 				</u-form-item>
 				<u-form-item label="绑定产品" v-show="type=='add'">
 					<view style="flex-grow: 1;" v-if="productEntity&&productEntity.code" @click="toBindProduct">

+ 6 - 6
pages/shelfSetting/bindProduct.vue

@@ -6,12 +6,12 @@
 					<u-search 
 					focus
 					v-model="queryWord" 
-					@input="$u.debounce(getProductList, 500)"
+					@input="$u.debounce(getProductList, 800)"
 					@custom="$u.debounce(getProductList, 500)" 
 					@search="$u.debounce(getProductList, 500)" 
 					@clear="clearSearch" 
 					bg-color="#fff" 
-					:action-style="{border:'0.1rpx solid #00aaff',borderRadius:'50rpx',color:'#00aaff'}" 
+					:show-action="false"
 					placeholder="请输入产品编码查询并选择产品"></u-search>
 				</view>
 				<view class="icon" @click="toScan">
@@ -179,17 +179,17 @@
 			padding: 20rpx 30rpx;
 			background-color: #FFFFFF;
 			.search{
+				padding: 0.1rem;
+				border-radius: 50rpx;
+				border:0.1rpx solid #eee;
 				.input{
 					flex-grow: 1;
-					border:0.1rpx solid #eee;
 					padding: 0.1rpx;
-					border-radius: 50rpx;
-					padding-right: 10rpx;
 				}
 				.icon{
 					width: 13%;
 					text-align: center;
-					font-size: 50rpx;
+					font-size: 46rpx;
 					color: #999;
 				}
 			}

+ 1 - 1
pages/shelfSetting/editShelf.vue

@@ -1,6 +1,6 @@
 <template>
 	<view style="padding: 1rem;background: #fff;width:100%;height: 100vh;" class="flex flex_column">
-		<view style="flex:1;"><u-input style="border-radius: 50rpx;" height="90" v-model="shelfName" border placeholder="请输入货架名称"></u-input></view>
+		<view style="flex:1;"><u-input style="border-radius: 50rpx;" focus height="90" v-model="shelfName" border placeholder="请输入货架名称"></u-input></view>
 		<view><u-button @click="save" shape="circle" type="primary">保存</u-button></view>
 	</view>
 </template>

+ 1 - 1
pages/shelfSetting/editShelfHw.vue

@@ -35,7 +35,7 @@
 						<u-input clearable type="number" :min="0" @input="numberToFixed('cost',2,999999)" v-model="form.cost" placeholder="请输入结算价,最多两位小数"/>
 					</u-form-item>
 					<u-form-item label="最大库容" required prop="maxQty">
-						<u-input clearable type="number" :min="1" @input="numberToFixed('maxQty',1,999999)" v-model="form.maxQty" placeholder="请输入最大库容"/>
+						<u-input clearable type="number" :min="1" @input="numberToFixed('maxQty',0,999999)" v-model="form.maxQty" placeholder="请输入最大库容"/>
 					</u-form-item>
 				</view>
 				<view class="noproduct" v-else  @click="toBindProduct">

+ 12 - 3
pages/shelfSetting/quickProductList.vue

@@ -24,8 +24,8 @@
 				<view class="ptxt flex align_center justify_end">
 					<view>
 					最大库容:<text class="pnums">{{item.maxQty}}</text>
-					/ 当前库存:<text class="pnums">{{item.qty}}</text>
-					/ 补货在途:<text class="pnums">{{item.afloatQty||0}}</text>
+					当前库存:<text class="pnums">{{item.qty}}</text>
+					补货在途:<text class="pnums">{{item.afloatQty||0}}</text>
 					</view>
 				</view>
 				<view class="ptools flex align_center justify_between">
@@ -139,6 +139,15 @@
 				.pname{
 					color: #191919;
 					margin-bottom: 5rpx;
+					text{
+						font-weight: normal;
+						margin-right: 10rpx;
+						padding: 0 10rpx;
+						background: rgba(3, 54, 146, 0.15);
+						border-radius: 30rpx;
+						color: #033692;
+						font-size: 24rpx;
+					}
 				}
 			}
 		}
@@ -147,7 +156,7 @@
 			color: #999;
 			.pnums{
 				color: #222;
-				padding: 0 4upx;
+				margin-right: 20upx;
 			}
 		}
 		.ptools{

+ 18 - 7
pages/shelfSetting/quickReplenish.vue

@@ -2,7 +2,12 @@
 	<view class="content flex flex_column">
 		<view class="head-info">
 			<view class="p-title flex align_center">
-				<view class="shelfName flex align_center"><text></text>{{basicInfoData.shelfName}}</view>
+				<text></text>
+				<view class="shelfName flex align_center">
+					<view>
+						{{basicInfoData.shelfName}}系统检测到以下产品缺货,请选择需要补货的产品
+					</view>
+				</view>
 			</view>
 			<view>系统检测到以下产品缺货,请选择需要补货的产品</view>
 		</view>
@@ -233,15 +238,12 @@
 				color: darkorange;
 			}
 			.p-title{
-				padding: 0 20rpx;
+				padding: 0 10rpx;
 				display: flex;
 				align-items: center;
 				color: #222;
-				font-size: 32rpx;
-				.shelfName{
-					flex-grow: 1;
-					font-weight: bold;
-					text{
+				font-size: 30rpx;
+				> text{
 						display: block;
 						height: 30rpx;
 						width: 6rpx;
@@ -249,6 +251,15 @@
 						margin-right: 10rpx;
 						border-radius: 10rpx;
 					}
+				.shelfName{
+					flex-grow: 1;
+					font-weight: bold;
+					width: 80%;
+					> view{
+						overflow: hidden;
+						white-space: nowrap;
+						text-overflow: ellipsis;
+					}
 				}
 			}
 		}

+ 31 - 26
pages/shelfSetting/searchShelfHw.vue

@@ -1,19 +1,22 @@
 <template>
 	<view class="content flex flex_column">
 		<view class="searchBar">
-			<view class="p-title flex align_center">
-				<view class="shelfName flex align_center"><text></text>{{shelfName}}</view>
-				<view class="btns" @click="showTab = true">筛选<u-icon name="more-circle"></u-icon></view>
+			<view class="p-title">
+				<text></text>
+				<view class="shelfName flex align_center">
+					<view>{{shelfName}}</view>
+				</view>
+				<view class="btns" @click="showTab = true">筛选<u-icon size="20" name="arrow-down"></u-icon></view>
 			</view>
 			<view class="search flex align_center">
 				<view class="input">
 					<u-search 
 					focus
 					v-model="queryWord" 
-					@input="change"
 					@custom="getpartList" 
 					@search="getpartList" 
 					@clear="clearSearch" 
+					@input="$u.debounce(changeSearch, 800)"
 					bg-color="#fff" 
 					:show-action="false"
 					placeholder="请输入产品编码或名称搜索"></u-search>
@@ -57,7 +60,7 @@
 			<view class="tabBox flex flex_column">
 				<view class="tabs">
 					<view class="flex">
-						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=item">{{item}}层</view>
+						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=curTab==item?'':item">{{item}}层</view>
 					</view>
 				</view>
 				<view class="btns">
@@ -128,15 +131,13 @@
 			},
 			clearSearch(){
 				this.queryWord = ''
+				this.changeSearch()
+			},
+			changeSearch(){
 				this.pageNo = 1
 				this.partList = []
 				this.getpartList()
 			},
-			change(v){
-				if(v==''){
-					this.clearSearch()
-				}
-			},
 			// 获取数字货架列表
 			getpartList(){
 				const _this = this
@@ -252,21 +253,14 @@
 	padding: 0 0.5rem;
 	background: #fff;
 	.searchBar{
-		padding: 0 0.3rem;
+		padding: 0 0.3rem 0.3rem;
 		.p-title{
-			padding: 0 20rpx;
+			padding: 0 10rpx;
 			display: flex;
 			align-items: center;
 			color: #222;
-			font-size: 32rpx;
-			.shelfName{
-				width: 80%;
-				flex-grow: 1;
-				font-weight: bold;
-				overflow: hidden;
-				white-space: nowrap;
-				text-overflow: ellipsis;
-				text{
+			font-size: 30rpx;
+			> text{
 					display: block;
 					height: 30rpx;
 					width: 6rpx;
@@ -274,15 +268,26 @@
 					margin-right: 10rpx;
 					border-radius: 10rpx;
 				}
+			.shelfName{
+				flex-grow: 1;
+				font-weight: bold;
+				width: 80%;
+				> view{
+					overflow: hidden;
+					white-space: nowrap;
+					text-overflow: ellipsis;
+				}
 			}
 			.btns{
 				width:100rpx;
 				text-align: right;
 				font-size: 28rpx;
+				color: #0485F6;
 			}
 		}
 		.search{
-			padding: 0.2rem;
+			margin-top: 15upx;
+			padding: 0.1rem;
 			border-radius: 50rpx;
 			border:0.1rpx solid #eee;
 			.input{
@@ -290,9 +295,9 @@
 				padding: 0.1rpx;
 			}
 			.icon{
-				width: 10%;
+				width: 13%;
 				text-align: center;
-				font-size: 50rpx;
+				font-size: 46rpx;
 				color: #999;
 			}
 		}
@@ -300,7 +305,7 @@
 	.check-list{
 		flex-grow: 1;
 		.scroll-view{
-			height: calc(100vh - 180rpx);
+			height: calc(100vh - 150rpx);
 			box-sizing: border-box;
 		}
 		.partList-list-box{
@@ -357,7 +362,7 @@
 				justify-content: space-between;
 				> view{
 					width: 45%;
-					border: 0.1rpx solid #eee;
+					border: 0.1rpx solid #ddd;
 					padding: 15rpx;
 					border-radius: 50rpx;
 					text-align: center;

+ 1 - 1
pages/stockCheck/freezeDetailModal.vue

@@ -1,6 +1,6 @@
 <template>
 	<u-mask class="productModal" :show="isShow" :mask-click-able="false">
-		<view class="product-con">
+		<view class="product-con" v-if="infoData">
 			<view class="product-head">
 				<view>
 					修理厂提交以下订单,但未取货,请联系修理厂处理

+ 3 - 2
pages/stockCheck/freezeQtyModal.vue

@@ -1,6 +1,6 @@
 <template>
 	<u-mask class="productModal" :show="isShow" :mask-click-able="false">
-		<view class="product-con">
+		<view class="product-con" v-if="infoData">
 			<view class="product-head">
 				<view class="shelfName flex align_center"><text></text>{{infoData.shelfName}}</view>
 				<view>
@@ -49,6 +49,7 @@
 			// 确认
 			handleConfirm(){
 				 this.$emit("ok")
+				 this.isShow = false
 			},
 			// 获取列表数据
 			getList(){
@@ -81,7 +82,7 @@
 		width: 100%;
 		height: 100%;
 		.product-head{
-			font-size: 24rpx;
+			font-size: 26rpx;
 			padding: 20upx 30upx 15upx;
 			border-bottom: 2rpx solid #eee;
 			color: #666;

+ 1 - 1
pages/stockCheck/shelfList.vue

@@ -52,7 +52,7 @@
 				<view v-if="shelfList&&shelfList.length==0">
 					<u-empty v-if="status!='loading'" :src="`/static/${$config('themePath')}/def_no_data@3x.png`" icon-size="180" :text="noDataText" mode="list" :margin-top="50"></u-empty>
 				</view>
-				<view style="padding: 20upx;">
+				<view style="padding: 20upx;" v-if="shelfList.length">
 					<u-loadmore :status="status" />
 				</view>
 			</view>

+ 34 - 31
pages/stockCheck/startCheck.vue

@@ -2,20 +2,23 @@
 	<view class="content flex flex_column">
 		<view class="searchBar">
 			<view class="p-title flex align_center">
-				<view class="shelfName flex"><text></text>{{nowData.shelfName}}</view>
-				<view class="btns" @click="showTab = true">筛选<u-icon name="more-circle"></u-icon></view>
+				<text></text>
+				<view class="shelfName">
+					<view>{{nowData.shelfName}}</view>
+				</view>
+				<view class="btns" @click="showTab = true">筛选<u-icon size="20" name="arrow-down"></u-icon></view>
 			</view>
 			<view class="search flex align_center">
 				<view class="input">
 					<u-search 
 					focus
 					v-model="queryWord" 
-					@input="change"
 					@custom="getpartList" 
 					@search="getpartList" 
 					@clear="clearSearch" 
+					@input="$u.debounce(changeSearch, 800)"
 					bg-color="#fff" 
-					:action-style="{border:'0.1rpx solid #00aaff',borderRadius:'50rpx',color:'#00aaff'}" 
+					:show-action="false"
 					placeholder="请输入产品编码或名称搜索"></u-search>
 				</view>
 				<view class="icon" @click="toScan">
@@ -165,11 +168,11 @@
 			<view class="tabBox flex flex_column">
 				<view class="tabs">
 					<view>
-						<view :class="'available'==curType?'active':''" @click="curType='available'">有可用库存的产品</view>
-						<view :class="'blocked'==curType?'active':''" @click="curType='blocked'">有冻结库存的产品</view>
+						<view :class="'available'==curType?'active':''" @click="curType=curType=='available'?'':'available'">有可用库存的产品</view>
+						<view :class="'blocked'==curType?'active':''" @click="curType=curType=='blocked'?'':'blocked'">有冻结库存的产品</view>
 					</view>
 					<view class="flex">
-						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=item">{{item}}层</view>
+						<view :class="item==curTab?'active':''" v-for="item in placeTab" :key="item" @click="curTab=curTab==item?'':item">{{item}}层</view>
 					</view>
 				</view>
 				<view class="btns">
@@ -448,15 +451,13 @@
 			},
 			clearSearch(){
 				this.queryWord = ''
+				this.changeSearch()
+			},
+			changeSearch(){
 				this.pageNo = 1
 				this.partList = []
 				this.getpartList()
 			},
-			change(v){
-				if(v==''){
-					this.clearSearch()
-				}
-			},
 			// 获取数字货架列表
 			getpartList(){
 				const _this = this
@@ -584,49 +585,51 @@
 	width: 100%;
 	background: #fff;
 	.searchBar{
-		padding: 0 0.5rem;
+		padding: 0 0.8rem 0.3rem;
 		.p-title{
-			padding: 0 20rpx;
+			padding: 0 15rpx;
 			display: flex;
 			align-items: center;
 			color: #222;
-			font-size: 32rpx;
-			.shelfName{
-				width: 80%;
-				height: 50rpx;
-				text-overflow: ellipsis;
-				overflow: hidden;
-				flex-grow: 1;
-				font-weight: bold;
-				text{
+			font-size: 30rpx;
+			> text{
 					display: block;
 					height: 30rpx;
 					width: 6rpx;
 					background: #0485F6;
 					margin-right: 10rpx;
 					border-radius: 10rpx;
-					margin-top: 10rpx;
+				}
+			.shelfName{
+				flex-grow: 1;
+				font-weight: bold;
+				width: 80%;
+				> view{
+					overflow: hidden;
+					white-space: nowrap;
+					text-overflow: ellipsis;
 				}
 			}
 			.btns{
 				width:100rpx;
 				text-align: right;
 				font-size: 28rpx;
+				color: #0485F6;
 			}
 		}
 		.search{
-			padding: 0.5rem 0.5rem 0.3rem 0.5rem;
+			margin-top: 15upx;
+			padding: 0.1rem;
+			border-radius: 50rpx;
+			border:0.1rpx solid #eee;
 			.input{
 				flex-grow: 1;
-				border:0.1rpx solid #eee;
 				padding: 0.1rpx;
-				border-radius: 50rpx;
-				padding-right: 10rpx;
 			}
 			.icon{
-				width: 10%;
+				width: 13%;
 				text-align: center;
-				font-size: 50rpx;
+				font-size: 46rpx;
 				color: #999;
 			}
 		}
@@ -819,7 +822,7 @@
 				padding-top: 20rpx;
 				font-size: 26upx;
 				> text{
-					color: #333;
+					color: #00aaff;
 				}
 				> view{
 					color: #999;