|
@@ -12,7 +12,9 @@
|
|
<p class="title">开票金额:</p>
|
|
<p class="title">开票金额:</p>
|
|
<p class="value">{{ infoMap.price }}元</p>
|
|
<p class="value">{{ infoMap.price }}元</p>
|
|
</div>
|
|
</div>
|
|
- <div class="rightBtn" @click="tipShow = true">开票规则</div>
|
|
|
|
|
|
+ <div class="rightBtn" @click="tipShow = true" v-if="!$envs.inApp">
|
|
|
|
+ 开票规则
|
|
|
|
+ </div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="j-body">
|
|
<div class="j-body">
|
|
@@ -29,6 +31,9 @@
|
|
v-model.trim="infoMap.content"
|
|
v-model.trim="infoMap.content"
|
|
label="发票内容"
|
|
label="发票内容"
|
|
readonly
|
|
readonly
|
|
|
|
+ @click="chooseContent"
|
|
|
|
+ right-icon="arrow"
|
|
|
|
+ right-icon-size="14"
|
|
></van-field>
|
|
></van-field>
|
|
<div class="item-box-type">
|
|
<div class="item-box-type">
|
|
<div class="item-box-title redstar">发票抬头</div>
|
|
<div class="item-box-title redstar">发票抬头</div>
|
|
@@ -135,18 +140,31 @@
|
|
rows="1"
|
|
rows="1"
|
|
autosize
|
|
autosize
|
|
></van-field>
|
|
></van-field>
|
|
-
|
|
|
|
|
|
+ </div>
|
|
|
|
+ <div
|
|
|
|
+ class="j-content-nocolor"
|
|
|
|
+ v-show="!showDesc"
|
|
|
|
+ @click="showDesc = !showDesc"
|
|
|
|
+ >
|
|
|
|
+ <div class="showMore">
|
|
|
|
+ <div class="line" style="margin-right: 12px"></div>
|
|
|
|
+ <span class="showMore-text">开票备注</span>
|
|
|
|
+ <div class="ic-drop"></div>
|
|
|
|
+ <div class="line" style="margin-left: 8px"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="j-content" v-show="showDesc">
|
|
<van-field
|
|
<van-field
|
|
v-model.trim="infoMap.desc"
|
|
v-model.trim="infoMap.desc"
|
|
label="开票备注"
|
|
label="开票备注"
|
|
@focus="infoCheckMap.desc = ''"
|
|
@focus="infoCheckMap.desc = ''"
|
|
:required="requireds.desc"
|
|
:required="requireds.desc"
|
|
:errorMessage="infoCheckMap.desc"
|
|
:errorMessage="infoCheckMap.desc"
|
|
- placeholder="请输入开票备注"
|
|
|
|
|
|
+ placeholder="此部分内容会展示在发票“备注”上,请按照贵司财务要求进行填写"
|
|
v-if="showModule.desc"
|
|
v-if="showModule.desc"
|
|
maxlength="200"
|
|
maxlength="200"
|
|
type="textarea"
|
|
type="textarea"
|
|
- rows="1"
|
|
|
|
|
|
+ rows="3"
|
|
autosize
|
|
autosize
|
|
></van-field>
|
|
></van-field>
|
|
</div>
|
|
</div>
|
|
@@ -218,29 +236,44 @@
|
|
</div>
|
|
</div>
|
|
<popupTip
|
|
<popupTip
|
|
v-model="tipShow"
|
|
v-model="tipShow"
|
|
- text="开票规则:<br>1.平台提供电子普通发票、电子专用发票、纸质普通发票、纸质专用发票,开票内容统一为“信息技术服务-技术服务费”。<br>2.您申请的电子发票将在3个工作日内由平台开具并发送至您的邮箱,请注意查收;您申请的纸质发票将在25个工作日内由平台开具并邮寄给您,请注意查收,开票金额<200元发票邮寄费用自行承担;<br>3.如有问题可联系客服,客服电话:400-108-6670。"
|
|
|
|
|
|
+ text="开票规则:<br>1.平台提供电子普通发票、电子专用发票,发票内容为可选“信息技术服务-技术服务费”、“信息技术服务-会员费”、“信息技术服务-招投标数据服务”;<br>2.您申请的电子发票将在3个工作日内由平台开具并发送至您的邮箱,请注意查收;<br>3.电子发票共有3种格式:PDF、OFD、XML,手机端查看发票默认为PDF格式,如需OFD、XML格式,您可前往邮箱或剑鱼标讯电脑端查看发票并下载;4.如有问题可联系客服,客服电话:400-108-6670。"
|
|
>
|
|
>
|
|
</popupTip>
|
|
</popupTip>
|
|
|
|
+ <PopupSelect
|
|
|
|
+ :selectList="selectList"
|
|
|
|
+ ref="PopupSelect"
|
|
|
|
+ popTitle="发票内容"
|
|
|
|
+ @changeHandle="changeHandle"
|
|
|
|
+ @confirmHandle="confirmHandle"
|
|
|
|
+ ></PopupSelect>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
<script>
|
|
<script>
|
|
|
|
+import EventBus from '@/utils/eventBus'
|
|
import {
|
|
import {
|
|
ajaxGetCompanyAssociation,
|
|
ajaxGetCompanyAssociation,
|
|
ajaxInvoiceSubmit,
|
|
ajaxInvoiceSubmit,
|
|
- ajaxInvoiceQuery
|
|
|
|
|
|
+ ajaxInvoiceQuery,
|
|
|
|
+ ajaxInvoiceNewshow,
|
|
|
|
+ ajaxInvoiceSwitch,
|
|
|
|
+ ajaxInvoiceAavailable,
|
|
|
|
+ ajaxInvoiceNewReplace
|
|
} from '@/api/modules'
|
|
} from '@/api/modules'
|
|
import { replaceKeyword } from '@/utils/utils'
|
|
import { replaceKeyword } from '@/utils/utils'
|
|
import { Field, Icon, Button } from 'vant'
|
|
import { Field, Icon, Button } from 'vant'
|
|
import popupTip from '@/components/invoice/popupTip'
|
|
import popupTip from '@/components/invoice/popupTip'
|
|
import radioGroup from '@/components/invoice/radioGroup'
|
|
import radioGroup from '@/components/invoice/radioGroup'
|
|
|
|
+import PopupSelect from '@/components/invoice/PopupSelect'
|
|
export default {
|
|
export default {
|
|
|
|
+ // eslint-disable-next-line vue/multi-word-component-names
|
|
name: 'Invoicing',
|
|
name: 'Invoicing',
|
|
components: {
|
|
components: {
|
|
[Field.name]: Field,
|
|
[Field.name]: Field,
|
|
[Icon.name]: Icon,
|
|
[Icon.name]: Icon,
|
|
[Button.name]: Button,
|
|
[Button.name]: Button,
|
|
popupTip,
|
|
popupTip,
|
|
- radioGroup
|
|
|
|
|
|
+ radioGroup,
|
|
|
|
+ PopupSelect
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
@@ -254,6 +287,11 @@ export default {
|
|
{ text: '个人', value: '1' },
|
|
{ text: '个人', value: '1' },
|
|
{ text: '单位', value: '2' }
|
|
{ text: '单位', value: '2' }
|
|
],
|
|
],
|
|
|
|
+ selectList: [
|
|
|
|
+ { title: '技术服务费', checked: true },
|
|
|
|
+ { title: '会员费', checked: false },
|
|
|
|
+ { title: '招投标数据服务', checked: false }
|
|
|
|
+ ],
|
|
searchList: [],
|
|
searchList: [],
|
|
isAssociateShow: false,
|
|
isAssociateShow: false,
|
|
isAssociateUpTime: -1,
|
|
isAssociateUpTime: -1,
|
|
@@ -317,7 +355,12 @@ export default {
|
|
},
|
|
},
|
|
onlyIdentifying: '',
|
|
onlyIdentifying: '',
|
|
invoiceMoney: '',
|
|
invoiceMoney: '',
|
|
- operator: ''
|
|
|
|
|
|
+ operator: '',
|
|
|
|
+ order_code: '',
|
|
|
|
+ type: '',
|
|
|
|
+ urlparms: {},
|
|
|
|
+ invoiceId: '',
|
|
|
|
+ showDesc: false
|
|
}
|
|
}
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
@@ -348,6 +391,8 @@ export default {
|
|
this.infoMap.price < 200
|
|
this.infoMap.price < 200
|
|
) {
|
|
) {
|
|
return '您申请的发票将在25个工作日由平台开具并邮寄给您,请注意查收,另开票金额<200元,发票邮寄费用需您自行承担。'
|
|
return '您申请的发票将在25个工作日由平台开具并邮寄给您,请注意查收,另开票金额<200元,发票邮寄费用需您自行承担。'
|
|
|
|
+ } else {
|
|
|
|
+ return ''
|
|
}
|
|
}
|
|
},
|
|
},
|
|
checkName() {
|
|
checkName() {
|
|
@@ -389,52 +434,236 @@ export default {
|
|
return false
|
|
return false
|
|
}
|
|
}
|
|
return RegExp.test(this.infoMap.bankCode)
|
|
return RegExp.test(this.infoMap.bankCode)
|
|
|
|
+ },
|
|
|
|
+ enterSource() {
|
|
|
|
+ if (this.operator && this.invoiceMoney && this.onlyIdentifying) {
|
|
|
|
+ return 'qrcode'
|
|
|
|
+ } else {
|
|
|
|
+ if (this.order_code) {
|
|
|
|
+ return 'myorder'
|
|
|
|
+ } else {
|
|
|
|
+ return ''
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
this.initData()
|
|
this.initData()
|
|
},
|
|
},
|
|
- mounted() {},
|
|
|
|
|
|
+ mounted() {
|
|
|
|
+ if (this.$envs.inApp) {
|
|
|
|
+ EventBus.$emit('headerConf:merge', {
|
|
|
|
+ actionRightText: '开票规则',
|
|
|
|
+ actionRightStyle: {
|
|
|
|
+ color: '#171826'
|
|
|
|
+ },
|
|
|
|
+ onClickRight: () => {
|
|
|
|
+ this.tipShow = true
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ },
|
|
methods: {
|
|
methods: {
|
|
- initData() {
|
|
|
|
- let { onlyIdentifying, invoiceMoney, operator } = this.$route.query
|
|
|
|
|
|
+ async initData() {
|
|
|
|
+ let {
|
|
|
|
+ onlyIdentifying,
|
|
|
|
+ invoiceMoney,
|
|
|
|
+ operator,
|
|
|
|
+ order_code,
|
|
|
|
+ type,
|
|
|
|
+ invoiceId
|
|
|
|
+ } = this.$route.query
|
|
this.onlyIdentifying = onlyIdentifying ? onlyIdentifying : ''
|
|
this.onlyIdentifying = onlyIdentifying ? onlyIdentifying : ''
|
|
this.invoiceMoney = invoiceMoney ? invoiceMoney : ''
|
|
this.invoiceMoney = invoiceMoney ? invoiceMoney : ''
|
|
this.operator = operator ? operator : ''
|
|
this.operator = operator ? operator : ''
|
|
- const loading = this.$toast.loading({
|
|
|
|
- duration: 0,
|
|
|
|
- message: 'loading...'
|
|
|
|
- })
|
|
|
|
- ajaxInvoiceQuery({
|
|
|
|
- onlyIdentifying: this.onlyIdentifying,
|
|
|
|
- invoiceMoney: this.invoiceMoney,
|
|
|
|
- operator: this.operator
|
|
|
|
- }).then((res) => {
|
|
|
|
|
|
+ this.order_code = order_code ? order_code : ''
|
|
|
|
+ this.type = type ? type : ''
|
|
|
|
+ this.invoiceId = invoiceId ? invoiceId : ''
|
|
|
|
+ if (this.enterSource === 'qrcode') {
|
|
|
|
+ this.urlparms = {
|
|
|
|
+ onlyIdentifying: this.onlyIdentifying,
|
|
|
|
+ invoiceMoney: this.invoiceMoney,
|
|
|
|
+ operator: this.operator
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ this.urlparms = {
|
|
|
|
+ order_code: this.order_code
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (this.enterSource === 'qrcode') {
|
|
|
|
+ const loading = this.$toast.loading({
|
|
|
|
+ duration: 0,
|
|
|
|
+ message: 'loading...'
|
|
|
|
+ })
|
|
|
|
+ const res = await ajaxInvoiceQuery({
|
|
|
|
+ ...this.urlparms
|
|
|
|
+ })
|
|
loading.clear()
|
|
loading.clear()
|
|
if (res.data) {
|
|
if (res.data) {
|
|
this.infoMap.code = res.data.orderCodes ? res.data.orderCodes : ''
|
|
this.infoMap.code = res.data.orderCodes ? res.data.orderCodes : ''
|
|
this.infoMap.price = res.data.money ? res.data.money / 100 : 0
|
|
this.infoMap.price = res.data.money ? res.data.money / 100 : 0
|
|
this.initEnt(res.data.company_name)
|
|
this.initEnt(res.data.company_name)
|
|
- if (res.data.invoice) {
|
|
|
|
|
|
+ if (
|
|
|
|
+ res.data.invoice &&
|
|
|
|
+ this.type !== 'again' &&
|
|
|
|
+ this.type !== 'Replace'
|
|
|
|
+ ) {
|
|
|
|
+ // 有发票信息开过票且不是换开也不是重开
|
|
this.$router.replace({
|
|
this.$router.replace({
|
|
path: '/invoice/viewInvoice',
|
|
path: '/invoice/viewInvoice',
|
|
query: {
|
|
query: {
|
|
- onlyIdentifying: this.onlyIdentifying,
|
|
|
|
- invoiceMoney: this.invoiceMoney,
|
|
|
|
- operator: this.operator
|
|
|
|
|
|
+ ...this.urlparms
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}
|
|
}
|
|
|
|
+ if (
|
|
|
|
+ res.data.invoice &&
|
|
|
|
+ (this.type === 'again' || this.type === 'Replace')
|
|
|
|
+ ) {
|
|
|
|
+ // 换开或重开信息回显
|
|
|
|
+ this.infoMap.type = this.DigitstoChinese_type(
|
|
|
|
+ res.data.invoice.invoice_variety
|
|
|
|
+ )
|
|
|
|
+ this.infoMap.content = res.data.invoice.invoice_content
|
|
|
|
+ this.selectList.forEach((item) => {
|
|
|
|
+ if (this.infoMap.content.includes(item.title)) {
|
|
|
|
+ item.checked = true
|
|
|
|
+ } else {
|
|
|
|
+ item.checked = false
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.infoMap.invoiceHeader = this.DigitstoChinese_invoiceHeader(
|
|
|
|
+ res.data.invoice.invoice_type
|
|
|
|
+ )
|
|
|
|
+ this.infoMap.company = res.data.invoice.company_name || ''
|
|
|
|
+ this.infoMap.dutyparagraph =
|
|
|
|
+ res.data.invoice.taxpayer_identnum || ''
|
|
|
|
+ this.infoMap.unitAddress = res.data.invoice.company_address || ''
|
|
|
|
+ this.infoMap.tel = res.data.invoice.company_phone || ''
|
|
|
|
+ this.infoMap.bank = res.data.invoice.bank_name || ''
|
|
|
|
+ this.infoMap.bankCode = res.data.invoice.bank_account || ''
|
|
|
|
+ this.infoMap.desc = res.data.invoice.remark || ''
|
|
|
|
+ this.infoMap.name = res.data.invoice.recipient || ''
|
|
|
|
+ this.infoMap.phone = res.data.invoice.phone || ''
|
|
|
|
+ this.infoMap.email = res.data.invoice.mail || ''
|
|
|
|
+ this.infoMap.deliveryAddress =
|
|
|
|
+ res.data.invoice.delivery_address || ''
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ // 我的订单开票
|
|
|
|
+ const { code, messge } = await ajaxInvoiceSwitch()
|
|
|
|
+ if (code === '1001') {
|
|
|
|
+ // 发票开关
|
|
|
|
+ this.$dialog
|
|
|
|
+ .confirm({
|
|
|
|
+ title: '温馨提醒',
|
|
|
|
+ message: messge,
|
|
|
|
+ className: 'j-confirm-dialog',
|
|
|
|
+ messageAlign: 'left',
|
|
|
|
+ showCancelButton: false,
|
|
|
|
+ confirmButtonText: '我知道了'
|
|
|
|
+ })
|
|
|
|
+ .then(() => {
|
|
|
|
+ history.back()
|
|
|
|
+ })
|
|
|
|
+ return
|
|
|
|
+ }
|
|
|
|
+ const loading = this.$toast.loading({
|
|
|
|
+ duration: 0,
|
|
|
|
+ message: 'loading...'
|
|
|
|
+ })
|
|
|
|
+ const { status } = await ajaxInvoiceAavailable({
|
|
|
|
+ order_code: this.order_code
|
|
|
|
+ })
|
|
|
|
+ if (status === 0) {
|
|
|
|
+ // 不支持开票
|
|
|
|
+ if (this.$envs.inWX) {
|
|
|
|
+ window.location.replace('/front/invoice/cantInvoice?f=upgrade')
|
|
|
|
+ } else {
|
|
|
|
+ window.location.replace('/jyapp/front/cantInvoice?f=upgrade')
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ this.infoMap.code = this.order_code
|
|
|
|
+ const res = await ajaxInvoiceNewshow({
|
|
|
|
+ stype: 1,
|
|
|
|
+ code: this.order_code
|
|
|
|
+ })
|
|
|
|
+ let data = res.data
|
|
|
|
+ this.infoMap.price = data.pay_money ? data.pay_money / 100 : 0
|
|
|
|
+ if (this.type === 'again' || this.type === 'Replace') {
|
|
|
|
+ const resdata = await ajaxInvoiceNewshow({
|
|
|
|
+ stype: 2,
|
|
|
|
+ code: this.invoiceId
|
|
|
|
+ })
|
|
|
|
+ let data = resdata.data.invoice
|
|
|
|
+ if (this.type === 'Replace') {
|
|
|
|
+ this.infoMap.price = data.invoice_money
|
|
|
|
+ ? data.invoice_money / 100
|
|
|
|
+ : 0
|
|
|
|
+ this.infoMap.code = data.order_code
|
|
|
|
+ }
|
|
|
|
+ this.infoMap.type = this.DigitstoChinese_type(data.invoice_variety)
|
|
|
|
+ this.infoMap.content = data.invoice_content
|
|
|
|
+ this.onlyIdentifying = data.only_Identifying
|
|
|
|
+ this.selectList.forEach((item) => {
|
|
|
|
+ if (this.infoMap.content.includes(item.title)) {
|
|
|
|
+ item.checked = true
|
|
|
|
+ } else {
|
|
|
|
+ item.checked = false
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ this.infoMap.invoiceHeader = this.DigitstoChinese_invoiceHeader(
|
|
|
|
+ data.invoice_type
|
|
|
|
+ )
|
|
|
|
+ this.infoMap.company = data.company_name || ''
|
|
|
|
+ this.infoMap.dutyparagraph = data.taxpayer_identnum || ''
|
|
|
|
+ this.infoMap.unitAddress = data.company_address || ''
|
|
|
|
+ this.infoMap.tel = data.company_phone || ''
|
|
|
|
+ this.infoMap.bank = data.bank_name || ''
|
|
|
|
+ this.infoMap.bankCode = data.bank_account || ''
|
|
|
|
+ this.infoMap.desc = data.remark || ''
|
|
|
|
+ this.infoMap.name = data.recipient || ''
|
|
|
|
+ this.infoMap.phone = data.phone || ''
|
|
|
|
+ this.infoMap.email = data.mail || ''
|
|
|
|
+ this.infoMap.deliveryAddress = data.delivery_address || ''
|
|
|
|
+ }
|
|
|
|
+ loading.clear()
|
|
|
|
+ }
|
|
|
|
+ this.initshowModule()
|
|
|
|
+
|
|
|
|
+ if (this.type === 'again' || this.type === 'Replace') {
|
|
|
|
+ // 换开和重开有回显 防止回显数据有误初始校验一次
|
|
|
|
+ for (const key in this.infoCheckMap) {
|
|
|
|
+ this.getCheckMap(key)
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if (this.infoMap.desc) {
|
|
|
|
+ // 备注初始是否填写
|
|
|
|
+ this.showDesc = true
|
|
|
|
+ } else {
|
|
|
|
+ this.showDesc = false
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ chooseContent() {
|
|
|
|
+ this.$refs.PopupSelect.visibleHandle(true)
|
|
|
|
+ },
|
|
|
|
+ changeHandle(item) {
|
|
|
|
+ this.selectList.forEach((ele) => {
|
|
|
|
+ if (ele.title == item.title) {
|
|
|
|
+ ele.checked = true
|
|
|
|
+ } else {
|
|
|
|
+ ele.checked = false
|
|
}
|
|
}
|
|
- this.initshowModule()
|
|
|
|
})
|
|
})
|
|
|
|
+ this.infoMap.content = '信息技术服务-' + item.title
|
|
|
|
+ },
|
|
|
|
+ confirmHandle() {
|
|
|
|
+ this.$refs.PopupSelect.visibleHandle(false)
|
|
},
|
|
},
|
|
confirm_ok() {
|
|
confirm_ok() {
|
|
const loading = this.$toast.loading({ duration: 0, message: '提交中...' })
|
|
const loading = this.$toast.loading({ duration: 0, message: '提交中...' })
|
|
let parms = {
|
|
let parms = {
|
|
- onlyIdentifying: this.onlyIdentifying,
|
|
|
|
- invoiceMoney: this.invoiceMoney,
|
|
|
|
- operator: this.operator,
|
|
|
|
company_name: this.showModule.company ? this.infoMap.company : '',
|
|
company_name: this.showModule.company ? this.infoMap.company : '',
|
|
phone: this.showModule.phone ? this.infoMap.phone : '',
|
|
phone: this.showModule.phone ? this.infoMap.phone : '',
|
|
mail: this.showModule.email ? this.infoMap.email : '',
|
|
mail: this.showModule.email ? this.infoMap.email : '',
|
|
@@ -453,24 +682,44 @@ export default {
|
|
delivery_address: this.showModule.deliveryAddress
|
|
delivery_address: this.showModule.deliveryAddress
|
|
? this.infoMap.deliveryAddress
|
|
? this.infoMap.deliveryAddress
|
|
: '',
|
|
: '',
|
|
- company_phone: this.showModule.tel ? this.infoMap.tel : ''
|
|
|
|
|
|
+ company_phone: this.showModule.tel ? this.infoMap.tel : '',
|
|
|
|
+ invoiceContent: this.infoMap.content,
|
|
|
|
+ again: this.type === 'again' ? 1 : 0,
|
|
|
|
+ oldOnlyIdentifying: this.type === 'again' ? this.onlyIdentifying : '',
|
|
|
|
+ source: this.enterSource === 'qrcode' ? 1 : 0,
|
|
|
|
+ ...this.urlparms
|
|
|
|
+ }
|
|
|
|
+ if (this.type !== 'Replace') {
|
|
|
|
+ ajaxInvoiceSubmit(parms).then((res) => {
|
|
|
|
+ loading.clear()
|
|
|
|
+ if (res.error_code === 0) {
|
|
|
|
+ this.$toast('提交成功!')
|
|
|
|
+ this.$router.replace({
|
|
|
|
+ path: '/invoice/viewInvoice',
|
|
|
|
+ query: {
|
|
|
|
+ ...this.urlparms
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ this.$toast(res.error_msg)
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ parms.sid = this.invoiceId
|
|
|
|
+ ajaxInvoiceNewReplace(parms).then((res) => {
|
|
|
|
+ if (res.invoice_status !== -1) {
|
|
|
|
+ this.$toast('提交成功!')
|
|
|
|
+ this.$router.replace({
|
|
|
|
+ path: '/invoice/viewInvoice',
|
|
|
|
+ query: {
|
|
|
|
+ ...this.urlparms
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ } else {
|
|
|
|
+ this.$toast('提交失败')
|
|
|
|
+ }
|
|
|
|
+ })
|
|
}
|
|
}
|
|
- ajaxInvoiceSubmit(parms).then((res) => {
|
|
|
|
- loading.clear()
|
|
|
|
- if (res.error_code === 0) {
|
|
|
|
- this.$toast('提交成功!')
|
|
|
|
- this.$router.replace({
|
|
|
|
- path: '/invoice/viewInvoice',
|
|
|
|
- query: {
|
|
|
|
- onlyIdentifying: this.onlyIdentifying,
|
|
|
|
- invoiceMoney: this.invoiceMoney,
|
|
|
|
- operator: this.operator
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- } else {
|
|
|
|
- this.$toast(res.error_msg)
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
},
|
|
},
|
|
getCheckMap(type) {
|
|
getCheckMap(type) {
|
|
switch (type) {
|
|
switch (type) {
|
|
@@ -492,7 +741,7 @@ export default {
|
|
this.infoCheckMap.tel === '' &&
|
|
this.infoCheckMap.tel === '' &&
|
|
!this.checkPhone(this.infoMap.tel)
|
|
!this.checkPhone(this.infoMap.tel)
|
|
) {
|
|
) {
|
|
- this.infoCheckMap.tel = '联系电话格式不正确'
|
|
|
|
|
|
+ this.infoCheckMap.tel = '电话号码格式不正确'
|
|
}
|
|
}
|
|
break
|
|
break
|
|
}
|
|
}
|
|
@@ -584,7 +833,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'tel': {
|
|
case 'tel': {
|
|
if (this.showModule.tel) {
|
|
if (this.showModule.tel) {
|
|
@@ -605,7 +853,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'phone': {
|
|
case 'phone': {
|
|
if (
|
|
if (
|
|
@@ -616,7 +863,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'email': {
|
|
case 'email': {
|
|
if (
|
|
if (
|
|
@@ -627,7 +873,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'company': {
|
|
case 'company': {
|
|
if (
|
|
if (
|
|
@@ -649,7 +894,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'dutyparagraph': {
|
|
case 'dutyparagraph': {
|
|
if (
|
|
if (
|
|
@@ -660,7 +904,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'bankCode': {
|
|
case 'bankCode': {
|
|
if (this.showModule.bankCode) {
|
|
if (this.showModule.bankCode) {
|
|
@@ -681,7 +924,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'bank': {
|
|
case 'bank': {
|
|
if (
|
|
if (
|
|
@@ -693,7 +935,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'unitAddress': {
|
|
case 'unitAddress': {
|
|
if (
|
|
if (
|
|
@@ -705,7 +946,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
case 'deliveryAddress': {
|
|
case 'deliveryAddress': {
|
|
if (
|
|
if (
|
|
@@ -717,7 +957,6 @@ export default {
|
|
} else {
|
|
} else {
|
|
return true
|
|
return true
|
|
}
|
|
}
|
|
- break
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -821,7 +1060,8 @@ export default {
|
|
if (this.infoMap.type !== '1') {
|
|
if (this.infoMap.type !== '1') {
|
|
this.showModule.desc = true
|
|
this.showModule.desc = true
|
|
} else {
|
|
} else {
|
|
- this.showModule.desc = false
|
|
|
|
|
|
+ // 537 改为电子普通发票、电子专用发票都展示“开票备注”;
|
|
|
|
+ this.showModule.desc = true
|
|
}
|
|
}
|
|
if (this.infoMap.type === '3' || this.infoMap.type === '4') {
|
|
if (this.infoMap.type === '3' || this.infoMap.type === '4') {
|
|
this.showModule.name = true
|
|
this.showModule.name = true
|
|
@@ -874,6 +1114,24 @@ export default {
|
|
return '纸质专用发票'
|
|
return '纸质专用发票'
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
+ DigitstoChinese_invoiceHeader(val) {
|
|
|
|
+ if (val === '个人') {
|
|
|
|
+ return '1'
|
|
|
|
+ } else if (val === '单位') {
|
|
|
|
+ return '2'
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ DigitstoChinese_type(val) {
|
|
|
|
+ if (val === '电子普通发票') {
|
|
|
|
+ return '1'
|
|
|
|
+ } else if (val === '电子专用发票') {
|
|
|
|
+ return '2'
|
|
|
|
+ } else if (val === '纸质普通发票') {
|
|
|
|
+ return '3'
|
|
|
|
+ } else if (val === '纸质专用发票') {
|
|
|
|
+ return '4'
|
|
|
|
+ }
|
|
|
|
+ },
|
|
checkPhone(val) {
|
|
checkPhone(val) {
|
|
return (
|
|
return (
|
|
/^1[3-9]\d{9}$/.test(val) ||
|
|
/^1[3-9]\d{9}$/.test(val) ||
|
|
@@ -895,8 +1153,10 @@ export default {
|
|
.Invoicing {
|
|
.Invoicing {
|
|
background: #f5f6f7;
|
|
background: #f5f6f7;
|
|
}
|
|
}
|
|
|
|
+
|
|
.redstar {
|
|
.redstar {
|
|
}
|
|
}
|
|
|
|
+
|
|
.redstar::after {
|
|
.redstar::after {
|
|
// position: absolute;
|
|
// position: absolute;
|
|
left: 0;
|
|
left: 0;
|
|
@@ -905,17 +1165,21 @@ export default {
|
|
content: '*';
|
|
content: '*';
|
|
margin-left: 2px;
|
|
margin-left: 2px;
|
|
}
|
|
}
|
|
|
|
+
|
|
.header {
|
|
.header {
|
|
padding: 16px 12px 14px 24px;
|
|
padding: 16px 12px 14px 24px;
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
|
|
+
|
|
.item {
|
|
.item {
|
|
min-height: 20px;
|
|
min-height: 20px;
|
|
display: flex;
|
|
display: flex;
|
|
align-items: center;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
justify-content: space-between;
|
|
|
|
+
|
|
.text_box {
|
|
.text_box {
|
|
display: flex;
|
|
display: flex;
|
|
}
|
|
}
|
|
|
|
+
|
|
.title {
|
|
.title {
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
font-weight: 400;
|
|
@@ -923,6 +1187,7 @@ export default {
|
|
letter-spacing: 0em;
|
|
letter-spacing: 0em;
|
|
color: #9b9ca3;
|
|
color: #9b9ca3;
|
|
}
|
|
}
|
|
|
|
+
|
|
.value {
|
|
.value {
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
font-weight: 400;
|
|
@@ -932,6 +1197,7 @@ export default {
|
|
word-wrap: break-word;
|
|
word-wrap: break-word;
|
|
max-width: 215px;
|
|
max-width: 215px;
|
|
}
|
|
}
|
|
|
|
+
|
|
.rightBtn {
|
|
.rightBtn {
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
font-weight: 400;
|
|
font-weight: 400;
|
|
@@ -940,6 +1206,7 @@ export default {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
.j-body {
|
|
.j-body {
|
|
flex: 1;
|
|
flex: 1;
|
|
overflow-y: scroll;
|
|
overflow-y: scroll;
|
|
@@ -989,18 +1256,44 @@ export default {
|
|
opacity: 0.5;
|
|
opacity: 0.5;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
.mt-10 {
|
|
.mt-10 {
|
|
margin-top: 10px;
|
|
margin-top: 10px;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+.j-content-nocolor {
|
|
|
|
+ margin-top: 12px;
|
|
|
|
+ border-radius: 8px;
|
|
|
|
+
|
|
|
|
+ .showMore {
|
|
|
|
+ display: flex;
|
|
|
|
+ align-items: center;
|
|
|
|
+ justify-content: center;
|
|
|
|
+
|
|
|
|
+ .line {
|
|
|
|
+ width: 80px;
|
|
|
|
+ border-top: 1px solid #00000014;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .showMore-text {
|
|
|
|
+ font-size: 15px;
|
|
|
|
+ color: #5f5e64;
|
|
|
|
+ line-height: 22px;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
.j-content {
|
|
.j-content {
|
|
background-color: #fff;
|
|
background-color: #fff;
|
|
margin-top: 12px;
|
|
margin-top: 12px;
|
|
border-radius: 8px;
|
|
border-radius: 8px;
|
|
|
|
+
|
|
.item-box-type {
|
|
.item-box-type {
|
|
display: flex;
|
|
display: flex;
|
|
padding: 16px 0 2px 16px;
|
|
padding: 16px 0 2px 16px;
|
|
position: relative;
|
|
position: relative;
|
|
}
|
|
}
|
|
|
|
+
|
|
.item-box-type::after {
|
|
.item-box-type::after {
|
|
position: absolute;
|
|
position: absolute;
|
|
box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
@@ -1013,9 +1306,11 @@ export default {
|
|
-webkit-transform: scaleY(0.5);
|
|
-webkit-transform: scaleY(0.5);
|
|
transform: scaleY(0.5);
|
|
transform: scaleY(0.5);
|
|
}
|
|
}
|
|
|
|
+
|
|
.companybox {
|
|
.companybox {
|
|
position: relative;
|
|
position: relative;
|
|
}
|
|
}
|
|
|
|
+
|
|
.companybox::after {
|
|
.companybox::after {
|
|
position: absolute;
|
|
position: absolute;
|
|
box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
@@ -1028,6 +1323,7 @@ export default {
|
|
-webkit-transform: scaleY(0.5);
|
|
-webkit-transform: scaleY(0.5);
|
|
transform: scaleY(0.5);
|
|
transform: scaleY(0.5);
|
|
}
|
|
}
|
|
|
|
+
|
|
.item-box-title {
|
|
.item-box-title {
|
|
font-family: PingFang SC;
|
|
font-family: PingFang SC;
|
|
font-size: 15px;
|
|
font-size: 15px;
|
|
@@ -1043,10 +1339,12 @@ export default {
|
|
padding: 15px 16px;
|
|
padding: 15px 16px;
|
|
background-color: #fff0;
|
|
background-color: #fff0;
|
|
}
|
|
}
|
|
|
|
+
|
|
.van-cell::after {
|
|
.van-cell::after {
|
|
right: 0;
|
|
right: 0;
|
|
border-bottom: 0.5px solid rgba(0, 0, 0, 0.1);
|
|
border-bottom: 0.5px solid rgba(0, 0, 0, 0.1);
|
|
}
|
|
}
|
|
|
|
+
|
|
::v-deep {
|
|
::v-deep {
|
|
.van-cell__title.van-field__label {
|
|
.van-cell__title.van-field__label {
|
|
font-size: 15px;
|
|
font-size: 15px;
|
|
@@ -1054,16 +1352,20 @@ export default {
|
|
width: 80px;
|
|
width: 80px;
|
|
color: #5f5e64;
|
|
color: #5f5e64;
|
|
}
|
|
}
|
|
|
|
+
|
|
.van-field__body {
|
|
.van-field__body {
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
}
|
|
}
|
|
|
|
+
|
|
.van-field__control::placeholder {
|
|
.van-field__control::placeholder {
|
|
font-weight: 400;
|
|
font-weight: 400;
|
|
color: #c0c4cc;
|
|
color: #c0c4cc;
|
|
}
|
|
}
|
|
|
|
+
|
|
.van-cell--required::before {
|
|
.van-cell--required::before {
|
|
display: none;
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
+
|
|
.van-cell--required span::after {
|
|
.van-cell--required span::after {
|
|
// position: absolute;
|
|
// position: absolute;
|
|
left: 0;
|
|
left: 0;
|
|
@@ -1072,8 +1374,13 @@ export default {
|
|
content: '*';
|
|
content: '*';
|
|
margin-left: 2px;
|
|
margin-left: 2px;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ .van-field__right-icon {
|
|
|
|
+ color: #c0c4cc;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
.associate-ent-group {
|
|
.associate-ent-group {
|
|
position: absolute;
|
|
position: absolute;
|
|
top: 36px;
|
|
top: 36px;
|
|
@@ -1087,6 +1394,7 @@ export default {
|
|
padding-left: 16px;
|
|
padding-left: 16px;
|
|
overflow-y: scroll;
|
|
overflow-y: scroll;
|
|
}
|
|
}
|
|
|
|
+
|
|
.associate-ent-group .associate-ent-item {
|
|
.associate-ent-group .associate-ent-item {
|
|
// font-family: PingFang SC;
|
|
// font-family: PingFang SC;
|
|
font-style: normal;
|
|
font-style: normal;
|
|
@@ -1098,10 +1406,20 @@ export default {
|
|
padding-left: 0;
|
|
padding-left: 0;
|
|
border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
|
|
border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
|
|
}
|
|
}
|
|
|
|
+
|
|
.associate-ent-group .associate-ent-item:last-child {
|
|
.associate-ent-group .associate-ent-item:last-child {
|
|
border-bottom-color: transparent;
|
|
border-bottom-color: transparent;
|
|
}
|
|
}
|
|
|
|
+
|
|
.highlight-text {
|
|
.highlight-text {
|
|
color: #2cb7ca !important;
|
|
color: #2cb7ca !important;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+.ic-drop {
|
|
|
|
+ width: 16px;
|
|
|
|
+ height: 16px;
|
|
|
|
+ background-size: 100% 100%;
|
|
|
|
+ background-repeat: no-repeat;
|
|
|
|
+ background-image: url('@/assets/image/icon/drop.png');
|
|
|
|
+}
|
|
</style>
|
|
</style>
|