开票优化
This commit is contained in:
parent
d704253591
commit
161caeeabe
|
|
@ -18,7 +18,29 @@ export function tbPrintMachine(data, method = "post") {
|
|||
// 开票
|
||||
export function getbinding(data) {
|
||||
return request({
|
||||
url: "/api/tbShopInfo/binding",
|
||||
url: "/api/invoice/binding",
|
||||
method: "post",
|
||||
data: {
|
||||
shopId: localStorage.getItem("shopId"),
|
||||
...data
|
||||
}
|
||||
});
|
||||
}
|
||||
// 获取数电发票类型
|
||||
export function getdigitalInvoice(data) {
|
||||
return request({
|
||||
url: "/api/invoice/digitalInvoice",
|
||||
method: "post",
|
||||
data: {
|
||||
shopId: localStorage.getItem("shopId"),
|
||||
...data
|
||||
}
|
||||
});
|
||||
}
|
||||
// 获取项目分类
|
||||
export function getindustry(data) {
|
||||
return request({
|
||||
url: "/api/invoice/industry",
|
||||
method: "post",
|
||||
data: {
|
||||
shopId: localStorage.getItem("shopId"),
|
||||
|
|
|
|||
|
|
@ -2,15 +2,6 @@
|
|||
<div class="app-container">
|
||||
<div class="title">应用中心</div>
|
||||
<div class="list">
|
||||
<div class="item" @click="upPop">
|
||||
<img src="./kp.png" class="icon">
|
||||
<div class="info">
|
||||
<div class="name">开票</div>
|
||||
<div class="intro">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item" v-for="item in list" :key="item.id" @click="to(item)">
|
||||
<img :src="item.coverImg" class="icon">
|
||||
<div class="info">
|
||||
|
|
@ -22,28 +13,35 @@
|
|||
</div>
|
||||
</div>
|
||||
<!-- 弹窗 -->
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%" >
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="30%">
|
||||
<el-form :model="forms">
|
||||
<el-form-item label="账号:" label-width="60px">
|
||||
<el-form-item label="账号:" label-width="100px">
|
||||
<el-input v-model="forms.account" :disabled="title != '绑定数点票账号'" autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="密码/验证码" label-width="120px">
|
||||
<el-input v-model="forms.name" autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="开票项目:" label-width="120px">
|
||||
<el-input v-model="forms.name" autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="开票类型:" label-width="120px">
|
||||
<el-input v-model="forms.name" autocomplete="off"></el-input>
|
||||
</el-form-item> -->
|
||||
<div style="text-align: right;" v-if="title == '绑定数点票账号'">联系区域经理开通</div>
|
||||
<div style="text-align: center;" v-else @click="title = '绑定数点票账号'">更换绑定</div>
|
||||
<!-- <el-form-item label="活动区域" label-width="120px">
|
||||
<el-select v-model="form.region" placeholder="请选择活动区域">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
<el-form-item label="项目分类:" label-width="100px">
|
||||
<el-select v-model="forms.article" :disabled="title != '绑定数点票账号'" :filter-method="getindustry"
|
||||
filterable style="width: 100%;" placeholder="餐饮">
|
||||
<el-option :label="item.name" :value="item.name" v-for="(item, index) in getindustryList"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item> -->
|
||||
</el-form-item>
|
||||
<el-form-item label="数电发票:" label-width="100px">
|
||||
<el-select v-model="forms.sdType" :disabled="title != '绑定数点票账号'"
|
||||
@change="changeEvent($event, 'sdType')" style="width: 100%;" placeholder="">
|
||||
<el-option :label="item" :value="item" v-for="(item, index) in digitalInvoiceList[0]"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="税率:" label-width="100px">
|
||||
<el-select :disabled="title != '绑定数点票账号'" v-model="forms.taxAmount" style="width: 100%;"
|
||||
placeholder="">
|
||||
<el-option :label="item" :value="item" v-for="(item, index) in digitalInvoiceList[1]"
|
||||
:key="index"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<div style="text-align: right;" v-if="title == '绑定数点票账号'">联系区域经理开通</div>
|
||||
<div style="text-align: center;cursor: pointer;" v-else @click="title = '绑定数点票账号'">更换绑定</div>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer" v-if="title == '绑定数点票账号'">
|
||||
<el-button @click="dialogVisible = false">取 消</el-button>
|
||||
|
|
@ -54,37 +52,63 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import { appCenterGet, getbinding } from "@/api/application";
|
||||
import { appCenterGet, getbinding, getindustry, getdigitalInvoice } from "@/api/application";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
list: [],
|
||||
dialogVisible: false,
|
||||
forms: {},
|
||||
forms: {
|
||||
article: '餐饮',
|
||||
sdType: ""
|
||||
},
|
||||
title: '绑定数点票账号',
|
||||
|
||||
digitalInvoiceList: [],
|
||||
getindustryList: [],
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.appCenterGet()
|
||||
this.getbinding()
|
||||
this.getdigitalInvoice()
|
||||
this.getindustry()
|
||||
},
|
||||
methods: {
|
||||
changeEvent(d, names) {
|
||||
console.log(d, names, '调试1')
|
||||
console.log(this.forms, '调试2')
|
||||
this.forms[names] = d
|
||||
// this.forms.sdType = '啊可是觉得哈桑'
|
||||
},
|
||||
upPop() {
|
||||
this.dialogVisible = true
|
||||
},
|
||||
sumbitEvent() {
|
||||
if (this.forms.account) {
|
||||
this.dialogVisible = false
|
||||
this.getbinding(this.forms)
|
||||
}
|
||||
},
|
||||
// 获取数电发票类型
|
||||
async getdigitalInvoice() {
|
||||
const res = await getdigitalInvoice()
|
||||
this.digitalInvoiceList = res
|
||||
},
|
||||
// 获取项目分类
|
||||
async getindustry(d = '餐饮') {
|
||||
const res = await getindustry({ article: d })
|
||||
this.getindustryList = res.list
|
||||
},
|
||||
// 跳转
|
||||
to(item) {
|
||||
localStorage.setItem('applocation', JSON.stringify(item))
|
||||
this.$router.push({
|
||||
name: item.absUrl
|
||||
})
|
||||
if (item.absUrl) {
|
||||
|
||||
this.$router.push({
|
||||
name: item.absUrl
|
||||
})
|
||||
} else {
|
||||
this.upPop()
|
||||
}
|
||||
},
|
||||
// 获取应用列表
|
||||
async appCenterGet() {
|
||||
|
|
@ -102,7 +126,11 @@ export default {
|
|||
const res = await getbinding(d)
|
||||
if (res) {
|
||||
this.forms = res.store
|
||||
this.$set(this.forms, 'article', res.article)
|
||||
this.$set(this.forms, 'sdType', res.sdType)
|
||||
this.$set(this.forms, 'taxAmount', res.taxAmount)
|
||||
this.title = '数电票账号已绑定'
|
||||
this.dialogVisible = false
|
||||
} else {
|
||||
this.title = '绑定数点票账号'
|
||||
this.forms = {}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
<template>
|
||||
<el-dialog title="开票" :visible.sync="dialogFormVisible">
|
||||
<el-form :model="forms">
|
||||
<el-form-item label="活动名称" label-width="120px">
|
||||
<el-input v-model="forms.name" autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="活动区域" label-width="120px">
|
||||
<el-select v-model="forms.region" placeholder="请选择活动区域">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="dialogFormVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="dialogFormVisible = false">确 定</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
dialogFormVisible: false,
|
||||
forms: {}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
show() {
|
||||
this.dialogFormVisible = !this.dialogFormVisible
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
@ -150,6 +150,8 @@
|
|||
<template v-slot="scope">
|
||||
<div class="u-flex gap-10">
|
||||
<el-button type="text" @click="$refs.orderDetail.show(scope.row)">详情</el-button>
|
||||
<el-button type="text" @click="$refs.Invoicing.show(scope.row)">开票</el-button>
|
||||
|
||||
<el-button v-if="scope.row.status == 'unpaid'" type="primary" size="mini" @click="payOrder(scope.row)">结账</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
|
@ -162,6 +164,8 @@
|
|||
layout="total, sizes, prev, pager, next, jumper"></el-pagination>
|
||||
</div>
|
||||
<orderDetail ref="orderDetail" @close="getTableData" />
|
||||
<!-- 开票 -->
|
||||
<Invoicing ref="Invoicing"></Invoicing>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
|
@ -173,9 +177,10 @@ import dayjs from "dayjs";
|
|||
import { downloadFile } from "@/utils/index";
|
||||
|
||||
import orderDetail from "./components/orderDetail";
|
||||
import Invoicing from "./components/Invoicing";
|
||||
|
||||
export default {
|
||||
components: { orderDetail },
|
||||
components: { orderDetail,Invoicing },
|
||||
data() {
|
||||
return {
|
||||
orderEnum,
|
||||
|
|
|
|||
Loading…
Reference in New Issue