@@ -8,6 +8,58 @@ export function listTransfer(query) { | |||
params: query | |||
}) | |||
} | |||
// 查询银行转账待支付列表 | |||
export function payList(query) { | |||
return request({ | |||
url: '/yinnong/transfer/payList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询银行转账支付记录列表 | |||
export function payRecordList(query) { | |||
return request({ | |||
url: '/yinnong/transfer/payRecordList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 支付 | |||
export function pay(query) { | |||
return request({ | |||
url: '/yinnong/transfer/pay', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
export function sendSms(query) { | |||
return request({ | |||
url: '/yinnong/transfer/sendSms', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 核实结果 | |||
export function transactionStatusQuery(id) { | |||
return request({ | |||
url: '/yinnong/transfer/transactionStatusQuery/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 支付复核 | |||
export function editDoubleConfirmationStatus(id) { | |||
return request({ | |||
url: '/yinnong/transfer/editDoubleConfirmationStatus/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 重置银行转账=撤回 | |||
export function resetTYinnongTransfer(id) { | |||
return request({ | |||
url: '/yinnong/transfer/resetTYinnongTransfer/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 查询现金提现申请列表 | |||
export function listCash(query) { | |||
return request({ | |||
@@ -23,16 +75,17 @@ export function getTransfer(id) { | |||
method: 'get' | |||
}) | |||
} | |||
export function transactionStatusQuery(id) { | |||
//重新申请 | |||
export function reapply(id) { | |||
return request({ | |||
url: '/yinnong/transfer/transactionStatusQuery/' + id, | |||
url: '/yinnong/transfer/reapply/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
export function reapply(id) { | |||
//取消支付 | |||
export function reapplyDraft(id) { | |||
return request({ | |||
url: '/yinnong/transfer/reapply/' + id, | |||
url: '/yinnong/transfer/reapplyDraft/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
@@ -17,3 +17,14 @@ export function getVillageAffairs(id) { | |||
}) | |||
} | |||
// 查询地区下的账套列表 | |||
export function bookListByDept(deptId, bookType) { | |||
return request({ | |||
url: '/open/villageAffairs/public/bookList/' + deptId, | |||
method: 'get', | |||
params: { | |||
bookType, | |||
}, | |||
}) | |||
} | |||
@@ -0,0 +1,65 @@ | |||
import request from '@/utils/request' | |||
// 查询其他公开列表 | |||
export function listOther(query) { | |||
return request({ | |||
url: '/subcontract/other/list', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询其他公开详细 | |||
export function getOther(id) { | |||
return request({ | |||
url: '/subcontract/other/get/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 新增其他公开 | |||
export function addOther(data) { | |||
return request({ | |||
url: '/subcontract/other/add', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 修改其他公开 | |||
export function updateOther(data) { | |||
return request({ | |||
url: '/subcontract/other/edit', | |||
method: 'post', | |||
data: data | |||
}) | |||
} | |||
// 删除其他公开 | |||
export function delOther(id) { | |||
return request({ | |||
url: '/subcontract/other/remove/' + id, | |||
method: 'get' | |||
}) | |||
} | |||
// 查询其他公开列表 游客 | |||
export function otherOpenList(query) { | |||
return request({ | |||
url: '/open/villageAffairs/public/otherPublicList', | |||
method: 'get', | |||
params: query | |||
}) | |||
} | |||
// 查询其他公开详细 游客 | |||
export function otherOpenDetail(id) { | |||
return request({ | |||
url: '/open/villageAffairs/public/otherPublicDetail', | |||
method: 'get', | |||
params: { | |||
id, | |||
}, | |||
}) | |||
} | |||
@@ -48,6 +48,10 @@ export default { | |||
type: Function, | |||
default: null, | |||
}, | |||
reload: { // 变更此值为true则重新加载数据 监听 | |||
type: Boolean, | |||
default: false, | |||
}, | |||
}, | |||
components: { | |||
}, | |||
@@ -177,6 +181,15 @@ export default { | |||
console.log('[PagedList]: ', ...arguments); | |||
}, | |||
}, | |||
watch: { | |||
reload(newVal) { | |||
if(newVal) | |||
{ | |||
this.$emit('update:reload', false); | |||
this.getList(); | |||
} | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -14,6 +14,7 @@ | |||
:rules="rules" | |||
:required="required" | |||
:label-width="labelWidth || 'auto'" | |||
:size="size || ''" | |||
> | |||
</van-field> | |||
<van-popup v-model="popupVisible" position="bottom"> | |||
@@ -46,6 +47,7 @@ export default { | |||
'remoteUrl', // 远程列表加载地址 String | |||
'onRemoteResponse', // 远程获取到结果的处理回调 String|Function 如果是函数需返回数组, 如果是字符串支持.分割 | |||
'clearable', // 点击取消时清空绑定值 | |||
'size', | |||
], | |||
watch: { | |||
value: function (newVal, oldVal) { | |||
@@ -140,6 +140,8 @@ const whiteList = [ | |||
'/sunVillage_info/list_contract_ranking', | |||
'/sunVillage_info/identity_check', | |||
'/sunVillage_info/assetMapOpen', | |||
'/sunVillage_info/otherOpenVisitIndex', | |||
'/sunVillage_info/otherOpenVisitDetail', | |||
// 新型经营主体 | |||
'newBusinessEntity/newsBulletin', //新闻公告 | |||
@@ -3795,6 +3795,51 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/registration/registrationEdit'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 综合公开 | |||
path: '/sunVillage_info/otherOpenIndex', | |||
name: 'otherOpenIndex', | |||
meta: { | |||
title: '综合公开', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenList'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 综合公开详情 | |||
path: '/sunVillage_info/otherOpenDetail', | |||
name: 'otherOpenDetail', | |||
meta: { | |||
title: '综合公开详情', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenDetail'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 新增/编辑综合公开 | |||
path: '/sunVillage_info/otherOpenEdit', | |||
name: 'otherOpenEdit', | |||
meta: { | |||
title: '编辑综合公开', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenEdit'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 综合公开 游客 | |||
path: '/sunVillage_info/otherOpenVisitIndex', | |||
name: 'otherOpenVisitIndex', | |||
meta: { | |||
title: '综合公开', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenVisitList'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 综合公开详情 游客 | |||
path: '/sunVillage_info/otherOpenVisitDetail', | |||
name: 'otherOpenVisitDetail', | |||
meta: { | |||
title: '综合公开详情', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenVisitDetail'], resolve) | |||
}, | |||
{ ////阳光村务(新)-- 发包方审核 | |||
path: '/sunVillage_info/list_employer_process', | |||
@@ -5584,7 +5629,33 @@ export const constantRoutes = [ | |||
}, | |||
component: (resolve) => require(['@/views/yinnong/bankAgriculture/recordDetail/recordDetailList'], resolve) | |||
}, | |||
{ | |||
path: '/sunVillage_info/paymentPendingList', | |||
name: 'sunVillagePaymentPendingList', | |||
meta: { | |||
title: '待我支付', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentPending/approvalList'], resolve) | |||
}, | |||
{ | |||
path: '/sunVillage_info/payRecordList', | |||
name: 'sunVillagePayRecordList', | |||
meta: { | |||
title: '支付记录', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentPending/payRecordList'], resolve) | |||
}, | |||
{ | |||
path: '/sunVillage_info/paymentPendingApprovalDetail', | |||
name: 'sunVillagePaymentPendingApprovalDetail', | |||
meta: { | |||
title: '银农银行卡转账申请', | |||
hidden: true, | |||
}, | |||
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentPending/approvalDetail'], resolve) | |||
}, | |||
//<--------------------------------------农业大托管--------------------------------------> | |||
{ | |||
path: '/agriculturalTrusteeship/index', | |||
@@ -17,6 +17,7 @@ const user = { | |||
baseRoutingUrl: '', | |||
businessLevel: '', | |||
userId:null, | |||
deptId:null, | |||
}, | |||
mutations: { | |||
@@ -236,6 +236,27 @@ export const FINANCE = { | |||
a = new BigNumber(a, 10); | |||
return a.isZero(); | |||
}, | |||
sub(a, b) { | |||
if(!(a instanceof BigNumber)) | |||
a = new BigNumber(a, 10); | |||
if(!(b instanceof BigNumber)) | |||
b = new BigNumber(b, 10); | |||
return a.minus(b, 10); | |||
}, | |||
mul(a, b) { | |||
if(!(a instanceof BigNumber)) | |||
a = new BigNumber(a, 10); | |||
if(!(b instanceof BigNumber)) | |||
b = new BigNumber(b, 10); | |||
return a.multipliedBy(b, 10); | |||
}, | |||
div(a, b) { | |||
if(!(a instanceof BigNumber)) | |||
a = new BigNumber(a, 10); | |||
if(!(b instanceof BigNumber)) | |||
b = new BigNumber(b, 10); | |||
return a.div(b, 10); | |||
}, | |||
toNumber(a) { | |||
if(typeof(a) === 'number') | |||
return a; | |||
@@ -204,7 +204,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1026,7 +1026,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -875,7 +875,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -901,7 +901,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -203,7 +203,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -999,7 +999,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -204,7 +204,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3 || this.form.bankType == 4"> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1023,7 +1023,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -54,7 +54,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index"> | |||
@@ -59,7 +59,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -58,7 +58,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -204,7 +204,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1011,7 +1011,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -909,7 +909,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -979,7 +979,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -204,7 +204,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1013,7 +1013,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -171,7 +171,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -265,7 +265,7 @@ | |||
<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;" v-if="form.bankType==1||form.bankType==2||form.bankType==3||form.bankType==4"> | |||
<div class="main_box" style="margin-top: 10px;" v-if="form.bankType==1||form.bankType==2||form.bankType==3"> | |||
<van-cell title="收款账户类型" v-if="form.bankType==1"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange" > | |||
@@ -274,7 +274,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1266,7 +1266,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -902,7 +902,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -1840,7 +1840,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
} else if (obj.bankType == 2 || obj.bankType == 4) { | |||
} else if (obj.bankType == 2 || obj.bankType == 3) { | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -239,7 +239,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1749,7 +1749,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
console.log(obj.bankType) | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
@@ -207,7 +207,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3 || this.form.bankType == 4"> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1014,7 +1014,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -60,7 +60,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -60,7 +60,7 @@ | |||
<div class="main_box" style="position:relative;margin-top: 10px;"> | |||
<p class="main_title"><i></i>收款方信息</p> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<div style="margin-bottom: 10px;position:relative;" v-for="(item, index) in chargeItme" :key="index" v-if="index<listLength"> | |||
<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"/> | |||
@@ -58,7 +58,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -271,7 +271,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1148,7 +1148,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -1907,7 +1907,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -229,7 +229,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1741,7 +1741,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
console.log(obj.bankType) | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
@@ -207,7 +207,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -994,7 +994,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -174,7 +174,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -0,0 +1,663 @@ | |||
<template> | |||
<div class="app-container"> | |||
<van-nav-bar | |||
left-arrow | |||
fixed | |||
placeholder | |||
@click-left="$router.back(-1)" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">查看银行卡转账申请</p> | |||
</template> | |||
<template #right> | |||
<van-icon name="../../../../static/images/sunVillage_info/icon_flow.png" size="20" @click="goFlow"/> | |||
</template> | |||
</van-nav-bar> | |||
<div class="main_box"> | |||
<p class="main_title"><i></i>基础信息</p> | |||
<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.expenditureAmount" input-align="right" label-width="auto"/> | |||
<van-field name="radio" label="审批模式" input-align="right" autocomplete="off" readonly> | |||
<template #input> | |||
<van-radio-group v-model="form.approvalMode" direction="horizontal"> | |||
<van-radio name="1">线上审批</van-radio> | |||
<van-radio name="2">线下审批</van-radio> | |||
</van-radio-group> | |||
</template> | |||
</van-field> | |||
<van-field v-if="form.approvalMode==1" readonly label="审批流程" :value="tempalteFormat(form.approvalTemplateId)" input-align="right" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<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 readonly label="说明情况" v-model="form.explainSituation" type="textarea" input-align="right" rows="3" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="margin-top: 10px;"> | |||
<p class="main_title"><i></i>付款方信息</p> | |||
<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.balance" input-align="right" label-width="auto"/> | |||
</div> | |||
<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 class="main_box" v-if="contractOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;"> | |||
<van-field readonly label="合同名称" v-model="infoForm.name" input-align="right" /> | |||
<van-field readonly label="合同编码" v-model="infoForm.code" input-align="right" label-width="auto"/> | |||
<van-field readonly label="合同价款(元)" v-model="infoForm.totalAmount" input-align="right" label-width="auto"/> | |||
</div> | |||
<div class="main_box" style="position:relative;margin-top: 10px;"> | |||
<p class="main_title"><i></i>收款方信息</p> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<div style="margin-bottom: 10px;position:relative;" v-for="(item, index) in chargeItme" :key="index" v-if="index<listLength"> | |||
<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" /> | |||
<van-field v-if="item.transferStatus=='成功'||item.transferStatus=='失败'" readonly label="转账状态" v-model="item.transferStatus" input-align="right" /> | |||
<van-field v-if="item.transferStatus=='成功'||item.transferStatus=='失败'" readonly label="交易结果描述" v-model="item.causeFailure" type="textarea" input-align="right" rows="3" label-width="auto" /> | |||
</div> | |||
<p class="main_more" v-if="chargeItme.length>1 && showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p> | |||
<p class="main_more" v-if="chargeItme.length>1 && !showbtn" @click="listLength = 1,showbtn=true">收起列表</p> | |||
</div> | |||
<div class="main_box" style="padding: 5px 0 0 0;margin-top: 10px;"> | |||
<p class="main_title"><i></i>上传附件</p> | |||
<van-cell value="收据" /> | |||
<van-uploader v-model="fileList1" v-if="fileList1==null||fileList1.length==0" :deletable="false" disabled :upload-text="'未上传附件'" style="margin-left:8px;"></van-uploader> | |||
<van-uploader v-model="fileList1" v-if="fileList1!=null&&fileList1.length>0" :deletable="false" @click-preview="previewPreview" :max-count="fileList1.length" style="margin-left:8px;"> | |||
<template #preview-cover="file"> | |||
<div class="preview-cover"> | |||
<img src="../../../../assets/images/sunVillage_info/WORD.png" width="75" v-if="file.type == 'docx' || file.type == 'doc'"/> | |||
<img src="../../../../assets/images/sunVillage_info/ECEL.png" width="75" v-if="file.type == 'xlsx' || file.type == 'xls'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PDF.png" width="75" v-if="file.type == 'pdf'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PPT.png" width="75" v-if="file.type == 'ppt'" /> | |||
<img src="../../../../assets/images/sunVillage_info/RAR.png" width="75" v-if="file.type == 'zip' || file.type == 'rar'" /> | |||
</div> | |||
</template> | |||
</van-uploader> | |||
<van-cell value="发票" /> | |||
<van-uploader v-model="fileList2" v-if="fileList2==null||fileList2.length==0" :deletable="false" disabled :upload-text="'未上传附件'" style="margin-left:8px;"></van-uploader> | |||
<van-uploader v-model="fileList2" v-if="fileList2!=null&&fileList2.length>0" :deletable="false" @click-preview="previewPreview" :max-count="fileList2.length" style="margin-left:8px;"> | |||
<template #preview-cover="file"> | |||
<div class="preview-cover"> | |||
<img src="../../../../assets/images/sunVillage_info/WORD.png" width="75" v-if="file.type == 'docx' || file.type == 'doc'"/> | |||
<img src="../../../../assets/images/sunVillage_info/ECEL.png" width="75" v-if="file.type == 'xlsx' || file.type == 'xls'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PDF.png" width="75" v-if="file.type == 'pdf'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PPT.png" width="75" v-if="file.type == 'ppt'" /> | |||
<img src="../../../../assets/images/sunVillage_info/RAR.png" width="75" v-if="file.type == 'zip' || file.type == 'rar'" /> | |||
</div> | |||
</template> | |||
</van-uploader> | |||
<van-cell value="其他" /> | |||
<van-uploader v-model="fileList3" v-if="fileList3==null||fileList3.length==0" :deletable="false" disabled :upload-text="'未上传附件'" style="margin-left:8px;"></van-uploader> | |||
<van-uploader v-model="fileList3" v-if="fileList3!=null&&fileList3.length>0" :deletable="false" @click-preview="previewPreview" :max-count="fileList3.length" style="margin-left:8px;" > | |||
<template #preview-cover="file"> | |||
<div class="preview-cover"> | |||
<img src="../../../../assets/images/sunVillage_info/WORD.png" width="75" v-if="file.type == 'docx' || file.type == 'doc'"/> | |||
<img src="../../../../assets/images/sunVillage_info/ECEL.png" width="75" v-if="file.type == 'xlsx' || file.type == 'xls'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PDF.png" width="75" v-if="file.type == 'pdf'" /> | |||
<img src="../../../../assets/images/sunVillage_info/PPT.png" width="75" v-if="file.type == 'ppt'" /> | |||
<img src="../../../../assets/images/sunVillage_info/RAR.png" width="75" v-if="file.type == 'zip' || file.type == 'rar'" /> | |||
</div> | |||
</template> | |||
</van-uploader> | |||
</div> | |||
<div class="main_box" style="padding: 10px 10px;margin-top: 10px;" v-if="form.auditStatus=='3' && form.paymentState=='1'"> | |||
<div v-if="form.doubleConfirmationStatus == 'Y'"> | |||
<div v-if="form.doubleConfirmationUser == '' || form.doubleConfirmationUser == null"> | |||
<p style="text-align: center">等待领导复核中。。。</p> | |||
</div> | |||
<div v-else> | |||
<p style="text-align: center">{{ form.doubleConfirmationUser +'已于'+form.doubleConfirmationTime +'进行复核。'}}</p> | |||
</div> | |||
</div> | |||
<div v-if="form.doubleConfirmationStatus != 'Y' || !(form.doubleConfirmationUser == '' || form.doubleConfirmationUser == null)"> | |||
<div v-if="form.bankType == '1' || form.bankType == '2' || form.bankType == '3' || form.bankType == '5' || form.bankType == '9' || form.bankType == '10' || form.bankType == '18'"> | |||
<van-field label="支付口令" required :rules="[{ required: true , message:'请输入支付口令' }]" v-model="form.accountPassword" placeholder="请输入支付口令" | |||
input-align="right" label-width="auto"/> | |||
<div style="margin-top: 10xp;"> | |||
<van-col span="24" align="center"> | |||
<van-button type="info" :disabled="paySubmitDisabled1 || form.accountPassword == null || form.accountPassword == undefined || form.accountPassword == ''" | |||
@click="paySubmit">支<i style="margin-right: 1em;"></i>付</van-button> | |||
</van-col> | |||
</div> | |||
</div> | |||
<div v-else> | |||
<van-field label="验证码" required :rules="[{ required: true , message:'请输入验证码' }]" v-model="form.alternateField1" placeholder="请输入验证码" input-align="right" label-width="auto"/> | |||
<template v-if="smsStatus"> | |||
<p style="color: red;font-size: 14PX;margin-right: 5px;text-align: center">*验证码三分钟内有效</p> | |||
</template> | |||
<van-row> | |||
<van-col span="12" align="center"> | |||
<van-button type="primary" :disabled="sms_disabled" @click="getSendSms">{{smsText}}</van-button> | |||
</van-col> | |||
<van-col span="12" align="center"> | |||
<van-button type="info" v-if="smsStatus" :disabled="paySubmitDisabled || form.alternateField1 == null || form.alternateField1 == undefined || form.alternateField1 == ''" | |||
@click="paySubmit">支<i style="margin-right: 1em;"></i>付</van-button> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</template> | |||
<script> | |||
import { getCashierAccount,getTransfer ,pay, queryTransferDetail , listPayee , editDoubleConfirmationStatus , getProjectto , sendSms , addProjectto , customSubmit,getInfoto,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
import request from '@/utils/request' | |||
import { | |||
attachmentList, | |||
commonAttach, | |||
systemAttachment | |||
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalDetail", | |||
data() { | |||
return { | |||
clickOut:true, | |||
payStatus:false, | |||
smsStatus:false, | |||
sms_disabled:false, | |||
getPayStatus:false, | |||
smsText:'发送验证码', | |||
paySubmitDisabled:true, | |||
paySubmitDisabled1:false, | |||
showcapital:false, | |||
showpayee:false, | |||
showlasj:false, | |||
showbankType:false, | |||
showproject:false, | |||
showFundType:false, | |||
showbtn:true, | |||
listLength:1, | |||
minDate: new Date(), | |||
maxDate: new Date(2025, 10, 1), | |||
currentDate: new Date(), | |||
form:{}, | |||
fileList1:[], | |||
fileList2:[], | |||
fileList3:[], | |||
capitalExpenditureType:'', | |||
payee:'', | |||
bankType:'', | |||
wfydlxDictionaries:[], | |||
jglxDictionaries:[], | |||
sysDictionaries:[], | |||
capitalExpenditureTypeOptions:[], | |||
bankTypeDictionaries:[], | |||
projectList:[], | |||
projectFundTypeOptions:[], | |||
transferStatusOptions:[], | |||
projectFundTypeDictionaries:[], | |||
projectList:[], | |||
chargeItme:[], | |||
chargeItmeShow:[], | |||
payeeList:[], | |||
// 查询参数 | |||
queryParams: { | |||
transferType:"", | |||
orderByColumn: "id", | |||
isAsc: "desc", | |||
}, | |||
capitalExpenditureOpen:false, | |||
contractOpen:false, | |||
projectForm:{ | |||
projectId:null, | |||
projectName:null, | |||
projectContractor:null, | |||
projectAmount:null, | |||
projectBillNum:null, | |||
projectFundType:'1', | |||
outId:null, | |||
ynType:'1' | |||
}, | |||
infoForm:{ | |||
infoId:null, | |||
name:null, | |||
code:null, | |||
totalAmount:null, | |||
contractionId:null, | |||
transferId:null | |||
}, | |||
projectFundType:'', | |||
templateList:[], | |||
}; | |||
}, | |||
created() { | |||
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.getDicts("transfer_status").then((response) => { | |||
this.transferStatusOptions = response.data; | |||
}); | |||
this.getDictionaries(); | |||
this.getFileList(); | |||
this.getTemplateList(); | |||
}, | |||
methods: { | |||
getTemplateList(){ | |||
let templateQueryParams = { | |||
// 分页 | |||
pageNum: 1, | |||
pageSize: 999, | |||
}; | |||
listTemplate(templateQueryParams).then(response => { | |||
this.templateList = response.rows; | |||
}); | |||
}, | |||
paySubmit(){ | |||
this.diglogStatus = false; | |||
this.paySubmitDisabled = true; | |||
this.paySubmitDisabled1 = true; | |||
const id = this.form.id; | |||
this.queryParams.id = id; | |||
this.queryParams.alternateField1 = this.form.alternateField1; | |||
let queryParams = this.queryParams; | |||
var that = this; | |||
// that.payLoading = this.$loading({ | |||
// lock: true, | |||
// text: '正在支付', | |||
// spinner: 'el-icon-loading', | |||
// background: 'rgba(0, 0, 0, 0.7)' | |||
// }); | |||
pay(queryParams).then((response) => { | |||
// that.payLoading.close(); | |||
this.$toast.success("支付成功,请等待银行进行处理,稍后可通过查询结果按钮查询银行处理结果。"); | |||
clearTimeout(this.sms_timer); | |||
this.open = false; | |||
this.smsStatus = false; | |||
this.sms_disabled = false; | |||
this.smsText = "发送验证码"; | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},1000) | |||
}) | |||
.catch((err) => { | |||
// that.payLoading.close(); | |||
if(err.toString().indexOf('错误代码:-1') == -1 && err.toString().indexOf('错误代码:-2') == -1){ | |||
this.getList(); | |||
clearTimeout(this.sms_timer); | |||
this.open = false; | |||
this.smsStatus = false; | |||
this.sms_disabled = false; | |||
this.smsText = "发送验证码"; | |||
} | |||
setTimeout(function(){ | |||
history.go(-1) | |||
},2000) | |||
}); | |||
}, | |||
getSendSms(){ | |||
clearTimeout(this.sms_timer); | |||
this.form.alternateField1 = ''; | |||
this.sms_time = 60; | |||
this.clickOut = false; | |||
this.sms_disabled = true; | |||
const id = this.form.id; | |||
const bankType = this.form.bankType; | |||
this.queryParams.id = id; | |||
this.queryParams.bankType = bankType; | |||
let queryParams = this.queryParams; | |||
sendSms(queryParams).then(res=>{ | |||
console.log(res.msg) | |||
if (res.msg.indexOf('短信发送失败') == -1){ | |||
this.paySubmitDisabled = false; | |||
this.$toast.success(res.msg); | |||
this.smsStatus = true; | |||
this.smsText = this.sms_time+'s后可重新发送'; | |||
this.sms_timer = setInterval(()=>{ | |||
this.sms_time--; | |||
this.smsText = this.sms_time+'s后可重新发送'; | |||
if (this.sms_time == 0){ | |||
clearInterval(this.sms_timer); | |||
this.sms_time = 60 ; | |||
this.smsText = '发送验证码'; | |||
this.sms_disabled = false; | |||
this.clickOut = true; | |||
} | |||
},1000) | |||
}else{ | |||
this.sms_disabled = false; | |||
console.log(res.msg) | |||
this.$toast.error(res.msg); | |||
} | |||
}); | |||
}, | |||
editDoubleConfirmationStatus(){ | |||
let id = this.form.id | |||
editDoubleConfirmationStatus(id).then(response => { | |||
if(res.code = 200){ | |||
this.$toast.success(response.msg); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}) | |||
}, | |||
tempalteFormat(id){ | |||
let name = "" | |||
this.templateList.map(res => { | |||
if(res.id==id){ | |||
console.log(res.name) | |||
name = res.name | |||
} | |||
}) | |||
return name | |||
}, | |||
goFlow(){ | |||
window.location='approvalProcess?id='+this.$route.query.id+'&auditbatchNo='+this.$route.query.auditbatchNo; | |||
}, | |||
previewPreview(file, index, len) { | |||
const baseImgUrl = this.$store.getters.baseRoutingUrl; | |||
if (file.url) { | |||
//已上传文件 | |||
let fileName = file.file.name || file.url; | |||
let subIndex = fileName.lastIndexOf("."); | |||
let ext = fileName.substring(subIndex + 1, fileName.length); | |||
let imgi = file.listIndex | |||
//console.log(ext) | |||
let allUrl = file.url; | |||
if(ext !== 'jpg' && ext !== 'png' && ext !== 'gif' && ext !== 'svg' && ext !== 'ico' && ext !== 'bmp'){ | |||
const link = document.createElement("a"); | |||
link.style.display = "none"; | |||
link.target = "_blank" | |||
link.href = allUrl; | |||
document.body.appendChild(link); | |||
link.click(); | |||
document.body.removeChild(link); | |||
} | |||
} else { | |||
//新上传文件 | |||
let fileName = file.file.name; | |||
// console.info(file.file.name) | |||
let subIndex = fileName.lastIndexOf("."); | |||
let ext = fileName.substring(subIndex + 1, fileName.length); | |||
if(ext !== 'jpg' && ext !== 'png' && ext !== 'gif' && ext !== 'svg' && ext !== 'ico' && ext !== 'bmp'){ | |||
let type = this.getfileType(ext); | |||
// 将文件转换为base64编码 | |||
this.fileToBase64(file.file, ext).then(res => { | |||
this.downloadFile(res, fileName, ext, type); | |||
}) | |||
} | |||
} | |||
}, | |||
getfileType(type) { | |||
switch (type) { | |||
case 'txt': | |||
return 'text/plain'; | |||
case 'doc': | |||
return 'application/msword'; | |||
case 'docx': | |||
return 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'; | |||
case 'xls': | |||
return 'application/vnd.ms-excel'; | |||
case 'xlsx': | |||
return 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'; | |||
case 'pdf': | |||
return 'application/pdf'; | |||
case 'pptx': | |||
return 'application/vnd.openxmlformats-officedocument.presentationml.presentation'; | |||
case 'png': | |||
return 'image/png'; | |||
case 'jpg': | |||
return 'image/jpeg'; | |||
case 'gif': | |||
return 'image/gif'; | |||
case 'svg': | |||
return 'image/svg+xml'; | |||
case 'ico': | |||
return 'image/x-icon'; | |||
case 'bmp': | |||
return 'image/bmp,'; | |||
} | |||
}, | |||
downloadFile(base64, fileName, fileType, mimetype) { | |||
const typeHeader = 'data:application/' + fileType + ';base64,'; | |||
const blob = this.base64ToBlob(base64, mimetype); | |||
this.downloadFileDownload(blob, fileName, fileType); | |||
}, | |||
base64ToBlob(base64, mime) { | |||
//解码base64得到二进制字符串 | |||
let raw = window.atob(base64.substring(base64.indexOf(',') + 1)); | |||
let rawLength = raw.length | |||
//创建8位无符号整数值的类型化数组 | |||
let uInt8Array = new Uint8Array(rawLength) | |||
for (let i = 0; i < rawLength; ++i) { | |||
uInt8Array[i] = raw.charCodeAt(i); | |||
} | |||
return new Blob([uInt8Array], {type: mime}) | |||
}, | |||
downloadFileDownload(blob, fileName, fileType) { | |||
const downloadElement = document.createElement('a'); | |||
let href = blob; | |||
if (typeof blob === 'string') { | |||
downloadElement.target = '_blank' | |||
} else { | |||
href = window.URL.createObjectURL(blob) | |||
} | |||
downloadElement.href = href; | |||
downloadElement.download = fileName + '.' + fileType;//下载后文件名 | |||
document.body.appendChild(downloadElement); | |||
downloadElement.click(); | |||
document.body.removeChild(downloadElement) | |||
if (typeof blob !== 'string') { | |||
window.URL.revokeObjectURL(href) | |||
} | |||
}, | |||
fileToBase64(file,fileType){ | |||
return new Promise((resolve,reject)=>{ | |||
//创建一个新的FileReader 对象 | |||
const reader = new FileReader(); | |||
//读取file对象 | |||
reader.readAsDataURL(file); | |||
reader.onload=function () { | |||
const base64String = reader.result.split(",")[1]; | |||
resolve('data:application/' + fileType + ';base64,'+base64String); | |||
} | |||
reader.onerror=function () { | |||
reject(new Error("Failed to load file") ) | |||
} | |||
}) | |||
}, | |||
getDictionaries(){ | |||
getTransfer(this.$route.query.id).then((response) => { | |||
getCashierAccount(response.data.cashierId).then(res => { | |||
this.form.balance = res.data.balance | |||
}) | |||
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 if(response.data.capitalExpenditureType==4) { | |||
this.contractOpen = true | |||
let param = { | |||
'transferId': response.data.id | |||
} | |||
getInfoto(param).then(res => { | |||
this.infoForm = res.data | |||
}) | |||
}else{ | |||
this.showproject = false | |||
} | |||
this.form = response.data; | |||
}); | |||
queryTransferDetail(this.$route.query.id).then((response) => { | |||
this.getDicts("bank_type_all").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); | |||
response.rows[j].transferStatus = this.selectDictLabel(this.transferStatusOptions, response.rows[j].transferStatus); | |||
} | |||
this.chargeItme = response.rows; | |||
}); | |||
this.getPayeeList(); | |||
}); | |||
}, | |||
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}); | |||
} | |||
}); | |||
}, | |||
getFileList(){ | |||
let oData1= { | |||
tableId: this.$route.query.id, | |||
tableName: "t_yinnong_transfer", | |||
bizPath: "transfer", | |||
fileType: "1", | |||
} | |||
attachmentList(oData1).then(res => { | |||
res.rows.map(r => { | |||
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL | |||
let subIndex = r.fileName.lastIndexOf("."); | |||
let ext = r.fileName.substring(subIndex + 1, r.fileName.length); | |||
this.fileList1.push({"url": baseUrl + r.fileUrl, "file": new File([], r.fileName, {}), "id": r.id,"type":ext}) | |||
}) | |||
}) | |||
let oData2= { | |||
tableId: this.$route.query.id, | |||
tableName: "t_yinnong_transfer", | |||
bizPath: "transfer", | |||
fileType: "2", | |||
} | |||
attachmentList(oData2).then(res => { | |||
res.rows.map(r => { | |||
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL | |||
let subIndex = r.fileName.lastIndexOf("."); | |||
let ext = r.fileName.substring(subIndex + 1, r.fileName.length); | |||
this.fileList2.push({"url": baseUrl + r.fileUrl, "file": new File([], r.fileName, {}), "id": r.id,"type":ext}) | |||
}) | |||
}) | |||
let oData3= { | |||
tableId: this.$route.query.id, | |||
tableName: "t_yinnong_transfer", | |||
bizPath: "transfer", | |||
fileType: "3", | |||
} | |||
attachmentList(oData3).then(res => { | |||
res.rows.map(r => { | |||
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL | |||
let subIndex = r.fileName.lastIndexOf("."); | |||
let ext = r.fileName.substring(subIndex + 1, r.fileName.length); | |||
this.fileList3.push({"url": baseUrl + r.fileUrl, "file": new File([], r.fileName, {}), "id": r.id,"type":ext}) | |||
}) | |||
}) | |||
}, | |||
goBack(){ | |||
window.history.go(-1) | |||
}, | |||
//删除家庭成员 | |||
deleteChargeItme(index){ | |||
this.chargeItme.splice(index,1) | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.app-container { | |||
padding: 2% 0; | |||
} | |||
/deep/ .van-nav-bar{ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
p,i{ | |||
color: #ffffff; | |||
} | |||
} | |||
.main_more{ | |||
width: 96%; | |||
margin: 0 auto; | |||
margin-top: 10px; | |||
border-radius: 6px; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
overflow: hidden; | |||
background-color: #FFF; | |||
text-align: center; | |||
padding: 10PX 0; | |||
} | |||
.main_title{ | |||
font-size: 0.45rem; | |||
color: #333333; | |||
margin: 0.4rem 3% 0.2rem; | |||
position: relative; | |||
display: flex; | |||
align-items: center; | |||
i{ | |||
display: block; | |||
width: 3PX; | |||
height: 0.4rem; | |||
background-color: #4B72E4; | |||
margin-right: 10PX; | |||
} | |||
} | |||
.main_box{ | |||
width: 96%; | |||
margin: 0 auto; | |||
border-radius: 6px; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
overflow: hidden; | |||
background-color: #FFF; | |||
} | |||
.submitButton{ | |||
width: 80%; | |||
margin: 0 auto; | |||
background-color: #1D6FE9; | |||
} | |||
.addFamily{ | |||
position: absolute; | |||
top: -2px; | |||
right: 0; | |||
border-radius: 50%; | |||
} | |||
.deleteFamily{ | |||
position: absolute; | |||
top: 0rem; | |||
right: 6%; | |||
z-index: 9; | |||
border-radius: 50%; | |||
} | |||
</style> |
@@ -0,0 +1,313 @@ | |||
<template> | |||
<div class="app-container"> | |||
<van-nav-bar | |||
left-arrow | |||
fixed | |||
placeholder | |||
@click-left="onClickLeft" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">银行卡转账待支付列表</p> | |||
</template> | |||
<!-- <template #right> | |||
<van-icon name="add-o" size="25" v-show="showBtn"/> | |||
</template> --> | |||
</van-nav-bar> | |||
<!-- <div class="header_main">--> | |||
<!-- 银行卡转账申请列表--> | |||
<!-- <div class="return_btn" @click="onClickLeft"></div>--> | |||
<!--<!– <div class="add_btn" @click="goAdd" v-show="showBtn"></div>–>--> | |||
<!-- <van-icon class="add_btn" name="add-o" size="25" @click="goAdd" v-show="showBtn" />--> | |||
<!-- </div>--> | |||
<van-list | |||
v-model="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
@load="getList"> | |||
<van-swipe-cell v-for="(item,index) in applicationList" :key="index"> | |||
<van-cell :title="item.remark" center :to="{name:'sunVillagePaymentPendingApprovalDetail', query: {id:item.id,auditbatchNo:item.auditbatchNo}}"> | |||
<template #icon> | |||
<van-icon name="../../../../static/images/sunVillage_info/icon_yn1.png" size="30" color="#FF4646" style="margin-right: 10px;" /> | |||
</template> | |||
<template #label> | |||
<p><span><i>¥</i>{{stateFormat(item.expenditureAmount)}}</span><i style="margin-right: 30px;"></i>{{item.applyDate}}</p> | |||
</template> | |||
<template #default> | |||
<span v-if="item.paymentState === '1'" style="color: #696969">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} </span> | |||
<span v-else-if="item.paymentState === '2' " style="color: #909399">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} </span> | |||
<span v-else-if="item.paymentState === '3' " style="color: #409eff">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} </span> | |||
<span v-else-if="item.paymentState === '4' " style="color: #f56c6c">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} </span> | |||
<span v-else-if="item.paymentState === '5' " style="color: #e6a23c">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} </span> | |||
<span v-else style="color: #67c23a;">{{ selectDictLabel(paymentStateOptions, item.paymentState) }} </span> | |||
</template> | |||
</van-cell> | |||
<template #right> | |||
<van-row> | |||
<van-col> | |||
<van-button v-if="item.paymentState == '3'" square text="核实结果" type="info" @click="transactionStatusQuery(item.id)" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.doubleConfirmationStatus == 'Y' && (item.doubleConfirmationUser == '' || item.doubleConfirmationUser == null) && item.paymentState == '1'" | |||
square text="复核" type="info" @click="editDoubleConfirmationStatus(item.id)" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.paymentState == '4' || item.paymentState == '5'" square text="重新申请" color="#FFA63E" type="info" @click="reapply(item.id)" class="delete-button" /> | |||
</van-col> | |||
<van-col> | |||
<van-button v-if="item.paymentState == '1'" square text="取消支付" type="danger" @click="reapplyDraft(item.id)" class="delete-button" /> | |||
</van-col> | |||
</van-row> | |||
</template> | |||
</van-swipe-cell> | |||
</van-list> | |||
</div> | |||
</template> | |||
<script> | |||
import { payList,transactionStatusQuery,editDoubleConfirmationStatus,payRecordList,resetTYinnongTransfer,reapply,reapplyDraft } from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalList", | |||
data() { | |||
return { | |||
applicationList:[], | |||
auditStatusOptions:[], | |||
paymentStateOptions:[], | |||
loading: false, | |||
finished: false, | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
transferType:"1", | |||
}, | |||
form:{}, | |||
showBtn:true, | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("payment_state").then((response) => { | |||
this.paymentStateOptions = response.data; | |||
}); | |||
if (this.$route.query.type == 'code'){ | |||
this.showBtn = false; | |||
} | |||
}, | |||
methods: { | |||
//金额千分符 会在整数后添加两个0 | |||
stateFormat(cellValue) { | |||
if (cellValue) { | |||
return Number(cellValue) | |||
.toFixed(2) | |||
.replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||
return $1 + ","; | |||
}) | |||
.replace(/\.$/, "") + "元"; | |||
} | |||
}, | |||
goAdd(){ | |||
window.location = 'approvalAdd'; | |||
}, | |||
getList(){ | |||
setTimeout(() => { | |||
payList(this.queryParams).then(response => { | |||
console.log(response) | |||
for (var i = 0; i <response.rows.length; i++) { | |||
if(response.rows[i].remark.length > 12){ | |||
response.rows[i].remark = response.rows[i].remark.substring(0,12)+"..."; | |||
} | |||
this.applicationList.push(response.rows[i]); | |||
} | |||
console.log(this.applicationList.length >= response.total) | |||
if(this.applicationList.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryParams.pageNum += 1 ; | |||
} | |||
}); | |||
}, 1000); | |||
}, | |||
transactionStatusQuery(id){ | |||
this.$dialog.confirm({ | |||
message: '是否确认查询【' + id + '】号单据的转账结果?', | |||
}) | |||
.then(() => { | |||
transactionStatusQuery(id).then(res => { | |||
if(res.code = 200){ | |||
this.$toast.success(res.msg); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}, | |||
editDoubleConfirmationStatus(id){ | |||
this.$dialog.confirm({ | |||
message: '是否确认复核【' + id + '】号单据?', | |||
}) | |||
.then(() => { | |||
editDoubleConfirmationStatus(id).then(res => { | |||
if(res.code = 200){ | |||
this.$toast.success('复核成功!'); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}, | |||
resetTYinnongTransfer(id){ | |||
this.$dialog.confirm({ | |||
message: '是否确认重置【' + id + '】号单据?<br>重置后申请单需要重新审批,请谨慎操作!', | |||
}) | |||
.then(() => { | |||
resetTYinnongTransfer(id).then(res => { | |||
if(res.code = 200){ | |||
this.$toast.success('重置成功!'); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}, | |||
reapply(id){ | |||
this.$dialog.confirm({ | |||
message: '此操作会将【' + id + '】号单据<br>中支付失败的记录重新申请,<br>请先确保收款账户已修改准确,<br>再执行此操作!', | |||
}) | |||
.then(() => { | |||
reapply(id).then(res => { | |||
if(res.code = 200){ | |||
this.$toast.success('重新申请成功!'); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}, | |||
reapplyDraft(id){ | |||
this.$dialog.confirm({ | |||
message: '此操作会将【' + id + '】号单据<br/>的审批状态置为草稿,请谨慎操作!', | |||
}) | |||
.then(() => { | |||
reapplyDraft(id).then(res => { | |||
if(res.code = 200){ | |||
this.$toast.success('取消成功!'); | |||
setTimeout(function(){ | |||
history.go(0) | |||
},2000) | |||
} | |||
}); | |||
}) | |||
.catch(() => { | |||
// on cancel | |||
}); | |||
}, | |||
goBack(){ | |||
this.$router.push({path:'/sunVillage_info/index'}) | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-nav-bar{ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
p,i{ | |||
color: #ffffff; | |||
} | |||
} | |||
.app-container { | |||
.header_main{ | |||
height: 116px; | |||
/*background: url('../../../../assets/images/sunVillage_info/list_head.png') no-repeat;*/ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
/*width: 56.4px;*/ | |||
/*height: 40.8px;*/ | |||
/*background: url('../../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;*/ | |||
/*background-size: 47px 34px;*/ | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
} | |||
/deep/.van-list{ | |||
padding: 0.2rem 3%; | |||
} | |||
/deep/.van-cell__title{ | |||
flex: 0.7; | |||
} | |||
/deep/.van-cell__title span{ | |||
font-family: Arial; | |||
font-size: 0.4rem; | |||
font-weight: normal; | |||
} | |||
/deep/.van-cell__label span{ | |||
color: #FF0000; | |||
font-weight: bold; | |||
i{ | |||
font-size: 0.2rem; | |||
} | |||
} | |||
/deep/.van-cell__value{ | |||
flex: 0.3; | |||
color: #1D6FE9; | |||
font-weight: bold; | |||
} | |||
/deep/.van-swipe-cell{ | |||
margin-bottom: 0.2rem; | |||
border-radius: 0.2rem; | |||
overflow: hidden; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
} | |||
/deep/van-ellipsis{ | |||
font-weight: bold; | |||
} | |||
.van-row{ | |||
height: 100%; | |||
} | |||
.van-col{ | |||
height: 100%; | |||
} | |||
.delete-button { | |||
height: 100%; | |||
} | |||
</style> |
@@ -0,0 +1,267 @@ | |||
<template> | |||
<div class="app-container"> | |||
<van-nav-bar | |||
left-arrow | |||
fixed | |||
placeholder | |||
@click-left="$router.back(-1)" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">付款申请流程</p> | |||
</template> | |||
</van-nav-bar> | |||
<div class="main_box"> | |||
<van-row v-for="(item,index) in processList" :key="index"> | |||
<van-divider content-position="center"><h4>批次号:{{index}}</h4></van-divider> | |||
<div> | |||
<van-row class="row1" type="flex" align="center" v-for="(item1,index,i) in item" :key="i"> | |||
<van-col span="4"> | |||
<i></i> | |||
<!-- <p class="icon_jian" v-show="item1.auditStatus=='1'"><van-icon name="minus" size="14" /></p>--> | |||
<!-- <p class="icon_jian blue" v-show="item1.auditStatus=='3'"><van-icon name="success" size="14" /></p>--> | |||
<!-- <p class="icon_jian red" v-show="item1.auditStatus=='2'"><van-icon name="cross" size="14" /></p>--> | |||
<p class="icon_jian" v-show="item1.auditStatus=='1'"></p> | |||
<p class="icon_jian blue" v-show="item1.auditStatus=='3'"></p> | |||
<p class="icon_jian red" v-show="item1.auditStatus=='2'"></p> | |||
<i></i> | |||
</van-col> | |||
<van-col span="20"> | |||
<div class="right_main"> | |||
<van-row> | |||
<van-col span="8" style="padding: 0;"> | |||
<p v-show="item1.auditStatus == '1'">{{item1.actorName}}</p> | |||
<p v-show="item1.auditStatus == '3'" class="textBlue">{{item1.actorName}}</p> | |||
<p v-show="item1.auditStatus == '2'" class="textRed">{{item1.actorName}}</p> | |||
</van-col> | |||
<van-col span="16" style="padding: 0;text-align: right;" > | |||
<p v-show="item1.auditStatus == '1'">{{item1.auditTime}}</p> | |||
<p v-show="item1.auditStatus == '3'" class="textBlue">{{item1.auditTime}}</p> | |||
<p v-show="item1.auditStatus == '2'" class="textRed">{{item1.auditTime}}</p> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="12" style="padding: 0;" > | |||
<p v-show="item1.auditStatus == '1'">{{item1.auditBy}}</p> | |||
<p v-show="item1.auditStatus == '3'" class="textBlue">{{item1.auditBy}}</p> | |||
<p v-show="item1.auditStatus == '2'" class="textRed">{{item1.auditBy}}</p> | |||
</van-col> | |||
<van-col span="12" style="padding: 0;text-align: right;"> | |||
<p v-show="item1.auditStatus == '1'">{{item1.auditRemark}}</p> | |||
<p v-show="item1.auditStatus == '3'" class="textBlue">{{item1.auditRemark}}</p> | |||
<p v-show="item1.auditStatus == '2'" class="textRed">{{item1.auditRemark}}</p> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</van-row> | |||
<van-divider content-position="center" v-if="approvalTemplateDetailList.length>0"><h4>审批流程</h4></van-divider> | |||
<div> | |||
<van-row class="row2" type="flex" align="center" v-if="approvalTemplateDetailList.length>0" v-for="(item1,index,i) in approvalTemplateDetailList" :key="i"> | |||
<van-col span="4" align="right"> | |||
<i></i> | |||
<p class="icon_jian" ></p> | |||
<i></i> | |||
</van-col> | |||
<van-col span="20"> | |||
<div class="right_main"> | |||
<van-row> | |||
<van-col span="12" style="padding: 0;"> | |||
<p>{{item1.name}}</p> | |||
</van-col> | |||
<van-col span="12" style="padding: 0;text-align: right;"> | |||
<p v-show="item1.approvalLevel == 1">组级审批</p> | |||
<p v-show="item1.approvalLevel == 2">村级审批</p> | |||
<p v-show="item1.approvalLevel == 3">镇级审批</p> | |||
<p v-show="item1.approvalLevel == 4">区县审批</p> | |||
</van-col> | |||
</van-row> | |||
<van-row> | |||
<van-col span="24" style="padding: 0;"> | |||
<p>{{item1.nickName}}<span v-if="item1.feeLimit != 0 && item1.nickName != null">({{item1.feeLimit}}元)</span></p> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</van-col> | |||
</van-row> | |||
</div> | |||
</div> | |||
</div> | |||
</template> | |||
<script> | |||
import { | |||
getTransferProcess, | |||
getTransfer, | |||
getProjectto, | |||
queryTransferDetail, | |||
selectApprovalByTemplateId | |||
} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalProcess", | |||
data() { | |||
return { | |||
processList:{}, | |||
form:{}, | |||
approvalTemplateDeptList:[], | |||
approvalTemplateDetailList:[] | |||
}; | |||
}, | |||
created() { | |||
this.handleUpdate(this.$route.query.id); | |||
}, | |||
methods: { | |||
//查询审批进程 | |||
getTransferProcess(id){ | |||
getTransferProcess(id).then(res => { | |||
this.processList = res.data | |||
console.info( this.processList); | |||
}) | |||
}, | |||
handleUpdate(id) { | |||
getTransfer(id).then((response) => { | |||
this.form = response.data; | |||
this.processList = {} | |||
if(this.form.auditStatus != 0){ | |||
this.getTransferProcess(id); | |||
} | |||
if(this.form.approvalMode == 1){ | |||
selectApprovalByTemplateId(this.form.approvalTemplateId).then(rs => { | |||
this.approvalTemplateDeptList = rs.approvalDepts; | |||
this.approvalTemplateDetailList = rs.approvalDetails; | |||
console.log("this.approvalTemplateDetailList:"+this.approvalTemplateDetailList); | |||
if(this.form.approveLevel === "1"){ | |||
this.approvalTemplateDetailList.push({"approvalLevel":"3"}); | |||
}else if(this.form.approveLevel === "2"){ | |||
this.approvalTemplateDetailList.push({"approvalLevel":"4"}); | |||
} | |||
}) | |||
} | |||
if(this.form.capitalExpenditureType==2){ | |||
this.capitalExpenditureOpen = true | |||
let param={ | |||
'outId' : this.form.id, | |||
'ynType' : '1' | |||
} | |||
getProjectto(param).then(res => { | |||
this.projectForm = res.data | |||
this.projectForm.projectFundType+="" | |||
queryTransferDetail(id).then((r) => { | |||
this.chargeItme = r.rows; | |||
this.length = this.chargeItme.length; | |||
this.detailTotal = r.total; | |||
this.loading = false; | |||
}); | |||
}) | |||
}else{ | |||
this.capitalExpenditureOpen = false | |||
queryTransferDetail(id).then((r) => { | |||
this.chargeItme = r.rows; | |||
this.length = this.chargeItme.length; | |||
this.detailTotal = r.total; | |||
this.loading = false; | |||
}); | |||
} | |||
}); | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.app-container { | |||
padding: 0.2rem 0; | |||
} | |||
/deep/ .van-nav-bar{ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
p,i{ | |||
color: #ffffff; | |||
} | |||
} | |||
.main_box{ | |||
width: 96%; | |||
margin: 0 auto; | |||
border-radius: 6px; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
overflow: hidden; | |||
background-color: #FFF; | |||
padding: 20Px 0; | |||
} | |||
.icon_jian{ | |||
border: 3PX solid #2638D8; | |||
display: inline-block; | |||
width: 20Px; | |||
height: 20Px; | |||
border-radius: 50%; | |||
color: #FFF; | |||
} | |||
.blue{ | |||
border-color: #2638D8; | |||
} | |||
.red{ | |||
border-color: rgb(245, 108, 108); | |||
} | |||
.textBlue{ | |||
color: #1D6FE9!important; | |||
} | |||
.textRed{ | |||
color: rgb(245, 108, 108)!important; | |||
} | |||
.van-col{ | |||
padding: 0Px 10Px; | |||
} | |||
.van-col--20{ | |||
padding: 10Px 20Px 10Px 0; | |||
} | |||
.van-col:nth-child(2){ | |||
font-size: 16Px; | |||
color: #878787; | |||
line-height: 22Px; | |||
} | |||
.van-col--4{ | |||
height: 94PX; | |||
display: flex; | |||
align-items: center; | |||
flex-direction: column; | |||
/*justify-content: right;*/ | |||
i{ | |||
display: block; | |||
height: 37PX; | |||
border-right: 2PX dashed #929BEB; | |||
} | |||
} | |||
.van-row{ | |||
.van-row{ | |||
.van-col{ | |||
/*padding: 5Px 0 0 0!important;*/ | |||
color: #878787; | |||
} | |||
} | |||
} | |||
.row1,.row2{ | |||
&:first-child{ | |||
.van-col--4{ | |||
i:first-child{ | |||
border-color: transparent; | |||
} | |||
} | |||
} | |||
&:last-child{ | |||
.van-col--4{ | |||
i:last-child{ | |||
border-color: transparent; | |||
} | |||
} | |||
} | |||
} | |||
.right_main{ | |||
background-color: #F2F5FE; | |||
padding: 10PX; | |||
border-radius: 10PX; | |||
} | |||
</style> |
@@ -0,0 +1,208 @@ | |||
<template> | |||
<div class="app-container"> | |||
<van-nav-bar | |||
left-arrow | |||
fixed | |||
placeholder | |||
@click-left="onClickLeft" | |||
> | |||
<template #title> | |||
<p style="font-weight: bold;">银行卡转账支付记录列表</p> | |||
</template> | |||
<!-- <template #right> | |||
<van-icon name="add-o" size="25" v-show="showBtn"/> | |||
</template> --> | |||
</van-nav-bar> | |||
<!-- <div class="header_main">--> | |||
<!-- 银行卡转账申请列表--> | |||
<!-- <div class="return_btn" @click="onClickLeft"></div>--> | |||
<!--<!– <div class="add_btn" @click="goAdd" v-show="showBtn"></div>–>--> | |||
<!-- <van-icon class="add_btn" name="add-o" size="25" @click="goAdd" v-show="showBtn" />--> | |||
<!-- </div>--> | |||
<van-list | |||
v-model="loading" | |||
:finished="finished" | |||
finished-text="没有更多了" | |||
@load="getList"> | |||
<van-swipe-cell v-for="(item,index) in applicationList" :key="index"> | |||
<van-cell :title="item.remark" center :to="{name:'sunVillagePaymentPendingApprovalDetail', query: {id:item.id,auditbatchNo:item.auditbatchNo}}"> | |||
<template #icon> | |||
<van-icon name="../../../../static/images/sunVillage_info/icon_yn1.png" size="30" color="#FF4646" style="margin-right: 10px;" /> | |||
</template> | |||
<template #label> | |||
<p><span><i>¥</i>{{stateFormat(item.expenditureAmount)}}</span><i style="margin-right: 15px;"></i>{{item.applyDate}}</p> | |||
<p><span><i>¥</i>{{stateFormat(item.succeedAmount)}}</span><i style="margin-right: 15px;"></i>{{item.failing_allSize}}(失败/总数)</p> | |||
<p><span>支付时间:</span>{{item.paymentTime}}</p> | |||
</template> | |||
<template #default> | |||
<span v-if="item.paymentState === '4' && item.downId != null" style="color: #409EFF">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} <br>(已申请)</span> | |||
<span v-else-if="item.paymentState === '5' && item.downId != null" style="color: #E6A23C">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} <br>(已申请)</span> | |||
<span v-else-if="item.paymentState != '6' && item.downId === null" style="color: #F56C6C">{{ selectDictLabel(paymentStateOptions, item.paymentState)}} <br>(待申请)</span> | |||
<span v-else-if="item.paymentState === '6'" style="color: #67C23A">{{ selectDictLabel(paymentStateOptions, item.paymentState) }} </span> | |||
</template> | |||
</van-cell> | |||
</van-swipe-cell> | |||
</van-list> | |||
</div> | |||
</template> | |||
<script> | |||
import { payRecordList} from "@/api/onlineHome/bankAgriculture/paymentApproval"; | |||
export default { | |||
name: "approvalList", | |||
data() { | |||
return { | |||
applicationList:[], | |||
auditStatusOptions:[], | |||
paymentStateOptions:[], | |||
loading: false, | |||
finished: false, | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
transferType:"1", | |||
}, | |||
form:{}, | |||
showBtn:true, | |||
}; | |||
}, | |||
created() { | |||
this.getDicts("payment_state").then((response) => { | |||
this.paymentStateOptions = response.data; | |||
}); | |||
if (this.$route.query.type == 'code'){ | |||
this.showBtn = false; | |||
} | |||
}, | |||
methods: { | |||
//金额千分符 会在整数后添加两个0 | |||
stateFormat(cellValue) { | |||
if (cellValue) { | |||
return Number(cellValue) | |||
.toFixed(2) | |||
.replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => { | |||
return $1 + ","; | |||
}) | |||
.replace(/\.$/, "") + "元"; | |||
}else{ | |||
return "0元"; | |||
} | |||
}, | |||
goAdd(){ | |||
window.location = 'approvalAdd'; | |||
}, | |||
getList(){ | |||
setTimeout(() => { | |||
payRecordList(this.queryParams).then(response => { | |||
console.log(response) | |||
for (var i = 0; i <response.rows.length; i++) { | |||
if(response.rows[i].remark.length > 12){ | |||
response.rows[i].remark = response.rows[i].remark.substring(0,12)+"..."; | |||
} | |||
this.applicationList.push(response.rows[i]); | |||
} | |||
console.log(this.applicationList.length >= response.total) | |||
if(this.applicationList.length >= response.total){ | |||
this.finished = true; | |||
return; | |||
}else{ | |||
this.loading = false; | |||
this.queryParams.pageNum += 1 ; | |||
} | |||
}); | |||
}, 1000); | |||
}, | |||
goBack(){ | |||
this.$router.push({path:'/sunVillage_info/index'}) | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-nav-bar{ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
p,i{ | |||
color: #ffffff; | |||
} | |||
} | |||
.app-container { | |||
.header_main{ | |||
height: 116px; | |||
/*background: url('../../../../assets/images/sunVillage_info/list_head.png') no-repeat;*/ | |||
background: linear-gradient(to right , #9EF7FF , #2637D8); | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
/*width: 56.4px;*/ | |||
/*height: 40.8px;*/ | |||
/*background: url('../../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;*/ | |||
/*background-size: 47px 34px;*/ | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
} | |||
/deep/.van-list{ | |||
padding: 0.2rem 3%; | |||
} | |||
/deep/.van-cell__title{ | |||
flex: 0.8; | |||
} | |||
/deep/.van-cell__title span{ | |||
font-family: Arial; | |||
font-size: 0.4rem; | |||
font-weight: normal; | |||
} | |||
/deep/.van-cell__label span{ | |||
color: #FF0000; | |||
font-weight: bold; | |||
i{ | |||
font-size: 0.2rem; | |||
} | |||
} | |||
/deep/.van-cell__value{ | |||
flex: 0.2; | |||
color: #1D6FE9; | |||
font-weight: bold; | |||
} | |||
/deep/.van-swipe-cell{ | |||
margin-bottom: 0.2rem; | |||
border-radius: 0.2rem; | |||
overflow: hidden; | |||
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16); | |||
} | |||
/deep/van-ellipsis{ | |||
font-weight: bold; | |||
} | |||
.van-row{ | |||
height: 100%; | |||
} | |||
.van-col{ | |||
height: 100%; | |||
} | |||
.delete-button { | |||
height: 100%; | |||
} | |||
</style> |
@@ -5,7 +5,10 @@ | |||
<div class="address"><i class="icon"></i>{{deptName}}</div> | |||
<div class="address">{{bookName}}</div> | |||
<div class="address" @click="bookVisbile = true">{{bookName}}</div> | |||
<van-popup v-model="bookVisbile" round position="bottom"> | |||
<van-picker title="请选择账套" show-toolbar :columns="bookList" @confirm="onConfirmBook" @cancel="onCancelBook" value-key="bookName"/> | |||
</van-popup> | |||
</div> | |||
<div class="exit_btn" @click="$router.push({name:'sunVillageInfoLogin'})"> | |||
@@ -65,9 +68,10 @@ | |||
</div> | |||
</template> | |||
<script> | |||
import {bookInfo, nologinMenus} from "@/api/sunVillage_info/fixedAssets"; | |||
import {bookInfo, nologinMenus} from "@/api/sunVillage_info/fixedAssets"; | |||
import { sysConfig } from "@/api/homesteadSurvey/index"; | |||
import Cookies from "js-cookie"; | |||
import {bookListByDept} from "@/api/onlineHome/villageAffairs"; | |||
export default { | |||
name: "sunVillageInfoIndexCode", | |||
data() { | |||
@@ -94,7 +98,6 @@ | |||
//账套列表 | |||
bookVisbile:false, | |||
bookList:[], | |||
bookName:"", | |||
bookId:"", | |||
book:"", | |||
@@ -102,7 +105,7 @@ | |||
}; | |||
}, | |||
created() { | |||
console.log(this.$store) | |||
//console.log(this.$store) | |||
if(this.$route.query.bookId){ | |||
bookInfo(this.$route.query.bookId).then((res) => { | |||
@@ -143,6 +146,7 @@ | |||
this.configValue = res.rows[0].configValue; | |||
} | |||
}); | |||
this.getBookList(this.$route.query.deptId); | |||
}, | |||
methods: { | |||
goCode(){ | |||
@@ -151,7 +155,24 @@ | |||
}else{ | |||
this.$router.push({path:'/sunVillage_info/login_code'}) | |||
} | |||
} | |||
}, | |||
onConfirmBook(e){ | |||
this.bookVisbile = false; | |||
const url = `/sunVillage_info/index_code?bookId=${e.id}&deptId=${this.$route.query.deptId}`; | |||
this.$router.replace(url, () => { | |||
window.location.href = url; | |||
}); | |||
}, | |||
onCancelBook(e){ | |||
this.bookVisbile = false | |||
}, | |||
getBookList(e){ | |||
bookListByDept(e).then((response) => { | |||
if (response.code == 200) { | |||
this.bookList = response.rows; | |||
} | |||
}) | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -38,9 +38,9 @@ | |||
<van-field required label="记工员" v-model="form.workerNote" placeholder="请输入记工员" :rules="[{ required: true , message:'请输入记工员' }]" input-align="right" :border="false" /> | |||
<van-field required label="出工数" v-model="form.workNum" placeholder="请输入出工数" :rules="[{ required: true , message:'请输入出工数' }]" input-align="right" :border="false" /> | |||
<van-field required label="出工数" v-model="form.workNum" placeholder="请输入出工数" :rules="[{ required: true , message:'请输入出工数' }]" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required label="工日值" v-model="form.perMoney" placeholder="请输入工日值" :rules="[{ required: true , message:'请输入工日值' }]" input-align="right" :border="false" /> | |||
<van-field required label="工日值" v-model="form.perMoney" placeholder="请输入工日值" :rules="[{ required: true , message:'请输入工日值' }]" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required label="金额(元)" type="number" v-model="form.totalMoney" placeholder="请输入金额(元)" :rules="[{ required: true , message:'请输入金额' }]" input-align="right" :border="false" /> | |||
@@ -61,6 +61,7 @@ | |||
import { addOddjob } from "@/api/sunVillage_info/fixedAssets"; | |||
import Cookies from "js-cookie"; | |||
import request from '@/utils/request' | |||
import {FINANCE} from "@/utils/finance"; | |||
export default { | |||
name: "certificateList", | |||
data() { | |||
@@ -113,7 +114,12 @@ | |||
this.jobTime = data; | |||
this.showBuildTime = false; | |||
}, | |||
calcMoney() { | |||
if(this.form.workNum > 0 && this.form.perMoney > 0) | |||
{ | |||
this.form.totalMoney = FINANCE.toNumber(FINANCE.mul(this.form.workNum, this.form.perMoney)); | |||
} | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -38,9 +38,9 @@ | |||
<van-field required label="记工员" v-model="form.workerNote" placeholder="请输入记工员" :rules="[{ required: true , message:'请输入记工员' }]" input-align="right" :border="false" /> | |||
<van-field required label="出工数" v-model="form.workNum" placeholder="请输入出工数" :rules="[{ required: true , message:'请输入出工数' }]" input-align="right" :border="false" /> | |||
<van-field required label="出工数" v-model="form.workNum" placeholder="请输入出工数" :rules="[{ required: true , message:'请输入出工数' }]" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required label="工日值" v-model="form.perMoney" placeholder="请输入工日值" :rules="[{ required: true , message:'请输入工日值' }]" input-align="right" :border="false" /> | |||
<van-field required label="工日值" v-model="form.perMoney" placeholder="请输入工日值" :rules="[{ required: true , message:'请输入工日值' }]" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required label="金额(元)" type="number" v-model="form.totalMoney" placeholder="请输入金额(元)" :rules="[{ required: true , message:'请输入金额' }]" input-align="right" :border="false" /> | |||
@@ -61,6 +61,7 @@ | |||
import { addOddjob , getOddjob , updateOddjob } from "@/api/sunVillage_info/fixedAssets"; | |||
import Cookies from "js-cookie"; | |||
import request from '@/utils/request' | |||
import {FINANCE} from "@/utils/finance"; | |||
export default { | |||
name: "certificateList", | |||
data() { | |||
@@ -122,6 +123,12 @@ | |||
this.jobTime = data; | |||
this.showBuildTime = false; | |||
}, | |||
calcMoney() { | |||
if(this.form.workNum > 0 && this.form.perMoney > 0) | |||
{ | |||
this.form.totalMoney = FINANCE.toNumber(FINANCE.mul(this.form.workNum, this.form.perMoney)); | |||
} | |||
}, | |||
}, | |||
} | |||
@@ -25,8 +25,8 @@ | |||
<van-field required :rules="[{ required: true, message: '请填写出工姓名' }]" v-model="form.workerName" label="出工姓名" placeholder="出工姓名" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工事由' }]" v-model="form.workReason" label="出工事由" placeholder="出工事由" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写记工员' }]" v-model="form.workerNote" label="记工员" placeholder="记工员" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工数' }]" v-model="form.workNum" label="出工数" placeholder="出工数" input-align="right" :border="false" type="number" /> | |||
<van-field required :rules="[{ required: true, message: '请填写工日值' }]" v-model="form.perMoney" label="工日值" placeholder="工日值" input-align="right" :border="false" type="number" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工数' }]" v-model="form.workNum" label="出工数" placeholder="出工数" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required :rules="[{ required: true, message: '请填写工日值' }]" v-model="form.perMoney" label="工日值" placeholder="工日值" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required :rules="[{ required: true, message: '请填写金额(元)' }]" v-model="form.totalMoney" label="金额(元)" placeholder="金额(元)" input-align="right" :border="false" type="number" /> | |||
<van-field | |||
@@ -36,7 +36,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" v-model="form.openPic" multiple/> | |||
<CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic2" | |||
@@ -45,7 +45,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic3" | |||
@@ -54,7 +54,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | |||
@@ -72,6 +72,7 @@ | |||
import { addOddjob,updateOddjob } from "@/api/sunVillage_info/fixedAssets"; | |||
import CommonUpload from "@/components/form/CommonUpload.vue"; | |||
import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | |||
import {FINANCE} from "@/utils/finance"; | |||
export default { | |||
name: "listTouristsRegistrationAdd", | |||
components: {FieldDatePicker, CommonUpload}, | |||
@@ -131,6 +132,12 @@ | |||
back() { | |||
this.$router.back(); | |||
}, | |||
calcMoney() { | |||
if(this.form.workNum > 0 && this.form.perMoney > 0) | |||
{ | |||
this.form.totalMoney = FINANCE.toNumber(FINANCE.mul(this.form.workNum, this.form.perMoney)); | |||
} | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -16,13 +16,13 @@ | |||
<van-field v-model="form.totalMoney" label="金额(元)" input-align="right" :border="false" type="number" />--> | |||
<van-field | |||
name="openPic" | |||
name="openPic1" | |||
label="事前公开" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" v-model="form.openPic" multiple :deletable="false" :show-upload="false"/> | |||
<CommonUpload name="openPic1" v-model="form.openPic1" multiple :deletable="false" :show-upload="false"/> | |||
<van-field | |||
name="openPic2" | |||
@@ -73,7 +73,7 @@ | |||
perMoney: null, | |||
totalMoney: null, | |||
remark: null, | |||
openPic: null, | |||
openPic1: null, | |||
openPic2: null, | |||
openPic3: null, | |||
createBy: null, | |||
@@ -25,8 +25,8 @@ | |||
<van-field required :rules="[{ required: true, message: '请填写出工姓名' }]" v-model="form.workerName" label="出工姓名" placeholder="出工姓名" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工事由' }]" v-model="form.workReason" label="出工事由" placeholder="出工事由" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写记工员' }]" v-model="form.workerNote" label="记工员" placeholder="记工员" input-align="right" :border="false" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工数' }]" v-model="form.workNum" label="出工数" placeholder="出工数" input-align="right" :border="false" type="number" /> | |||
<van-field required :rules="[{ required: true, message: '请填写工日值' }]" v-model="form.perMoney" label="工日值" placeholder="工日值" input-align="right" :border="false" type="number" /> | |||
<van-field required :rules="[{ required: true, message: '请填写出工数' }]" v-model="form.workNum" label="出工数" placeholder="出工数" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required :rules="[{ required: true, message: '请填写工日值' }]" v-model="form.perMoney" label="工日值" placeholder="工日值" input-align="right" :border="false" type="number" @change="calcMoney" /> | |||
<van-field required :rules="[{ required: true, message: '请填写金额(元)' }]" v-model="form.totalMoney" label="金额(元)" placeholder="金额(元)" input-align="right" :border="false" type="number" /> | |||
<van-field | |||
@@ -36,7 +36,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" v-model="form.openPic" multiple/> | |||
<CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic2" | |||
@@ -45,7 +45,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic3" | |||
@@ -54,7 +54,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||
<van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | |||
@@ -72,6 +72,7 @@ | |||
import {addOddjob, getOddjob, updateOddjob} from "@/api/sunVillage_info/fixedAssets"; | |||
import CommonUpload from "@/components/form/CommonUpload.vue"; | |||
import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | |||
import {FINANCE} from "@/utils/finance"; | |||
export default { | |||
name: "listTouristsRegistrationEdit", | |||
components: {FieldDatePicker, CommonUpload}, | |||
@@ -143,6 +144,12 @@ | |||
back() { | |||
this.$router.back(); | |||
}, | |||
calcMoney() { | |||
if(this.form.workNum > 0 && this.form.perMoney > 0) | |||
{ | |||
this.form.totalMoney = FINANCE.toNumber(FINANCE.mul(this.form.workNum, this.form.perMoney)); | |||
} | |||
}, | |||
}, | |||
} | |||
</script> | |||
@@ -0,0 +1,178 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
{{title}} | |||
<div class="return_btn" @click="back"></div> | |||
</div> | |||
<van-form ref="formData" :readonly="true"> | |||
<div class="list_main"> | |||
<van-field name="otherName" :value="form.otherName" label="公开名称" input-align="right" :border="false" /> | |||
<van-field name="openAt" :value="form.openAt" label="公开时间" input-align="right" :border="false" /> | |||
<van-field name="openContent" label="公开内容" input-align="right" :border="false" /> | |||
<div class="open-content" v-html="form.openContent"></div> | |||
<van-field | |||
name="openPic" | |||
label="公开图片" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" :value="form.openPic" multiple :deletable="false" :show-upload="false"/> | |||
<van-field | |||
name="openFile" | |||
label="公开文件" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openFile" :value="form.openFile" multiple :deletable="false" :show-upload="false"/> | |||
<van-field name="remake" :value="form.remark" label="备注" input-align="left" :border="false"/> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import CommonUpload from "@/components/form/CommonUpload.vue"; | |||
import {getOther} from "@/api/sunVillage_info/otherOpen"; | |||
export default { | |||
name: "otherOpenDetail", | |||
components: {CommonUpload}, | |||
data() { | |||
return { | |||
form: { | |||
id: null, | |||
bookId: null, | |||
deptId: null, | |||
deptName: null, | |||
otherName: null, | |||
otherType: '1', | |||
openYear: null, | |||
openAt: null, | |||
openContent: null, | |||
openFile: null, | |||
openPic: null, | |||
remark: null, | |||
createBy: null, | |||
createTime: null, | |||
updateBy: null, | |||
updateTime: null, | |||
}, | |||
id:'', | |||
title: '综合公开', | |||
}; | |||
}, | |||
created() { | |||
this.id = this.$route.query.id; | |||
this.getDetail(); | |||
}, | |||
methods: { | |||
getDetail() { | |||
if(!this.id) | |||
{ | |||
this.back(); | |||
return; | |||
} | |||
getOther(this.id).then((resp) => { | |||
this.form = resp.data; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||
if(dict) | |||
this.title = dict.dictLabel; | |||
}); | |||
}); | |||
}, | |||
back() { | |||
this.$router.back(); | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-button--primary{ | |||
background: url("../../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||
background-size: 100% 100%; | |||
border: none; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.list_main{ | |||
padding:25px; | |||
background: #ffffff; | |||
width: 94%; | |||
margin: 25px auto 0; | |||
border-radius: 15PX; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
} | |||
.titBox{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.tit{ | |||
font-size: 36px; | |||
font-weight: bold; | |||
} | |||
/deep/ .van-cell{ | |||
padding-left: 0!important; | |||
padding-right: 0!important; | |||
padding-bottom: 0!important; | |||
} | |||
/deep/ .van-field__label{ | |||
padding-left: 10PX; | |||
width: 8.2em; | |||
} | |||
/deep/ .van-cell--required::before{ | |||
left: 0; | |||
} | |||
} | |||
.open-content { | |||
padding: .2rem .3rem; | |||
max-height: 8rem; | |||
} | |||
</style> |
@@ -0,0 +1,280 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main"> | |||
{{titlePreifx}}{{title}} | |||
<div class="return_btn" @click="back()"></div> | |||
</div> | |||
<van-form ref="formData" :show-error-message="false" @submit="submit"> | |||
<div class="list_main"> | |||
<field-select | |||
v-if="showTypeSelector" | |||
v-model="form.otherType" | |||
label="公开类型" | |||
value-key="dictLabel" | |||
data-key="dictValue" | |||
placeholder="请选择公开类型" | |||
:rules="rules.otherType" | |||
required | |||
size="large" | |||
:columns="otherTypeOptions"/> | |||
<van-field name="otherName" v-model="form.otherName" label="公开名称" input-align="right" required :rules="rules.otherName" placeholder="请输入公开名称" size="large" :maxlength="150"/> | |||
<field-date-picker | |||
name="openAt" | |||
class="field_no-label" | |||
v-model="form.openAt" | |||
placeholder="请选择公开时间" | |||
formatter="yyyy-MM-dd" | |||
input-align="right" | |||
type="date" | |||
label="公开时间" | |||
:required="true" | |||
:rules="rules.openAt" | |||
size="large" | |||
/> | |||
<van-field name="openContent" label="公开内容" size="large" :border="false"/> | |||
<vue-html5-editor :content="content" :height="300" @change="updateData" style="margin-top: 0.2rem;"></vue-html5-editor> | |||
<van-field | |||
name="openPic" | |||
label="公开图片" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||
<van-field | |||
name="openFile" | |||
label="公开文件" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openFile" v-model="form.openFile" accept="*" multiple/> | |||
<van-field name="remark" v-model="form.remark" label="备注" input-align="left" size="large" :maxlength="255" placeholder="请输入备注"/> | |||
</div> | |||
<div style="margin: 16px auto;width: 50%;"> | |||
<van-button round block type="primary" native-type="submit"> | |||
保存 | |||
</van-button> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import CommonUpload from "@/components/form/CommonUpload.vue"; | |||
import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | |||
import {Toast} from "vant"; | |||
import {addOther, getOther, updateOther} from "@/api/sunVillage_info/otherOpen"; | |||
import FieldSelect from "@/components/form/FieldSelect.vue"; | |||
export default { | |||
name: "otherOpenEdit", | |||
components: {FieldSelect, FieldDatePicker, CommonUpload}, | |||
data() { | |||
return { | |||
form: { | |||
id: null, | |||
bookId: null, | |||
deptId: null, | |||
deptName: null, | |||
otherName: null, | |||
otherType: null, | |||
openYear: null, | |||
openAt: null, | |||
openContent: null, | |||
openFile: null, | |||
openPic: null, | |||
remark: null, | |||
createBy: null, | |||
createTime: null, | |||
updateBy: null, | |||
updateTime: null, | |||
}, | |||
rules: { | |||
openAt: [{message: '请选择公开时间', required: true}], | |||
otherName: [{message: '请输入公开名称', required: true}], | |||
otherType: [{message: '请选择公开类型', required: true}], | |||
}, | |||
id: null, | |||
intent: null, | |||
content: '', | |||
otherTypeOptions: [], | |||
otherType: null, | |||
title: '综合公开', | |||
}; | |||
}, | |||
created() { | |||
this.id = this.$route.query.id; | |||
this.intent = this.$route.query.intent; | |||
this.otherType = this.$route.query.otherType; | |||
if(this.isEdit) | |||
this.getDetail(); | |||
else | |||
{ | |||
this.form.otherType = this.$route.query.otherType; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
this.otherTypeOptions = resp.data; | |||
const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||
if(dict) | |||
this.title = dict.dictLabel; | |||
}); | |||
} | |||
}, | |||
methods: { | |||
getDetail() { | |||
if(!this.id) | |||
{ | |||
this.back(); | |||
return; | |||
} | |||
getOther(this.id).then((resp) => { | |||
this.form = resp.data; | |||
this.content = this.form.openContent || ''; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||
if(dict) | |||
this.title = dict.dictLabel; | |||
}); | |||
}); | |||
}, | |||
back(ti) { | |||
if(ti > 0) | |||
setTimeout(() => this.$router.back(), ti); | |||
else | |||
this.$router.back(); | |||
}, | |||
updateData(t) { | |||
this.form.openContent = t; | |||
}, | |||
submit() { | |||
const loading = Toast.loading({ | |||
message: '保存中...', | |||
duration: 0, | |||
}); | |||
if(this.form.id) | |||
{ | |||
updateOther(this.form).then((resp) => { | |||
this.$notify({ type: 'success', message: '保存成功' }); | |||
this.back(1500); | |||
}).finally(() => { | |||
loading.clear(); | |||
}); | |||
} | |||
else | |||
{ | |||
addOther(this.form).then((resp) => { | |||
this.$notify({ type: 'success', message: '新增成功' }); | |||
this.back(1500); | |||
}).finally(() => { | |||
loading.clear(); | |||
}); | |||
} | |||
}, | |||
}, | |||
computed: { | |||
isAdd() { | |||
return this.intent === 'add'; | |||
}, | |||
isEdit() { | |||
return this.intent === 'edit'; | |||
}, | |||
titlePreifx() { | |||
return this.intent === 'edit' ? '编辑' : '新增'; | |||
}, | |||
showTypeSelector() { | |||
return this.isAdd && !this.otherType; | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-button--primary{ | |||
background: url("../../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||
background-size: 100% 100%; | |||
border: none; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.list_main{ | |||
padding:25px; | |||
background: #ffffff; | |||
width: 94%; | |||
margin: 25px auto 0; | |||
border-radius: 15PX; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
} | |||
.titBox{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.tit{ | |||
font-size: 36px; | |||
font-weight: bold; | |||
} | |||
/deep/ .van-cell{ | |||
padding-left: 0!important; | |||
padding-right: 0!important; | |||
padding-bottom: 0!important; | |||
} | |||
/deep/ .van-field__label{ | |||
padding-left: 10PX; | |||
width: 8.2em; | |||
} | |||
/deep/ .van-cell--required::before{ | |||
left: 0; | |||
} | |||
} | |||
</style> |
@@ -0,0 +1,485 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main" | |||
:style="`background-image:url(${require('@/assets/images/sunVillage_info/list_head.png')})`" | |||
> | |||
<p class="title" @click="openTypeChooser">{{title}}</p> | |||
<div class="return_btn" @click="back"></div> | |||
<div class="add_btn" @click="add"></div> | |||
</div> | |||
<div class="record_main"> | |||
<div class="record_det"> | |||
<div class="year_l" @click="tabShow"><i :class="{'icon':true , 'zk':!showTab , 'ss':showTab } "></i>{{queryParams.openYear == '' ? '全部': queryParams.openYear}}<span class="unit">{{queryParams.openYear == '' ? '': '年'}}</span></div> | |||
<div class="total_r">共{{total}}条公开</div> | |||
</div> | |||
<div class="record_list" v-if="showTab"> | |||
<div :class="{'flex_block':true , 'current':queryParams.openYear == ''}" @click="tabClick('')">全部</div> | |||
<div v-for="(item,index) in yearList" :key="index" :class="{'flex_block':true , 'current':queryParams.openYear == item}" @click="tabClick(item)">{{item}}</div> | |||
</div> | |||
</div> | |||
<div class="list_main"> | |||
<paged-list | |||
ref="pagedList" | |||
:page-num.sync="queryParams.pageNum" | |||
:page-size.sync="queryParams.pageSize" | |||
:total.sync="total" | |||
:getListFunc="getListReq" | |||
:reload.sync="reload" | |||
@reload="dataList = []" | |||
get-when-created> | |||
<div class="item" v-for="(item,index) in dataList" :key="index" @click="viewItem(item.id)" > | |||
<div class="info"> | |||
<div class="title"> | |||
<p class="news_title">{{item.otherName}}</p> | |||
</div> | |||
<div class="time"> | |||
<div class="icon_time"></div> | |||
{{item.openAt}} | |||
</div> | |||
</div> | |||
<div class="operation"> | |||
<div class="opera_btn view" @click.stop="viewItem(item.id)"> | |||
<i class="icon "></i> | |||
</div> | |||
<div class="opera_btn edit" @click.stop="edit(item.id)"> | |||
<i class="icon "></i> | |||
</div> | |||
<div class="opera_btn delete" @click.stop="remove(item.id)"> | |||
<i class="icon"></i> | |||
</div> | |||
</div> | |||
</div> | |||
</paged-list> | |||
</div> | |||
<van-action-sheet | |||
v-model="showType" | |||
:actions="otherTypeOptions" | |||
cancel-text="取消" | |||
close-on-click-action | |||
@select="changeType" | |||
/> | |||
</div> | |||
</template> | |||
<script> | |||
import PagedList from "@/components/common/PagedList.vue"; | |||
import {Dialog, Toast} from "vant"; | |||
import {delOther, listOther} from "@/api/sunVillage_info/otherOpen"; | |||
import {getLoginBook} from "@/api/sunVillage_info/fixedAssets"; | |||
export default { | |||
name: "otherOpenList", | |||
components: {PagedList}, | |||
data() { | |||
return { | |||
dataList:[], | |||
total: 0, | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
orderByColumn:'openAt', | |||
isAsc:'desc', | |||
openYear:'', | |||
otherType: null, | |||
}, | |||
yearList: [], | |||
reload: false, | |||
showTab: false, | |||
otherTypeOptions: [], | |||
showType: false, | |||
}; | |||
}, | |||
created() { | |||
this.queryParams.otherType = this.$route.query.otherType || ''; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
let arr = []; | |||
arr.push({ | |||
dictValue: '', | |||
dictLabel: '综合公开', | |||
name: '全部', | |||
}); | |||
resp.data.forEach((x) => { | |||
x.name = x.dictLabel; | |||
arr.push(x); | |||
}); | |||
this.otherTypeOptions = arr; | |||
}); | |||
getLoginBook().then((resp) => { | |||
let startYear = new Date().getFullYear(); | |||
let thisYear = startYear; | |||
if(resp.data.startDay) | |||
{ | |||
startYear = parseInt(resp.data.startDay.substring(0, resp.data.startDay.indexOf('-'))) | |||
} | |||
for (let i = thisYear ; i >= startYear ; i--){ | |||
this.yearList.push('' + i); | |||
} | |||
}); | |||
}, | |||
methods: { | |||
getListReq(pageInfo) { | |||
return new Promise((resolve, reject) => { | |||
listOther(this.queryParams).then((response) => { | |||
response.rows.forEach((x) => this.dataList.push(x)); | |||
resolve(response); | |||
}); | |||
}); | |||
}, | |||
gotoViewItem(id) { | |||
let parms = { | |||
id: id, | |||
intent: 'view', | |||
}; | |||
if(this.queryParams.otherType) | |||
parms.otherType = this.queryParams.otherType; | |||
this.$router.push({ | |||
name: 'otherOpenDetail', | |||
query: parms, | |||
}).catch(() => {}); | |||
}, | |||
viewItem(id){ | |||
this.$router.replace(`/sunVillage_info/otherOpenIndex?otherType=${this.queryParams.otherType || ''}`, () => this.gotoViewItem(id), () => this.gotoViewItem(id) ); | |||
}, | |||
gotoAdd() { | |||
let parms = { | |||
intent: 'add', | |||
}; | |||
if(this.queryParams.otherType) | |||
parms.otherType = this.queryParams.otherType; | |||
this.$router.push({ | |||
name: 'otherOpenEdit', | |||
query: parms, | |||
}).catch(() => {}); | |||
}, | |||
add() { | |||
this.$router.replace(`/sunVillage_info/otherOpenIndex?otherType=${this.queryParams.otherType || ''}`, () => this.gotoAdd(), () => this.gotoAdd() ); | |||
}, | |||
gotoEdit(id) { | |||
let parms = { | |||
id: id, | |||
intent: 'edit', | |||
}; | |||
if(this.queryParams.otherType) | |||
parms.otherType = this.queryParams.otherType; | |||
this.$router.push({ | |||
name: 'otherOpenEdit', | |||
query: parms, | |||
}).catch(() => {}); | |||
}, | |||
edit(id) { | |||
this.$router.replace(`/sunVillage_info/otherOpenIndex?otherType=${this.queryParams.otherType || ''}`, () => this.gotoEdit(id), () => this.gotoEdit(id) ); | |||
}, | |||
remove(id) { | |||
Dialog.confirm({ | |||
title: '警告', | |||
message: '确认删除该项?', | |||
}) | |||
.then(() => { | |||
const loading = Toast.loading({ | |||
message: '删除中...', | |||
duration: 0, | |||
}); | |||
delOther(id).then((resp) => { | |||
this.$notify({ type: 'success', message: '删除成功' }); | |||
this.$refs.pagedList.getList(); | |||
}).finally(() => { | |||
loading.clear(); | |||
}); | |||
}) | |||
.catch(() => {}); | |||
}, | |||
back() { | |||
this.$router.replace('/sunVillage_info/otherOpenIndex', () => this.$router.back(), () => this.$router.back() ); | |||
}, | |||
tabClick(year){ | |||
this.queryParams.openYear = year; | |||
this.reload = true; | |||
}, | |||
tabShow(){ | |||
this.showTab = !this.showTab; | |||
}, | |||
openTypeChooser() { | |||
this.showType = true; | |||
}, | |||
changeType(action, index) { | |||
this.queryParams.otherType = action.dictValue; | |||
this.reload = true; | |||
}, | |||
}, | |||
computed: { | |||
title() { | |||
if(this.queryParams.otherType) | |||
{ | |||
const dict = this.otherTypeOptions.find((x) => x.dictValue == this.queryParams.otherType); | |||
if(dict) | |||
return dict.dictLabel; | |||
} | |||
return '综合公开'; | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
.title { | |||
} | |||
.title::before { | |||
display: inline-block; | |||
width: 24px; | |||
height: 24px; | |||
content: ''; | |||
background-image: url('../../../assets/images/icon/index_header_focus.png'); | |||
background-repeat: no-repeat; | |||
background-size: contain; | |||
margin-right: 0.2rem; | |||
transform: rotate( | |||
180deg | |||
); | |||
} | |||
.title::after { | |||
width: 0.32rem; | |||
height: 0.32rem; | |||
display: inline-block; | |||
content: ''; | |||
background-image: url('../../../assets/images/icon/index_header_focus.png'); | |||
background-repeat: no-repeat; | |||
background-size: contain; | |||
margin-left: 0.2rem; | |||
} | |||
} | |||
.record_main{ | |||
padding:30px 22px; | |||
.record_det{ | |||
height: 38px; | |||
line-height: 38px; | |||
display: flex; | |||
justify-content:space-between; | |||
.year_l{ | |||
font-size: 30px; | |||
display: flex; | |||
align-items: center; | |||
color: #858585; | |||
.unit{ | |||
padding-left: 5px; | |||
} | |||
.icon{ | |||
width: 23px; | |||
height: 12px; | |||
display: block; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_1.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-bottom: 4px; | |||
margin-right: 8px; | |||
&.zk { | |||
transform: rotate(0deg) | |||
} | |||
&.ss{ | |||
transform: rotate(180deg) | |||
} | |||
} | |||
} | |||
.total_r{ | |||
font-size: 26px; | |||
letter-spacing: 2px; | |||
} | |||
} | |||
.record_list{ | |||
display: flex; | |||
flex-flow: wrap; | |||
margin-top: 12PX; | |||
.flex_block{ | |||
font-size: 30px; | |||
color: #878787; | |||
padding-right: 30px; | |||
&.current{ | |||
color: #4199fe; | |||
font-weight: bold; | |||
} | |||
} | |||
} | |||
} | |||
.list_main{ | |||
padding:15px 22px; | |||
.item{ | |||
height: 140px; | |||
border-radius: 30px; | |||
background: #fff; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
padding:25px 32px; | |||
display: flex; | |||
margin-bottom: 20px; | |||
justify-content: space-between; | |||
.info{ | |||
.title{ | |||
display: flex; | |||
font-size: 32px; | |||
align-items: center; | |||
height: 58px; | |||
.icon_box{ | |||
width: 34px; | |||
display: block; | |||
height: 30px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_2.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-right: 10px; | |||
flex-shrink: 0; | |||
} | |||
.news_title{ | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 1; | |||
word-break: break-all; | |||
overflow: hidden; | |||
} | |||
.tips_mark{ | |||
width: 34px; | |||
height: 34px; | |||
background: #fa0c0c; | |||
border-radius: 8px; | |||
font-size: 24px; | |||
color: #fff; | |||
text-align: center; | |||
line-height: 34px; | |||
margin-left: 10px; | |||
flex-shrink: 0; | |||
} | |||
} | |||
.time{ | |||
font-size: 24px; | |||
color: #858585; | |||
display: flex; | |||
align-items: center; | |||
height: 30px; | |||
margin-top: 6px; | |||
.icon_time{ | |||
width: 25px; | |||
height: 25px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_4.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-right: 10px; | |||
} | |||
} | |||
} | |||
.operation{ | |||
display: flex; | |||
align-items: center; | |||
justify-content: right; | |||
text-align: right; | |||
.opera_btn{ | |||
width: 52px; | |||
height: 52px; | |||
border-radius: 50%; | |||
display: flex; | |||
align-items: center; | |||
justify-content:center; | |||
&.delete{ | |||
background:#df0707; | |||
margin-left: 10PX; | |||
.icon{ | |||
width: 22px; | |||
height: 29px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_7.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.edit{ | |||
background: #79cf13; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 26px; | |||
height: 25px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_6.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.view{ | |||
background: #3494ff; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 29px; | |||
height: 21px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_3.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.list{ | |||
background: #79cf13; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 29px; | |||
height: 21px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_10.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.bottom_tips{ | |||
font-size: 24px; | |||
color: #a7a6a6; | |||
text-align: center; | |||
margin-top: 32px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_8.png') center center no-repeat; | |||
background-size: 260px 2px; | |||
.xs{ | |||
padding:0 8px; | |||
background: #e9e9e9; | |||
} | |||
} | |||
} | |||
.top_head_title{ | |||
font-size: 16PX; | |||
text-align: center; | |||
padding: 15PX 0; | |||
} | |||
</style> |
@@ -0,0 +1,187 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main" | |||
:style="`background-image:url(${require('@/assets/images/sunVillage_info/list_head_red.png')})`"> | |||
{{title}} | |||
<div class="return_btn" @click="back"></div> | |||
</div> | |||
<van-form ref="formData" :readonly="true"> | |||
<div class="list_main"> | |||
<van-field name="otherName" :value="form.otherName" label="公开名称" input-align="right" :border="false" /> | |||
<van-field name="openAt" :value="form.openAt" label="公开时间" input-align="right" :border="false" /> | |||
<van-field name="openContent" label="公开内容" input-align="right" :border="false" /> | |||
<div class="open-content" v-html="form.openContent"></div> | |||
<van-field | |||
name="openPic" | |||
label="公开图片" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic" :value="form.openPic" multiple :deletable="false" :show-upload="false"/> | |||
<van-field | |||
name="openFile" | |||
label="公开文件" | |||
input-align="right" | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openFile" :value="form.openFile" multiple :deletable="false" :show-upload="false"/> | |||
<van-field name="remake" :value="form.remark" label="备注" input-align="left" :border="false"/> | |||
</div> | |||
</van-form> | |||
</div> | |||
</template> | |||
<script> | |||
import CommonUpload from "@/components/form/CommonUpload.vue"; | |||
import { otherOpenDetail} from "@/api/sunVillage_info/otherOpen"; | |||
import Cookies from "js-cookie"; | |||
export default { | |||
name: "otherOpenVisitDetail", | |||
components: {CommonUpload}, | |||
data() { | |||
return { | |||
form: { | |||
id: null, | |||
bookId: null, | |||
deptId: null, | |||
deptName: null, | |||
otherName: null, | |||
otherType: '1', | |||
openYear: null, | |||
openAt: null, | |||
openContent: null, | |||
openFile: null, | |||
openPic: null, | |||
remark: null, | |||
createBy: null, | |||
createTime: null, | |||
updateBy: null, | |||
updateTime: null, | |||
}, | |||
id:'', | |||
title: '综合公开', | |||
bookId: null, | |||
}; | |||
}, | |||
created() { | |||
this.bookId = Cookies.get('bookId'); | |||
if(!this.bookId) | |||
{ | |||
this.back(); | |||
return; | |||
} | |||
this.id = this.$route.query.id; | |||
this.getDetail(); | |||
}, | |||
methods: { | |||
getDetail() { | |||
if(!this.id) | |||
{ | |||
this.back(); | |||
return; | |||
} | |||
otherOpenDetail(this.id).then((resp) => { | |||
this.form = resp.data; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||
if(dict) | |||
this.title = dict.dictLabel; | |||
}); | |||
}); | |||
}, | |||
back() { | |||
this.$router.back(); | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
/deep/ .van-button--primary{ | |||
background: url("../../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||
background-size: 100% 100%; | |||
border: none; | |||
} | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main { | |||
height: 116px; | |||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn { | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn { | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
} | |||
.list_main{ | |||
padding:25px; | |||
background: #ffffff; | |||
width: 94%; | |||
margin: 25px auto 0; | |||
border-radius: 15PX; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
} | |||
.titBox{ | |||
display: flex; | |||
align-items: center; | |||
} | |||
.tit{ | |||
font-size: 36px; | |||
font-weight: bold; | |||
} | |||
/deep/ .van-cell{ | |||
padding-left: 0!important; | |||
padding-right: 0!important; | |||
padding-bottom: 0!important; | |||
} | |||
/deep/ .van-field__label{ | |||
padding-left: 10PX; | |||
width: 8.2em; | |||
} | |||
/deep/ .van-cell--required::before{ | |||
left: 0; | |||
} | |||
} | |||
.open-content { | |||
padding: .2rem .3rem; | |||
max-height: 8rem; | |||
} | |||
</style> |
@@ -0,0 +1,441 @@ | |||
<template> | |||
<div class="home_wrapper"> | |||
<div class="header_main" | |||
:style="`background-image:url(${require('@/assets/images/sunVillage_info/list_head_red.png')})`" | |||
> | |||
<p class="title" @click="openTypeChooser">{{title}}</p> | |||
<div class="return_btn" @click="back"></div> | |||
</div> | |||
<div class="record_main"> | |||
<div class="record_det"> | |||
<div class="year_l" @click="tabShow"><i :class="{'icon':true , 'zk':!showTab , 'ss':showTab } "></i>{{queryParams.openYear == '' ? '全部': queryParams.openYear}}<span class="unit">{{queryParams.openYear == '' ? '': '年'}}</span></div> | |||
<div class="total_r">共{{total}}条公开</div> | |||
</div> | |||
<div class="record_list" v-if="showTab"> | |||
<div :class="{'flex_block':true , 'current':queryParams.openYear == ''}" @click="tabClick('')">全部</div> | |||
<div v-for="(item,index) in yearList" :key="index" :class="{'flex_block':true , 'current':queryParams.openYear == item}" @click="tabClick(item)">{{item}}</div> | |||
</div> | |||
</div> | |||
<div class="list_main"> | |||
<paged-list | |||
ref="pagedList" | |||
:page-num.sync="queryParams.pageNum" | |||
:page-size.sync="queryParams.pageSize" | |||
:total.sync="total" | |||
:getListFunc="getListReq" | |||
:reload.sync="reload" | |||
@reload="dataList = []" | |||
get-when-created> | |||
<div class="item" v-for="(item,index) in dataList" :key="index" @click="viewItem(item.id)" > | |||
<div class="info"> | |||
<div class="title"> | |||
<p class="news_title">{{item.otherName}}</p> | |||
</div> | |||
<div class="time"> | |||
<div class="icon_time"></div> | |||
{{item.openAt}} | |||
</div> | |||
</div> | |||
<div class="operation"> | |||
<div class="opera_btn view" @click.stop="viewItem(item.id)"> | |||
<i class="icon "></i> | |||
</div> | |||
</div> | |||
</div> | |||
</paged-list> | |||
</div> | |||
<van-action-sheet | |||
v-model="showType" | |||
:actions="otherTypeOptions" | |||
cancel-text="取消" | |||
close-on-click-action | |||
@select="changeType" | |||
/> | |||
</div> | |||
</template> | |||
<script> | |||
import PagedList from "@/components/common/PagedList.vue"; | |||
import {Dialog, Toast} from "vant"; | |||
import { otherOpenList} from "@/api/sunVillage_info/otherOpen"; | |||
import {bookInfo, } from "@/api/sunVillage_info/fixedAssets"; | |||
import Cookies from "js-cookie"; | |||
export default { | |||
name: "otherOpenVisitList", | |||
components: {PagedList}, | |||
data() { | |||
return { | |||
dataList:[], | |||
total: 0, | |||
queryParams:{ | |||
pageNum:1, | |||
pageSize:10, | |||
orderByColumn:'openAt', | |||
isAsc:'desc', | |||
openYear:'', | |||
otherType: null, | |||
bookId: null, | |||
deptId: null, | |||
}, | |||
yearList: [], | |||
reload: false, | |||
showTab: false, | |||
otherTypeOptions: [], | |||
showType: false, | |||
}; | |||
}, | |||
created() { | |||
this.queryParams.bookId = Cookies.get('bookId'); | |||
this.queryParams.deptId = Cookies.get('deptId'); | |||
if(!this.queryParams.bookId) | |||
{ | |||
this.back(); | |||
return; | |||
} | |||
this.queryParams.otherType = this.$route.query.otherType || ''; | |||
this.getDicts('other_gk_type').then((resp) => { | |||
let arr = []; | |||
arr.push({ | |||
dictValue: '', | |||
dictLabel: '综合公开', | |||
name: '全部', | |||
}); | |||
resp.data.forEach((x) => { | |||
x.name = x.dictLabel; | |||
arr.push(x); | |||
}); | |||
this.otherTypeOptions = arr; | |||
}); | |||
bookInfo(this.queryParams.bookId).then((resp) => { | |||
let startYear = new Date().getFullYear(); | |||
let thisYear = startYear; | |||
if(resp.data.startDay) | |||
{ | |||
startYear = parseInt(resp.data.startDay.substring(0, resp.data.startDay.indexOf('-'))) | |||
} | |||
for (let i = thisYear ; i >= startYear ; i--){ | |||
this.yearList.push('' + i); | |||
} | |||
}); | |||
}, | |||
methods: { | |||
getListReq(pageInfo) { | |||
return new Promise((resolve, reject) => { | |||
otherOpenList(this.queryParams).then((response) => { | |||
response.rows.forEach((x) => this.dataList.push(x)); | |||
resolve(response); | |||
}); | |||
}); | |||
}, | |||
gotoViewItem(id) { | |||
let parms = { | |||
id: id, | |||
intent: 'view', | |||
}; | |||
if(this.queryParams.otherType) | |||
parms.otherType = this.queryParams.otherType; | |||
this.$router.push({ | |||
name: 'otherOpenVisitDetail', | |||
query: parms, | |||
}).catch(() => {}); | |||
}, | |||
viewItem(id){ | |||
this.$router.replace(`/sunVillage_info/otherOpenVisitIndex?otherType=${this.queryParams.otherType || ''}`, () => this.gotoViewItem(id), () => this.gotoViewItem(id) ); | |||
}, | |||
back() { | |||
this.$router.replace('/sunVillage_info/otherOpenVisitIndex', () => this.$router.back(), () => this.$router.back() ); | |||
}, | |||
tabClick(year){ | |||
this.queryParams.openYear = year; | |||
this.reload = true; | |||
}, | |||
tabShow(){ | |||
this.showTab = !this.showTab; | |||
}, | |||
openTypeChooser() { | |||
this.showType = true; | |||
}, | |||
changeType(action, index) { | |||
this.queryParams.otherType = action.dictValue; | |||
this.reload = true; | |||
}, | |||
}, | |||
computed: { | |||
title() { | |||
if(this.queryParams.otherType) | |||
{ | |||
const dict = this.otherTypeOptions.find((x) => x.dictValue == this.queryParams.otherType); | |||
if(dict) | |||
return dict.dictLabel; | |||
} | |||
return '综合公开'; | |||
}, | |||
}, | |||
} | |||
</script> | |||
<style scoped lang="scss"> | |||
.home_wrapper{ | |||
background: #e9e9e9; | |||
min-height: 100vh; | |||
width: 100vw; | |||
.header_main{ | |||
height: 116px; | |||
background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||
background-size: 100% 100%; | |||
position: fixed; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
font-size: 36px; | |||
line-height: 116px; | |||
text-align: center; | |||
color: #fff; | |||
position: relative; | |||
.return_btn{ | |||
width: 24px; | |||
height: 43.2px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||
background-size: 20px 36px; | |||
position: absolute; | |||
left: 38px; | |||
top: 36px; | |||
} | |||
.add_btn{ | |||
width: 56.4px; | |||
height: 40.8px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||
background-size: 47px 34px; | |||
position: absolute; | |||
right: 38px; | |||
top: 36px; | |||
} | |||
.title { | |||
} | |||
.title::before { | |||
display: inline-block; | |||
width: 24px; | |||
height: 24px; | |||
content: ''; | |||
background-image: url('../../../assets/images/icon/index_header_focus.png'); | |||
background-repeat: no-repeat; | |||
background-size: contain; | |||
margin-right: 0.2rem; | |||
transform: rotate( | |||
180deg | |||
); | |||
} | |||
.title::after { | |||
width: 0.32rem; | |||
height: 0.32rem; | |||
display: inline-block; | |||
content: ''; | |||
background-image: url('../../../assets/images/icon/index_header_focus.png'); | |||
background-repeat: no-repeat; | |||
background-size: contain; | |||
margin-left: 0.2rem; | |||
} | |||
} | |||
.record_main{ | |||
padding:30px 22px; | |||
.record_det{ | |||
height: 38px; | |||
line-height: 38px; | |||
display: flex; | |||
justify-content:space-between; | |||
.year_l{ | |||
font-size: 30px; | |||
display: flex; | |||
align-items: center; | |||
color: #858585; | |||
.unit{ | |||
padding-left: 5px; | |||
} | |||
.icon{ | |||
width: 23px; | |||
height: 12px; | |||
display: block; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_1.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-bottom: 4px; | |||
margin-right: 8px; | |||
&.zk { | |||
transform: rotate(0deg) | |||
} | |||
&.ss{ | |||
transform: rotate(180deg) | |||
} | |||
} | |||
} | |||
.total_r{ | |||
font-size: 26px; | |||
letter-spacing: 2px; | |||
} | |||
} | |||
.record_list{ | |||
display: flex; | |||
flex-flow: wrap; | |||
margin-top: 12PX; | |||
.flex_block{ | |||
font-size: 30px; | |||
color: #878787; | |||
padding-right: 30px; | |||
&.current{ | |||
color: #4199fe; | |||
font-weight: bold; | |||
} | |||
} | |||
} | |||
} | |||
.list_main{ | |||
padding:15px 22px; | |||
.item{ | |||
height: 140px; | |||
border-radius: 30px; | |||
background: #fff; | |||
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||
padding:25px 32px; | |||
display: flex; | |||
margin-bottom: 20px; | |||
justify-content: space-between; | |||
.info{ | |||
.title{ | |||
display: flex; | |||
font-size: 32px; | |||
align-items: center; | |||
height: 58px; | |||
.icon_box{ | |||
width: 34px; | |||
display: block; | |||
height: 30px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_2.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-right: 10px; | |||
flex-shrink: 0; | |||
} | |||
.news_title{ | |||
display: -webkit-box; | |||
-webkit-box-orient: vertical; | |||
-webkit-line-clamp: 1; | |||
word-break: break-all; | |||
overflow: hidden; | |||
} | |||
.tips_mark{ | |||
width: 34px; | |||
height: 34px; | |||
background: #fa0c0c; | |||
border-radius: 8px; | |||
font-size: 24px; | |||
color: #fff; | |||
text-align: center; | |||
line-height: 34px; | |||
margin-left: 10px; | |||
flex-shrink: 0; | |||
} | |||
} | |||
.time{ | |||
font-size: 24px; | |||
color: #858585; | |||
display: flex; | |||
align-items: center; | |||
height: 30px; | |||
margin-top: 6px; | |||
.icon_time{ | |||
width: 25px; | |||
height: 25px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_4.png') no-repeat; | |||
background-size: 100% 100%; | |||
margin-right: 10px; | |||
} | |||
} | |||
} | |||
.operation{ | |||
display: flex; | |||
align-items: center; | |||
justify-content: right; | |||
text-align: right; | |||
.opera_btn{ | |||
width: 52px; | |||
height: 52px; | |||
border-radius: 50%; | |||
display: flex; | |||
align-items: center; | |||
justify-content:center; | |||
&.delete{ | |||
background:#df0707; | |||
margin-left: 10PX; | |||
.icon{ | |||
width: 22px; | |||
height: 29px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_7.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.edit{ | |||
background: #79cf13; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 26px; | |||
height: 25px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_6.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.view{ | |||
background: #3494ff; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 29px; | |||
height: 21px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_3.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
&.list{ | |||
background: #79cf13; | |||
margin-left: 10PX; | |||
.icon { | |||
width: 29px; | |||
height: 21px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_10.png') no-repeat; | |||
background-size: 100% 100%; | |||
display: block; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
} | |||
.bottom_tips{ | |||
font-size: 24px; | |||
color: #a7a6a6; | |||
text-align: center; | |||
margin-top: 32px; | |||
background: url('../../../assets/images/sunVillage_info/list_icon_8.png') center center no-repeat; | |||
background-size: 260px 2px; | |||
.xs{ | |||
padding:0 8px; | |||
background: #e9e9e9; | |||
} | |||
} | |||
} | |||
.top_head_title{ | |||
font-size: 16PX; | |||
text-align: center; | |||
padding: 15PX 0; | |||
} | |||
</style> |
@@ -30,7 +30,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic1" v-model="form.openPic1" multiple/> | |||
<CommonUpload name="openPic1" v-model="form.openPic1" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic2" | |||
@@ -39,7 +39,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||
<CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||
<van-field | |||
name="openPic3" | |||
@@ -48,7 +48,7 @@ | |||
:border="false" | |||
> | |||
</van-field> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||
<CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||
<van-field name="remark" v-model="form.remark" label="备注" input-align="left" size="large" :maxlength="255" placeholder="请输入备注"/> | |||
@@ -69,7 +69,7 @@ | |||
import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | |||
import {Toast} from "vant"; | |||
export default { | |||
name: "registrationDetail", | |||
name: "registrationEdit", | |||
components: {FieldDatePicker, CommonUpload}, | |||
data() { | |||
return { | |||
@@ -256,7 +256,7 @@ | |||
<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/> | |||
</div> | |||
<div class="main_box" style="margin-bottom: 15px;" v-if="form.bankType==1||form.bankType==2||form.bankType==3||form.bankType==4"> | |||
<div class="main_box" style="margin-bottom: 15px;" v-if="form.bankType==1||form.bankType==2||form.bankType==3"> | |||
<van-cell title="收款账户类型" v-if="form.bankType==1"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange" > | |||
@@ -265,7 +265,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1242,7 +1242,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -902,7 +902,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -1939,7 +1939,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -232,7 +232,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1821,7 +1821,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
console.log(obj.bankType) | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
@@ -207,7 +207,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3 || this.form.bankType == 4"> | |||
<van-cell title="行内转账" v-if="this.form.bankType == 2 || this.form.bankType == 3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1014,7 +1014,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -60,7 +60,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -64,7 +64,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" | |||
input-align="right" label-width="auto"/> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" | |||
v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto"/> | |||
</div> | |||
@@ -58,7 +58,7 @@ | |||
<div class="main_box" style="margin-bottom: 15px;"> | |||
<van-field readonly label="收款账户类型" v-if="form.bankType==1" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==4" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
<van-field readonly label="行内转账" v-if="form.bankType==2||form.bankType==3" v-model="form.isPeers == 'Y' ? '是':'否'" input-align="right" label-width="auto" /> | |||
</div> | |||
@@ -275,7 +275,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1187,7 +1187,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
} else if (obj.bankType == 2 || obj.bankType == 4) { | |||
} else if (obj.bankType == 2 || obj.bankType == 3) { | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -2288,7 +2288,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -229,7 +229,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3||form.bankType==4" > | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3" > | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -1741,7 +1741,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==3||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
console.log(obj.bankType) | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
@@ -207,7 +207,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers" @change="accountTypeChange1"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -994,7 +994,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -174,7 +174,7 @@ | |||
</van-radio-group> | |||
</template> | |||
</van-cell> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==4"> | |||
<van-cell title="行内转账" v-if="form.bankType==2||form.bankType==3"> | |||
<template #right-icon> | |||
<van-radio-group direction="horizontal" v-model="form.isPeers"> | |||
<van-radio name="Y">是</van-radio> | |||
@@ -901,7 +901,7 @@ | |||
this.form.accountType = "1" | |||
this.form.isPeers = null | |||
this.accountTypeChange(); | |||
}else if(obj.bankType==2||obj.bankType==4){ | |||
}else if(obj.bankType==2||obj.bankType==3){ | |||
this.form.accountType = null | |||
this.form.isPeers = "Y" | |||
this.accountTypeChange1(); | |||
@@ -129,6 +129,7 @@ | |||
getListReq(pageInfo) { | |||
//console.log(pageInfo, this.queryParams.pageNum, this.queryParams.pageSize); | |||
return new Promise((resolve, reject) => { | |||
this.$set(this.queryParams, "deptId", this.$store.state.user.deptId); | |||
A_myTodoList(this.queryParams).then((response) => { | |||
//console.info(_this.taskList.length) | |||
response.rows.forEach(res => { | |||
@@ -83,6 +83,8 @@ | |||
queryParams: { | |||
pageNum: 1, | |||
pageSize: 10, | |||
systemType: null, | |||
deptId: null, | |||
}, | |||
activityBusinessTypeOptions:[], | |||
images:['../../../../static/images/yinnong/banner_02.jpg'], | |||
@@ -114,7 +116,8 @@ | |||
} | |||
}, | |||
getListReq(pageInfo) { | |||
//console.log(pageInfo, this.queryParams.pageNum, this.queryParams.pageSize); | |||
//console.log(pageInfo, this.queryParams.pageNum, this.queryParams.pageSize) | |||
this.$set(this.queryParams, "deptId", this.$store.state.user.deptId); | |||
return new Promise((resolve, reject) => { | |||
A_myDoneList(this.queryParams).then((response) => { | |||
//console.info(_this.taskList.length) | |||
@@ -25,7 +25,7 @@ | |||
<div class="flex_block"> | |||
<p>已办</p> | |||
<p>{{doneTotal}}</p> | |||
<p>未完成的待办审批事项</p> | |||
<p>已完成的待办审批事项</p> | |||
</div> | |||
</div> | |||