<template>
	<view class="container">
		<uni-nav-bar dark :fixed="true" shadow background-color="#007AFF" status-bar left-icon="left" left-text="返回"
			title="字典子项 详情" @clickLeft="back" />
		<uni-card>
		<unicloud-db ref="udb" v-slot:default="{data, loading, error, options}" :options="options"
			:collection="collectionList"
			field="dictID,itemValue,itemText,itemColor,description,sortOrder,status,createBy,updateBy,createTime,updateTime"
			:where="queryWhere" :getone="true" :manual="true">
			<view v-if="error">{{error.message}}</view>
			<view v-else-if="loading">
				<uni-load-more :contentText="loadMore" status="loading"></uni-load-more>
			</view>
			<view v-else-if="data">

				<uni-row>
					<uni-col :span="6">
						<uni-title title="字典ID"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.dictID"></uni-title>
					</uni-col>
				</uni-row>
				<uni-row>
					<uni-col :span="6">
						<uni-title title="字典项文本"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.itemText"></uni-title>
					</uni-col>
				</uni-row>
				<uni-row>
					<uni-col :span="6">
						<uni-title title="字典项值"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.itemValue"></uni-title>
					</uni-col>
				</uni-row>
				<uni-row>
					<uni-col :span="6">
						<uni-title title="状态"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.status"></uni-title>
					</uni-col>
				</uni-row>
				<uni-row>
					<uni-col :span="6">
						<uni-title title="排序"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.sortOrder"></uni-title>
					</uni-col>
				</uni-row>
				<uni-row>
					<uni-col :span="6">
						<uni-title title="创建人"></uni-title>
					</uni-col>
					<uni-col :push='2' :span="14">
						<uni-title :title="data.createBy"></uni-title>
					</uni-col>
				</uni-row>

			</view>
		</unicloud-db>
		<view class="btns">
			<button type="primary" size="mini" @click="handleUpdate">修改</button>
			<button type="warn" size="mini" class="btn-delete" @click="handleDelete">删除</button>
		</view>
		</uni-card>
	</view>
</template>

<script>
	// 由schema2code生成，包含校验规则和enum静态数据
	import {
		enumConverter
	} from '../../js_sdk/validator/ngTools_DictItem.js'
	const db = uniCloud.database()

	export default {
		data() {
			return {
				queryWhere: '',
				collectionList: "ngTools_DictItem",
				loadMore: {
					contentdown: '',
					contentrefresh: '',
					contentnomore: ''
				},
				options: {
					// 将scheme enum 属性静态数据中的value转成text
					...enumConverter
				}
			}
		},
		onLoad(e) {
			this._id = e.id
		},
		onReady() {
			if (this._id) {
				this.queryWhere = '_id=="' + this._id + '"'
			}
		},
		methods: {
			handleUpdate() {
				// 打开修改页面
				uni.navigateTo({
					url: './edit?id=' + this._id,
					events: {
						// 监听修改页面成功修改数据后, 刷新当前页面数据
						refreshData: () => {
							this.$refs.udb.loadData({
								clear: true
							})
						}
					}
				})
			},back() {
				uni.navigateBack({
					delta: 1
				})
			},
			handleDelete() {
				this.$refs.udb.remove(this._id, {
					success: (res) => {
						// 删除数据成功后跳转到list页面
						uni.navigateTo({
							url: './list'
						})
					}
				})
			}
		}
	}
</script>

<style>
	.container {
		padding: 0px;
	}

	.btns {
		margin-top: 10px;
		/* #ifndef APP-NVUE */
		display: flex;
		/* #endif */
		flex-direction: row;
	}

	.btns button {
		flex: 1;
	}

	.btn-delete {
		margin-left: 40px;
	}
</style>