<template>
	<view class="query-wrap">
		<view class="inner-item">
			<view class="text-title">
				<view class="title-circ">
				</view>
				<span>基本信息</span>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label-podnme">
						订单号:
					</view>
					<view class="shuo-unit">
						{{acceptDetaData.id}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						订单品种数
					</view>
					<view class="shuo-cont">
						{{acceptDetaData.detlCnt||""}}
					</view>
				</view>
				<view class="shuo-item">
					<view class="shuo-label">
						订单总数量
					</view>
					<view class="shuo-cont">
						{{acceptDetaData.qtySum||""}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						订单总金额:
					</view>
					<view class="shuo-cont">
						{{acceptDetaData.purcAmt||""}}
					</view>
				</view>
				<view class="shuo-item">
					<view class="shuo-label">
						剩余出库量:
					</view>
					<view class="shuo-cont">
						{{acceptDetaData.delvCnt||""}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label">
						来源机构:
					</view>
					<view class="shuo-cont">
						{{acceptDetaData.branchName}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label">
						采购类型:
					</view>
					<view class="shuo-cont">
						<span v-if="acceptDetaData.purcType == '2'">{{ item.oprn }}</span>
						<span v-if="acceptDetaData.purcType == '1'">普通采购</span>
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						采购时间:
					</view>
					<view class="shuo-cont">
						{{forMatTime(acceptDetaData.docmkDate)}}
					</view>
				</view>
			</view>
		</view>
		<view class="empty-cont" v-if="orderDelData.length=='0'">
			暂无明细数据
		</view>
		<view class="inner-item" v-for="(item,idex) in orderDelData" :key="idex" @click.stop="itemDetails(item,idex)">
			<view class="text-title" v-if="idex=='0'">
				<view class="title-circ">

				</view>
				<span>耗材清单</span>
			</view>
			<view class="check-title" @tap.stop.prevent>
				<checkbox-group @change="checkChange" :data-id="item.id">
					<label>
						<checkbox :value="idex" />
					</label>
				</checkbox-group>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label-podnme">
						耗材编码
					</view>
					<view class="shuo-unit">
						{{item.prodCode}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label-podnme">
						医保编码
					</view>
					<view class="shuo-unit">
						{{item.hiCode}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item-name">
					<view class="shuo-label-podnme">
						{{item.prodName}}
					</view>
					<view class="shuo-unit">
						<span>{{ item.purcUnt }} ({{ item.convrat }}{{ item.prcUnt }}/{{
					                  item.purcUnt
					                }})</span>
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						规格:
					</view>
					<view class="shuo-cont">
						{{item.spec}}
					</view>
				</view>
				<view class="shuo-item">
					<view class="shuo-label">
						型号:
					</view>
					<view class="shuo-cont">
						{{item.mol}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						材质:
					</view>
					<view class="shuo-cont">
						{{item.matl}}
					</view>
				</view>
				<view class="shuo-item">
					<view class="shuo-label">
						采购数量:
					</view>
					<view class="shuo-cont">
						{{item.purcCnt}}
					</view>
				</view>
			</view>
			<view class="inventory-item">
				<view class="shuo-item">
					<view class="shuo-label">
						已出库数量:
					</view>
					<view class="shuo-cont">
						{{item.delvCntYck}}
					</view>
				</view>
				<view class="shuo-item">
					<view class="shuo-label">
						剩余出库量:
					</view>
					<view class="shuo-cont">
						{{item.toDelvCnt}}
					</view>
				</view>
			</view>
		</view>
		<uni-popup ref="popup">
			<uni-popup-dialog type="warn" :before-close="true" cancelText="取消" confirmText="确定" content="你确定当前操作吗？"
				@confirm="dialogConfirm" @close="dialogClose"></uni-popup-dialog>
		</uni-popup>
		<view class="botm-btn">
			<button type="default" plain="true" style="width:240rpx;line-height: 70rpx;background: #01A992;color:#fff"
				@click.stop="accessData()">确认</button>
		</view>
	</view>
</template>
<script>
	import {
		mapState,
		mapMutations,
		mapActions
	} from 'vuex';
	import moment from "moment";
	export default {
		data() {
			return {
				listData: [],
				acceptDetaData: {},
				subMitData: {},
				selcectData: {} //详情选中的数据
			}
		},
		computed: {
			...mapState(['orderDelData', 'instData', 'batchData'])
		},
		onShow() {
			let that = this;
			uni.getStorage({
				key: 'orderDetailsData',
				success: function(res) {
					that.touData({
						id: res.data.id,
						spdId: that.instData.spdId,
					});
					that.acceptDetaData = res.data;
				}
			});
		},
		mounted() {},
		methods: {
			...mapActions(['getOrderAwaitDetail']),
			...mapMutations(['setBatchData']),
			async touData(data) {
				this.getOrderAwaitDetail(data)
			},
			forMatTime(row) {
				return moment(row).format("YYYY-MM-DD HH:mm");
			},
			checkChange(e) {
				let newSelect = {
					...this.selcectData
				};
				let chekData = e.detail.value;
				if (chekData.length > 0) {
					this.selcectData = {
						...this.selcectData,
						[e.target.dataset.id]: this.orderDelData[chekData[0]]
					}
				} else {
					delete newSelect[e.target.dataset.id]
					this.selcectData = newSelect;
				}
			},
			//耗材添加批次跳转
			itemDetails(item, index) {
				if (!this.selcectData[item.id]) {
					uni.showToast({
						title: '请选中再添加批次',
						icon: 'none',
						duration: 1000,
					});
					return;
				}
				uni.setStorage({
					key: 'batchDelsData',
					data: item
				});
				uni.navigateTo({
					url: '/subpkg/pages/order-outbond/batch',
					success: function(res) {
						console.log(res, "res")
					}
				});
			},
			//确认/退回
			accessData() {
				if (JSON.stringify(this.selcectData) === "{}") {
					uni.showToast({
						title: '请选择出库耗材',
						icon: 'none',
						duration: 1000,
					});
					return;
				};;
				let selectKey = Object.keys(this.selcectData);
				let filterEmpty = selectKey.filter((item) => {
					return this.batchData[item] == null || this.batchData[item].length == 0
				})
				if (filterEmpty.length > 0) {
					uni.showToast({
						title: '请为选中的耗材添加批次',
						icon: 'none',
						duration: 1000,
					});
					return;
				};
				let newSubData = [];
				selectKey.forEach((item) => {
					newSubData.push(this.batchData[item])
				}) 
				const merged = newSubData.reduce((acc, current) => [...acc, ...current], []);
				this.$http('orderOutbond.subMitData', {
					spdId: this.instData.spdId,
					detlList: merged
				}, '加载中').then(res => {
					if (res.success == true) {
						this.setBatchData({});
						uni.navigateTo({
							url: '/subpkg/pages/order-outbond/index',
							success: function(res) {
								console.log(res, "res")
							}
						});
					}
				}).catch(e => {

				})
			},
			//属性值进行比较
			//日期格式化
			forMatTime(time) {
				return moment(time).format("YYYY-MM-DD");
			},
			//加时分秒
			forMatTimehs(time) {
				return moment(time).format("YYYY-MM-DD HH:mm");
			},
		},
		watch: {

		}

	}
</script>

<style lang="scss" scoped>
	.query-wrap {
		width: 100%;
		height: 100%;
		padding: 20rpx;
		box-sizing: border-box;
		background-color: #F1F1F1;
		overflow-y: scroll;
		overflow-x: hidden;
		position: relative;
		padding-bottom: 200rpx;

		.botm-btn {
			width: 100%;
			height: 120rpx;
			background-color: #fff;
			position: fixed;
			left: 0;
			bottom: 0;
			padding-top: 40rpx;
			display: flex;
			align-items: center;
			justify-content: space-around;
		}

		.time-view {
			height: 350rpx;
			background-color: #fff;
			padding: 50rpx 50rpx 0 50rpx;
			box-sizing: border-box;

			.btn-view {
				width: 100%;
				height: 100rpx;
				margin-top: 100rpx;
				display: flex;
				justify-content: space-around;
			}
		}

	}

	uni-page-body {
		width: 100%;
		height: 100%;
	}
</style>