307 lines
7.5 KiB
Vue
307 lines
7.5 KiB
Vue
<template>
|
|
<!-- <view>填写发票信息</view> -->
|
|
<view class="container">
|
|
<view class="invoiceInfo">
|
|
<view class="invoiceList-item flex">
|
|
<view class="item-img">
|
|
<image style="width: 170rpx;height: 170rpx;border-radius: 20rpx;" src="../../static/index/about.png"
|
|
mode=""></image>
|
|
</view>
|
|
<view class="item-con">
|
|
<view class="itenCon-actName" style="">活动名</view>
|
|
<view class="itenCon-actPrice" style="">¥ 价格</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- 表单 -->
|
|
<view style="height: auto;">
|
|
<u-form :model="form" :rules="rules" ref="uForm" label-width="auto" labelPostition="left">
|
|
<view class="formBox">
|
|
<u-form-item label="发票类型" prop="username">
|
|
<view class="typeBOx">
|
|
<view class="normalInv">
|
|
<view class="typeImgs">
|
|
<image style="width: 44rpx;height: 44rpx;" src="../../static/fabu/check.png" mode=""></image>
|
|
<image style="width: 44rpx;height: 44rpx;" src="../../static/fabu/nocheck.png" mode=""></image>
|
|
</view>
|
|
<view class="typeText">普通发票</view>
|
|
</view>
|
|
<view class="specialInv"></view>
|
|
</view>
|
|
|
|
</u-form-item>
|
|
|
|
<u-form-item label="发票内容" prop="password" required>
|
|
<image style="width: 38rpx;height: 38rpx;" src="/static/tips.png" mode=""></image>
|
|
<!-- <u-input inputAlign="right" v-model="form.password" placeholder="请输入密码" border="none"/> -->
|
|
</u-form-item>
|
|
|
|
<u-form-item label="抬头类型" prop="confirmPassword" required>
|
|
<!-- name和range-key绑定的值都是抬头类型的字段-->
|
|
<picker @change="clickUpTypeShow" name="isUpType" :value="upTypelist" :range="upTypelist" range-key="isUpType">
|
|
<view class="form_right">
|
|
请选择抬头类型
|
|
<u-icon name="arrow-right"></u-icon>
|
|
</view>
|
|
</picker>
|
|
</u-form-item>
|
|
|
|
<u-form-item label="发票抬头" prop="email">
|
|
<u-input inputAlign="right" v-model="form.email" placeholder="请输入邮箱" border="none"/>
|
|
</u-form-item>
|
|
|
|
<u-form-item label="抬头名称" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="请输入抬头名称" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="单位税号" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="请输入单位税号" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="注册地址" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="必填" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="注册电话" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="必填" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="开户银行" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="必填" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="银行账号" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="必填" border="none"/>
|
|
</u-form-item>
|
|
</view>
|
|
<!-- <view style="background-color: #f5f5f5;height: 40rpx;"></view> -->
|
|
|
|
<view class="recipientInfo" >
|
|
<u-form-item label="手机号" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="请输入手机号" border="none"/>
|
|
</u-form-item>
|
|
<u-form-item label="邮箱地址" prop="age">
|
|
<u-input inputAlign="right" v-model="form.age" type="number" placeholder="请输入邮箱地址" border="none"/>
|
|
</u-form-item>
|
|
</view>
|
|
|
|
|
|
<!--<u-form-item>
|
|
<u-button type="primary" @click="submit">申请开票</u-button>
|
|
<u-button @click="reset" style="margin-left: 30rpx">重置</u-button>
|
|
</u-form-item>-->
|
|
|
|
|
|
|
|
</u-form>
|
|
|
|
<view style="width: 100%;height: 140rpx;"></view>
|
|
</view>
|
|
|
|
<!-- 提交按钮 -->
|
|
<view class="footer-btn">
|
|
<u-button color="#323232" shape="circle">申请开票</u-button>
|
|
</view>
|
|
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
data() {
|
|
return {
|
|
upTypelist:[],//抬头类型列表
|
|
id:1,
|
|
order_no:'',
|
|
form: {
|
|
username: '',
|
|
password: '',
|
|
confirmPassword: '',
|
|
email: '',
|
|
age: ''
|
|
},
|
|
rules: {
|
|
username: [{
|
|
required: true,
|
|
message: '请输入用户名',
|
|
trigger: 'blur'
|
|
},
|
|
{
|
|
min: 3,
|
|
max: 10,
|
|
message: '用户名长度在3到10个字符',
|
|
trigger: 'blur'
|
|
}
|
|
],
|
|
|
|
email: [{
|
|
type: 'email',
|
|
message: '邮箱格式不正确',
|
|
trigger: 'blur'
|
|
}],
|
|
age: [{
|
|
type: 'number',
|
|
message: '年龄必须为数字',
|
|
trigger: 'blur'
|
|
},
|
|
{
|
|
min: 18,
|
|
max: 60,
|
|
type: 'number',
|
|
message: '年龄必须在18到60岁之间',
|
|
trigger: 'blur'
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
onLoad(options) {
|
|
// this.userInfo = uni.getStorageSync("userInfo")
|
|
this.id = options.id
|
|
this.order_no = options.order_no
|
|
console.log('id:',this.id,'order_no:',this.order_no);
|
|
},
|
|
methods: {
|
|
submit() {
|
|
this.$refs.uForm.validate(valid => {
|
|
if (valid) {
|
|
uni.showToast({
|
|
title: '提交成功',
|
|
icon: 'success'
|
|
})
|
|
console.log('表单数据:', this.form)
|
|
} else {
|
|
console.log('验证失败')
|
|
}
|
|
})
|
|
},
|
|
reset() {
|
|
this.$refs.uForm.resetFields()
|
|
}
|
|
},
|
|
onReady() {
|
|
this.$refs.uForm.setRules(this.rules)
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
.form_right {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-left: auto;
|
|
color: #848484;
|
|
width: 300rpx;
|
|
padding: 0rpx 0rpx 0rpx 20rpx;
|
|
position: relative;
|
|
left:2rpx;
|
|
font-size: 26rpx;
|
|
font-weight: 400;
|
|
text-align: right;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
.typeBOx {
|
|
width: 400rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
margin-left: auto;
|
|
justify-content: center;
|
|
|
|
.normalInv {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
|
|
.typeImgs {
|
|
width: 44rpx;
|
|
height:44rpx;
|
|
}
|
|
|
|
.typeText {
|
|
font-size:30rpx;
|
|
font-weight: 400;
|
|
color: #999999;
|
|
}
|
|
|
|
.typeText2 {
|
|
font-size:30rpx;
|
|
font-weight: 400;
|
|
color: #323232;
|
|
}
|
|
}
|
|
}
|
|
|
|
.container {
|
|
padding: 40rpx 0;
|
|
background-color: #f5f5f5;
|
|
|
|
.invoiceInfo {
|
|
.invoiceList-item {
|
|
display: flex;
|
|
justify-content: left;
|
|
align-items: center;
|
|
background-color: #ffffff;
|
|
width: 100%;
|
|
// margin-top: 20rpx;
|
|
// padding: 20rpx;
|
|
height: 220rpx;
|
|
|
|
.item-img {
|
|
width: 170rpx;
|
|
height: 170rpx;
|
|
margin-left: 40rpx;
|
|
|
|
}
|
|
|
|
.item-con {
|
|
margin-left: 20rpx;
|
|
width: 60%;
|
|
height: 160rpx;
|
|
position: relative;
|
|
color: #323232;
|
|
|
|
.itenCon-actName {
|
|
position: absolute;
|
|
top: 0;
|
|
font-size: 28rpx;
|
|
font-weight: 400;
|
|
}
|
|
|
|
.itenCon-actPrice {
|
|
position: absolute;
|
|
bottom: 0;
|
|
font-size: 32rpx;
|
|
font-weight: 900;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
.formBox {
|
|
// width: 100%;
|
|
margin-top: 30rpx;
|
|
background-color: #ffffff;
|
|
padding: 10rpx 20rpx;
|
|
border-radius: 20rpx;
|
|
}
|
|
|
|
.recipientInfo {
|
|
margin-top: 30rpx;
|
|
background-color: #ffffff;
|
|
padding: 10rpx 20rpx;
|
|
border-radius: 20rpx;
|
|
}
|
|
|
|
.footer-btn {
|
|
width: 95%;
|
|
padding: 20rpx 20rpx 60rpx;
|
|
display: flex;
|
|
position: fixed;
|
|
bottom: 0;
|
|
// left: 0;
|
|
right: -2rpx;
|
|
z-index: 99;
|
|
background-color: #ffffff;
|
|
}
|
|
|
|
}
|
|
</style> |