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