Commit 4be822f0 authored by 谢子梦's avatar 谢子梦

stage:发薪账户、合作机构合同展示

parent d4b3baa1
...@@ -83,8 +83,7 @@ ...@@ -83,8 +83,7 @@
</el-card> </el-card>
<el-empty v-if="ownList.length == 0" description="暂无账号"></el-empty> <el-empty v-if="ownList.length == 0" description="暂无账号"></el-empty>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="第三方发薪账号" name="second"> <el-form label-width="120px" label-position="left" <el-tab-pane label="第三方发薪账号" name="second"> <el-form label-width="120px" label-position="left" class="formMain">
class="formMain">
<el-row :gutter="30"> <el-row :gutter="30">
<el-col :span="8"> <el-col :span="8">
<el-form-item label="支付宝外卡卡号"> <el-form-item label="支付宝外卡卡号">
...@@ -145,7 +144,7 @@ ...@@ -145,7 +144,7 @@
<el-col :span="6" :offset="2"> <el-col :span="6" :offset="2">
<div class="operateConterMain"> <div class="operateConterMain">
<div style="width: 90%;"> <div style="width: 90%;">
<el-row> <!-- <el-row>
<el-col :span="12"><el-button style="width:120px;" type="primary" <el-col :span="12"><el-button style="width:120px;" type="primary"
@click="balanceRecharge(ele)">余额充值</el-button></el-col> @click="balanceRecharge(ele)">余额充值</el-button></el-col>
<el-col :span="12"><el-button style="width:120px;" type="primary" <el-col :span="12"><el-button style="width:120px;" type="primary"
...@@ -156,9 +155,9 @@ ...@@ -156,9 +155,9 @@
<el-row> <el-row>
<el-col :span="12"><el-button style="width:120px;" type="primary" plain <el-col :span="12"><el-button style="width:120px;" type="primary" plain
@click="showBill(ele.payAccNo)">充值记录</el-button></el-col> @click="showBill(ele.payAccNo)">充值记录</el-button></el-col>
<el-col :span="12"><el-button @click="salarySelection(ele.payAccNo)" <el-col :span="12"><el-button @click="salarySelection(ele.payAccNo)" style="width:120px;"
style="width:120px;" type="primary" plain>去发薪</el-button></el-col> type="primary" plain>去发薪</el-button></el-col>
</el-row> </el-row> -->
</div> </div>
</div> </div>
</el-col> </el-col>
...@@ -191,7 +190,8 @@ ...@@ -191,7 +190,8 @@
</el-col> </el-col>
</el-row> </el-row>
</el-card> </el-card>
<el-empty v-if="thirdParty.length == 0 && (!signNoAccList || signNoAccList.length == 0)" description="暂无账号"></el-empty> <el-empty v-if="thirdParty.length == 0 && (!signNoAccList || signNoAccList.length == 0)"
description="暂无账号"></el-empty>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<!-- 去发薪对话框 --> <!-- 去发薪对话框 -->
...@@ -375,8 +375,8 @@ ...@@ -375,8 +375,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="时间"> <el-form-item label="时间">
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" <el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss" type="daterange"
type="daterange" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="getBillList">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="getBillList">搜索</el-button>
...@@ -394,7 +394,7 @@ ...@@ -394,7 +394,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="收支类型" align="center" prop="tranType"> <el-table-column label="收支类型" align="center" prop="tranType">
<template slot-scope="scope"> <template>
<el-button type="success" size="mini">收入</el-button> <el-button type="success" size="mini">收入</el-button>
</template> </template>
</el-table-column> </el-table-column>
...@@ -416,20 +416,20 @@ ...@@ -416,20 +416,20 @@
</div> </div>
</el-dialog> </el-dialog>
<!-- 绑定账户 -- 外部--> <!-- 绑定账户 -- 外部-->
<el-dialog title="绑定账户" :visible.sync="bindAcc.panel" width="80%"> <el-dialog title="绑定账户" :visible.sync="bindAcc.panel" width="80%">
<tax-sign-component></tax-sign-component> <tax-sign-component @submitSignContract="submitSignContract"></tax-sign-component>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="bindAcc.panel = false">关 闭</el-button> <el-button @click="bindAcc.panel = false">关 闭</el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- 绑定账户 - 自有账户--> <!-- 绑定账户 - 自有账户-->
<el-dialog title="绑定账户" :visible.sync="openSign.panel" width="300"> <el-dialog title="绑定账户" :visible.sync="openSign.panel" width="300">
<el-form label-width="80px"> <el-form label-width="80px">
<el-form-item label="账户主体"> <el-form-item label="账户主体">
<el-select v-model="openSign.companyId" placeholder="请选择账户对应的企业主体"> <el-select v-model="openSign.companyId" placeholder="请选择账户对应的企业主体">
<el-option v-for="item in openSign.companyList" :label="item.companyName" :value="item.id"/> <el-option v-for="item in openSign.companyList" :key="item.id" :label="item.companyName" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-form> </el-form>
...@@ -571,6 +571,11 @@ export default { ...@@ -571,6 +571,11 @@ export default {
} }
}, },
methods: { methods: {
/** 第三方绑定发薪账号-签约成功执行 */
submitSignContract() {
this.bindAcc.panel = false;
this.queryHasNoAccOut()
},
toSign() { toSign() {
this.bindAcc.panel = true; this.bindAcc.panel = true;
}, },
...@@ -690,6 +695,7 @@ export default { ...@@ -690,6 +695,7 @@ export default {
}, },
// 获取公司列表方法 // 获取公司列表方法
getListAllAccInfoFN() { getListAllAccInfoFN() {
this.$modal.loading('加载中...')
listAllAccInfo(this.params).then(res => { listAllAccInfo(this.params).then(res => {
if (res.code == 200) { if (res.code == 200) {
if (this.params.bindType == 1) { if (this.params.bindType == 1) {
...@@ -698,6 +704,8 @@ export default { ...@@ -698,6 +704,8 @@ export default {
this.thirdParty = res.data this.thirdParty = res.data
} }
} }
}).finally(() => {
this.$modal.closeLoading()
}) })
}, },
// 点击去发薪按钮执行 // 点击去发薪按钮执行
...@@ -719,10 +727,13 @@ export default { ...@@ -719,10 +727,13 @@ export default {
// console.log('payType', this.payType); // console.log('payType', this.payType);
}, },
queryHasNoAccOut() { queryHasNoAccOut() {
this.$modal.loading('加载中...')
queryHasNoAccSign().then(resp => { queryHasNoAccSign().then(resp => {
if (200 === resp.code) { if (200 === resp.code) {
this.signNoAccList = resp.data this.signNoAccList = resp.data
} }
}).finally(() => {
this.$modal.closeLoading()
}) })
}, },
viewDetail(card) { viewDetail(card) {
......
...@@ -6,7 +6,8 @@ ...@@ -6,7 +6,8 @@
</el-form-item> </el-form-item>
<el-form-item label="签约状态" prop="signStatus"> <el-form-item label="签约状态" prop="signStatus">
<el-select v-model="queryParams.signStatus" placeholder="请选择签约状态" clearable @change="handleQuery"> <el-select v-model="queryParams.signStatus" placeholder="请选择签约状态" clearable @change="handleQuery">
<el-option v-for="dict in dict.type.tax_labor_sign_status" :key="dict.value" :label="dict.label" :value="dict.value" /> <el-option v-for="dict in dict.type.tax_labor_sign_status" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
...@@ -16,36 +17,31 @@ ...@@ -16,36 +17,31 @@
</el-form> </el-form>
<el-table v-loading="loading" :data="unitInfoList"> <el-table v-loading="loading" :data="unitInfoList">
<el-table-column type="selection" width="55" align="center"/> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="代发企业" align="center" prop="unitName" fixed/> <el-table-column label="代发企业" align="center" prop="unitName" fixed />
<el-table-column label="机构代码" align="center" prop="unitCode" fixed/> <el-table-column label="机构代码" align="center" prop="unitCode" fixed />
<el-table-column label="所属地址" align="center" prop="address"/> <el-table-column label="所属地址" align="center" prop="address" />
<el-table-column label="所属行业" align="center" prop="sectorDictDataVal"/> <el-table-column label="所属行业" align="center" prop="sectorDictDataVal" />
<el-table-column label="可开票类型" align="center" prop="invoiceTypes"> <el-table-column label="可开票类型" align="center" prop="invoiceTypes">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag style="margin-top: 3px" v-for="(item, index) in scope.row.invoiceTypes.split(',')" <dict-tag style="margin-top: 3px" v-for="(item, index) in scope.row.invoiceTypes.split(',')" :key="index"
:options="dict.type.tax_invoice_type" :value="item" :options="dict.type.tax_invoice_type" :value="item" />
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="月开票额度" align="center" prop="invoiceLimit"/> <el-table-column label="月开票额度" align="center" prop="invoiceLimit" />
<el-table-column label="联系人" align="center" prop="legalPersonName"/> <el-table-column label="联系人" align="center" prop="legalPersonName" />
<el-table-column label="联系电话" align="center" prop="legalPersonMobile"/> <el-table-column label="联系电话" align="center" prop="legalPersonMobile" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button size="mini" type="text" icon="el-icon-edit" @click="toSign(scope.row)"
size="mini" v-hasPermi="['business:laborSign:add']">签约
type="text"
icon="el-icon-edit"
@click="toSign(scope.row)"
v-hasPermi="['business:laborSign:add']"
>签约
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" /> @pagination="getList" />
<!-- 签约申请 --> <!-- 签约申请 -->
<el-dialog title="签约申请" :visible.sync="signPanel" width="500px" append-to-body> <el-dialog title="签约申请" :visible.sync="signPanel" width="500px" append-to-body>
<el-form ref="signForm" :model="signForm" :rules="signFormRules" label-width="80px"> <el-form ref="signForm" :model="signForm" :rules="signFormRules" label-width="80px">
...@@ -54,8 +50,7 @@ ...@@ -54,8 +50,7 @@
</el-form-item> </el-form-item>
<el-form-item label="签约主体" prop="inviterName"> <el-form-item label="签约主体" prop="inviterName">
<el-select v-model="signForm.inviterId" clearable placeholder="请选择发薪主体"> <el-select v-model="signForm.inviterId" clearable placeholder="请选择发薪主体">
<el-option v-for="item in payerCompanyArr" :key="item.id" :label="item.companyName" <el-option v-for="item in payerCompanyArr" :key="item.id" :label="item.companyName" :value="item.id">
:value="item.id">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -65,6 +60,16 @@ ...@@ -65,6 +60,16 @@
<el-button @click="signPanel = false">取 消</el-button> <el-button @click="signPanel = false">取 消</el-button>
</div> </div>
</el-dialog> </el-dialog>
<!-- 点击签约后查看合同 -->
<el-dialog title="签约合同" :visible.sync="signContractPanelVisible" append-to-body width="45%" center>
<iframe
src="http://admin.xinruit.com/stage-api/profile/upload/2025/04/17/2c90b129-f55c-48a7-9e13-86b48b3354ab.pdf"
frameborder="0" style="width: 100%;height:500px"></iframe>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="signContractPaneSubmit">确 定</el-button>
<el-button @click="signContractPanelCancel">取 消</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
...@@ -107,7 +112,10 @@ export default { ...@@ -107,7 +112,10 @@ export default {
inviterId: [ inviterId: [
{ required: true, message: "签约主体不能为空", trigger: "blur" } { required: true, message: "签约主体不能为空", trigger: "blur" }
], ],
} },
/**查看签约合同参数 */
signContractPanelVisible: false,
toSignData: {}
}; };
}, },
created() { created() {
...@@ -150,18 +158,28 @@ export default { ...@@ -150,18 +158,28 @@ export default {
this.signForm.taxUnitId = row.id this.signForm.taxUnitId = row.id
this.signForm.taxUnitName = row.unitName this.signForm.taxUnitName = row.unitName
this.signPanel = true this.signPanel = true
}).catch(() => {}); }).catch(() => { });
}, },
submitSignForm() { signContractPaneSubmit() {
addLaborSign(this.signForm).then(resp => { addLaborSign(this.signForm).then(resp => {
if (200 === resp.code) { if (200 === resp.code) {
this.$modal.msgSuccess("操作成功!"); this.$modal.msgSuccess("操作成功!");
this.getList() this.signContractPanelVisible = false;
this.signPanel = false
this.$emit('submitSignContract')
} }
}).finally(() => { }).catch(() => {
this.signContractPanelVisible = false;
this.signPanel = false this.signPanel = false
}) })
},
signContractPanelCancel() {
this.signContractPanelVisible = false;
},
submitSignForm() {
this.signContractPanelVisible = true
} }
} },
}; };
</script> </script>
...@@ -2,24 +2,16 @@ ...@@ -2,24 +2,16 @@
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
<el-form-item label="企业名称" prop="inviterName"> <el-form-item label="企业名称" prop="inviterName">
<el-input <el-input v-model="queryParams.inviterName" placeholder="请输入合作企业名称" clearable
v-model="queryParams.inviterName" @keyup.enter.native="handleQuery" />
placeholder="请输入合作企业名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="代发企业" prop="taxUnitName"> <el-form-item label="代发企业" prop="taxUnitName">
<el-input <el-input v-model="queryParams.taxUnitName" placeholder="请输入信用代码" clearable @keyup.enter.native="handleQuery" />
v-model="queryParams.taxUnitName"
placeholder="请输入信用代码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
<el-form-item label="签约状态" prop="signStatus"> <el-form-item label="签约状态" prop="signStatus">
<el-select v-model="queryParams.signStatus" placeholder="请选择签约状态" clearable @change="handleQuery"> <el-select v-model="queryParams.signStatus" placeholder="请选择签约状态" clearable @change="handleQuery">
<el-option v-for="dict in dict.type.tax_labor_sign_status" :key="dict.value" :label="dict.label" :value="dict.value" /> <el-option v-for="dict in dict.type.tax_labor_sign_status" :key="dict.value" :label="dict.label"
:value="dict.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
...@@ -30,16 +22,16 @@ ...@@ -30,16 +22,16 @@
<el-table v-loading="loading" :data="tableData"> <el-table v-loading="loading" :data="tableData">
<el-table-column label="签约企业" align="center"> <el-table-column label="签约企业" align="center">
<el-table-column label="企业名称" align="center" prop="inviterName" fixed/> <el-table-column label="企业名称" align="center" prop="inviterName" fixed />
<el-table-column label="机构代码" align="center" prop="inviterCode" fixed/> <el-table-column label="机构代码" align="center" prop="inviterCode" fixed />
<el-table-column label="联系人" align="center" prop="inviterUserName"/> <el-table-column label="联系人" align="center" prop="inviterUserName" />
<el-table-column label="联系电话" align="center" prop="inviterUserMobile"/> <el-table-column label="联系电话" align="center" prop="inviterUserMobile" />
</el-table-column> </el-table-column>
<el-table-column label="代发企业" align="center"> <el-table-column label="代发企业" align="center">
<el-table-column label="企业名称" align="center" prop="taxUnitName"/> <el-table-column label="企业名称" align="center" prop="taxUnitName" />
<el-table-column label="机构代码" align="center" prop="taxUnitCode"/> <el-table-column label="机构代码" align="center" prop="taxUnitCode" />
<el-table-column label="联系人" align="center" prop="taxUnitUserName"/> <el-table-column label="联系人" align="center" prop="taxUnitUserName" />
<el-table-column label="联系电话" align="center" prop="taxUnitUserMobile"/> <el-table-column label="联系电话" align="center" prop="taxUnitUserMobile" />
</el-table-column> </el-table-column>
<el-table-column label="签约状态" align="center" prop="signStatus"> <el-table-column label="签约状态" align="center" prop="signStatus">
<template slot-scope="scope"> <template slot-scope="scope">
...@@ -48,35 +40,28 @@ ...@@ -48,35 +40,28 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button size="mini" type="text" icon="el-icon-edit" @click="doAgree(scope.row)"
size="mini" v-if="scope.row.signStatus && 1 === scope.row.signStatus" v-hasPermi="['business:laborSign:add']">签约合约
type="text"
icon="el-icon-edit"
@click="doAgree(scope.row)"
v-if="scope.row.signStatus && 1 === scope.row.signStatus"
v-hasPermi="['business:laborSign:add']"
>签约合约
</el-button> </el-button>
<el-button <el-button size="mini" type="text" icon="el-icon-lollipop" @click="givePayAcc(scope.row)"
size="mini"
type="text"
icon="el-icon-lollipop"
@click="givePayAcc(scope.row)"
v-if="scope.row.signStatus && 2 === scope.row.signStatus && !scope.row.payAccNo" v-if="scope.row.signStatus && 2 === scope.row.signStatus && !scope.row.payAccNo"
v-hasPermi="['business:unitInfo:add']" v-hasPermi="['business:unitInfo:add']">分配账户
>分配账户
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 点击签约后查看合同 -->
<pagination <el-dialog title="签约合同" :visible.sync="doAgreePanelVisible" width="58%" center>
v-show="total>0" <iframe
:total="total" src="http://admin.xinruit.com/stage-api/profile/upload/2025/04/17/2c90b129-f55c-48a7-9e13-86b48b3354ab.pdf"
:page.sync="queryParams.pageNum" frameborder="0" style="width: 100%;height:600px"></iframe>
:limit.sync="queryParams.pageSize" <div slot="footer" class="dialog-footer">
@pagination="getList" <el-button type="primary" @click="doAgreePanelSubmit">确 定</el-button>
/> <el-button @click="doAgreePanelCancel">取 消</el-button>
</div>
</el-dialog>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
</div> </div>
</template> </template>
...@@ -102,8 +87,13 @@ export default { ...@@ -102,8 +87,13 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
inviterName: null, inviterName: null,
taxUnitName: null taxUnitName: null,
}
},
/** 合同查看弹窗 */
doAgreeData: {},
/** 合同查看弹窗 */
doAgreePanelVisible: false,
} }
}, },
created() { created() {
...@@ -136,18 +126,26 @@ export default { ...@@ -136,18 +126,26 @@ export default {
}, `unitInfo_${new Date().getTime()}.xlsx`) }, `unitInfo_${new Date().getTime()}.xlsx`)
}, },
doAgree(row) { doAgree(row) {
this.$confirm(`确认签订与${row.inviterName}的合约吗?`, '操作提示', { this.doAgreeData = row
this.doAgreePanelVisible = true
},
doAgreePanelSubmit() {
this.$confirm(`确认签订与${doAgreeData.inviterName}的合约吗?`, '操作提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
agreeSign(row.id).then(resp => { agreeSign(doAgreeData.id).then(resp => {
if (200 === resp.code) { if (200 === resp.code) {
this.$modal.msgSuccess("操作成功") this.$modal.msgSuccess("操作成功")
this.doAgreePanelVisible = false
this.getList() this.getList()
} }
}) })
}).catch(() => {}); }).catch(() => { });
},
doAgreePanelCancel() {
this.doAgreePanelVisible = false
}, },
givePayAcc(row) { givePayAcc(row) {
this.$confirm(`确认给[${row.inviterName}]分配付款专户吗?`, '操作提示', { this.$confirm(`确认给[${row.inviterName}]分配付款专户吗?`, '操作提示', {
...@@ -173,7 +171,7 @@ export default { ...@@ -173,7 +171,7 @@ export default {
} }
} }
}) })
}).catch(() => {}); }).catch(() => { });
} }
} }
} }
......
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