ソースを参照

出库,出库详情

haugnfuli 3 年 前
コミット
d1699218cb
3 ファイル変更1128 行追加1 行削除
  1. 773 0
      pageD/warehousings/ex_warehouse.vue
  2. 340 0
      pageD/warehousings/ex_warehouse_detail.vue
  3. 15 1
      pages.json

+ 773 - 0
pageD/warehousings/ex_warehouse.vue

@@ -0,0 +1,773 @@
+<template>
+	<view class="container">
+		<view class="center">
+			<view class="title_b ">发运信息</view>
+			<view class="c-row ">
+				<text class="tit">合同编号</text>
+				<view class="con-list">
+					<text>{{WarehouseInOutInfo.contractNo}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">货名</text>
+				<view class="con-list">
+					<text>{{WarehouseInOutInfo.goodsName}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">发车净重(吨)</text>
+				<view class="con-list">
+					<text>{{WarehouseInOutInfo.startWeight}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">车牌号</text>
+				<view class="con-list">
+					<text>{{WarehouseInOutInfo1.carNo}}</text>
+				</view>
+			</view>
+		</view>
+		<view class="center">
+			<view class="title_c ">出库信息</view>
+			<view class="c-list">
+				<view class="c-row b-b">
+					<text class="tit">毛重(吨)</text>
+					<view style="color: #ff0000; padding-left: 10rpx;">*</view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入毛重" name="input" v-model="WarehouseInOutInfo.grossWeight" @input="grossWeightInput"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="tit">皮重(吨)</view>
+					<view style="color: #ff0000; padding-left: 10rpx;">*</view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入皮重" name="input" v-model="WarehouseInOutInfo.tare"
+							@input="tareInput"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<text class="tit">净重(吨)</text>
+					<view class="con-list">
+						<text>{{numFilter(WarehouseInOutInfo.netWeight)}}</text>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<text class="tit">仓库</text>
+					<view style="color: #ff0000; padding-left: 10rpx;">*</view>
+					<view class="con-list">
+						<text @click=''>{{WarehouseInOutInfo.warehouseName}}</text>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">仓位号</view>
+					<view style="color: #ff0000; padding-left: 10rpx;">*</view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入仓位号" name="input" v-model="WarehouseInOutInfo.binNumber"></input>
+					</view>
+				</view>
+			
+				<view class="c-row b-b">
+					<text class="tit">入库类型 </text>
+					<picker @change="ruChange" :value="ruIndex" :range="ruType" class="con-list">
+						<view >
+							{{ruIndex>-1?ruType[ruIndex]:'请选择入库类型'}}
+						</view>
+					</picker>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">扣款金额</view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入扣款金额" name="input" v-model="WarehouseInOutInfo.deductionAmount"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">扣款项</view>
+					<view class="con-list">
+						<input maxlength='16' placeholder="请输入扣款项" name="input" v-model="WarehouseInOutInfo.deductionItems"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<text class="tit">入库日期</text>
+					
+					<view class="con-list" @click="show = true">{{WarehouseInOutInfo.inOutDate!=''?WarehouseInOutInfo.inOutDate:time}}</view>
+					<u-picker  :params='params' :default-time='time' @confirm="DateChange" v-model="show" mode="time"></u-picker>
+					
+				</view>
+				<view class="c-row ">
+					<text class="tit">上传磅单照片</text>
+				</view>
+				<upload
+					class="upload"
+					ref="upload"
+					:action="action"
+					:max-size="maxSize"
+					:max-count="1"
+					:size-type="['compressed']"
+					@on-success="getImgUrl"
+					@on-remove="onRemove"
+					@on-uploaded="isAdd = true"
+					:before-upload="filterFileType"
+				></upload>
+			</view>
+		</view>
+			
+
+		<view class="center">
+			<view class="title_c ">化验信息</view>
+			<view class="c-list">
+				<view class="c-row b-b">
+					<view class="title">质检员</view>
+					<view class="con-list">
+						<input maxlength='10' minlength='2' placeholder-style="font-size:14px" placeholder="请输入质检员姓名" name="input" v-model="list.qualityInspector"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">蛋白(%)>=</view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入蛋白占比" name="input" v-model="list.protein"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">水分(%)<= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入水分占比" name="input" v-model="list.waterContent"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">容重(克/升)>= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入容重" name="input" v-model="list.bulkDensity"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">热损伤(%)<= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入热损伤占比" name="input" v-model="list.jiaorenli"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">杂质(%)<= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入杂质占比" name="input" v-model="list.impurity"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">霉变粒(%)<= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入霉变粒占比" name="input" v-model="list.mildewGrain"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<view class="title">不完整粒(%)<= </view>
+					<view class="con-list">
+						<input placeholder-style="font-size:14px" placeholder="请输入不完整粒占比" name="input"
+							v-model="list.imperfectGrain"></input>
+					</view>
+				</view>
+				<view class="c-row b-b">
+					<text class="tit">品级 </text>
+					<picker @change="pinChange" :value="pinIndex" :range="pinType" class="con-list">
+						<view >
+							{{pinIndex>-1?pinType[pinIndex]:'请选择品级'}}
+						</view>
+					</picker>
+				</view>
+			</view>
+		</view>
+	<!-- 底部操作菜单 -->
+	<view class="page-bottom1">
+		<view>
+			<button type="primary" @click="commit1">暂 存</button>
+			<button  @click="commit"  type="primary" class=" action-btn no-border add-cart-btn" >提 交</button>
+		</view>
+	</view>
+</view>
+
+</template>
+<script>
+import upload from '@/components/upload.vue';
+	export default {
+	components:{upload},
+		data() {
+			return {
+				packingType: [],
+				packingIndex: "",
+				goods: {},
+				list: {},
+				WarehouseInOutInfo: {
+					inOutDate:'',
+					warehouseInOutDetail: {},
+					pcFlag: 0,
+					contractNo: {},
+					carNo: {},
+				},
+				WarehouseInOutInfo1: {
+					contractNo: {},
+					carNo: {},
+				},
+				pinIndex: '不限(默认)',
+				pinTypes: '',
+				pinType: ['不限(默认)', '一等品', '二等品', '三等品', '等外'],
+				ruIndex: '采购入库',
+				rutypes: '',
+				ruType: ['采购入库', '移库入库', '暂存入库', '贸易服务入库', '退库'],
+				action: this.$uploadUrl,
+				maxSize: 5 * 1024 * 1024,//限制文件大小 5M
+				btnLoading: false, //防止重复点击
+				imgUrls: [],
+				isAdd: true,
+				params:{
+					year: true,
+					month: true,
+					day: true,
+				},
+				show:false
+			}
+		},
+		computed: {
+				time() {
+					var date=new Date()
+					var year=date.getFullYear()
+					var month=date.getMonth()
+					var date1=date.getDate()
+					if(month+1<10){
+						month="0"+(month+1)
+					}
+					if(date1+1<10){
+						date1="0"+date1
+					}
+					return year+'-'+month+"-"+date1
+				},
+				startDate() {
+				//限制开始时间;
+				//也可以直接限定为当天日期 var date= new Date(); return date
+					return new Date(new Date(new Date().toLocaleDateString()).getTime()-(1*60*60*1000))
+				},
+				endDate() {
+					return new Date()
+				}
+			},
+			onShow(){
+				this.$api.doRequest('get', '/warehouseBaseInfo/selectWarehouse', {compId:'2710b21efc1e4393930c5dc800010dc4',warehouseType:1,}).then(res => {
+			console.log(res)
+			})
+			this.$api.doRequest('get', '/warehouseBaseInfo/getWarehouse', {compId:'',warehouseType:1,}).then(res => {
+			console.log(res)
+			})
+			},
+		onLoad(option) {
+			this.WarehouseInOutInfo.contractNo = option.contractNo
+			this.WarehouseInOutInfo.goodsName = option.goodsName
+			this.WarehouseInOutInfo.startWeight = option.startWeight
+			this.WarehouseInOutInfo1.carNo = option.carNo + '(' + option.tranCarNo + ')'
+			this.WarehouseInOutInfo.warehouseName = option.warehouseName
+			this.WarehouseInOutInfo.id = option.id
+			this.WarehouseInOutInfo.carNo = option.carNo
+			var date=new Date()
+			var year=date.getFullYear()
+			var month=date.getMonth()
+			var date1=date.getDate()
+			if(month+1<10){
+				month="0"+(month+1)
+			}
+			this.time = year+'-'+month+"-"+date1
+		},
+		methods: {
+			
+			DateChange(e) {
+				this.WarehouseInOutInfo.inOutDate=e.year+'-'+e.month+'-'+e.day
+			},
+			filterFileType(index, lists) {
+				if (lists[index].fileType != 'jpg' && lists[index].fileType != 'png' && lists[index].fileType != 'gif') {
+					lists.splice(index, 1);
+					// 当前文件不支持
+					uni.showModal({
+						title: '暂不支持当前图片类型',
+						showCancel: false
+					});
+				} else {
+					this.isAdd = false;
+				}
+			},
+			getImgUrl(res) {
+				this.imgUrls.push(res.data);
+			},
+			onRemove(index) {
+				this.imgUrls.splice(index, 1);
+			},
+			commit1() {
+				if(this.WarehouseInOutInfo.grossWeight>100||this.WarehouseInOutInfo.grossWeight<1){
+					this.$api.msg('毛重输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.grossWeight.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.grossWeight.split('.')[1].length>2){
+						this.$api.msg('毛重输入错误')
+						return
+					}
+				}
+				if(this.WarehouseInOutInfo.tare>50||this.WarehouseInOutInfo.tare<1){
+					this.$api.msg('皮重输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.tare.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.tare.split('.')[1].length>2){
+						this.$api.msg('皮重输入错误')
+						return
+					}
+				}
+				if(this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount>10000||this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount<0){
+					this.$api.msg('扣款金额输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.deductionAmount.split('.')[1].length>2){
+						this.$api.msg('扣款金额输入错误')
+						return
+					}
+				}
+				if(this.list.qualityInspector&&this.list.qualityInspector<2||this.list.qualityInspector&&this.list.qualityInspector>10){
+					this.$api.msg('质检员姓名输入错误')
+					return
+				}
+				if(this.list.protein&&this.list.protein<1||this.list.protein&&this.list.protein>80){
+					this.$api.msg('蛋白占比输入错误')
+					return
+				}
+				if(this.list.protein&&this.list.protein.indexOf('.')!=-1){
+					if(this.list.protein.split('.')[1].length>2){
+						this.$api.msg('蛋白占比输入错误')
+						return
+					}
+				}
+				if(this.list.waterContent&&this.list.waterContent<1||this.list.waterContent&&this.list.waterContent>40){
+					this.$api.msg('水分输入错误')
+					return
+				}
+				if(this.list.waterContent&&this.list.waterContent.indexOf('.')!=-1){
+					if(this.list.waterContent.split('.')[1].length>2){
+						this.$api.msg('水分输入错误')
+						return
+					}
+				}
+				if(this.list.bulkDensity&&this.list.bulkDensity<1||this.list.bulkDensity&&this.list.bulkDensity>40){
+					this.$api.msg('容重输入错误')
+					return
+				}
+				if(this.list.bulkDensity&&this.list.bulkDensity.indexOf('.')!=-1){
+					if(this.list.bulkDensity.split('.')[1].length>2){
+						this.$api.msg('容重输入错误')
+						return
+					}
+				}
+				if(this.list.jiaorenli&&this.list.jiaorenli<1||this.list.jiaorenli&&this.list.jiaorenli>40){
+					this.$api.msg('热损伤输入错误')
+					return
+				}
+				if(this.list.jiaorenli&&this.list.jiaorenli.indexOf('.')!=-1){
+					if(this.list.jiaorenli.split('.')[1].length>2){
+						this.$api.msg('热损伤输入错误')
+						return
+					}
+				}
+				if(this.list.impurity&&this.list.impurity<1||this.list.impurity&&this.list.impurity>40){
+					this.$api.msg('杂质输入错误')
+					return
+				}
+				if(this.list.impurity&&this.list.impurity.indexOf('.')!=-1){
+					if(this.list.impurity.split('.')[1].length>2){
+						this.$api.msg('杂质输入错误')
+						return
+					}
+				}
+				if(this.list.mildewGrain&&this.list.mildewGrain<1||this.list.mildewGrain&&this.list.mildewGrain>40){
+					this.$api.msg('霉变粒输入错误')
+					return
+				}
+				if(this.list.mildewGrain&&this.list.mildewGrain.indexOf('.')!=-1){
+					if(this.list.mildewGrain.split('.')[1].length>2){
+						this.$api.msg('霉变粒输入错误')
+						return
+					}
+				}
+				if(this.list.imperfectGrain&&this.list.imperfectGrain<1||this.list.imperfectGrain&&this.list.imperfectGrain>40){
+					this.$api.msg('不完整粒输入错误')
+					return
+				}
+				if(this.list.imperfectGrain&&this.list.imperfectGrain.indexOf('.')!=-1){
+					if(this.list.imperfectGrain.split('.')[1].length>2){
+						this.$api.msg('不完整粒输入错误')
+						return
+					}
+				}
+				uni.showLoading({
+					title:"正在暂存"
+				})
+				this.WarehouseInOutInfo.deductionAmount=-this.WarehouseInOutInfo.deductionAmount
+				this.WarehouseInOutInfo.warehouseInOutDetail = this.list
+				this.WarehouseInOutInfo.statusFlag = 1
+				if(this.imgUrls.length > 0){
+					this.WarehouseInOutInfo.addressUrl = this.imgUrls[0]
+				}
+				this.$api.doRequest('post', '/warehouseInOutInfo/InOutWarehouse', this.WarehouseInOutInfo).then(res => {
+					if(res.data.code==200){
+						uni.showToast({
+							title: '暂存成功',
+							icon: 'none',
+							duration: 2000
+						})
+						uni.navigateBack({})
+					}else{
+						uni.showToast({
+							title: res.data.message,
+							icon: 'none',
+							duration: 2000
+						})
+					}
+					uni.hideLoading()
+					
+				}).catch(res => {
+					uni.showToast({
+						title: res.data.message,
+						icon: 'none',
+						duration: 2000
+					})
+					uni.hideLoading()
+				})
+			},
+			commit() {
+				if(!this.WarehouseInOutInfo.grossWeight){
+					this.$api.msg('毛重不能为空')
+					return
+				}
+				if(!this.WarehouseInOutInfo.tare){
+					this.$api.msg('皮重不能为空')
+					return
+				}
+				if(!this.WarehouseInOutInfo.warehouseName){
+					this.$api.msg('仓库不能为空')
+					return
+				}
+				if(!this.WarehouseInOutInfo.binNumber){
+					this.$api.msg('仓库不能为空')
+					return
+				}
+				if(this.WarehouseInOutInfo.grossWeight>100||this.WarehouseInOutInfo.grossWeight<1){
+					this.$api.msg('毛重输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.grossWeight.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.grossWeight.split('.')[1].length>2){
+						this.$api.msg('毛重输入错误')
+						return
+					}
+				}
+				if(this.WarehouseInOutInfo.tare>50||this.WarehouseInOutInfo.tare<1){
+					this.$api.msg('皮重输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.tare.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.tare.split('.')[1].length>2){
+						this.$api.msg('皮重输入错误')
+						return
+					}
+				}
+				if(this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount>10000||this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount<0){
+					this.$api.msg('扣款金额输入错误')
+					return
+				}
+				if(this.WarehouseInOutInfo.deductionAmount&&this.WarehouseInOutInfo.deductionAmount.indexOf('.')!=-1){
+					if(this.WarehouseInOutInfo.deductionAmount.split('.')[1].length>2){
+						this.$api.msg('扣款金额输入错误')
+						return
+					}
+				}
+				if(this.list.qualityInspector&&this.list.qualityInspector<2||this.list.qualityInspector&&this.list.qualityInspector>10){
+					this.$api.msg('质检员姓名输入错误')
+					return
+				}
+				if(this.list.protein&&this.list.protein<1||this.list.protein&&this.list.protein>80){
+					this.$api.msg('蛋白占比输入错误')
+					return
+				}
+				if(this.list.protein&&this.list.protein.indexOf('.')!=-1){
+					if(this.list.protein.split('.')[1].length>2){
+						this.$api.msg('蛋白占比输入错误')
+						return
+					}
+				}
+				if(this.list.waterContent&&this.list.waterContent<1||this.list.waterContent&&this.list.waterContent>40){
+					this.$api.msg('水分输入错误')
+					return
+				}
+				if(this.list.waterContent&&this.list.waterContent.indexOf('.')!=-1){
+					if(this.list.waterContent.split('.')[1].length>2){
+						this.$api.msg('水分输入错误')
+						return
+					}
+				}
+				if(this.list.bulkDensity&&this.list.bulkDensity<1||this.list.bulkDensity&&this.list.bulkDensity>40){
+					this.$api.msg('容重输入错误')
+					return
+				}
+				if(this.list.bulkDensity&&this.list.bulkDensity.indexOf('.')!=-1){
+					if(this.list.bulkDensity.split('.')[1].length>2){
+						this.$api.msg('容重输入错误')
+						return
+					}
+				}
+				if(this.list.jiaorenli&&this.list.jiaorenli<1||this.list.jiaorenli&&this.list.jiaorenli>40){
+					this.$api.msg('热损伤输入错误')
+					return
+				}
+				if(this.list.jiaorenli&&this.list.jiaorenli.indexOf('.')!=-1){
+					if(this.list.jiaorenli.split('.')[1].length>2){
+						this.$api.msg('热损伤输入错误')
+						return
+					}
+				}
+				if(this.list.impurity&&this.list.impurity<1||this.list.impurity&&this.list.impurity>40){
+					this.$api.msg('杂质输入错误')
+					return
+				}
+				if(this.list.impurity&&this.list.impurity.indexOf('.')!=-1){
+					if(this.list.impurity.split('.')[1].length>2){
+						this.$api.msg('杂质输入错误')
+						return
+					}
+				}
+				if(this.list.mildewGrain&&this.list.mildewGrain<1||this.list.mildewGrain&&this.list.mildewGrain>40){
+					this.$api.msg('霉变粒输入错误')
+					return
+				}
+				if(this.list.mildewGrain&&this.list.mildewGrain.indexOf('.')!=-1){
+					if(this.list.mildewGrain.split('.')[1].length>2){
+						this.$api.msg('霉变粒输入错误')
+						return
+					}
+				}
+				if(this.list.imperfectGrain&&this.list.imperfectGrain<1||this.list.imperfectGrain&&this.list.imperfectGrain>40){
+					this.$api.msg('不完整粒输入错误')
+					return
+				}
+				if(this.list.imperfectGrain&&this.list.imperfectGrain.indexOf('.')!=-1){
+					if(this.list.imperfectGrain.split('.')[1].length>2){
+						this.$api.msg('不完整粒输入错误')
+						return
+					}
+				}
+				this.WarehouseInOutInfo.deductionAmount=-this.WarehouseInOutInfo.deductionAmount
+				if(this.imgUrls.length > 0){
+					this.WarehouseInOutInfo.addressUrl = this.imgUrls[0]
+				}
+				this.WarehouseInOutInfo.warehouseInOutDetail = this.list
+				this.WarehouseInOutInfo.statusFlag = 3
+				uni.showLoading({
+					title:"正在提交"
+				})
+				
+				this.$api.doRequest('post', '/warehouseInOutInfo/InOutWarehouse', this.WarehouseInOutInfo).then(res => {
+					if(res.data.code==200){
+						uni.showToast({
+							title: '提交成功',
+							icon: 'none'
+						})
+						setTimeout(() => {
+							uni.navigateBack({})
+						}, 200)
+					}else{
+						uni.showToast({
+							title: res.data.message,
+							icon: 'none',
+							duration: 2000
+						})
+					}
+					uni.hideLoading()
+					
+				}).catch(res => {
+					uni.showToast({
+						title: res.data.message,
+						icon: 'none',
+						duration: 2000
+					})
+					uni.hideLoading()
+				})
+			},
+			numFilter(value) {
+				if (!value) {
+					return 0
+				}
+				// 截取当前数据到小数点后两位
+				let realVal = parseFloat(value).toFixed(2)
+				return realVal
+			},
+			grossWeightInput(e) {
+				this.WarehouseInOutInfo.grossWeight = e.detail.value
+				if (this.WarehouseInOutInfo.grossWeight && this.WarehouseInOutInfo.tare) {
+					this.WarehouseInOutInfo.netWeight = this.WarehouseInOutInfo.grossWeight - this.WarehouseInOutInfo.tare
+				}
+			},
+			tareInput(e) {
+				this.WarehouseInOutInfo.tare = e.detail.value
+				if (this.WarehouseInOutInfo.grossWeight && this.WarehouseInOutInfo.tare) {
+					this.WarehouseInOutInfo.netWeight = this.WarehouseInOutInfo.grossWeight - this.WarehouseInOutInfo.tare
+				}
+			},
+			ruChange(e) {
+				this.WarehouseInOutInfo.inOutTypeKey = e.detail.value
+				this.WarehouseInOutInfo.inOutType = this.ruType[this.ruIndex];
+			},
+			pinChange(e) {
+				this.WarehouseInOutInfo.gradeKey = e.detail.value
+				this.WarehouseInOutInfo.grade = this.pinType[this.pinIndex];
+			},
+		}
+
+	}
+</script>
+<style scoped lang='scss'>
+	.upload {
+		/deep/.u-list-item,
+		.u-add-wrap {
+			background-color: #eceae8;
+		}
+	}
+	.center{
+		margin: 15rpx 15rpx 10rpx 15rpx;
+		padding:0rpx 10rpx 30rpx 10rpx;
+		background-color: #FFFFFF;
+		border-radius: 15px;
+	}
+	.title_b{
+		margin: 20rpx 20rpx 0rpx 20rpx;
+		padding:20rpx 10rpx 20rpx 10rpx;
+		font-size: 18px;
+		font-weight: 550;
+		border-bottom: 1px solid #d6d6d6;
+	}
+	.title_c{
+		margin: 20rpx 20rpx 0rpx 20rpx;
+		padding:20rpx 10rpx 20rpx 10rpx;
+		font-size: 18px;
+		font-weight: 550;
+	}
+	.c-row {
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-box-align: center;
+		-webkit-align-items: center;
+		align-items: center;
+		padding: 20rpx 30rpx;
+		position: relative;
+	}
+
+	.con-list {
+		-webkit-box-flex: 1;
+		-webkit-flex: 1;
+		flex: 1;
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-box-orient: vertical;
+		-webkit-box-direction: normal;
+		-webkit-flex-direction: column;
+		flex-direction: column;
+		color: #303133;
+		line-height: 40rpx;
+		text-align: right;
+		padding-right: 20rpx;
+	}
+
+	.d-header {
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		height: 80upx;
+		font-size: $font-base + 2upx;
+		color: $font-color-dark;
+		position: relative;
+
+		text {
+			padding: 0 20upx;
+			background: #fff;
+			position: relative;
+			z-index: 1;
+		}
+
+		&:after {
+			position: absolute;
+			left: 50%;
+			top: 50%;
+			transform: translateX(-50%);
+			width: 300upx;
+			height: 0;
+			content: '';
+			border-bottom: 1px solid #ccc;
+		}
+	}
+	/* 底部操作菜单 */
+	.page-bottom1 {
+		position: fixed;
+		left: 0;
+		bottom: 0;
+		z-index: 95;
+		width:100%;
+		height: 70px;
+		background: rgba(255, 255, 255, .9);
+		padding:15px;
+		border-radius: 0;
+		text-align:right;
+		button{
+			display:inline-block;
+			border-radius:18px;
+			margin:0 10px;
+			font-size:14px;background:#fff;
+			color:#333;
+			border:1px solid #333;
+			padding-left: 50rpx;
+			padding-right: 50rpx;
+		}
+		.action-btn{
+			background:#22C572;
+			color:#fff;
+			border:1px solid #22C572;
+		}
+		.p-b-btn {
+			display: flex;
+			flex-direction: column;
+			align-items: center;
+			justify-content: center;
+			font-size: $font-sm;
+			color: $font-color-base;
+			width: 96upx;
+			height: 80upx;
+	
+			.yticon {
+				font-size: 40upx;
+				line-height: 48upx;
+				color: $font-color-light;
+			}
+	
+			&.active,
+			&.active .yticon {
+				color: $uni-color-primary;
+			}
+	
+			.icon-fenxiang2 {
+				font-size: 42upx;
+				transform: translateY(-2upx);
+			}
+	
+			.icon-shoucang {
+				font-size: 46upx;
+			}
+		}
+	
+		
+	}
+	.container{
+		padding-bottom: 160upx;
+	}
+</style>
+

+ 340 - 0
pageD/warehousings/ex_warehouse_detail.vue

@@ -0,0 +1,340 @@
+<template>
+	<view class="container">
+		<view class="center">
+			<view class="title_b ">发运信息</view>
+			<view class="c-row ">
+				<text class="tit">合同编号</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.contractNo}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">货名</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.goodsName}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">发车净重(吨)</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.startWeight}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">车牌号</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.carNo}}</text>
+				</view>
+			</view>
+		</view>
+		<view class="center">
+			<view class="title_b">出库信息</view>
+			<view class="c-list">
+				<view class="c-row ">
+					<text class="tit">毛重(吨)</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.grossWeight}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">皮重(吨)</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.tare}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">净重(吨)</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.netWeight}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">仓库</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.warehouseName}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">仓位号</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.binNumber}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">入库类型</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.inOutType}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">扣款金额(元/吨)</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.deductionAmount}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">扣款项</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.deductionItems}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">入库日期</text>
+					<view class="con-list">
+						<text>{{warehouseInOutInfo.inOutDate}}</text>
+					</view>
+				</view>
+				<view class="c-row ">
+					<text class="tit">磅单照片</text>
+				</view>
+				<view style="padding-left: 30rpx;">
+					<u-image width="30%" height="180rpx" :src="warehouseInOutInfo.addressUrl"></u-image>
+				</view>
+			</view>
+		</view>
+		<view class="center">
+			<view class="title_b">化验信息</view>
+			<view class="c-row ">
+				<text class="tit">质检员</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.qualityInspector}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">蛋白(%){{'>='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.protein}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">水分(%){{'<='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.waterContent}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">容重(g/L){{'<='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.bulkDensity}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">热损伤(%){{'<='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.jiaorenli}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">杂质(%){{'<='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.impurity}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">霉变粒(%){{'<='}}</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.mildewGrain}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">不完整粒(%){{'<='}} </text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.imperfectGrain}}</text>
+				</view>
+			</view>
+			<view class="c-row ">
+				<text class="tit">品级</text>
+				<view class="con-list">
+					<text>{{warehouseInOutInfo.grade}}</text>
+				</view>
+			</view>
+		</view>
+
+	</view>
+</template>
+<script>
+	export default {
+
+		data() {
+			return {
+				warehouseInOutInfo: {
+					warehouseInOutDetail:{
+						qualityInspector:''
+					}
+				}
+			}
+		},
+		onLoad(options){
+				
+			this.getList(options.id)
+			console.log(options.id,"idwei1")
+		},
+		methods: {
+			typeChange(e){
+				this.typesIndex = e.detail.value
+				this.types = this.typesType[this.typesIndex];
+			},
+			getList(id1){
+				var that=this
+				this.$api.doRequest('get','/warehouseInOutInfo/getInfo',{id:id1}).then(res => {
+					console.log(res)
+					that.warehouseInOutInfo = res.data.data
+					
+				})
+				.catch(res => {
+					uni.showToast({
+						title: res.errmsg,
+						icon:'none',
+						duration: 2000
+					})
+				});
+				console.log(this.warehouseInOutInfo)
+			}
+		}
+		}
+</script>
+<style scoped lang='scss'>
+	.center{
+		margin: 15rpx 15rpx 10rpx 15rpx;
+		padding:0rpx 10rpx 30rpx 10rpx;
+		background-color: #FFFFFF;
+		border-radius: 15px;
+	}
+	.title_b{
+		margin: 20rpx 20rpx 0rpx 20rpx;
+		padding:20rpx 10rpx 20rpx 10rpx;
+		font-size: 18px;
+		font-weight: 550;
+		border-bottom: 1px solid #d6d6d6;
+	}
+	.title_c{
+		margin: 20rpx 20rpx 0rpx 20rpx;
+		padding:20rpx 10rpx 20rpx 10rpx;
+		font-size: 18px;
+		font-weight: 550;
+	}
+	.margin-bottom {
+		margin-bottom: 30px;
+	}
+	
+	.c-row {
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-box-align: center;
+		-webkit-align-items: center;
+		align-items: center;
+		padding: 20rpx 30rpx;
+		position: relative;
+	}
+	
+	.con-list {
+		-webkit-box-flex: 1;
+		-webkit-flex: 1;
+		flex: 1;
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		-webkit-box-orient: vertical;
+		-webkit-box-direction: normal;
+		-webkit-flex-direction: column;
+		flex-direction: column;
+		color: #303133;
+		line-height: 40rpx;
+		text-align: right;
+		padding-right: 20rpx;
+	}
+	
+	.d-header {
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		height: 80upx;
+		font-size: $font-base + 2upx;
+		color: $font-color-dark;
+		position: relative;
+	
+		text {
+			padding: 0 20upx;
+			background: #fff;
+			position: relative;
+			z-index: 1;
+		}
+	
+		&:after {
+			position: absolute;
+			left: 50%;
+			top: 50%;
+			transform: translateX(-50%);
+			width: 300upx;
+			height: 0;
+			content: '';
+			border-bottom: 1px solid #ccc;
+		}
+	}
+	/* 底部操作菜单 */
+	.page-bottom1 {
+		position: fixed;
+		left: 0;
+		bottom: 0;
+		z-index: 95;
+		width:100%;
+		height: 70px;
+		background: rgba(255, 255, 255, .9);
+		padding:15px;
+		border-radius: 0;
+		text-align:right;
+		button{
+			display:inline-block;
+			border-radius:18px;
+			margin:0 10px;
+			font-size:14px;background:#fff;
+			color:#333;
+			border:1px solid #333;
+			padding-left: 50rpx;
+			padding-right: 50rpx;
+		}
+		.action-btn{
+			background:#22C572;
+			color:#fff;
+			border:1px solid #22C572;
+		}
+		.p-b-btn {
+			display: flex;
+			flex-direction: column;
+			align-items: center;
+			justify-content: center;
+			font-size: $font-sm;
+			color: $font-color-base;
+			width: 96upx;
+			height: 80upx;
+	
+			.yticon {
+				font-size: 40upx;
+				line-height: 48upx;
+				color: $font-color-light;
+			}
+	
+			&.active,
+			&.active .yticon {
+				color: $uni-color-primary;
+			}
+	
+			.icon-fenxiang2 {
+				font-size: 42upx;
+				transform: translateY(-2upx);
+			}
+	
+			.icon-shoucang {
+				font-size: 46upx;
+			}
+		}
+	
+		
+	}
+	.container{
+		padding-bottom: 160upx;
+	}
+</style>
+
+

+ 15 - 1
pages.json

@@ -422,7 +422,7 @@
 			}
 			}
 
 
 		}
 		}
-    ],
+	],
 	"subpackages": [{
 	"subpackages": [{
 			"root": "pageA",
 			"root": "pageA",
 			"pages": [{
 			"pages": [{
@@ -1055,6 +1055,20 @@
 						"enablePullDownRefresh": false
 						"enablePullDownRefresh": false
 					}
 					}
 
 
+				}, {
+					"path": "/warehousings/ex_warehouse",
+					"style": {
+						"navigationBarTitleText": "出库",
+						"enablePullDownRefresh": false
+					}
+
+				}, {
+					"path": "/warehousings/ex_warehouse_detail",
+					"style": {
+						"navigationBarTitleText": "出库详情",
+						"enablePullDownRefresh": false
+					}
+
 				}
 				}
 			]
 			]
 		}
 		}