Form.vue 4.03 KB
<template>
	<el-dialog :title="!dataForm.id ? '新建' : isDetail ? '详情' : '编辑'" :close-on-click-modal="false"
		:visible.sync="visible" class="NCC-dialog NCC-dialog_center" lock-scroll width="600px">
		<el-row :gutter="15" class="" style="height: 300px;">
			<el-form ref="elForm" :model="dataForm" size="small" label-width="100px" label-position="right"
				:disabled="!!isDetail" :rules="rules">
				<el-col :span="24">
					<el-form-item label="申请时间" prop="applyTime">
						{{ dataForm.applyTime ? new Date(dataForm.applyTime).toLocaleString('zh-CN', {
							year: 'numeric',
							month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second:
								'2-digit'
						}).replace(/\//g, '-') : '' }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="订单编号" prop="orderNo">
						{{ dataForm.orderNo }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="申请金额" prop="applyAmount">
						{{ dataForm.applyAmount }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="用户ID" prop="userId">
						{{ dataForm.userId }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="用户电话" prop="userPhone">
						{{ dataForm.userPhone }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="退款原因" prop="userPhone">
						{{ dataForm.refundReason }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="退款备注" prop="userPhone">
						{{ dataForm.remark }}
					</el-form-item>
				</el-col>
				<el-col :span="24">
					<el-form-item label="退款处理结果" prop="userPhone">
						<el-input v-model="dataForm.handleResult" type="textarea" />
					</el-form-item>
				</el-col>
			</el-form>
		</el-row>
		<span slot="footer" class="dialog-footer">
			<el-button @click="visible = false">取 消</el-button>
			<el-button type="danger" @click="RejectRefund()" v-if="!isDetail">拒绝退款</el-button>
			<el-button type="primary" @click="dataFormSubmit()" v-if="!isDetail">确定退款</el-button>
		</span>
	</el-dialog>
</template>
<script>
import request from '@/utils/request'
import { getDictionaryDataSelector } from '@/api/systemData/dictionary'
import { previewDataInterface } from '@/api/systemData/dataInterface'
export default {
	components: {},
	props: [],
	data() {
		return {
			loading: false,
			visible: false,
			isDetail: false,
			dataForm: {
				id: '',
				applyTime: undefined,
				orderNo: undefined,
				applyAmount: undefined,
				userId: undefined,
				userPhone: undefined,
			},
			rules: {
			},
		}
	},
	computed: {},
	watch: {},
	created() {
	},
	mounted() {
	},
	methods: {
		goBack() {
			this.$emit('refresh')
		},
		init(id, isDetail) {
			this.dataForm.id = id || 0;
			this.visible = true;
			this.isDetail = isDetail || false;
			this.$nextTick(() => {
				this.$refs['elForm'].resetFields();
				if (this.dataForm.id) {
					request({
						url: '/api/Extend/UavRefundApplication/' + this.dataForm.id,
						method: 'get'
					}).then(res => {
						this.dataForm = res.data;
					})
				}
			})
		},
		RejectRefund() {
			request({
				url: `/api/Extend/UavRefundApplication/RejectRefund`,
				method: 'post',
				data: this.dataForm,
			}).then((res) => {
				this.$message({
					message: res.msg,
					type: 'success',
					duration: 1000,
					onClose: () => {
						this.visible = false,
							this.$emit('refresh', true)
					}
				})
			})
		},
		dataFormSubmit() {
			//提示是否确认退款
			this.$confirm('是否确认退款, 是否继续?', '提示', {
				type: 'warning'
			}).then(() => {
				request({
					url: `/api/Extend/AliPay/RefundPay`,
					method: 'post',
					data: {
						OutOrderNo: this.dataForm.orderNo,
					}
				}).then((res) => {
					this.$message({
						message: res.data,
						type: 'success',
						duration: 1000,
						onClose: () => {
							this.visible = false,
							this.$emit('refresh', true)
						}
					})
				})
			})
		},
	}
}
</script>

<style>

</style>