PayOrder.vue 7.7 KB
<template>
    <el-container>
        <el-main >
            <el-row type="flex" class="row-bg" justify="center">
                <el-col :span="20">
                    <el-form :model="OrderForm" :rules="rules"  ref="OrderForm"  label-width="180px" :label-position="labelPosition">
                        <el-col :span="24">
                            <el-form-item label="充值类型" prop="payType">
                                <el-col :span="24">
                                    <el-select v-if="Edistatus=='create'" v-model="OrderForm.payType" @change="selectTrigger(OrderForm.payType)" placeholder="请选择充值类型" style="width:100%">
                                        <el-option v-for="item in payTypes" :key="item.value" :label="item.label"
                                                   :value="item.value" ></el-option>
                                    </el-select>
                                    <el-select v-else v-model="OrderForm.payType" style="width:100%">
                                        <el-option disabled="" v-for="item in payTypes" :key="item.value" :label="item.label"
                                                   :value="item.value" ></el-option>
                                    </el-select>
                                </el-col>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="仪表地址">
                                <el-input disabled="" v-model="OrderForm.payTypeAddress"></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="用户名称">
                                <el-input disabled="" v-model="OrderForm.payUserName"></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="房间号码">
                                <el-input disabled="" v-model="OrderForm.payLocationName"></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="充值日期">
                                <el-date-picker type="date" placeholder="" v-model="OrderForm.payTime" disabled="" style="width: 100%;" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item v-if="Edistatus=='create'" label="充值金额" prop="payFees">
                                <el-input type="number" oninput ="value=value.replace(/[^0-9.]/g,'')" v-model.number="OrderForm.payFees"></el-input>
                            </el-form-item>
                            <el-form-item v-else label="充值金额" prop="payFees">
                                <el-input disabled="" type="number" oninput ="value=value.replace(/[^0-9]/g,'')" v-model.number="OrderForm.payFees"></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="支付方式">
                                <el-radio-group v-model="OrderForm.payFessType">
                                    <el-radio  v-for="item in payFessTypes" :key="item.value" :label="item.value" border>{{item.label}}</el-radio>
                                </el-radio-group>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item >
                                <el-button type="primary" style="width:100%" @click="Edistatus==='create'?createData('OrderForm'):updateData('OrderForm')">确认支付</el-button>
                                </el-form-item>
                        </el-col>
                    </el-form>
                </el-col>
            </el-row>
        </el-main>
    </el-container>
</template>
<style scoped>

</style>
<script>
    import loginUserInfo from '@/api/base'
    export default {
        data() {
            return{
                OrderForm:{
                    payUserId:'',
                    payUserName:'',
                    payTime:new Date(),
                    payLocationId:'',
                    payLocationName:'3#01-101',
                    payTypeAddress:'',
                    payFees:'',
                    payType:'',
                    payFessType:'1',
                    orderNumber:'',
                    payStatus:'',
                },
                rules:{
                    payType: [
                        { required: true, message: '请选择充值类型', trigger: 'change' }
                    ],
                    payFees:[
                        { required: true, message: '充值金额不能为空'},
                        { type: 'number', message: '金额必须为数字值'}
                    ]
                },
                payTypes: [
                    {
                        value: '0',
                        label: '水费'
                    }, {
                        value: '1',
                        label: '电费'
                    }],
                payFessTypes:[
                    {
                        value: '0',
                        label: '微  信'
                    }, {
                        value: '1',
                        label: '支付宝'
                    }],
                labelPosition:'left',
                Edistatus:'',
                shuibiao:'',
                dianbiao:''
            }
        },
        methods:{

            getdefaultData(){

                if(this.$route.params.Edistatus=='create'){
                    this.OrderForm.payUserId=loginUserInfo.userId;
                    this.OrderForm.payUserName=loginUserInfo.username;
                    this.OrderForm.payLocationId=this.$route.params.row.id;
                    this.OrderForm.payLocationName=this.$route.params.row.adrname;
                    this.Edistatus=this.$route.params.Edistatus;
                    this.shuibiao='1111111';
                    this.dianbiao='222222';

                }else{
                    this.Edistatus='update';
                    this.OrderForm.payType='0'
                    this.OrderForm.payTypeAddress='333333';
                }
            },
            selectTrigger(val){
                if(val=='0'){
                    this.OrderForm.payTypeAddress=this.shuibiao
                }else{
                    this.OrderForm.payTypeAddress=this.dianbiao;
                }
            },
            createData(formName){
                this.$refs[formName].validate((valid) => {
                    if (valid) {
                        alert("新增充值"+this.OrderForm.payType+"支付方式为:"+this.OrderForm.payFessType+"充值金额:"+this.OrderForm.payFees);
                    } else {
                        console.log('error submit!!');
                return false;
            }
            });
            },
            updateData(formName){
                this.$refs[formName].validate((valid) => {
                    if (valid) {
                        alert("完成充值"+this.OrderForm.payType+"支付方式为:"+this.OrderForm.payFessType+"充值金额:"+this.OrderForm.payFees);
                    } else {
                        console.log('error submit!!');
                return false;
            }
            });
            }
        },
        mounted(){
            this.getdefaultData();
        }
    }
</script>