Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
杨炀
/
ztx_wx_gzt
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
fa6b8d25
authored
2026-05-28 10:23:53 +0800
by
lttnew
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
按钮
1 parent
8451952d
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
47 additions
and
29 deletions
level/paymentDetail.vue
myCenter/goPay.vue
myCenter/order.vue
pages/index/daoGuanOrder.vue
pages/invoice/apply.vue
pages/invoice/applyFeisui.vue
personal/order.vue
level/paymentDetail.vue
View file @
fa6b8d2
...
...
@@ -293,6 +293,7 @@ const handleSubmit = async () => {
commitRes
=
await
api
.
payForOrder
({
id
:
orderId
.
value
,
addresId
:
selectedAddress
.
value
.
id
,
payType
:
payType
.
value
,
type
:
payType
.
value
,
contactPerson
:
formData
.
value
.
contactPerson
,
contactTel
:
formData
.
value
.
contactTel
...
...
myCenter/goPay.vue
View file @
fa6b8d2
...
...
@@ -246,13 +246,14 @@ const handelPay = async () => {
let
data
// 再次支付
if
(
payForm
.
value
.
id
&&
payForm
.
value
.
payStatus
===
'0'
)
{
const
[
err
,
res
]
=
await
to
(
api
.
payForOrder
({
id
:
payForm
.
value
.
id
,
renewYear
:
form
.
value
.
renewYear
,
type
:
payType
.
value
,
contactPerson
:
form
.
value
.
contactPerson
,
contactTel
:
form
.
value
.
contactTel
}))
const
[
err
,
res
]
=
await
to
(
api
.
payForOrder
({
id
:
payForm
.
value
.
id
,
renewYear
:
form
.
value
.
renewYear
,
payType
:
payType
.
value
,
type
:
payType
.
value
,
contactPerson
:
form
.
value
.
contactPerson
,
contactTel
:
form
.
value
.
contactTel
}))
if
(
err
||
res
.
code
!==
200
)
{
uni
.
hideLoading
()
isPaying
.
value
=
false
...
...
myCenter/order.vue
View file @
fa6b8d2
...
...
@@ -323,11 +323,11 @@ const getOrderCountText = (item) => {
const
hasInvoice
=
(
item
)
=>
String
(
item
?.
invoiceStatus
)
===
'1'
const
isPayDisabled
=
(
item
)
=>
String
(
item
?.
auditStatus
)
!==
'9'
const
isPayDisabled
=
(
item
)
=>
String
(
item
?.
auditStatus
)
!==
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
const
canShowCancel
=
(
item
)
=>
String
(
item
?.
auditStatus
)
===
'9'
const
isCancelDisabled
=
(
item
)
=>
String
(
item
?.
auditStatus
)
!==
'9'
const
isCancelDisabled
=
(
item
)
=>
String
(
item
?.
auditStatus
)
!==
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
const
canShowInvoiceApply
=
(
item
)
=>
!
hasInvoice
(
item
)
...
...
pages/index/daoGuanOrder.vue
View file @
fa6b8d2
...
...
@@ -376,20 +376,26 @@ const isGroupOrder = (item) => getRowType(item) === '1'
const
isLevelOrder
=
(
item
)
=>
[
'2'
,
'3'
,
'4'
].
includes
(
getRowType
(
item
))
const
canShowCancel
=
(
item
)
=>
{
if
(
isPersonalOrder
(
item
))
{
return
String
(
item
?.
auditStatus
)
===
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
}
if
(
isGroupOrder
(
item
))
return
String
(
item
?.
auditStatus
)
===
'0'
return
String
(
item
?.
auditStatus
)
===
'9'
}
const
isPayDisabled
=
(
item
)
=>
{
if
(
isPersonalOrder
(
item
))
return
String
(
item
?.
auditStatus
)
!==
'9'
if
(
isLevelOrder
(
item
))
return
String
(
item
?.
auditStatus
)
!==
'9'
if
(
isPersonalOrder
(
item
)
||
isLevelOrder
(
item
))
{
return
String
(
item
?.
auditStatus
)
!==
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
}
if
(
String
(
item
?.
payStatus
)
!==
'0'
)
return
true
return
String
(
item
?.
auditStatus
)
!==
'0'
}
const
isCancelDisabled
=
(
item
)
=>
{
if
(
isPersonalOrder
(
item
))
return
String
(
item
?.
auditStatus
)
!==
'9'
if
(
isLevelOrder
(
item
))
return
String
(
item
?.
auditStatus
)
!==
'9'
if
(
isLevelOrder
(
item
))
{
return
String
(
item
?.
auditStatus
)
!==
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
}
return
String
(
item
?.
payStatus
)
!==
'0'
}
...
...
@@ -400,7 +406,6 @@ const canShowInvoiceApply = (item) => !hasInvoice(item)
const
isInvoiceDisabled
=
(
item
)
=>
{
if
(
hasInvoice
(
item
))
return
true
if
(
isPersonalOrder
(
item
))
return
String
(
item
?.
auditStatus
)
!==
'2'
||
String
(
item
?.
payStatus
)
===
'4'
if
(
isLevelOrder
(
item
))
return
String
(
item
?.
payStatus
)
!==
'1'
||
String
(
item
?.
auditStatus
)
!==
'2'
||
Number
(
item
?.
price
||
0
)
<=
0
return
String
(
item
?.
payStatus
)
!==
'1'
||
String
(
item
?.
auditStatus
)
!==
'2'
||
Number
(
item
?.
price
||
0
)
<=
0
}
...
...
pages/invoice/apply.vue
View file @
fa6b8d2
...
...
@@ -84,7 +84,7 @@
</view>
<!-- 纳税人识别号(企业才显示) -->
<view
v-if=
"form.type === '1'
&& form.invoiceType === '1'
"
class=
"form-item column"
>
<view
v-if=
"form.type === '1'"
class=
"form-item column"
>
<text
class=
"label"
>
纳税人识别号
</text>
<input
v-model=
"form.taxno"
...
...
pages/invoice/applyFeisui.vue
View file @
fa6b8d2
...
...
@@ -22,7 +22,8 @@
<view
class=
"form-item"
>
<text
class=
"label"
>
发票类型
</text>
<view
class=
"type-select"
>
<view
<view
v-if=
"!personalInvoiceMode"
:class=
"
{ active: form.type === '0' }"
class="type-option"
@click="form.type = '0'"
...
...
@@ -57,7 +58,7 @@
<input
v-model=
"form.name"
class=
"input"
:disabled=
"!showIndividualType"
:disabled=
"!showIndividualType
|| personalInvoiceMode
"
:placeholder=
"form.type === '0' ? '请输入公司全称' : '请输入发票抬头'"
/>
<text
class=
"hint"
>
请确保发票抬头与公司营业执照或个人身份证上的名称一致
</text>
...
...
@@ -102,6 +103,7 @@ const app = getApp();
const
submitting
=
ref
(
false
);
const
showSuccessModal
=
ref
(
false
);
const
showIndividualType
=
ref
(
true
);
const
personalInvoiceMode
=
ref
(
false
);
// 表单数据
const
form
=
reactive
({
...
...
@@ -122,6 +124,15 @@ onLoad((options) => {
// 自动填充发票抬头和纳税人识别号(与PC端一致)
const
memberInfo
=
app
.
globalData
.
memberInfo
if
(
options
.
personalInvoice
==
'1'
)
{
personalInvoiceMode
.
value
=
true
form
.
type
=
'1'
form
.
name
=
decodeURIComponent
(
options
.
invoiceTitle
||
''
)
||
''
form
.
taxno
=
''
showIndividualType
.
value
=
true
return
}
// 如果是对公转账(ziZhangBu有值),默认只能开企业发票,隐藏个人选项
if
(
options
.
ziZhangBu
==
'1'
)
{
...
...
@@ -457,4 +468,4 @@ function closeSuccessModal() {
.success-btn
::after
{
border
:
none
;
}
</
style
>
\ No newline at end of file
</
style
>
...
...
personal/order.vue
View file @
fa6b8d2
...
...
@@ -130,10 +130,13 @@
<button v-if="
canShowCancel
(
item
)
" :class="
{
disabled
:
isCancelDisabled
(
item
)
}
" :disabled="
isCancelDisabled
(
item
)
" class="
btn
btn
-
info
" @click.stop="
handleCancel
(
item
)
">取消订单</button>
<!-- 已缴费:申请开票/已开票(需要审核通过才能开票) -->
<template v-if="
canShowInvoiceApply
(
item
)
">
<button :class="
{
disabled
:
isInvoiceDisabled
(
item
)
}
" :disabled="
isInvoiceDisabled
(
item
)
" class="
btn
btn
-
view
-
invoice
" @click.stop="
makeInvoiceFN
(
item
)
">
<button :class="
{
disabled
:
isInvoiceDisabled
(
item
)
}
" :disabled="
isInvoiceDisabled
(
item
)
"
class="
btn
btn
-
view
-
invoice
" @click.stop="
makeInvoiceFN
(
item
)
">
申请开票
</button>
</template>
<template v-if="
hasInvoice
(
item
)
">
<button class="
btn
btn
-
invoice
" @click.stop="
viewInvoice
(
item
)
">查看发票</button>
</template>
</view>
</view>
</view>
...
...
@@ -276,11 +279,11 @@ const getAuditStatusText = (status) => {
const
hasInvoice
=
(
item
)
=>
String
(
item
?.
invoiceStatus
)
===
'1'
;
const
isPayDisabled
=
(
item
)
=>
{
return
String
(
item
?.
auditStatus
)
!==
'9'
;
return
String
(
item
?.
auditStatus
)
!==
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
;
}
;
const
canShowCancel
=
(
item
)
=>
{
return
String
(
item
?.
auditStatus
)
===
'9'
;
return
String
(
item
?.
auditStatus
)
===
'9'
||
String
(
item
?.
payStatus
)
!==
'0'
;
}
;
const
isCancelDisabled
=
(
item
)
=>
{
...
...
@@ -446,21 +449,18 @@ const closeDelPopup = () => {
// 去缴费
const
handlePay
=
async
(
item
)
=>
{
if
(
item
.
payStatus
!==
0
)
return
;
try
{
await
api
.
goPay
({
id
:
item
.
id
}
);
uni
.
navigateTo
({
url
:
`/pages/pay/pay?orderId=${item.id
}
`
}
);
}
catch
(
e
)
{
uni
.
showToast
({
title
:
'发起支付失败'
,
icon
:
'none'
}
);
}
if
(
isPayDisabled
(
item
))
return
;
goPay
(
item
);
}
;
// 申请开票
const
makeInvoiceFN
=
(
item
)
=>
{
if
(
isInvoiceDisabled
(
item
))
return
;
//
if (isInvoiceDisabled(item)) return;
needRefresh
.
value
=
true
;
const
rawInvoiceTitle
=
item
.
orderName
||
item
.
content
?.
orderName
||
item
.
memberName
||
''
const
invoiceTitle
=
encodeURIComponent
(
String
(
rawInvoiceTitle
).
split
(
'-'
)[
0
]
||
''
)
uni
.
navigateTo
({
url
:
`/pages/invoice/applyFeisui?orderId=${item.id
}
&amount=${item.price
}
&type=1`
url
:
`/pages/invoice/applyFeisui?orderId=${item.id
}
&amount=${item.price
}
&type=1
&personalInvoice=1&invoiceTitle=${invoiceTitle
}
`
}
);
}
;
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment