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
1f6561ba
Commit
1f6561ba
authored
Jul 01, 2025
by
许珑标
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
发薪批次管理;签约优化
parent
8b01ed14
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
834 additions
and
23 deletions
+834
-23
src/api/business/taskBatch.js
src/api/business/taskBatch.js
+62
-0
src/api/business/taskStaff.js
src/api/business/taskStaff.js
+53
-0
src/api/business/unitRechargeBank.js
src/api/business/unitRechargeBank.js
+5
-2
src/views/business/onlineTaskBatch/index.vue
src/views/business/onlineTaskBatch/index.vue
+292
-0
src/views/business/onlineTaskBatch/staff.vue
src/views/business/onlineTaskBatch/staff.vue
+391
-0
src/views/business/onlineTaskInfo/createPayTask.vue
src/views/business/onlineTaskInfo/createPayTask.vue
+7
-3
src/views/business/onlineTaskInfo/index.vue
src/views/business/onlineTaskInfo/index.vue
+15
-14
src/views/business/payOrder/index.vue
src/views/business/payOrder/index.vue
+1
-1
src/views/business/salaryAccount/taxSignComponent.vue
src/views/business/salaryAccount/taxSignComponent.vue
+2
-1
src/views/business/taxUnit/signList.vue
src/views/business/taxUnit/signList.vue
+6
-2
No files found.
src/api/business/taskBatch.js
0 → 100644
View file @
1f6561ba
import
request
from
'
@/utils/request
'
// 查询发包任务-发包批次列表
export
function
listTaskBatch
(
query
)
{
return
request
({
url
:
'
/business/taskBatch/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发包任务-发包批次列表
export
function
taskBatchTable
(
query
)
{
return
request
({
url
:
'
/business/taskBatch/table
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发包任务-发包批次所有列表
export
function
listAllTaskBatch
(
query
)
{
return
request
({
url
:
'
/business/taskBatch/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发包任务-发包批次详细
export
function
getTaskBatch
(
id
)
{
return
request
({
url
:
'
/business/taskBatch/getInfo/
'
+
id
,
method
:
'
get
'
})
}
// 新增发包任务-发包批次
export
function
addTaskBatch
(
data
)
{
return
request
({
url
:
'
/business/taskBatch/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改发包任务-发包批次
export
function
updateTaskBatch
(
data
)
{
return
request
({
url
:
'
/business/taskBatch/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除发包任务-发包批次
export
function
delTaskBatch
(
id
)
{
return
request
({
url
:
'
/business/taskBatch/remove/
'
+
id
,
method
:
'
get
'
})
}
src/api/business/taskStaff.js
0 → 100644
View file @
1f6561ba
import
request
from
'
@/utils/request
'
// 查询发包批次详情列表
export
function
listTaskStaff
(
query
)
{
return
request
({
url
:
'
/business/taskStaff/list
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发包批次详情所有列表
export
function
listAllTaskStaff
(
query
)
{
return
request
({
url
:
'
/business/taskStaff/listAll
'
,
method
:
'
get
'
,
params
:
query
})
}
// 查询发包批次详情详细
export
function
getTaskStaff
(
id
)
{
return
request
({
url
:
'
/business/taskStaff/getInfo/
'
+
id
,
method
:
'
get
'
})
}
// 新增发包批次详情
export
function
addTaskStaff
(
data
)
{
return
request
({
url
:
'
/business/taskStaff/add
'
,
method
:
'
post
'
,
data
:
data
})
}
// 修改发包批次详情
export
function
updateTaskStaff
(
data
)
{
return
request
({
url
:
'
/business/taskStaff/edit
'
,
method
:
'
post
'
,
data
:
data
})
}
// 删除发包批次详情
export
function
delTaskStaff
(
id
)
{
return
request
({
url
:
'
/business/taskStaff/remove/
'
+
id
,
method
:
'
get
'
})
}
src/api/business/unitRechargeBank.js
View file @
1f6561ba
...
@@ -54,8 +54,11 @@ export function delUnitRechargeBank(id) {
...
@@ -54,8 +54,11 @@ export function delUnitRechargeBank(id) {
//获取通道参数数据接口
//获取通道参数数据接口
export
const
getChannelParamAPI
=
(
id
)
=>
{
export
const
getChannelParamAPI
=
(
id
)
=>
{
return
request
({
return
request
({
url
:
'
/business/company/payChannelParams/menu?companyChannelId=
'
+
id
,
url
:
'
/business/company/payChannelParams/menu
'
,
method
:
'
get
'
method
:
'
get
'
,
params
:
{
companyChannelId
:
id
}
})
})
}
}
// 修改通道参数数据接口
// 修改通道参数数据接口
...
...
src/views/business/onlineTaskBatch/index.vue
0 → 100644
View file @
1f6561ba
<
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=
"批次名称"
prop=
"batchName"
>
<el-input
v-model=
"queryParams.batchName"
placeholder=
"请输入批次名称"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"支付状态"
prop=
"batchStatus"
>
<el-select
v-model=
"queryParams.batchStatus"
placeholder=
"请选择支付状态"
@
change=
"handleQuery"
clearable
>
<el-option
v-for=
"dict in dict.type.pay_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=
"handleAdd"
v-hasPermi=
"['business:taskBatch:add']"
>
新增
</el-button>
</el-col>
<el-col
:span=
"1.5"
>
<el-button
type=
"warning"
icon=
"el-icon-download"
size=
"mini"
@
click=
"handleExport"
v-hasPermi=
"['business:taskBatch:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"taskBatchList"
>
<el-table-column
type=
"selection"
width=
"55"
align=
"center"
/>
<el-table-column
label=
"流水号/业务单号"
align=
"center"
prop=
"batchNo"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
batchNo
}}
<div
style=
"color: #1890ff"
>
{{
scope
.
row
.
importBatchNo
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"业务名称"
align=
"center"
prop=
"batchName"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
taskName
}}
<div>
{{
scope
.
row
.
batchName
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"付款账户"
align=
"center"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
payerAccNo
}}
<div>
{{
scope
.
row
.
payerAccName
}}
</div>
</
template
>
</el-table-column>
<el-table-column
label=
"支付状态"
align=
"center"
prop=
"batchStatus"
>
<
template
slot-scope=
"scope"
>
<dict-tag
:options=
"dict.type.pay_status"
:value=
"scope.row.batchStatus"
/>
</
template
>
</el-table-column>
<!-- <el-table-column label="数据来源" align="center" prop="dataSource" width="180">-->
<!-- <template slot-scope="scope">-->
<!-- <el-tag type="success" v-if="scope.row.dataSource && 2 === scope.row.dataSource">接口</el-tag>-->
<!-- <el-tag v-if="scope.row.dataSource && 1 === scope.row.dataSource">平台</el-tag>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
label=
"详情预览"
align=
"center"
>
<
template
slot-scope=
"scope"
v-if=
"scope.row.batchStatus && scope.row.batchStatus !== 8"
>
<p
style=
"margin: 0px;padding: 0px;"
>
发放总笔数:
{{
scope
.
row
.
totalCount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
发放总金额:
{{
scope
.
row
.
totalAmount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
成功笔数:
{{
scope
.
row
.
successCount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
成功金额:
{{
scope
.
row
.
successAmount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
失败笔数:
{{
scope
.
row
.
failCount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
失败金额:
{{
scope
.
row
.
failAmount
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
服务费:
{{
scope
.
row
.
transFee
}}
</p>
<p
style=
"margin: 0px;padding: 0px;"
>
税费:
{{
scope
.
row
.
taxPrice
}}
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"完成时间"
align=
"center"
prop=
"transactionTime"
width=
"180"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
transactionTime
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.batchStatus && scope.row.batchStatus === 8"
size=
"mini"
type=
"text"
icon=
"el-icon-money"
@
click=
"doPay(scope.row)"
>
确认结算
</el-button>
<el-button
v-if=
"scope.row.batchStatus && scope.row.batchStatus === 1"
size=
"mini"
type=
"text"
icon=
"el-icon-money"
@
click=
"doPay(scope.row)"
>
确认支付
</el-button>
<el-button
v-if=
"scope.row.batchStatus && scope.row.batchStatus === 1"
size=
"mini"
type=
"text"
icon=
"el-icon-circle-close"
@
click=
"repeal(scope.row)"
>
订单作废
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-s-order"
@
click=
"viewDetail(scope.row)"
>
查看明细
</el-button>
<el-button
v-if=
"scope.row.batchStatus && (scope.row.batchStatus === 4 || scope.row.batchStatus === 5)"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"doRepay(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"
/>
</div>
</template>
<
script
>
import
{
taskBatchTable
}
from
"
@/api/business/taskBatch
"
;
import
{
doPay
,
repealOrder
}
from
"
@/api/business/payOrder
"
;
export
default
{
name
:
"
TaskBatch
"
,
dicts
:
[
'
pay_status
'
],
data
()
{
return
{
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 发包任务-发包批次表格数据
taskBatchList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
onlineTaskId
:
null
,
batchName
:
null
,
totalAmount
:
null
,
taxMoney
:
null
,
staffCount
:
null
,
deptId
:
null
,
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
主键ID不能为空
"
,
trigger
:
"
blur
"
}
],
onlineTaskId
:
[
{
required
:
true
,
message
:
"
发包任务ID不能为空
"
,
trigger
:
"
blur
"
}
],
batchName
:
[
{
required
:
true
,
message
:
"
批次名称不能为空
"
,
trigger
:
"
blur
"
}
],
totalAmount
:
[
{
required
:
true
,
message
:
"
总金额不能为空
"
,
trigger
:
"
blur
"
}
],
taxMoney
:
[
{
required
:
true
,
message
:
"
税费不能为空
"
,
trigger
:
"
blur
"
}
],
staffCount
:
[
{
required
:
true
,
message
:
"
员工数量不能为空
"
,
trigger
:
"
blur
"
}
],
deptId
:
[
{
required
:
true
,
message
:
"
所属部门不能为空
"
,
trigger
:
"
blur
"
}
],
}
};
},
created
()
{
this
.
getList
();
},
methods
:
{
/** 查询发包任务-发包批次列表 */
getList
()
{
this
.
loading
=
true
;
taskBatchTable
(
this
.
queryParams
).
then
(
response
=>
{
this
.
taskBatchList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
onlineTaskId
:
null
,
batchName
:
null
,
totalAmount
:
null
,
taxMoney
:
null
,
staffCount
:
null
,
deptId
:
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
();
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/taskBatch/export
'
,
{
...
this
.
queryParams
},
`taskBatch_
${
new
Date
().
getTime
()}
.xlsx`
)
},
doPay
(
row
)
{
if
(
row
&&
row
.
payId
)
{
this
.
$confirm
(
'
确定对该任务[
'
+
row
.
batchNo
+
"
:
"
+
row
.
batchPayName
+
'
]进行支付操作?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
doPay
(
row
.
payId
).
then
(
resp
=>
{
if
(
200
===
resp
.
code
)
{
this
.
$modal
.
msgSuccess
(
"
操作成功
"
);
this
.
getList
()
}
})
}).
catch
(()
=>
{
});
}
},
repeal
(
row
)
{
this
.
$confirm
(
'
确定废弃该任务[
'
+
row
.
batchNo
+
"
:
"
+
row
.
batchPayName
+
'
]?
'
,
'
提示
'
,
{
confirmButtonText
:
'
确定
'
,
cancelButtonText
:
'
取消
'
,
type
:
'
warning
'
}).
then
(()
=>
{
repealOrder
(
row
.
payId
).
then
(
resp
=>
{
this
.
$modal
.
msgSuccess
(
"
操作成功
"
);
this
.
getList
()
})
}).
catch
(()
=>
{
});
},
doRepay
(
row
)
{
if
(
row
.
payId
)
{
this
.
rePayObj
=
{
batchName
:
row
.
batchPayName
,
batchNo
:
row
.
batchNo
,
batchId
:
row
.
id
}
this
.
rePayPanel
=
true
}
},
viewDetail
(
row
)
{
this
.
$router
.
push
({
path
:
"
/business/payDetails
"
,
query
:
{
orderId
:
row
.
payId
,
batchNo
:
row
.
batchNo
}
});
},
}
};
</
script
>
src/views/business/onlineTaskBatch/staff.vue
0 → 100644
View file @
1f6561ba
<
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=
"onlineTaskId"
>
<el-input
v-model=
"queryParams.onlineTaskId"
placeholder=
"请输入发包任务ID"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"发包批次名id"
prop=
"onlineTaskBatchId"
>
<el-input
v-model=
"queryParams.onlineTaskBatchId"
placeholder=
"请输入发包批次名id"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"员工姓名"
prop=
"staffName"
>
<el-input
v-model=
"queryParams.staffName"
placeholder=
"请输入员工姓名"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"员工身份证号"
prop=
"staffIdNo"
>
<el-input
v-model=
"queryParams.staffIdNo"
placeholder=
"请输入员工身份证号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"员工手机号码"
prop=
"staffMobile"
>
<el-input
v-model=
"queryParams.staffMobile"
placeholder=
"请输入员工手机号码"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"员工收款账号"
prop=
"staffAccNo"
>
<el-input
v-model=
"queryParams.staffAccNo"
placeholder=
"请输入员工收款账号"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"交易金额"
prop=
"salaryAmount"
>
<el-input
v-model=
"queryParams.salaryAmount"
placeholder=
"请输入交易金额"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-input
v-model=
"queryParams.remark"
placeholder=
"请输入备注"
clearable
@
keyup.enter.native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"所属部门"
prop=
"deptId"
>
<el-input
v-model=
"queryParams.deptId"
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:taskStaff: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:taskStaff: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:taskStaff: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:taskStaff:export']"
>
导出
</el-button>
</el-col>
<right-toolbar
:showSearch.sync=
"showSearch"
@
queryTable=
"getList"
></right-toolbar>
</el-row>
<el-table
v-loading=
"loading"
:data=
"taskStaffList"
@
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=
"onlineTaskId"
/>
<el-table-column
label=
"发包批次名id"
align=
"center"
prop=
"onlineTaskBatchId"
/>
<el-table-column
label=
"员工姓名"
align=
"center"
prop=
"staffName"
/>
<el-table-column
label=
"员工身份证号"
align=
"center"
prop=
"staffIdNo"
/>
<el-table-column
label=
"员工手机号码"
align=
"center"
prop=
"staffMobile"
/>
<el-table-column
label=
"员工收款账号"
align=
"center"
prop=
"staffAccNo"
/>
<el-table-column
label=
"收款账号类型:1-银行卡;2-支付宝"
align=
"center"
prop=
"staffAccType"
/>
<el-table-column
label=
"交易金额"
align=
"center"
prop=
"salaryAmount"
/>
<el-table-column
label=
"备注"
align=
"center"
prop=
"remark"
/>
<el-table-column
label=
"所属部门"
align=
"center"
prop=
"deptId"
/>
<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:taskStaff:edit']"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['business:taskStaff: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=
"onlineTaskId"
>
<el-input
v-model=
"form.onlineTaskId"
placeholder=
"请输入发包任务ID"
/>
</el-form-item>
<el-form-item
label=
"发包批次名id"
prop=
"onlineTaskBatchId"
>
<el-input
v-model=
"form.onlineTaskBatchId"
placeholder=
"请输入发包批次名id"
/>
</el-form-item>
<el-form-item
label=
"员工姓名"
prop=
"staffName"
>
<el-input
v-model=
"form.staffName"
placeholder=
"请输入员工姓名"
/>
</el-form-item>
<el-form-item
label=
"员工身份证号"
prop=
"staffIdNo"
>
<el-input
v-model=
"form.staffIdNo"
placeholder=
"请输入员工身份证号"
/>
</el-form-item>
<el-form-item
label=
"员工手机号码"
prop=
"staffMobile"
>
<el-input
v-model=
"form.staffMobile"
placeholder=
"请输入员工手机号码"
/>
</el-form-item>
<el-form-item
label=
"员工收款账号"
prop=
"staffAccNo"
>
<el-input
v-model=
"form.staffAccNo"
placeholder=
"请输入员工收款账号"
/>
</el-form-item>
<el-form-item
label=
"交易金额"
prop=
"salaryAmount"
>
<el-input
v-model=
"form.salaryAmount"
placeholder=
"请输入交易金额"
/>
</el-form-item>
<el-form-item
label=
"备注"
prop=
"remark"
>
<el-input
v-model=
"form.remark"
placeholder=
"请输入备注"
/>
</el-form-item>
<el-form-item
label=
"所属部门"
prop=
"deptId"
>
<el-input
v-model=
"form.deptId"
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
{
listTaskStaff
,
getTaskStaff
,
delTaskStaff
,
addTaskStaff
,
updateTaskStaff
}
from
"
@/api/business/taskStaff
"
;
export
default
{
name
:
"
TaskStaff
"
,
data
()
{
return
{
// 根路径
baseURL
:
process
.
env
.
VUE_APP_BASE_API
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 发包批次详情表格数据
taskStaffList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 查询参数
queryParams
:
{
pageNum
:
1
,
pageSize
:
10
,
onlineTaskId
:
null
,
onlineTaskBatchId
:
null
,
staffName
:
null
,
staffIdNo
:
null
,
staffMobile
:
null
,
staffAccNo
:
null
,
staffAccType
:
null
,
salaryAmount
:
null
,
remark
:
null
,
deptId
:
null
,
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
id
:
[
{
required
:
true
,
message
:
"
主键ID不能为空
"
,
trigger
:
"
blur
"
}
],
onlineTaskId
:
[
{
required
:
true
,
message
:
"
发包任务ID不能为空
"
,
trigger
:
"
blur
"
}
],
onlineTaskBatchId
:
[
{
required
:
true
,
message
:
"
发包批次名id不能为空
"
,
trigger
:
"
blur
"
}
],
staffName
:
[
{
required
:
true
,
message
:
"
员工姓名不能为空
"
,
trigger
:
"
blur
"
}
],
staffIdNo
:
[
{
required
:
true
,
message
:
"
员工身份证号不能为空
"
,
trigger
:
"
blur
"
}
],
staffMobile
:
[
{
required
:
true
,
message
:
"
员工手机号码不能为空
"
,
trigger
:
"
blur
"
}
],
staffAccNo
:
[
{
required
:
true
,
message
:
"
员工收款账号不能为空
"
,
trigger
:
"
blur
"
}
],
staffAccType
:
[
{
required
:
true
,
message
:
"
收款账号类型:1-银行卡;2-支付宝不能为空
"
,
trigger
:
"
change
"
}
],
salaryAmount
:
[
{
required
:
true
,
message
:
"
交易金额不能为空
"
,
trigger
:
"
blur
"
}
],
remark
:
[
{
required
:
true
,
message
:
"
备注不能为空
"
,
trigger
:
"
blur
"
}
],
deptId
:
[
{
required
:
true
,
message
:
"
所属部门不能为空
"
,
trigger
:
"
blur
"
}
],
}
};
},
created
()
{
this
.
getList
();
},
methods
:
{
/** 查询发包批次详情列表 */
getList
()
{
this
.
loading
=
true
;
listTaskStaff
(
this
.
queryParams
).
then
(
response
=>
{
this
.
taskStaffList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
// 取消按钮
cancel
()
{
this
.
open
=
false
;
this
.
reset
();
},
// 表单重置
reset
()
{
this
.
form
=
{
id
:
null
,
onlineTaskId
:
null
,
onlineTaskBatchId
:
null
,
staffName
:
null
,
staffIdNo
:
null
,
staffMobile
:
null
,
staffAccNo
:
null
,
staffAccType
:
null
,
salaryAmount
:
null
,
remark
:
null
,
deptId
:
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
getTaskStaff
(
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
)
{
updateTaskStaff
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
修改成功
"
);
this
.
open
=
false
;
this
.
getList
();
});
}
else
{
addTaskStaff
(
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
delTaskStaff
(
ids
);
}).
then
(()
=>
{
this
.
getList
();
this
.
$modal
.
msgSuccess
(
"
删除成功
"
);
}).
catch
(()
=>
{});
},
/** 导出按钮操作 */
handleExport
()
{
this
.
download
(
'
business/taskStaff/export
'
,
{
...
this
.
queryParams
},
`taskStaff_
${
new
Date
().
getTime
()}
.xlsx`
)
}
}
};
</
script
>
src/views/business/onlineTaskInfo/createPayTask.vue
View file @
1f6561ba
<
template
>
<
template
>
<div
class=
"app-container"
>
<div
class=
"app-container"
>
<el-page-header
@
back=
"handleClose"
/>
<el-page-header
@
back=
"handleClose"
content=
"发布任务"
/>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
style=
"margin-top: 30px"
>
<el-form-item
label=
"发起企业"
prop=
"companyId"
>
<el-form-item
label=
"发起企业"
prop=
"companyId"
>
<el-select
v-model=
"form.companyId"
placeholder=
"请选择发起企业"
@
change=
"applyCompanyChange"
>
<el-select
v-model=
"form.companyId"
placeholder=
"请选择发起企业"
@
change=
"applyCompanyChange"
>
<el-option
v-for=
"item in applyCompanyList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
<el-option
v-for=
"item in applyCompanyList"
:key=
"item.id"
:label=
"item.companyName"
:value=
"item.id"
></el-option>
...
@@ -22,7 +22,10 @@
...
@@ -22,7 +22,10 @@
<el-input
v-model=
"form.industry"
placeholder=
"请输入所属行业"
/>
<el-input
v-model=
"form.industry"
placeholder=
"请输入所属行业"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"任务时间"
prop=
"serviceTime"
>
<el-form-item
label=
"任务时间"
prop=
"serviceTime"
>
<el-date-picker
clearable
placeholder=
"请选择服务时间"
v-model=
"form.serviceTimeArr"
@
change=
"changeServiceTime"
<el-date-picker
clearable
placeholder=
"请选择服务时间"
v-model=
"form.serviceTimeArr"
@
change=
"changeServiceTime"
value-format=
"yyyy-MM-dd"
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
type=
"daterange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-date-picker>
</el-form-item>
</el-form-item>
...
@@ -118,6 +121,7 @@ export default {
...
@@ -118,6 +121,7 @@ export default {
submitForm
()
{
submitForm
()
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
this
.
$refs
[
"
form
"
].
validate
(
valid
=>
{
if
(
!
valid
)
return
;
if
(
!
valid
)
return
;
this
.
form
.
status
=
11
addOnlineTaskInfo
(
this
.
form
).
then
(
response
=>
{
addOnlineTaskInfo
(
this
.
form
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
$modal
.
msgSuccess
(
"
新增成功
"
);
this
.
handleClose
()
this
.
handleClose
()
...
...
src/views/business/onlineTaskInfo/index.vue
View file @
1f6561ba
...
@@ -69,14 +69,14 @@
...
@@ -69,14 +69,14 @@
<el-table-column
label=
"所属行业"
align=
"center"
prop=
"industry"
/>
<el-table-column
label=
"所属行业"
align=
"center"
prop=
"industry"
/>
<el-table-column
label=
"发起企业名称"
align=
"center"
prop=
"companyName"
/>
<el-table-column
label=
"发起企业名称"
align=
"center"
prop=
"companyName"
/>
<el-table-column
label=
"代发企业名称"
align=
"center"
prop=
"taxCompanyName"
/>
<el-table-column
label=
"代发企业名称"
align=
"center"
prop=
"taxCompanyName"
/>
<el-table-column
label=
"任务金额"
align=
"center"
prop=
"amount"
/
>
<!-- <el-table-column label="任务金额" align="center" prop="amount" />--
>
<el-table-column
label=
"税率"
align=
"center"
prop=
"taxRate"
/>
<el-table-column
label=
"税率"
align=
"center"
prop=
"taxRate"
/>
<el-table-column
label=
"税费"
align=
"center"
prop=
"taxAmount"
/
>
<!-- <el-table-column label="税费" align="center" prop="taxAmount" />--
>
<!-- <el-table-column label="结算金额" align="center" prop="amount"/>-->
<!-- <el-table-column label="结算金额" align="center" prop="amount"/>-->
<el-table-column
label=
"所在区域"
align=
"center"
prop=
"area"
/>
<el-table-column
label=
"所在区域"
align=
"center"
prop=
"area"
/>
<!-- <el-table-column label="详细地址" align="center" prop="address" />-->
<!-- <el-table-column label="详细地址" align="center" prop="address" />-->
<el-table-column
label=
"服务时间"
align=
"center"
prop=
"serviceTime"
/>
<el-table-column
label=
"服务时间"
align=
"center"
prop=
"serviceTime"
/>
<el-table-column
label=
"零工人数"
align=
"center"
prop=
"needNum"
/
>
<!-- <el-table-column label="零工人数" align="center" prop="needNum" />--
>
<!-- <el-table-column label="计费说明" align="center" prop="billDesc" />-->
<!-- <el-table-column label="计费说明" align="center" prop="billDesc" />-->
<!-- <el-table-column label="任务详情" align="center" prop="billDetail" />-->
<!-- <el-table-column label="任务详情" align="center" prop="billDetail" />-->
<el-table-column
label=
"发布时间"
align=
"center"
prop=
"releaseTime"
width=
"180"
>
<el-table-column
label=
"发布时间"
align=
"center"
prop=
"releaseTime"
width=
"180"
>
...
@@ -86,8 +86,8 @@
...
@@ -86,8 +86,8 @@
</el-table-column>
</el-table-column>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
fixed=
"right"
>
<el-table-column
label=
"操作"
align=
"center"
class-name=
"small-padding fixed-width"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.status == 0 && checkPermi(['business:onlineTaskInfo:recived'])"
size=
"mini"
<!--
<el-button
v-if=
"scope.row.status == 0 && checkPermi(['business:onlineTaskInfo:recived'])"
size=
"mini"
--
>
type=
"text"
icon=
"el-icon-s-order"
@
click=
"setTaxRate(scope.row)"
>
设置税率
</el-button
>
<!-- type="text" icon="el-icon-s-order" @click="setTaxRate(scope.row)">设置税率
</el-button>
--
>
<el-button
v-if=
"scope.row.status == 1 && checkPermi(['business:onlineTaskInfo:add'])"
size=
"mini"
type=
"text"
<el-button
v-if=
"scope.row.status == 1 && checkPermi(['business:onlineTaskInfo:add'])"
size=
"mini"
type=
"text"
icon=
"el-icon-s-check"
@
click=
"sealContract(scope.row)"
>
确认任务
</el-button>
icon=
"el-icon-s-check"
@
click=
"sealContract(scope.row)"
>
确认任务
</el-button>
...
@@ -96,7 +96,7 @@
...
@@ -96,7 +96,7 @@
<el-button
v-if=
"scope.row.status == 10 && checkPermi(['business:onlineTaskInfo:release'])"
size=
"mini"
<el-button
v-if=
"scope.row.status == 10 && checkPermi(['business:onlineTaskInfo:release'])"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"handleRelease(scope.row)"
>
发布任务
</el-button>
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"handleRelease(scope.row)"
>
发布任务
</el-button>
<el-button
v-if=
"scope.row.status == 11 && checkPermi(['business:onlineTaskInfo:recived'])"
size=
"mini"
<el-button
v-if=
"scope.row.status == 11 && checkPermi(['business:onlineTaskInfo:recived'])"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"
handleRecived
(scope.row)"
>
接收任务
</el-button>
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"
setTaxRate
(scope.row)"
>
接收任务
</el-button>
<el-button
v-if=
"scope.row.status == 21 && checkPermi(['business:onlineTaskInfo:importPayInfo'])"
size=
"mini"
<el-button
v-if=
"scope.row.status == 21 && checkPermi(['business:onlineTaskInfo:importPayInfo'])"
size=
"mini"
type=
"text"
icon=
"el-icon-upload"
@
click=
"importPayInfo(scope.row)"
>
导入名单
</el-button>
type=
"text"
icon=
"el-icon-upload"
@
click=
"importPayInfo(scope.row)"
>
导入名单
</el-button>
<!--
<el-button-->
<!--
<el-button-->
...
@@ -246,19 +246,20 @@
...
@@ -246,19 +246,20 @@
<el-form-item
label=
"代发企业"
prop=
"taxCompanyName"
>
<el-form-item
label=
"代发企业"
prop=
"taxCompanyName"
>
<el-input
v-model=
"formTaxRate.taxCompanyName"
placeholder=
"请输入代发企业"
disabled
/>
<el-input
v-model=
"formTaxRate.taxCompanyName"
placeholder=
"请输入代发企业"
disabled
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"任务金额"
prop=
"amount"
>
<!-- <el-form-item label="任务金额" prop="amount">--
>
<el-input-number
v-model=
"formTaxRate.amount"
placeholder=
"请输入任务金额"
style=
"width: 100%;"
/
>
<!-- <el-input-number v-model="formTaxRate.amount" placeholder="请输入任务金额" style="width: 100%;" />--
>
</el-form-item
>
<!-- </el-form-item>--
>
<el-form-item
label=
"税率"
prop=
"taxRate"
>
<el-form-item
label=
"税率"
prop=
"taxRate"
>
<el-input-number
v-model=
"formTaxRate.taxRate"
placeholder=
"请输入税率"
style=
"width: 100%;"
:precision=
"6"
<el-input-number
v-model=
"formTaxRate.taxRate"
placeholder=
"请输入税率"
style=
"width: 100%;"
:precision=
"6"
:step=
"0.001"
:min=
"0"
:max=
"1"
@
change=
"calcTaxAmount"
/>
:step=
"0.001"
:min=
"0"
:max=
"1"
@
change=
"calcTaxAmount"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"税费"
prop=
"taxAmount"
>
<!-- <el-form-item label="税费" prop="taxAmount">--
>
<el-input-number
v-model=
"formTaxRate.taxAmount"
placeholder=
"请输入税费"
disabled
style=
"width: 100%;"
/
>
<!-- <el-input-number v-model="formTaxRate.taxAmount" placeholder="请输入税费" disabled style="width: 100%;" />--
>
</el-form-item
>
<!-- </el-form-item>--
>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
style=
"text-align: center;"
>
<div
slot=
"footer"
class=
"dialog-footer"
style=
"text-align: right;"
>
<el-button
type=
"primary"
@
click.native=
"saveTaxRate(1)"
>
保存税率
</el-button>
<el-button
@
click.native=
"taxRateVisible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click.native=
"saveTaxRate(21)"
>
确认接收
</el-button>
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</div>
...
...
src/views/business/payOrder/index.vue
View file @
1f6561ba
...
@@ -108,7 +108,7 @@
...
@@ -108,7 +108,7 @@
@
click=
"repeal(scope.row)"
>
订单作废
</el-button>
@
click=
"repeal(scope.row)"
>
订单作废
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-s-order"
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-s-order"
@
click=
"viewDetail(scope.row)"
>
查看明细
</el-button>
@
click=
"viewDetail(scope.row)"
>
查看明细
</el-button>
<el-button
v-if=
"scope.row.payStatus &&
scope.row.payStatus === 4 || scope.row.payStatus === 5
"
<el-button
v-if=
"scope.row.payStatus &&
(scope.row.payStatus === 4 || scope.row.payStatus === 5)
"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
size=
"mini"
type=
"text"
icon=
"el-icon-s-promotion"
@
click=
"doRepay(scope.row)"
>
失败补发
</el-button>
@
click=
"doRepay(scope.row)"
>
失败补发
</el-button>
</
template
>
</
template
>
...
...
src/views/business/salaryAccount/taxSignComponent.vue
View file @
1f6561ba
...
@@ -207,6 +207,7 @@ export default {
...
@@ -207,6 +207,7 @@ export default {
// 线下签约-点击确认方法
// 线下签约-点击确认方法
onBehalfOfContractSubmitFN
()
{
onBehalfOfContractSubmitFN
()
{
this
.
signForm
.
contractUrl
=
this
.
contractUrl
this
.
signForm
.
contractUrl
=
this
.
contractUrl
this
.
signForm
.
contractType
=
2
;
console
.
log
(
'
新方法传入的数据
'
,
this
.
signForm
);
console
.
log
(
'
新方法传入的数据
'
,
this
.
signForm
);
addLaborSign
(
this
.
signForm
).
then
(
resp
=>
{
addLaborSign
(
this
.
signForm
).
then
(
resp
=>
{
if
(
200
===
resp
.
code
)
{
if
(
200
===
resp
.
code
)
{
...
@@ -411,4 +412,4 @@ export default {
...
@@ -411,4 +412,4 @@ export default {
}
}
}
}
}
}
</
style
>
</
style
>
\ No newline at end of file
src/views/business/taxUnit/signList.vue
View file @
1f6561ba
...
@@ -132,8 +132,12 @@ export default {
...
@@ -132,8 +132,12 @@ export default {
},
},
doAgree
(
row
)
{
doAgree
(
row
)
{
this
.
doAgreeData
=
row
this
.
doAgreeData
=
row
this
.
contractUrl
=
row
.
contractUrl
if
(
row
.
contractType
&&
2
===
row
.
contractType
)
{
this
.
doAgreePanelVisible
=
true
this
.
doAgreePanelSubmit
();
}
else
{
this
.
contractUrl
=
row
.
contractUrl
this
.
doAgreePanelVisible
=
true
}
},
},
async
confirmSealContractFile
()
{
async
confirmSealContractFile
()
{
const
confirmResult
=
await
this
.
$confirm
(
`确认签订与
${
this
.
doAgreeData
.
inviterName
}
的合约吗?`
,
'
操作提示
'
,
{
const
confirmResult
=
await
this
.
$confirm
(
`确认签订与
${
this
.
doAgreeData
.
inviterName
}
的合约吗?`
,
'
操作提示
'
,
{
...
...
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