@@ -0,0 +1,102 @@ | |||
import request from '@/utils/request' | |||
// 查询银行转账列表 | |||
export function listTransfer(query) { | |||
return request({ | |||
url: '/yinnong/transfer/list', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询银行转账详细 | |||
export function getTransfer(id) { | |||
return request({ | |||
url: '/yinnong/transfer/get/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
export function queryTransferDetail(transferId){ | |||
return request({ | |||
url: '/yinnong/transferDetail/getDetails/' + transferId, | |||
method: 'get' | |||
}) | |||
} | |||
export function listPayee(query) { | |||
return request({ | |||
url: '/yinnong/payee/selectlist', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 修改银行转账 | |||
export function updateTransfer(data) { | |||
return request({ | |||
url: '/yinnong/transfer/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 查询工程项目关联关系详细 | |||
export function getProjectto(query) { | |||
return request({ | |||
url: '/yinnong/project/getProjectto/', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询工程项目列表 | |||
export function listProject(query) { | |||
return request({ | |||
url: '/yinnong/project/list', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 新增工程项目关联关系 | |||
export function addProjectto(data) { | |||
return request({ | |||
url: '/yinnong/project/addProjectto', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 提交审批 | |||
export function customSubmit(id) { | |||
return request({ | |||
url: '/yinnong/transfer/customSubmit/' + id, | |||
method: 'post' | |||
}) | |||
} | |||
// 新增银行转账 | |||
export function addTransfer(data) { | |||
return request({ | |||
url: '/yinnong/transfer/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 查询转账账户详情详细 | |||
export function getTransferProcess(id) { | |||
return request({ | |||
url: '/yinnong/transfer/getProcessSchedule/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 查询转账账户详情详细 | |||
export function getCashProcess(id) { | |||
return request({ | |||
url: '/yinnong/cash/getProcessSchedule/' + id, | |||
method: 'get' | |||
}) | |||
} |
@@ -18,7 +18,7 @@ import global from '@/utils/global'; | |||
import { getDicts } from "@/utils/data"; | |||
import { houseGetDicts } from '@/utils/data'; | |||
import { selectDictLabel , onClickLeft , getNowFormatDate } from "@/utils/utils"; | |||
import { selectDictLabel , onClickLeft , getNowFormatDate , format } from "@/utils/utils"; | |||
//全局方法挂载 | |||
Vue.prototype.getDicts = getDicts | |||
@@ -26,6 +26,7 @@ Vue.prototype.houseGetDicts = houseGetDicts | |||
Vue.prototype.selectDictLabel = selectDictLabel | |||
Vue.prototype.onClickLeft = onClickLeft | |||
Vue.prototype.getNowFormatDate = getNowFormatDate | |||
Vue.prototype.format = format | |||
Vue.prototype.global = global | |||
// Vant 引用 | |||
@@ -969,6 +969,15 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/onlineHome/bankAgriculture/paymentApproval/approvalList'], resolve) | |||
}, | |||
{ | |||
path: '/approvalDetail', | |||
name: 'approvalDetail', | |||
meta: { | |||
title: '银农支付付款申请', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/onlineHome/bankAgriculture/paymentApproval/approvalDetail'], resolve) | |||
}, | |||
{ | |||
path: '/approvalAdd', | |||
name: 'approvalAdd', | |||
@@ -48,3 +48,30 @@ export function getNowFormatDate(time) { | |||
return currentdate; | |||
} | |||
export function format(time, format) { | |||
var t = new Date(time); | |||
var tf = function (i) { return (i < 10 ? '0' : '') + i }; | |||
return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function (a) { | |||
switch (a) { | |||
case 'yyyy': | |||
return tf(t.getFullYear()); | |||
break; | |||
case 'MM': | |||
return tf(t.getMonth() + 1); | |||
break; | |||
case 'mm': | |||
return tf(t.getMinutes()); | |||
break; | |||
case 'dd': | |||
return tf(t.getDate()); | |||
break; | |||
case 'HH': | |||
return tf(t.getHours()); | |||
break; | |||
case 'ss': | |||
return tf(t.getSeconds()); | |||
break; | |||
} | |||
}) | |||
} |
@@ -12,13 +12,13 @@ | |||
</van-nav-bar> | |||
<p class="main_title">基础信息</p> | |||
<div class="main_box"> | |||
<van-field label="付款方" placeholder="请输入付款方" input-align="right" label-width="auto"/> | |||
<van-field label="付款方账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field label="支出总金额" placeholder="根据下方收款金额自动核算" input-align="right" label-width="auto"/> | |||
<van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/> | |||
<van-field label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field label="支出总金额" v-model="form.expenditureAmount" placeholder="根据下方收款金额自动核算" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
v-model="jgList.lasj" | |||
v-model="form.applyDate" | |||
label="申请时间" | |||
placeholder="请选择申请时间" | |||
@click="showlasj = true" | |||
@@ -40,23 +40,23 @@ | |||
clickable | |||
label="资金支出类别" | |||
placeholder="请选择" | |||
v-model="sfzjjzw" | |||
@click="showSys = true" | |||
v-model="capitalExpenditureType" | |||
@click="showcapital = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showSys" position="bottom"> | |||
<van-popup v-model="showcapital" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="sysDictionaries" | |||
@confirm="onConfirmSys" | |||
@cancel="showSys = false" | |||
:columns="capitalExpenditureTypeOptions" | |||
@confirm="onConfirmCapital" | |||
@cancel="showcapital = false" | |||
/> | |||
</van-popup> | |||
<van-cell title="收款账户类型"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal"> | |||
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange"> | |||
<van-radio name="1">公户</van-radio> | |||
<van-radio name="2">私户</van-radio> | |||
</van-radio-group> | |||
@@ -65,59 +65,105 @@ | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="付款事由" type="textarea" placeholder="请输入付款事由" input-align="right" rows="3" label-width="auto"/> | |||
<van-field label="付款事由" v-model="form.remark" type="textarea" placeholder="请输入付款事由" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="说明情况" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/> | |||
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<p class="main_title">列表信息<van-button icon="plus" size="mini" type="info" native-type="button" class="addFamily"/></p> | |||
<div class="main_box"> | |||
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;"> | |||
<van-field | |||
readonly | |||
clickable | |||
label="收款方" | |||
label="项目名称" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
v-model="projectForm.projectName" | |||
@click="showproject = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-popup v-model="showproject" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
:columns="projectListShow" | |||
@confirm="onConfirmProject" | |||
@cancel="showproject = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="jgList.wfydmj" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.fmkje" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.msmj" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto"/> | |||
<van-field v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/> | |||
<van-field v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
label="所属银行" | |||
label="工程款类型" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
v-model="projectFundType" | |||
@click="showFundType = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-popup v-model="showFundType" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
:columns="projectFundTypeOptions" | |||
@confirm="onConfirmFundType" | |||
@cancel="showFundType = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/> | |||
</div> | |||
<p class="main_title">列表信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p> | |||
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index"> | |||
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" /> | |||
<div class="main_box" style="margin-bottom: 10px;position:relative;"> | |||
<van-field | |||
readonly | |||
clickable | |||
label="收款方" | |||
placeholder="请选择" | |||
v-model="item.payee" | |||
@click="showpayee = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showpayee" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="payeeList" | |||
@confirm="onConfirmPayee" | |||
@cancel="showpayee = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="item.payeeAccount" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field v-model="item.bankDeposit" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/> | |||
<van-field v-model="item.incomeAmount" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
label="所属银行" | |||
placeholder="请选择" | |||
v-model="item.bankTypeText" | |||
@click="showbankType = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showbankType" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="bankTypeDictionaries" | |||
@confirm="onConfirmBankType" | |||
@cancel="showbankType = false" | |||
/> | |||
</van-popup> | |||
</div> | |||
</div> | |||
<div style="padding: 16px 0;"> | |||
<van-row> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goBack" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button> | |||
<van-button type="info" native-type="submit" @click="goUpdate" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button> | |||
</van-col> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goAdd" class="submitButton">保存并提交</van-button> | |||
@@ -129,98 +175,313 @@ | |||
</template> | |||
<script> | |||
import { jgAdd } from "@/api/onlineHome/homestead/reporting"; | |||
import { addTransfer , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalAdd", | |||
name: "approvalModify", | |||
data() { | |||
return { | |||
showSys:false, | |||
showjglx:false, | |||
showcapital:false, | |||
showpayee:false, | |||
showlasj:false, | |||
showinspectorTime:false, | |||
showwfydlx:false, | |||
showReformDeadline:false, | |||
showbankType:false, | |||
showproject:false, | |||
showFundType:false, | |||
minDate: new Date(), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(), | |||
jgList:{}, | |||
form:{}, | |||
sfzjjzw:'', | |||
jglx:'', | |||
wfydlx:'', | |||
capitalExpenditureType:'', | |||
payee:'', | |||
bankType:'', | |||
wfydlxDictionaries:[], | |||
jglxDictionaries:[], | |||
sysDictionaries:[], | |||
capitalExpenditureTypeOptions:[], | |||
bankTypeDictionaries:[], | |||
projectList:[], | |||
projectFundTypeOptions:[], | |||
projectFundTypeDictionaries:[], | |||
projectListShow:[], | |||
chargeItme:[], | |||
chargeItmeShow:[], | |||
payeeList:[], | |||
// 查询参数 | |||
queryParams: { | |||
transferType:"", | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
}, | |||
capitalExpenditureOpen:false, | |||
projectForm:{ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:'1', | |||
outId:null, | |||
ynType:'1' | |||
}, | |||
projectFundType:'' | |||
}; | |||
}, | |||
created() { | |||
this.reset(); | |||
let queryParams={ | |||
pageNum: 1, | |||
pageSize: 100, | |||
} | |||
listProject(queryParams).then(response => { | |||
console.log(response) | |||
this.projectList = response.rows; | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id}); | |||
} | |||
}); | |||
this.getDicts("project_fund_type").then((response) => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.projectFundTypeDictionaries = response.data; | |||
}); | |||
this.getDictionaries(); | |||
}, | |||
methods: { | |||
// 表单重置 | |||
reset() { | |||
this.form = { | |||
id: null, | |||
upId: null, | |||
downId: null, | |||
transferType:"", | |||
orderId: null, | |||
cashierId: null, | |||
transferType: '1', | |||
accountType: '2', | |||
explainSituation: null, | |||
succeedAmount: null, | |||
payer: null, | |||
payerAccount: null, | |||
operatorCode: null, | |||
enterpriseCode: null, | |||
expenditureAmount: null, | |||
capitalExpenditureType: '1', | |||
remark: null, | |||
transferStatus: "0", | |||
auditStatus: "0", | |||
paymentState: "1", | |||
bankPriority: "0", | |||
clientPriority: "0" | |||
}; | |||
this.processList = {} | |||
this.projectForm={ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:'1', | |||
outId:null, | |||
ynType:'1' | |||
} | |||
}, | |||
getDictionaries(){ | |||
//违法用地类型 | |||
this.houseGetDicts("villations_type").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.wfydlxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
this.getDicts("capital_expenditure_type").then((res) => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
}); | |||
//监管类型 | |||
this.houseGetDicts("jglx").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.jglxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
this.getDicts("bank_type").then(res => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
}); | |||
//是否在建建筑物 | |||
this.houseGetDicts("sys_yes_no").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.sysDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
this.getPayeeList(); | |||
}, | |||
addChargeItme(index){ | |||
this.chargeItme.splice(index + 1, 0, { | |||
payeeId: "", //收款方ID | |||
payee: "", //收款方 | |||
payeeAccount: "", //收款账户 | |||
bankDeposit: "", //开户银行 | |||
incomeAmount: "", //收入金额 | |||
bankType: "", //所属银行 | |||
}); | |||
}, | |||
getPayeeList() { | |||
//普通转账 | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
onConfirmSys(data){ | |||
this.sfzjjzw = data.text; | |||
this.jgList.sfzjjzw = data.value; | |||
this.showSys = false; | |||
payeeDictLabel(datas, value) { | |||
var actions = []; | |||
Object.keys(datas).some((key) => { | |||
if (datas[key].payeeId == ('' + value)) { | |||
actions.push(datas[key].payee); | |||
return true; | |||
} | |||
}) | |||
return actions.join(''); | |||
}, | |||
onConfirmCapital(data){ | |||
console.log(data) | |||
if (data.value != 2){ | |||
this.capitalExpenditureOpen = false; | |||
this.projectForm = []; | |||
}else{ | |||
this.capitalExpenditureOpen = true; | |||
} | |||
this.capitalExpenditureType = data.text; | |||
this.form.capitalExpenditureType = data.value; | |||
this.showcapital = false; | |||
}, | |||
onConfirmFundType(data){ | |||
console.log(data) | |||
this.projectForm.projectFundType = data.value; | |||
this.projectFundType = data.text; | |||
this.showFundType = false; | |||
}, | |||
onConfirmProject(data){ | |||
console.log(data) | |||
this.projectList.map(res => { | |||
console.log(res) | |||
if(res.projectName==data.text){ | |||
this.projectForm.projectId = res.id | |||
this.projectForm.projectName = res.projectName | |||
this.projectForm.projectContractor = res.projectContractor | |||
this.projectForm.projectAmount = res.projectAmount | |||
console.log(this.projectForm) | |||
} | |||
}) | |||
this.showproject = false; | |||
}, | |||
onConfirmJglx(data){ | |||
this.jglx = data.text; | |||
this.jgList.jglx = data.value; | |||
this.showjglx = false; | |||
onConfirmPayee(data){ | |||
// this.chargeItme[this.chargeItme.length-1].payeeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payee = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payeeId = data.value; | |||
console.log(this.chargeItme) | |||
this.showpayee = false; | |||
}, | |||
onConfirmWfydlx(data){ | |||
this.wfydlx = data.text; | |||
this.jgList.wfydlx = data.value; | |||
this.showwfydlx = false; | |||
onConfirmBankType(data){ | |||
console.log(this.chargeItme) | |||
this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].bankType = data.value; | |||
this.showbankType = false; | |||
}, | |||
onConfirmLasj(data){ | |||
this.jgList.lasj = this.getNowFormatDate(data).substr(0,10); | |||
this.form.applyDate = this.getNowFormatDate(data).substr(0,10); | |||
this.showlasj = false; | |||
}, | |||
onConfirmInspectorTime(data){ | |||
this.jgList.inspectorTime = this.getNowFormatDate(data).substr(0,10); | |||
this.showinspectorTime = false; | |||
}, | |||
onConfirmReformDeadline(data){ | |||
this.jgList.reformDeadline = this.getNowFormatDate(data).substr(0,10); | |||
this.showReformDeadline = false; | |||
accountTypeChange(e){ | |||
console.log(e) | |||
this.payeeList = []; | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
goAdd(){ | |||
console.log(this.jgList) | |||
jgAdd(this.jgList).then(response => { | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
console.log(this.form); | |||
addTransfer(this.form).then(response => { | |||
console.log(response); | |||
this.$toast.success('保存成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
this.projectForm.outId = response.data.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
console.log(this.projectForm) | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
customSubmit(response.data.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}) | |||
}else{ | |||
customSubmit(response.data.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
} | |||
}); | |||
}, | |||
goUpdate(){ | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
this.projectForm.outId = this.form.id | |||
addTransfer(this.form).then((response) => { | |||
this.projectForm.outId = response.data.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}else{ | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
} | |||
}); | |||
}, | |||
goBack(){ | |||
window.history.go(-1) | |||
} | |||
}, | |||
//删除家庭成员 | |||
deleteChargeItme(index){ | |||
this.chargeItme.splice(index,1) | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -255,4 +516,11 @@ | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
.deleteFamily{ | |||
position: absolute; | |||
top: 0rem; | |||
right: 6%; | |||
z-index: 9; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -7,220 +7,346 @@ | |||
@click-left="$router.back(-1)" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">添加付款申请</p> | |||
<p style="font-weight: bold;">查看付款申请</p> | |||
</template> | |||
<template #right> | |||
<van-icon name="../../../static/images/icon/icon_flow.png" size="20" @click="goFlow"/> | |||
</template> | |||
</van-nav-bar> | |||
<p class="main_title">基础信息</p> | |||
<div class="main_box"> | |||
<van-field label="付款方" placeholder="请输入付款方" input-align="right" label-width="auto"/> | |||
<van-field label="付款方账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field label="支出总金额" placeholder="根据下方收款金额自动核算" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
v-model="jgList.lasj" | |||
label="申请时间" | |||
placeholder="请选择申请时间" | |||
@click="showlasj = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showlasj" position="bottom"> | |||
<van-datetime-picker | |||
v-model="currentDate" | |||
type="date" | |||
title="选择年月日" | |||
:min-date="minDate" | |||
:max-date="maxDate" | |||
@confirm="onConfirmLasj" | |||
/> | |||
</van-popup> | |||
<van-field | |||
readonly | |||
clickable | |||
label="资金支出类别" | |||
placeholder="请选择" | |||
v-model="sfzjjzw" | |||
@click="showSys = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showSys" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="sysDictionaries" | |||
@confirm="onConfirmSys" | |||
@cancel="showSys = false" | |||
/> | |||
</van-popup> | |||
<van-cell title="收款账户类型"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal"> | |||
<van-radio name="1">公户</van-radio> | |||
<van-radio name="2">私户</van-radio> | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-field readonly label="付款方" v-model="form.payer" input-align="right" label-width="auto"/> | |||
<van-field readonly label="付款方账户" v-model="form.payerAccount" input-align="right" label-width="auto"/> | |||
<van-field readonly label="支出总金额" v-model="form.expenditureAmount" input-align="right" label-width="auto"/> | |||
<van-field readonly label="申请时间" v-model="form.applyDate" input-align="right" /> | |||
<van-field readonly label="资金支出类别" v-model="capitalExpenditureType" input-align="right" label-width="auto" /> | |||
<van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="付款事由" type="textarea" placeholder="请输入付款事由" input-align="right" rows="3" label-width="auto"/> | |||
<van-field readonly label="付款事由" v-model="form.remark" type="textarea" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="说明情况" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/> | |||
<van-field readonly label="说明情况" v-model="form.explainSituation" type="textarea" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<p class="main_title">列表信息<van-button icon="plus" size="mini" type="info" native-type="button" class="addFamily"/></p> | |||
<div class="main_box"> | |||
<van-field | |||
readonly | |||
clickable | |||
label="收款方" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="jgList.wfydmj" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.fmkje" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.msmj" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
label="所属银行" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
/> | |||
</van-popup> | |||
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;"> | |||
<van-field readonly label="项目名称" v-model="projectForm.projectName" input-align="right" /> | |||
<van-field readonly label="承建单位" v-model="projectForm.projectContractor" input-align="right" label-width="auto"/> | |||
<van-field readonly label="合同价款(元)" v-model="projectForm.projectAmount" input-align="right" label-width="auto"/> | |||
<van-field readonly label="工程款类型" v-model="projectFundType" input-align="right" /> | |||
<van-field readonly label="工程发票号" v-model="projectForm.projectBillNum" input-align="right" label-width="auto"/> | |||
</div> | |||
<div style="padding: 16px 0;"> | |||
<van-row> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goBack" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button> | |||
</van-col> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goAdd" class="submitButton">保存并提交</van-button> | |||
</van-col> | |||
</van-row> | |||
<div class="clear"></div> | |||
<p class="main_title">列表信息</p> | |||
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index"> | |||
<div class="main_box" style="margin-bottom: 10px;position:relative;"> | |||
<van-field readonly label="收款方" v-model="item.payee" input-align="right" /> | |||
<van-field readonly label="收款账户" v-model="item.payeeAccount" input-align="right" label-width="auto"/> | |||
<van-field readonly label="开户银行" v-model="item.bankDeposit" input-align="right" label-width="auto"/> | |||
<van-field readonly label="收入金额" v-model="item.incomeAmount" input-align="right" label-width="auto"/> | |||
<van-field readonly label="所属银行" v-model="item.bankTypeText" input-align="right" /> | |||
</div> | |||
</div> | |||
</div> | |||
</template> | |||
<script> | |||
import { jgAdd } from "@/api/onlineHome/homestead/reporting"; | |||
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalAdd", | |||
name: "approvalModify", | |||
data() { | |||
return { | |||
showSys:false, | |||
showjglx:false, | |||
showcapital:false, | |||
showpayee:false, | |||
showlasj:false, | |||
showinspectorTime:false, | |||
showwfydlx:false, | |||
showReformDeadline:false, | |||
showbankType:false, | |||
showproject:false, | |||
showFundType:false, | |||
minDate: new Date(), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(), | |||
jgList:{}, | |||
form:{}, | |||
sfzjjzw:'', | |||
jglx:'', | |||
wfydlx:'', | |||
capitalExpenditureType:'', | |||
payee:'', | |||
bankType:'', | |||
wfydlxDictionaries:[], | |||
jglxDictionaries:[], | |||
sysDictionaries:[], | |||
capitalExpenditureTypeOptions:[], | |||
bankTypeDictionaries:[], | |||
projectList:[], | |||
projectFundTypeOptions:[], | |||
projectFundTypeDictionaries:[], | |||
projectListShow:[], | |||
chargeItme:[], | |||
chargeItmeShow:[], | |||
payeeList:[], | |||
// 查询参数 | |||
queryParams: { | |||
transferType:"", | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
}, | |||
capitalExpenditureOpen:false, | |||
projectForm:{ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:'1', | |||
outId:null, | |||
ynType:'1' | |||
}, | |||
projectFundType:'' | |||
}; | |||
}, | |||
created() { | |||
let queryParams={ | |||
pageNum: 1, | |||
pageSize: 100, | |||
} | |||
listProject(queryParams).then(response => { | |||
console.log(response) | |||
this.projectList = response.rows; | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id}); | |||
} | |||
}); | |||
this.getDicts("project_fund_type").then((response) => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.projectFundTypeDictionaries = response.data; | |||
}); | |||
this.getDictionaries(); | |||
}, | |||
methods: { | |||
goFlow(){ | |||
window.location='approvalProcess?id='+this.$route.query.id; | |||
}, | |||
getDictionaries(){ | |||
//违法用地类型 | |||
this.houseGetDicts("villations_type").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.wfydlxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
getTransfer(this.$route.query.id).then((response) => { | |||
this.getDicts("capital_expenditure_type").then((res) => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType); | |||
}); | |||
if(response.data.capitalExpenditureType==2){ | |||
this.capitalExpenditureOpen = true | |||
let param={ | |||
'outId' : response.data.id, | |||
'ynType' : '1' | |||
} | |||
getProjectto(param).then(res => { | |||
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType); | |||
this.projectForm = res.data | |||
}) | |||
}else{ | |||
this.showproject = false | |||
} | |||
this.form = response.data; | |||
}); | |||
//监管类型 | |||
this.houseGetDicts("jglx").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.jglxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
} | |||
queryTransferDetail(this.$route.query.id).then((response) => { | |||
this.getDicts("bank_type").then(res => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
for (var j = 0 ; j < response.rows.length ; j++){ | |||
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType); | |||
} | |||
this.chargeItme = response.rows; | |||
}); | |||
this.getPayeeList(); | |||
}); | |||
}, | |||
addChargeItme(index){ | |||
this.chargeItme.splice(index + 1, 0, { | |||
payeeId: "", //收款方ID | |||
payee: "", //收款方 | |||
payeeAccount: "", //收款账户 | |||
bankDeposit: "", //开户银行 | |||
incomeAmount: "", //收入金额 | |||
bankType: "", //所属银行 | |||
}); | |||
//是否在建建筑物 | |||
this.houseGetDicts("sys_yes_no").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.sysDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
}, | |||
getPayeeList() { | |||
//普通转账 | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
onConfirmSys(data){ | |||
this.sfzjjzw = data.text; | |||
this.jgList.sfzjjzw = data.value; | |||
this.showSys = false; | |||
payeeDictLabel(datas, value) { | |||
var actions = []; | |||
Object.keys(datas).some((key) => { | |||
if (datas[key].payeeId == ('' + value)) { | |||
actions.push(datas[key].payee); | |||
return true; | |||
} | |||
}) | |||
return actions.join(''); | |||
}, | |||
onConfirmCapital(data){ | |||
console.log(data) | |||
if (data.value != 2){ | |||
this.capitalExpenditureOpen = false; | |||
this.projectForm = []; | |||
}else{ | |||
this.capitalExpenditureOpen = true; | |||
} | |||
this.capitalExpenditureType = data.text; | |||
this.form.capitalExpenditureType = data.value; | |||
this.showcapital = false; | |||
}, | |||
onConfirmJglx(data){ | |||
this.jglx = data.text; | |||
this.jgList.jglx = data.value; | |||
this.showjglx = false; | |||
onConfirmFundType(data){ | |||
console.log(data) | |||
this.projectForm.projectFundType = data.value; | |||
this.projectFundType = data.text; | |||
this.showFundType = false; | |||
}, | |||
onConfirmWfydlx(data){ | |||
this.wfydlx = data.text; | |||
this.jgList.wfydlx = data.value; | |||
this.showwfydlx = false; | |||
onConfirmProject(data){ | |||
console.log(data) | |||
this.projectList.map(res => { | |||
console.log(res) | |||
if(res.projectName==data.text){ | |||
this.projectForm.projectId = res.id | |||
this.projectForm.projectName = res.projectName | |||
this.projectForm.projectContractor = res.projectContractor | |||
this.projectForm.projectAmount = res.projectAmount | |||
console.log(this.projectForm) | |||
} | |||
}) | |||
this.showproject = false; | |||
}, | |||
onConfirmPayee(data){ | |||
// this.chargeItme[this.chargeItme.length-1].payeeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payee = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payeeId = data.value; | |||
console.log(this.chargeItme) | |||
this.showpayee = false; | |||
}, | |||
onConfirmBankType(data){ | |||
console.log(this.chargeItme) | |||
this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].bankType = data.value; | |||
this.showbankType = false; | |||
}, | |||
onConfirmLasj(data){ | |||
this.jgList.lasj = this.getNowFormatDate(data).substr(0,10); | |||
this.form.applyDate = this.getNowFormatDate(data).substr(0,10); | |||
this.showlasj = false; | |||
}, | |||
onConfirmInspectorTime(data){ | |||
this.jgList.inspectorTime = this.getNowFormatDate(data).substr(0,10); | |||
this.showinspectorTime = false; | |||
}, | |||
onConfirmReformDeadline(data){ | |||
this.jgList.reformDeadline = this.getNowFormatDate(data).substr(0,10); | |||
this.showReformDeadline = false; | |||
accountTypeChange(e){ | |||
console.log(e) | |||
this.payeeList = []; | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
goAdd(){ | |||
console.log(this.jgList) | |||
jgAdd(this.jgList).then(response => { | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
console.log(this.form); | |||
updateTransfer(this.form).then(response => { | |||
console.log(response); | |||
this.$toast.success('保存成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
this.projectForm.outId = this.form.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
console.log(this.projectForm) | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
customSubmit(this.form.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}) | |||
}else{ | |||
customSubmit(this.form.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
} | |||
}); | |||
}, | |||
goUpdate(){ | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
this.projectForm.outId = this.form.id | |||
updateTransfer(this.form).then((response) => { | |||
this.projectForm.outId = this.form.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}else{ | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
} | |||
}); | |||
}, | |||
goBack(){ | |||
window.history.go(-1) | |||
} | |||
}, | |||
//删除家庭成员 | |||
deleteChargeItme(index){ | |||
this.chargeItme.splice(index,1) | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -255,4 +381,11 @@ | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
.deleteFamily{ | |||
position: absolute; | |||
top: 0rem; | |||
right: 6%; | |||
z-index: 9; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -22,21 +22,21 @@ | |||
@load="getList" | |||
> | |||
<van-swipe-cell v-for="(item,index) in applicationList" :key="index"> | |||
<van-cell title="高家庄集体经济合作社" value="草稿" center :to="{name:'applicationForm', query: {id:item.id,type:'modify'}}"> | |||
<van-cell :title="item.payer" :value="item.auditStatus" center :to="{name:'approvalDetail', query: {id:item.id}}"> | |||
<template #icon> | |||
<van-icon name="../../../static/images/icon/icon_yl.png" size="22" color="#539FFD" style="margin-right: 10px;" /> | |||
</template> | |||
<template #label> | |||
<p><span><i>¥</i>3056.00</span><i style="margin-right: 1rem;"></i>2018-01-09</p> | |||
<p><span><i>¥</i>{{item.expenditureAmount}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p> | |||
</template> | |||
</van-cell> | |||
<template #right> | |||
<van-row> | |||
<van-col> | |||
<van-button square text="修改" type="info" :to="{name:'applicationForm', query: {id:item.id}}" class="delete-button" /> | |||
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'approvalModify', query: {id:item.id}}" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" /> | |||
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" /> | |||
</van-col> | |||
</van-row> | |||
</template> | |||
@@ -46,27 +46,25 @@ | |||
</template> | |||
<script> | |||
import { getList , removeList } from "@/api/onlineHome/homestead/application"; | |||
import { listTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalList", | |||
data() { | |||
return { | |||
applicationList:[], | |||
houseApplyStatus:[], | |||
auditStatusOptions:[], | |||
loading: false, | |||
finished: false, | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
orderByColumn:'createTime', | |||
isAsc:'desc' | |||
transferType:"1", | |||
} | |||
}; | |||
}, | |||
created() { | |||
this.houseGetDicts("house_apply_status").then((response) => { | |||
console.log(response) | |||
this.houseApplyStatus = response.data; | |||
this.getDicts("audit_status").then((response) => { | |||
this.auditStatusOptions = response.data; | |||
}); | |||
}, | |||
methods: { | |||
@@ -75,11 +73,10 @@ export default { | |||
}, | |||
getList(){ | |||
setTimeout(() => { | |||
getList(this.queryParams).then(response => { | |||
listTransfer(this.queryParams).then(response => { | |||
console.log(response) | |||
for (var i = 0; i < response.rows.length; i++) { | |||
var houseApplyStatus = this.selectDictLabel(this.houseApplyStatus, response.rows[i].houseApplyStatus); | |||
response.rows[i].houseApplyStatus = houseApplyStatus; | |||
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus); | |||
this.applicationList.push(response.rows[i]); | |||
} | |||
console.log(this.applicationList.length >= response.total) | |||
@@ -12,13 +12,13 @@ | |||
</van-nav-bar> | |||
<p class="main_title">基础信息</p> | |||
<div class="main_box"> | |||
<van-field label="付款方" placeholder="请输入付款方" input-align="right" label-width="auto"/> | |||
<van-field label="付款方账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field label="支出总金额" placeholder="根据下方收款金额自动核算" input-align="right" label-width="auto"/> | |||
<van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/> | |||
<van-field label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field label="支出总金额" v-model="form.expenditureAmount" placeholder="根据下方收款金额自动核算" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
v-model="jgList.lasj" | |||
v-model="form.applyDate" | |||
label="申请时间" | |||
placeholder="请选择申请时间" | |||
@click="showlasj = true" | |||
@@ -40,23 +40,23 @@ | |||
clickable | |||
label="资金支出类别" | |||
placeholder="请选择" | |||
v-model="sfzjjzw" | |||
@click="showSys = true" | |||
v-model="capitalExpenditureType" | |||
@click="showcapital = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
label-width="auto" | |||
/> | |||
<van-popup v-model="showSys" position="bottom"> | |||
<van-popup v-model="showcapital" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="sysDictionaries" | |||
@confirm="onConfirmSys" | |||
@cancel="showSys = false" | |||
:columns="capitalExpenditureTypeOptions" | |||
@confirm="onConfirmCapital" | |||
@cancel="showcapital = false" | |||
/> | |||
</van-popup> | |||
<van-cell title="收款账户类型"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal"> | |||
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange"> | |||
<van-radio name="1">公户</van-radio> | |||
<van-radio name="2">私户</van-radio> | |||
</van-radio-group> | |||
@@ -65,59 +65,105 @@ | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="付款事由" type="textarea" placeholder="请输入付款事由" input-align="right" rows="3" label-width="auto"/> | |||
<van-field label="付款事由" v-model="form.remark" type="textarea" placeholder="请输入付款事由" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<van-field label="说明情况" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/> | |||
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<p class="main_title">列表信息<van-button icon="plus" size="mini" type="info" native-type="button" class="addFamily"/></p> | |||
<div class="main_box"> | |||
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;"> | |||
<van-field | |||
readonly | |||
clickable | |||
label="收款方" | |||
label="项目名称" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
v-model="projectForm.projectName" | |||
@click="showproject = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-popup v-model="showproject" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
:columns="projectListShow" | |||
@confirm="onConfirmProject" | |||
@cancel="showproject = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="jgList.wfydmj" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.fmkje" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/> | |||
<van-field v-model="jgList.msmj" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto"/> | |||
<van-field v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/> | |||
<van-field v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
label="所属银行" | |||
label="工程款类型" | |||
placeholder="请选择" | |||
v-model="wfydlx" | |||
@click="showwfydlx = true" | |||
v-model="projectFundType" | |||
@click="showFundType = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showwfydlx" position="bottom"> | |||
<van-popup v-model="showFundType" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="wfydlxDictionaries" | |||
@confirm="onConfirmWfydlx" | |||
@cancel="showwfydlx = false" | |||
:columns="projectFundTypeOptions" | |||
@confirm="onConfirmFundType" | |||
@cancel="showFundType = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/> | |||
</div> | |||
<p class="main_title">列表信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p> | |||
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index"> | |||
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" /> | |||
<div class="main_box" style="margin-bottom: 10px;position:relative;"> | |||
<van-field | |||
readonly | |||
clickable | |||
label="收款方" | |||
placeholder="请选择" | |||
v-model="item.payee" | |||
@click="showpayee = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showpayee" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="payeeList" | |||
@confirm="onConfirmPayee" | |||
@cancel="showpayee = false" | |||
/> | |||
</van-popup> | |||
<van-field v-model="item.payeeAccount" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/> | |||
<van-field v-model="item.bankDeposit" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/> | |||
<van-field v-model="item.incomeAmount" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto"/> | |||
<van-field | |||
readonly | |||
clickable | |||
label="所属银行" | |||
placeholder="请选择" | |||
v-model="item.bankTypeText" | |||
@click="showbankType = true" | |||
input-align="right" | |||
right-icon="arrow-down" | |||
/> | |||
<van-popup v-model="showbankType" position="bottom"> | |||
<van-picker | |||
show-toolbar | |||
:columns="bankTypeDictionaries" | |||
@confirm="onConfirmBankType" | |||
@cancel="showbankType = false" | |||
/> | |||
</van-popup> | |||
</div> | |||
</div> | |||
<div style="padding: 16px 0;"> | |||
<van-row> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goBack" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button> | |||
<van-button type="info" native-type="submit" @click="goUpdate" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button> | |||
</van-col> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" native-type="submit" @click="goAdd" class="submitButton">保存并提交</van-button> | |||
@@ -129,98 +175,301 @@ | |||
</template> | |||
<script> | |||
import { jgAdd } from "@/api/onlineHome/homestead/reporting"; | |||
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalAdd", | |||
name: "approvalModify", | |||
data() { | |||
return { | |||
showSys:false, | |||
showjglx:false, | |||
showcapital:false, | |||
showpayee:false, | |||
showlasj:false, | |||
showinspectorTime:false, | |||
showwfydlx:false, | |||
showReformDeadline:false, | |||
showbankType:false, | |||
showproject:false, | |||
showFundType:false, | |||
minDate: new Date(), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(), | |||
jgList:{}, | |||
form:{}, | |||
sfzjjzw:'', | |||
jglx:'', | |||
wfydlx:'', | |||
capitalExpenditureType:'', | |||
payee:'', | |||
bankType:'', | |||
wfydlxDictionaries:[], | |||
jglxDictionaries:[], | |||
sysDictionaries:[], | |||
capitalExpenditureTypeOptions:[], | |||
bankTypeDictionaries:[], | |||
projectList:[], | |||
projectFundTypeOptions:[], | |||
projectFundTypeDictionaries:[], | |||
projectListShow:[], | |||
chargeItme:[], | |||
chargeItmeShow:[], | |||
payeeList:[], | |||
// 查询参数 | |||
queryParams: { | |||
transferType:"", | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
}, | |||
capitalExpenditureOpen:false, | |||
projectForm:{ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:'1', | |||
outId:null, | |||
ynType:'1' | |||
}, | |||
projectFundType:'' | |||
}; | |||
}, | |||
created() { | |||
let queryParams={ | |||
pageNum: 1, | |||
pageSize: 100, | |||
} | |||
listProject(queryParams).then(response => { | |||
console.log(response) | |||
this.projectList = response.rows; | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id}); | |||
} | |||
}); | |||
this.getDicts("project_fund_type").then((response) => { | |||
for (var i = 0; i < response.data.length; i++) { | |||
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue}); | |||
} | |||
this.projectFundTypeDictionaries = response.data; | |||
}); | |||
this.getDictionaries(); | |||
}, | |||
methods: { | |||
getDictionaries(){ | |||
//违法用地类型 | |||
this.houseGetDicts("villations_type").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.wfydlxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
getTransfer(this.$route.query.id).then((response) => { | |||
this.getDicts("capital_expenditure_type").then((res) => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType); | |||
}); | |||
if(response.data.capitalExpenditureType==2){ | |||
this.capitalExpenditureOpen = true | |||
let param={ | |||
'outId' : response.data.id, | |||
'ynType' : '1' | |||
} | |||
getProjectto(param).then(res => { | |||
console.log(this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType)) | |||
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType); | |||
this.projectForm = res.data | |||
console.log(res.data) | |||
}) | |||
}else{ | |||
this.showproject = false | |||
} | |||
this.form = response.data; | |||
}); | |||
//监管类型 | |||
this.houseGetDicts("jglx").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.jglxDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
} | |||
queryTransferDetail(this.$route.query.id).then((response) => { | |||
this.getDicts("bank_type").then(res => { | |||
for (var i = 0; i < res.data.length; i++) { | |||
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue}); | |||
} | |||
for (var j = 0 ; j < response.rows.length ; j++){ | |||
// response.rows[j].payeeText = response.rows[j].payee; | |||
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType); | |||
} | |||
}); | |||
this.chargeItme = response.rows; | |||
console.log(response.rows) | |||
this.getPayeeList(); | |||
}); | |||
//是否在建建筑物 | |||
this.houseGetDicts("sys_yes_no").then((res) => { | |||
for(var i = 0 ; i < res.data.length ; i++){ | |||
this.sysDictionaries.push({text:res.data[i].dictLabel,value:res.data[i].dictValue}); | |||
}, | |||
addChargeItme(index){ | |||
this.chargeItme.splice(index + 1, 0, { | |||
payeeId: "", //收款方ID | |||
payee: "", //收款方 | |||
payeeAccount: "", //收款账户 | |||
bankDeposit: "", //开户银行 | |||
incomeAmount: "", //收入金额 | |||
bankType: "", //所属银行 | |||
}); | |||
}, | |||
getPayeeList() { | |||
//普通转账 | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
onConfirmSys(data){ | |||
this.sfzjjzw = data.text; | |||
this.jgList.sfzjjzw = data.value; | |||
this.showSys = false; | |||
payeeDictLabel(datas, value) { | |||
var actions = []; | |||
Object.keys(datas).some((key) => { | |||
if (datas[key].payeeId == ('' + value)) { | |||
actions.push(datas[key].payee); | |||
return true; | |||
} | |||
}) | |||
return actions.join(''); | |||
}, | |||
onConfirmCapital(data){ | |||
console.log(data) | |||
if (data.value != 2){ | |||
this.capitalExpenditureOpen = false; | |||
this.projectForm = []; | |||
}else{ | |||
this.capitalExpenditureOpen = true; | |||
} | |||
this.capitalExpenditureType = data.text; | |||
this.form.capitalExpenditureType = data.value; | |||
this.showcapital = false; | |||
}, | |||
onConfirmFundType(data){ | |||
console.log(data) | |||
this.projectForm.projectFundType = data.value; | |||
this.projectFundType = data.text; | |||
this.showFundType = false; | |||
}, | |||
onConfirmProject(data){ | |||
console.log(data) | |||
this.projectList.map(res => { | |||
console.log(res) | |||
if(res.projectName==data.text){ | |||
this.projectForm.projectId = res.id | |||
this.projectForm.projectName = res.projectName | |||
this.projectForm.projectContractor = res.projectContractor | |||
this.projectForm.projectAmount = res.projectAmount | |||
console.log(this.projectForm) | |||
} | |||
}) | |||
this.showproject = false; | |||
}, | |||
onConfirmJglx(data){ | |||
this.jglx = data.text; | |||
this.jgList.jglx = data.value; | |||
this.showjglx = false; | |||
onConfirmPayee(data){ | |||
// this.chargeItme[this.chargeItme.length-1].payeeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payee = data.text; | |||
this.chargeItme[this.chargeItme.length-1].payeeId = data.value; | |||
console.log(this.chargeItme) | |||
this.showpayee = false; | |||
}, | |||
onConfirmWfydlx(data){ | |||
this.wfydlx = data.text; | |||
this.jgList.wfydlx = data.value; | |||
this.showwfydlx = false; | |||
onConfirmBankType(data){ | |||
console.log(this.chargeItme) | |||
this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text; | |||
this.chargeItme[this.chargeItme.length-1].bankType = data.value; | |||
this.showbankType = false; | |||
}, | |||
onConfirmLasj(data){ | |||
this.jgList.lasj = this.getNowFormatDate(data).substr(0,10); | |||
this.form.applyDate = this.getNowFormatDate(data).substr(0,10); | |||
this.showlasj = false; | |||
}, | |||
onConfirmInspectorTime(data){ | |||
this.jgList.inspectorTime = this.getNowFormatDate(data).substr(0,10); | |||
this.showinspectorTime = false; | |||
}, | |||
onConfirmReformDeadline(data){ | |||
this.jgList.reformDeadline = this.getNowFormatDate(data).substr(0,10); | |||
this.showReformDeadline = false; | |||
accountTypeChange(e){ | |||
console.log(e) | |||
this.payeeList = []; | |||
this.queryParams.accountType = this.form.accountType | |||
this.queryParams.status = "0" | |||
listPayee(this.queryParams).then((response) => { | |||
for (var i = 0; i < response.rows.length; i++) { | |||
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id}); | |||
} | |||
}); | |||
}, | |||
goAdd(){ | |||
console.log(this.jgList) | |||
jgAdd(this.jgList).then(response => { | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
console.log(this.form); | |||
updateTransfer(this.form).then(response => { | |||
console.log(response); | |||
this.$toast.success('保存成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
this.projectForm.outId = this.form.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
console.log(this.projectForm) | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
customSubmit(this.form.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}) | |||
}else{ | |||
customSubmit(this.form.id).then(res => { | |||
this.$toast.success('提交成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
} | |||
}); | |||
}, | |||
goUpdate(){ | |||
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){ | |||
this.$toast.error("付款事由禁止包含|。"); | |||
return; | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
if(this.projectForm.projectName==""||this.projectForm.projectName==null){ | |||
this.$toast.error('请选择项目名称!'); | |||
return; | |||
} | |||
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){ | |||
this.$toast.error('请输入工程发票号!'); | |||
return; | |||
} | |||
} | |||
this.$set(this.form, "payeeList", this.chargeItme); | |||
this.$set(this.form, "bankTypeList", this.chargeItme); | |||
this.$set(this.form, "accountTypeList", this.chargeItme); | |||
this.$set(this.form, "transferStatusList", this.chargeItme); | |||
this.projectForm.outId = this.form.id | |||
updateTransfer(this.form).then((response) => { | |||
this.projectForm.outId = this.form.id | |||
this.$set(this.projectForm, "ynType", '1'); | |||
if(this.form.capitalExpenditureType==2){ | |||
addProjectto(this.projectForm).then(res => { | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}) | |||
}else{ | |||
this.$toast.success('修改成功'); | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
} | |||
}); | |||
}, | |||
goBack(){ | |||
window.history.go(-1) | |||
} | |||
}, | |||
//删除家庭成员 | |||
deleteChargeItme(index){ | |||
this.chargeItme.splice(index,1) | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -255,4 +504,11 @@ | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
.deleteFamily{ | |||
position: absolute; | |||
top: 0rem; | |||
right: 6%; | |||
z-index: 9; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -5,62 +5,333 @@ | |||
fixed | |||
placeholder | |||
@click-left="$router.back(-1)" | |||
@click-right="goAdd()" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">付款申请流程</p> | |||
</template> | |||
<template #right> | |||
<van-icon name="add" size="18"/> | |||
</template> | |||
</van-nav-bar> | |||
<div class="main_box"> | |||
<van-row> | |||
<van-col span="6"></van-col> | |||
<van-row v-if="processList.待申请!=2"> | |||
<van-col span="6" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col> | |||
<van-col span="18" class="textBlue">草稿</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-row v-if="processList.待申请==2"> | |||
<van-col span="6" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col> | |||
<van-col span="18" class="textBlue">待审批 | |||
<van-col span="18" class="textBlue">已申请 | |||
<van-row> | |||
<van-col span="10" style="padding: 0;">已通过</van-col> | |||
<van-col span="14" style="padding: 0;">2021-09-01</van-col> | |||
<van-col span="10" style="padding: 0;" v-show="processList.已申请">{{processList.申请人}}</van-col> | |||
<van-col span="14" style="padding: 0;" v-show="processList.已申请">{{processList.申请时间}}</van-col> | |||
</van-row> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="6" align="right"><p class="icon_jian"><van-icon name="minus" size="14" /></p></van-col> | |||
<van-col span="18">乡镇审批</van-col> | |||
<van-col span="6" align="right"> | |||
<p class="icon_jian" v-show="processList.乡镇审批==1"><van-icon name="minus" size="14" /></p> | |||
<p class="icon_jian blue" v-show="processList.乡镇审批==2"><van-icon name="success" size="14" /></p> | |||
<p class="icon_jian red" v-show="processList.乡镇审批==3"><van-icon name="cross" size="14" /></p> | |||
</van-col> | |||
<van-col span="18"> | |||
<p v-show="processList.乡镇审批==1">乡镇审批</p> | |||
<p v-show="processList.乡镇审批==2">乡镇审批</p> | |||
<p v-show="processList.乡镇审批==3">乡镇审批</p> | |||
<van-row> | |||
<van-col span="10" style="padding: 0;" v-if="processList.待申请==2"> | |||
<p v-show="processList.乡镇审批==1">审批人:{{processList.乡镇审批人}}</p> | |||
<p v-show="processList.乡镇审批==2">审批人:{{processList.乡镇审批人}}</p> | |||
<p v-show="processList.乡镇审批==3">审批人:{{processList.乡镇审批人}}</p> | |||
</van-col> | |||
<van-col span="14" style="padding: 0;" v-if="processList.待申请==2"> | |||
<p v-show="processList.乡镇审批==1">审批时间:{{processList.乡镇审批时间}}</p> | |||
<p v-show="processList.乡镇审批==2">审批时间:{{processList.乡镇审批时间}}</p> | |||
<p v-show="processList.乡镇审批==3">审批时间:{{processList.乡镇审批时间}}</p> | |||
</van-col> | |||
</van-row> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="6" align="right"><p class="icon_jian"><van-icon name="minus" size="14" /></p></van-col> | |||
<van-col span="18">区县审批</van-col> | |||
<van-row v-if="form.approveLevel==2"> | |||
<van-col span="6" align="right"> | |||
<p class="icon_jian" v-show="processList.区县审批==1"><van-icon name="minus" size="14" /></p> | |||
<p class="icon_jian blue" v-show="processList.区县审批==2"><van-icon name="success" size="14" /></p> | |||
<p class="icon_jian red" v-show="processList.区县审批==3"><van-icon name="cross" size="14" /></p> | |||
</van-col> | |||
<van-col span="18"> | |||
<p v-show="processList.区县审批==1">区县审批</p> | |||
<p v-show="processList.区县审批==2">区县审批</p> | |||
<p v-show="processList.区县审批==3">区县审批</p> | |||
<van-row> | |||
<van-col span="10" style="padding: 0;"> | |||
<p v-show="processList.区县审批==1">审批人:{{processList.区县审批人}}</p> | |||
<p v-show="processList.区县审批==2">审批人:{{processList.区县审批人}}</p> | |||
<p v-show="processList.区县审批==3">审批人:{{processList.区县审批人}}</p> | |||
</van-col> | |||
<van-col span="14" style="padding: 0;"> | |||
<p v-show="processList.区县审批==1">审批时间:{{processList.区县审批时间}}</p> | |||
<p v-show="processList.区县审批==2">审批时间:{{processList.区县审批时间}}</p> | |||
<p v-show="processList.区县审批==3">审批时间:{{processList.区县审批时间}}</p> | |||
</van-col> | |||
</van-row> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="6" align="right"><p class="icon_jian"><van-icon name="minus" size="14" /></p></van-col> | |||
<van-col span="18">待支付</van-col> | |||
<van-row v-show="form.transferType==1||form.transferType=='常用转账'"> | |||
<van-col span="6" align="right"> | |||
<p class="icon_jian" v-show="processList.支付状态==1"><van-icon name="minus" size="14" /></p> | |||
<p class="icon_jian blue" v-show="processList.支付状态==2"><van-icon name="success" size="14" /></p> | |||
<p class="icon_jian red" v-show="processList.支付状态==3"><van-icon name="cross" size="14" /></p> | |||
</van-col> | |||
<van-col span="18"> | |||
<p v-show="processList.支付状态==1">待支付</p> | |||
<p v-show="processList.支付状态==2">支付成功</p> | |||
<p v-show="processList.支付状态==3">支付异常</p> | |||
<van-row> | |||
<van-col span="24" style="padding: 0;"> | |||
<p v-show="processList.支付状态==2||processList.支付状态==3">支付时间:{{processList.支付时间}}</p> | |||
</van-col> | |||
</van-row> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="6" align="right"><p class="icon_jian"><van-icon name="minus" size="14" /></p></van-col> | |||
<van-col span="18">未入账</van-col> | |||
<van-row v-show="form.transferType==1||form.transferType=='常用转账'"> | |||
<van-col span="6" align="right"> | |||
<p class="icon_jian" v-show="processList.入账状态==1"><van-icon name="minus" size="14" /></p> | |||
<p class="icon_jian blue" v-show="processList.入账状态==2"><van-icon name="success" size="14" /></p> | |||
<p class="icon_jian red" v-show="processList.入账状态==3"><van-icon name="cross" size="14" /></p> | |||
</van-col> | |||
<van-col span="18"> | |||
<p v-show="processList.入账状态==1">未入账</p> | |||
<p v-show="processList.入账状态==2">入账成功</p> | |||
<p v-show="processList.入账状态==3">入账异常</p> | |||
<van-row> | |||
<van-col span="24" style="padding: 0;"> | |||
<p v-show="processList.入账状态==2||processList.入账状态==3">入账时间:{{processList.入账时间}}</p> | |||
</van-col> | |||
</van-row> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</div> | |||
</template> | |||
<script> | |||
import { | |||
getTransferProcess, | |||
getProjectto, | |||
getCashProcess | |||
} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalProcess", | |||
data() { | |||
return { | |||
// 工程项目关联信息 | |||
capitalExpenditureOpen:false, | |||
isAudit:false, | |||
//收款方记录 | |||
chargeItme: [], | |||
// 资金支出类别 | |||
capitalExpenditureTypeOptions: [], | |||
bankTypeList: [], | |||
accountTypeList: [], | |||
transferTypeList:[], | |||
projectFundTypeOptions:[], | |||
expands: [], | |||
// 审核意见默认值 | |||
pass: "true", | |||
comment: "同意", | |||
getRowKeys(row) { | |||
return row.id; | |||
}, | |||
// 表单参数 | |||
form: { | |||
id: null, | |||
orderId: null, | |||
payer: null, | |||
payerAccount: null, | |||
expenditureAmount: null, | |||
remark: null, | |||
transferStatus: "0", | |||
auditStatus: "0", | |||
paymentState: "1", | |||
bankPriority: "0", | |||
clientPriority: "0", | |||
createBy: null, | |||
createTime: null, | |||
updateBy: null, | |||
updateTime: null, | |||
}, | |||
// 关联工程项目信息 | |||
projectForm:{ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:null, | |||
outId:null, | |||
ynType:'1' | |||
}, | |||
auditStatus:false, | |||
processList:{}, | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("capital_expenditure_type").then(response => { | |||
this.capitalExpenditureTypeOptions = response.data; | |||
for(let j of this.capitalExpenditureTypeOptions){ | |||
if(j.dictValue==this.form.capitalExpenditureType){ | |||
this.form.capitalExpenditureType = j.dictLabel | |||
} | |||
} | |||
}); | |||
this.getDicts("bank_type").then(response => { | |||
this.bankTypeList = response.data; | |||
for(let i of this.chargeItme){ | |||
for(let j of this.bankTypeList){ | |||
if(j.dictValue==i.bankType){ | |||
i.bankType = j.dictLabel | |||
} | |||
} | |||
} | |||
}); | |||
this.getDicts("bank_account_type").then(response => { | |||
this.accountTypeList = response.data; | |||
}); | |||
this.getDicts("transfer_type").then(response => { | |||
this.transferTypeList = response.data; | |||
for(let j of this.transferTypeList){ | |||
if(j.dictValue==this.form.transferType){ | |||
this.form.transferType = j.dictLabel | |||
} | |||
} | |||
}); | |||
this.form = this.formList; | |||
if(this.form.cashType==1){ | |||
this.form.cashType = "现金提现" | |||
}else if(this.form.cashType==2){ | |||
this.form.cashType = "现金使用" | |||
}else if(this.form.cashType==3){ | |||
this.form.cashType = "汇票支出" | |||
} | |||
this.chargeItme = this.lists; | |||
if (this.formType == "audit") { | |||
// 如果是审核表单 | |||
this.auditStatus=true; | |||
this.isAudit=true; | |||
}else{ | |||
this.isAudit=false; | |||
if(this.form.transferType!=null){ | |||
this.getTransferProcess(this.form.id) | |||
}else{ | |||
this.getCashProcess(this.form.id) | |||
} | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
this.capitalExpenditureOpen=true | |||
let params | |||
if(this.form.transferType!=null){ | |||
params = { | |||
'outId':this.form.id, | |||
'ynType':'1' | |||
} | |||
}else { | |||
params = { | |||
'outId':this.form.id, | |||
'ynType':'2' | |||
} | |||
} | |||
getProjectto(params).then(res => { | |||
this.projectForm = res.data | |||
this.getDicts("project_fund_type").then(response => { | |||
this.projectFundTypeOptions = response.data; | |||
for(let j of this.projectFundTypeOptions){ | |||
if(j.dictValue==this.projectForm.projectFundType){ | |||
this.projectForm.projectFundType = j.dictLabel | |||
} | |||
} | |||
}); | |||
}) | |||
}else{ | |||
this.capitalExpenditureOpen=false | |||
} | |||
// this.getCashProcess(this.form.id) | |||
}, | |||
methods: { | |||
//查询审批进程 | |||
getTransferProcess(id){ | |||
getTransferProcess(id).then(res => { | |||
this.processList = res.data.processSchedule | |||
this.processList.乡镇审批时间 = this.processList.乡镇审批时间?this.format(this.processList.乡镇审批时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.区县审批时间 = this.processList.区县审批时间?this.format(this.processList.区县审批时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.支付状态时间 = this.processList.支付状态时间?this.format(this.processList.支付状态时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.入账状态时间 = this.processList.入账状态时间?this.format(this.processList.入账状态时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
}) | |||
}, | |||
//查询审批进程 | |||
getCashProcess(id){ | |||
getCashProcess(id).then(res => { | |||
this.processList = res.data.processSchedule | |||
this.processList.乡镇审批时间 = this.processList.乡镇审批时间?this.format(this.processList.乡镇审批时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.区县审批时间 = this.processList.区县审批时间?this.format(this.processList.区县审批时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.支付状态时间 = this.processList.支付状态时间?this.format(this.processList.支付状态时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
this.processList.入账状态时间 = this.processList.入账状态时间?this.format(this.processList.入账状态时间, "yyyy-MM-dd HH:mm:ss"):"" | |||
}) | |||
}, | |||
// 取消按钮 | |||
cancel() { | |||
this.recordOpen = false; | |||
this.reset(); | |||
this.$emit("refreshList"); | |||
}, | |||
// 表单重置 | |||
reset() { | |||
this.form = { | |||
id: null, | |||
orderId: null, | |||
payer: null, | |||
payerAccount: null, | |||
expenditureAmount: null, | |||
remark: null, | |||
transferStatus: "0", | |||
auditStatus: "0", | |||
paymentState: "1", | |||
bankPriority: "0", | |||
clientPriority: "0", | |||
createBy: null, | |||
createTime: null, | |||
updateBy: null, | |||
updateTime: null, | |||
}; | |||
this.resetForm("form"); | |||
}, | |||
/** 提交按钮 */ | |||
submitForm() { | |||
const data = { | |||
taskId: this.form.taskId, | |||
instanceId: this.form.instanceId, | |||
variables: JSON.stringify({ | |||
comment: this.comment, | |||
pass: this.pass, | |||
//"formData": this.row, | |||
}), | |||
}; | |||
return request({ | |||
url: "/activiti/process/complete", | |||
method: "post", | |||
params: data, | |||
}).then((response) => { | |||
if(response.code==200 && response.msg=="操作成功"){ | |||
this.msgSuccess("操作成功"); | |||
} else{ | |||
this.msgSuccess("操作失败"); | |||
} | |||
this.$emit("getList"); | |||
this.$emit("refreshList"); | |||
}); | |||
}, | |||
}, | |||
watch: { | |||
pass: function (val) { | |||
this.comment = val === "true" ? "同意" : "驳回"; | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -91,9 +362,15 @@ export default { | |||
.blue{ | |||
background-color: #1D6FE9; | |||
} | |||
.red{ | |||
background-color: rgb(245, 108, 108); | |||
} | |||
.textBlue{ | |||
color: #1D6FE9!important; | |||
} | |||
.textRed{ | |||
color: rgb(245, 108, 108)!important; | |||
} | |||
.van-col{ | |||
padding: 20Px 10Px; | |||
} | |||