Commit 050c7203 authored by 许珑标's avatar 许珑标

业务基础代码

parent 1aa6c479
import request from '@/utils/request'
// 查询发薪详情列表
export function listPayOutDetail(query) {
return request({
url: '/business/payOutDetail/list',
method: 'get',
params: query
})
}
// 查询发薪详情所有列表
export function listAllPayOutDetail(query) {
return request({
url: '/business/payOutDetail/listAll',
method: 'get',
params: query
})
}
// 查询发薪详情详细
export function getPayOutDetail(id) {
return request({
url: '/business/payOutDetail/getInfo/' + id,
method: 'get'
})
}
// 新增发薪详情
export function addPayOutDetail(data) {
return request({
url: '/business/payOutDetail/add',
method: 'post',
data: data
})
}
// 修改发薪详情
export function updatePayOutDetail(data) {
return request({
url: '/business/payOutDetail/edit',
method: 'post',
data: data
})
}
// 删除发薪详情
export function delPayOutDetail(id) {
return request({
url: '/business/payOutDetail/remove/' + id,
method: 'get'
})
}
import request from '@/utils/request'
// 查询发薪分组列表
export function listPayOutGroup(query) {
return request({
url: '/business/payOutGroup/list',
method: 'get',
params: query
})
}
// 查询发薪分组所有列表
export function listAllPayOutGroup(query) {
return request({
url: '/business/payOutGroup/listAll',
method: 'get',
params: query
})
}
// 查询发薪分组详细
export function getPayOutGroup(id) {
return request({
url: '/business/payOutGroup/getInfo/' + id,
method: 'get'
})
}
// 新增发薪分组
export function addPayOutGroup(data) {
return request({
url: '/business/payOutGroup/add',
method: 'post',
data: data
})
}
// 修改发薪分组
export function updatePayOutGroup(data) {
return request({
url: '/business/payOutGroup/edit',
method: 'post',
data: data
})
}
// 删除发薪分组
export function delPayOutGroup(id) {
return request({
url: '/business/payOutGroup/remove/' + id,
method: 'get'
})
}
import request from '@/utils/request'
// 查询发薪批次信息列表
export function listPayOutRecord(query) {
return request({
url: '/business/payOutRecord/list',
method: 'get',
params: query
})
}
// 查询发薪批次信息所有列表
export function listAllPayOutRecord(query) {
return request({
url: '/business/payOutRecord/listAll',
method: 'get',
params: query
})
}
// 查询发薪批次信息详细
export function getPayOutRecord(id) {
return request({
url: '/business/payOutRecord/getInfo/' + id,
method: 'get'
})
}
// 新增发薪批次信息
export function addPayOutRecord(data) {
return request({
url: '/business/payOutRecord/add',
method: 'post',
data: data
})
}
// 修改发薪批次信息
export function updatePayOutRecord(data) {
return request({
url: '/business/payOutRecord/edit',
method: 'post',
data: data
})
}
// 删除发薪批次信息
export function delPayOutRecord(id) {
return request({
url: '/business/payOutRecord/remove/' + id,
method: 'get'
})
}
<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="batchNo">
<el-input
v-model="queryParams.batchNo"
placeholder="请输入工资批次编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工资分组编号" prop="groupNo">
<el-input
v-model="queryParams.groupNo"
placeholder="请输入工资分组编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工资月份" prop="salaryMonth">
<el-date-picker clearable
v-model="queryParams.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资月份">
</el-date-picker>
</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="companyCode">
<el-input
v-model="queryParams.companyCode"
placeholder="请输入发放单位编码(信用代码)"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="发放时间" prop="payTime">
<el-date-picker clearable
v-model="queryParams.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发放时间">
</el-date-picker>
</el-form-item>
<el-form-item label="收薪人员ID" prop="personalId">
<el-input
v-model="queryParams.personalId"
placeholder="请输入收薪人员ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="人员名称" prop="userName">
<el-input
v-model="queryParams.userName"
placeholder="请输入人员名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="人员身份证号" prop="userCode">
<el-input
v-model="queryParams.userCode"
placeholder="请输入人员身份证号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="收款账号" prop="payeeAccNo">
<el-input
v-model="queryParams.payeeAccNo"
placeholder="请输入收款账号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="岗位名称" prop="postName">
<el-input
v-model="queryParams.postName"
placeholder="请输入岗位名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="岗位工资" prop="postWage">
<el-input
v-model="queryParams.postWage"
placeholder="请输入岗位工资"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="应发工资" prop="salaryPayable">
<el-input
v-model="queryParams.salaryPayable"
placeholder="请输入应发工资"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="实发金额" prop="actualPayable">
<el-input
v-model="queryParams.actualPayable"
placeholder="请输入实发金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失业保险缴费基数" prop="sybxBase">
<el-input
v-model="queryParams.sybxBase"
placeholder="请输入失业保险缴费基数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失业保险公司承担比例" prop="sybxCompanyRate">
<el-input
v-model="queryParams.sybxCompanyRate"
placeholder="请输入失业保险公司承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失业保险公司承担金额" prop="sybxCompanyMoney">
<el-input
v-model="queryParams.sybxCompanyMoney"
placeholder="请输入失业保险公司承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失业保险个人承担比例" prop="sybxPersonalRate">
<el-input
v-model="queryParams.sybxPersonalRate"
placeholder="请输入失业保险个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失业保险个人承担金额" prop="sybxPersonalMoney">
<el-input
v-model="queryParams.sybxPersonalMoney"
placeholder="请输入失业保险个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="养老保险缴费基数" prop="ylbxBase">
<el-input
v-model="queryParams.ylbxBase"
placeholder="请输入养老保险缴费基数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="养老保险公司承担比例" prop="ylbxCompanyRate">
<el-input
v-model="queryParams.ylbxCompanyRate"
placeholder="请输入养老保险公司承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="养老保险公司承担金额" prop="ylbxCompanyMoney">
<el-input
v-model="queryParams.ylbxCompanyMoney"
placeholder="请输入养老保险公司承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="养老保险个人承担比例" prop="ylbxPersonalRate">
<el-input
v-model="queryParams.ylbxPersonalRate"
placeholder="请输入养老保险个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="养老保险个人承担金额" prop="ylbxPersonalMoney">
<el-input
v-model="queryParams.ylbxPersonalMoney"
placeholder="请输入养老保险个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工伤保险缴费基数" prop="gsbxBase">
<el-input
v-model="queryParams.gsbxBase"
placeholder="请输入工伤保险缴费基数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工伤保险公司承担比例" prop="gsbxCompanyRate">
<el-input
v-model="queryParams.gsbxCompanyRate"
placeholder="请输入工伤保险公司承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工伤保险公司承担金额" prop="gsbxCompanyMoney">
<el-input
v-model="queryParams.gsbxCompanyMoney"
placeholder="请输入工伤保险公司承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工伤保险个人承担比例" prop="gsbxPersonalRate">
<el-input
v-model="queryParams.gsbxPersonalRate"
placeholder="请输入工伤保险个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工伤保险个人承担金额" prop="gsbxPersonalMoney">
<el-input
v-model="queryParams.gsbxPersonalMoney"
placeholder="请输入工伤保险个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="医疗保险缴费基数(可包含生育险)" prop="ysbxBase">
<el-input
v-model="queryParams.ysbxBase"
placeholder="请输入医疗保险缴费基数(可包含生育险)"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="医疗保险公司承担比例" prop="ysbxCompanyRate">
<el-input
v-model="queryParams.ysbxCompanyRate"
placeholder="请输入医疗保险公司承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="医疗保险公司承担金额" prop="ysbxCompanyMoney">
<el-input
v-model="queryParams.ysbxCompanyMoney"
placeholder="请输入医疗保险公司承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="医疗保险个人承担比例" prop="ysbxPersonalRate">
<el-input
v-model="queryParams.ysbxPersonalRate"
placeholder="请输入医疗保险个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="医疗保险个人承担金额" prop="ysbxPersonalMoney">
<el-input
v-model="queryParams.ysbxPersonalMoney"
placeholder="请输入医疗保险个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生育保险缴费基数" prop="syubxBase">
<el-input
v-model="queryParams.syubxBase"
placeholder="请输入生育保险缴费基数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生育保险公司承担比例" prop="syubxCompanyRate">
<el-input
v-model="queryParams.syubxCompanyRate"
placeholder="请输入生育保险公司承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生育保险公司承担金额" prop="syubxCompanyMoney">
<el-input
v-model="queryParams.syubxCompanyMoney"
placeholder="请输入生育保险公司承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生育保险个人承担比例" prop="syubxPersonalRate">
<el-input
v-model="queryParams.syubxPersonalRate"
placeholder="请输入生育保险个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生育保险个人承担金额" prop="syubxPersonalMoney">
<el-input
v-model="queryParams.syubxPersonalMoney"
placeholder="请输入生育保险个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公积金缴费基数" prop="providentFundBase">
<el-input
v-model="queryParams.providentFundBase"
placeholder="请输入公积金缴费基数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公积金企业承担比例" prop="providentFundCompanyRate">
<el-input
v-model="queryParams.providentFundCompanyRate"
placeholder="请输入公积金企业承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公积金企业承担金额" prop="providentFundCompanyMoeny">
<el-input
v-model="queryParams.providentFundCompanyMoeny"
placeholder="请输入公积金企业承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公积金个人承担比例" prop="providentFundPersonalRate">
<el-input
v-model="queryParams.providentFundPersonalRate"
placeholder="请输入公积金个人承担比例"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公积金个人承担金额" prop="providentFundPersonalMoney">
<el-input
v-model="queryParams.providentFundPersonalMoney"
placeholder="请输入公积金个人承担金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="管理费" prop="operationCost">
<el-input
v-model="queryParams.operationCost"
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:payOutDetail: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:payOutDetail: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:payOutDetail: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:payOutDetail:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="payOutDetailList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="${comment}" align="center" prop="id" />
<el-table-column label="工资批次编号" align="center" prop="batchNo" />
<el-table-column label="工资分组编号" align="center" prop="groupNo" />
<el-table-column label="工资月份" align="center" prop="salaryMonth" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.salaryMonth) }}</span>
</template>
</el-table-column>
<el-table-column label="发放单位" align="center" prop="companyName" />
<el-table-column label="发放单位编码(信用代码)" align="center" prop="companyCode" />
<el-table-column label="发放状态" align="center" prop="payStatus" />
<el-table-column label="发放时间" align="center" prop="payTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.payTime) }}</span>
</template>
</el-table-column>
<el-table-column label="收薪人员ID" align="center" prop="personalId" />
<el-table-column label="人员名称" align="center" prop="userName" />
<el-table-column label="人员身份证号" align="center" prop="userCode" />
<el-table-column label="收款账号类型" align="center" prop="payeeAccType" />
<el-table-column label="收款账号" align="center" prop="payeeAccNo" />
<el-table-column label="岗位名称" align="center" prop="postName" />
<el-table-column label="岗位工资" align="center" prop="postWage" />
<el-table-column label="应发工资" align="center" prop="salaryPayable" />
<el-table-column label="实发金额" align="center" prop="actualPayable" />
<el-table-column label="五险一金承担方式:1、各自承担;2、个人承担" align="center" prop="bearType" />
<el-table-column label="失业保险缴费基数" align="center" prop="sybxBase" />
<el-table-column label="失业保险公司承担比例" align="center" prop="sybxCompanyRate" />
<el-table-column label="失业保险公司承担金额" align="center" prop="sybxCompanyMoney" />
<el-table-column label="失业保险个人承担比例" align="center" prop="sybxPersonalRate" />
<el-table-column label="失业保险个人承担金额" align="center" prop="sybxPersonalMoney" />
<el-table-column label="养老保险缴费基数" align="center" prop="ylbxBase" />
<el-table-column label="养老保险公司承担比例" align="center" prop="ylbxCompanyRate" />
<el-table-column label="养老保险公司承担金额" align="center" prop="ylbxCompanyMoney" />
<el-table-column label="养老保险个人承担比例" align="center" prop="ylbxPersonalRate" />
<el-table-column label="养老保险个人承担金额" align="center" prop="ylbxPersonalMoney" />
<el-table-column label="工伤保险缴费基数" align="center" prop="gsbxBase" />
<el-table-column label="工伤保险公司承担比例" align="center" prop="gsbxCompanyRate" />
<el-table-column label="工伤保险公司承担金额" align="center" prop="gsbxCompanyMoney" />
<el-table-column label="工伤保险个人承担比例" align="center" prop="gsbxPersonalRate" />
<el-table-column label="工伤保险个人承担金额" align="center" prop="gsbxPersonalMoney" />
<el-table-column label="医疗保险缴费基数(可包含生育险)" align="center" prop="ysbxBase" />
<el-table-column label="医疗保险公司承担比例" align="center" prop="ysbxCompanyRate" />
<el-table-column label="医疗保险公司承担金额" align="center" prop="ysbxCompanyMoney" />
<el-table-column label="医疗保险个人承担比例" align="center" prop="ysbxPersonalRate" />
<el-table-column label="医疗保险个人承担金额" align="center" prop="ysbxPersonalMoney" />
<el-table-column label="生育保险缴费基数" align="center" prop="syubxBase" />
<el-table-column label="生育保险公司承担比例" align="center" prop="syubxCompanyRate" />
<el-table-column label="生育保险公司承担金额" align="center" prop="syubxCompanyMoney" />
<el-table-column label="生育保险个人承担比例" align="center" prop="syubxPersonalRate" />
<el-table-column label="生育保险个人承担金额" align="center" prop="syubxPersonalMoney" />
<el-table-column label="公积金缴费基数" align="center" prop="providentFundBase" />
<el-table-column label="公积金企业承担比例" align="center" prop="providentFundCompanyRate" />
<el-table-column label="公积金企业承担金额" align="center" prop="providentFundCompanyMoeny" />
<el-table-column label="公积金个人承担比例" align="center" prop="providentFundPersonalRate" />
<el-table-column label="公积金个人承担金额" align="center" prop="providentFundPersonalMoney" />
<el-table-column label="管理费" align="center" prop="operationCost" />
<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:payOutDetail:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['business:payOutDetail: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="工资批次编号" prop="batchNo">
<el-input v-model="form.batchNo" placeholder="请输入工资批次编号" />
</el-form-item>
<el-form-item label="工资分组编号" prop="groupNo">
<el-input v-model="form.groupNo" placeholder="请输入工资分组编号" />
</el-form-item>
<el-form-item label="工资月份" prop="salaryMonth">
<el-date-picker clearable
v-model="form.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资月份">
</el-date-picker>
</el-form-item>
<el-form-item label="发放单位" prop="companyName">
<el-input v-model="form.companyName" placeholder="请输入发放单位" />
</el-form-item>
<el-form-item label="发放单位编码(信用代码)" prop="companyCode">
<el-input v-model="form.companyCode" placeholder="请输入发放单位编码(信用代码)" />
</el-form-item>
<el-form-item label="发放时间" prop="payTime">
<el-date-picker clearable
v-model="form.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发放时间">
</el-date-picker>
</el-form-item>
<el-form-item label="收薪人员ID" prop="personalId">
<el-input v-model="form.personalId" placeholder="请输入收薪人员ID" />
</el-form-item>
<el-form-item label="人员名称" prop="userName">
<el-input v-model="form.userName" placeholder="请输入人员名称" />
</el-form-item>
<el-form-item label="人员身份证号" prop="userCode">
<el-input v-model="form.userCode" placeholder="请输入人员身份证号" />
</el-form-item>
<el-form-item label="收款账号" prop="payeeAccNo">
<el-input v-model="form.payeeAccNo" placeholder="请输入收款账号" />
</el-form-item>
<el-form-item label="岗位名称" prop="postName">
<el-input v-model="form.postName" placeholder="请输入岗位名称" />
</el-form-item>
<el-form-item label="岗位工资" prop="postWage">
<el-input v-model="form.postWage" placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="应发工资" prop="salaryPayable">
<el-input v-model="form.salaryPayable" placeholder="请输入应发工资" />
</el-form-item>
<el-form-item label="实发金额" prop="actualPayable">
<el-input v-model="form.actualPayable" placeholder="请输入实发金额" />
</el-form-item>
<el-form-item label="失业保险缴费基数" prop="sybxBase">
<el-input v-model="form.sybxBase" placeholder="请输入失业保险缴费基数" />
</el-form-item>
<el-form-item label="失业保险公司承担比例" prop="sybxCompanyRate">
<el-input v-model="form.sybxCompanyRate" placeholder="请输入失业保险公司承担比例" />
</el-form-item>
<el-form-item label="失业保险公司承担金额" prop="sybxCompanyMoney">
<el-input v-model="form.sybxCompanyMoney" placeholder="请输入失业保险公司承担金额" />
</el-form-item>
<el-form-item label="失业保险个人承担比例" prop="sybxPersonalRate">
<el-input v-model="form.sybxPersonalRate" placeholder="请输入失业保险个人承担比例" />
</el-form-item>
<el-form-item label="失业保险个人承担金额" prop="sybxPersonalMoney">
<el-input v-model="form.sybxPersonalMoney" placeholder="请输入失业保险个人承担金额" />
</el-form-item>
<el-form-item label="养老保险缴费基数" prop="ylbxBase">
<el-input v-model="form.ylbxBase" placeholder="请输入养老保险缴费基数" />
</el-form-item>
<el-form-item label="养老保险公司承担比例" prop="ylbxCompanyRate">
<el-input v-model="form.ylbxCompanyRate" placeholder="请输入养老保险公司承担比例" />
</el-form-item>
<el-form-item label="养老保险公司承担金额" prop="ylbxCompanyMoney">
<el-input v-model="form.ylbxCompanyMoney" placeholder="请输入养老保险公司承担金额" />
</el-form-item>
<el-form-item label="养老保险个人承担比例" prop="ylbxPersonalRate">
<el-input v-model="form.ylbxPersonalRate" placeholder="请输入养老保险个人承担比例" />
</el-form-item>
<el-form-item label="养老保险个人承担金额" prop="ylbxPersonalMoney">
<el-input v-model="form.ylbxPersonalMoney" placeholder="请输入养老保险个人承担金额" />
</el-form-item>
<el-form-item label="工伤保险缴费基数" prop="gsbxBase">
<el-input v-model="form.gsbxBase" placeholder="请输入工伤保险缴费基数" />
</el-form-item>
<el-form-item label="工伤保险公司承担比例" prop="gsbxCompanyRate">
<el-input v-model="form.gsbxCompanyRate" placeholder="请输入工伤保险公司承担比例" />
</el-form-item>
<el-form-item label="工伤保险公司承担金额" prop="gsbxCompanyMoney">
<el-input v-model="form.gsbxCompanyMoney" placeholder="请输入工伤保险公司承担金额" />
</el-form-item>
<el-form-item label="工伤保险个人承担比例" prop="gsbxPersonalRate">
<el-input v-model="form.gsbxPersonalRate" placeholder="请输入工伤保险个人承担比例" />
</el-form-item>
<el-form-item label="工伤保险个人承担金额" prop="gsbxPersonalMoney">
<el-input v-model="form.gsbxPersonalMoney" placeholder="请输入工伤保险个人承担金额" />
</el-form-item>
<el-form-item label="医疗保险缴费基数(可包含生育险)" prop="ysbxBase">
<el-input v-model="form.ysbxBase" placeholder="请输入医疗保险缴费基数(可包含生育险)" />
</el-form-item>
<el-form-item label="医疗保险公司承担比例" prop="ysbxCompanyRate">
<el-input v-model="form.ysbxCompanyRate" placeholder="请输入医疗保险公司承担比例" />
</el-form-item>
<el-form-item label="医疗保险公司承担金额" prop="ysbxCompanyMoney">
<el-input v-model="form.ysbxCompanyMoney" placeholder="请输入医疗保险公司承担金额" />
</el-form-item>
<el-form-item label="医疗保险个人承担比例" prop="ysbxPersonalRate">
<el-input v-model="form.ysbxPersonalRate" placeholder="请输入医疗保险个人承担比例" />
</el-form-item>
<el-form-item label="医疗保险个人承担金额" prop="ysbxPersonalMoney">
<el-input v-model="form.ysbxPersonalMoney" placeholder="请输入医疗保险个人承担金额" />
</el-form-item>
<el-form-item label="生育保险缴费基数" prop="syubxBase">
<el-input v-model="form.syubxBase" placeholder="请输入生育保险缴费基数" />
</el-form-item>
<el-form-item label="生育保险公司承担比例" prop="syubxCompanyRate">
<el-input v-model="form.syubxCompanyRate" placeholder="请输入生育保险公司承担比例" />
</el-form-item>
<el-form-item label="生育保险公司承担金额" prop="syubxCompanyMoney">
<el-input v-model="form.syubxCompanyMoney" placeholder="请输入生育保险公司承担金额" />
</el-form-item>
<el-form-item label="生育保险个人承担比例" prop="syubxPersonalRate">
<el-input v-model="form.syubxPersonalRate" placeholder="请输入生育保险个人承担比例" />
</el-form-item>
<el-form-item label="生育保险个人承担金额" prop="syubxPersonalMoney">
<el-input v-model="form.syubxPersonalMoney" placeholder="请输入生育保险个人承担金额" />
</el-form-item>
<el-form-item label="公积金缴费基数" prop="providentFundBase">
<el-input v-model="form.providentFundBase" placeholder="请输入公积金缴费基数" />
</el-form-item>
<el-form-item label="公积金企业承担比例" prop="providentFundCompanyRate">
<el-input v-model="form.providentFundCompanyRate" placeholder="请输入公积金企业承担比例" />
</el-form-item>
<el-form-item label="公积金企业承担金额" prop="providentFundCompanyMoeny">
<el-input v-model="form.providentFundCompanyMoeny" placeholder="请输入公积金企业承担金额" />
</el-form-item>
<el-form-item label="公积金个人承担比例" prop="providentFundPersonalRate">
<el-input v-model="form.providentFundPersonalRate" placeholder="请输入公积金个人承担比例" />
</el-form-item>
<el-form-item label="公积金个人承担金额" prop="providentFundPersonalMoney">
<el-input v-model="form.providentFundPersonalMoney" placeholder="请输入公积金个人承担金额" />
</el-form-item>
<el-form-item label="管理费" prop="operationCost">
<el-input v-model="form.operationCost" 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 { listPayOutDetail, getPayOutDetail, delPayOutDetail, addPayOutDetail, updatePayOutDetail } from "@/api/business/payOutDetail";
export default {
name: "PayOutDetail",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 发薪详情表格数据
payOutDetailList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
batchNo: null,
groupNo: null,
salaryMonth: null,
companyName: null,
companyCode: null,
payStatus: null,
payTime: null,
personalId: null,
userName: null,
userCode: null,
payeeAccType: null,
payeeAccNo: null,
postName: null,
postWage: null,
salaryPayable: null,
actualPayable: null,
bearType: null,
sybxBase: null,
sybxCompanyRate: null,
sybxCompanyMoney: null,
sybxPersonalRate: null,
sybxPersonalMoney: null,
ylbxBase: null,
ylbxCompanyRate: null,
ylbxCompanyMoney: null,
ylbxPersonalRate: null,
ylbxPersonalMoney: null,
gsbxBase: null,
gsbxCompanyRate: null,
gsbxCompanyMoney: null,
gsbxPersonalRate: null,
gsbxPersonalMoney: null,
ysbxBase: null,
ysbxCompanyRate: null,
ysbxCompanyMoney: null,
ysbxPersonalRate: null,
ysbxPersonalMoney: null,
syubxBase: null,
syubxCompanyRate: null,
syubxCompanyMoney: null,
syubxPersonalRate: null,
syubxPersonalMoney: null,
providentFundBase: null,
providentFundCompanyRate: null,
providentFundCompanyMoeny: null,
providentFundPersonalRate: null,
providentFundPersonalMoney: null,
operationCost: null,
deptId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "$comment不能为空", trigger: "blur" }
],
batchNo: [
{ required: true, message: "工资批次编号不能为空", trigger: "blur" }
],
groupNo: [
{ required: true, message: "工资分组编号不能为空", trigger: "blur" }
],
salaryMonth: [
{ required: true, message: "工资月份不能为空", trigger: "blur" }
],
companyName: [
{ required: true, message: "发放单位不能为空", trigger: "blur" }
],
companyCode: [
{ required: true, message: "发放单位编码(信用代码)不能为空", trigger: "blur" }
],
payStatus: [
{ required: true, message: "发放状态不能为空", trigger: "blur" }
],
payTime: [
{ required: true, message: "发放时间不能为空", trigger: "blur" }
],
personalId: [
{ required: true, message: "收薪人员ID不能为空", trigger: "blur" }
],
userName: [
{ required: true, message: "人员名称不能为空", trigger: "blur" }
],
userCode: [
{ required: true, message: "人员身份证号不能为空", trigger: "blur" }
],
payeeAccType: [
{ required: true, message: "收款账号类型不能为空", trigger: "change" }
],
payeeAccNo: [
{ required: true, message: "收款账号不能为空", trigger: "blur" }
],
postName: [
{ required: true, message: "岗位名称不能为空", trigger: "blur" }
],
postWage: [
{ required: true, message: "岗位工资不能为空", trigger: "blur" }
],
salaryPayable: [
{ required: true, message: "应发工资不能为空", trigger: "blur" }
],
actualPayable: [
{ required: true, message: "实发金额不能为空", trigger: "blur" }
],
bearType: [
{ required: true, message: "五险一金承担方式:1、各自承担;2、个人承担不能为空", trigger: "change" }
],
sybxBase: [
{ required: true, message: "失业保险缴费基数不能为空", trigger: "blur" }
],
sybxCompanyRate: [
{ required: true, message: "失业保险公司承担比例不能为空", trigger: "blur" }
],
sybxCompanyMoney: [
{ required: true, message: "失业保险公司承担金额不能为空", trigger: "blur" }
],
sybxPersonalRate: [
{ required: true, message: "失业保险个人承担比例不能为空", trigger: "blur" }
],
sybxPersonalMoney: [
{ required: true, message: "失业保险个人承担金额不能为空", trigger: "blur" }
],
ylbxBase: [
{ required: true, message: "养老保险缴费基数不能为空", trigger: "blur" }
],
ylbxCompanyRate: [
{ required: true, message: "养老保险公司承担比例不能为空", trigger: "blur" }
],
ylbxCompanyMoney: [
{ required: true, message: "养老保险公司承担金额不能为空", trigger: "blur" }
],
ylbxPersonalRate: [
{ required: true, message: "养老保险个人承担比例不能为空", trigger: "blur" }
],
ylbxPersonalMoney: [
{ required: true, message: "养老保险个人承担金额不能为空", trigger: "blur" }
],
gsbxBase: [
{ required: true, message: "工伤保险缴费基数不能为空", trigger: "blur" }
],
gsbxCompanyRate: [
{ required: true, message: "工伤保险公司承担比例不能为空", trigger: "blur" }
],
gsbxCompanyMoney: [
{ required: true, message: "工伤保险公司承担金额不能为空", trigger: "blur" }
],
gsbxPersonalRate: [
{ required: true, message: "工伤保险个人承担比例不能为空", trigger: "blur" }
],
gsbxPersonalMoney: [
{ required: true, message: "工伤保险个人承担金额不能为空", trigger: "blur" }
],
ysbxBase: [
{ required: true, message: "医疗保险缴费基数(可包含生育险)不能为空", trigger: "blur" }
],
ysbxCompanyRate: [
{ required: true, message: "医疗保险公司承担比例不能为空", trigger: "blur" }
],
ysbxCompanyMoney: [
{ required: true, message: "医疗保险公司承担金额不能为空", trigger: "blur" }
],
ysbxPersonalRate: [
{ required: true, message: "医疗保险个人承担比例不能为空", trigger: "blur" }
],
ysbxPersonalMoney: [
{ required: true, message: "医疗保险个人承担金额不能为空", trigger: "blur" }
],
syubxBase: [
{ required: true, message: "生育保险缴费基数不能为空", trigger: "blur" }
],
syubxCompanyRate: [
{ required: true, message: "生育保险公司承担比例不能为空", trigger: "blur" }
],
syubxCompanyMoney: [
{ required: true, message: "生育保险公司承担金额不能为空", trigger: "blur" }
],
syubxPersonalRate: [
{ required: true, message: "生育保险个人承担比例不能为空", trigger: "blur" }
],
syubxPersonalMoney: [
{ required: true, message: "生育保险个人承担金额不能为空", trigger: "blur" }
],
providentFundBase: [
{ required: true, message: "公积金缴费基数不能为空", trigger: "blur" }
],
providentFundCompanyRate: [
{ required: true, message: "公积金企业承担比例不能为空", trigger: "blur" }
],
providentFundCompanyMoeny: [
{ required: true, message: "公积金企业承担金额不能为空", trigger: "blur" }
],
providentFundPersonalRate: [
{ required: true, message: "公积金个人承担比例不能为空", trigger: "blur" }
],
providentFundPersonalMoney: [
{ required: true, message: "公积金个人承担金额不能为空", trigger: "blur" }
],
operationCost: [
{ required: true, message: "管理费不能为空", trigger: "blur" }
],
deptId: [
{ required: true, message: "所属部门不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询发薪详情列表 */
getList() {
this.loading = true;
listPayOutDetail(this.queryParams).then(response => {
this.payOutDetailList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
batchNo: null,
groupNo: null,
salaryMonth: null,
companyName: null,
companyCode: null,
payStatus: 0,
payTime: null,
personalId: null,
userName: null,
userCode: null,
payeeAccType: null,
payeeAccNo: null,
postName: null,
postWage: null,
salaryPayable: null,
actualPayable: null,
bearType: null,
sybxBase: null,
sybxCompanyRate: null,
sybxCompanyMoney: null,
sybxPersonalRate: null,
sybxPersonalMoney: null,
ylbxBase: null,
ylbxCompanyRate: null,
ylbxCompanyMoney: null,
ylbxPersonalRate: null,
ylbxPersonalMoney: null,
gsbxBase: null,
gsbxCompanyRate: null,
gsbxCompanyMoney: null,
gsbxPersonalRate: null,
gsbxPersonalMoney: null,
ysbxBase: null,
ysbxCompanyRate: null,
ysbxCompanyMoney: null,
ysbxPersonalRate: null,
ysbxPersonalMoney: null,
syubxBase: null,
syubxCompanyRate: null,
syubxCompanyMoney: null,
syubxPersonalRate: null,
syubxPersonalMoney: null,
providentFundBase: null,
providentFundCompanyRate: null,
providentFundCompanyMoeny: null,
providentFundPersonalRate: null,
providentFundPersonalMoney: null,
operationCost: 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
getPayOutDetail(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) {
updatePayOutDetail(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addPayOutDetail(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 delPayOutDetail(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/payOutDetail/export', {
...this.queryParams
}, `payOutDetail_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<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="batchNo">
<el-input
v-model="queryParams.batchNo"
placeholder="请输入工资批次编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工资批次分组编号" prop="groupNo">
<el-input
v-model="queryParams.groupNo"
placeholder="请输入工资批次分组编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工资月份" prop="salaryMonth">
<el-date-picker clearable
v-model="queryParams.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资月份">
</el-date-picker>
</el-form-item>
<el-form-item label="组内总条数" prop="totalCount">
<el-input
v-model="queryParams.totalCount"
placeholder="请输入组内总条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="组内总金额" prop="totalAmount">
<el-input
v-model="queryParams.totalAmount"
placeholder="请输入组内总金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功条数" prop="successCount">
<el-input
v-model="queryParams.successCount"
placeholder="请输入成功条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input
v-model="queryParams.successAmount"
placeholder="请输入成功金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input
v-model="queryParams.failCount"
placeholder="请输入失败条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input
v-model="queryParams.failAmount"
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:payOutGroup: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:payOutGroup: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:payOutGroup: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:payOutGroup:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="payOutGroupList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="${comment}" align="center" prop="id" />
<el-table-column label="工资批次编号" align="center" prop="batchNo" />
<el-table-column label="工资批次分组编号" align="center" prop="groupNo" />
<el-table-column label="工资月份" align="center" prop="salaryMonth" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.salaryMonth) }}</span>
</template>
</el-table-column>
<el-table-column label="发放状态" align="center" prop="payStatus" />
<el-table-column label="组内总条数" align="center" prop="totalCount" />
<el-table-column label="组内总金额" align="center" prop="totalAmount" />
<el-table-column label="成功条数" align="center" prop="successCount" />
<el-table-column label="成功金额" align="center" prop="successAmount" />
<el-table-column label="失败条数" align="center" prop="failCount" />
<el-table-column label="失败金额" align="center" prop="failAmount" />
<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:payOutGroup:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['business:payOutGroup: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="工资批次编号" prop="batchNo">
<el-input v-model="form.batchNo" placeholder="请输入工资批次编号" />
</el-form-item>
<el-form-item label="工资批次分组编号" prop="groupNo">
<el-input v-model="form.groupNo" placeholder="请输入工资批次分组编号" />
</el-form-item>
<el-form-item label="工资月份" prop="salaryMonth">
<el-date-picker clearable
v-model="form.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资月份">
</el-date-picker>
</el-form-item>
<el-form-item label="组内总条数" prop="totalCount">
<el-input v-model="form.totalCount" 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="successCount">
<el-input v-model="form.successCount" placeholder="请输入成功条数" />
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input v-model="form.successAmount" placeholder="请输入成功金额" />
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input v-model="form.failCount" placeholder="请输入失败条数" />
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input v-model="form.failAmount" 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 { listPayOutGroup, getPayOutGroup, delPayOutGroup, addPayOutGroup, updatePayOutGroup } from "@/api/business/payOutGroup";
export default {
name: "PayOutGroup",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 发薪分组表格数据
payOutGroupList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
batchNo: null,
groupNo: null,
salaryMonth: null,
payStatus: null,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: null,
deptId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "$comment不能为空", trigger: "blur" }
],
batchNo: [
{ required: true, message: "工资批次编号不能为空", trigger: "blur" }
],
groupNo: [
{ required: true, message: "工资批次分组编号不能为空", trigger: "blur" }
],
salaryMonth: [
{ required: true, message: "工资月份不能为空", trigger: "blur" }
],
payStatus: [
{ required: true, message: "发放状态不能为空", trigger: "blur" }
],
totalCount: [
{ required: true, message: "组内总条数不能为空", trigger: "blur" }
],
totalAmount: [
{ required: true, message: "组内总金额不能为空", trigger: "blur" }
],
successCount: [
{ required: true, message: "成功条数不能为空", trigger: "blur" }
],
successAmount: [
{ required: true, message: "成功金额不能为空", trigger: "blur" }
],
failCount: [
{ required: true, message: "失败条数不能为空", trigger: "blur" }
],
failAmount: [
{ required: true, message: "失败金额不能为空", trigger: "blur" }
],
deptId: [
{ required: true, message: "所属部门不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询发薪分组列表 */
getList() {
this.loading = true;
listPayOutGroup(this.queryParams).then(response => {
this.payOutGroupList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
batchNo: null,
groupNo: null,
salaryMonth: null,
payStatus: 0,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: 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
getPayOutGroup(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) {
updatePayOutGroup(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addPayOutGroup(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 delPayOutGroup(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/payOutGroup/export', {
...this.queryParams
}, `payOutGroup_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<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="payTime">
<el-date-picker clearable
v-model="queryParams.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发薪完成时间">
</el-date-picker>
</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="companyCode">
<el-input
v-model="queryParams.companyCode"
placeholder="请输入发薪单位编码(信用代码)"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<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="salaryMonth">
<el-date-picker clearable
v-model="queryParams.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资所属月份">
</el-date-picker>
</el-form-item>
<el-form-item label="发放条数" prop="totalCount">
<el-input
v-model="queryParams.totalCount"
placeholder="请输入发放条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="发放总金额" prop="totalAmount">
<el-input
v-model="queryParams.totalAmount"
placeholder="请输入发放总金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功条数" prop="successCount">
<el-input
v-model="queryParams.successCount"
placeholder="请输入成功条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input
v-model="queryParams.successAmount"
placeholder="请输入成功金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input
v-model="queryParams.failCount"
placeholder="请输入失败条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input
v-model="queryParams.failAmount"
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:payOutRecord: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:payOutRecord: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:payOutRecord: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:payOutRecord:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="payOutRecordList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="${comment}" align="center" prop="id" />
<el-table-column label="发薪批/任务次名称" align="center" prop="batchName" />
<el-table-column label="发薪完成时间" align="center" prop="payTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.payTime) }}</span>
</template>
</el-table-column>
<el-table-column label="发薪单位" align="center" prop="companyName" />
<el-table-column label="发薪单位编码(信用代码)" align="center" prop="companyCode" />
<el-table-column label="工资批次编号" align="center" prop="batchNo" />
<el-table-column label="工资所属月份" align="center" prop="salaryMonth" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.salaryMonth) }}</span>
</template>
</el-table-column>
<el-table-column label="发放状态" align="center" prop="payStatus" />
<el-table-column label="发放条数" align="center" prop="totalCount" />
<el-table-column label="发放总金额" align="center" prop="totalAmount" />
<el-table-column label="成功条数" align="center" prop="successCount" />
<el-table-column label="成功金额" align="center" prop="successAmount" />
<el-table-column label="失败条数" align="center" prop="failCount" />
<el-table-column label="失败金额" align="center" prop="failAmount" />
<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:payOutRecord:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['business:payOutRecord: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="发薪批/任务次名称" prop="batchName">
<el-input v-model="form.batchName" placeholder="请输入发薪批/任务次名称" />
</el-form-item>
<el-form-item label="发薪完成时间" prop="payTime">
<el-date-picker clearable
v-model="form.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发薪完成时间">
</el-date-picker>
</el-form-item>
<el-form-item label="发薪单位" prop="companyName">
<el-input v-model="form.companyName" placeholder="请输入发薪单位" />
</el-form-item>
<el-form-item label="发薪单位编码(信用代码)" prop="companyCode">
<el-input v-model="form.companyCode" placeholder="请输入发薪单位编码(信用代码)" />
</el-form-item>
<el-form-item label="工资批次编号" prop="batchNo">
<el-input v-model="form.batchNo" placeholder="请输入工资批次编号" />
</el-form-item>
<el-form-item label="工资所属月份" prop="salaryMonth">
<el-date-picker clearable
v-model="form.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资所属月份">
</el-date-picker>
</el-form-item>
<el-form-item label="发放条数" prop="totalCount">
<el-input v-model="form.totalCount" 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="successCount">
<el-input v-model="form.successCount" placeholder="请输入成功条数" />
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input v-model="form.successAmount" placeholder="请输入成功金额" />
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input v-model="form.failCount" placeholder="请输入失败条数" />
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input v-model="form.failAmount" 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 { listPayOutRecord, getPayOutRecord, delPayOutRecord, addPayOutRecord, updatePayOutRecord } from "@/api/business/payOutRecord";
export default {
name: "PayOutRecord",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 发薪批次信息表格数据
payOutRecordList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
batchName: null,
payTime: null,
companyName: null,
companyCode: null,
batchNo: null,
salaryMonth: null,
payStatus: null,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: null,
deptId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "$comment不能为空", trigger: "blur" }
],
batchName: [
{ required: true, message: "发薪批/任务次名称不能为空", trigger: "blur" }
],
payTime: [
{ required: true, message: "发薪完成时间不能为空", trigger: "blur" }
],
companyName: [
{ required: true, message: "发薪单位不能为空", trigger: "blur" }
],
companyCode: [
{ required: true, message: "发薪单位编码(信用代码)不能为空", trigger: "blur" }
],
batchNo: [
{ required: true, message: "工资批次编号不能为空", trigger: "blur" }
],
salaryMonth: [
{ required: true, message: "工资所属月份不能为空", trigger: "blur" }
],
payStatus: [
{ required: true, message: "发放状态不能为空", trigger: "blur" }
],
totalCount: [
{ required: true, message: "发放条数不能为空", trigger: "blur" }
],
totalAmount: [
{ required: true, message: "发放总金额不能为空", trigger: "blur" }
],
successCount: [
{ required: true, message: "成功条数不能为空", trigger: "blur" }
],
successAmount: [
{ required: true, message: "成功金额不能为空", trigger: "blur" }
],
failCount: [
{ required: true, message: "失败条数不能为空", trigger: "blur" }
],
failAmount: [
{ required: true, message: "失败金额不能为空", trigger: "blur" }
],
deptId: [
{ required: true, message: "所属部门不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询发薪批次信息列表 */
getList() {
this.loading = true;
listPayOutRecord(this.queryParams).then(response => {
this.payOutRecordList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
batchName: null,
payTime: null,
companyName: null,
companyCode: null,
batchNo: null,
salaryMonth: null,
payStatus: 0,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: 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
getPayOutRecord(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) {
updatePayOutRecord(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addPayOutRecord(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 delPayOutRecord(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/payOutRecord/export', {
...this.queryParams
}, `payOutRecord_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<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="payTime">
<el-date-picker clearable
v-model="queryParams.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发薪完成时间">
</el-date-picker>
</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="companyCode">
<el-input
v-model="queryParams.companyCode"
placeholder="请输入发薪单位编码(信用代码)"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<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="salaryMonth">
<el-date-picker clearable
v-model="queryParams.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资所属月份">
</el-date-picker>
</el-form-item>
<el-form-item label="发放条数" prop="totalCount">
<el-input
v-model="queryParams.totalCount"
placeholder="请输入发放条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="发放总金额" prop="totalAmount">
<el-input
v-model="queryParams.totalAmount"
placeholder="请输入发放总金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功条数" prop="successCount">
<el-input
v-model="queryParams.successCount"
placeholder="请输入成功条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input
v-model="queryParams.successAmount"
placeholder="请输入成功金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input
v-model="queryParams.failCount"
placeholder="请输入失败条数"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input
v-model="queryParams.failAmount"
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:payOutRecord: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:payOutRecord: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:payOutRecord: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:payOutRecord:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="payOutRecordList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="${comment}" align="center" prop="id" />
<el-table-column label="发薪批/任务次名称" align="center" prop="batchName" />
<el-table-column label="发薪完成时间" align="center" prop="payTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.payTime) }}</span>
</template>
</el-table-column>
<el-table-column label="发薪单位" align="center" prop="companyName" />
<el-table-column label="发薪单位编码(信用代码)" align="center" prop="companyCode" />
<el-table-column label="工资批次编号" align="center" prop="batchNo" />
<el-table-column label="工资所属月份" align="center" prop="salaryMonth" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.salaryMonth) }}</span>
</template>
</el-table-column>
<el-table-column label="发放状态" align="center" prop="payStatus" />
<el-table-column label="发放条数" align="center" prop="totalCount" />
<el-table-column label="发放总金额" align="center" prop="totalAmount" />
<el-table-column label="成功条数" align="center" prop="successCount" />
<el-table-column label="成功金额" align="center" prop="successAmount" />
<el-table-column label="失败条数" align="center" prop="failCount" />
<el-table-column label="失败金额" align="center" prop="failAmount" />
<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:payOutRecord:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['business:payOutRecord: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="发薪批/任务次名称" prop="batchName">
<el-input v-model="form.batchName" placeholder="请输入发薪批/任务次名称" />
</el-form-item>
<el-form-item label="发薪完成时间" prop="payTime">
<el-date-picker clearable
v-model="form.payTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择发薪完成时间">
</el-date-picker>
</el-form-item>
<el-form-item label="发薪单位" prop="companyName">
<el-input v-model="form.companyName" placeholder="请输入发薪单位" />
</el-form-item>
<el-form-item label="发薪单位编码(信用代码)" prop="companyCode">
<el-input v-model="form.companyCode" placeholder="请输入发薪单位编码(信用代码)" />
</el-form-item>
<el-form-item label="工资批次编号" prop="batchNo">
<el-input v-model="form.batchNo" placeholder="请输入工资批次编号" />
</el-form-item>
<el-form-item label="工资所属月份" prop="salaryMonth">
<el-date-picker clearable
v-model="form.salaryMonth"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择工资所属月份">
</el-date-picker>
</el-form-item>
<el-form-item label="发放条数" prop="totalCount">
<el-input v-model="form.totalCount" 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="successCount">
<el-input v-model="form.successCount" placeholder="请输入成功条数" />
</el-form-item>
<el-form-item label="成功金额" prop="successAmount">
<el-input v-model="form.successAmount" placeholder="请输入成功金额" />
</el-form-item>
<el-form-item label="失败条数" prop="failCount">
<el-input v-model="form.failCount" placeholder="请输入失败条数" />
</el-form-item>
<el-form-item label="失败金额" prop="failAmount">
<el-input v-model="form.failAmount" 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 { listPayOutRecord, getPayOutRecord, delPayOutRecord, addPayOutRecord, updatePayOutRecord } from "@/api/business/payOutRecord";
export default {
name: "PayOutRecord",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 发薪批次信息表格数据
payOutRecordList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
batchName: null,
payTime: null,
companyName: null,
companyCode: null,
batchNo: null,
salaryMonth: null,
payStatus: null,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: null,
deptId: null,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "$comment不能为空", trigger: "blur" }
],
batchName: [
{ required: true, message: "发薪批/任务次名称不能为空", trigger: "blur" }
],
payTime: [
{ required: true, message: "发薪完成时间不能为空", trigger: "blur" }
],
companyName: [
{ required: true, message: "发薪单位不能为空", trigger: "blur" }
],
companyCode: [
{ required: true, message: "发薪单位编码(信用代码)不能为空", trigger: "blur" }
],
batchNo: [
{ required: true, message: "工资批次编号不能为空", trigger: "blur" }
],
salaryMonth: [
{ required: true, message: "工资所属月份不能为空", trigger: "blur" }
],
payStatus: [
{ required: true, message: "发放状态不能为空", trigger: "blur" }
],
totalCount: [
{ required: true, message: "发放条数不能为空", trigger: "blur" }
],
totalAmount: [
{ required: true, message: "发放总金额不能为空", trigger: "blur" }
],
successCount: [
{ required: true, message: "成功条数不能为空", trigger: "blur" }
],
successAmount: [
{ required: true, message: "成功金额不能为空", trigger: "blur" }
],
failCount: [
{ required: true, message: "失败条数不能为空", trigger: "blur" }
],
failAmount: [
{ required: true, message: "失败金额不能为空", trigger: "blur" }
],
deptId: [
{ required: true, message: "所属部门不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询发薪批次信息列表 */
getList() {
this.loading = true;
listPayOutRecord(this.queryParams).then(response => {
this.payOutRecordList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
batchName: null,
payTime: null,
companyName: null,
companyCode: null,
batchNo: null,
salaryMonth: null,
payStatus: 0,
totalCount: null,
totalAmount: null,
successCount: null,
successAmount: null,
failCount: null,
failAmount: 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
getPayOutRecord(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) {
updatePayOutRecord(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addPayOutRecord(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 delPayOutRecord(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/payOutRecord/export', {
...this.queryParams
}, `payOutRecord_${new Date().getTime()}.xlsx`)
}
}
};
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment