履约保证金增删改查

This commit is contained in:
caoxinyu
2018-12-15 13:17:59 +08:00
parent fc6c973db0
commit e23bf0b0f9
2 changed files with 254 additions and 6 deletions

View File

@@ -55,3 +55,56 @@ export function takeBack(num1, num2) {
}
})
}
export function executionProgressID() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '合同信息管理_执行进度_查询'
}
})
}
export function initType() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '投标保证金管理_保证金类型查询'
}
})
}
export function addPerformanceBond() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '合同信息管理_履约保证金_增加',
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&保证金类型流水号=' + arguments[2] + '&收回条件=' + arguments[3] + '&截止时间=' + arguments[4]
}
})
}
export function editPerformanceBond() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '合同信息管理_履约保证金_修改',
param: '项目流水号=' + arguments[0] + '&保证金金额=' + arguments[1] + '&保证金类型流水号=' + arguments[2] + '&收回条件=' + arguments[3] + '&截止时间=' + arguments[4] + '&履约保证金流水号=' + arguments[5]
}
})
}
export function delPerformanceBond() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '合同信息管理_履约保证金_删除',
param: '项目流水号=' + arguments[0] + '&履约保证金流水号=' + arguments[1]
}
})
}

View File

@@ -86,11 +86,13 @@
<el-table-column label="操作" fixed="right" align="center" width="260px">
<template slot-scope="scope">
<el-button
:disabled="scope.row.是否禁用增加履约保证金"
size="mini"
type="primary"
icon="el-icon-circle-plus-outline"
@click.stop="openAddInvoiceRecordingDialog(); flag = 1">履约保证金</el-button>
@click.stop="openPerformanceBondDialog(); flag = 1">履约保证金</el-button>
<el-button
:disabled="scope.row.是否禁用增加履约保函"
size="mini"
type="primary"
icon="el-icon-circle-plus-outline"
@@ -186,11 +188,11 @@
<el-button
size="mini"
type="warning"
@click.stop="openAddInvoiceRecordingDialog(); flag = 3">编辑</el-button>
@click.stop="openEditPerformanceBondDialog(scope.row); flag = 2">编辑</el-button>
<el-button
size="mini"
type="danger"
@click.stop="openAddInvoiceRecordingDialog(); flag = 3">删除</el-button>
@click.stop="delPerformanceBond(scope.row)">删除</el-button >
</template>
</el-table-column>
</el-table>
@@ -219,18 +221,71 @@
<el-button type="primary" @click="submitTime('form')"> </el-button>
</div>
</el-dialog>
<el-dialog :title="title1" :visible.sync="dialogFormVisible1" center style="min-height: 300px" width="40%">
<el-form ref="form2" :model="form2" :rules="rules2" label-position="left" label-width="120px" class="demo-ruleForm">
<el-row>
<el-col :span="12">
<el-form-item label="保证金金额" prop="保证金金额">
<el-input-number v-model="form2.保证金金额" :precision="2" :step="0.1" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="保证金类型" prop="保证金类型">
<el-select v-model="form2.保证金类型" filterable placeholder="请选择保证金类型" style="width: 200px" size="small">
<el-option
v-for="item in performanceBondType"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="收回条件" prop="收回条件">
<el-select v-model="form2.收回条件" filterable placeholder="请选择收回条件" style="width: 200px" size="small">
<el-option
v-for="item in plannedTime"
:key="item.value"
:label="item.label"
:value="item.value"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="截止时间(天)" prop="截止时间">
<el-input-number v-model="form2.截止时间" placeholder="请输入截止时间" style="width: 200px" size="small"/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="callOffPerformanceBondDialog('form2')">取消</el-button>
<el-button type="primary" @click="submitPerformanceBondDialog('form2')"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import elInput from 'element-ui/packages/input'
import { initProject, searchTableData1, typeOfPerformanceBond, searchTableData2, takeBack } from '@/api/MarketingCenter/PerformanceBond'
import { initProject, searchTableData1, typeOfPerformanceBond, searchTableData2, takeBack, executionProgressID, initType, addPerformanceBond, editPerformanceBond, delPerformanceBond } from '@/api/MarketingCenter/PerformanceBond'
export default {
components: {
elInput
},
data() {
const validateValue = (rule, value, callback) => {
if (value === 0) {
callback(new Error('金额不能为0'))
} else {
callback()
}
}
return {
title1: '', // 履约保证金新增或编辑对话框
entryNameValue: '', // 查询条件_项目名称
entryName: [], // 查询条件_项目名称数组
startTime: '', // 查询条件_开始时间
@@ -247,11 +302,28 @@ export default {
listLoading2: false,
dialogTimeVisible: false,
performanceBondCode: '', // 履约保证金流水号
dialogFormVisible1: false, // 履约保证金对话框
plannedTime: [],
performanceBondType: [],
form: {
实际收回日期: ''
},
form2: {
保证金金额: '',
保证金类型: 1,
收回条件: 1,
截止时间: 15
},
rules: { // 表单验证规则
实际收回日期: [{ required: true, message: '请选择实际收回日期', trigger: 'change' }]
},
rules2: { // 表单验证规则
保证金金额: [
{ required: true, message: '请输入保证金金额', trigger: 'change' },
{ required: true, trigger: 'blur', validator: validateValue }],
保证金类型: [{ required: true, message: '请选择保证金类型', trigger: 'change' }],
收回条件: [{ required: true, message: '请选择收回条件', trigger: 'change' }],
截止时间: [{ required: true, message: '请输入截止时间', trigger: 'change' }]
}
}
},
@@ -262,6 +334,8 @@ export default {
// 初始化条件
init() {
this.getSelect(initProject, ['项目名称', '项目流水号'], 'entryName')
this.getSelect(executionProgressID, ['执行进度名', '执行进度ID'], 'plannedTime')
this.getSelect(initType, ['保证金类型', '保证金类型流水号'], 'performanceBondType')
},
// 查询合同(项目)信息
fetchTableData1() {
@@ -275,6 +349,8 @@ export default {
const data = response.data
for (let i = 0; i < data.rows.length; i++) {
data.rows[i].合同签订日期 = data.rows[i].合同签订日期.substring(0, data.rows[i].合同签订日期.length - 8)
parseInt(data.rows[i].履约保证金类型) !== 0 ? data.rows[i].是否禁用增加履约保证金 = true : data.rows[i].是否禁用增加履约保证金 = false
parseInt(data.rows[i].履约保证金类型) !== 0 ? data.rows[i].是否禁用增加履约保函 = true : data.rows[i].是否禁用增加履约保函 = false
}
this.tableData1 = data.rows
this.total = data.total
@@ -310,7 +386,7 @@ export default {
data[i].实际收回日期 !== '' && data[i].实际收回日期 !== null ? data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8) : data[i].实际收回日期
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
}
this.tableData2 = data
})
@@ -351,7 +427,7 @@ export default {
data[i].实际收回日期 !== '' && data[i].实际收回日期 !== null ? data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8) : data[i].实际收回日期
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
}
this.tableData2 = data
})
@@ -367,6 +443,125 @@ export default {
})
}
})
},
openPerformanceBondDialog() {
this.addForm('form2')
this.title1 = '增加履约保证金'
this.dialogFormVisible1 = true
this.tableData2 = []
},
callOffPerformanceBondDialog() {
this.dialogFormVisible1 = false
},
submitPerformanceBondDialog(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
if (this.flag === 1) {
addPerformanceBond(this.projectId, this.form2.保证金金额, this.form2.保证金类型, this.form2.收回条件, this.form2.截止时间).then(response => {
if (response.data[0].result === '1') {
this.$message.success('操作成功')
this.fetchTableData1()
this.dialogFormVisible1 = false
typeOfPerformanceBond(this.projectId).then(response => {
const data = response.data[0].履约保证金类型
return data
}).then(data => {
if (data === 1) {
this.activeName = 'first'
this.listLoading2 = true
searchTableData2(this.projectId).then(response => {
this.listLoading2 = false
const data = response.data
for (let i = 0; i < data.length; i++) {
data[i].实际收回日期 !== '' && data[i].实际收回日期 !== null ? data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8) : data[i].实际收回日期
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
}
this.tableData2 = data
})
} else if (data === 1) {
this.activeName = 'second'
} else {
this.$message.warning('未缴纳履约保证金')
}
})
} else {
this.$message.error('操作失败')
}
})
} else if (this.flag === 2) {
editPerformanceBond(this.projectId, this.form2.保证金金额, this.form2.保证金类型, this.form2.收回条件, this.form2.截止时间, this.performanceBondCode).then(response => {
if (response.data[0].result === '1') {
this.$message.success('操作成功')
this.dialogFormVisible1 = false
typeOfPerformanceBond(this.projectId).then(response => {
const data = response.data[0].履约保证金类型
return data
}).then(data => {
if (data === 1) {
this.activeName = 'first'
this.listLoading2 = true
searchTableData2(this.projectId).then(response => {
this.listLoading2 = false
const data = response.data
for (let i = 0; i < data.length; i++) {
data[i].实际收回日期 !== '' && data[i].实际收回日期 !== null ? data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8) : data[i].实际收回日期
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
}
this.tableData2 = data
})
} else if (data === 1) {
this.activeName = 'second'
} else {
this.$message.warning('未缴纳履约保证金')
}
})
} else {
this.$message.error('操作失败')
}
})
}
}
})
},
openEditPerformanceBondDialog(row) {
this.dialogFormVisible1 = true
this.performanceBondCode = row.履约保证金流水号
this.form2.保证金金额 = row.履约保证金金额
this.form2.保证金类型 = row.保金类型
this.form2.收回条件 = parseInt(row.执行进度流水号)
},
delPerformanceBond(row) {
this.$confirm('此操作将永久删除该行, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
delPerformanceBond(this.projectId, row.履约保证金流水号).then(response => {
if (response.data[0].result === '1') {
this.$message.success('删除成功')
this.activeName = 'first'
this.listLoading2 = true
this.fetchTableData1()
searchTableData2(this.projectId).then(response => {
this.listLoading2 = false
const data = response.data
for (let i = 0; i < data.length; i++) {
data[i].实际收回日期 !== '' && data[i].实际收回日期 !== null ? data[i].实际收回日期 = data[i].实际收回日期.substring(0, data[i].实际收回日期.length - 8) : data[i].实际收回日期
data[i].节点日期 !== '' && data[i].节点日期 !== null ? data[i].节点日期 = data[i].节点日期.substring(0, data[i].节点日期.length - 8) : data[i].节点日期
data[i].计划收款日期 !== '' && data[i].计划收款日期 !== null ? data[i].计划收款日期 = data[i].计划收款日期.substring(0, data[i].计划收款日期.length - 8) : data[i].计划收款日期
data[i].计划收款日期 === '' || data[i].计划收款日期 === null || parseInt(data[i].是否收回) === 1 ? data[i].是否禁用收回 = true : data[i].是否禁用收回 = false
}
this.tableData2 = data
})
} else {
this.$message.error('数据占用')
}
})
})
}
}
}