Commit 17b7ad53 authored by 许珑标's avatar 许珑标

薪资调整

parent 252d87bf
import request from '@/utils/request'
// 查询发薪记录薪资调整列表
export function listAdjustInfo(query) {
return request({
url: '/business/adjustInfo/list',
method: 'get',
params: query
})
}
// 查询发薪记录薪资调整所有列表
export function listAllAdjustInfo(query) {
return request({
url: '/business/adjustInfo/listAll',
method: 'get',
params: query
})
}
// 查询发薪记录薪资调整详细
export function getAdjustInfo(id) {
return request({
url: '/business/adjustInfo/getInfo/' + id,
method: 'get'
})
}
// 计算调整薪资
export function adjustCalculate(data) {
return request({
url: '/business/adjustInfo/adjust/calculate',
method: 'post',
data: data
})
}
// 新增发薪记录薪资调整
export function addAdjustInfo(data) {
return request({
url: '/business/adjustInfo/add',
method: 'post',
data: data
})
}
// 修改发薪记录薪资调整
export function updateAdjustInfo(data) {
return request({
url: '/business/adjustInfo/edit',
method: 'post',
data: data
})
}
// 删除发薪记录薪资调整
export function delAdjustInfo(id) {
return request({
url: '/business/adjustInfo/remove/' + id,
method: 'get'
})
}
......@@ -52,14 +52,6 @@ export function updatePayOutDetail(data) {
})
}
// 调整薪资
export function adjustSalary(data) {
return request({
url: '/business/payOutDetail/adjust/salary',
method: 'post',
data: data
})
}
// 删除发薪详情
export function delPayOutDetail(id) {
......
......@@ -62,6 +62,15 @@ export function pay(data) {
})
}
// 调整薪资
export function saveAdjustCalculate(data) {
return request({
url: '/business/payOutRecord/adjust/calculate',
method: 'post',
data: data
})
}
// 删除发薪批次信息
export function delPayOutRecord(id) {
return request({
......
......@@ -53,7 +53,7 @@
<el-table-column label="员工姓名" align="center" prop="userName" fixed />
<el-table-column label="身份证号" align="center" prop="userCode" fixed />
<el-table-column label="所属合同" align="center" prop="contractName" />
<el-table-column label="发薪主体" align="center" prop="companyName">
<el-table-column label="用工单位" align="center" prop="companyName">
<template slot-scope="scope">
{{ scope.row.companyName }}
<el-tag>{{ scope.row.companyCode }}</el-tag>
......@@ -319,65 +319,50 @@
<!-- 考勤核对 -->
<el-dialog title="调整薪资" :visible.sync="checkWorkOpen" width="1000px" append-to-body>
<el-row>
<el-col :span="12">
<el-form :model="preForm" label-width="120px">
<el-form-item>
<el-tag>修正前</el-tag>
</el-form-item>
<el-form-item label="单位缴纳保险" prop="companyBxMoney">
<el-input v-model="preForm.companyBxMoney" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="个人缴纳保险" prop="personalBxMoney">
<el-input v-model="preForm.personalBxMoney" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="岗位工资" prop="postWage">
<el-input v-model="preForm.postWage" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="应发工资" prop="salaryPayable">
<el-input v-model="preForm.salaryPayable" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="实发工资" prop="actualPayable">
<el-input v-model="preForm.actualPayable" disabled placeholder="请输入岗位工资" />
</el-form-item>
</el-form>
</el-col>
<el-col :span="12">
<el-form ref="cwForm" :model="cwForm" :rules="cwFormRules" label-width="120px">
<el-form-item>
<el-tag type="success">修正后</el-tag>
</el-form-item>
<el-form-item label="单位缴纳保险" prop="companyBxMoney">
<el-input v-model="cwForm.companyBxMoney" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="个人缴纳保险" prop="personalBxMoney">
<el-input v-model="cwForm.personalBxMoney" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="岗位工资" prop="postWage">
<el-input v-model="cwForm.postWage" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="应发工资" prop="salaryPayable">
<el-input v-model="cwForm.salaryPayable" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="实发工资" prop="actualPayable">
<el-input v-model="cwForm.actualPayable" disabled placeholder="请输入岗位工资" />
</el-form-item>
<el-form-item label="调整类型" prop="adjustType">
<el-select v-model="cwForm.adjustType" placeholder="调整类型">
<el-option label="扣除" :value="1" />
<el-option label="增加" :value="2" />
</el-select>
</el-form-item>
<el-form-item label="调整薪资" prop="adjustMoney">
<el-input-number style="width: 200px" :precision="2" :step="1" v-model="cwForm.adjustMoney"
placeholder="请输入调整金额">
</el-input-number>
<el-button style="margin-left: 10px" size="mini" round @click="preCal">预览</el-button>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-form label-width="120px">
<el-form-item label="原实发金额">
<el-input v-model="preForm.actualPayableNormal" disabled />
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="newAdjustItem">新增调整项</el-button>
</el-form-item>
<el-form-item label="调整类目">
<el-table :data="adjustItem" style="width: 100%" :height="300">
<el-table-column type="index" label="序号" />
<el-table-column prop="adjustName" label="调整原因" width="180">
<template slot-scope="{row}">
<el-input v-model="row.adjustName" />
</template>
</el-table-column>
<el-table-column prop="adjustType" label="类型" width="180">
<template slot-scope="{row}">
<el-select v-model="row.adjustType" @change="adjustView.open = false">
<el-option :value="1" label="扣除" />
<el-option :value="2" label="增加" />
</el-select>
</template>
</el-table-column>
<el-table-column prop="adjustAmount" label="金额">
<template slot-scope="{row}">
<el-input-number v-model="row.adjustAmount" placeholder="请输入管理费" :precision="2"
:step="1" :min="0" controls-position="right" @change="adjustView.open = false"></el-input-number>
</template>
</el-table-column>
<el-table-column label="操作" width="180">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" @click="delAdjustItem(scope.$index)">删除
</el-button>
</template>
</el-table-column>
</el-table>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="doAdjustCalculate">预览</el-button>
</el-form-item>
<el-form-item v-show="adjustView.open">
<span>合计调整: {{adjustView.adjustSalary}}, 最终实发: {{adjustView.finalSalary}}</span>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitFormCwForm">确 定</el-button>
<el-button @click="checkWorkOpen = false">取 消</el-button>
......@@ -394,13 +379,18 @@ import {
addPayOutDetail,
updatePayOutDetail, adjustSalary, viewPayEvi
} from '@/api/business/payOutDetail'
import { adjustCalculate, listAllAdjustInfo } from '@/api/business/adjustInfo'
import { saveAdjustCalculate } from '@/api/business/payOutRecord'
export default {
name: 'PayOutDetail',
dicts: ['pay_status', 'bx_bear_type', 'payee_acc_type'],
data() {
return {
preForm: {},
adjustItem: [],
preForm: {
actualPayableNormal: 0,
},
preFormOpen: false,
checkWorkOpen: false,
cwForm: {
......@@ -445,6 +435,11 @@ export default {
userName: null,
userCode: null
},
adjustView: {
open: false,
finalSalary: 0,
adjustSalary: '',
},
// 表单参数
form: {},
// 表单校验
......@@ -612,6 +607,13 @@ export default {
this.getList()
},
methods: {
newAdjustItem() {
this.adjustItem.push({
adjustName: '',
adjustType: 1,
adjustAmount: 0
})
},
/** 查询发薪详情列表 */
getList() {
this.loading = true
......@@ -754,73 +756,26 @@ export default {
...this.queryParams
}, `payOutDetail_${new Date().getTime()}.xlsx`)
},
checkWork(row) {
// 单位总金额计算
let companyTotalAmount = 0
if (row.ylbxCompanyMoney) {
companyTotalAmount += Number(row.ylbxCompanyMoney)
}
if (row.gsbxCompanyMoney) {
companyTotalAmount += Number(row.gsbxCompanyMoney)
}
if (row.ysbxCompanyMoney) {
companyTotalAmount += Number(row.ysbxCompanyMoney)
}
if (row.sybxCompanyMoney) {
companyTotalAmount += Number(row.sybxCompanyMoney)
}
if (row.syubxCompanyMoney) {
companyTotalAmount += Number(row.syubxCompanyMoney)
}
if (row.providentFundCompanyMoney) {
companyTotalAmount += Number(row.providentFundCompanyMoney)
}
// 个人总金额方法
let personTotalAmount = 0
if (row.ylbxPersonalMoney) {
personTotalAmount += Number(row.ylbxPersonalMoney)
}
if (row.gsbxPersonalMoney) {
personTotalAmount += Number(row.gsbxPersonalMoney)
}
if (row.ysbxPersonalMoney) {
personTotalAmount += Number(row.ysbxPersonalMoney)
}
if (row.sybxPersonalMoney) {
personTotalAmount += Number(row.sybxPersonalMoney)
}
if (row.syubxPersonalMoney) {
personTotalAmount += Number(row.syubxPersonalMoney)
}
if (row.providentFundPersonalMoney) {
personTotalAmount += Number(row.providentFundPersonalMoney)
}
this.cwForm = {
id: row.id,
companyBxMoney: companyTotalAmount,
personalBxMoney: personTotalAmount,
postWage: row.postWage,
salaryPayable: row.salaryPayable,
actualPayable: row.actualPayable,
bearType: row.standard.bearType,
adjustType: 1
}
async checkWork(row) {
this.preForm.salaryPayDetailId = row.id
this.preForm.actualPayableNormal = row.actualPayableNormal
await listAllAdjustInfo({
salaryPayDetailId: row.id
}).then(resp => {
if (200 == resp.code) {
this.adjustItem = resp.data
}
})
this.checkWorkOpen = true
this.preForm = { ...this.cwForm }
},
preCal() {
this.cwForm.actualPayable = this.preForm.actualPayable
if (1 == this.cwForm.adjustType) {
this.cwForm.actualPayable = this.cwForm.actualPayable - Number(this.cwForm.adjustMoney)
} else {
this.cwForm.actualPayable = this.cwForm.actualPayable + Number(this.cwForm.adjustMoney)
}
},
submitFormCwForm() {
if (1 == this.cwForm.adjustType) {
this.cwForm.adjustMoney = 0 - this.cwForm.adjustMoney;
if (!this.adjustItem) {
this.$modal.msgWarning("没有调整项")
}
adjustSalary(this.cwForm).then(resp => {
saveAdjustCalculate({
salaryDetailId: this.preForm.salaryPayDetailId,
adjusts: this.adjustItem
}).then(resp => {
if (200 == resp.code) {
this.checkWorkOpen = false
this.$modal.msgSuccess("操作成功");
......@@ -828,6 +783,10 @@ export default {
}
});
},
delAdjustItem(index) {
this.adjustItem.splice(index, 1)
this.adjustView.open = false
},
eviView(row) {
this.$modal.loading("正在处理...")
viewPayEvi(row.id).then(resp => {
......@@ -837,7 +796,24 @@ export default {
}).finally(() => {
this.$modal.closeLoading()
})
}
},
doAdjustCalculate() {
if (!this.adjustItem) {
this.$modal.msgWarning("没有调整项")
}
adjustCalculate({
salaryDetailId: this.preForm.salaryPayDetailId,
adjusts: this.adjustItem
}).then(resp => {
if (200 == resp.code) {
this.adjustView = {
open: true,
adjustSalary: resp.data.adjustSalary + "",
finalSalary: resp.data.finalSalary + ""
}
}
})
},
}
}
</script>
......@@ -53,7 +53,7 @@
<el-table-column label="人员姓名" align="center" prop="userName" fixed />
<el-table-column label="身份证号" align="center" prop="userCode" fixed />
<el-table-column label="所属合同" align="center" prop="contractName" />
<el-table-column label="发薪主体" align="center" prop="companyName">
<el-table-column label="用工单位" align="center" prop="companyName">
<template slot-scope="scope">
{{ scope.row.companyName }}
<el-tag>{{ scope.row.companyCode }}</el-tag>
......
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