<template>
	<view class="container">
		<view class="detail-desc">
			<view class="d-header">
				<text>交易信息</text>
			</view>
			 <view class="c-list">
				<view class="c-row b-b">
					<text class="tit">卖方</text>
					<view class="con-list">
						<text>{{tradeInfo.seller}}</text>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">买方</text>
					<view class="con-list">
						<text>{{tradeInfo.buyer}}</text>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">交易数量</text>
					<view class="con-list">
						<text>{{numFilter(tradeInfo.count)}}</text>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">库点</text>
					<view class="con-list">
						<text>{{tradeInfo.title}}</text>
					</view>
				</view>
			</view>
			<view class="d-header">
				<text>审核项目</text>
			</view>
			<view class="c-list">
				<view class="c-row b-b">
					<text class="tit">发票类型</text>
					<view class="con-list">
						<input placeholder="请填写发票类型" name="input" v-model="tradeInfo.invoiceType" @input="invoiceTypeInput"></input>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">包装方式</text>
					<view class="con-list">
						<input placeholder="请填写包装方式" name="input" v-model="tradeInfo.packing" @input="packingInput"></input>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">点价(元/吨)</text>
					<view class="con-list">
						<input placeholder="请填写点价" name="input" v-model="tradeInfo.unitPrice" @input="unitPriceInput"></input>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">基差(元/吨)</text>
					<view class="con-list">
						<input placeholder="请填写基差" name="input" v-model="tradeInfo.basis" @input="basisInput"></input>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">发票费用(元/吨)</text>
					<view class="con-list">
						<input placeholder="请填写发票费用" name="input" v-model="tradeInfo.invoiceMoney" @input="invoiceMoneyInput"></input>
					</view>
				</view>
				<view v-if="tradeInfo.type == 1" class="c-row b-b">
					<text class="tit">卸车费(元/吨)</text>
					<view class="con-list">
						<input placeholder="请填写卸车费" name="input" v-model="tradeInfo.unloadingFee" @input="unloadingFeeInput"></input>
					</view>
				</view>
				<view v-else class="c-row b-b">
					<text class="tit">包装费用(元/吨)</text>
					<view class="con-list">
						<input placeholder="请填写包装费用" name="input" v-model="tradeInfo.packingMoney" @input="packingMoneyInput"></input>
					</view>
				</view>
				<view class="c-row b-b">
					<text class="tit">合同编号</text>
					<view class="con-list">
						<input placeholder="请填写合同编号" name="input" v-model="tradeInfo.tradeContractNo" @input="tradeContractNoInput"></input>
					</view>
				</view>
			</view>
		<view v-if="taskStatus == 1" class="page-bottom">
			<view class="action-btn-group">
				<button type="primary"  class=" action-btn no-border add-cart-btn" @click="finish">完成</button>
			</view>
		</view> 
	</view>
	</view>
</template>

<script>
  import {  
	    mapState 
	} from 'vuex';
	export default {
		data() {
			return {
				tradeInfo:[],
				taskStatus:0
			};
		},
		computed: {
			...mapState(['hasLogin','userInfo']),
		},
		onShow() {
		},
		onLoad(options) {
			const that = this
			this.taskId = options.taskId
			this.taskStatus = options.taskStatus
			uni.showLoading({
				title: '正在加载',
				mask:true
			})
			that.$api.request('trade', 'getTradeDetailTask', {
				taskId: options.taskId
			}, failres => {
				that.$api.msg(failres.errmsg)
				uni.hideLoading()
			}).then(res => {
				that.tradeInfo = res.data
				uni.hideLoading()
			})
		},
		onReady(){
			
		},
		methods: {
			invoiceTypeInput(e){
				this.tradeInfo.invoiceType = e.detail.value
			},
			packingInput(e){
				this.tradeInfo.packing = e.detail.value
			},
			unitPriceInput(e){
				this.tradeInfo.unitPrice = e.detail.value
			},
			basisInput(e){
				this.tradeInfo.basis = e.detail.value
			},
			invoiceMoneyInput(e){
				this.tradeInfo.invoiceMoney = e.detail.value
			},
			packingMoneyInput(e){
				this.tradeInfo.packingMoney = e.detail.value
			},
			tradeContractNoInput(e){
				this.tradeInfo.tradeContractNo = e.detail.value
			},
			unloadingFeeInput(e){
				this.tradeInfo.unloadingFee = e.detail.value
			},
			finish(){
				const that = this
				if(!that.tradeInfo.tradeContractNo){
					this.$api.msg('请填写合同编号');
					return;
				}
				uni.showLoading({
					title: '正在加载',
					mask:true
				})
				that.$api.request('trade', 'finishTradeTask', {
					taskId: that.taskId,
					tradeDO:JSON.stringify(that.tradeInfo)
				}, failres => {
					that.$api.msg(failres.errmsg)
					uni.hideLoading()
				}).then(res => {			
					that.$api.msg('完成成功')
					setTimeout(()=>{uni.navigateBack({})},1000);
					uni.hideLoading()
				})
			},
			priceInput(e){
				this.price = e.detail.value
			},
			otherPriceInput(e){
				this.otherPrice = e.detail.value
			},
			insuranceFeeInput(e){
				this.insuranceFee = e.detail.value
			},
			netWeightInput(e){
				this.netWeight = e.detail.value
			},
			carNoInput(e){
				this.carNo = e.detail.value
			},
			rentboxFeeInput(e){
				this.rentboxFee = e.detail.value
			},
			loadingFeeInput(e){
				this.loadingFee = e.detail.value
			},
			boxNoInput(e){
				this.boxNo = e.detail.value
			},
			numFilter (value) {
				if(!value){
					return 0
				}
				// 截取当前数据到小数点后两位
				let realVal = parseFloat(value).toFixed(2)
				return realVal
			},
			carInput(item,e){
				if(item.count>item.tranCount){
					uni.showToast({
						title: `当前车辆可载吨数为${item.tranCount},请不要超过`,
						icon:'none',
						duration: 2000
					})
					item.count = 0
				}else{
					item.count = e.detail.value
				}
				
			},
			selectInPerson(item){
				if(JSON.stringify(this.carlist).indexOf(JSON.stringify(item.id))==-1){
				    this.carlist.push(item)
				}else{
					for(var i=0;i<this.carlist.length;i++){
						if(this.carlist[i].id==item.id){
							this.carlist[i].count=item.count
						}
					}
				}
				this.modalName = null
			},
			ChooseSignImage() {
				this.handwriting = new Handwriting({
				  lineColor: this.lineColor,
				  slideValue: this.slideValue, // 0, 25, 50, 75, 100
				  canvasName: 'handWriting',
				})
				this.showAutograph = true
			},
			uploadScaleStart(event){
			  this.handwriting.uploadScaleStart(event)
		    },
		    uploadScaleMove(event){
			  this.handwriting.uploadScaleMove(event)
		    },
		    uploadScaleEnd(event){
			  this.handwriting.uploadScaleEnd(event)
		    },
			retDraw() {
				this.handwriting.retDraw()
			},
			hideModal(e) {
				this.modalName = null
			},
			ViewImage(e) {
				var img = [];
				img = e.currentTarget.dataset.url.split(' ')
				uni.previewImage({
					current:0,
					urls: img
				});
			},
			selectPerson(){
				const that = this
				uni.showLoading({
					title: '正在加载',
					mask:true
				})
				that.$api.request('tran', 'getCarList', {
					tranNo:that.carInfo.tranNo,
					taskId:that.taskId
				}, failres => {
				 	that.$api.msg(failres.errmsg)
				 	uni.hideLoading()
				 }).then(res => {
					for(var i=0;i<res.data.length;i++){
						console.log(res.data[i].tranCount)
						res.data[i].count = res.data[i].tranCount
				    }
					that.userList = res.data
					if(that.userList.length == 0){
						that.$api.msg('暂无汽车号')
					}
					else{
						var height = that.userList.length * 100
						var width = 500
						that.userStyle = "height:"+height+"rpx;width:" + width+"rpx"
						that.modalName = 'inModal'
					}
					
					uni.hideLoading()
				})
			},
			DelImg(e) {
				uni.showModal({
					title: '提示',
					content: '确定要删除该照片吗？',
					cancelText: '取消',
					confirmText: '确定',
					success: res => {
						if (res.confirm) {
							if(e.currentTarget.dataset.index == 0){
								this.trainImg = "";
							}
							else if(e.currentTarget.dataset.index == 1){
								this.otherImg = "";
							}
						}
					}
				})
			},
			ChooseImage() {
				uni.chooseImage({
					count: 1, //默认9
					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图，默认二者都有
					sourceType: ['album','camera'], //从相册选择
					success: (res) => {
						//上传图片
						//图片路径可自行修改
						uploadImage(res.tempFilePaths[0], 'trainImg/',
							result => {
								this.trainImg = result
								uni.hideLoading();
							}
						)
					}
				});
			},
			ChooseImageOther() {
				uni.chooseImage({
					count: 1, //默认9
					sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图，默认二者都有
					sourceType: ['album','camera'], //从相册选择
					success: (res) => {
						//上传图片
						//图片路径可自行修改
						uploadImage(res.tempFilePaths[0], 'otherImg/',
							result => {
								this.otherImg = result
								uni.hideLoading();
							}
						)
					}
				});
			},
			
			goodsValueInput(e){
				this.goodsValue = e.detail.value
			},
			numInput(e){
				this.addNum = e.detail.value
			},
			wechatNoInput(e) {
				this.wechatNo = e.detail.value
			},
			gaipai(){
				console.log(1111)
				const that = this
				uni.showLoading({
					title: '正在加载',
					mask:true
				})
				that.$api.request('user', 'getUserList', {
					role:'外勤'
				}, failres => {
				 	that.$api.msg(failres.errmsg)
				 	uni.hideLoading()
				 }).then(res => {
					that.userList = res.data
					if(that.userList.length == 0){
						that.$api.msg('暂无外勤信息')
					}
					else{
						var height = that.userList.length * 100
						var width = 500
						that.userStyle = "height:"+height+"rpx;width:" + width+"rpx"
						that.modalName = 'userModal'
					}
					
					uni.hideLoading()
				})
			},
			mygaipai(id){
				this.nextUserId=id
				var that = this
				that.$api.request('tran', 'gaipai',{
					taskId: that.taskId,
					outPersonId:id,
					taskType:that.taskType
				},failres => {
					that.$api.msg(failres.errmsg)
					that.modalName = null
					uni.hideLoading()
				}).then(res => {		
					that.modalName = null
					uni.navigateBack({
						delta: 2
					})
					uni.hideLoading()
				})
			},
		},
	}
</script>

<style lang='scss' scoped="true">
	.container{
		padding-bottom: 160upx;
	}
	.carwrap{
		font-size:20rpx;
	}
	.detail-desc {
		background: #fff;
		margin-top: 16upx;
		width: 750upx;
	
		.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;
			}
		}
	}
	.carwrap{
		display: flex;
		justify-content: space-between;
		padding: 10px 40px;
		border-bottom:1px solid #f0f0f0;
	}
	.trancount{
		display: inline-block;
		vertical-align: middle;
		text-align: right;
		width: 100rpx;
	}
	.c-list {
		font-size: $font-sm + 2upx;
		color: $font-color-base;
		background: #fff;
	
		.c-row {
			display: flex;
			align-items: center;
			padding: 20upx 30upx;
			position: relative;
		}
	
		.tit {
			width: 220upx;
		}
	
		.con {
			flex: 1;
			color: $font-color-dark;
	
			.selected-text {
				margin-right: 10upx;
			}
		}
	
		.bz-list {
			height: 40upx;
			font-size: $font-sm+2upx;
			color: $font-color-dark;
	
			text {
				display: inline-block;
				margin-right: 30upx;
			}
		}
	
		.con-list {
			flex: 1;
			display: flex;
			flex-direction: column;
			color: $font-color-dark;
			line-height: 40upx;
			text-align: right;
			padding-right: 20upx;
		}
	
		.red {
			color: $uni-color-primary;
		}
	}
	/* 底部操作菜单 */
	.page-bottom {
		position: fixed;
		left: 30upx;
		bottom: 30upx;
		z-index: 95;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 690upx;
		height: 100upx;
		background: rgba(255, 255, 255, .9);
		box-shadow: 0 0 20upx 0 rgba(0, 0, 0, .5);
		border-radius: 16upx;
	
		.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;
			}
		}
	}
	@mixin playcenter {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.xsh-start {
		width: 105rpx;
		height: 105rpx;
		background: #FFFFFF;
		border-radius: 50%;
		font-size: 29rpx;
		color: #4135EB;
		@include playcenter;
		flex-wrap: wrap;
	}
	.x-modal {
		width: 100%;
		.x-m-title {
			width: 100%;
			height: 90rpx;
			padding: 0 38rpx 0 31rpx;
			box-sizing: border-box;
			font-size: 29rpx;
			color: #333333;
			border-bottom: 1px dashed #999;
			@include playcenter;
			justify-content: space-between;
			.xm-t-clear {
				font-size: 25rpx;
				color: #341DB7;
				@include playcenter;
				>image {
					width: 28rpx;
					height: 28rpx;
					display: block;
					margin-right: 8rpx;
				}
			}
		}
		.x-m-con {
			width: 100%;
			padding: 0 31rpx 18rpx;
			margin-top: 5rpx;
			box-sizing: border-box;
		}
	}
	.wrapper {
	  width: 100%;
	  height: 100%;
	  margin: 30upx 0;
	  overflow: hidden;
	  display: flex;
	  align-content: center;
	  flex-direction: column;
	  justify-content: center;
	  font-size: 28upx;
	}
	
	.handWriting {
	  background: #fff;
	  width: 100%;
	  height: 350upx;
	}
	
	.handRight {
	  align-items: center;
	}
	
	.handCenter {
	  border: 4upx dashed #e9e9e9;
	  flex: 5;
	  overflow: hidden;
	  box-sizing: border-box;
	  width: 90%;
	  margin: 0 auto;
	}
	.handTitle {
	  flex: 1;
	  color: #666;
	  justify-content: center;
	  font-size: 30upx;
	}
	.handBtn {
	  flex-direction: column;
	  padding: 40upx 20upx;
	}
	.buttons{
		width: 100%;
		margin-top: 20upx;
		justify-content: space-between;
	}
	.buttons>button{
		font-size: 30upx;
		height: 80upx;
	}
	.delBtn {
	  background: #23df02;
	  color: #fff;
	}
	.color{
		align-items: center;
	}
	.color>text{
		margin-right: 20upx;
	}
	.subBtn {
	  background: #008ef6;
	  color: #fff;
	  text-align: center;
	  justify-content: center;
	}
	
	.black-select {
	  width: 60upx;
	  height: 60upx;
	}
	.black-select.color_select {
	  width: 90upx;
	  height: 90upx;
	}
	.red-select {
	  width: 60upx;
	  height: 60upx;
	}
	.red-select.color_select {
	  width: 90upx;
	  height: 90upx;
	}
	.slide-wrapper {
	  align-items: center;
	  margin-bottom: 20upx;
	}
	.slider{
		width: 400upx;
		padding-left: 20upx;
	}
	.drop {
	  width: 50upx;
	  height: 50upx;
	  border-radius: 50%;
	  background: #FFF;
	  position: absolute;
	  left: 0upx;
	  top: -10upx;
	  box-shadow: 0px 1px 5px #888888;
	}
	
	.slide {
	  width: 250upx;
	  height: 30upx;
	}
	.showimg{
		border: 4upx solid #e9e9e9;
		overflow: hidden;
		width: 90%;
		margin: 0 auto;
		background: #eee;
		height: 350upx;
		margin-top: 40upx;
		align-items: center;
		justify-content: center;
	}
	.showimg>image{
		width: 100%;
		height: 100%;	
	}
	.showimg>text{
		font-size: 40upx;
		color: #888;
	}	
	.indexFixed{
		position: fixed;
		left:0;
		bottom:0;
		right:0;
	}
</style>
