Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
薪
薪瑞通-前端
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
许珑标
薪瑞通-前端
Commits
efb37c3a
Commit
efb37c3a
authored
Apr 15, 2025
by
wanghf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feature--线上发包任务,发票信息管理功能
parent
a76aab3c
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
3287 additions
and
1 deletion
+3287
-1
src/api/business/invoiceApply.js
src/api/business/invoiceApply.js
+85
-0
src/api/business/invoiceApplyLog.js
src/api/business/invoiceApplyLog.js
+53
-0
src/api/business/invoiceInfo.js
src/api/business/invoiceInfo.js
+65
-0
src/api/business/onlineTaskInfo.js
src/api/business/onlineTaskInfo.js
+79
-0
src/api/business/payOrder.js
src/api/business/payOrder.js
+9
-0
src/components/Pdf/index.vue
src/components/Pdf/index.vue
+35
-0
src/views/business/invoiceApply/index.vue
src/views/business/invoiceApply/index.vue
+827
-0
src/views/business/invoiceApply/ready.vue
src/views/business/invoiceApply/ready.vue
+498
-0
src/views/business/invoiceApplyLog/index.vue
src/views/business/invoiceApplyLog/index.vue
+360
-0
src/views/business/invoiceInfo/index.vue
src/views/business/invoiceInfo/index.vue
+426
-0
src/views/business/onlineTaskInfo/index.vue
src/views/business/onlineTaskInfo/index.vue
+839
-0
src/views/business/payOrder/batchToAli.vue
src/views/business/payOrder/batchToAli.vue
+3
-0
src/views/business/payOrder/batchToBank.vue
src/views/business/payOrder/batchToBank.vue
+8
-1
No files found.
src/api/business/invoiceApply.js
0 → 100644
View file @
efb37c3a
import
request
from
'
@/utils/request
'
// 查询申请发票信息列表
export
function
listInvoiceApply
(
query
)
{
return
request
({
url
:
'
/business/invoiceApply/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询申请发票信息所有列表
export
function
listAllInvoiceApply
(
query
)
{
return
request
({
url
:
'
/business/invoiceApply/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询申请发票信息详细
export
function
getInvoiceApply
(
id
)
{
return
request
({
url
:
'
/business/invoiceApply/getInfo/
'
+
id
,
method
:
'
get
'
})
}
export
function
getInvoiceApplyDetail
(
id
)
{
return
request
({
url
:
'
/business/invoiceApply/detail/
'
+
id
,
method
:
'
get
'
})
}
// 新增申请发票信息
export
function
addInvoiceApply
(
data
)
{
return
request
({
url
:
'
/business/invoiceApply/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 新增申请发票信息--申请开票
export
function
addApplyInvoice
(
data
)
{
return
request
({
url
:
'
/business/invoiceApply/applyInvoice
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改申请发票信息
export
function
updateInvoiceApply
(
data
)
{
return
request
({
url
:
'
/business/invoiceApply/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除申请发票信息
export
function
delInvoiceApply
(
id
)
{
return
request
({
url
:
'
/business/invoiceApply/remove/
'
+
id
,
method
:
'
get
'
})
}
/// 上传发票
export
function
uploadInvoiceFile
(
data
)
{
return
request
({
url
:
'
/business/invoiceApply/uploadInvoice
'
,
method
:
'
post
'
,
data
:
data
})
}
// 更新发票状态
export
function
updateInvoiceStatus
(
data
)
{
return
request
({
url
:
'
/business/invoiceApply/updateInvoiceStatus
'
,
method
:
'
post
'
,
data
:
data
})
}
src/api/business/invoiceApplyLog.js
0 → 100644
View file @
efb37c3a
import
request
from
'
@/utils/request
'
// 查询发票日志列表
export
function
listInvoiceApplyLog
(
query
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发票日志所有列表
export
function
listAllInvoiceApplyLog
(
query
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发票日志详细
export
function
getInvoiceApplyLog
(
id
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/getInfo/
'
+
id
,
method
:
'
get
'
})
}
// 新增发票日志
export
function
addInvoiceApplyLog
(
data
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改发票日志
export
function
updateInvoiceApplyLog
(
data
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除发票日志
export
function
delInvoiceApplyLog
(
id
)
{
return
request
({
url
:
'
/business/invoiceApplyLog/remove/
'
+
id
,
method
:
'
get
'
})
}
src/api/business/invoiceInfo.js
0 → 100644
View file @
efb37c3a
import
request
from
'
@/utils/request
'
// 查询开票信息列表
export
function
listInvoiceInfo
(
query
)
{
return
request
({
url
:
'
/business/invoiceInfo/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询开票信息所有列表
export
function
listAllInvoiceInfo
(
query
)
{
return
request
({
url
:
'
/business/invoiceInfo/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询开票信息详细
export
function
getInvoiceInfo
(
id
)
{
return
request
({
url
:
'
/business/invoiceInfo/getInfo/
'
+
id
,
method
:
'
get
'
})
}
export
function
getInvoiceInfoByCompanyId
(
id
)
{
return
request
({
url
:
'
/business/invoiceInfo/getInfoByCompanyId/
'
+
id
,
method
:
'
get
'
})
}
export
function
getInfoByTaxUnitId
(
id
)
{
return
request
({
url
:
'
/business/invoiceInfo/getInfoByTaxUnitId/
'
+
id
,
method
:
'
get
'
})
}
// 新增开票信息
export
function
addInvoiceInfo
(
data
)
{
return
request
({
url
:
'
/business/invoiceInfo/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改开票信息
export
function
updateInvoiceInfo
(
data
)
{
return
request
({
url
:
'
/business/invoiceInfo/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除开票信息
export
function
delInvoiceInfo
(
id
)
{
return
request
({
url
:
'
/business/invoiceInfo/remove/
'
+
id
,
method
:
'
get
'
})
}
src/api/business/onlineTaskInfo.js
0 → 100644
View file @
efb37c3a
import
request
from
'
@/utils/request
'
// 查询线上任务信息列表
export
function
listOnlineTaskInfo
(
query
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询线上任务信息所有列表
export
function
listAllOnlineTaskInfo
(
query
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询线上任务信息详细
export
function
getOnlineTaskInfo
(
id
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/getInfo/
'
+
id
,
method
:
'
get
'
})
}
// 新增线上任务信息
export
function
addOnlineTaskInfo
(
data
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改线上任务信息
export
function
updateOnlineTaskInfo
(
data
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 新增线上任务信息 第一步
export
function
addOnlineTaskInfoFirst
(
data
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/addFirst
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改线上任务信息 第二步
export
function
addOnlineTaskInfoSecond
(
data
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/addSecond
'
,
method
:
'
post
'
,
data
:
data
})
}
//更新状态
export
function
updateStatus
(
data
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/updateStatus
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除线上任务信息
export
function
delOnlineTaskInfo
(
id
)
{
return
request
({
url
:
'
/business/onlineTaskInfo/remove/
'
+
id
,
method
:
'
get
'
})
}
src/api/business/payOrder.js
View file @
efb37c3a
...
@@ -9,6 +9,15 @@ export function listPayOrder(query) {
...
@@ -9,6 +9,15 @@ export function listPayOrder(query) {
})
})
}
}
// 查询批量支付列表--待开票
export
function
listPayOrderToInvoice
(
query
)
{
return
request
({
url
:
'
/business/payOrder/listToInvoice
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询批量支付所有列表
// 查询批量支付所有列表
export
function
listAllPayOrder
(
query
)
{
export
function
listAllPayOrder
(
query
)
{
return
request
({
return
request
({
...
...
src/components/Pdf/index.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"if-container"
>
<!-- :src="`/pdf/web/viewer.html?file=$
{pdfUrl}`" -->
<iframe
name=
"fd-jspdf"
id=
"fd-jspdf"
:src=
"pdfUrl"
frameborder=
"0"
:style=
"`width: 100%; height: $
{height}px; border: none`"
>
</iframe>
</div>
</
template
>
<
script
>
export
default
{
name
:
"
Pdf
"
,
props
:
{
pdfUrl
:
{
type
:
String
,
default
:
""
,
},
height
:
{
type
:
Number
,
default
:
600
,
},
},
};
</
script
>
<
style
>
.if-container
{
width
:
100%
;
height
:
100%
;
}
</
style
>
src/views/business/invoiceApply/index.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"100px"
>
<el-form-item
label=
"采购方企业"
prop=
"applyCompanyId"
>
<el-select
v-model=
"queryParams.applyCompanyId"
placeholder=
"请选择企业"
clearable
>
<el-option
v-for=
"item in companyInfoList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"销售方企业"
prop=
"taxCompanyId"
>
<el-select
v-model=
"queryParams.taxCompanyId"
placeholder=
"请选择企业"
clearable
>
<el-option
v-for=
"item in taxCompanyList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"开票类型"
prop=
"invoieType"
>
<el-select
v-model=
"queryParams.invoieType"
placeholder=
"请选择开票类型"
clearable
filterable
>
<el-option
v-for=
"dict in dict.type.tax_invoice_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"开票状态"
prop=
"status"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择开票状态"
clearable
filterable
>
<el-option
v-for=
"dict in dict.type.invoice_status"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"申请时间"
>
<el-date-picker
v-model=
"daterangeApplyTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleDetail"
v-hasPermi=
"['business:invoiceApply:add']"
>
详情
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['business:invoiceApply:add']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
v-if=
"false"
>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['business:invoiceApply:edit']"
>
修改
</el-button>
</el-col>
<el-col
:span=
"1.5"
v-if=
"false"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['business:invoiceApply:remove']"
>
删除
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['business:invoiceApply:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"invoiceApplyList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"采购方企业名称"
align=
"center"
prop=
"applyCompanyName"
/>
<el-table-column
label=
"销售方企业名称"
align=
"center"
prop=
"taxCompanyName"
/>
<el-table-column
label=
"价税合计/元"
align=
"center"
prop=
"totalAmountTax"
/>
<el-table-column
label=
"不含税金额/元"
align=
"center"
prop=
"totalAmount"
/>
<el-table-column
label=
"税额/元"
align=
"center"
prop=
"totalTax"
/>
<el-table-column
label=
"开票类型"
align=
"center"
prop=
"invoieType"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.tax_invoice_type"
:value=
"scope.row.invoieType"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"开票状态"
align=
"center"
prop=
"status"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.invoice_status"
:value=
"scope.row.status"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"申请时间"
align=
"center"
prop=
"applyTime"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
applyTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"开票时间"
align=
"center"
prop=
"uploadTime"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
uploadTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"收票时间"
align=
"center"
prop=
"revicedTime"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
revicedTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-view"
@
click=
"viewDetail(scope.row)"
v-hasPermi=
"['business:invoiceApply:view']"
>
查看详情
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-connection"
@
click=
"viewInvoiceFile(scope.row)"
v-hasPermi=
"['business:invoiceApply:remove']"
>
查看发票
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-upload"
v-hasPermi=
"['business:invoiceApply:uploadInvoiceFile']"
@
click=
"uploadInvoiceDailog(scope.row)"
>
上传发票
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-receiving"
@
click=
"confirmInvoiceFile(scope.row)"
v-hasPermi=
"['business:invoiceApply:confirmRecived']"
>
接收收票
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<!-- 添加或修改申请发票信息对话框 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"600px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<!-- <el-form-item label="采购方企业id" prop="applyCompanyId">-->
<!-- <el-input v-model="form.applyCompanyId" placeholder="请输入采购方企业id" />-->
<!-- </el-form-item>-->
<el-form-item
label=
"采购方企业名称"
prop=
"applyCompanyName"
>
<el-input
v-model=
"form.applyCompanyName"
placeholder=
"请输入采购方企业名称"
/>
</el-form-item>
<!-- <el-form-item label="销售方企业id" prop="taxCompanyId">-->
<!-- <el-input v-model="form.taxCompanyId" placeholder="请输入销售方企业id" />-->
<!-- </el-form-item>-->
<el-form-item
label=
"销售方企业名称"
prop=
"taxCompanyName"
>
<el-input
v-model=
"form.taxCompanyName"
placeholder=
"请输入销售方企业名称"
/>
</el-form-item>
<el-form-item
label=
"价税合计/元"
prop=
"totalAmountTax"
>
<el-input
v-model=
"form.totalAmountTax"
placeholder=
"请输入价税合计/元"
/>
</el-form-item>
<el-form-item
label=
"不含税金额/元"
prop=
"totalAmount"
>
<el-input
v-model=
"form.totalAmount"
placeholder=
"请输入不含税金额/元"
/>
</el-form-item>
<el-form-item
label=
"税额/元"
prop=
"totalTax"
>
<el-input
v-model=
"form.totalTax"
placeholder=
"请输入税额/元"
/>
</el-form-item>
<el-form-item
label=
"开票类型"
prop=
"invoieType"
>
<el-select
v-model=
"form.invoieType"
placeholder=
"请选择开票类型"
filterable
>
<el-option
v-for=
"dict in dict.type.tax_invoice_type"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"开票状态"
prop=
"status"
>
<el-select
v-model=
"form.status"
placeholder=
"请选择开票状态"
filterable
>
<el-option
v-for=
"dict in dict.type.invoice_status"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"申请时间"
prop=
"applyTime"
>
<el-date-picker
clearable
v-model=
"form.applyTime"
type=
"date"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择申请时间"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"开票时间"
prop=
"uploadTime"
>
<el-date-picker
clearable
v-model=
"form.uploadTime"
type=
"date"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择开票时间"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"收票时间"
prop=
"revicedTime"
>
<el-date-picker
clearable
v-model=
"form.revicedTime"
type=
"date"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择收票时间"
>
</el-date-picker>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
<!-- 开票详情 -->
<el-dialog
title=
"开票详情"
:visible.sync=
"detailOpen"
width=
"1200px"
append-to-body
>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
发票状态
</h3>
<el-divider></el-divider>
<p>
申请发票类型:
<dict-tag
style=
"display: inline;"
:options=
"dict.type.invoice_status"
:value=
"form.status"
/></p>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
采购方信息
</h3>
<el-divider></el-divider>
<el-row>
<el-col
:span=
"8"
>
<p>
名称:{{form.applyCompanyInvoice.invoiceTitle || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
纳税人识别号:{{form.applyCompanyInvoice.taxRegistrationNumber || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户银行:{{form.applyCompanyInvoice.bankName || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户账号:{{form.applyCompanyInvoice.bankAccount || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
地址:{{form.applyCompanyInvoice.address || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
电话:{{form.applyCompanyInvoice.phone || '--'}}
</p>
</el-col>
</el-row>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
销售方信息
</h3>
<el-divider></el-divider>
<el-row>
<el-col
:span=
"8"
>
<p>
名称:{{form.taxCompanyInvoice.invoiceTitle || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
纳税人识别号:{{form.taxCompanyInvoice.taxRegistrationNumber || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户银行:{{form.taxCompanyInvoice.bankName || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户账号:{{form.taxCompanyInvoice.bankAccount || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
地址:{{form.taxCompanyInvoice.address || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
电话:{{form.taxCompanyInvoice.phone || '--'}}
</p>
</el-col>
</el-row>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
备注信息
</h3>
<el-divider></el-divider>
<p>
备注信息:{{form.remark || '--'}}
</p>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
发票信息
</h3>
<el-divider></el-divider>
<h4
style=
"font-weight: bold;"
>
申请信息:
</h4>
<el-row>
<el-col
:span=
"8"
>
<p>
申请发票类型:
<dict-tag
style=
"display: inline;"
:options=
"dict.type.tax_invoice_type"
:value=
"form.invoieType"
/></p>
</el-col>
<el-col
:span=
"16"
>
<p>
申请时间:{{form.applyTime || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
价税合计/元:{{form.totalAmountTax || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
不含税金额/元:{{form.totalAmount || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
税额/元:{{form.totalTax || '--'}}
</p>
</el-col>
</el-row>
<el-divider></el-divider>
<div
style=
"display: flex; justify-content: space-between; align-items: center;"
>
<h4
style=
"font-weight: bold;"
>
开票信息:
</h4>
<el-button
v-if=
"form.invocieUrl"
type=
"primary"
>
查看发票
</el-button>
</div>
<el-row>
<el-col
:span=
"8"
>
<p>
申请发票类型:
<dict-tag
style=
"display: inline;"
:options=
"dict.type.tax_invoice_type"
:value=
"form.invoieType"
/></p>
</el-col>
<el-col
:span=
"16"
>
<p>
申请时间:{{form.applyTime || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
价税合计/元:{{form.totalAmountTax || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
不含税金额/元:{{form.totalAmount || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
税额/元:{{form.totalTax || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
发票号码:{{form.invoiceCode || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开票方式:{{form.invocieMethod || '--'}}
</p>
</el-col>
</el-row>
<el-divider></el-divider>
<h4
style=
"font-weight: bold;"
>
总计:
</h4>
<el-row>
<el-col
:span=
"8"
>
<p>
价税合计/元:{{form.totalAmountTax || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
不含税金额/元:{{form.totalAmount || '--'}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
税额/元:{{form.totalTax || '--'}}
</p>
</el-col>
</el-row>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
发票关联信息
</h3>
<el-divider></el-divider>
<el-table
v-loading=
"loading"
:data=
"form.payOrderList"
height=
"200px"
>
<el-table-column
label=
"序号"
align=
"center"
prop=
"index"
width=
"60"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
$index
+
1
}}
</
template
>
</el-table-column>
<el-table-column
label=
"流水号"
align=
"center"
prop=
"batchNo"
/>
<el-table-column
label=
"业务名称"
align=
"center"
prop=
"batchPayName"
/>
<el-table-column
label=
"付款账户"
align=
"center"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
payerAccName
}}
<div>
{{
scope
.
row
.
payerAccNo
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"开票金额/元"
align=
"center"
prop=
"successAmount"
/>
</el-table>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
发票日志信息
</h3>
<el-divider></el-divider>
<el-table
v-loading=
"loading"
:data=
"form.applyLogList"
height=
"180px"
>
<el-table-column
prop=
"title"
label=
"操作"
></el-table-column>
<el-table-column
prop=
"operateTime"
label=
"操作时间"
></el-table-column>
<el-table-column
prop=
"operateCompany"
label=
"操作方"
></el-table-column>
<el-table-column
prop=
"operateUsername"
label=
"操作用户"
></el-table-column>
</el-table>
</div>
</el-card>
</el-dialog>
<!-- 上传发票对话框 -->
<el-dialog
title=
"上传发票"
:visible.sync=
"uploadInvoiceOpen"
>
<file-upload
:limit=
"1"
:fileType=
"['pdf']"
v-model=
"uploadInvoieFile"
/>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"uploadInvoiceFile"
>
确 定
</el-button>
<el-button
@
click=
"uploadInvoiceOpen = false"
>
取 消
</el-button>
</span>
</el-dialog>
</div>
</template>
<
script
>
import
{
listInvoiceApply
,
getInvoiceApply
,
delInvoiceApply
,
addInvoiceApply
,
updateInvoiceApply
,
uploadInvoiceFile
,
updateInvoiceStatus
,
getInvoiceApplyDetail
}
from
'
@/api/business/invoiceApply
'
import
{
listCompanyInfo
}
from
'
@/api/business/companyInfo
'
import
fa
from
'
element-ui/src/locale/lang/fa
'
import
{
querySignList
}
from
'
@/api/business/unitInfo
'
export
default
{
name
:
"
InvoiceApply
"
,
computed
:
{
fa
()
{
return
fa
}
},
dicts
:
[
'
invoice_status
'
,
'
tax_invoice_type
'
],
data
()
{
return
{
//上传发票
applyInvoiceId
:
null
,
viewInvoiceFileOpen
:
false
,
uploadInvoiceOpen
:
false
,
uploadInvoieFile
:
null
,
//人力公司list
companyInfoList
:
[],
//税源地公司
taxCompanyList
:
[],
detailOpen
:
false
,
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 申请发票信息表格数据
invoiceApplyList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 收票时间时间范围
daterangeApplyTime
:
[],
// 收票时间时间范围
daterangeUploadTime
:
[],
// 收票时间时间范围
daterangeRevicedTime
:
[],
// 收票时间时间范围
daterangeCreateTime
:
[],
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
applyCompanyId
:
null
,
applyCompanyName
:
null
,
taxCompanyId
:
null
,
taxCompanyName
:
null
,
invoieType
:
null
,
status
:
null
,
applyTime
:
null
,
uploadTime
:
null
,
revicedTime
:
null
,
createTime
:
null
,
},
// 表单参数
form
:
{
id
:
null
,
deptId
:
null
,
batchPayOrderIds
:
[],
applyCompanyId
:
null
,
applyCompanyName
:
null
,
taxCompanyId
:
null
,
taxCompanyName
:
null
,
applyCompanyInvoice
:
{
invoiceTitle
:
null
,
taxRegistrationNumber
:
null
,
bankName
:
null
,
bankAccount
:
null
,
address
:
null
,
phone
:
null
,
},
taxCompanyInvoice
:
{
invoiceTitle
:
null
,
taxRegistrationNumber
:
null
,
bankName
:
null
,
bankAccount
:
null
,
address
:
null
,
phone
:
null
,
},
payOrderList
:
[],
applyLogList
:
[],
},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
主键id不能为空
"
,
trigger
:
"
blur
"
}
],
deptId
:
[
{
required
:
true
,
message
:
"
部门id不能为空
"
,
trigger
:
"
blur
"
}
],
batchPayOrderIds
:
[
{
required
:
true
,
message
:
"
关联批量支付ids不能为空
"
,
trigger
:
"
blur
"
}
],
applyCompanyId
:
[
{
required
:
true
,
message
:
"
采购方企业id不能为空
"
,
trigger
:
"
blur
"
}
],
applyCompanyName
:
[
{
required
:
true
,
message
:
"
采购方企业名称不能为空
"
,
trigger
:
"
blur
"
}
],
taxCompanyId
:
[
{
required
:
true
,
message
:
"
销售方企业id不能为空
"
,
trigger
:
"
blur
"
}
],
taxCompanyName
:
[
{
required
:
true
,
message
:
"
销售方企业名称不能为空
"
,
trigger
:
"
blur
"
}
],
totalAmountTax
:
[
{
required
:
true
,
message
:
"
价税合计/元不能为空
"
,
trigger
:
"
blur
"
}
],
totalAmount
:
[
{
required
:
true
,
message
:
"
不含税金额/元不能为空
"
,
trigger
:
"
blur
"
}
],
totalTax
:
[
{
required
:
true
,
message
:
"
税额/元不能为空
"
,
trigger
:
"
blur
"
}
],
invoieType
:
[
{
required
:
true
,
message
:
"
开票类型不能为空
"
,
trigger
:
"
change
"
}
],
status
:
[
{
required
:
true
,
message
:
"
开票状态不能为空
"
,
trigger
:
"
change
"
}
],
applyTime
:
[
{
required
:
true
,
message
:
"
申请时间不能为空
"
,
trigger
:
"
blur
"
}
],
uploadTime
:
[
{
required
:
true
,
message
:
"
开票时间不能为空
"
,
trigger
:
"
blur
"
}
],
revicedTime
:
[
{
required
:
true
,
message
:
"
收票时间不能为空
"
,
trigger
:
"
blur
"
}
],
invocieUrl
:
[
{
required
:
true
,
message
:
"
发票文件地址不能为空
"
,
trigger
:
"
blur
"
}
],
}
};
},
created
()
{
this
.
getList
();
this
.
getListgetCompanyList
(
1
);
// this.getListgetCompanyList(2);
},
methods
:
{
//获取企业信息数据
getListgetCompanyList
(
bindType
)
{
this
.
loading
=
true
;
const
queryParams
=
{
bindType
:
bindType
,
pageNum
:
1
,
pageSize
:
1000
}
listCompanyInfo
(
queryParams
).
then
(
response
=>
{
if
(
bindType
==
1
)
{
this
.
companyInfoList
=
response
.
rows
;
}
else
if
(
bindType
==
2
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
this
.
loading
=
false
;
});
},
//查询合作机构list
queryTaxCompanyList
(){
const
queryParams
=
{
signStatus
:
2
,
pageNum
:
1
,
pageSize
:
1000
}
querySignList
(
queryParams
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
})
},
/** 查询申请发票信息列表 */
getList
()
{
this
.
loading
=
true
;
this
.
queryParams
.
params
=
{};
if
(
null
!=
this
.
daterangeApplyTime
&&
''
!=
this
.
daterangeApplyTime
)
{
this
.
queryParams
.
params
[
"
beginApplyTime
"
]
=
this
.
daterangeApplyTime
[
0
];
this
.
queryParams
.
params
[
"
endApplyTime
"
]
=
this
.
daterangeApplyTime
[
1
];
}
if
(
null
!=
this
.
daterangeUploadTime
&&
''
!=
this
.
daterangeUploadTime
)
{
this
.
queryParams
.
params
[
"
beginUploadTime
"
]
=
this
.
daterangeUploadTime
[
0
];
this
.
queryParams
.
params
[
"
endUploadTime
"
]
=
this
.
daterangeUploadTime
[
1
];
}
if
(
null
!=
this
.
daterangeRevicedTime
&&
''
!=
this
.
daterangeRevicedTime
)
{
this
.
queryParams
.
params
[
"
beginRevicedTime
"
]
=
this
.
daterangeRevicedTime
[
0
];
this
.
queryParams
.
params
[
"
endRevicedTime
"
]
=
this
.
daterangeRevicedTime
[
1
];
}
if
(
null
!=
this
.
daterangeCreateTime
&&
''
!=
this
.
daterangeCreateTime
)
{
this
.
queryParams
.
params
[
"
beginCreateTime
"
]
=
this
.
daterangeCreateTime
[
0
];
this
.
queryParams
.
params
[
"
endCreateTime
"
]
=
this
.
daterangeCreateTime
[
1
];
}
listInvoiceApply
(
this
.
queryParams
).
then
(
response
=>
{
this
.
invoiceApplyList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
deptId
:
null
,
batchPayOrderIds
:
null
,
applyCompanyId
:
null
,
applyCompanyName
:
null
,
taxCompanyId
:
null
,
taxCompanyName
:
null
,
totalAmountTax
:
null
,
totalAmount
:
null
,
totalTax
:
null
,
invoieType
:
null
,
status
:
null
,
applyTime
:
null
,
uploadTime
:
null
,
revicedTime
:
null
,
invocieUrl
:
null
,
};
this
.
resetForm
(
"
form
"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
daterangeApplyTime
=
[];
this
.
daterangeUploadTime
=
[];
this
.
daterangeRevicedTime
=
[];
this
.
daterangeCreateTime
=
[];
this
.
resetForm
(
"
queryForm
"
);
this
.
handleQuery
();
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
/** 新增按钮操作 */
handleAdd
()
{
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"
添加申请发票信息
"
;
},
/** 查看详情按钮操作 */
handleDetail
()
{
this
.
reset
();
this
.
detailOpen
=
true
;
this
.
title
=
"
查看发票详情信息
"
;
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
();
const
id
=
row
.
id
||
this
.
ids
getInvoiceApply
(
id
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"
修改申请发票信息
"
;
});
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateInvoiceApply
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
else
{
addInvoiceApply
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
this
.
$modal
.
confirm
(
'
是否确认删除申请发票信息编号为"
'
+
ids
+
'
"的数据项?
'
).
then
(
function
()
{
return
delInvoiceApply
(
ids
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
删除成功
"
);
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/invoiceApply/export
'
,
{
...
this
.
queryParams
},
`invoiceApply_
${
new
Date
().
getTime
()}
.xlsx`
)
},
uploadInvoiceDailog
(
row
){
this
.
uploadInvoiceOpen
=
true
;
this
.
applyInvoiceId
=
row
.
id
;
},
uploadInvoiceFile
()
{
this
.
loading
=
true
;
const
obj
=
{
id
:
this
.
applyInvoiceId
,
invocieUrl
:
this
.
uploadInvoieFile
,
};
uploadInvoiceFile
(
obj
).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
this
.
$message
.
success
(
"
上传成功!
"
);
this
.
uploadInvoiceOpen
=
false
;
this
.
uploadInvoieFile
=
null
;
this
.
getList
();
}
else
{
this
.
$message
.
error
(
res
.
msg
);
}
}).
finally
(()
=>
{
this
.
loading
=
false
;
});
},
//确认收到发票
confirmInvoiceFile
(
row
){
this
.
$confirm
(
'
是否确认已收到发票?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
this
.
loading
=
true
;
const
obj
=
{
id
:
row
.
id
,
status
:
'
RECEIVED
'
,
};
updateInvoiceStatus
(
obj
).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
this
.
$message
.
success
(
"
确认成功!
"
);
}
}).
finally
(()
=>
{
this
.
loading
=
false
;
});
})
},
//查看发票
viewInvoiceFile
(
row
)
{
//新标签页打开
// window.open(`${this.baseURL}${row.invocieUrl}`);
window
.
open
(
`
${
row
.
invocieUrl
}
`
);
},
//查看详情
viewDetail
(
row
)
{
getInvoiceApplyDetail
(
row
.
id
).
then
(
response
=>
{
this
.
detailOpen
=
true
;
this
.
form
=
response
.
data
;
});
},
},
};
</
script
>
<
style
>
.invoice-info-card
{
margin-bottom
:
10px
;
}
.title-bold
{
text-align
:
center
;
font-weight
:
bold
;
}
</
style
>
src/views/business/invoiceApply/ready.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"100px"
>
<el-form-item
label=
"流水号"
prop=
"batchNo"
>
<el-input
v-model=
"queryParams.batchNo"
placeholder=
"流水号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"业务名称"
prop=
"batchPayName"
>
<el-input
v-model=
"queryParams.batchPayName"
placeholder=
"请输入支付名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"付款账户名"
prop=
"payerAccName"
>
<el-input
v-model=
"queryParams.payerAccName"
placeholder=
"请输入付款账户名"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"付款账号"
prop=
"payerAccNo"
>
<el-input
v-model=
"queryParams.payerAccNo"
placeholder=
"请输入付款账号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"开票状态"
prop=
"payStatus"
>
<el-select
v-model=
"queryParams.invoiceStatus"
placeholder=
"请选择开票状态"
@
change=
"handleQuery"
clearable
>
<el-option
v-for=
"dict in dict.type.batch_pay_order_invoice_status"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
/>
</el-select>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"batchApplyInvoice"
:disabled=
"multiple"
v-hasPermi=
"['business:invoiceApply:apply']"
>
批量申请开票
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
:disabled=
"multiple"
v-hasPermi=
"['business:payOrder:export']"
>
批量导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"payOrderList"
height=
"700px"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"流水号"
align=
"center"
prop=
"batchNo"
/>
<el-table-column
label=
"业务名称"
align=
"center"
prop=
"batchPayName"
/>
<el-table-column
label=
"付款账户"
align=
"center"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
payerAccName
}}
<div>
{{
scope
.
row
.
payerAccNo
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"支付状态"
align=
"center"
prop=
"payStatus"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.pay_status"
:value=
"scope.row.payStatus"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"开票状态"
align=
"center"
prop=
"invoiceStatus"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.batch_pay_order_invoice_status"
:value=
"scope.row.invoiceStatus"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"可开票金额/元"
align=
"center"
prop=
"successAmount"
/>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-s-order"
v-show=
"showInvoiceButton(scope.row)"
v-hasPermi=
"['business:invoiceApply:apply']"
@
click=
"applyInvoice(scope.row)"
>
申请开票
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total > 0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<el-dialog
title=
"申请开票"
:visible.sync=
"openApply"
width=
"1000px"
>
<el-form
ref=
"formApply"
:model=
"formApply"
:rules=
"rulesApply"
label-width=
"130px"
>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
开票金额
</h3>
<el-divider></el-divider>
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"价税合计金额/元"
prop=
"totalAmountTax"
>
<el-input
v-model=
"formApply.totalAmountTax"
placeholder=
"请输入价税合计金额/元"
disabled
/>
</el-form-item>
<el-form-item
label=
"发票类型"
prop=
"invoieType"
>
<el-radio-group
v-model=
"formApply.invoieType"
>
<el-radio
v-for=
"dict in dict.type.tax_invoice_type"
:key=
"dict.value"
:label=
"dict.value"
>
{{dict.label}}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
采购方信息
</h3>
<el-divider></el-divider>
<!-- 采购企业选择 -->
<el-row>
<el-col
:span=
"24"
>
<el-form-item
label=
"采购方"
prop=
"applyCompanyId"
>
<el-select
v-model=
"formApply.applyCompanyId"
placeholder=
"请选择采购方"
clearable
@
change=
"applyCompanyChange"
>
<el-option
v-for=
"item in applyCompanyList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"8"
>
<p>
名称:{{formApply.applyCompanyInvoice.invoiceTitle}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
纳税人识别号:{{formApply.applyCompanyInvoice.taxRegistrationNumber}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户银行:{{formApply.applyCompanyInvoice.bankName}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户账号:{{formApply.applyCompanyInvoice.bankAccount}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
地址:{{formApply.applyCompanyInvoice.address}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
电话:{{formApply.applyCompanyInvoice.phone}}
</p>
</el-col>
</el-row>
</div>
</el-card>
<el-card
shadow=
"hover"
class=
"invoice-info-card"
>
<div>
<h3
class=
"title-bold"
strong
>
销售方信息
</h3>
<el-divider></el-divider>
<el-form-item
label=
"销售方"
prop=
"taxCompanyId"
>
<el-select
v-model=
"formApply.taxCompanyId"
placeholder=
"请选择销售方"
clearable
@
change=
"taxCompanyChange"
>
<el-option
v-for=
"item in taxCompanyList"
:key=
"item.id"
:label=
"item.taxUnitName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-row>
<el-col
:span=
"8"
>
<p>
名称:{{formApply.taxCompanyInvoice.invoiceTitle}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
纳税人识别号:{{formApply.taxCompanyInvoice.taxRegistrationNumber}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户银行:{{formApply.taxCompanyInvoice.bankName}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
开户账号:{{formApply.taxCompanyInvoice.bankAccount}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
地址:{{formApply.taxCompanyInvoice.address}}
</p>
</el-col>
<el-col
:span=
"8"
>
<p>
电话:{{formApply.taxCompanyInvoice.phone}}
</p>
</el-col>
</el-row>
</div>
</el-card>
<!-- <el-card shadow="hover" class="invoice-info-card">
<div>
<h3 class="title-bold" strong >开票信息</h3>
<el-divider></el-divider>
<el-form-item label="价税合计金额/元" prop="invoiceTitle">
<el-input v-model="formApply.totalAmountTax" placeholder="请输入价税合计金额/元" disabled/>
</el-form-item>
<el-form-item label="发票类型">
<el-radio-group v-model="formApply.invoieType">
<el-radio v-for="dict in dict.type.tax_invoice_type" :key="dict.value" :label="dict.value" >{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="开票类目" prop="invoiceTitle">
<el-input v-model="formApply.invoiceTitle" placeholder="请输入发票抬头"/>
</el-form-item>
<el-form-item label="税率" prop="invoiceTitle">
<el-input v-model="formApply.invoiceTitle" placeholder="请输入税率"/>
</el-form-item>
<el-form-item label="税额" prop="invoiceTitle">
<el-input v-model="formApply.invoiceTitle" placeholder="请输入税额"/>
</el-form-item>
<el-form-item label="票面名称" prop="bankName">
<el-input v-model="formApply.bankName" placeholder="请输入票面名称" />
</el-form-item>
<el-form-item label="票面规格型号" prop="bankName">
<el-input v-model="formApply.bankName" placeholder="请输入票面规格型号" />
</el-form-item>
<el-form-item label="票面单位" prop="bankAccount">
<el-input v-model="formApply.bankAccount" placeholder="请输入票面单位" />
</el-form-item>
<el-form-item label="票面数量" prop="address">
<el-input v-model="formApply.address" placeholder="请输入票面数量"/>
</el-form-item>
<el-form-item label="票面备注" prop="phone">
<el-input v-model="formApply.phone" placeholder="请输入电话" />
</el-form-item>
</div>
</el-card>-->
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitApply"
>
确认申请开票
</el-button>
<el-button
@
click=
"openApply = false"
>
取消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
addPayOrder
,
doPay
,
listPayOrder
,
listPayOrderToInvoice
}
from
'
@/api/business/payOrder
'
import
RePay
from
'
@/views/business/payDetail/rePay.vue
'
import
{
listCompanyInfo
}
from
'
@/api/business/companyInfo
'
import
{
delInvoiceInfo
,
getInfoByTaxUnitId
,
getInvoiceInfo
,
getInvoiceInfoByCompanyId
}
from
'
@/api/business/invoiceInfo
'
import
{
addApplyInvoice
}
from
'
@/api/business/invoiceApply
'
import
{
querySignList
}
from
'
@/api/business/unitInfo
'
export
default
{
name
:
"
PayOrder
"
,
components
:
{
RePay
},
dicts
:
[
'
pay_status
'
,
'
batch_pay_order_invoice_status
'
,
'
pay_type_title
'
,
'
tax_invoice_type
'
],
data
()
{
return
{
//人力公司list
applyCompanyList
:
[],
//税源地公司
taxCompanyList
:
[],
rePayObj
:
{},
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 选中流水号数组
batchNos
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 批量支付表格数据
payOrderList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
batchPayName
:
null
,
payerCompanyId
:
null
,
payerAccName
:
null
,
payerAccNo
:
null
,
batchNo
:
null
,
outBatchNo
:
null
,
payTitle
:
null
,
payRemark
:
null
,
transactionTime
:
null
,
totalCount
:
null
,
totalAmount
:
null
,
successCount
:
null
,
failCount
:
null
,
successAmount
:
null
,
failAmount
:
null
,
transFee
:
null
,
payStatus
:
null
,
voucher
:
null
,
upateTime
:
null
,
deptId
:
null
,
},
//申请开票窗口
openApply
:
false
,
// 表单参数
formApply
:
{
invoieType
:
'
NORMAL_TAX
'
,
applyCompanyInvoice
:
{},
taxCompanyInvoice
:
{},
},
// 表单校验
rulesApply
:
{
applyCompanyId
:
[
{
required
:
true
,
message
:
"
请选择采购方
"
,
trigger
:
"
change
"
}
],
taxCompanyId
:
[
{
required
:
true
,
message
:
"
请选择销售方
"
,
trigger
:
"
change
"
}
],
totalAmountTax
:
[
{
required
:
true
,
message
:
"
价税合计金额不能为空
"
,
trigger
:
"
blur
"
}
],
invoieType
:
[
{
required
:
true
,
message
:
"
请选择发票类型
"
,
trigger
:
"
change
"
}
]
}
};
},
created
()
{
this
.
getList
();
this
.
getListgetCompanyList
(
1
);
// this.getListgetCompanyList(2);
},
methods
:
{
//获取企业信息数据
getListgetCompanyList
(
bindType
)
{
this
.
loading
=
true
;
const
queryParams
=
{
bindType
:
bindType
,
pageNum
:
1
,
pageSize
:
1000
}
listCompanyInfo
(
queryParams
).
then
(
response
=>
{
if
(
bindType
==
1
)
{
this
.
applyCompanyList
=
response
.
rows
;
}
else
if
(
bindType
==
2
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
this
.
loading
=
false
;
});
},
//查询合作机构list
queryTaxCompanyList
(
applyCompanyId
){
const
queryParams
=
{
inviterId
:
applyCompanyId
,
signStatus
:
2
,
pageNum
:
1
,
pageSize
:
1000
}
querySignList
(
queryParams
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
})
},
/** 查询批量支付列表 */
getList
()
{
this
.
loading
=
true
;
listPayOrderToInvoice
(
this
.
queryParams
).
then
(
response
=>
{
this
.
payOrderList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
resetForm
(
"
queryForm
"
);
this
.
handleQuery
();
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
batchNos
=
selection
.
map
(
item
=>
item
.
batchNo
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
console
.
log
(
this
.
ids
);
console
.
log
(
this
.
batchNos
);
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/payOrder/export
'
,
{
...
this
.
queryParams
},
`payOrder_
${
new
Date
().
getTime
()}
.xlsx`
)
},
viewDetail
(
row
)
{
this
.
$router
.
push
({
path
:
"
/business/payDetails
"
,
query
:
{
orderId
:
row
.
id
,
batchNo
:
row
.
batchNo
}
});
},
// 判断是否显示开票按钮
showInvoiceButton
(
row
)
{
let
invoicueFlag
=
false
;
let
payFlag
=
false
;
//未开票 或 开票失败
if
(
row
.
invoiceStatus
===
1
||
row
.
invoiceStatus
===
3
)
{
invoicueFlag
=
true
;
}
// 支付成功 或 部分成功
if
(
row
.
payStatus
===
3
||
row
.
payStatus
===
5
)
{
payFlag
=
true
;
}
return
(
invoicueFlag
&&
payFlag
);
},
// 申请开票
applyInvoice
(
row
)
{
this
.
openApply
=
true
;
this
.
formApply
.
totalAmountTax
=
row
.
successAmount
;
this
.
formApply
.
batchPayIds
=
[
row
.
id
];
this
.
formApply
.
batchPayOrderIds
=
row
.
id
;
console
.
log
(
this
.
formApply
);
return
;
},
//采购方选择
applyCompanyChange
(
val
)
{
this
.
loading
=
true
;
this
.
formApply
.
applyCompanyInvoice
=
{};
this
.
applyCompanyList
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
)
{
this
.
formApply
.
applyCompanyName
=
item
.
companyName
;
getInvoiceInfoByCompanyId
(
val
).
then
(
response
=>
{
this
.
formApply
.
applyCompanyInvoice
=
response
.
data
;
//查询合作机构list
this
.
queryTaxCompanyList
(
val
);
this
.
loading
=
false
;
}).
finally
(()
=>
{
this
.
loading
=
false
;
});
}
})
},
//销售方选择
taxCompanyChange
(
val
)
{
this
.
formApply
.
taxCompanyInvoice
=
{};
this
.
taxCompanyList
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
)
{
this
.
formApply
.
taxCompanyName
=
item
.
taxUnitName
;
getInfoByTaxUnitId
(
val
).
then
(
response
=>
{
this
.
formApply
.
taxCompanyInvoice
=
response
.
data
;
this
.
loading
=
false
;
}).
finally
(()
=>
{
this
.
loading
=
false
;
});
}
})
},
//确认申请开票
submitApply
()
{
this
.
$refs
.
formApply
.
validate
(
valid
=>
{
if
(
valid
)
{
this
.
loading
=
true
;
this
.
$confirm
(
'
是否确认申请开票?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
addApplyInvoice
(
this
.
formApply
).
then
(
response
=>
{
this
.
loading
=
false
;
if
(
response
.
code
==
200
)
{
this
.
$message
.
success
(
'
申请开票成功!
'
);
this
.
openApply
=
false
;
this
.
getList
();
}
else
{
this
.
$message
.
error
(
response
.
msg
);
}
})
})
}
}).
finally
(()
=>
{
this
.
loading
=
false
;
});
},
// 批量申请开票
batchApplyInvoice
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
const
batchNos
=
row
.
batchNo
||
this
.
batchNos
;
this
.
$confirm
(
'
是否确认为流水号[
'
+
batchNos
+
'
]的数据项申请开票?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
this
.
openApply
=
true
;
//ids转字符串,逗号隔开
this
.
formApply
.
batchPayIds
=
ids
;
this
.
formApply
.
batchPayOrderIds
=
ids
.
join
(
'
,
'
);
const
selectItemList
=
this
.
payOrderList
.
filter
(
item
=>
ids
.
includes
(
item
.
id
));
let
sumSuccessAmount
=
0
;
selectItemList
.
forEach
(
item
=>
{
sumSuccessAmount
+=
Number
(
item
.
successAmount
);
});
this
.
formApply
.
totalAmountTax
=
sumSuccessAmount
;
})
},
}
};
</
script
>
<
style
scoped
lang=
"scss"
>
.
dialogIp
:
:
v-deep
{
.el-dialog__body
{
padding
:
0
!
important
;
}
}
.invoice-info-card
{
margin-bottom
:
10px
;
}
.title-bold
{
text-align
:
left
;
font-weight
:
bold
;
}
</
style
>
src/views/business/invoiceApplyLog/index.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"80px"
>
<el-form-item
label=
"申请开票信息id"
prop=
"applyId"
>
<el-input
v-model=
"queryParams.applyId"
placeholder=
"请输入申请开票信息id"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"标题"
prop=
"title"
>
<el-input
v-model=
"queryParams.title"
placeholder=
"请输入标题"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"操作时间"
prop=
"operateTime"
>
<el-date-picker
clearable
v-model=
"queryParams.operateTime"
type=
"date"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择操作时间"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"操作方"
prop=
"operateCompany"
>
<el-input
v-model=
"queryParams.operateCompany"
placeholder=
"请输入操作方"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"操作用户"
prop=
"operateUsername"
>
<el-input
v-model=
"queryParams.operateUsername"
placeholder=
"请输入操作用户"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"操作用户id"
prop=
"operateUserid"
>
<el-input
v-model=
"queryParams.operateUserid"
placeholder=
"请输入操作用户id"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"排序"
prop=
"sort"
>
<el-input
v-model=
"queryParams.sort"
placeholder=
"请输入排序"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['business:invoiceApplyLog:add']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['business:invoiceApplyLog:edit']"
>
修改
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['business:invoiceApplyLog:remove']"
>
删除
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['business:invoiceApplyLog:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"invoiceApplyLogList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"主键id"
align=
"center"
prop=
"id"
/>
<el-table-column
label=
"申请开票信息id"
align=
"center"
prop=
"applyId"
/>
<el-table-column
label=
"标题"
align=
"center"
prop=
"title"
/>
<el-table-column
label=
"操作时间"
align=
"center"
prop=
"operateTime"
width=
"180"
>
<template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
operateTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作方"
align=
"center"
prop=
"operateCompany"
/>
<el-table-column
label=
"操作用户"
align=
"center"
prop=
"operateUsername"
/>
<el-table-column
label=
"操作用户id"
align=
"center"
prop=
"operateUserid"
/>
<el-table-column
label=
"排序"
align=
"center"
prop=
"sort"
/>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['business:invoiceApplyLog:edit']"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['business:invoiceApplyLog:remove']"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<!-- 添加或修改发票日志对话框 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"500px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"80px"
>
<el-form-item
label=
"申请开票信息id"
prop=
"applyId"
>
<el-input
v-model=
"form.applyId"
placeholder=
"请输入申请开票信息id"
/>
</el-form-item>
<el-form-item
label=
"标题"
prop=
"title"
>
<el-input
v-model=
"form.title"
placeholder=
"请输入标题"
/>
</el-form-item>
<el-form-item
label=
"操作时间"
prop=
"operateTime"
>
<el-date-picker
clearable
v-model=
"form.operateTime"
type=
"date"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择操作时间"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"操作方"
prop=
"operateCompany"
>
<el-input
v-model=
"form.operateCompany"
placeholder=
"请输入操作方"
/>
</el-form-item>
<el-form-item
label=
"操作用户"
prop=
"operateUsername"
>
<el-input
v-model=
"form.operateUsername"
placeholder=
"请输入操作用户"
/>
</el-form-item>
<el-form-item
label=
"操作用户id"
prop=
"operateUserid"
>
<el-input
v-model=
"form.operateUserid"
placeholder=
"请输入操作用户id"
/>
</el-form-item>
<el-form-item
label=
"排序"
prop=
"sort"
>
<el-input
v-model=
"form.sort"
placeholder=
"请输入排序"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
listInvoiceApplyLog
,
getInvoiceApplyLog
,
delInvoiceApplyLog
,
addInvoiceApplyLog
,
updateInvoiceApplyLog
}
from
"
@/api/business/invoiceApplyLog
"
;
export
default
{
name
:
"
InvoiceApplyLog
"
,
data
()
{
return
{
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 发票日志表格数据
invoiceApplyLogList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
applyId
:
null
,
title
:
null
,
operateTime
:
null
,
operateCompany
:
null
,
operateUsername
:
null
,
operateUserid
:
null
,
sort
:
null
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
主键id不能为空
"
,
trigger
:
"
blur
"
}
],
applyId
:
[
{
required
:
true
,
message
:
"
申请开票信息id不能为空
"
,
trigger
:
"
blur
"
}
],
title
:
[
{
required
:
true
,
message
:
"
标题不能为空
"
,
trigger
:
"
blur
"
}
],
operateTime
:
[
{
required
:
true
,
message
:
"
操作时间不能为空
"
,
trigger
:
"
blur
"
}
],
operateCompany
:
[
{
required
:
true
,
message
:
"
操作方不能为空
"
,
trigger
:
"
blur
"
}
],
operateUsername
:
[
{
required
:
true
,
message
:
"
操作用户不能为空
"
,
trigger
:
"
blur
"
}
],
operateUserid
:
[
{
required
:
true
,
message
:
"
操作用户id不能为空
"
,
trigger
:
"
blur
"
}
],
sort
:
[
{
required
:
true
,
message
:
"
排序不能为空
"
,
trigger
:
"
blur
"
}
]
}
};
},
created
()
{
this
.
getList
();
},
methods
:
{
/** 查询发票日志列表 */
getList
()
{
this
.
loading
=
true
;
listInvoiceApplyLog
(
this
.
queryParams
).
then
(
response
=>
{
this
.
invoiceApplyLogList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
applyId
:
null
,
title
:
null
,
operateTime
:
null
,
operateCompany
:
null
,
operateUsername
:
null
,
operateUserid
:
null
,
sort
:
null
};
this
.
resetForm
(
"
form
"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
resetForm
(
"
queryForm
"
);
this
.
handleQuery
();
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
/** 新增按钮操作 */
handleAdd
()
{
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"
添加发票日志
"
;
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
();
const
id
=
row
.
id
||
this
.
ids
getInvoiceApplyLog
(
id
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"
修改发票日志
"
;
});
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateInvoiceApplyLog
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
else
{
addInvoiceApplyLog
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
this
.
$modal
.
confirm
(
'
是否确认删除发票日志编号为"
'
+
ids
+
'
"的数据项?
'
).
then
(
function
()
{
return
delInvoiceApplyLog
(
ids
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
删除成功
"
);
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/invoiceApplyLog/export
'
,
{
...
this
.
queryParams
},
`invoiceApplyLog_
${
new
Date
().
getTime
()}
.xlsx`
)
}
}
};
</
script
>
src/views/business/invoiceInfo/index.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"100px"
>
<!--
<el-form-item
label=
"企业id"
prop=
"companyId"
>
-->
<!--
<el-input-->
<!-- v-model="queryParams.companyId"-->
<!-- placeholder="请输入企业id"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!--
</el-form-item>
-->
<!-- 企业下下拉选择 -->
<el-form-item
label=
"企业"
prop=
"companyId"
>
<el-select
v-model=
"queryParams.companyId"
placeholder=
"请选择企业"
clearable
>
<el-option
v-for=
"item in companyInfoList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"税务登记证号"
prop=
"taxRegistrationNumber"
>
<el-input
v-model=
"queryParams.taxRegistrationNumber"
placeholder=
"请输入税务登记证号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"受票类型"
prop=
"invoiceType"
>
<el-select
v-model=
"queryParams.invoiceType"
placeholder=
"请选择收票类型"
clearable
>
<el-option
v-for=
"item in dict.type.tax_invoice_type"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"创建时间"
>
<el-date-picker
v-model=
"daterangeCreateTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['business:invoiceInfo:add']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['business:invoiceInfo:edit']"
>
修改
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['business:invoiceInfo:remove']"
>
删除
</el-button>
</el-col>
<!--
<el-col
:span=
"1.5"
>
-->
<!--
<el-button-->
<!-- type="warning"-->
<!-- icon="el-icon-download"-->
<!-- size="mini"-->
<!-- @click="handleExport"-->
<!-- v-hasPermi="['business:invoiceInfo:export']"-->
<!-- >导出
</el-button>
-->
<!--
</el-col>
-->
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"invoiceInfoList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"企业名称"
align=
"center"
prop=
"companyName"
/>
<el-table-column
label=
"发票抬头"
align=
"center"
prop=
"invoiceTitle"
/>
<el-table-column
label=
"税务登记证号"
align=
"center"
prop=
"taxRegistrationNumber"
/>
<el-table-column
label=
"开户行"
align=
"center"
prop=
"bankName"
/>
<el-table-column
label=
"开户账号"
align=
"center"
prop=
"bankAccount"
/>
<el-table-column
label=
"地址"
align=
"center"
prop=
"address"
/>
<el-table-column
label=
"电话"
align=
"center"
prop=
"phone"
/>
<el-table-column
label=
"受票类型"
align=
"center"
prop=
"invoiceType"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.tax_invoice_type"
:value=
"scope.row.invoiceType"
/>
</
template
>
</el-table-column>
<!-- <el-table-column label="默认发票" align="center" prop="defaultFlag">-->
<!-- <template slot-scope="scope">-->
<!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.defaultFlag"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
label=
"创建时间"
align=
"center"
prop=
"createTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['business:invoiceInfo:edit']"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['business:invoiceInfo:remove']"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<!-- 添加或修改开票信息对话框 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"600px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<!-- 企业信息下拉框 -->
<el-form-item
label=
"企业信息"
prop=
"companyId"
>
<el-select
v-model=
"form.companyId"
placeholder=
"请选择企业信息"
style=
"width: 100%;"
@
change=
"companyChange"
>
<el-option
v-for=
"item in companyInfoList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"发票抬头"
prop=
"invoiceTitle"
>
<el-input
v-model=
"form.invoiceTitle"
placeholder=
"请输入发票抬头"
disabled
/>
</el-form-item>
<el-form-item
label=
"税务登记证号"
prop=
"taxRegistrationNumber"
>
<el-input
v-model=
"form.taxRegistrationNumber"
placeholder=
"请输入税务登记证号"
disabled
/>
</el-form-item>
<el-form-item
label=
"开户行"
prop=
"bankName"
>
<el-input
v-model=
"form.bankName"
placeholder=
"请输入开户行"
/>
</el-form-item>
<el-form-item
label=
"开户账号"
prop=
"bankAccount"
>
<el-input
v-model=
"form.bankAccount"
placeholder=
"请输入开户账号"
/>
</el-form-item>
<el-form-item
label=
"地址"
prop=
"address"
>
<el-input
v-model=
"form.address"
placeholder=
"请输入地址"
/>
</el-form-item>
<el-form-item
label=
"电话"
prop=
"phone"
>
<el-input
v-model=
"form.phone"
placeholder=
"请输入电话"
/>
</el-form-item>
<el-form-item
label=
"受票类型"
>
<el-radio-group
v-model=
"form.invoiceType"
>
<el-radio
v-for=
"dict in dict.type.tax_invoice_type"
:key=
"dict.value"
:label=
"dict.value"
>
{{dict.label}}
</el-radio>
</el-radio-group>
</el-form-item>
<!-- <el-form-item label="默认发票">-->
<!-- <el-radio-group v-model="form.defaultFlag">-->
<!-- <el-radio v-for="dict in dict.type.sys_user_sex" :key="dict.value" :label="parseInt(dict.value)" >{{dict.label}}</el-radio>-->
<!-- </el-radio-group>-->
<!-- </el-form-item>-->
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
listInvoiceInfo
,
getInvoiceInfo
,
delInvoiceInfo
,
addInvoiceInfo
,
updateInvoiceInfo
}
from
"
@/api/business/invoiceInfo
"
;
import
{
listCompanyInfo
}
from
'
@/api/business/companyInfo
'
export
default
{
name
:
"
InvoiceInfo
"
,
dicts
:
[
'
sys_user_sex
'
,
'
tax_invoice_type
'
],
data
()
{
return
{
// 企业信息
companyInfoList
:
[],
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 开票信息表格数据
invoiceInfoList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 是否默认发票:1是 0否时间范围
daterangeCreateTime
:
[],
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
companyId
:
null
,
companyName
:
null
,
invoiceTitle
:
null
,
taxRegistrationNumber
:
null
,
createTime
:
null
,
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
主键id不能为空
"
,
trigger
:
"
blur
"
}
],
deptId
:
[
{
required
:
true
,
message
:
"
部门id不能为空
"
,
trigger
:
"
blur
"
}
],
companyId
:
[
{
required
:
true
,
message
:
"
企业id不能为空
"
,
trigger
:
"
blur
"
}
],
companyName
:
[
{
required
:
true
,
message
:
"
企业名称不能为空
"
,
trigger
:
"
blur
"
}
],
invoiceTitle
:
[
{
required
:
true
,
message
:
"
发票抬头不能为空
"
,
trigger
:
"
blur
"
}
],
taxRegistrationNumber
:
[
{
required
:
true
,
message
:
"
税务登记证号不能为空
"
,
trigger
:
"
blur
"
}
],
bankName
:
[
{
required
:
true
,
message
:
"
开户行不能为空
"
,
trigger
:
"
blur
"
}
],
bankAccount
:
[
{
required
:
true
,
message
:
"
开户账号不能为空
"
,
trigger
:
"
blur
"
},
{
pattern
:
/^
[
1-9
]{1}[
0-9
]{14}
$|^
[
1-9
]{1}[
0-9
]{16}([
0-9
]
|
[
xX
])
$/
,
message
:
"
请输入正确的开户账号
"
,
trigger
:
"
blur
"
}
],
address
:
[
{
required
:
true
,
message
:
"
地址不能为空
"
,
trigger
:
"
blur
"
}
],
phone
:
[
{
required
:
true
,
message
:
"
电话不能为空
"
,
trigger
:
"
blur
"
},
{
pattern
:
/^1
[
3|4|5|6|7|8|9
][
0-9
]\d{8}
$/
,
message
:
"
请输入正确的手机号码
"
,
trigger
:
"
blur
"
}
],
invoiceType
:
[
{
required
:
true
,
message
:
"
类型:VALUE_ADDED_TAX增值税专用发票 NORMAL_TAX增值税普通发票不能为空
"
,
trigger
:
"
change
"
}
],
defaultFlag
:
[
{
required
:
true
,
message
:
"
是否默认发票:1是 0否不能为空
"
,
trigger
:
"
blur
"
}
],
}
};
},
created
()
{
this
.
getList
();
this
.
getListgetCompanyList
();
},
methods
:
{
/** 查询开票信息列表 */
getList
()
{
this
.
loading
=
true
;
this
.
queryParams
.
params
=
{};
if
(
null
!=
this
.
daterangeCreateTime
&&
''
!=
this
.
daterangeCreateTime
)
{
this
.
queryParams
.
params
[
"
beginCreateTime
"
]
=
this
.
daterangeCreateTime
[
0
];
this
.
queryParams
.
params
[
"
endCreateTime
"
]
=
this
.
daterangeCreateTime
[
1
];
}
listInvoiceInfo
(
this
.
queryParams
).
then
(
response
=>
{
this
.
invoiceInfoList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
deptId
:
null
,
companyId
:
null
,
companyName
:
null
,
invoiceTitle
:
null
,
taxRegistrationNumber
:
null
,
bankName
:
null
,
bankAccount
:
null
,
address
:
null
,
phone
:
null
,
// invoiceType: 'VALUE_ADDED_TAX',
invoiceType
:
'
NORMAL_TAX
'
,
defaultFlag
:
0
,
};
this
.
resetForm
(
"
form
"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
daterangeCreateTime
=
[];
this
.
resetForm
(
"
queryForm
"
);
this
.
handleQuery
();
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
/** 新增按钮操作 */
handleAdd
()
{
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"
添加开票信息
"
;
// this.getListgetCompanyList();
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
();
const
id
=
row
.
id
||
this
.
ids
getInvoiceInfo
(
id
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"
修改开票信息
"
;
});
},
/** 提交按钮 */
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateInvoiceInfo
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
else
{
addInvoiceInfo
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
this
.
$modal
.
confirm
(
'
是否确认删除开票信息编号为"
'
+
ids
+
'
"的数据项?
'
).
then
(
function
()
{
return
delInvoiceInfo
(
ids
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
删除成功
"
);
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/invoiceInfo/export
'
,
{
...
this
.
queryParams
},
`invoiceInfo_
${
new
Date
().
getTime
()}
.xlsx`
)
},
//获取企业信息数据
getListgetCompanyList
()
{
this
.
loading
=
true
;
const
queryParams
=
{
bindType
:
'
1
'
,
pageNum
:
1
,
pageSize
:
1000
}
listCompanyInfo
(
queryParams
).
then
(
response
=>
{
this
.
companyInfoList
=
response
.
rows
;
this
.
loading
=
false
;
});
},
companyChange
(
val
)
{
console
.
log
(
val
)
this
.
companyInfoList
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
)
{
console
.
log
(
item
)
this
.
form
.
companyId
=
item
.
id
;
this
.
form
.
companyName
=
item
.
companyName
;
this
.
form
.
invoiceTitle
=
item
.
companyName
;
this
.
form
.
taxRegistrationNumber
=
item
.
companyCode
;
}
})
}
}
};
</
script
>
src/views/business/onlineTaskInfo/index.vue
0 → 100644
View file @
efb37c3a
<
template
>
<div
class=
"app-container"
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"auto"
>
<el-form-item
label=
"任务编号"
prop=
"taskNo"
>
<el-input
v-model=
"queryParams.taskNo"
placeholder=
"请输入任务编号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"任务名称"
prop=
"taskName"
>
<el-input
v-model=
"queryParams.taskName"
placeholder=
"请输入任务名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"发起企业名称"
prop=
"companyName"
>
<el-input
v-model=
"queryParams.companyName"
placeholder=
"请输入发起企业名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"代发企业名称"
prop=
"taxCompanyName"
>
<el-input
v-model=
"queryParams.taxCompanyName"
placeholder=
"请输入代发企业名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"发布时间"
>
<el-date-picker
v-model=
"daterangeReleaseTime"
style=
"width: 240px"
value-format=
"yyyy-MM-dd HH:mm:ss"
type=
"daterange"
range-separator=
"-"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-row
:gutter=
"10"
class=
"mb8"
>
<el-col
:span=
"1.5"
>
<el-button
type=
"primary"
icon=
"el-icon-plus"
size=
"mini"
@
click=
"handleAdd"
v-hasPermi=
"['business:onlineTaskInfo:add']"
>
发布任务
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"success"
icon=
"el-icon-edit"
size=
"mini"
:disabled=
"single"
@
click=
"handleUpdate"
v-hasPermi=
"['business:onlineTaskInfo:edit']"
>
修改
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"danger"
icon=
"el-icon-delete"
size=
"mini"
:disabled=
"multiple"
@
click=
"handleDelete"
v-hasPermi=
"['business:onlineTaskInfo:remove']"
>
删除
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['business:onlineTaskInfo:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"onlineTaskInfoList"
@
selection-change=
"handleSelectionChange"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"任务编号"
align=
"center"
prop=
"taskNo"
/>
<el-table-column
label=
"任务名称"
align=
"center"
prop=
"taskName"
/>
<el-table-column
label=
"状态"
align=
"center"
prop=
"status"
>
<template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.task_status"
:value=
"scope.row.status"
/>
</
template
>
</el-table-column>
<el-table-column
label=
"所属行业"
align=
"center"
prop=
"industry"
/>
<el-table-column
label=
"发起企业名称"
align=
"center"
prop=
"companyName"
/>
<el-table-column
label=
"代发企业名称"
align=
"center"
prop=
"taxCompanyName"
/>
<el-table-column
label=
"所在区域"
align=
"center"
prop=
"area"
/>
<!-- <el-table-column label="详细地址" align="center" prop="address" />-->
<el-table-column
label=
"服务时间"
align=
"center"
prop=
"serviceTime"
/>
<el-table-column
label=
"零工人数"
align=
"center"
prop=
"needNum"
/>
<!-- <el-table-column label="计费说明" align="center" prop="billDesc" />-->
<!-- <el-table-column label="计费详情" align="center" prop="billDetail" />-->
<el-table-column
label=
"发布时间"
align=
"center"
prop=
"releaseTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
releaseTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-view"
@
click=
"prviewPdfUrl(scope.row)"
>
查看合同
</el-button>
<el-button
v-if=
"scope.row.status == 10"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
v-hasPermi=
"['business:onlineTaskInfo:release']"
@
click=
"handleRelease(scope.row)"
>
发布任务
</el-button>
<el-button
v-if=
"scope.row.status == 11"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
v-hasPermi=
"['business:onlineTaskInfo:recived']"
@
click=
"handleRecived(scope.row)"
>
接收任务
</el-button>
<el-button
v-if=
"scope.row.status == 21"
size=
"mini"
type=
"text"
icon=
"el-icon-upload"
v-hasPermi=
"['business:onlineTaskInfo:importPayInfo']"
@
click=
"importPayInfo(scope.row)"
>
导入名单
</el-button>
<!--
<el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-edit"-->
<!-- @click="handleUpdate(scope.row)"-->
<!-- v-hasPermi="['business:onlineTaskInfo:edit']"-->
<!-- >修改
</el-button>
-->
<!--
<el-button-->
<!-- size="mini"-->
<!-- type="text"-->
<!-- icon="el-icon-delete"-->
<!-- @click="handleDelete(scope.row)"-->
<!-- v-hasPermi="['business:onlineTaskInfo:remove']"-->
<!-- >删除
</el-button>
-->
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page.sync=
"queryParams.pageNum"
:limit.sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<!-- 添加或修改线上任务信息对话框 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"800px"
append-to-body
>
<el-steps
:active=
"active"
finish-status=
"success"
simple
style=
"margin-top: 20px"
>
<el-step
title=
"1、基础信息"
></el-step>
<el-step
title=
"2、确认合同"
></el-step>
</el-steps>
<div
style=
"margin-top: 20px;"
v-if=
"active == 1"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-form-item
label=
"任务编号"
prop=
"taskNo"
>
<el-input
v-model=
"form.taskNo"
placeholder=
"请输入任务编号"
/>
</el-form-item>
<el-form-item
label=
"发起企业"
prop=
"companyId"
>
<el-select
v-model=
"form.companyId"
placeholder=
"请选择采购方"
clearable
@
change=
"applyCompanyChange"
>
<el-option
v-for=
"item in applyCompanyList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"任务名称"
prop=
"taskName"
>
<el-input
v-model=
"form.taskName"
placeholder=
"请输入任务名称"
/>
</el-form-item>
<el-form-item
label=
"所属行业"
prop=
"industry"
>
<el-input
v-model=
"form.industry"
placeholder=
"请输入所属行业"
/>
</el-form-item>
<el-form-item
label=
"代发企业"
prop=
"taxCompanyId"
>
<el-select
v-model=
"form.taxCompanyId"
placeholder=
"请选择销售方"
clearable
@
change=
"taxCompanyChange"
>
<el-option
v-for=
"item in taxCompanyList"
:key=
"item.id"
:label=
"item.taxUnitName"
:value=
"item.id"
></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="地区code" prop="araeCode">-->
<!-- <el-input v-model="form.araeCode" placeholder="请输入地区code" />-->
<!-- </el-form-item>-->
<el-form-item
label=
"所在区域"
prop=
"area"
>
<el-input
v-model=
"form.area"
placeholder=
"请输入所在区域"
/>
</el-form-item>
<!-- <el-form-item label="详细地址" prop="address">-->
<!-- <el-input v-model="form.address" placeholder="请输入详细地址" />-->
<!-- </el-form-item>-->
<el-form-item
label=
"服务时间"
prop=
"serviceTime"
>
<el-date-picker
clearable
placeholder=
"请选择服务时间"
v-model=
"form.serviceTimeArr"
@
change=
"changeServiceTime"
type=
"datetimerange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"零工人数"
prop=
"needNum"
>
<el-input
v-model=
"form.needNum"
type=
"number"
placeholder=
"请输入零工人数"
/>
</el-form-item>
<el-form-item
label=
"计费说明"
prop=
"billDesc"
>
<el-input
v-model=
"form.billDesc"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"计费详情"
prop=
"billDetail"
>
<el-input
v-model=
"form.billDetail"
type=
"textarea"
placeholder=
"请输入内容"
/>
</el-form-item>
<el-form-item
label=
"任务备注"
prop=
"remark"
>
<el-input
v-model=
"form.remark"
type=
"textarea"
placeholder=
"请输入任务备注"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"handleNext(10)"
>
下一步
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</div>
<div
class=
"demo-form"
v-if=
"active == 2"
>
<!-- TODO 待优化 pdf预览 -->
<div
style=
"margin: 20px;padding: 20px;"
>
<el-button
type=
"success"
@
click=
"handleLook"
>
查看合同
</el-button>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"handlePrev"
>
上一步
</el-button>
<el-button
type=
"primary"
@
click=
"submitFormUp(10)"
>
提 交
</el-button>
<el-button
type=
"primary"
@
click=
"submitFormUp(11)"
>
提交并发布
</el-button>
</div>
</div>
</el-dialog>
<!-- 导入名单对话框 -->
<el-dialog
title=
"导入名单选择"
:visible.sync=
"payVisible"
width=
"38%"
center
>
<div
class=
"salarySelectionStyle"
>
<div
class=
"salarySelectionMain"
@
click=
"toLinkBankCard"
>
<div
class=
"salarySelectionImageDiv"
>
<img
class=
"salarySelectionImage"
src=
"../../../assets/images/yhk.png"
alt=
""
>
</div>
<p
class=
"salarySelectionText"
>
批量到银行卡
</p>
</div>
<div
class=
"salarySelectionMain"
@
click=
"toLinkAlipay"
>
<div
class=
"salarySelectionImageDiv"
>
<img
class=
"salarySelectionImage"
src=
"../../../assets/images/zfb.png"
alt=
""
>
</div>
<p
class=
"salarySelectionText"
>
批量到支付宝
</p>
</div>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
listOnlineTaskInfo
,
getOnlineTaskInfo
,
delOnlineTaskInfo
,
addOnlineTaskInfo
,
updateOnlineTaskInfo
,
addOnlineTaskInfoFirst
,
addOnlineTaskInfoSecond
,
updateStatus
}
from
'
@/api/business/onlineTaskInfo
'
import
{
listCompanyInfo
}
from
'
@/api/business/companyInfo
'
import
{
getInvoiceInfoByCompanyId
}
from
'
@/api/business/invoiceInfo
'
import
{
querySignList
}
from
'
@/api/business/unitInfo
'
export
default
{
name
:
"
OnlineTaskInfo
"
,
dicts
:
[
'
task_status
'
],
data
()
{
return
{
// 任务名称
batchPayName
:
''
,
// 支付方式
payType
:
''
,
payVisible
:
false
,
// 合同url
contractUrl
:
'
https://files.openbanks.cn/07/E3/rB7J6GdfiJqABWEzAAGKBP4eDZU392.pdf
'
,
// 步骤条
active
:
1
,
//人力公司list
applyCompanyList
:
[],
//税源地公司
taxCompanyList
:
[],
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 线上任务信息表格数据
onlineTaskInfoList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 发布时间时间范围
daterangeReleaseTime
:
[],
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
taskNo
:
null
,
taskName
:
null
,
status
:
null
,
companyId
:
null
,
companyName
:
null
,
taxCompanyId
:
null
,
taxCompanyName
:
null
,
araeCode
:
null
,
area
:
null
,
releaseTime
:
null
,
},
// 表单参数
form
:
{
serviceTimeArr
:
[],
},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
不能为空
"
,
trigger
:
"
blur
"
}
],
deptId
:
[
{
required
:
true
,
message
:
"
部门id不能为空
"
,
trigger
:
"
blur
"
}
],
taskNo
:
[
{
required
:
true
,
message
:
"
任务编号不能为空
"
,
trigger
:
"
blur
"
}
],
taskName
:
[
{
required
:
true
,
message
:
"
任务名称不能为空
"
,
trigger
:
"
blur
"
}
],
status
:
[
{
required
:
true
,
message
:
"
状态不能为空
"
,
trigger
:
"
blur
"
}
],
industry
:
[
{
required
:
true
,
message
:
"
所属行业不能为空
"
,
trigger
:
"
blur
"
}
],
companyId
:
[
{
required
:
true
,
message
:
"
发起企业id不能为空
"
,
trigger
:
"
blur
"
}
],
companyName
:
[
{
required
:
true
,
message
:
"
发起企业名称不能为空
"
,
trigger
:
"
blur
"
}
],
taxCompanyId
:
[
{
required
:
true
,
message
:
"
代发企业id不能为空
"
,
trigger
:
"
blur
"
}
],
taxCompanyName
:
[
{
required
:
true
,
message
:
"
代发企业名称不能为空
"
,
trigger
:
"
blur
"
}
],
araeCode
:
[
{
required
:
true
,
message
:
"
地区code不能为空
"
,
trigger
:
"
blur
"
}
],
area
:
[
{
required
:
true
,
message
:
"
所在区域不能为空
"
,
trigger
:
"
blur
"
}
],
address
:
[
{
required
:
true
,
message
:
"
详细地址不能为空
"
,
trigger
:
"
blur
"
}
],
serviceTime
:
[
{
required
:
true
,
message
:
"
服务时间不能为空
"
,
trigger
:
"
blur
"
}
],
serviceTimeStart
:
[
{
required
:
true
,
message
:
"
服务时间-开始不能为空
"
,
trigger
:
"
blur
"
}
],
serviceTimeEnd
:
[
{
required
:
true
,
message
:
"
服务时间-结束不能为空
"
,
trigger
:
"
blur
"
}
],
needNum
:
[
{
required
:
true
,
message
:
"
零工人数不能为空
"
,
trigger
:
"
blur
"
}
],
billDesc
:
[
{
required
:
true
,
message
:
"
计费说明不能为空
"
,
trigger
:
"
blur
"
}
],
billDetail
:
[
{
required
:
true
,
message
:
"
计费详情不能为空
"
,
trigger
:
"
blur
"
}
],
reason
:
[
{
required
:
true
,
message
:
"
拒绝原因不能为空
"
,
trigger
:
"
blur
"
}
],
// remark: [
// { required: true, message: "任务备注不能为空", trigger: "blur" }
// ],
contactName
:
[
{
required
:
true
,
message
:
"
合同名称不能为空
"
,
trigger
:
"
blur
"
}
],
contractUrl
:
[
{
required
:
true
,
message
:
"
合同地址不能为空
"
,
trigger
:
"
blur
"
}
],
batchPayOrderId
:
[
{
required
:
true
,
message
:
"
关联批量支付id不能为空
"
,
trigger
:
"
blur
"
}
],
releaseTime
:
[
{
required
:
true
,
message
:
"
发布时间不能为空
"
,
trigger
:
"
blur
"
}
],
}
};
},
created
()
{
this
.
getList
();
this
.
getListgetCompanyList
(
1
);
// this.getListgetCompanyList(2);
},
methods
:
{
//获取企业信息数据
getListgetCompanyList
(
bindType
)
{
this
.
loading
=
true
;
const
queryParams
=
{
bindType
:
bindType
,
pageNum
:
1
,
pageSize
:
1000
}
listCompanyInfo
(
queryParams
).
then
(
response
=>
{
if
(
bindType
==
1
)
{
this
.
applyCompanyList
=
response
.
rows
;
}
else
if
(
bindType
==
2
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
this
.
loading
=
false
;
});
},
//查询合作机构list
queryTaxCompanyList
(
applyCompanyId
){
const
queryParams
=
{
inviterId
:
applyCompanyId
,
signStatus
:
2
,
pageNum
:
1
,
pageSize
:
1000
}
querySignList
(
queryParams
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
taxCompanyList
=
response
.
rows
;
}
})
},
/** 查询线上任务信息列表 */
getList
()
{
this
.
loading
=
true
;
this
.
queryParams
.
params
=
{};
if
(
null
!=
this
.
daterangeReleaseTime
&&
''
!=
this
.
daterangeReleaseTime
)
{
this
.
queryParams
.
params
[
"
beginReleaseTime
"
]
=
this
.
daterangeReleaseTime
[
0
];
this
.
queryParams
.
params
[
"
endReleaseTime
"
]
=
this
.
daterangeReleaseTime
[
1
];
}
listOnlineTaskInfo
(
this
.
queryParams
).
then
(
response
=>
{
this
.
onlineTaskInfoList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
deptId
:
null
,
taskNo
:
null
,
taskName
:
null
,
status
:
"
0
"
,
industry
:
null
,
companyId
:
null
,
companyName
:
null
,
taxCompanyId
:
null
,
taxCompanyName
:
null
,
araeCode
:
null
,
area
:
null
,
address
:
null
,
serviceTime
:
null
,
serviceTimeStart
:
null
,
serviceTimeEnd
:
null
,
needNum
:
null
,
billDesc
:
null
,
billDetail
:
null
,
reason
:
null
,
remark
:
null
,
contactName
:
null
,
contractUrl
:
null
,
batchPayOrderId
:
null
,
releaseTime
:
null
,
};
this
.
resetForm
(
"
form
"
);
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
daterangeReleaseTime
=
[];
this
.
resetForm
(
"
queryForm
"
);
this
.
handleQuery
();
},
// 多选框选中数据
handleSelectionChange
(
selection
)
{
this
.
ids
=
selection
.
map
(
item
=>
item
.
id
)
this
.
single
=
selection
.
length
!==
1
this
.
multiple
=
!
selection
.
length
},
/** 新增按钮操作 */
handleAdd
()
{
this
.
reset
();
this
.
open
=
true
;
this
.
title
=
"
添加线上任务信息
"
;
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
();
const
id
=
row
.
id
||
this
.
ids
getOnlineTaskInfo
(
id
).
then
(
response
=>
{
this
.
form
=
response
.
data
;
this
.
open
=
true
;
this
.
title
=
"
修改线上任务信息
"
;
});
},
/** 提交按钮 */
submitForm
()
{
console
.
log
(
this
.
form
)
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
this
.
form
.
id
!=
null
)
{
updateOnlineTaskInfo
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
else
{
addOnlineTaskInfo
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
}
});
},
submitFormUp
(
status
)
{
// console.log(this.form)
this
.
form
.
status
=
status
;
addOnlineTaskInfoSecond
(
this
.
form
).
then
(
response
=>
{
this
.
open
=
false
;
this
.
getList
();
});
},
/** 删除按钮操作 */
handleDelete
(
row
)
{
const
ids
=
row
.
id
||
this
.
ids
;
this
.
$modal
.
confirm
(
'
是否确认删除线上任务信息编号为"
'
+
ids
+
'
"的数据项?
'
).
then
(
function
()
{
return
delOnlineTaskInfo
(
ids
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
删除成功
"
);
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/onlineTaskInfo/export
'
,
{
...
this
.
queryParams
},
`onlineTaskInfo_
${
new
Date
().
getTime
()}
.xlsx`
)
},
//采购方选择
applyCompanyChange
(
val
)
{
this
.
loading
=
true
;
this
.
form
.
companyInvoice
=
{};
this
.
applyCompanyList
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
)
{
this
.
form
.
companyName
=
item
.
companyName
;
//查询合作机构list
this
.
queryTaxCompanyList
(
val
);
}
})
},
//销售方选择
taxCompanyChange
(
val
)
{
this
.
form
.
taxCompanyInvoice
=
{};
this
.
taxCompanyList
.
forEach
(
item
=>
{
if
(
item
.
id
==
val
)
{
this
.
formApply
.
taxCompanyName
=
item
.
taxUnitName
;
}
})
},
changeServiceTime
(
val
)
{
this
.
form
.
serviceTime
=
val
[
0
]
+
'
~
'
+
val
[
1
];
this
.
form
.
serviceTimeStart
=
val
[
0
];
this
.
form
.
serviceTimeEnd
=
val
[
1
];
},
//上一步
handlePrev
()
{
this
.
active
=
1
;
},
//下一步
handleNext
(
status
)
{
console
.
log
(
this
.
form
)
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
form
.
status
=
status
;
addOnlineTaskInfoFirst
(
this
.
form
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
contractUrl
=
response
.
data
.
contractUrl
;
this
.
form
=
response
.
data
;
this
.
active
=
2
;
}
});
}
});
},
//查看合同
handleLook
()
{
console
.
log
(
this
.
contractUrl
)
if
(
this
.
contractUrl
)
{
window
.
open
(
this
.
contractUrl
,
'
_blank
'
);
}
else
{
this
.
$message
.
warning
(
'
合同URL无效
'
);
}
},
//发布任务
handleRelease
(
row
)
{
this
.
$confirm
(
'
是否确认发布任务?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
const
obj
=
{
id
:
row
.
id
,
status
:
11
}
updateStatus
(
obj
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
$modal
.
msgSuccess
(
"
发布成功
"
);
this
.
getList
();
}
})
}).
catch
(()
=>
{});
},
//接收任务
handleRecived
(
row
)
{
this
.
$confirm
(
'
是否确认接收任务?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
const
obj
=
{
id
:
row
.
id
,
status
:
21
}
updateStatus
(
obj
).
then
(
response
=>
{
if
(
response
.
code
==
200
)
{
this
.
$modal
.
msgSuccess
(
"
接收成功
"
);
this
.
getList
();
}
})
}).
catch
(()
=>
{});
},
//查看合同
prviewPdfUrl
(
row
)
{
if
(
row
.
contractUrl
)
{
window
.
open
(
row
.
contractUrl
,
'
_blank
'
);
}
else
{
this
.
$message
.
warning
(
'
合同URL无效
'
);
}
},
// 导入名单
importPayInfo
(
row
)
{
this
.
payVisible
=
true
;
this
.
batchPayName
=
"
发包任务-
"
+
row
.
taskName
+
"
-
"
+
row
.
id
;
console
.
log
(
this
.
batchPayName
)
},
// 跳转到批量到支付宝
toLinkAlipay
()
{
console
.
log
(
this
.
batchPayName
)
this
.
$router
.
push
({
path
:
"
/transfer/batchToAli
"
,
query
:
{
batchPayName
:
this
.
batchPayName
,
number
:
123
}
});
this
.
payVisible
=
false
},
// 跳转到批量到银行卡
toLinkBankCard
()
{
console
.
log
(
this
.
batchPayName
)
this
.
$router
.
push
({
path
:
"
/transfer/batchToBank
"
,
query
:
{
batchPayName
:
this
.
batchPayName
,
number
:
123
}
});
this
.
payVisible
=
false
},
}
};
</
script
>
<
style
lang=
"scss"
scoped
>
.
app-container
:
:
v-deep
{
// 表单部分样式
.formMain
{
padding-left
:
12px
;
// 操作按钮样式
.buttonOperate
{
text-align
:
right
;
padding-right
:
20px
;
}
}
// 卡片样式
.box-card
{
margin-top
:
12px
;
// 公司信息部分样式
.companyConterMain
{
width
:
100%
;
height
:
140px
;
display
:
flex
;
align-items
:
center
;
justify-content
:
space-between
;
// 公司图标样式
.enterpriseImageMain
{
width
:
200px
;
height
:
100%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.enterpriseImage
{
width
:
120px
;
height
:
68px
;
}
}
// 公司信息内容部分样式
.companyConterInformation
{
width
:
calc
(
100%
-
180px
);
height
:
90%
;
display
:
flex
;
flex-direction
:
column
;
flex-wrap
:
wrap
;
align-content
:
center
;
justify-content
:
space-evenly
;
}
}
// 操作按钮部分样式
.operateConterMain
{
width
:
90%
;
height
:
120px
;
display
:
flex
;
flex-direction
:
column
;
flex-wrap
:
wrap
;
align-content
:
center
;
justify-content
:
space-evenly
;
}
}
// 去发薪-发薪选择对话框样式
.salarySelectionStyle
{
width
:
90%
;
margin
:
0
auto
;
height
:
200px
;
display
:
flex
;
justify-content
:
space-evenly
;
align-items
:
center
;
.salarySelectionMain
{
width
:
40%
;
height
:
90%
;
display
:
flex
;
flex-wrap
:
wrap
;
justify-content
:
center
;
align-items
:
center
;
background-color
:
rgba
(
117
,
190
,
245
,
.1
);
border-radius
:
12px
;
padding
:
12px
;
.salarySelectionImageDiv
{
width
:
100%
;
display
:
flex
;
align-items
:
center
;
justify-content
:
center
;
.salarySelectionImage
{
width
:
120px
;
height
:
120px
;
z-index
:
9999
;
}
}
.salarySelectionText
{
text-align
:
center
;
width
:
100%
;
font-size
:
18px
;
font-weight
:
bold
;
}
}
}
// 自有充值选中对话框样式-选择充值方式
.ownRechargeMain
{
height
:
160px
;
display
:
flex
;
flex-direction
:
column
;
flex-wrap
:
wrap
;
justify-content
:
space-around
;
align-content
:
center
;
.ownRechargeImage
{
width
:
100px
;
height
:
100px
;
}
.ownRechargeButton
{
width
:
32%
;
border-radius
:
16px
;
}
}
}
</
style
>
src/views/business/payOrder/batchToAli.vue
View file @
efb37c3a
...
@@ -264,6 +264,9 @@ export default {
...
@@ -264,6 +264,9 @@ export default {
this
.
defaultPayerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
defaultPayerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
batchForm
.
payerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
batchForm
.
payerAccNo
=
String
(
this
.
$route
.
query
.
number
)
}
}
if
(
this
.
$route
.
query
.
batchPayName
)
{
this
.
batchForm
.
batchPayName
=
this
.
$route
.
query
.
batchPayName
;
}
},
},
methods
:
{
methods
:
{
// 新增明细
// 新增明细
...
...
src/views/business/payOrder/batchToBank.vue
View file @
efb37c3a
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<el-row
:gutter=
"10"
>
<el-row
:gutter=
"10"
>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"业务名称"
prop=
"batchPayName"
>
<el-form-item
label=
"业务名称"
prop=
"batchPayName"
>
<el-input
v-model=
"batchForm.batchPayName"
placeholder=
"请输入业务名称"
/>
<el-input
v-model=
"batchForm.batchPayName"
placeholder=
"请输入业务名称"
/>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"8"
>
<el-col
:span=
"8"
>
...
@@ -185,6 +185,9 @@ export default {
...
@@ -185,6 +185,9 @@ export default {
dicts
:
[
'
pay_type_title
'
,
'
payee_acc_type
'
],
dicts
:
[
'
pay_type_title
'
,
'
payee_acc_type
'
],
data
()
{
data
()
{
return
{
return
{
//发包任务名称
defaultBatchPayName
:
null
,
page
:
{
page
:
{
search
:
''
,
search
:
''
,
rows
:
[],
rows
:
[],
...
@@ -263,6 +266,10 @@ export default {
...
@@ -263,6 +266,10 @@ export default {
this
.
defaultPayerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
defaultPayerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
batchForm
.
payerAccNo
=
String
(
this
.
$route
.
query
.
number
)
this
.
batchForm
.
payerAccNo
=
String
(
this
.
$route
.
query
.
number
)
}
}
if
(
this
.
$route
.
query
.
batchPayName
)
{
this
.
defaultBatchPayName
=
this
.
$route
.
query
.
batchPayName
;
this
.
batchForm
.
batchPayName
=
this
.
$route
.
query
.
batchPayName
;
}
},
},
methods
:
{
methods
:
{
chaheuhashjs
()
{
chaheuhashjs
()
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
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 comment