Quellcode durchsuchen

Merge remote-tracking branch 'origin/master'

wulanhaote
yangfuda vor 2 Jahren
Ursprung
Commit
5c682dfe5c
98 geänderte Dateien mit 38418 neuen und 161 gelöschten Zeilen
  1. BIN
      src/assets/images/sunVillage_info/index_title.png
  2. +1
    -1
      src/components/qrcode/Scaner.vue
  3. +7
    -2
      src/permission.js
  4. +554
    -0
      src/router/index.js
  5. +362
    -0
      src/views/agriculturalTrusteeship/index.vue
  6. +268
    -0
      src/views/agriculturalTrusteeship/insurance/insuranceList.vue
  7. +132
    -0
      src/views/agriculturalTrusteeship/insurance/insuranceProjectDetail.vue
  8. +188
    -0
      src/views/agriculturalTrusteeship/insurance/insuranceProjectList.vue
  9. +268
    -0
      src/views/agriculturalTrusteeship/society/societyList.vue
  10. +6
    -0
      src/views/lawEnforcement/index_new.vue
  11. +8
    -13
      src/views/lawEnforcement/login.vue
  12. +1
    -1
      src/views/lawEnforcement/monitor/monitor.vue
  13. +82
    -29
      src/views/lawEnforcement/retrospect/retrospectDetail.vue
  14. +20
    -15
      src/views/lawEnforcement/retrospect/scan.vue
  15. +147
    -0
      src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositAdd.vue
  16. +175
    -0
      src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositList.vue
  17. +151
    -0
      src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositModify.vue
  18. +276
    -0
      src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionAdd.vue
  19. +138
    -0
      src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionDetail.vue
  20. +177
    -0
      src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionList.vue
  21. +261
    -0
      src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionModify.vue
  22. +514
    -0
      src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountAdd.vue
  23. +172
    -0
      src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountDetail.vue
  24. +185
    -0
      src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountList.vue
  25. +570
    -0
      src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountModify.vue
  26. +1998
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd.vue
  27. +1063
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd10.vue
  28. +2342
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd11.vue
  29. +2390
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd12.vue
  30. +1931
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd2.vue
  31. +952
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd3.vue
  32. +1141
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd4.vue
  33. +954
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd5.vue
  34. +426
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval.vue
  35. +422
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval10.vue
  36. +444
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval11.vue
  37. +508
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval12.vue
  38. +357
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail.vue
  39. +323
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail10.vue
  40. +353
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail11.vue
  41. +416
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail12.vue
  42. +354
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail2.vue
  43. +459
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail3.vue
  44. +316
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail4.vue
  45. +430
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail5.vue
  46. +219
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList.vue
  47. +178
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList10.vue
  48. +215
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList11.vue
  49. +214
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList12.vue
  50. +217
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList2.vue
  51. +176
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList3.vue
  52. +176
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList4.vue
  53. +176
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList5.vue
  54. +1942
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify.vue
  55. +1060
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify10.vue
  56. +2348
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify11.vue
  57. +2402
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify12.vue
  58. +1916
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify2.vue
  59. +943
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify3.vue
  60. +1131
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify4.vue
  61. +948
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify5.vue
  62. +223
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess.vue
  63. +228
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess2.vue
  64. +128
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess3.vue
  65. +274
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd.vue
  66. +274
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd2.vue
  67. +276
    -0
      src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionApprovalAdd.vue
  68. +104
    -8
      src/views/sunVillage_info/index.vue
  69. +157
    -0
      src/views/yinnong/doneCompleted/completed.vue
  70. +157
    -0
      src/views/yinnong/doneCompleted/done.vue
  71. +20
    -20
      src/views/yinnong/my.vue
  72. +13
    -13
      src/views/yinnong/workbench.vue
  73. +3
    -1
      src/views/yinnongIndex.vue
  74. +58
    -58
      src/views/yinnongLogin.vue
  75. BIN
      static/images/agriculturalTrusteeship/address.png
  76. BIN
      static/images/agriculturalTrusteeship/index/address_icon.png
  77. BIN
      static/images/agriculturalTrusteeship/index/header.png
  78. BIN
      static/images/agriculturalTrusteeship/index/index_btn_icon_01.png
  79. BIN
      static/images/agriculturalTrusteeship/index/index_btn_icon_02.png
  80. BIN
      static/images/agriculturalTrusteeship/index/name_icon.png
  81. BIN
      static/images/agriculturalTrusteeship/index/nav_01.png
  82. BIN
      static/images/agriculturalTrusteeship/index/nav_02.png
  83. BIN
      static/images/agriculturalTrusteeship/index/nav_03.png
  84. BIN
      static/images/agriculturalTrusteeship/index/nav_04.png
  85. BIN
      static/images/agriculturalTrusteeship/index/notice_icon.png
  86. BIN
      static/images/agriculturalTrusteeship/index/search_icon_01.png
  87. BIN
      static/images/agriculturalTrusteeship/index/search_icon_02.png
  88. BIN
      static/images/agriculturalTrusteeship/index/test.png
  89. BIN
      static/images/agriculturalTrusteeship/insurance/insurance_go.png
  90. BIN
      static/images/agriculturalTrusteeship/insurance/insurance_list_head.png
  91. BIN
      static/images/agriculturalTrusteeship/insurance/insurance_list_iphone.png
  92. BIN
      static/images/agriculturalTrusteeship/insurance/insurance_list_name.png
  93. BIN
      static/images/agriculturalTrusteeship/insurance/insurance_list_project.png
  94. BIN
      static/images/agriculturalTrusteeship/return.png
  95. BIN
      static/images/agriculturalTrusteeship/share.png
  96. BIN
      static/images/agriculturalTrusteeship/test2.png
  97. BIN
      static/images/lawEnforcement/icon/close.png
  98. BIN
      static/images/onlineHome/yinnongLogo.jpg

BIN
src/assets/images/sunVillage_info/index_title.png Datei anzeigen

Vorher Nachher
Breite: 521  |  Höhe: 52  |  Größe: 5.0 KiB Breite: 457  |  Höhe: 51  |  Größe: 4.5 KiB

+ 1
- 1
src/components/qrcode/Scaner.vue Datei anzeigen

@@ -254,7 +254,7 @@ export default {
display: inline-block;
height: 24PX;
width: 24PX;
/*background: url('../assets/close.png') no-repeat center;*/
background: url('../../../static/images/lawEnforcement/icon/close.png') no-repeat center;
background-size: auto 100%;
position: absolute;
right: 8PX;


+ 7
- 2
src/permission.js Datei anzeigen

@@ -136,14 +136,19 @@ const whiteList = [
'/newBusinessEntity/conter', //底部组件
'/newBusinessEntity/newsDetails', //新闻详情
'/newBusinessEntity/listBody', //主体名录
'/newBusinessEntity/map' //地图
'/newBusinessEntity/map', //地图

//农业大托管
'/agriculturalTrusteeship/index', //首页
'/agriculturalTrusteeship/insuranceList',//保险列表
'/agriculturalTrusteeship/insuranceProjectList',//保险产品列表
'/agriculturalTrusteeship/insuranceProjectDetail',//保险产品详情

]

router.beforeEach((to, from, next) => {
NProgress.start()
if (getToken()) {
console.info(to)
/* has token*/
if (to.path === '/login') {
next({ path: '/' })


+ 554
- 0
src/router/index.js Datei anzeigen

@@ -1852,6 +1852,24 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/yinnong/done'], resolve)
},
{
path: '/yinnong/doneCompleted/done',
name: 'yinnongDoneCompletedDone',
meta: {
title: '我的已办',
hidden: true,
},
component: (resolve) => require(['@/views/yinnong/doneCompleted/done'], resolve)
},
{
path: '/yinnong/doneCompleted/completed',
name: 'yinnongDoneCompletedCompleted',
meta: {
title: '我的待办',
hidden: true,
},
component: (resolve) => require(['@/views/yinnong/doneCompleted/completed'], resolve)
},
{
path: '/yinnong/advice',
name: 'yinnongAdvice',
@@ -3690,6 +3708,7 @@ export const constantRoutes = [
meta: {
title: '种子扫描',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/lawEnforcement/retrospect/retrospectDetail'], resolve)
},
@@ -3981,6 +4000,541 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/newBusinessEntity/map'], resolve)
},
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
//<----------------------------------财务公开_银农路由---------------------------------->
{
path: '/sunVillage_info/approvalList',
name: 'sunVillageApprovalList',
meta: {
title: '银行卡转账列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList'], resolve)
},
{
path: '/sunVillage_info/approvalList2',
name: 'sunVillageApprovalList2',
meta: {
title: '信用卡还款列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList2'], resolve)
},
{
path: '/sunVillage_info/approvalList3',
name: 'sunVillageApprovalList3',
meta: {
title: '虚拟挂账列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList3'], resolve)
},
{
path: '/sunVillage_info/approvalList4',
name: 'sunVillageApprovalList4',
meta: {
title: '代管转账列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList4'], resolve)
},
{
path: '/sunVillage_info/approvalList5',
name: 'sunVillageApprovalList5',
meta: {
title: '母子转账列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList5'], resolve)
},
{
path: '/sunVillage_info/approvalList10',
name: 'sunVillageApprovalList10',
meta: {
title: '现金提现列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList10'], resolve)
},
{
path: '/sunVillage_info/approvalList11',
name: 'sunVillageApprovalList11',
meta: {
title: '备付金支出列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList11'], resolve)
},
{
path: '/sunVillage_info/approvalList12',
name: 'sunVillageApprovalList12',
meta: {
title: '汇票支出列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList12'], resolve)
},
{
path: '/sunVillage_info/approvalDetail',
name: 'sunVillageApprovalDetail',
meta: {
title: '银农银行卡转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail'], resolve)
},
{
path: '/sunVillage_info/approvalDetail2',
name: 'sunVillageApprovalDetail2',
meta: {
title: '银农信用卡还款申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail2'], resolve)
},
{
path: '/sunVillage_info/approvalDetail3',
name: 'sunVillageApprovalDetail3',
meta: {
title: '银农虚拟挂账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail3'], resolve)
},
{
path: '/sunVillage_info/approvalDetail4',
name: 'sunVillageApprovalDetail4',
meta: {
title: '银农代管转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail4'], resolve)
},
{
path: '/sunVillage_info/approvalDetail5',
name: 'sunVillageApprovalDetail5',
meta: {
title: '银农母子转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail5'], resolve)
},
{
path: '/sunVillage_info/approvalDetail10',
name: 'sunVillageApprovalDetail10',
meta: {
title: '银农现金提现申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail10'], resolve)
},
{
path: '/sunVillage_info/approvalDetail11',
name: 'sunVillageApprovalDetail11',
meta: {
title: '银农备付金支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail11'], resolve)
},
{
path: '/sunVillage_info/approvalDetail12',
name: 'sunVillageApprovalDetail12',
meta: {
title: '银农汇票支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail12'], resolve)
},
{
path: '/sunVillage_info/approvalAdd',
name: 'sunVillageApprovalAdd',
meta: {
title: '添加银行卡转账申请',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd'], resolve)
},
{
path: '/sunVillage_info/approvalAdd2',
name: 'sunVillageApprovalAdd2',
meta: {
title: '添加信用卡还款申请',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd2'], resolve)
},
{
path: '/sunVillage_info/approvalAdd3',
name: 'sunVillageApprovalAdd3',
meta: {
title: '添加虚拟挂账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd3'], resolve)
},
{
path: '/sunVillage_info/approvalAdd4',
name: 'sunVillageApprovalAdd4',
meta: {
title: '添加代管转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd4'], resolve)
},
{
path: '/sunVillage_info/approvalAdd5',
name: 'sunVillageApprovalAdd5',
meta: {
title: '添加母子转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd5'], resolve)
},
{
path: '/sunVillage_info/approvalAdd10',
name: 'sunVillageApprovalAdd10',
meta: {
title: '添加现金提现申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd10'], resolve)
},
{
path: '/sunVillage_info/approvalAdd11',
name: 'sunVillageApprovalAdd11',
meta: {
title: '添加备付金支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd11'], resolve)
},
{
path: '/sunVillage_info/approvalAdd12',
name: 'sunVillageApprovalAdd12',
meta: {
title: '添加汇票支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd12'], resolve)
},
{
path: '/sunVillage_info/approval/collectionAdd',
name: 'sunVillageApprovalCollectionAdd',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd'], resolve)
},
{
path: '/sunVillage_info/approval/collectionAdd2',
name: 'sunVillageApprovalCollectionAdd2',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd2'], resolve)
},
{
path: '/sunVillage_info/approval/collectionApprovalAdd',
name: 'sunVillageCollectionApprovalAdd',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/collectionApprovalAdd'], resolve)
},
{
path: '/sunVillage_info/approvalApproval',
name: 'sunVillageApprovalApproval',
meta: {
title: '付款审批',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval'], resolve)
},
{
path: '/sunVillage_info/approvalApproval10',
name: 'sunVillageApprovalApproval10',
meta: {
title: '付款审批',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval10'], resolve)
}, {
path: '/sunVillage_info/approvalApproval11',
name: 'sunVillageApprovalApproval11',
meta: {
title: '付款审批',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval11'], resolve)
},
{
path: '/sunVillage_info/approvalApproval12',
name: 'sunVillageApprovalApproval12',
meta: {
title: '付款审批',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval12'], resolve)
},

{
path: '/sunVillage_info/approvalModify',
name: 'sunVillageApprovalModify',
meta: {
title: '修改银行卡转账申请',
hidden: true,
keepAlive: true
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify'], resolve)
},
{
path: '/sunVillage_info/approvalModify2',
name: 'sunVillageApprovalModify2',
meta: {
title: '修改信用卡还款申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify2'], resolve)
},
{
path: '/sunVillage_info/approvalModify3',
name: 'sunVillageApprovalModify3',
meta: {
title: '修改虚拟挂账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify3'], resolve)
},
{
path: '/sunVillage_info/approvalModify4',
name: 'sunVillageApprovalModify4',
meta: {
title: '修改代管转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify4'], resolve)
},
{
path: '/sunVillage_info/approvalModify5',
name: 'sunVillageApprovalModify5',
meta: {
title: '修改母子转账申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify5'], resolve)
},
{
path: '/sunVillage_info/approvalModify10',
name: 'sunVillageApprovalModify10',
meta: {
title: '修改现金提现申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify10'], resolve)
},
{
path: '/sunVillage_info/approvalModify11',
name: 'sunVillageApprovalModify11',
meta: {
title: '修改备付金支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify11'], resolve)
},
{
path: '/sunVillage_info/approvalModify12',
name: 'sunVillageApprovalModify12',
meta: {
title: '修改汇票支出申请',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify12'], resolve)
},
{
path: '/sunVillage_info/approvalProcess',
name: 'sunVillageApprovalProcess',
meta: {
title: '付款申请流程',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess'], resolve)
},
{
path: '/sunVillage_info/approvalProcess2',
name: 'sunVillageApprovalProcess2',
meta: {
title: '付款申请流程',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess2'], resolve)
},
{
path: '/sunVillage_info/approvalProcess3',
name: 'sunVillageApprovalProcess3',
meta: {
title: '审批流程',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess3'], resolve)
},
{
path: '/sunVillage_info/collectionList',
name: 'sunVillageCollectionList',
meta: {
title: '银农收款账户列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/collectionAccount/collectionList'], resolve)
},
{
path: '/sunVillage_info/collectionAdd',
name: 'sunVillageCollectionAdd',
meta: {
title: '添加收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/collectionAccount/collectionAdd'], resolve)
},
{
path: '/sunVillage_info/collectionModify',
name: 'sunVillageCollectionModify',
meta: {
title: '修改收款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/collectionAccount/collectionModify'], resolve)
},
{
path: '/sunVillage_info/collectionDetail',
name: 'sunVillageCollectionDetail',
meta: {
title: '查看收款账户详情',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/collectionAccount/collectionDetail'], resolve)
},
{
path: '/sunVillage_info/paymentAccountList',
name: 'sunVillagePaymentAccountList',
meta: {
title: '查看付款账户列表',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountList'], resolve)
},
{
path: '/sunVillage_info/paymentAccountAdd',
name: 'sunVillagePaymentAccountAdd',
meta: {
title: '添加付款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountAdd'], resolve)
},
{
path: '/sunVillage_info/paymentAccountModify',
name: 'sunVillagePaymentAccountModify',
meta: {
title: '修改付款账户信息',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountModify'], resolve)
},
{
path: '/sunVillage_info/paymentAccountDetail',
name: 'sunVillagePaymentAccountDetail',
meta: {
title: '查看付款账户详情',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountDetail'], resolve)
},
{
path: '/sunVillage_info/bankOfDepositList',
name: 'sunVillageBankOfDepositList',
meta: {
title: '开户行',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositList'], resolve)
},
{
path: '/sunVillage_info/bankOfDepositAdd',
name: 'sunVillageBankOfDepositAdd',
meta: {
title: '添加开户行',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositAdd'], resolve)
},
{
path: '/sunVillage_info/bankOfDepositModify',
name: 'sunVillageBankOfDepositModify',
meta: {
title: '修改开户行',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositModify'], resolve)
},

//<--------------------------------------农业大托管-------------------------------------->
{
path: '/agriculturalTrusteeship/index',
name: 'agriculturalTrusteeshipIndex',
meta: {
title: '农业大托管',
hidden: true,
},
component: (resolve) => require(['@/views/agriculturalTrusteeship/index'], resolve)
},
{
path: '/agriculturalTrusteeship/insuranceList',
name: 'agriculturalTrusteeshipInsuranceList',
meta: {
title: '保险服务',
hidden: true,
},
component: (resolve) => require(['@/views/agriculturalTrusteeship/insurance/insuranceList'], resolve)
},
{
path: '/agriculturalTrusteeship/insuranceProjectList',
name: 'agriculturalTrusteeshipInsuranceProjectList',
meta: {
title: '保险服务',
hidden: true,
},
component: (resolve) => require(['@/views/agriculturalTrusteeship/insurance/insuranceProjectList'], resolve)
},
{
path: '/agriculturalTrusteeship/insuranceProjectDetail',
name: 'agriculturalTrusteeshipInsuranceProjectDetail',
meta: {
title: '保险服务',
hidden: true,
},
component: (resolve) => require(['@/views/agriculturalTrusteeship/insurance/insuranceProjectDetail'], resolve)
},
{
path: '/agriculturalTrusteeship/societyList',
name: 'agriculturalTrusteeshipSocietyList',
meta: {
title: '社会化服务',
hidden: true,
},
component: (resolve) => require(['@/views/agriculturalTrusteeship/society/societyList'], resolve)
},
];




+ 362
- 0
src/views/agriculturalTrusteeship/index.vue Datei anzeigen

@@ -0,0 +1,362 @@
<template>
<div class="home_wrapper">
<!-- 头部开始 -->
<div class="header">
<img src="../../../static/images/agriculturalTrusteeship/index/header.png">
<div class="header_box">
<p>点击登录</p>
<p>登录才能下单或发布产品哦</p>
</div>
</div>
<!-- 头部结束 -->

<!-- 导航开始 -->
<div class="nav">
<van-grid :column-num="4" :border="false">
<van-grid-item :to="{name:'agriculturalTrusteeshipSocietyList'}">
<img src="../../../static/images/agriculturalTrusteeship/index/nav_01.png"/>
<p>社会化</p>
</van-grid-item>
<van-grid-item :to="{name:'lawEnforcementCaseStatistics'}">
<img src="../../../static/images/agriculturalTrusteeship/index/nav_02.png"/>
<p>农担</p>
</van-grid-item>
<van-grid-item :to="{name:'lawEnforcementCaseDistributionMap'}">
<img src="../../../static/images/agriculturalTrusteeship/index/nav_03.png"/>
<p>贷款</p>
</van-grid-item>
<van-grid-item :to="{name:'agriculturalTrusteeshipInsuranceList'}">
<img src="../../../static/images/agriculturalTrusteeship/index/nav_04.png"/>
<p>保险</p>
</van-grid-item>
</van-grid>

<div class="nav_notice_box">
<van-notice-bar left-icon="../../../static/images/agriculturalTrusteeship/index/notice_icon.png" mode="link" :scrollable="false" background="#E2E9FD" color="#334281">
<van-swipe
vertical
class="notice-swipe"
:autoplay="3000"
:show-indicators="false"
>
<van-swipe-item>12.0版本上线啦!点击查看更改内容~</van-swipe-item>
<van-swipe-item>12.1版本上线啦!点击查看更改内容~</van-swipe-item>
<van-swipe-item>12.2版本上线啦!点击查看更改内容~</van-swipe-item>
</van-swipe>
</van-notice-bar>
</div>
</div>
<!-- 导航结束 -->

<!-- 内容开始 -->
<div class="main">
<div class="main_header">
<p>社会化服务产品</p>
<p>河东河西村</p>
</div>
<div class="search">
<img src="../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<div class="main_content">
<div class="main_content_left">
<van-sidebar v-model="activeKey">
<van-sidebar-item title="全套服务" />
<van-sidebar-item title="开垦" />
<van-sidebar-item title="除草" />
<van-sidebar-item title="播种" />
<van-sidebar-item title="灌溉" />
<van-sidebar-item title="开垦" />
<van-sidebar-item title="除草" />
<van-sidebar-item title="播种" />
<van-sidebar-item title="灌溉" />
<van-sidebar-item title="开垦" />
<van-sidebar-item title="除草" />
<van-sidebar-item title="播种" />
<van-sidebar-item title="灌溉" />
</van-sidebar>
</div>
<div class="main_content_right">
<div class="main_content_right_header">
<p class="main_content_right_header_tit">灌溉</p>
<van-tabs v-model="active" animated>
<van-tab title="评分排序"></van-tab>
<van-tab title="销量排序"></van-tab>
</van-tabs>
</div>
<div class="main_content_right_nav">
<p>服务</p>
<p>服务</p>
<p>服务</p>
<p>服务</p>
<p>服务</p>
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<!-- @load="onLoad"-->
<div class="main_content_right_list" v-for="item in 10" :key="item">
<img src="../../../static/images/agriculturalTrusteeship/index/test.png">
<div class="main_content_right_list_content">
<p class="tt">如果只有一行就空着啊啊啊啊啊啊啊啊啊啊啊啊</p>
<div class="tab">
<p>¥<span>66</span>.00/亩</p>
<p><span>销 600</span><span>分 4.7</span></p>
</div>
<p class="name">张三社会服务旗舰店</p>
</div>
</div>
</van-list>

</div>
</div>

</div>
<!-- 内容结束 -->

<img src="../../../static/images/agriculturalTrusteeship/index/index_btn_icon_01.png" class="pc"/>

</div>
</template>
<script>
import Cookies from "js-cookie";
export default {
name: "agriculturalTrusteeshipIndex",
data() {
return {
activeKey: 0,
active: 0,
loading: false,
finished: false,
};
},
created() {

},
methods: {

},
}
</script>
<style scoped lang="scss">
.home_wrapper{

}
/*头部*/
.header{
display: flex;
align-items: center;
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
padding: 4vh 4% 2vh;
.header_box{
margin-left: 4%;
p{
&:nth-child(1){
color: #ffffff;
font-size: .45rem;
}
&:nth-child(2){
color: #E5E5E5;
margin-top: .5vh;
}
}
}
}

/*导航栏目*/
.nav{
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
.van-grid{
border-top-left-radius: 25PX;
border-top-right-radius: 25PX;
overflow: hidden;
}
.nav_notice_box{
background: #ffffff;
padding:.5vh 0 1vh;
}
/deep/ .van-notice-bar{
width: 94%;
margin: 0 auto;
border-radius: 5PX;
.notice-swipe {
height: 40px;
line-height: 42px;
}
}
}

/*内容*/
.main{
background: #ffffff;
.main_header{
display: flex;
padding: 0 4% 1vh;
justify-content: space-between;
align-items: center;
p{
color: #334281;
&:nth-child(1){
font-size: .4rem;
}
&:nth-child(2){
font-size: .35rem;
background: url("../../../static/images/agriculturalTrusteeship/index/address_icon.png") no-repeat left center;
padding: 5PX 0 5PX 22PX;

}
}
}
.search{
display: flex;
justify-content: space-between;
align-items: center;
width: 92%;
margin: 0PX auto;
border: 1px solid #6E93F3;
padding: 1PX 1PX 1PX 12PX ;
border-radius: 50PX;
input{
flex: 1;
background: transparent;
margin-left: 10PX;
}
}
/deep/ .van-tabs--line .van-tabs__wrap{
border-radius: 100rem;
height: 25PX;
}
/deep/ .van-tab{
z-index: 1;
color: #8F8F8F;
padding: 5PX 10PX;
}
/deep/ .van-tab--active{
color: #334281;
}
/deep/ .van-tabs__nav{
background: #ECECEC;
}
/deep/ .van-tabs__nav--line{
padding: 0;
}
/deep/ .van-tabs__line{
background: #D6D9E6;
border-radius: 100rem;
z-index: 0;
width: 50%;
height: 100%;
bottom: 0;
}
.main_content{
display: flex;
width: 96%;
margin-top: 2vh;
height: 56.8vh;
overflow: hidden;
.van-sidebar-item{
text-align: center;
}
/deep/ .van-sidebar-item--select::before{
display: none;
}
.main_content_left{
border-top-right-radius: 15PX;
height: 100%;
overflow-y: scroll;
}
.main_content_right{
flex: 1;
padding-left: 4%;
height: 100%;
overflow-y: scroll;
.main_content_right_header{
display: flex;
justify-content: space-between;
align-items: center;
.main_content_right_header_tit{
font-size: .4rem;
color: #1A1D4A;
}
}
.main_content_right_nav{
display: flex;
justify-content: space-between;
margin-top: 2vh;
p{
padding: 5PX 10PX;
background: #F5F5F5;
color: #8F8F8F;
border-radius: 4PX;
}
}
.main_content_right_list{
display: flex;
margin-top: 2vh;
img{
border-radius: 15PX;
margin-right: 4%;
}
.main_content_right_list_content{
display: flex;
flex-direction:column;
justify-content: space-between;
.tt{
color: #333333;
font-size: .35rem;
}
.tab{
display: flex;
justify-content: space-between;
p{
&:nth-child(1){
flex: 1;
color: #FF5E00;
span{
font-size: .4rem;
}
}
&:nth-child(2){
flex: 1;
span{
width: 50%;
display: inline-block;
text-align: center;
padding: 2PX 2PX;
&:nth-child(1){
color: #497CE8;
background: #E2E9FD;
border-top-left-radius: 10PX;
}
&:nth-child(2){
color: #ffffff;
background-image: linear-gradient(to right , #5D87FA , #5FD5F5);
border-bottom-right-radius: 10PX;
}
}
}
}
}
.name{
color: #8F8F8F;
background: url("../../../static/images/agriculturalTrusteeship/index/name_icon.png") no-repeat left center;
padding-left: 14PX;
}
}
}
}
}
}

/*飘窗*/
.pc{
position: absolute;
bottom: 10vh;
right: 0;
}
</style>

+ 268
- 0
src/views/agriculturalTrusteeship/insurance/insuranceList.vue Datei anzeigen

@@ -0,0 +1,268 @@
<template>
<div class="home_wrapper">
<!-- 头部开始 -->
<div class="header">
<div class="header_left" @click="onClickLeft">
<img src="../../../../static/images/agriculturalTrusteeship/return.png">
<p>保险服务</p>
</div>
<p class="header_right">河东河西村</p>
</div>
<!-- 头部结束 -->

<!-- 内容开始 -->
<div class="main">
<van-tabs v-model="active" sticky animated>
<van-tab title="保险公司">
<div class="search">
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<div class="content" v-for="item in 10" :key="item" @click="$router.push({name:'agriculturalTrusteeshipInsuranceProjectList'})">
<p class="content_tt">张三李四合伙开公司有限公司</p>
<div class="content_con">
<div class="content_con_left">
<p>60个产品</p>
<p>林巧巧</p>
<p>18765332194</p>
</div>
<div class="content_con_right">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<img src="../../../../static/images/agriculturalTrusteeship/insurance/insurance_go.png">
</div>
</div>
</div>
</van-list>

</van-tab>
<van-tab title="保险产品">
<div class="search">
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<!-- @load="onLoad"-->
<div class="main_content_right_list" v-for="item in 10" :key="item">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<div class="main_content_right_list_content">
<p class="tt">如果只有一行就空着啊啊啊啊啊啊啊啊啊啊啊啊</p>
<!-- <div class="tab">-->
<!-- <p>¥<span>66</span>.00/亩</p>-->
<!-- <p><span>销 600</span><span>分 4.7</span></p>-->
<!-- </div>-->
<p class="name">张三社会服务旗舰店</p>
</div>
</div>
</van-list>

</van-tab>
</van-tabs>
</div>
<!-- 内容结束 -->

</div>
</template>
<script>
import Cookies from "js-cookie";
export default {
name: "agriculturalTrusteeshipInsuranceList",
data() {
return {
activeKey: 0,
active: 0,
loading: false,
finished: false,
};
},
created() {

},
methods: {

},
}
</script>
<style scoped lang="scss">
.home_wrapper{

}
/*头部*/
.header{
display: flex;
align-items: center;
justify-content: space-between;
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
padding: 2vh 4% 2vh;
.header_left{
display: flex;
align-items: center;
p{
font-size: .4rem;
color: #ffffff;
line-height: 1;
margin-left: 10PX;
}
}
.header_right{
font-size: .35rem;
background: #ffffff url("../../../../static/images/agriculturalTrusteeship/address.png") no-repeat 10PX center;
padding: 2PX 15PX 2PX 25PX;
border-radius: 50PX;
}
}

/* 内容 */
.main{
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
/deep/ .van-tabs__nav{
border-top-left-radius: 25PX;
border-top-right-radius: 25PX;
overflow: hidden;
}
/deep/ .van-tabs__line{
background: #334281!important;
}
/deep/ .van-tab--active{
color: #334281;
}
/deep/ .van-tabs__content{
background: #ffffff;
padding-top: 2vh;
}
.search{
display: flex;
justify-content: space-between;
align-items: center;
width: 92%;
margin: 0PX auto;
border: 1px solid #6E93F3;
padding: 1PX 1PX 1PX 12PX ;
border-radius: 50PX;
input{
flex: 1;
background: transparent;
margin-left: 10PX;
}
}
.content{
width: 92%;
margin: 0 auto;
box-shadow: 0px 0px 10PX rgba(0,0,0,0.1);
border-radius: 10PX;
margin-top: 2vh;
padding: 1.5vh 4%;
.content_tt{
font-size: .35rem;
}
.content_con{
display: flex;
justify-content: space-between;
margin-top: 1.5vh;
.content_con_left{
display: flex;
flex-direction:column;
justify-content: space-between;
p{
font-size: .35rem;
padding-left: 18PX;
&:nth-child(1){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_project.png") no-repeat left center;
}
&:nth-child(2){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_name.png") no-repeat left center;
}
&:nth-child(3){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_iphone.png") no-repeat left center;
}
}
}
.content_con_right{
display: flex;
justify-content: end;
align-items: center;
img{
border-radius: 10PX;
width: 40%;
margin-left: 5%;
box-shadow: 0px 5PX 10PX rgba(0,0,0,0.2);
&:last-child{
width: auto;
box-shadow: none;
}
}
}
}
}
.main_content_right_list{
display: flex;
margin: 0 auto;
margin-top: 2vh;
width: 92%;
img{
border-radius: 15PX;
margin-right: 4%;
width: 20%;
}
.main_content_right_list_content{
display: flex;
flex-direction:column;
justify-content: space-between;
.tt{
color: #333333;
font-size: .35rem;
}
.tab{
display: flex;
justify-content: space-between;
p{
&:nth-child(1){
flex: 1;
color: #FF5E00;
span{
font-size: .4rem;
}
}
&:nth-child(2){
flex: 1;
span{
width: 50%;
display: inline-block;
text-align: center;
padding: 2PX 2PX;
&:nth-child(1){
color: #497CE8;
background: #E2E9FD;
border-top-left-radius: 10PX;
}
&:nth-child(2){
color: #ffffff;
background-image: linear-gradient(to right , #5D87FA , #5FD5F5);
border-bottom-right-radius: 10PX;
}
}
}
}
}
.name{
color: #8F8F8F;
background: url("../../../../static/images/agriculturalTrusteeship/index/name_icon.png") no-repeat left center;
padding-left: 18PX;
}
}
}
}
</style>

+ 132
- 0
src/views/agriculturalTrusteeship/insurance/insuranceProjectDetail.vue Datei anzeigen

@@ -0,0 +1,132 @@
<template>
<div class="home_wrapper">
<!-- 头部开始 -->
<div class="header">
<div class="header_left" @click="onClickLeft">
<img src="../../../../static/images/agriculturalTrusteeship/return.png">
</div>
<div class="header_right" @click="onClickLeft">
<img src="../../../../static/images/agriculturalTrusteeship/share.png">
</div>
</div>
<!-- 头部结束 -->

<!-- 内容开始 -->
<div class="main">
<van-swipe class="my-swipe" :autoplay="3000" indicator-color="white">
<van-swipe-item><img src="../../../../static/images/agriculturalTrusteeship/test2.png"></van-swipe-item>
<van-swipe-item><img src="../../../../static/images/agriculturalTrusteeship/test2.png"></van-swipe-item>
<van-swipe-item><img src="../../../../static/images/agriculturalTrusteeship/test2.png"></van-swipe-item>
<van-swipe-item><img src="../../../../static/images/agriculturalTrusteeship/test2.png"></van-swipe-item>
</van-swipe>

<div class="main_content">
<p class="tt">农业保险玉米保险30/亩小麦50/亩大豆60/亩</p>
<p class="name">张三社会服务旗舰店</p>
</div>

<div class="main_box">
<van-cell title="产品类型" :border="false" value="内容" />
<van-cell title="联系人" :border="false" value="内容" />
<van-cell title="联系方式" :border="false" value="内容" />
<van-cell title="产品描述" :border="false" value="内容" />
<van-cell title="发布日期" :border="false" value="内容" />
</div>
</div>
<!-- 内容结束 -->

</div>
</template>
<script>
import Cookies from "js-cookie";
export default {
name: "agriculturalTrusteeshipInsuranceDetail",
data() {
return {
activeKey: 0,
active: 0,
loading: false,
finished: false,
};
},
created() {

},
methods: {

},
}
</script>
<style scoped lang="scss">
.home_wrapper{

}
/*头部*/
.header{
display: flex;
align-items: center;
justify-content: space-between;
padding: 2vh 4% 2vh;
position: absolute;
top: 0;
z-index: 99999999;
width: 100%;
.header_left{
display: flex;
align-items: center;
p{
font-size: .4rem;
color: #ffffff;
line-height: 1;
margin-left: 10PX;
}
}
.header_right{

}
}

/* 内容 */
.main{
.my-swipe .van-swipe-item {
color: #fff;
font-size: 20px;
text-align: center;
}
.main_content{
background: #ffffff;
padding: 2vh 4%;
width: 92%;
margin: 0 auto;
border-radius: 10PX;
margin-top: 2vh;
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
.tt{
font-size: .4rem;
margin-bottom: 10PX;
}
.name{
color: #4E7FFF;
background: url("../../../../static/images/agriculturalTrusteeship/index/name_icon.png") no-repeat left center;
padding-left: 18PX;
}
}
.main_box{
width: 92%;
margin: 0 auto;
margin-top: 2vh;
border-radius: 10PX;
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
overflow: hidden;
background-color: #FFF;
padding: 2vh 4%;
/deep/ .van-cell{
padding: 0;
margin-bottom: 10PX;
&:last-child{
margin-bottom: 0;
}
}
}
}
</style>

+ 188
- 0
src/views/agriculturalTrusteeship/insurance/insuranceProjectList.vue Datei anzeigen

@@ -0,0 +1,188 @@
<template>
<div class="home_wrapper">
<!-- 头部开始 -->
<div class="header">
<div class="header_left" @click="onClickLeft">
<img src="../../../../static/images/agriculturalTrusteeship/return.png">
<p>张三服务合作社</p>
</div>
</div>
<!-- 头部结束 -->

<!-- 内容开始 -->
<div class="main">
<div class="search">
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<!-- @load="onLoad"-->
<div class="main_content_right_list" v-for="item in 10" :key="item" @click="$router.push({name:'agriculturalTrusteeshipInsuranceProjectDetail'})">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<div class="main_content_right_list_content">
<p class="tt">如果只有一行就空着啊啊啊啊啊啊啊啊啊啊啊啊</p>
<!-- <div class="tab">-->
<!-- <p>¥<span>66</span>.00/亩</p>-->
<!-- <p><span>销 600</span><span>分 4.7</span></p>-->
<!-- </div>-->
<p class="name">健康保险</p>
</div>
</div>
</van-list>
</div>
<!-- 内容结束 -->

</div>
</template>
<script>
import Cookies from "js-cookie";
export default {
name: "agriculturalTrusteeshipInsuranceList",
data() {
return {
activeKey: 0,
active: 0,
loading: false,
finished: false,
};
},
created() {

},
methods: {

},
}
</script>
<style scoped lang="scss">
.home_wrapper{
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_head.png") no-repeat;

}
/*头部*/
.header{
display: flex;
align-items: center;
justify-content: space-between;
padding: 2vh 4% 2vh;
.header_left{
display: flex;
align-items: center;
p{
font-size: .4rem;
color: #ffffff;
line-height: 1;
margin-left: 10PX;
}
}
.header_right{
font-size: .35rem;
background: #ffffff url("../../../../static/images/agriculturalTrusteeship/address.png") no-repeat 10PX center;
padding: 2PX 15PX 2PX 25PX;
border-radius: 50PX;
}
}

/* 内容 */
.main{
background: #ffffff;
padding-top: 2vh;
border-top-left-radius: 25PX;
border-top-right-radius: 25PX;
/deep/ .van-tabs__nav{
border-top-left-radius: 25PX;
border-top-right-radius: 25PX;
overflow: hidden;
}
/deep/ .van-tabs__line{
background: #334281!important;
}
/deep/ .van-tab--active{
color: #334281;
}
/deep/ .van-tabs__content{
background: #ffffff;
padding-top: 2vh;
}
.search{
display: flex;
justify-content: space-between;
align-items: center;
width: 92%;
margin: 0PX auto;
border: 1px solid #6E93F3;
padding: 1PX 1PX 1PX 12PX ;
border-radius: 50PX;
input{
flex: 1;
background: transparent;
margin-left: 10PX;
}
}
.main_content_right_list{
display: flex;
margin: 0 auto;
margin-top: 2vh;
width: 92%;
img{
border-radius: 15PX;
margin-right: 4%;
width: 20%;
}
.main_content_right_list_content{
display: flex;
flex-direction:column;
justify-content: space-between;
align-items: start;
.tt{
color: #333333;
font-size: .35rem;
}
.tab{
display: flex;
justify-content: space-between;
p{
&:nth-child(1){
flex: 1;
color: #FF5E00;
span{
font-size: .4rem;
}
}
&:nth-child(2){
flex: 1;
span{
width: 50%;
display: inline-block;
text-align: center;
padding: 2PX 2PX;
&:nth-child(1){
color: #497CE8;
background: #E2E9FD;
border-top-left-radius: 10PX;
}
&:nth-child(2){
color: #ffffff;
background-image: linear-gradient(to right , #5D87FA , #5FD5F5);
border-bottom-right-radius: 10PX;
}
}
}
}
}
.name{
color: #497CE8;
background: #E2E9FD;
padding:2PX 5PX;
border-radius: 5PX;
}
}
}
}
</style>

+ 268
- 0
src/views/agriculturalTrusteeship/society/societyList.vue Datei anzeigen

@@ -0,0 +1,268 @@
<template>
<div class="home_wrapper">
<!-- 头部开始 -->
<div class="header">
<div class="header_left" @click="onClickLeft">
<img src="../../../../static/images/agriculturalTrusteeship/return.png">
<p>保险服务</p>
</div>
<p class="header_right">河东河西村</p>
</div>
<!-- 头部结束 -->

<!-- 内容开始 -->
<div class="main">
<van-tabs v-model="active" sticky animated>
<van-tab title="保险公司">
<div class="search">
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<div class="content" v-for="item in 10" :key="item" @click="$router.push({name:'agriculturalTrusteeshipInsuranceProjectList'})">
<p class="content_tt">张三李四合伙开公司有限公司</p>
<div class="content_con">
<div class="content_con_left">
<p>60个产品</p>
<p>林巧巧</p>
<p>18765332194</p>
</div>
<div class="content_con_right">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<img src="../../../../static/images/agriculturalTrusteeship/insurance/insurance_go.png">
</div>
</div>
</div>
</van-list>

</van-tab>
<van-tab title="保险产品">
<div class="search">
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_01.png" />
<input type="text" placeholder="输入需求进行搜索" />
<img src="../../../../static/images/agriculturalTrusteeship/index/search_icon_02.png" />
</div>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
>
<!-- @load="onLoad"-->
<div class="main_content_right_list" v-for="item in 10" :key="item">
<img src="../../../../static/images/agriculturalTrusteeship/index/test.png">
<div class="main_content_right_list_content">
<p class="tt">如果只有一行就空着啊啊啊啊啊啊啊啊啊啊啊啊</p>
<!-- <div class="tab">-->
<!-- <p>¥<span>66</span>.00/亩</p>-->
<!-- <p><span>销 600</span><span>分 4.7</span></p>-->
<!-- </div>-->
<p class="name">张三社会服务旗舰店</p>
</div>
</div>
</van-list>

</van-tab>
</van-tabs>
</div>
<!-- 内容结束 -->

</div>
</template>
<script>
import Cookies from "js-cookie";
export default {
name: "agriculturalTrusteeshipInsuranceList",
data() {
return {
activeKey: 0,
active: 0,
loading: false,
finished: false,
};
},
created() {

},
methods: {

},
}
</script>
<style scoped lang="scss">
.home_wrapper{

}
/*头部*/
.header{
display: flex;
align-items: center;
justify-content: space-between;
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
padding: 2vh 4% 2vh;
.header_left{
display: flex;
align-items: center;
p{
font-size: .4rem;
color: #ffffff;
line-height: 1;
margin-left: 10PX;
}
}
.header_right{
font-size: .35rem;
background: #ffffff url("../../../../static/images/agriculturalTrusteeship/address.png") no-repeat 10PX center;
padding: 2PX 15PX 2PX 25PX;
border-radius: 50PX;
}
}

/* 内容 */
.main{
background-image: linear-gradient(to right , #6E93F3 , #7E89E9 , #54C6E4);
/deep/ .van-tabs__nav{
border-top-left-radius: 25PX;
border-top-right-radius: 25PX;
overflow: hidden;
}
/deep/ .van-tabs__line{
background: #334281!important;
}
/deep/ .van-tab--active{
color: #334281;
}
/deep/ .van-tabs__content{
background: #ffffff;
padding-top: 2vh;
}
.search{
display: flex;
justify-content: space-between;
align-items: center;
width: 92%;
margin: 0PX auto;
border: 1px solid #6E93F3;
padding: 1PX 1PX 1PX 12PX ;
border-radius: 50PX;
input{
flex: 1;
background: transparent;
margin-left: 10PX;
}
}
.content{
width: 92%;
margin: 0 auto;
box-shadow: 0px 0px 10PX rgba(0,0,0,0.1);
border-radius: 10PX;
margin-top: 2vh;
padding: 1.5vh 4%;
.content_tt{
font-size: .35rem;
}
.content_con{
display: flex;
justify-content: space-between;
margin-top: 1.5vh;
.content_con_left{
display: flex;
flex-direction:column;
justify-content: space-between;
p{
font-size: .35rem;
padding-left: 18PX;
&:nth-child(1){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_project.png") no-repeat left center;
}
&:nth-child(2){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_name.png") no-repeat left center;
}
&:nth-child(3){
background: url("../../../../static/images/agriculturalTrusteeship/insurance/insurance_list_iphone.png") no-repeat left center;
}
}
}
.content_con_right{
display: flex;
justify-content: end;
align-items: center;
img{
border-radius: 10PX;
width: 40%;
margin-left: 5%;
box-shadow: 0px 5PX 10PX rgba(0,0,0,0.2);
&:last-child{
width: auto;
box-shadow: none;
}
}
}
}
}
.main_content_right_list{
display: flex;
margin: 0 auto;
margin-top: 2vh;
width: 92%;
img{
border-radius: 15PX;
margin-right: 4%;
width: 20%;
}
.main_content_right_list_content{
display: flex;
flex-direction:column;
justify-content: space-between;
.tt{
color: #333333;
font-size: .35rem;
}
.tab{
display: flex;
justify-content: space-between;
p{
&:nth-child(1){
flex: 1;
color: #FF5E00;
span{
font-size: .4rem;
}
}
&:nth-child(2){
flex: 1;
span{
width: 50%;
display: inline-block;
text-align: center;
padding: 2PX 2PX;
&:nth-child(1){
color: #497CE8;
background: #E2E9FD;
border-top-left-radius: 10PX;
}
&:nth-child(2){
color: #ffffff;
background-image: linear-gradient(to right , #5D87FA , #5FD5F5);
border-bottom-right-radius: 10PX;
}
}
}
}
}
.name{
color: #8F8F8F;
background: url("../../../../static/images/agriculturalTrusteeship/index/name_icon.png") no-repeat left center;
padding-left: 18PX;
}
}
}
}
</style>

+ 6
- 0
src/views/lawEnforcement/index_new.vue Datei anzeigen

@@ -80,6 +80,7 @@
<!-- </div>-->
<!-- <img src="../../../static/images/lawEnforcement/new/index_icon_12.png" @click="$router.push({name:'lawEnforcementRecordDocument'})">-->
<!-- </div>-->

</div>

<div class="main3">
@@ -153,6 +154,11 @@ export default {
methods: {
goSearch(){
this.$router.push({name:'lawEnforcementBasis',query:{searchInput:this.searchInput}});
},
openAlert(){
this.$dialog.alert({
message: '功能暂未开通!',
})
}
},
};


+ 8
- 13
src/views/lawEnforcement/login.vue Datei anzeigen

@@ -2,7 +2,7 @@
<div class="app-container">
<div class="title">
<img style="display: inline-block;margin-right: 10px;" src="../../../static/images/lawEnforcement/login_logo.png" alt="">
<p>农业综合行政执法公众平台</p>
<p>农业综合行政执法平台</p>
</div>
<van-form style="width: 88%;margin: 0 auto;margin-top: 50px;" v-if="!showMessage">
<van-field
@@ -38,13 +38,13 @@
<div style="margin: 50px 16px 16px;border-radius: 30px;overflow: hidden;">
<van-button block type="info" native-type="submit" @click="handleLogin">登录</van-button>
</div>
<div style="margin: 0px 16px;border-radius: 30px;overflow: hidden;">
<van-button block type="info" @click="registerShow=true">注册</van-button>
</div>
<!-- <div style="margin: 0px 16px;border-radius: 30px;overflow: hidden;">-->
<!-- <van-button block type="info" @click="registerShow=true">注册</van-button>-->
<!-- </div>-->

<van-popup v-model:show="registerShow" style="width: 80%" round>
<div style="background: #FFF;padding: 5% 2%;">
<p style="text-align: center;font-size: 0.45rem;margin-bottom: 5%;font-family: zqkhyt;">请选择注册类型</p>
<p style="text-align: center;font-size: 0.45rem;margin-bottom: 5%;">请选择注册类型</p>
<van-row>
<van-col :span="12" align="center">
<router-link :to="{name:'lawEnforcementUser'}">
@@ -54,7 +54,7 @@
src="../../../static/images/lawEnforcement/sh.png"
/>
</router-link>
<p style="font-family: zqkhyt;font-size: 0.4rem;margin-top: 3%">个体工商户</p>
<p style="font-size: 0.4rem;margin-top: 3%">个体工商户</p>
</van-col>
<van-col :span="12" align="center">
<router-link :to="{name:'lawEnforcementCompanyRegister'}">
@@ -64,7 +64,7 @@
src="../../../static/images/lawEnforcement/qy.png"
/>
</router-link>
<p style="font-family: zqkhyt;font-size: 0.4rem;margin-top: 3%">企业</p>
<p style="font-size: 0.4rem;margin-top: 3%">企业</p>
</van-col>
</van-row>
</div>
@@ -74,10 +74,6 @@
</div>
</template>
<style scoped lang="scss">
@font-face {
font-family: zqkhyt;
src: url("../../assets/fonts/zqkhyt.TTF");
}

input:-webkit-autofill , textarea:-webkit-autofill, select:-webkit-autofill {
-webkit-text-fill-color: #ededed !important;
@@ -111,9 +107,8 @@
margin: 0 auto;
text-align: center;
p{
font-size: 0.95rem;
font-size: 0.8rem;
color: #1D6FE9;
font-family: zqkhyt;
margin-top: 10PX;
}
img{


+ 1
- 1
src/views/lawEnforcement/monitor/monitor.vue Datei anzeigen

@@ -96,7 +96,7 @@
},
openAlert(){
this.$dialog.alert({
message: '暂未开通功能',
message: '执法仪型号过低,不支持现场播放!',
})
}
},


+ 82
- 29
src/views/lawEnforcement/retrospect/retrospectDetail.vue Datei anzeigen

@@ -3,7 +3,7 @@
<div class="header_main">
种子扫描
<div class="return_btn" @click="onClickLeft"></div>
<div class="add_btn" @click="onClickLeft"></div>
<div class="add_btn"></div>
<div class="top_box">
<div class="top_01">
<img src="../../../../static/images/lawEnforcement/new/retrospect_icon_10.png">
@@ -23,40 +23,44 @@
<div class="main">

<div class="main_box">
<a href="#" style="font-size: 14px;display: block;width: 100%;text-align: center;">www.kasdhefivnskdfkhhwkn5664nn.5164888874.com</a>
<a style="font-size: 14px;display: block;width: 100%;text-align: center;">{{scanLink}}</a>
</div>

<div class="main_box center_box" style="margin-top: 10px;">
<img src="../../../../static/images/lawEnforcement/new/retrospect_icon_15.png" alt="">
<p>该产品单元识别代码合规</p>
<p>1534565635645126353535335656</p>
<div class="iframe-wrap">
<iframe id="iframe" src="http://y.acexe.cn?q=10946481001086181062569234199632" class="iframe" width="100%" frameborder="0"></iframe>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell :border="false">
<template #title>
<span class="custom-title">草甘膦铵盐</span>
</template>
</van-cell>
<van-cell title="登记证号" :border="false" value="登记证号" />
<van-cell title="有效成分" :border="false" value="有效成分" />
<van-cell title="剂型" :border="false" value="剂型" />
<van-cell title="总含量" :border="false" value="总含量" />
<van-cell title="有效期至" :border="false" value="有效期至" />
<van-cell title="登记持有人" :border="false" value="登记持有人" />
</div>
<!-- <div class="main_box center_box" style="margin-top: 10px;">-->
<!-- <img src="../../../../static/images/lawEnforcement/new/retrospect_icon_15.png" alt="">-->
<!-- <p>该产品单元识别代码合规</p>-->
<!-- <p>1534565635645126353535335656</p>-->
<!-- </div>-->

<div class="main_box" style="margin-top: 10px;">
<van-cell title="防伪追溯网址" :border="false" value="防伪追溯网址" />
<van-cell title="单元识别代码" :border="false" value="单元识别代码" />
</div>
<!-- <div class="main_box" style="margin-top: 10px;">-->
<!-- <van-cell :border="false">-->
<!-- <template #title>-->
<!-- <span class="custom-title">草甘膦铵盐</span>-->
<!-- </template>-->
<!-- </van-cell>-->
<!-- <van-cell title="登记证号" :border="false" value="登记证号" />-->
<!-- <van-cell title="有效成分" :border="false" value="有效成分" />-->
<!-- <van-cell title="剂型" :border="false" value="剂型" />-->
<!-- <van-cell title="总含量" :border="false" value="总含量" />-->
<!-- <van-cell title="有效期至" :border="false" value="有效期至" />-->
<!-- <van-cell title="登记持有人" :border="false" value="登记持有人" />-->
<!-- </div>-->

<!-- <div class="main_box" style="margin-top: 10px;">-->
<!-- <van-cell title="防伪追溯网址" :border="false" value="防伪追溯网址" />-->
<!-- <van-cell title="单元识别代码" :border="false" value="单元识别代码" />-->
<!-- </div>-->

</div>
</div>
</template>

<script>
import { getScheme } from "@/api/lawEnforcement/index";
import {getScheme, getSurveyByCaseId} from "@/api/lawEnforcement/index";
import Cookies from "js-cookie";
export default {
name: "programmeDetail",
data() {
@@ -80,10 +84,13 @@
activeNames: ['1'],
activeNames1: ['1'],
activeNames2: ['1'],

scanLink:'',
};
},
created() {
// this.getDictionaries()
console.log("aaaaaaaaaa")
},
methods: {
getDictionaries(){
@@ -91,8 +98,17 @@
this.form = response.data;
});
},
goBack(){
window.history.go(-1)
},
watch: {
$route (to, from ) {
// 监听路由变化, 实现类似 小程序的 onShow 事件
console.log(to.path)
if (to.path === '/lawEnforcement/retrospectDetail') {
// do anything you want
if (Cookies.get('scanLink')){
this.scanLink = Cookies.get('scanLink');
}
}
}
},
}
@@ -104,6 +120,42 @@
}
.app-container {

height: 100vh;

overflow: hidden;

}
.iframe-wrap{

position: relative;

overflow: hidden;

width: 100%;

height: calc(100vh - 269PX);

background: #eee;

}
.iframe{

width: calc(100% + 20PX);

border: none;

position: absolute;

right: -20PX;

top: 0;

bottom: 0;

overflow-x: hidden; overflow-y: scroll;

height: 100%;

}
.retrospect_icon{
position: absolute;
@@ -198,7 +250,7 @@
}
}
.header_main{
/*height: 116px;*/
height: 225PX;
background: url('../../../../static/images/lawEnforcement/new/header_bg.png') no-repeat;
background-size: 100% 100%;
/*position: fixed;*/
@@ -257,7 +309,8 @@
}
.main_box{
width: 96%;
margin: 0 auto;
height: 58PX;
margin: 0 auto 15PX;
border-radius: 10PX;
box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
overflow: hidden;


+ 20
- 15
src/views/lawEnforcement/retrospect/scan.vue Datei anzeigen

@@ -2,7 +2,7 @@
<div class="scan">
<div class="nav">
<a class="close" @click="() => $router.go(-1)"></a>
<p class="title">Scan QRcode</p>
<p class="title">扫一扫</p>
</div>
<div class="scroll-container">
<Scaner
@@ -19,6 +19,7 @@
<script>

import Scaner from '@/components/qrcode//Scaner';
import Cookies from "js-cookie";

export default {
name: 'Scan',
@@ -34,9 +35,9 @@ export default {
methods: {
codeScanned(code) {
this.scanned = code;
setTimeout(() => {
alert(`扫码解析成功: ${code}`);
}, 200)
Cookies.set("scanLink", code);
this.$router.go(-1)
},
errorCaptured(error) {
switch (error.name) {
@@ -61,7 +62,7 @@ export default {
this.errorMessage = "UNKNOWN ERROR: " + error.message;
}
console.error(this.errorMessage);
alert('相机调用失败');
alert('相机调用失败');
}
},
mounted () {
@@ -80,29 +81,33 @@ export default {
width: 100%;
}
.scan .nav {
width: 100%;
height: 48PX;
line-height: 48PX;
height: 116px;
background: url('../../../../static/images/lawEnforcement/new/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;
z-index: 999;
}
.scan .nav .title {
padding: 0;
margin: 0;
font-size: 16PX;
color: #FFFFFF;
background: rebeccapurple;
text-align: center;
}
.scan .nav .close {
display: inline-block;
height: 22PX;
width: 22PX;
background: url('../../../assets/images/sunVillage_info/list_icon_5.png') no-repeat center;
background-size: auto 100%;
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: 16PX;
top: 14PX;
left: 38px;
top: 36px;
}
</style>

+ 147
- 0
src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositAdd.vue Datei anzeigen

@@ -0,0 +1,147 @@
<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>
<van-form @submit="goModify" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<div class="main_box">
<van-field label="省" required :rules="[{ required: true , message:'请输入省' }]" v-model="form.sheng" placeholder="请输入省" input-align="right" label-width="auto"/>
<van-field label="市" required :rules="[{ required: true , message:'请输入市' }]" v-model="form.shi" placeholder="请输入市" input-align="right" label-width="auto"/>

<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>

<van-field label="开户行" required :rules="[{ required: true , message:'请输入开户行' }]" v-model="form.bankDeposit" placeholder="请输入开户行" input-align="right" label-width="auto"/>
<van-field label="联行号" required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" placeholder="请输入联行号" input-align="right" label-width="auto"/>
<van-field label="机构号" v-model="form.institutionNumber" placeholder="请输入机构号" input-align="right" label-width="auto"/>

</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addDeposit } from "@/api/onlineHome/bankAgriculture/bankOfDeposit";
export default {
name: "paymentAccountAdd",
data() {
return {
showBankType:false,
bankType:'',
// 所属银行字典
bankTypeOptions: [],
form:{
sheng: "", //省 必填
shi: "", //市 必填
bankType: "", //所属银行 必填
bankDeposit: "", //开户行 必填
payeePaymentLines: "", //联行号 //必填
}
};
},
created() {
this.getDetail();
},
methods: {
validator(val){
return /^\d{6,}$/.test(val);
},
getDetail(){
// 所属银行
this.getDicts("bank_type_all").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(val){
this.showBankType = false
this.bankType = val.text
this.$set(this.form, "bankType", val.value);
},
goModify(){
console.log(this.form)
this.form.balance = this.form.initialBalance;
addDeposit(this.form).then((response) => {
this.$toast.success('添加成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 175
- 0
src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositList.vue Datei anzeigen

@@ -0,0 +1,175 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">开户行列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList"
>
<van-swipe-cell v-for="(item,index) in applicationList" :key="index">
<!-- :to="{name:'paymentAccountDetail', query: {id:item.id,type:'modify'}}"-->
<van-cell :title="item.bankDeposit" center >
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn6.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span>{{item.bankType}}</span></p>
<p style="display: flex;justify-content: space-between;width: 55%;">
<span style="color: #878787;font-weight: normal;font-size: 12px;width: 60%;text-align:left;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;word-break: break-all;overflow: hidden;">{{item.sheng+item.shi}}</span>
<span style="color: #878787;font-weight: normal;font-size: 12px;">{{item.payeePaymentLines}}</span>
</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button square text="修改" type="info" :to="{name:'sunVillageBankOfDepositModify', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { getList , delDeposit } from "@/api/onlineHome/bankAgriculture/bankOfDeposit";
export default {
name: "bankOfDepositList",
data() {
return {
applicationList:[],
houseApplyStatus:[],
// 账户类型 字典字典
accountTypeOptions: [],
// 是否停用 字典 sys_yes_no字典
statusOptions: [],
// 查询类型字典
selectTypeOptions: [],
// 来往账标识字典
directionOptions: [],
loading: false,
finished: false,
queryParams:{
pageNum: 1,
pageSize: 10,
},
statusColor:'#1D6FE9'
};
},
created() {
this.getDicts("bank_type").then((response) => {
this.bankTypeOptions = response.data;
});
},
methods: {
goAdd(){
this.$router.push({name:'sunVillageBankOfDepositAdd'})
},
getList(){
setTimeout(() => {
getList(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].bankType = this.selectDictLabel(this.bankTypeOptions, response.rows[i].bankType);
this.applicationList.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除开户行?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delDeposit(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 0.2rem 3%;
}
/deep/.van-cell__title{
flex: 1;
}
/deep/.van-cell__title span{
font-family: Arial;
font-size: 0.4rem;
font-weight: normal;

}
/deep/.van-cell__label span{
color: #1D6FE9;
font-weight: bold;
i{
font-size: 0.2rem;
}
}
/deep/.van-cell__label{
/*font-size: 14Px;*/
/*font-weight: bold;*/
display: flex;
align-items: center;
justify-content: space-between;
}
/deep/.van-cell__value{
flex: 0.6;
color: #333333;
}
/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>

+ 151
- 0
src/views/sunVillage_info/bankAgriculture/bankOfDeposit/bankOfDepositModify.vue Datei anzeigen

@@ -0,0 +1,151 @@
<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>
<van-form @submit="goModify" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<div class="main_box">
<van-field label="省" required :rules="[{ required: true , message:'请输入省' }]" v-model="form.sheng" placeholder="请输入省" input-align="right" label-width="auto"/>
<van-field label="市" required :rules="[{ required: true , message:'请输入市' }]" v-model="form.shi" placeholder="请输入市" input-align="right" label-width="auto"/>

<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>

<van-field label="开户行" required :rules="[{ required: true , message:'请输入开户行' }]" v-model="form.bankDeposit" placeholder="请输入开户行" input-align="right" label-width="auto"/>
<van-field label="联行号" required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" placeholder="请输入联行号" input-align="right" label-width="auto"/>

</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { editDeposit , getDeposit } from "@/api/onlineHome/bankAgriculture/bankOfDeposit";
export default {
name: "paymentAccountAdd",
data() {
return {
showBankType:false,
bankType:'',
// 所属银行字典
bankTypeOptions: [],
form:{
sheng: "", //省 必填
shi: "", //市 必填
bankType: "", //所属银行 必填
bankDeposit: "", //开户行 必填
payeePaymentLines: "", //联行号 //必填
}
};
},
created() {
this.getDetail();
this.form.id = this.$route.query.id;
},
methods: {
validator(val){
return /^\d{6,}$/.test(val);
},
getDetail(){
getDeposit(this.$route.query.id).then(response => {
console.log(response)
this.houseGetDicts("bank_type_all").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
this.bankType = this.selectDictLabel(res.data, response.data.bankType);
});
this.form = response.data;
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(val){
this.showBankType = false
this.bankType = val.text
this.$set(this.form, "bankType", val.value);
},
goModify(){
console.log(this.form)
this.form.balance = this.form.initialBalance;
editDeposit(this.form).then((response) => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 276
- 0
src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionAdd.vue Datei anzeigen

@@ -0,0 +1,276 @@
<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" style="margin-bottom: 10px;">
<van-field v-model="value" placeholder="粘贴信息,自动拆分收款方、收款账号" @input="changeInform" />
</div>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
@click="showPayeeType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<van-radio name="1">停用</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0'
},

bankType:'',
payeeType:'',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
value:''
};
},
created() {
this.getDictionaries();
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});

},
changeInform(val){
console.log(val)
var that = this;
var str = val;
var numArr = str.match(/\d+/g)
var nameArr = str.match(/[\u4e00-\u9fa5]/g).join("")
console.log(numArr)
console.log(nameArr)
if (numArr) {
numArr.map(rr=>{
if (rr.length>16) {
const carId = this.isBankCard(rr);
if (carId) {
that.form.payee = nameArr;
that.form.payeeAccount = rr
}
}
})
}
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 138
- 0
src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionDetail.vue Datei anzeigen

@@ -0,0 +1,138 @@
<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>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field readonly label="收款方" v-model="form.payee" input-align="right" label-width="auto"/>
<van-field readonly label="收款账户" v-model="form.payeeAccount" input-align="right" label-width="auto"/>
<van-field readonly label="所属银行" v-model="bankType" input-align="right" label-width="auto" />
<van-field readonly label="开户银行" v-model="form.bankDeposit" 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-cell title="账户类型">
<template #right-icon>
{{form.accountType == '1' ? '公户' : '私户' }}
</template>
</van-cell>
<van-field readonly label="收款人类型" v-model="payeeType" input-align="right" label-width="auto" />
<van-cell title="数据状态">
<template #right-icon>
{{form.accountType == '0' ? '正常' : '停用' }}
</template>
</van-cell>
</div>
</div>
</template>

<script>
import { getPayee , updatePayee } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionModify",
data() {
return {
showBankType:false,
showPayeeType:false,
form:{},

bankType:'',
payeeType:'',

bankTypeOptions:[],
payeeTypeOptions:[],

};
},
created() {
this.getDictionaries();
},
methods: {
getDictionaries(){
getPayee(this.$route.query.id).then((response) => {
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
this.bankType = this.selectDictLabel(res.data, response.data.bankType);
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
this.payeeType = this.selectDictLabel(res.data, response.data.payeeType);
});
this.form = response.data;
});

},
onConfirmBankType(data){
this.bankType = data.text;
this.form.bankType = data.value;
this.showBankType = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
console.log(this.form)
updatePayee(this.form).then(response => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 177
- 0
src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionList.vue Datei anzeigen

@@ -0,0 +1,177 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">银农收款账户列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList"
>
<van-swipe-cell v-for="(item,index) in applicationList" :key="index">
<van-cell center :to="{name:'sunVillageCollectionDetail', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn9.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p>{{item.payeeAccount}}</p>
</template>
<template #title>
<p class="van-ellipsis">{{item.payee}}</p>
</template>
<template #default>
<p>{{item.accountType}}</p>
<p style="font-size: 12px;font-weight: normal;color: #878787;">{{item.bankType}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button square text="修改" type="info" :to="{name:'sunVillageCollectionModify', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listPayee , delPayee } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionList",
data() {
return {
applicationList:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
}
};
},
created() {
this.getDicts("bank_type").then(response => {
this.bankTypeOptions = response.data;
});
this.getDicts("sys_normal_disable").then(response => {
this.statusOptions = response.data;
});
this.getDicts("bank_account_type").then(response => {
this.accountTypeOptions = response.data;
});
this.getDicts("payee_type").then(response => {
this.payeeTypeOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'collectionAdd';
},
getList(){
setTimeout(() => {
listPayee(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].accountType = this.selectDictLabel(this.accountTypeOptions, response.rows[i].accountType);
response.rows[i].bankType = this.selectDictLabel(this.bankTypeOptions, response.rows[i].bankType);

this.applicationList.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除收款账户?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delPayee(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 0.2rem 3%;
}
/deep/.van-cell__title{
flex: 0.7;
width: 70%;
}
/deep/.van-cell__title span{
font-family: Arial;
font-size: 0.4rem;
font-weight: normal;

}
/deep/.van-cell__label span{
color: #1D6FE9;
font-weight: bold;
i{
font-size: 0.2rem;
}
}
.van-cell__label{
color: #333333;
font-size: 14Px;
}
/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>

+ 261
- 0
src/views/sunVillage_info/bankAgriculture/collectionAccount/collectionModify.vue Datei anzeigen

@@ -0,0 +1,261 @@
<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>
<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
@click="showPayeeType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<van-radio name="1">停用</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { getPayee , updatePayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionModify",
data() {
return {
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0'
},

bankType:'',
payeeType:'',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
},
methods: {
getDictionaries(){
getPayee(this.$route.query.id).then((response) => {
let _this = this
this.form = response.data;
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
_this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
this.bankType = this.selectDictLabel(res.data, response.data.bankType);
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
_this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
this.payeeType = this.selectDictLabel(res.data, response.data.payeeType);
});
let queryParams={
"bankType":response.data.bankType,
"status": "0",
}
listDeposit(queryParams).then(rr => {
this.bankDepositOptions = []
for(var i = 0 ; i < rr.rows.length ; i++){
if(_this.form.bankDeposit==rr.rows[i].id){
_this.bankDeposit = rr.rows[i].bankDeposit
}
_this.bankDepositOptions.push({"text":rr.rows[i].bankDeposit,"value":rr.rows[i].id,
"payeePaymentLines":rr.rows[i].payeePaymentLines,"institutionNumber":rr.rows[i].institutionNumber});
}
});

});

},
getError(e){
console.log(e)
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.value
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
console.log(this.form)
updatePayee(this.form).then(response => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 514
- 0
src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountAdd.vue Datei anzeigen

@@ -0,0 +1,514 @@
<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>
<van-form @submit="goModify" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
label="账户类型"
placeholder="请选择"
v-model="accountType"
@click="showAccountType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
/>
<van-popup v-model="showAccountType" position="bottom">
<van-picker
show-toolbar
:columns="typeDictionaries"
@confirm="onConfirmType"
@cancel="showAccountType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="账户分类"
placeholder="请选择"
v-model="villageAccountType"
@click="showVillageAccountType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择账户分类' }]"
v-if="accountType=='银行存款'&&(form.bankType==1||form.bankType==2)"
/>
<van-popup v-model="showVillageAccountType" position="bottom">
<van-picker
show-toolbar
:columns="villageAccountTypeOptions"
@confirm="onConfirmVillageAccountType"
@cancel="showVillageAccountType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="所属镇账户"
placeholder="请选择"
v-model="taccountId"
@click="showTaccountId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属镇账户' }]"
v-if="accountType=='银行存款'&&(form.bankType=='1'||form.bankType=='2')&&form.villageAccountType!=2"
/>
<van-popup v-model="showTaccountId" position="bottom">
<van-picker
show-toolbar
:columns="taccountIdOptions"
@confirm="onConfirmTaccountId"
@cancel="showTaccountId = false"
/>
</van-popup>
<van-field label="客户编号" v-if="accountType=='银行存款'&&(form.bankType=='1'||form.bankType=='2')" required :rules="[{ required: true , message:'请输入客户编号' }]" v-model="form.cifNo" placeholder="请输入客户编号" input-align="right" label-width="auto"/>
<van-field label="账簿号" v-if="accountType=='银行存款'&&villageAccountType=='多级账簿'" required :rules="[{ required: true , message:'请输入账簿号' }]" v-model="form.accountNo" placeholder="请输入账簿号" input-align="right" label-width="auto"/>
<van-field label="管控类型" v-if="accountType=='银行存款'&&form.bankType==2&&villageAccountType=='多级账簿'">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.managementControlType" @change="onConfirmManagementControlType" required :rules="[{ required: true , message:'请选择管控类型' }]">
<van-radio name="1">账簿余额</van-radio>
<van-radio name="2">中心账簿</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field
readonly
clickable
label="中心账套"
placeholder="请选择"
v-model="centralBookId"
@click="showCentralBookId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择中心账套' }]"
v-if="accountType=='银行存款'&&form.managementControlType=='2'"
/>
<van-popup v-model="showCentralBookId" position="bottom">
<van-picker
show-toolbar
:columns="centralBookIdList"
@confirm="onConfirmCentralBookId"
@cancel="showCentralBookId = false"
/>
</van-popup>
<van-field
readonly
clickable
label="会计科目"
placeholder="请选择"
v-model="centralSubjectId"
@click="showCentralSubjectId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择会计科目' }]"
v-if="accountType=='银行存款'&&form.managementControlType=='2'"
/>
<van-popup v-model="showCentralSubjectId" position="bottom">
<van-picker
show-toolbar
:columns="centralSubjectIdList"
@confirm="onConfirmCentralSubjectId"
@cancel="showCentralSubjectId = false"
/>
</van-popup>
<van-field label="账户名称" required :rules="[{ required: true , message:'请输入账户名称' }]" v-model="form.accountName" placeholder="请输入账户名称" input-align="right" label-width="auto"/>
<van-field label="银行账户" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入银行账户' }]" v-model="form.bankAccountNumber" placeholder="请输入银行账户" input-align="right" label-width="auto" required/>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
v-model="form.bankName"
@click="showBankDeposit = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
v-if="accountType=='银行存款'"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositList"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.paymentLines" placeholder="请输入联行号" input-align="right" label-width="auto" required/>
<van-field
readonly
clickable
label="关联科目"
placeholder="请选择"
v-model="subjectDeatil"
@click="showSubjectId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择关联科目' }]"
/>
<van-popup v-model="showSubjectId" position="bottom">
<van-picker
show-toolbar
:columns="subjectDictionaries"
@confirm="onConfirmSubject"
@cancel="showSubjectId = false"
/>
</van-popup>
<van-field label="开户银行地址" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入开户银行地址' }]" v-model="form.site" placeholder="请输入开户银行地址" input-align="right" label-width="auto" required/>
<van-field label="支付口令" v-if="accountType=='银行存款'" name="validator" :rules="[{ validator , message:'支付口令:请输入六位以上数字' }]" v-model="form.accountPassword" placeholder="请输入支付口令" input-align="right" label-width="auto" required/>
<van-field label="账户类型" v-if="accountType=='银行存款'" required>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.bankAccountType" required :rules="[{ required: true , message:'请选择账户类型' }]">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="初始余额" v-model="form.initialBalance" required :rules="[{ required: true , message:'请输入初始余额' }]" placeholder="请输入初始余额" input-align="right" label-width="auto"/>
<van-field label="内部账号" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField1" required :rules="[{ required: true , message:'请输入内部账号' }]" placeholder="请输入内部账号" input-align="right" label-width="auto"/>
<van-field label="内部户名" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField2" required :rules="[{ required: true , message:'请输入内部户名' }]" placeholder="请输入内部户名" input-align="right" label-width="auto"/>
<van-field label="账簿号" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField3" required :rules="[{ required: true , message:'请输入账簿号' }]" placeholder="请输入账簿号" input-align="right" label-width="auto"/>
<van-field label="手机号码" v-if="accountType=='银行存款'&&form.bankType=='4'" v-model="form.alternateField1" required :rules="[{ required: true , message:'请输入手机号' }]" placeholder="请输入手机号" input-align="right" label-width="auto"/>
<van-field label="是否停用" required>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.status" required :rules="[{ required: true , message:'请选择是否停用' }]">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
</div>
<p class="main_title" v-if="villageAccountType=='多级账簿'">账簿信息</p>
<div class="main_box" v-if="villageAccountType=='多级账簿'">
<van-field label="账簿是否限额" disabled>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.alternateField1" :disabled="true">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="单笔交易限额" v-model="form.alternateField2" placeholder="0.00" input-align="right" label-width="auto" :disabled="true"/>
<van-field label="账簿是否透支" disabled>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.alternateField3" :disabled="true">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="透支类型" v-model="form.alternateField4" placeholder="无" input-align="right" label-width="auto" :disabled="true"/>
<van-field label="透支额度(元)" v-model="form.alternateField5" placeholder="0.00" input-align="right" label-width="auto" :disabled="true"/>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { getSubjectDetail , addAccount,listDeposit,queryTaccount,getCentralBooks } from "@/api/onlineHome/bankAgriculture/paymentAccount";
import {getCentralSubjects} from "../../../../api/onlineHome/bankAgriculture/paymentAccount";
export default {
name: "paymentAccountAdd",
data() {
return {
showCentralSubjectId:false,
showCentralBookId:false,
showManagementControlType:false,
showTaccountId:false,
showVillageAccountType:false,
villageAccountType:null,
showAccountType:false,
showSubjectId:false,
showBankType:false,
minDate: new Date(),
showBankDeposit:false,
maxDate: new Date(2025, 10, 1),
currentDate: new Date(),
jgList:{},
managementControlType:'',
taccountId:'',
accountType:'',
bankType:'',
centralBookId:'',
centralSubjectId:'',
jglx:'',
wfydlx:'',
wfydlxDictionaries:[],
jglxDictionaries:[],
subjectDictionaries:[],
typeDictionaries:[],
villageAccountTypeOptions:[],
taccountIdOptions:[],
centralBookIdList:[],
centralSubjectIdList:[],
// 管控类型 == 中心账套时选择中心账套
centralBooks: [],
// 管控类型字典
managementControlTypeOptions: [],
bankDepositList:[],
// 所属银行字典
bankTypeOptions: [],
subjectDeatil:'',
bankDepositQueryParams: {
bookId: null,
deptId: null,
payee: null,
payeeAccount: null,
bankDeposit: null,
payeeType:null,
bankType:null,
status: "0",
},
form:{
accountType: "102",
bankUseType:"1",
bankAccountType: "1",
villageAccountType: "2",
status: "N",
}
};
},
created() {
this.getTaList();
this.getDetail();
},
methods: {
validator(val){
return /^\d{6,}$/.test(val);
},
getDetail(){
// 账户类型
this.houseGetDicts("account_type_cashier").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.typeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
this.getDicts("cashier_account_management_control_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.managementControlTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
this.getDicts("village_account_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.villageAccountTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
getSubjectDetail().then((res) => {
for (var i = 0; i < res.rows.length; i++) {
this.subjectDictionaries.push({text: res.rows[i].subjectNameAll, value: res.rows[i].subjectId});
}
});
},
getTaList(){

let params= {
// 分页
pageNum: 1,
pageSize: 100,
bankType:this.form.bankType,
}
// this.getCentralBookOptions();
queryTaccount(params).then(res => {
this.taccountIdOptions = res.rows;
for (var i = 0; i < res.rows.length; i++) {
this.$set(this.taccountIdOptions[i], "text",res.rows[i].payee);
this.$set(this.taccountIdOptions[i], "value",res.rows[i].id);
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmCentralBookId(val){
this.showCentralBookId = false
this.$set(this.form, "centralBookId",val.value);
this.centralBookId = val.text
getCentralSubjects({bookId: val.id}).then((res) => {
this.centralSubjectIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralSubjectIdList[i], "text",res.data[i].subjectName);
this.$set(this.centralSubjectIdList[i], "value",res.data[i].subjectId);
}
})
},
onConfirmCentralSubjectId(val){
this.showCentralSubjectId = false
this.$set(this.form, "centralSubjectId",val.value);
this.centralSubjectId = val.text
},
onConfirmManagementControlType(val){
if(val==2){
getCentralBooks({yinnongTaccountId: this.form.taccountId}).then((res) => {
this.centralBookIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralBookIdList[i], "text",res.data[i].bookName);
this.$set(this.centralBookIdList[i], "value",res.data[i].id);
}
});
}
},
onConfirmBankDeposit(val){
this.showBankDeposit = false
this.$set(this.form, "bankName", val.bankDeposit);
this.$set(this.form, "paymentLines", val.payeePaymentLines);
this.$set(this.form, "alternateField10", val.institutionNumber);
},
onConfirmTaccountId(val){
this.showTaccountId = false
this.taccountId = val.text
console.log(val)
this.$set(this.form, "taccountId", val.value);
this.$set(this.form, "cifNo", val.cifNo);
this.$set(this.form, "accountName", val.payee);
this.$set(this.form, "managementControlType", val.managementControlType);
this.$set(this.form, "accountPassword", val.accountPassword);
this.$set(this.form, "centralBookId", val.centralBookId);
this.taccountIdOptions.map(res => {
if(res.id==val.value){
if(this.form.villageAccountType === '3'){
this.$set(this.form, "bankAccountNumber", res.payeeAccount);
}
//this.form.bankName = res.bankDeposit;
this.$set(this.form, "bankName", res.bankDeposit);
this.$set(this.form, "paymentLines", res.payeePaymentLines);
}
})
},
onConfirmBankType(val){
this.showBankType = false
this.bankType = val.text
this.$set(this.form, "bankType", val.value);
this.getTaList();
this.$set(this.form, "bankName", '');
this.$set(this.form, "paymentLines", '');
this.bankDepositQueryParams.bankType = val.value;
listDeposit(this.bankDepositQueryParams).then(response => {
this.bankDepositList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.$set(this.bankDepositList[i], "text",response.rows[i].bankDeposit);
this.$set(this.bankDepositList[i], "value",response.rows[i].bankDeposit);
}
})
},
onConfirmVillageAccountType(val){
this.showVillageAccountType = false
this.villageAccountType = val.text
this.$set(this.form, "villageAccountType", val.value);
},
onConfirmSubject(data){
this.subjectDeatil = data.text;
this.form.subjectId = data.value;
this.form.subjectNameAll = data.text;
this.showSubjectId = false;
},
onConfirmType(data){
this.accountType = data.text;
this.form.accountType = data.value;
this.showAccountType = false;
},
goModify(){
console.log(this.form)
this.form.balance = this.form.initialBalance;
addAccount(this.form).then((response) => {
this.$toast.success('添加成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 172
- 0
src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountDetail.vue Datei anzeigen

@@ -0,0 +1,172 @@
<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>
<p class="main_title">基础信息</p>
<div class="main_box" v-if="form">
<van-field readonly label="账户类型" v-model="accountType" input-align="right" label-width="auto" />
<van-field readonly label="所属银行" v-model="bankType" input-align="right" label-width="auto" />
<van-field readonly label="账户分类" v-if="accountType=='银行存款'&&(bankType=='中国银行'||bankType=='山东省农村信用社(农商行)')" v-model="villageAccountType" input-align="right" label-width="auto" />
<van-field readonly label="所属镇账户" v-if="accountType=='银行存款'&&villageAccountType!='村实体账户'" v-model="taccountId" input-align="right" label-width="auto" />
<van-field readonly label="账簿号" v-if="accountType=='银行存款'&&villageAccountType=='多级账簿'" v-model="accountNo" input-align="right" label-width="auto" />
<van-cell title="管控类型" v-if="accountType=='银行存款'&&villageAccountType=='多级账簿'&&bankType=='山东省农村信用社(农商行)'" >
<template #right-icon>
{{form.managementControlType == '1' ? '账簿余额':'中心账簿'}}
</template>
</van-cell>
<van-field readonly label="中心账套" v-if="accountType=='银行存款'&&form.managementControlType=='2'" v-model="centralBookId" input-align="right" label-width="auto" />
<van-field readonly label="会计科目" v-if="accountType=='银行存款'&&form.managementControlType=='2'" v-model="centralSubjectId" input-align="right" label-width="auto" />
<van-field readonly label="账户名称" v-model="form.accountName" input-align="right" label-width="auto"/>
<van-field readonly label="银行账户" v-if="accountType=='银行存款'" v-model="form.bankAccountNumber" input-align="right" label-width="auto"/>
<van-field readonly label="开户银行" v-if="accountType=='银行存款'" v-model="form.bankName" input-align="right" label-width="auto"/>
<van-field readonly label="联行号" v-if="accountType=='银行存款'" v-model="form.paymentLines" input-align="right" label-width="auto"/>
<van-field readonly label="关联科目" v-model="subjectValue" input-align="right" label-width="auto" />
<van-field readonly label="科目名称" v-if="accountType=='银行存款'" v-model="form.subjectNameAll" input-align="right" label-width="auto" />
<van-field readonly label="支付口令" v-if="accountType=='银行存款'" v-model="form.site" input-align="right" label-width="auto"/>
<van-field readonly label="手机号" v-if="accountType=='银行存款'&&bankType=='建设银行'" v-model="form.alternateField1" input-align="right" label-width="auto"/>
<van-field readonly label="账户类别" v-model="bankAccountType" input-align="right" label-width="auto"/>
<van-field readonly label="开户银行地址" v-if="accountType=='银行存款'" v-model="form.site" input-align="right" label-width="auto"/>
<van-field readonly label="账户密码" v-if="accountType=='银行存款'" v-model="form.accountPassword" input-align="right" label-width="auto"/>
<van-field readonly label="初始余额" v-model="form.initialBalance" input-align="right" label-width="auto"/>
<van-field readonly label="内部账号" v-if="accountType=='银行存款'&&bankType=='农业银行'" v-model="alternateField1" input-align="right" label-width="auto"/>
<van-field readonly label="内部户名" v-if="accountType=='银行存款'&&bankType=='农业银行'" v-model="alternateField2" input-align="right" label-width="auto"/>
<van-field readonly label="账簿号" v-if="accountType=='银行存款'&&bankType=='农业银行'" v-model="alternateField3" input-align="right" label-width="auto"/>
<van-cell title="是否停用" v-if="accountType=='银行存款'" >
<template #right-icon>
{{form.status == 'Y' ? '是':'否'}}
</template>
</van-cell>
</div>
<p class="main_title" v-if="accountType=='银行存款'" >账簿信息</p>
<div class="main_box" v-if="accountType=='银行存款'" >
<van-cell title="账簿是否限额">
<template #right-icon>
{{form.status == 'Y' ? '是':'否'}}
</template>
</van-cell>
<van-field readonly label="单笔交易限额" v-model="form.initialBalance" input-align="right" label-width="auto"/>
<van-cell title="账簿是否透支">
<template #right-icon>
{{form.status == 'Y' ? '是':'否'}}
</template>
</van-cell>
<van-field readonly label="投掷类型" v-model="form.initialBalance" input-align="right" label-width="auto"/>
<van-field readonly label="透支额度(元)" v-model="form.initialBalance" input-align="right" label-width="auto"/>
</div>
</div>
</template>

<script>
import { getAccount , getSubjectDetail } from "@/api/onlineHome/bankAgriculture/paymentAccount";
export default {
name: "paymentAccountDetail",
data() {
return {
showAccountType:false,
showSubjectId:false,

minDate: new Date(),
maxDate: new Date(2025, 10, 1),
currentDate: new Date(),
jgList:{},

accountType:'',
bankType:'',
villageAccountType:'',
taccountId:'',
accountNo:'',
managementControlType:'',
centralBookId:'',
centralSubjectId:'',
bankAccountType:'',
alternateField1:'',
alternateField2:'',
alternateField3:'',
subjectValue:'',
wfydlx:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
subjectDictionaries:[],
typeDictionaries:[],
subjectDeatil:[],

form:{}
};
},
created() {
this.getDetail();
},
methods: {
getDetail(){
getAccount(this.$route.query.id).then((response) => {
// 账户类型
this.houseGetDicts("account_type_cashier").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.typeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.accountType = this.selectDictLabel(res.data, response.data.accountType);
});
getSubjectDetail().then((res) => {
for (var i = 0; i < res.rows.length; i++) {
this.subjectDictionaries.push({text: res.rows[i].subjectNameAll, value: res.rows[i].subjectId});
}
this.subjectValue = this.selectSubject(res.rows , response.data.subjectId);
});
this.form = response.data;
});
},
selectSubject(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].subjectId == ('' + value)) {
actions.push(datas[key].subjectNameAll);
return true;
}
})
return actions.join('');
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 185
- 0
src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountList.vue Datei anzeigen

@@ -0,0 +1,185 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">银农付款账户列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList"
>
<van-swipe-cell v-for="(item,index) in applicationList" :key="index">
<!-- :to="{name:'paymentAccountDetail', query: {id:item.id,type:'modify'}}"-->
<van-cell :title="item.accountType" center >
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn10.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{item.balance}}</span></p>
</template>
<template #default>
<p style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;word-break: break-all;overflow: hidden;">{{item.bankAccountNumber == null || item.bankAccountNumber == '' ? '&nbsp;':item.bankAccountNumber}}</p>
<p style="font-size: 12px;font-weight: normal;color: #878787;display: flex;justify-content: space-between;">
<span style="width: 60%;text-align:left;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;word-break: break-all;overflow: hidden;">{{item.accountName}}</span>
<span :style="{color: item.status == '否' ? '#1D6FE9' : '#FF4646'}">{{item.status == '否' ? '未' : '已'}}停用</span>
</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button square text="修改" type="info" :to="{name:'sunVillagePaymentAccountModify', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { getList , delAccount } from "@/api/onlineHome/bankAgriculture/paymentAccount";
export default {
name: "paymentAccountList",
data() {
return {
applicationList:[],
houseApplyStatus:[],
// 账户类型 字典字典
accountTypeOptions: [],
// 是否停用 字典 sys_yes_no字典
statusOptions: [],
// 查询类型字典
selectTypeOptions: [],
// 来往账标识字典
directionOptions: [],
loading: false,
finished: false,
queryParams:{
pageNum: 1,
pageSize: 10,
},
statusColor:'#1D6FE9'
};
},
created() {
this.getDicts("account_type_cashier").then((response) => {
this.accountTypeOptions = response.data;
});
this.getDicts("sys_yes_no").then((response) => {
this.statusOptions = response.data;
});
this.getDicts("select_type").then((response) => {
this.selectTypeOptions = response.data;
});
this.getDicts("direction").then(response => {
this.directionOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'sunVillagePaymentAccountAdd';
},
getList(){
setTimeout(() => {
getList(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].accountType = this.selectDictLabel(this.accountTypeOptions, response.rows[i].accountType);
response.rows[i].status = this.selectDictLabel(this.statusOptions, response.rows[i].status);
this.applicationList.push(response.rows[i]);
}
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除账户信息?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delAccount(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 0.2rem 3%;
}
/deep/.van-cell__title{
flex: 0.4;
}
/deep/.van-cell__title span{
font-family: Arial;
font-size: 0.4rem;
font-weight: normal;

}
/deep/.van-cell__label span{
color: #1D6FE9;
font-weight: bold;
i{
font-size: 0.2rem;
}
}
.van-cell__label{
font-size: 14Px;
font-weight: bold;
}
/deep/.van-cell__value{
flex: 0.6;
color: #333333;
}
/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>

+ 570
- 0
src/views/sunVillage_info/bankAgriculture/paymentAccount/paymentAccountModify.vue Datei anzeigen

@@ -0,0 +1,570 @@
<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>
<van-form @submit="goModify" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
label="账户类型"
placeholder="请选择"
v-model="accountType"
@click="showAccountType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
/>
<van-popup v-model="showAccountType" position="bottom">
<van-picker
show-toolbar
:columns="typeDictionaries"
@confirm="onConfirmType"
@cancel="showAccountType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="showBankType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="账户分类"
placeholder="请选择"
v-model="villageAccountType"
@click="showVillageAccountType = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择账户分类' }]"
v-if="accountType=='银行存款'&&(form.bankType==1||form.bankType==2)"
/>
<van-popup v-model="showVillageAccountType" position="bottom">
<van-picker
show-toolbar
:columns="villageAccountTypeOptions"
@confirm="onConfirmVillageAccountType"
@cancel="showVillageAccountType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="所属镇账户"
placeholder="请选择"
v-model="taccountId"
@click="showTaccountId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属镇账户' }]"
v-if="accountType=='银行存款'&&(form.bankType=='1'||form.bankType=='2')&&form.villageAccountType!=2"
/>
<van-popup v-model="showTaccountId" position="bottom">
<van-picker
show-toolbar
:columns="taccountIdOptions"
@confirm="onConfirmTaccountId"
@cancel="showTaccountId = false"
/>
</van-popup>
<van-field label="客户编号" v-if="accountType=='银行存款'&&(form.bankType=='1'||form.bankType=='2')" required :rules="[{ required: true , message:'请输入客户编号' }]" v-model="form.cifNo" placeholder="请输入客户编号" input-align="right" label-width="auto"/>
<van-field label="账簿号" v-if="accountType=='银行存款'&&villageAccountType=='多级账簿'" required :rules="[{ required: true , message:'请输入账簿号' }]" v-model="form.accountNo" placeholder="请输入账簿号" input-align="right" label-width="auto"/>
<van-field label="管控类型" v-if="accountType=='银行存款'&&form.bankType==2&&villageAccountType=='多级账簿'">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.managementControlType" @change="onConfirmManagementControlType" required :rules="[{ required: true , message:'请选择管控类型' }]">
<van-radio name="1">账簿余额</van-radio>
<van-radio name="2">中心账簿</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field
readonly
clickable
label="中心账套"
placeholder="请选择"
v-model="centralBookId"
@click="showCentralBookId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
v-if="accountType=='银行存款'&&form.managementControlType=='2'"
/>
<van-popup v-model="showCentralBookId" position="bottom">
<van-picker
show-toolbar
:columns="centralBookIdList"
@confirm="onConfirmCentralBookId"
@cancel="showCentralBookId = false"
/>
</van-popup>
<van-field
readonly
clickable
label="会计科目"
placeholder="请选择"
v-model="centralSubjectId"
@click="showCentralSubjectId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择会计科目' }]"
v-if="accountType=='银行存款'&&form.managementControlType=='2'"
/>
<van-popup v-model="showCentralSubjectId" position="bottom">
<van-picker
show-toolbar
:columns="centralSubjectIdList"
@confirm="onConfirmCentralSubjectId"
@cancel="showCentralSubjectId = false"
/>
</van-popup>
<van-field label="账户名称" required :rules="[{ required: true , message:'请输入账户名称' }]" v-model="form.accountName" placeholder="请输入账户名称" input-align="right" label-width="auto"/>
<van-field label="银行账户" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入银行账户' }]" v-model="form.bankAccountNumber" placeholder="请输入银行账户" input-align="right" label-width="auto" required/>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
v-model="form.bankName"
@click="showBankDeposit = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
v-if="accountType=='银行存款'"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositList"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.paymentLines" placeholder="请输入联行号" input-align="right" label-width="auto" required/>
<van-field
readonly
clickable
label="关联科目"
placeholder="请选择"
v-model="subjectDeatil"
@click="showSubjectId = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择关联科目' }]"
/>
<van-popup v-model="showSubjectId" position="bottom">
<van-picker
show-toolbar
:columns="subjectDictionaries"
@confirm="onConfirmSubject"
@cancel="showSubjectId = false"
/>
</van-popup>
<van-field label="开户银行地址" v-if="accountType=='银行存款'" :rules="[{ required: true , message:'请输入开户银行地址' }]" v-model="form.site" placeholder="请输入开户银行地址" input-align="right" label-width="auto" required/>
<van-field label="支付口令" v-if="accountType=='银行存款'" name="validator" :rules="[{ validator , message:'支付口令:请输入六位以上数字' }]" v-model="form.accountPassword" placeholder="请输入支付口令" input-align="right" label-width="auto" required/>
<van-field label="账户类型" v-if="accountType=='银行存款'" required >
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.bankAccountType" required :rules="[{ required: true , message:'请选择账户类型' }]">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="初始余额" v-model="form.initialBalance" required :rules="[{ required: true , message:'请输入初始余额' }]" placeholder="请输入初始余额" input-align="right" label-width="auto"/>
<van-field label="内部账号" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField1" required :rules="[{ required: true , message:'请输入内部账号' }]" placeholder="请输入内部账号" input-align="right" label-width="auto"/>
<van-field label="内部户名" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField2" required :rules="[{ required: true , message:'请输入内部户名' }]" placeholder="请输入内部户名" input-align="right" label-width="auto"/>
<van-field label="账簿号" v-if="accountType=='银行存款'&&form.bankType=='3'" v-model="form.alternateField3" required :rules="[{ required: true , message:'请输入账簿号' }]" placeholder="请输入账簿号" input-align="right" label-width="auto"/>
<van-field label="手机号码" v-if="accountType=='银行存款'&&form.bankType=='4'" v-model="form.alternateField1" required :rules="[{ required: true , message:'请输入手机号' }]" placeholder="请输入手机号" input-align="right" label-width="auto"/>
<van-field label="是否停用" required >
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.status" required :rules="[{ required: true , message:'请选择是否停用' }]">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
</div>
<p class="main_title" v-if="villageAccountType=='多级账簿'">账簿信息</p>
<div class="main_box" v-if="villageAccountType=='多级账簿'">
<van-field label="账簿是否限额" disabled>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.alternateField1" :disabled="true">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="单笔交易限额" v-model="form.alternateField2" placeholder="0.00" input-align="right" label-width="auto" :disabled="true"/>
<van-field label="账簿是否透支" disabled>
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.alternateField3" :disabled="true">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-field>
<van-field label="透支类型" v-model="form.alternateField4" placeholder="无" input-align="right" label-width="auto" :disabled="true"/>
<van-field label="透支额度(元)" v-model="form.alternateField5" placeholder="0.00" input-align="right" label-width="auto" :disabled="true"/>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { getAccount , getSubjectDetail , updateAccount,listDeposit,queryTaccount,getCentralBooks } from "@/api/onlineHome/bankAgriculture/paymentAccount";
import {getCentralSubjects} from "../../../../api/onlineHome/bankAgriculture/paymentAccount";
export default {
name: "paymentAccountModify",
data() {
return {
showCentralSubjectId:false,
showCentralBookId:false,
showManagementControlType:false,
showTaccountId:false,
showVillageAccountType:false,
villageAccountType:null,
showAccountType:false,
showSubjectId:false,
showBankType:false,
minDate: new Date(),
showBankDeposit:false,
maxDate: new Date(2025, 10, 1),
currentDate: new Date(),
jgList:{},
managementControlType:'',
taccountId:'',
accountType:'',
bankType:'',
centralBookId:'',
centralSubjectId:'',
jglx:'',
wfydlx:'',
wfydlxDictionaries:[],
jglxDictionaries:[],
subjectDictionaries:[],
typeDictionaries:[],
villageAccountTypeOptions:[],
taccountIdOptions:[],
centralBookIdList:[],
centralSubjectIdList:[],
// 管控类型 == 中心账套时选择中心账套
centralBooks: [],
// 管控类型字典
managementControlTypeOptions: [],
bankDepositList:[],
// 所属银行字典
bankTypeOptions: [],
subjectDeatil:'',
bankDepositQueryParams: {
bookId: null,
deptId: null,
payee: null,
payeeAccount: null,
bankDeposit: null,
payeeType:null,
bankType:null,
status: "0",
},
form:{
accountType: "102",
bankUseType:"1",
bankAccountType: "1",
villageAccountType: "2",
status: "N",
}
};
},
created() {
this.getTaList();
this.getDetail();
},
methods: {
validator(val){
return /^\d{6,}$/.test(val);
},
getDetail(){
getAccount(this.$route.query.id).then((response) => {
// 账户类型
this.houseGetDicts("account_type_cashier").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.typeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.accountType = this.selectDictLabel(res.data, response.data.accountType);
});
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
this.bankType = this.selectDictLabel(res.data, response.data.bankType);
}
});
this.getDicts("village_account_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.villageAccountTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
this.villageAccountType = this.selectDictLabel(res.data, response.data.villageAccountType);
}
});
getSubjectDetail().then((res) => {
for (var i = 0; i < res.rows.length; i++) {
this.subjectDictionaries.push({text: res.rows[i].subjectNameAll, value: res.rows[i].subjectId});
}
this.subjectDeatil = this.selectSubject(res.rows , response.data.subjectId);
});

queryTaccount({
bankType:response.data.bankType
}).then(res => {
this.taccountIdOptions = res.rows;
for (var i = 0; i < res.rows.length; i++) {
this.$set(this.taccountIdOptions[i], "text",res.rows[i].payee);
this.$set(this.taccountIdOptions[i], "value",res.rows[i].id);
if(response.data.taccountId==res.rows[i].id){
this.taccountId= res.rows[i].payee
}
}
});
if(response.data.centralBookId!=null&&response.data.centralBookId!=""&&response.data.managementControlType=="2"){
getCentralBooks({yinnongTaccountId: response.data.taccountId}).then((res) => {
this.centralBookIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralBookIdList[i], "text",res.data[i].bookName);
this.$set(this.centralBookIdList[i], "value",res.data[i].id);
}
this.centralBookId = this.selectSubject(res.data , response.data.centralBookId);
});
if(response.data.centralSubjectId!=null&&response.data.centralSubjectId!=""){
getCentralSubjects({bookId: response.data.centralBookId}).then((res) => {
this.centralSubjectIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralSubjectIdList[i], "text",res.data[i].subjectName);
this.$set(this.centralSubjectIdList[i], "value",res.data[i].subjectId);
}
this.centralSubjectId = this.selectSubject(res.data , response.data.centralSubjectId);
})
}
if(response.data.bankDeposit!=null&&response.data.bankDeposit!=""){
this.bankDepositQueryParams.bankType = response.data.bankType;
listDeposit(this.bankDepositQueryParams).then(response => {
this.bankDepositList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.$set(this.bankDepositList[i], "text",response.rows[i].bankDeposit);
this.$set(this.bankDepositList[i], "value",response.rows[i].bankDeposit);
}
this.bankDeposit = this.selectSubject(response.rows , response.data.bankDeposit);
})
}
}
this.form = response.data;
});
},
getTaList(){
let params= {
// 分页
pageNum: 1,
pageSize: 100,
bankType:this.form.bankType,
}
// this.getCentralBookOptions();
queryTaccount(params).then(res => {
this.taccountIdOptions = res.rows;
for (var i = 0; i < res.rows.length; i++) {
this.$set(this.taccountIdOptions[i], "text",res.rows[i].payee);
this.$set(this.taccountIdOptions[i], "value",res.rows[i].id);
}
});
},
getError(e){
console.log(e)
this.$notify({ type: 'danger', message: e.errors[0].message });
},
selectSubject(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].subjectId == ('' + value)) {
actions.push(datas[key].subjectNameAll);
return true;
}
})
return actions.join('');
},
onConfirmCentralBookId(val){
this.showCentralBookId = false
this.$set(this.form, "centralBookId",val.value);
this.centralBookId = val.text
getCentralSubjects({bookId: val.id}).then((res) => {
this.centralSubjectIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralSubjectIdList[i], "text",res.data[i].subjectName);
this.$set(this.centralSubjectIdList[i], "value",res.data[i].subjectId);
}
})
},
onConfirmCentralSubjectId(val){
this.showCentralSubjectId = false
this.$set(this.form, "centralSubjectId",val.value);
this.centralSubjectId = val.text
},
onConfirmManagementControlType(val){
if(val==2){
getCentralBooks({yinnongTaccountId: this.form.taccountId}).then((res) => {
this.centralBookIdList = res.data;
for (var i = 0; i < res.data.length; i++) {
this.$set(this.centralBookIdList[i], "text",res.data[i].bookName);
this.$set(this.centralBookIdList[i], "value",res.data[i].id);
}
});
}
},
onConfirmBankDeposit(val){
this.showBankDeposit = false
this.$set(this.form, "bankName", val.bankDeposit);
this.$set(this.form, "paymentLines", val.payeePaymentLines);
this.$set(this.form, "alternateField10", val.institutionNumber);
},
onConfirmTaccountId(val){
this.showTaccountId = false
this.taccountId = val.text
console.log(val)
this.$set(this.form, "taccountId", val.value);
this.$set(this.form, "cifNo", val.cifNo);
this.$set(this.form, "accountName", val.payee);
this.$set(this.form, "managementControlType", val.managementControlType);
this.$set(this.form, "accountPassword", val.accountPassword);
this.$set(this.form, "centralBookId", val.centralBookId);
this.taccountIdOptions.map(res => {
if(res.id==val.value){
if(this.form.villageAccountType === '3'){
this.$set(this.form, "bankAccountNumber", res.payeeAccount);
}
//this.form.bankName = res.bankDeposit;
this.$set(this.form, "bankName", res.bankDeposit);
this.$set(this.form, "paymentLines", res.payeePaymentLines);
}
})
},
onConfirmBankType(val){
this.showBankType = false
this.bankType = val.text
this.$set(this.form, "bankType", val.value);
this.getTaList();
this.$set(this.form, "bankName", '');
this.$set(this.form, "paymentLines", '');
this.bankDepositQueryParams.bankType = val.value;
listDeposit(this.bankDepositQueryParams).then(response => {
this.bankDepositList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.$set(this.bankDepositList[i], "text",response.rows[i].bankDeposit);
this.$set(this.bankDepositList[i], "value",response.rows[i].bankDeposit);
}
})
},
onConfirmVillageAccountType(val){
this.showVillageAccountType = false
this.villageAccountType = val.text
this.$set(this.form, "villageAccountType", val.value);
},
onConfirmSubject(data){
this.subjectDeatil = data.text;
this.form.subjectId = data.value;
this.form.subjectNameAll = data.text;
this.showSubjectId = false;
},
onConfirmType(data){
this.accountType = data.text;
this.form.accountType = data.value;
this.showAccountType = false;
},
goModify(){
console.log(this.form)
this.form.balance = this.form.initialBalance;
updateAccount(this.form).then((response) => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 1998
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1063
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd10.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2342
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd11.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2390
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd12.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1931
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd2.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 952
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd3.vue Datei anzeigen

@@ -0,0 +1,952 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<van-form @submit="getChange" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择申请时间' }]"
v-model="form.applyDate"
label="申请时间"
placeholder="请选择申请时间"
@click="showlasj = true"
input-align="right"
right-icon="arrow-down"
/>
<van-popup v-model="showlasj" position="bottom">
<van-datetime-picker
v-model="currentDate"
type="date"
title="选择年月日"
:min-date="minDate"
:max-date="maxDate"
@confirm="onConfirmLasj"
@cancel="showlasj = false"
/>
</van-popup>
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择资金支出类别' }]"
label="资金支出类别"
placeholder="请选择"
v-model="capitalExpenditureType"
@click="showcapital = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
/>
<van-popup v-model="showcapital" position="bottom">
<van-picker
show-toolbar
:columns="capitalExpenditureTypeOptions"
@confirm="onConfirmCapital"
@cancel="showcapital = false"
/>
</van-popup>
<van-field
readonly
required
label="支出总金额"
v-model="form.expenditureAmount"
placeholder="根据下方收款金额自动核算"
input-align="right"
label-width="auto"
/>

</div>

<div class="main_box" style="margin-top: 10px;">
<van-field
label="付款事由"
v-model="form.remark"
type="textarea"
placeholder="请输入付款事由"
input-align="right"
rows="3"
label-width="auto"
required
:rules="[{ required: true , message:'请输入付款事由' }]"
/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/>
</div>

<p class="main_title" v-if="capitalExpenditureOpen">关联项目</p>
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;">
<van-field
readonly
clickable
label="项目名称"
placeholder="请选择"
v-model="projectForm.projectName"
@click="showproject = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择项目名称' }]"
/>
<van-popup v-model="showproject" position="bottom">
<van-picker
show-toolbar
:columns="projectListShow"
@confirm="onConfirmProject"
@cancel="showproject = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入承建单位' }]" v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入合同价款' }]" v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="工程款类型"
placeholder="请选择"
v-model="projectFundType"
@click="showFundType = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择工程款类型' }]"
/>
<van-popup v-model="showFundType" position="bottom">
<van-picker
show-toolbar
:columns="projectFundTypeOptions"
@confirm="onConfirmFundType"
@cancel="showFundType = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入工程发票号' }]" v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/>
</div>

<p class="main_title">付款方信息</p>
<div class="main_box">
<!-- <van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/>-->
<van-field
readonly
clickable
label="付款方"
placeholder="请选择付款方"
v-model="form.payer"
@click="showpayer = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择付款方' }]"
/>
<van-popup v-model="showpayer" position="bottom">
<van-picker
show-toolbar
:columns="payerOptions"
@confirm="onConfirmPayer($event)"
@cancel="showpayer = false"
/>
</van-popup>
<van-field :rules="[{ required: true , message:'请输入付款方账户' }]" required label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/>
</div>

<p class="main_title">收款方信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p>
<div class="main_box" style="margin-bottom: 15px;">
<van-cell title="收款账户类型">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" />
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field
readonly
clickable
label="收款方"
placeholder="请选择"
v-model="item.payee"
@click="item.showPayee = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择收款方' }]"
/>
<van-popup v-model="item.showPayee" position="bottom">
<van-picker
show-toolbar
:columns="payeeList"
@confirm="onConfirmPayee($event,index)"
@cancel="item.showPayee = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'收款账户不能为空' }]" v-model="item.payeeAccount" label="收款账户" placeholder="请选择收款方" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'开户银行不能为空' }]" v-model="item.bankDeposit" label="开户银行" placeholder="请选择收款方" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入金额' }]" v-model="item.incomeAmount" type="number" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto" @change="moneyChange"/>
<van-field
readonly
label="所属银行"
placeholder="请选择收款方"
v-model="item.bankTypeText"
@click="item.showbankType = true"
input-align="right"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" @delete="deleteFile"></van-uploader>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="12" align="center">
<!-- @click="goUpdate"-->
<van-button type="info" native-type="submit" @click="buttonType='update'" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
<van-col span="12" align="center">
<!-- @click="goAdd"-->
<van-button type="info" native-type="submit" @click="buttonType='add'" class="submitButton">保存并提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addTransfer , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit , getAccount ,getQmyeFlow} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
attachmentList,
commonAttach,
listTaccount,
listVaccount
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
import Dialog from "vant/lib/dialog";
export default {
name: "approvalAdd3",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,
showpayer:false,

buttonType:'a',

minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},
fileList:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],
payerOptions:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'2'
},
projectFundType:'',
uploadFiles:[],
};
},
created() {
this.reset();
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
let params1={
townAccountType:'3'
}
listTaccount(params1).then((response) => {
console.log(response)
response.rows.map((res,index) => {
if(res.townAccountType=='3'){
res['payerFrom'] = '3'
this.payerOptions.push(res);
this.payerOptions[index].text = res.payee;
this.payerOptions[index].value = res.id;
}
})
});
this.getDictionaries();
},
methods: {
// 表单重置
reset() {
this.form = {
id: null,
upId: null,
downId: null,
orderId: null,
cashierId: null,
transferType: '3',
accountType: '2',
explainSituation: null,
succeedAmount: null,
payer: null,
payerAccount: null,
operatorCode: null,
enterpriseCode: null,
expenditureAmount: null,
capitalExpenditureType: '1',
remark: null,
transferStatus: "0",
auditStatus: "0",
paymentState: "1",
bankPriority: "0",
clientPriority: "0"
};
this.processList = {}
this.projectForm={
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
}
},
goFlow(){
if(this.form.approvalMode == '1' && this.form.approvalTemplateId != undefined && this.form.approvalTemplateId != "undefined"){
window.location='approvalProcess3?approvalTemplateId='+this.form.approvalTemplateId+'&approvalMode='+this.form.approvalMode;
}else{
this.$notify({ type: 'danger', message: '无审批流程!' });
}
},
getChange(){
console.log(this.buttonType)
if(this.buttonType == 'update'){
console.log('update')
this.goUpdate();
}else if(this.buttonType == 'add'){
console.log('add')
this.goAdd();
}
},
getDictionaries(){
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.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});
this.getPayeeList();
},
getError(e){
console.log(e)
this.$notify({ type: 'danger', message: e.errors[0].message });
},
addChargeItme(index){
if(this.chargeItme.length>0&&this.chargeItme[this.chargeItme.length-1].payee == ''){
this.$notify({ type: 'danger', message: '请勿添加多个空列表信息' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].incomeAmount == ''){
this.$notify({ type: 'danger', message: '请输入收入金额!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].payeeAccount == ''){
this.$notify({ type: 'danger', message: '请输入收款账户!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankDeposit == ''){
this.$notify({ type: 'danger', message: '请输入开户银行!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankType == ''){
this.$notify({ type: 'danger', message: '请选择所属银行!' });
return;
}
this.getDicts("bank_type").then(res => {
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
bankTypeText: "", //所属银行
showPayee:false,
showbankType:false
});
});
},
getPayeeList() {
let params = {
villageAccountType : 1,
status:'0',
accountType : this.form.accountType
}
console.log(params)
listVaccount(params).then(response => {
console.log(response)
if(response.rows.length>0){
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
}
});
},
payeeDictLabel(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
this.projectList.map(res => {
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
}
})
this.showproject = false;
},
onConfirmPayee(data,index){
console.log(data,index)
for (let i = 0 ; i < this.chargeItme.length ; i++){
this.chargeItme[i].showPayee = false;
}

this.chargeItme[index].payee = data.text;
this.chargeItme[index].payeeId = data.value;
this.chargeItme[index].showpayee = false;
this.payeeSelectChange(data.value , index)
this.onConfirmBankType(data,index);
},
onConfirmBankType(data,index){
this.bankTypeDictionaries.map(res => {
if(res.value==data.bankType){
this.chargeItme[index].bankTypeText = res.text;
this.chargeItme[index].bankType = res.value;
}
})
},
onConfirmPayer(data){
console.log(data)
this.form.payer = data.text;
this.form.cashierId = data.value;
this.form.payerAccount = data.payeeAccount;
this.showpayer = false;
this.accountTypeChange();
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
this.chargeItme = [];
this.payeeList = [];
let params = {
villageAccountType : 1,
status:'0',
accountType : this.form.accountType,
taccountId:this.form.cashierId
}
listVaccount(params).then(response => {
console.log(response)
if(response.rows.length>0){
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
}
});
},
// 钱计算
moneyChange(input) {
console.log(input)
let obj = {};
obj = this.chargeItme.find((account) => {
//model就是上面的数据源
return parseFloat(account.incomeAmount).toFixed(2) === input; //筛选出匹配数据
});
let total = 0;
this.chargeItme.forEach((money) => {
total = (parseFloat(total) + parseFloat(money.incomeAmount)).toFixed(2)
});
this.$set(this.form, "expenditureAmount", total);
},
goAdd(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
if((this.uploadFiles==null||this.uploadFiles.length==0)&&(this.fileList==null||this.fileList.length==0)){
Dialog.confirm({
title: '提示',
message: '此申请单中未上传任何附件,是否确认提交?',
})
.then(() => {
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
addTransfer(this.form).then(response => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
})
.catch(() => {
return false;
});
}else{
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
addTransfer(this.form).then(response => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
}


},
goUpdate(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
console.log(this.form)
addTransfer(this.form).then((response) => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
console.log(this.uploadFiles)
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}

});
},
payeeSelectChange(select, i) {
let obj = {};
let fuzhitype = 0;
obj = this.payeeList.find((account) => {
//model就是上面的数据源
return account.id === select ; //筛选出匹配数据
});
if(this.chargeItme != [] && this.chargeItme.length>1){
this.chargeItme.some((value, index) => {
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i){
fuzhitype = 2;
return true;
}
if(value.accountType != undefined &&value.accountType != '' && obj.accountType != value.accountType&&index!=i){
fuzhitype = 1;
return true;
}
});
}
if(fuzhitype == 0){
this.$set(this.chargeItme[i], "payee",obj.payee)
this.$set(this.chargeItme[i], "bankType", obj.bankType)
this.$set(this.chargeItme[i], "payeeId", obj.id);
this.$set(this.chargeItme[i], "payeeAccount", obj.payeeAccount);
this.$set(this.chargeItme[i], "bankDeposit", obj.bankDeposit);
this.$set(this.chargeItme[i], "accountType", obj.accountType);
}else if(fuzhitype == 1){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '请选择账户类型相同的收款方!' });
}else if(fuzhitype == 2){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '收款方已存在!' });
}
},
selectChange(select) {
let obj = {};
obj = this.payerOptions.find((account) => {
//model就是上面的数据源
return account.id === select; //筛选出匹配数据
});
if(obj.payerFrom==1&&obj.operatorCode != null && obj.operatorCode != "" &&
obj.enterpriseCode != null && obj.enterpriseCode != "" &&
obj.accountPassword != null && obj.accountPassword != ""){
this.$set(this.form, "bookId", obj.bookId);
this.$set(this.form, "deptId", obj.deptId);
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
this.$set(this.form, "operatorCode", obj.operatorCode);
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
this.$set(this.form, "payerFrom", '1');
}else{
if(obj.payerFrom==1){
this.diglogStatus = false;
this.$notify({ type: 'danger', message: "请完善付款方“操作员代码”、“企业编码”、“支付口令”等信息!" });
this.$set(this.form,"payer","")
this.$set(this.form,"payerAccount","")
}else{
this.$set(this.form, "payerFrom", obj.parerFrom);
if(obj.operatorCode!=null&&obj.operatorCode!=''){
this.$set(this.form, "operatorCode", obj.operatorCode);
}else{
this.$set(this.form, "operatorCode", '');
}
if(obj.enterpriseCode!=null&&obj.enterpriseCode!=''){
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
}else{
this.$set(this.form, "enterpriseCode", '');
}
if(obj.accountPassword!=null&&obj.accountPassword!=''){
this.$set(this.form, "accountPassword", obj.accountPassword);
}else{
this.$set(this.form, "accountPassword", '');
}
this.$set(this.form, "bookId",'');
this.$set(this.form, "deptId", '');
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
if(obj.payerFrom==6){
getQmyeFlow(obj.bankAccountNumber).then((response) => {
this.$set(this.form, "payerAccount", response.data);
});
}else {
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
}
}
}
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "upload",
fileType: "0",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{})})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 1141
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd4.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 954
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalAdd5.vue Datei anzeigen

@@ -0,0 +1,954 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<van-form @submit="getChange" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择申请时间' }]"
v-model="form.applyDate"
label="申请时间"
placeholder="请选择申请时间"
@click="showlasj = true"
input-align="right"
right-icon="arrow-down"
/>
<van-popup v-model="showlasj" position="bottom">
<van-datetime-picker
v-model="currentDate"
type="date"
title="选择年月日"
:min-date="minDate"
:max-date="maxDate"
@confirm="onConfirmLasj"
@cancel="showlasj = false"
/>
</van-popup>
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择资金支出类别' }]"
label="资金支出类别"
placeholder="请选择"
v-model="capitalExpenditureType"
@click="showcapital = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
/>
<van-popup v-model="showcapital" position="bottom">
<van-picker
show-toolbar
:columns="capitalExpenditureTypeOptions"
@confirm="onConfirmCapital"
@cancel="showcapital = false"
/>
</van-popup>
<van-field
readonly
required
label="支出总金额"
v-model="form.expenditureAmount"
placeholder="根据下方收款金额自动核算"
input-align="right"
label-width="auto"
/>

</div>

<div class="main_box" style="margin-top: 10px;">
<van-field
label="付款事由"
v-model="form.remark"
type="textarea"
placeholder="请输入付款事由"
input-align="right"
rows="3"
label-width="auto"
required
:rules="[{ required: true , message:'请输入付款事由' }]"
/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/>
</div>

<p class="main_title" v-if="capitalExpenditureOpen">关联项目</p>
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;">
<van-field
readonly
clickable
label="项目名称"
placeholder="请选择"
v-model="projectForm.projectName"
@click="showproject = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择项目名称' }]"
/>
<van-popup v-model="showproject" position="bottom">
<van-picker
show-toolbar
:columns="projectListShow"
@confirm="onConfirmProject"
@cancel="showproject = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入承建单位' }]" v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入合同价款' }]" v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="工程款类型"
placeholder="请选择"
v-model="projectFundType"
@click="showFundType = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择工程款类型' }]"
/>
<van-popup v-model="showFundType" position="bottom">
<van-picker
show-toolbar
:columns="projectFundTypeOptions"
@confirm="onConfirmFundType"
@cancel="showFundType = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入工程发票号' }]" v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/>
</div>

<p class="main_title">付款方信息</p>
<div class="main_box">
<!-- <van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/>-->
<van-field
readonly
clickable
label="付款方"
placeholder="请选择付款方"
v-model="form.payer"
@click="showpayer = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择付款方' }]"
/>
<van-popup v-model="showpayer" position="bottom">
<van-picker
show-toolbar
:columns="payerOptions"
@confirm="onConfirmPayer($event)"
@cancel="showpayer = false"
/>
</van-popup>
<van-field :rules="[{ required: true , message:'请输入付款方账户' }]" required label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/>
</div>

<p class="main_title">收款方信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p>
<div class="main_box" style="margin-bottom: 15px;">
<van-cell title="收款账户类型">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" />
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field
readonly
clickable
label="收款方"
placeholder="请选择"
v-model="item.payee"
@click="item.showPayee = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择收款方' }]"
/>
<van-popup v-model="item.showPayee" position="bottom">
<van-picker
show-toolbar
:columns="payeeList"
@confirm="onConfirmPayee($event,index)"
@cancel="item.showPayee = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'收款账户不能为空' }]" v-model="item.payeeAccount" label="收款账户" placeholder="请选择收款方" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'开户银行不能为空' }]" v-model="item.bankDeposit" label="开户银行" placeholder="请选择收款方" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入金额' }]" v-model="item.incomeAmount" type="number" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto" @change="moneyChange"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择收款方"
v-model="item.bankTypeText"
@click="item.showbankType = true"
input-align="right"
required
:rules="[{ required: true , message:'所属银行不能为空 ' }]"
/>
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" @delete="deleteFile"></van-uploader>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="12" align="center">
<!-- @click="goUpdate"-->
<van-button type="info" native-type="submit" @click="buttonType='update'" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
<van-col span="12" align="center">
<!-- @click="goAdd"-->
<van-button type="info" native-type="submit" @click="buttonType='add'" class="submitButton">保存并提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addTransfer , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit , getAccount ,getQmyeFlow} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {
attachmentList,
commonAttach,
listTaccount,
listVaccount
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import Dialog from "vant/lib/dialog";
export default {
name: "approvalAdd5",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,
showpayer:false,

buttonType:'a',

minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},
fileList:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],
payerOptions:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
projectFundType:'',
uploadFiles:[],
};
},
created() {
this.reset();
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
this.projectList = response.rows;
for (let i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (let i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
let params1={
townAccountType:'2'
}
listTaccount(params1).then((response) => {
console.log(response)
response.rows.map((res,index) => {
if(res.townAccountType=='2'){
res['payerFrom'] = '2'
this.payerOptions.push(res);
console.log(res)
this.payerOptions[index].text = res.payee;
this.payerOptions[index].value = res.id;
}
})
});
this.getDictionaries();
},
methods: {
// 表单重置
reset() {
this.form = {
id: null,
upId: null,
downId: null,
orderId: null,
cashierId: null,
transferType: '5',
accountType: '2',
explainSituation: null,
succeedAmount: null,
payer: null,
payerAccount: null,
operatorCode: null,
enterpriseCode: null,
expenditureAmount: null,
capitalExpenditureType: '1',
remark: null,
transferStatus: "0",
auditStatus: "0",
paymentState: "1",
bankPriority: "0",
clientPriority: "0"
};
this.processList = {}
this.projectForm={
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
}
},
goFlow(){
if(this.form.approvalMode == '1' && this.form.approvalTemplateId != undefined && this.form.approvalTemplateId != "undefined"){
window.location='approvalProcess3?approvalTemplateId='+this.form.approvalTemplateId+'&approvalMode='+this.form.approvalMode;
}else{
this.$notify({ type: 'danger', message: '无审批流程!' });
}
},
getChange(){
console.log(this.buttonType)
if(this.buttonType == 'update'){
console.log('update')
this.goUpdate();
}else if(this.buttonType == 'add'){
console.log('add')
this.goAdd();
}
},
getDictionaries(){
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.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
});

},
getError(e){
console.log(e)
this.$notify({ type: 'danger', message: e.errors[0].message });
},
addChargeItme(index){
if(this.chargeItme.length>0&&this.chargeItme[this.chargeItme.length-1].payee == ''){
this.$notify({ type: 'danger', message: '请勿添加多个空列表信息' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].incomeAmount == ''){
this.$notify({ type: 'danger', message: '请输入收入金额!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].payeeAccount == ''){
this.$notify({ type: 'danger', message: '请输入收款账户!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankDeposit == ''){
this.$notify({ type: 'danger', message: '请输入开户银行!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankType == ''){
this.$notify({ type: 'danger', message: '请选择所属银行!' });
return;
}
this.getDicts("bank_type").then(res => {
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
bankTypeText:"", //所属银行
showPayee:false,
showbankType:false
});
});
this.getPayeeList();
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
if(this.form.cashierId==null||this.form.cashierId==""){
this.$notify({ type: 'danger', message: '请先选择付款方!' });
return;
}else {
this.queryParams.taccountId = parseInt(this.form.cashierId)
listVaccount(this.queryParams).then((response) => {
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
});
}
},
payeeDictLabel(datas, value) {
let actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
this.projectList.map(res => {
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
}
})
this.showproject = false;
},
onConfirmPayee(data,index){
for (let i = 0 ; i < this.chargeItme.length ; i++){
this.chargeItme[i].showPayee = false;
}
this.chargeItme[index].payee = data.text;
this.chargeItme[index].payeeId = data.value;
this.chargeItme[index].showpayee = false;
this.payeeSelectChange(data.value , index)
this.onConfirmBankType(data,index);
},
onConfirmBankType(data,index){
console.log(this.bankTypeDictionaries)
this.bankTypeDictionaries.map(res => {
if(res.value==data.bankType){
this.chargeItme[index].bankTypeText = res.text;
this.chargeItme[index].bankType = res.value;
}
})
},
onConfirmPayer(data){
console.log(data)
this.form.payer = data.text;
this.form.cashierId = data.value;
this.form.payerAccount = data.payeeAccount;
this.showpayer = false;
// this.selectChange(data.value)
this.accountTypeChange();
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
this.payeeList = [];
this.chargeItme = [];
this.queryParams.accountType = this.form.accountType
if(this.form.cashierId==null||this.form.cashierId==""){
this.$notify({ type: 'danger', message: '请先选择付款方!' });
return;
}else {
this.queryParams.taccountId = parseInt(this.form.cashierId)
console.log(this.queryParams)
listVaccount(this.queryParams).then((response) => {
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
});
}
},
// 钱计算
moneyChange(input) {
console.log(input)
let obj = {};
obj = this.chargeItme.find((account) => {
//model就是上面的数据源
return parseFloat(account.incomeAmount).toFixed(2) === input; //筛选出匹配数据
});
let total = 0;
this.chargeItme.forEach((money) => {
total = (parseFloat(total) + parseFloat(money.incomeAmount)).toFixed(2)
});
this.$set(this.form, "expenditureAmount", total);
},
goAdd(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
if((this.uploadFiles==null||this.uploadFiles.length==0)&&(this.fileList==null||this.fileList.length==0)){
Dialog.confirm({
title: '提示',
message: '此申请单中未上传任何附件,是否确认提交?',
})
.then(() => {
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
addTransfer(this.form).then(response => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
})
.catch(() => {
return false;
});
}else{
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
addTransfer(this.form).then(response => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(response.data.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
}


},
goUpdate(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
console.log(this.form)
addTransfer(this.form).then((response) => {
this.projectForm.outId = response.data.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
console.log(this.uploadFiles)
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", response.data.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "upload");
params.append("fileType", "0");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}

});
},
payeeSelectChange(select, i) {
let obj = {};
let fuzhitype = 0;
obj = this.payeeList.find((account) => {
//model就是上面的数据源
return account.id === select ; //筛选出匹配数据
});
if(this.chargeItme != [] && this.chargeItme.length>1){
this.chargeItme.some((value, index) => {
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i){
fuzhitype = 2;
return true;
}
if(value.accountType != undefined &&value.accountType != '' && obj.accountType != value.accountType&&index!=i){
fuzhitype = 1;
return true;
}
});
}
if(fuzhitype == 0){
this.$set(this.chargeItme[i], "payee",obj.payee)
this.$set(this.chargeItme[i], "bankType", obj.bankType)
this.$set(this.chargeItme[i], "payeeId", obj.id);
this.$set(this.chargeItme[i], "payeeAccount", obj.payeeAccount);
this.$set(this.chargeItme[i], "bankDeposit", obj.bankDeposit);
this.$set(this.chargeItme[i], "accountType", obj.accountType);
}else if(fuzhitype == 1){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '请选择账户类型相同的收款方!' });
}else if(fuzhitype == 2){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '收款方已存在!' });
}
},
selectChange(select) {
let obj = {};
obj = this.payerOptions.find((account) => {
//model就是上面的数据源
return account.id === select; //筛选出匹配数据
});
if(obj.payerFrom==1&&obj.operatorCode != null && obj.operatorCode != "" &&
obj.enterpriseCode != null && obj.enterpriseCode != "" &&
obj.accountPassword != null && obj.accountPassword != ""){
this.$set(this.form, "bookId", obj.bookId);
this.$set(this.form, "deptId", obj.deptId);
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
this.$set(this.form, "operatorCode", obj.operatorCode);
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
this.$set(this.form, "payerFrom", '1');
}else{
if(obj.payerFrom==1){
this.diglogStatus = false;
this.$notify({ type: 'danger', message: "请完善付款方“操作员代码”、“企业编码”、“支付口令”等信息!" });
this.$set(this.form,"payer","")
this.$set(this.form,"payerAccount","")
}else{
this.$set(this.form, "payerFrom", obj.parerFrom);
if(obj.operatorCode!=null&&obj.operatorCode!=''){
this.$set(this.form, "operatorCode", obj.operatorCode);
}else{
this.$set(this.form, "operatorCode", '');
}
if(obj.enterpriseCode!=null&&obj.enterpriseCode!=''){
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
}else{
this.$set(this.form, "enterpriseCode", '');
}
if(obj.accountPassword!=null&&obj.accountPassword!=''){
this.$set(this.form, "accountPassword", obj.accountPassword);
}else{
this.$set(this.form, "accountPassword", '');
}
this.$set(this.form, "bookId",'');
this.$set(this.form, "deptId", '');
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
if(obj.payerFrom==6){
getQmyeFlow(obj.bankAccountNumber).then((response) => {
this.$set(this.form, "payerAccount", response.data);
});
}else {
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
}
}
}
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "upload",
fileType: "0",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{})})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 426
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval.vue Datei anzeigen

@@ -0,0 +1,426 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="backDone"
>
<template #title>
<p style="font-weight: bold;">转账/还款审批</p>
</template>
<template #right>
<van-icon name="../../../static/images/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field 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 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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">收款方信息</p>

<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" />

</div>

<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="收款账户" v-model="item.payeeAccount" input-align="right" label-width="auto"/>
<van-field readonly label="开户银行" v-model="item.bankDeposit" input-align="right" label-width="auto"/>
<van-field readonly label="收入金额" v-model="item.incomeAmount" input-align="right" label-width="auto"/>
<van-field readonly label="所属银行" v-model="item.bankTypeText" input-align="right" />
</div>
</div>
<p class="main_title">上传附件(收据)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList1" v-if="fileList1==null||fileList1.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList1" v-if="fileList1!=null&&fileList1.length>0" :deletable="false" :max-count="fileList1.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(收据){{fileList1&&fileList1.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList1" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(发票)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList2" v-if="fileList2==null||fileList2.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList2" v-if="fileList2!=null&&fileList2.length>0" :deletable="false" :max-count="fileList2.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(发票){{fileList2&&fileList2.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList2" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(其他)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList3" v-if="fileList3==null||fileList3.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList3" v-if="fileList3!=null&&fileList3.length>0" :deletable="false" :max-count="fileList3.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(其他){{fileList3&&fileList3.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList3" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<div class="main_box examine_box" v-if="this.$route.query.type != 'done'">
<van-row type="flex" justify="space-between" align="center">
<van-col span="5">审批<br/>意见</van-col>
<van-col span="19">
<van-radio-group v-model="pass" direction="horizontal">
<van-radio name="true">同意</van-radio>
<van-radio name="false">驳回</van-radio>
</van-radio-group>
<van-field rows="2" autosize v-model="comment" type="textarea" placeholder="请输入审批意见"/>
</van-col>
</van-row>
</div>

<div style="margin: 16px 2%;" v-if="this.$route.query.type != 'done'">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" @click="submitForm" class="submitButton">提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>

</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , getProjectto , listProject , approval ,listTemplate } from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {attachmentList, systemAttachment} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
export default {
name: "approvalApproval",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},

capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
contractOpen:false,
infoForm:{
infoId:null,
name:null,
code:null,
totalAmount:null,
contractionId:null,
transferId:null
},
projectFundType:'',
fileList1:[],
fileList2:[],
fileList3:[],
uploadFiles:[],
// 审核意见默认值
pass: "true",
comment: "同意",
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.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
backDone(){
if(this.$route.query.type != 'done'){
this.$router.push({name:'yinnongDone',query: {activeName:'1'}})
}else{
this.$router.push({name:'yinnongDone',query: {activeName:'2'}})
}
},
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else 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);
}
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
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
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
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
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
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
},
/** 提交按钮 */
submitForm() {
const data = {
taskId: this.$route.query.taskId,
instanceId: this.form.instanceId,
variables: JSON.stringify({
comment: this.comment,
pass: this.pass,
}),
};
approval(data).then((response) => {
if(response.code==200 && response.msg=="操作成功"){
this.$toast.success("操作成功");
setTimeout(function(){
history.go(-1)
},2000)
} else{
this.$toast.success("操作失败");
}
});
},
},watch: {
pass: function (val) {
this.comment = val === "true" ? "同意" : "驳回";
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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: 96%;
margin: 0 auto;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
.deleteFamily{
position: absolute;
top: 0rem;
right: 6%;
z-index: 9;
border-radius: 50%;
}
.examine_box{
background-color: #1D6FE9!important;
padding: 0.18rem!important;
padding-left: 0!important;
border-radius: 0.15rem!important;
margin-top: 0.3rem!important;
}
.examine_box .van-col:first-child{
color: #FFF!important;
font-size: 0.45rem!important;
text-align: center!important;
}
.examine_box .van-col:last-child{
background-color: #FFF!important;
border-radius: 0.15rem!important;
overflow: hidden!important;
.van-radio-group--horizontal{
padding: 0.2rem 0;
border-bottom: 1px solid #eee;
}
}
/deep/.van-radio--horizontal{
margin-left: 20px;
margin-right: 0;
}
</style>

+ 422
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval10.vue Datei anzeigen

@@ -0,0 +1,422 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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 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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">收款方信息</p>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="提款人" v-model="item.drawer" 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.remark" input-align="right" />
</div>
</div>
<p class="main_title">上传附件(收据)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList1" v-if="fileList1==null||fileList1.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList1" v-if="fileList1!=null&&fileList1.length>0" :deletable="false" :max-count="fileList1.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(收据){{fileList1&&fileList1.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList1" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(发票)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList2" v-if="fileList2==null||fileList2.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList2" v-if="fileList2!=null&&fileList2.length>0" :deletable="false" :max-count="fileList2.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(发票){{fileList2&&fileList2.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList2" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(其他)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList3" v-if="fileList3==null||fileList3.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList3" v-if="fileList3!=null&&fileList3.length>0" :deletable="false" :max-count="fileList3.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(其他){{fileList3&&fileList3.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList3" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<div class="main_box examine_box" v-if="this.$route.query.type != 'done'">
<van-row type="flex" justify="space-between" align="center">
<van-col span="5">审批<br/>意见</van-col>
<van-col span="19">
<van-radio-group v-model="pass" direction="horizontal">
<van-radio name="true">同意</van-radio>
<van-radio name="false">驳回</van-radio>
</van-radio-group>
<van-field rows="2" autosize v-model="comment" type="textarea" placeholder="同意申请宅基地"/>
</van-col>
</van-row>
</div>

<div style="margin: 16px 2%;" v-if="this.$route.query.type != 'done'">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" @click="submitForm" class="submitButton">提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</div>
</template>

<script>
import { getCash , listCashdetailByCashId , listPayee , getProjectto , listProject , addProjectto , customSubmit ,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {approval, attachmentList, commonAttach} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail10",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

minDate: new Date(),
maxDate: new Date(2050, 10, 1),
currentDate: new Date(),
form:{},
fileList1:[],
fileList2:[],
fileList3:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'2'
},
contractOpen:false,
infoForm:{
infoId:null,
name:null,
code:null,
totalAmount:null,
contractionId:null,
transferId:null
},
projectFundType:'',
uploadFiles:[],
// 审核意见默认值
pass: "true",
comment: "同意",
templateList:[],
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
console.log(response)
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDictionaries();
this.getFileList();
this.getTemplateList()
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess2?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else{
this.showproject = false
}
this.form = response.data;
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
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});
}
});
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData1= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
/** 提交按钮 */
submitForm() {
const data = {
taskId: this.$route.query.taskId,
instanceId: this.form.instanceId,
variables: JSON.stringify({
comment: this.comment,
pass: this.pass,
}),
};
console.log(data);
approval(data).then((response) => {
if(response.code==200 && response.msg=="操作成功"){
this.$toast.success("操作成功");
setTimeout(function(){
history.go(-1)
},2000)
} else{
this.$toast.success("操作失败");
}
});
},
},watch: {
pass: function (val) {
this.comment = val === "true" ? "同意" : "驳回";
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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: 96%;
margin: 0 auto;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
.deleteFamily{
position: absolute;
top: 0rem;
right: 6%;
z-index: 9;
border-radius: 50%;
}
.examine_box{
background-color: #1D6FE9!important;
padding: 0.18rem!important;
padding-left: 0!important;
border-radius: 0.15rem!important;
margin-top: 0.3rem!important;
}
.examine_box .van-col:first-child{
color: #FFF!important;
font-size: 0.45rem!important;
text-align: center!important;
}
.examine_box .van-col:last-child{
background-color: #FFF!important;
border-radius: 0.15rem!important;
overflow: hidden!important;
.van-radio-group--horizontal{
padding: 0.2rem 0;
border-bottom: 1px solid #eee;
}
}
/deep/.van-radio--horizontal{
margin-left: 20px;
margin-right: 0;
}
</style>

+ 444
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval11.vue Datei anzeigen

@@ -0,0 +1,444 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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 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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">收款方信息</p>

<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="提款人" v-model="item.drawer" 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.remark" input-align="right" label-width="auto"/>
</div>
</div>
<p class="main_title">上传附件(收据)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList1" v-if="fileList1==null||fileList1.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList1" v-if="fileList1!=null&&fileList1.length>0" :deletable="false" :max-count="fileList1.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(收据){{fileList1&&fileList1.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList1" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(发票)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList2" v-if="fileList2==null||fileList2.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList2" v-if="fileList2!=null&&fileList2.length>0" :deletable="false" :max-count="fileList2.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(发票){{fileList2&&fileList2.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList2" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(其他)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList3" v-if="fileList3==null||fileList3.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList3" v-if="fileList3!=null&&fileList3.length>0" :deletable="false" :max-count="fileList3.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(其他){{fileList3&&fileList3.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList3" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<div class="main_box examine_box" v-if="this.$route.query.type != 'done'">
<van-row type="flex" justify="space-between" align="center">
<van-col span="5">审批<br/>意见</van-col>
<van-col span="19">
<van-radio-group v-model="pass" direction="horizontal">
<van-radio name="true">同意</van-radio>
<van-radio name="false">驳回</van-radio>
</van-radio-group>
<van-field rows="2" autosize v-model="comment" type="textarea" placeholder="同意申请宅基地"/>
</van-col>
</van-row>
</div>

<div style="margin: 16px 2%;" v-if="this.$route.query.type != 'done'">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" @click="submitForm" class="submitButton">提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
approval,
attachmentList,
commonAttach,
getCash,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail11",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

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:'',
// 审核意见默认值
pass: "true",
comment: "同意",
templateList:[],
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess2?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
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;
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData1= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
/** 提交按钮 */
submitForm() {
const data = {
taskId: this.$route.query.taskId,
instanceId: this.form.instanceId,
variables: JSON.stringify({
comment: this.comment,
pass: this.pass,
}),
};
console.log(data);
approval(data).then((response) => {
if(response.code==200 && response.msg=="操作成功"){
this.$toast.success("操作成功");
setTimeout(function(){
history.go(-1)
},2000)
} else{
this.$toast.success("操作失败");
}
});
},
},watch: {
pass: function (val) {
this.comment = val === "true" ? "同意" : "驳回";
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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: 96%;
margin: 0 auto;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
.deleteFamily{
position: absolute;
top: 0rem;
right: 6%;
z-index: 9;
border-radius: 50%;
}
.examine_box{
background-color: #1D6FE9!important;
padding: 0.18rem!important;
padding-left: 0!important;
border-radius: 0.15rem!important;
margin-top: 0.3rem!important;
}
.examine_box .van-col:first-child{
color: #FFF!important;
font-size: 0.45rem!important;
text-align: center!important;
}
.examine_box .van-col:last-child{
background-color: #FFF!important;
border-radius: 0.15rem!important;
overflow: hidden!important;
.van-radio-group--horizontal{
padding: 0.2rem 0;
border-bottom: 1px solid #eee;
}
}
/deep/.van-radio--horizontal{
margin-left: 20px;
margin-right: 0;
}
</style>

+ 508
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalApproval12.vue Datei anzeigen

@@ -0,0 +1,508 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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 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 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" 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>

<p class="main_title">出票方信息</p>
<div class="main_box">
<van-field readonly label="付款方" v-model="form.payer" input-align="right" label-width="auto"/>
<van-field :rules="[{ required: true , message:'请输入汇票号码' }]" required label="汇票号码" v-model="form.payerAccount" placeholder="请输入汇票号码" input-align="right" label-width="auto"/>
<van-field
readonly
label="出票金额(元)"
v-model="form.expenditureAmount"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'出票金额不能为空!' }]"
/>
<van-field
readonly
label="汇票类型"
v-model="orderTypeName"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'汇票类型不能为空!' }]"
/>
<van-field
readonly
label="汇票类型"
v-model="form.orderType"
placeholder=""
input-align="right"
label-width="auto"
style="display: none"
required
:rules="[{ required: true , message:'汇票类型不能为空!' }]"
/>
<van-field
readonly
label="开票日"
v-model="form.startTime"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'开票日不能为空!' }]"
/>
<van-field
readonly
label="到期日"
v-model="form.endTime"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'到期日不能为空!' }]"
/>
</div>

<p class="main_title">收票方信息</p>

<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="联系方式" v-model="item.phone" input-align="right" label-width="auto"/>
<van-field readonly label="所属单位" v-model="item.unit" input-align="right" label-width="auto"/>
<van-field readonly label="负责人全称" v-model="item.leader" input-align="right" label-width="auto"/>
<van-field readonly label="资金用途" v-model="item.remark" input-align="right" />
</div>
</div>
<p class="main_title">上传附件(收据)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList1" v-if="fileList1==null||fileList1.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList1" v-if="fileList1!=null&&fileList1.length>0" :deletable="false" :max-count="fileList1.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(收据){{fileList1&&fileList1.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList1" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(发票)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList2" v-if="fileList2==null||fileList2.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList2" v-if="fileList2!=null&&fileList2.length>0" :deletable="false" :max-count="fileList2.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(发票){{fileList2&&fileList2.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList2" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<p class="main_title">上传附件(其他)</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList3" v-if="fileList3==null||fileList3.length==0" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
<van-uploader v-model="fileList3" v-if="fileList3!=null&&fileList3.length>0" :deletable="false" :max-count="fileList3.length" ></van-uploader>
</div>
<p style="margin-top:20px;padding: 0 10px">附件下载(其他){{fileList3&&fileList3.length==0?':暂无可下载文件':''}}</p>
<van-cell v-for="(item,index) in fileList3" :key="index">
<a :href="item.url" target="_blank">{{index+1}}.{{item.fileName}}</a>
</van-cell>
<div class="main_box examine_box" v-if="this.$route.query.type != 'done'">
<van-row type="flex" justify="space-between" align="center">
<van-col span="5">审批<br/>意见</van-col>
<van-col span="19">
<van-radio-group v-model="pass" direction="horizontal">
<van-radio name="true">同意</van-radio>
<van-radio name="false">驳回</van-radio>
</van-radio-group>
<van-field rows="2" autosize v-model="comment" type="textarea" placeholder="同意申请宅基地"/>
</van-col>
</van-row>
</div>

<div style="margin: 16px 2%;" v-if="this.$route.query.type != 'done'">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" @click="submitForm" class="submitButton">提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit ,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
approval,
attachmentList,
commonAttach,
getCash,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail12",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

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:'',
orderTypeName:'',
orderTypeOptions:[],
// 审核意见默认值
pass: "true",
comment: "同意",
templateList:[],
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
console.log(response)
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDicts("order_type").then(response => {
this.orderTypeOptions = response.data;
});
this.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess2?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
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;
this.orderTypeOptions.map(res => {
if(res.dictValue==this.form.orderType){
this.orderTypeName = res.dictLabel
}
})
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
console.log(response.data)
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData1= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id,"fileName":r.fileName})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
/** 提交按钮 */
submitForm() {
const data = {
taskId: this.$route.query.taskId,
instanceId: this.form.instanceId,
variables: JSON.stringify({
comment: this.comment,
pass: this.pass,
}),
};
console.log(data);
approval(data).then((response) => {
if(response.code==200 && response.msg=="操作成功"){
this.$toast.success("操作成功");
setTimeout(function(){
history.go(-1)
},2000)
} else{
this.$toast.success("操作失败");
}
});
},
},watch: {
pass: function (val) {
this.comment = val === "true" ? "同意" : "驳回";
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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: 96%;
margin: 0 auto;
}

.addFamily{
position: absolute;
top: -2px;
right: 0;
border-radius: 50%;
}
.deleteFamily{
position: absolute;
top: 0rem;
right: 6%;
z-index: 9;
border-radius: 50%;
}
.examine_box{
background-color: #1D6FE9!important;
padding: 0.18rem!important;
padding-left: 0!important;
border-radius: 0.15rem!important;
margin-top: 0.3rem!important;
}
.examine_box .van-col:first-child{
color: #FFF!important;
font-size: 0.45rem!important;
text-align: center!important;
}
.examine_box .van-col:last-child{
background-color: #FFF!important;
border-radius: 0.15rem!important;
overflow: hidden!important;
.van-radio-group--horizontal{
padding: 0.2rem 0;
border-bottom: 1px solid #eee;
}
}
/deep/.van-radio--horizontal{
margin-left: 20px;
margin-right: 0;
}
</style>

+ 357
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail.vue Datei anzeigen

@@ -0,0 +1,357 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">收款方信息</p>

<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" />

</div>

<div style="position:relative;" >
<div class="main_box" 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" />
</div>
<p class="main_more" v-if="showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p>
<p class="main_more" v-if="!showbtn" @click="listLength = 1,showbtn=true">收起列表</p>
</div>

<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , 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 {
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:[],
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.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
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;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else 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);
}
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
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.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.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 323
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail10.vue Datei anzeigen

@@ -0,0 +1,323 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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 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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">收款方信息</p>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="提款人" v-model="item.drawer" 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.remark" input-align="right" />
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , getProjectto , listProject , addProjectto , customSubmit ,getInfoto ,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
attachmentList,
commonAttach,
getCash,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail10",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

minDate: new Date(),
maxDate: new Date(2050, 10, 1),
currentDate: new Date(),
form:{},
fileList1:[],
fileList2:[],
fileList3:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:10,
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
contractOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'2'
},
infoForm:{
infoId:null,
name:null,
code:null,
totalAmount:null,
contractionId:null,
transferId:null
},
projectFundType:'',
uploadFiles:[],
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.getDictionaries();
this.getFileList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
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;
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
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_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 353
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail11.vue Datei anzeigen

@@ -0,0 +1,353 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">收款方信息</p>

<div style="position:relative;">
<div class="main_box" 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.phone" 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.remark" input-align="right" label-width="auto"/>
</div>
<p class="main_more" v-if="showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p>
<p class="main_more" v-if="!showbtn" @click="listLength = 1,showbtn=true">收起列表</p>
</div>

<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto ,
listProject , addProjectto , customSubmit,getInfoto,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
attachmentList,
commonAttach,
getCash,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail11",
data() {
return {
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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:11,
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.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
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;
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
console.log(response)
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
getFileList(){
let oData1= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.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.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 416
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail12.vue Datei anzeigen

@@ -0,0 +1,416 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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 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" 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>

<p class="main_title">出票方信息</p>
<div class="main_box">
<van-field readonly label="付款方" v-model="form.payer" input-align="right" label-width="auto"/>
<van-field :rules="[{ required: true , message:'请输入汇票号码' }]" required label="汇票号码" v-model="form.payerAccount" placeholder="请输入汇票号码" input-align="right" label-width="auto"/>
<van-field
readonly
label="出票金额(元)"
v-model="form.expenditureAmount"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'出票金额不能为空!' }]"
/>
<van-field
readonly
label="汇票类型"
v-model="orderTypeName"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'汇票类型不能为空!' }]"
/>
<van-field
readonly
label="汇票类型"
v-model="form.orderType"
placeholder=""
input-align="right"
label-width="auto"
style="display: none"
required
:rules="[{ required: true , message:'汇票类型不能为空!' }]"
/>
<van-field
readonly
label="开票日"
v-model="form.startTime"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'开票日不能为空!' }]"
/>
<van-field
readonly
label="到期日"
v-model="form.endTime"
placeholder=""
input-align="right"
label-width="auto"
required
:rules="[{ required: true , message:'到期日不能为空!' }]"
/>
</div>

<p class="main_title">收票方信息</p>

<div style="position:relative;">
<div class="main_box" 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.phone" input-align="right" label-width="auto"/>
<van-field readonly label="所属单位" v-model="item.unit" input-align="right" label-width="auto"/>
<van-field readonly label="负责人全称" v-model="item.leader" input-align="right" label-width="auto"/>
<van-field readonly label="资金用途" v-model="item.remark" input-align="right" />
</div>
<p class="main_more" v-if="showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p>
<p class="main_more" v-if="!showbtn" @click="listLength = 1,showbtn=true">收起列表</p>
</div>


<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject
, addProjectto , customSubmit, getInfoto ,listTemplate} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {
attachmentList,
commonAttach,
getCash,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail12",
data() {
return {
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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:12,
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:'',
orderTypeName:'',
orderTypeOptions:[],
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("order_type").then(response => {
this.orderTypeOptions = response.data;
});
this.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
tempalteFormat(id){
let name = ""
this.templateList.map(res => {
if(res.id==id){
name = res.name
}
})
return name
},
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getCash(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '2'
}
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;
this.orderTypeOptions.map(res => {
if(res.dictValue==this.form.orderType){
this.orderTypeName = res.dictLabel
}
})
});
listCashdetailByCashId(this.$route.query.id).then((response) => {
this.chargeItme = response.data;
console.log(response.data)
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
getFileList(){
let oData1= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "1",
}
attachmentList(oData1).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData2= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "2",
}
attachmentList(oData2).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
let oData3= {
tableId: this.$route.query.id,
tableName: "t_yinnong_cash",
bizPath: "yinnong",
fileType: "3",
}
attachmentList(oData3).then(res => {
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.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.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 354
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail2.vue Datei anzeigen

@@ -0,0 +1,354 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">列表信息</p>

<div class="main_box" style="margin-bottom: 15px;">
<van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" />
</div>

<div style="position:relative;" >
<div class="main_box" 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" />
</div>
<p class="main_more" v-if="showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p>
<p class="main_more" v-if="!showbtn" @click="listLength = 1,showbtn=true">收起列表</p>
</div>

<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , 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 {
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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
contractOpen:false,
infoForm:{
infoId:null,
name:null,
code:null,
totalAmount:null,
contractionId:null,
transferId:null
},
projectFundType:'',
templateList:[],
};
},
created() {
this.getDicts("project_fund_type").then((response) => {
for (let i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDictionaries();
this.getFileList();
this.getTemplateList();
},
methods: {
getTemplateList(){
let templateQueryParams = {
// 分页
pageNum: 1,
pageSize: 999,
};
listTemplate(templateQueryParams).then(response => {
this.templateList = response.rows;
});
},
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;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else 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);
}
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
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.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.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 459
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail3.vue Datei anzeigen

@@ -0,0 +1,459 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">列表信息</p>

<div class="main_box" style="margin-bottom: 15px;">
<van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" input-align="right" label-width="auto" />
</div>

<div style="position:relative;" >
<div class="main_box" 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" />
</div>
<p class="main_more" v-if="showbtn" @click="listLength = chargeItme.length,showbtn=false">查看更多</p>
<p class="main_more" v-if="!showbtn" @click="listLength = 1,showbtn=true">收起列表</p>
</div>

<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} 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 {
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:{},
fileList:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
projectFundType:''
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
console.log(response)
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDictionaries();
this.getFileList();
},
methods: {
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else{
this.showproject = false
}
this.form = response.data;
});
queryTransferDetail(this.$route.query.id).then((response) => {
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
for (var j = 0 ; j < response.rows.length ; j++){
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
}
this.chargeItme = response.rows;
});
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
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});
}
});
},
payeeDictLabel(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
console.log(data)
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
console.log(data)
this.projectList.map(res => {
console.log(res)
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
console.log(this.projectForm)
}
})
this.showproject = false;
},
onConfirmPayee(data){
// this.chargeItme[this.chargeItme.length-1].payeeText = data.text;
this.chargeItme[this.chargeItme.length-1].payee = data.text;
this.chargeItme[this.chargeItme.length-1].payeeId = data.value;
console.log(this.chargeItme)
this.showpayee = false;
},
onConfirmBankType(data){
console.log(this.chargeItme)
this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text;
this.chargeItme[this.chargeItme.length-1].bankType = data.value;
this.showbankType = false;
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
console.log(e)
this.payeeList = [];
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
goAdd(){
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$toast.error("付款事由禁止包含|。");
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$toast.error('请选择项目名称!');
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$toast.error('请输入工程发票号!');
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
console.log(this.form);
updateTransfer(this.form).then(response => {
console.log(response);
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
console.log(this.projectForm)
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
});
},
goUpdate(){
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$toast.error("付款事由禁止包含|。");
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$toast.error('请选择项目名称!');
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$toast.error('请输入工程发票号!');
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
this.projectForm.outId = this.form.id
updateTransfer(this.form).then((response) => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
}
});
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
console.log(file)
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
if(file.id){
systemAttachment(file.id).then((res) => {
});
}
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "transfer",
fileType: "",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.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.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 316
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail4.vue Datei anzeigen

@@ -0,0 +1,316 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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>
</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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>
<p class="main_title">列表信息</p>

<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" />

</div>

<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="收款账户" v-model="item.payeeAccount" input-align="right" label-width="auto"/>
<van-field readonly label="开户银行" v-model="item.bankDeposit" input-align="right" label-width="auto"/>
<van-field readonly label="收入金额" v-model="item.incomeAmount" input-align="right" label-width="auto"/>
<van-field readonly label="所属银行" v-model="item.bankTypeText" input-align="right" />
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 0;">
<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" :max-count="fileList1.length" style="margin-left:8px;"></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" :max-count="fileList2.length" style="margin-left:8px;"></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" :max-count="fileList3.length" style="margin-left:8px;" ></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit,getInfoto } 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 {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

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:[],
projectFundTypeDictionaries:[],
projectListShow:[],

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:''
};
},
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.getDictionaries();
this.getFileList();
},
methods: {
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else 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").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
for (var j = 0 ; j < response.rows.length ; j++){
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
}
this.chargeItme = response.rows;
});
this.getPayeeList();
});
},
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
this.fileList1.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList2.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
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
this.fileList3.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 430
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalDetail5.vue Datei anzeigen

@@ -0,0 +1,430 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<p class="main_title">基础信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">付款方信息</p>
<div class="main_box">
<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"/>
</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>

<p class="main_title">列表信息</p>

<div class="main_box" style="margin-bottom: 15px;">
<van-field readonly label="收款账户类型" v-model="form.accountType == 1 ? '公户':'私户'" 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">
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field readonly label="收款方" v-model="item.payee" input-align="right" />
<van-field readonly label="收款账户" v-model="item.payeeAccount" input-align="right" label-width="auto"/>
<van-field readonly label="开户银行" v-model="item.bankDeposit" input-align="right" label-width="auto"/>
<van-field readonly label="收入金额" v-model="item.incomeAmount" input-align="right" label-width="auto"/>
<van-field readonly label="所属银行" v-model="item.bankTypeText" input-align="right" />
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" :deletable="false" disabled :upload-text="'未上传附件'"></van-uploader>
</div>
</div>
</template>

<script>
import { getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request'
import {attachmentList, commonAttach} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalDetail",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,

minDate: new Date(),
maxDate: new Date(2025, 10, 1),
currentDate: new Date(),
form:{},
fileList:[],
capitalExpenditureType:'',
payee:'',
bankType:'',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
projectFundType:''
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
console.log(response)
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
this.getDictionaries();
this.getFileList();
},
methods: {
goFlow(){
window.location='approvalProcess?id='+this.$route.query.id;
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
})
}else{
this.showproject = false
}
this.form = response.data;
});
queryTransferDetail(this.$route.query.id).then((response) => {
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
for (var j = 0 ; j < response.rows.length ; j++){
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
}
this.chargeItme = response.rows;
});
this.getPayeeList();
});
},
addChargeItme(index){
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
});
},
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});
}
});
},
payeeDictLabel(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
console.log(data)
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
console.log(data)
this.projectList.map(res => {
console.log(res)
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
console.log(this.projectForm)
}
})
this.showproject = false;
},
onConfirmPayee(data){
// this.chargeItme[this.chargeItme.length-1].payeeText = data.text;
this.chargeItme[this.chargeItme.length-1].payee = data.text;
this.chargeItme[this.chargeItme.length-1].payeeId = data.value;
console.log(this.chargeItme)
this.showpayee = false;
},
onConfirmBankType(data){
console.log(this.chargeItme)
this.chargeItme[this.chargeItme.length-1].bankTypeText = data.text;
this.chargeItme[this.chargeItme.length-1].bankType = data.value;
this.showbankType = false;
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
console.log(e)
this.payeeList = [];
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
listPayee(this.queryParams).then((response) => {
for (var i = 0; i < response.rows.length; i++) {
this.payeeList.push({text: response.rows[i].payee, value: response.rows[i].id});
}
});
},
goAdd(){
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$toast.error("付款事由禁止包含|。");
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$toast.error('请选择项目名称!');
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$toast.error('请输入工程发票号!');
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then(response => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
});
},
goUpdate(){
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$toast.error("付款事由禁止包含|。");
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$toast.error('请选择项目名称!');
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$toast.error('请输入工程发票号!');
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
this.projectForm.outId = this.form.id
updateTransfer(this.form).then((response) => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('修改成功');
setTimeout(function(){
history.go(-1)
},2000)
}
});
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "upload",
fileType: "0",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{})})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 219
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList.vue Datei anzeigen

@@ -0,0 +1,219 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack()"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">银行卡转账申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" center :to="{name:'sunVillageApprovalDetail', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/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>
<p style="width: 80px;display: inline-block">{{item.auditStatus}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='待审'" square text="撤回" type="danger" @click="cancelApply(item)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer , updateTYinnongTransferFoStatus } from "@/api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
transferType:"1",
},
form:{}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
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(() => {
listTransfer(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delTransfer(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
customSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
},
goBack(){
this.$router.push({path:'/sunVillage_info/index'})
},
cancelApply(row) {
console.log(row)
const instanceId = row.instanceId;
this.form.id = row.id;
this.form.auditStatus = "0";
this.form.applyUserId = "";
this.form.applyUserName = "";
this.form.applyTime = "";
this.form.instanceId = "";
this.form.processKey = "";
let that = this;
this.$dialog.confirm({
message: '您确认撤回待审数据?',
})
.then(function () {
return updateTYinnongTransferFoStatus(that.form).then(response => {
setTimeout(function(){
history.go(0)
},2000)
that.$toast.success('撤回成功');
});
})
},
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 178
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList10.vue Datei anzeigen

@@ -0,0 +1,178 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">现金提现申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail10', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn6.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{item.expenditureAmount}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify10', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {cashSubmit, delCash, listCash} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList10",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
cashType: '10',
}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'approvalAdd10';
},
getList(){
setTimeout(() => {
listCash(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delCash(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
console.log(id)
cashSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 215
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList11.vue Datei anzeigen

@@ -0,0 +1,215 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">备付金支出申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail11', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn7.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{stateFormat(item.expenditureAmount)}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify11', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='待审'" square text="撤回" type="danger" @click="cancelApply(item)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {cashSubmit, delCash, listCash} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList11",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
cashType: '11',
},
form:{}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
//金额千分符 会在整数后添加两个0
stateFormat(cellValue) {
if (cellValue) {
return Number(cellValue)
.toFixed(2)
.replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => {
return $1 + ",";
})
.replace(/\.$/, "") + "元";
}
},
goAdd(){
window.location = 'approvalAdd11';
},
getList(){
setTimeout(() => {
listCash(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delCash(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
cashSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
},
cancelApply(row) {
console.log(row)
const instanceId = row.instanceId;
this.form.id = row.id;
this.form.auditStatus = "0";
this.form.applyUserId = "";
this.form.applyUserName = "";
this.form.applyTime = "";
this.form.instanceId = "";
this.form.processKey = "";
let that = this;
this.$dialog.confirm({
message: '您确认撤回待审数据?',
})
.then(function () {
return updateTYinnongTransferFoStatus(that.form).then(response => {
setTimeout(function(){
history.go(0)
},2000)
that.$toast.success('撤回成功');
});
})
},
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 214
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList12.vue Datei anzeigen

@@ -0,0 +1,214 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">汇票支出申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail12', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn8.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{stateFormat(item.expenditureAmount)}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify12', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='待审'" square text="撤回" type="danger" @click="cancelApply(item)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {cashSubmit, delCash, listCash} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList12",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:100,
cashType: '12',
},
form:{}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
//金额千分符 会在整数后添加两个0
stateFormat(cellValue) {
if (cellValue) {
return Number(cellValue)
.toFixed(2)
.replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => {
return $1 + ",";
})
.replace(/\.$/, "") + "元";
}
},
goAdd(){
window.location = 'approvalAdd12';
},
getList(){
setTimeout(() => {
listCash(this.queryParams).then(response => {
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delCash(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
cashSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
},
cancelApply(row) {
console.log(row)
const instanceId = row.instanceId;
this.form.id = row.id;
this.form.auditStatus = "0";
this.form.applyUserId = "";
this.form.applyUserName = "";
this.form.applyTime = "";
this.form.instanceId = "";
this.form.processKey = "";
let that = this;
this.$dialog.confirm({
message: '您确认撤回待审数据?',
})
.then(function () {
return updateTYinnongTransferFoStatus(that.form).then(response => {
setTimeout(function(){
history.go(0)
},2000)
that.$toast.success('撤回成功');
});
})
},
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 217
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList2.vue Datei anzeigen

@@ -0,0 +1,217 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">信用卡还款申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail2', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn2.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{stateFormat(item.expenditureAmount)}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify2', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='待审'" square text="撤回" type="danger" @click="cancelApply(item)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer , updateTYinnongTransferFoStatus } from "@/api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList2",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
transferType:"2",
},
form:{}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
//金额千分符 会在整数后添加两个0
stateFormat(cellValue) {
if (cellValue) {
return Number(cellValue)
.toFixed(2)
.replace(/(\d)(?=(\d{3})+\.)/g, ($0, $1) => {
return $1 + ",";
})
.replace(/\.$/, "") + "元";
}
},
goAdd(){
window.location = 'approvalAdd2';
},
getList(){
setTimeout(() => {
listTransfer(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delTransfer(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
customSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
},
goBack(){
this.$router.push({path:'/sunVillage_info/index'})
},
cancelApply(row) {
console.log(row)
const instanceId = row.instanceId;
this.form.id = row.id;
this.form.auditStatus = "0";
this.form.applyUserId = "";
this.form.applyUserName = "";
this.form.applyTime = "";
this.form.instanceId = "";
this.form.processKey = "";
let that = this;
this.$dialog.confirm({
message: '您确认撤回待审数据?',
})
.then(function () {
return updateTYinnongTransferFoStatus(that.form).then(response => {
setTimeout(function(){
history.go(0)
},2000)
that.$toast.success('撤回成功');
});
})
},
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 176
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList3.vue Datei anzeigen

@@ -0,0 +1,176 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">虚拟挂账申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail3', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn3.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{item.expenditureAmount}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify3', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList3",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
transferType:"3",
}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'approvalAdd3';
},
getList(){
setTimeout(() => {
listTransfer(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delTransfer(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
customSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 176
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList4.vue Datei anzeigen

@@ -0,0 +1,176 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">代管转账申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail4', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn4.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{item.expenditureAmount}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify4', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList4",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
transferType:"4",
}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'approvalAdd4';
},
getList(){
setTimeout(() => {
listTransfer(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delTransfer(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
customSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 176
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalList5.vue Datei anzeigen

@@ -0,0 +1,176 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="$router.back(-1)"
@click-right="goAdd()"
>
<template #title>
<p style="font-weight: bold;">母子转账申请列表</p>
</template>
<template #right>
<van-icon name="add" size="18"/>
</template>
</van-nav-bar>

<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.payer" :value="item.auditStatus" center :to="{name:'sunVillageApprovalDetail5', query: {id:item.id}}">
<template #icon>
<van-icon name="../../../../../static/images/onlineHome/icon_yn5.png" size="30" color="#539FFD" style="margin-right: 10px;" />
</template>
<template #label>
<p><span><i>¥</i>{{item.expenditureAmount}}</span><i style="margin-right: 1rem;"></i>{{item.applyDate}}</p>
</template>
</van-cell>
<template #right>
<van-row>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="修改" type="info" :to="{name:'sunVillageApprovalModify5', query: {id:item.id}}" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" color="#FFA63E" square text="提交" type="info" @click="onSubmit(item.id)" class="delete-button" />
</van-col>
<van-col>
<van-button v-if="item.auditStatus=='草稿'||item.auditStatus=='驳回'" square text="删除" type="danger" @click="deleteList(item.id,index)" class="delete-button" />
</van-col>
</van-row>
</template>
</van-swipe-cell>
</van-list>
</div>
</template>

<script>
import { listTransfer , customSubmit , delTransfer } from "@/api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalList5",
data() {
return {
applicationList:[],
auditStatusOptions:[],
loading: false,
finished: false,
queryParams:{
pageNum:1,
pageSize:10,
transferType:"5",
}
};
},
created() {
this.getDicts("audit_status").then((response) => {
this.auditStatusOptions = response.data;
});
},
methods: {
goAdd(){
window.location = 'approvalAdd5';
},
getList(){
setTimeout(() => {
listTransfer(this.queryParams).then(response => {
console.log(response)
for (var i = 0; i < response.rows.length; i++) {
response.rows[i].auditStatus = this.selectDictLabel(this.auditStatusOptions, response.rows[i].auditStatus);
this.applicationList.push(response.rows[i]);
}
console.log(this.applicationList.length >= response.total)
if(this.applicationList.length >= response.total){
this.finished = true;
return;
}else{
this.loading = false;
this.queryParams.pageNum += 1 ;
}
});
}, 1000);
},
deleteList(id,index){
this.$dialog.confirm({
message: '您确认删除草稿?',
})
.then(() => {
// on confirm
this.applicationList.splice(index,1)
delTransfer(id).then(res => {
if(res.code = 200){
this.$toast.success('删除成功');
}
});
})
.catch(() => {
// on cancel
});
},
onSubmit(id){
this.$dialog.confirm({
message: '您确认提交草稿?',
})
.then(() => {
customSubmit(id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(0)
},2000)
})
})
.catch(() => {
// on cancel
});
}
},
}
</script>

<style scoped lang="scss">
.app-container {
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: #1D6FE9;
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>

+ 1942
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1060
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify10.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2348
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify11.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 2402
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify12.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 1916
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify2.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 943
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify3.vue Datei anzeigen

@@ -0,0 +1,943 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<van-form @submit="getChange" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择申请时间' }]"
v-model="form.applyDate"
label="申请时间"
placeholder="请选择申请时间"
@click="showlasj = true"
input-align="right"
right-icon="arrow-down"
/>
<van-popup v-model="showlasj" position="bottom">
<van-datetime-picker
v-model="currentDate"
type="date"
title="选择年月日"
:min-date="minDate"
:max-date="maxDate"
@confirm="onConfirmLasj"
@cancel="showlasj = false"
/>
</van-popup>
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择资金支出类别' }]"
label="资金支出类别"
placeholder="请选择"
v-model="capitalExpenditureType"
@click="showcapital = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
/>
<van-popup v-model="showcapital" position="bottom">
<van-picker
show-toolbar
:columns="capitalExpenditureTypeOptions"
@confirm="onConfirmCapital"
@cancel="showcapital = false"
/>
</van-popup>
<van-field
readonly
required
label="支出总金额"
v-model="form.expenditureAmount"
placeholder="根据下方收款金额自动核算"
input-align="right"
label-width="auto"
/>

</div>

<div class="main_box" style="margin-top: 10px;">
<van-field
label="付款事由"
v-model="form.remark"
type="textarea"
placeholder="请输入付款事由"
input-align="right"
rows="3"
label-width="auto"
required
:rules="[{ required: true , message:'请输入付款事由' }]"
/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/>
</div>

<p class="main_title" v-if="capitalExpenditureOpen">关联项目</p>
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;">
<van-field
readonly
clickable
label="项目名称"
placeholder="请选择"
v-model="projectForm.projectName"
@click="showproject = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择项目名称' }]"
/>
<van-popup v-model="showproject" position="bottom">
<van-picker
show-toolbar
:columns="projectListShow"
@confirm="onConfirmProject"
@cancel="showproject = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入承建单位' }]" v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入合同价款(元)' }]" v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="工程款类型"
placeholder="请选择"
v-model="projectFundType"
@click="showFundType = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择工程款类型' }]"
/>
<van-popup v-model="showFundType" position="bottom">
<van-picker
show-toolbar
:columns="projectFundTypeOptions"
@confirm="onConfirmFundType"
@cancel="showFundType = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入工程发票号' }]" v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/>
</div>
<p class="main_title">付款方信息</p>
<div class="main_box">
<!-- <van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/>-->
<van-field
readonly
clickable
label="付款方"
placeholder="请选择付款方"
v-model="form.payer"
@click="showpayer = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择付款方' }]"
/>
<van-popup v-model="showpayer" position="bottom">
<van-picker
show-toolbar
:columns="payerOptions"
@confirm="onConfirmPayer($event)"
@cancel="showpayer = false"
/>
</van-popup>
<van-field :rules="[{ required: true , message:'请输入账户' }]" required label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/>
</div>

<p class="main_title">收款方信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p>

<div class="main_box" style="margin-bottom: 15px;">
<van-cell title="收款账户类型">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" />
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field
readonly
clickable
label="收款方"
placeholder="请选择"
v-model="item.payee"
@click="item.showPayee = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择收款方' }]"
/>
<van-popup v-model="item.showPayee" position="bottom">
<van-picker
show-toolbar
:columns="payeeList"
@confirm="onConfirmPayee($event,index)"
@cancel="item.showPayee = false"
/>
</van-popup>
<van-field required readonly :rules="[{ required: true , message:'请输入账户' }]" v-model="item.payeeAccount" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/>
<van-field required readonly :rules="[{ required: true , message:'请输入银行' }]" v-model="item.bankDeposit" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入金额' }]" v-model="item.incomeAmount" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto" @change="moneyChange"/>
<van-field
readonly
label="所属银行"
placeholder="请选择"
v-model="item.bankTypeText"
@click="item.showbankType = true"
input-align="right"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" @delete="deleteFile"></van-uploader>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="12" align="center">
<van-button type="info" native-type="submit" @click="buttonType='update'" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
<van-col span="12" align="center">
<van-button type="info" native-type="submit" @click="buttonType='add'" class="submitButton">保存并提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { getAccount , getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit ,getQmyeFlow} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {
addCash, attachmentList,
commonAttach,
listTaccount,
listVaccount, systemAttachment
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request';
import Dialog from "vant/lib/dialog";
export default {
name: "approvalModify3",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,
showpayer:false,

minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},

capitalExpenditureType:'',
payee:'',
bankType:'',

buttonType:'a',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],
payerOptions:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
projectFundType:'',
fileList:[],
uploadFiles:[],
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
let params1={
townAccountType:'3'
}
listTaccount(params1).then((response) => {
console.log(response)
response.rows.map((res,index) => {
if(res.townAccountType=='3'){
res['payerFrom'] = '3'
this.payerOptions.push(res);
this.payerOptions[index].text = res.payee;
this.payerOptions[index].value = res.id;
}
})
});
this.getDictionaries();
this.getFileList();
},
methods: {
goFlow(){
if(this.form.approvalMode == '1' && this.form.approvalTemplateId != undefined && this.form.approvalTemplateId != "undefined"){
window.location='approvalProcess3?approvalTemplateId='+this.form.approvalTemplateId+'&approvalMode='+this.form.approvalMode;
}else{
this.$notify({ type: 'danger', message: '无审批流程!' });
}
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
console.log(this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType))
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
console.log(res.data)
})
}else{
this.showproject = false
}
this.form = response.data;
});
queryTransferDetail(this.$route.query.id).then((response) => {
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
for (var j = 0 ; j < response.rows.length ; j++){
// response.rows[j].payeeText = response.rows[j].payee;
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
response.rows[j].showPayee = false;
}
this.chargeItme = response.rows;
});
this.getPayeeList();
});
},
getChange(){
console.log(this.buttonType)
if(this.buttonType == 'update'){
console.log('update')
this.goUpdate();
}else if(this.buttonType == 'add'){
console.log('add')
this.goAdd();
}
},
getError(e){
console.log(e)
this.$notify({ type: 'danger', message: e.errors[0].message });
},
addChargeItme(index){
if(this.chargeItme.length>0&&this.chargeItme[this.chargeItme.length-1].payee == ''){
this.$notify({ type: 'danger', message: '请勿添加多个空列表信息' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].incomeAmount == ''){
this.$notify({ type: 'danger', message: '请输入收入金额!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].payeeAccount == ''){
this.$notify({ type: 'danger', message: '请输入收款账户!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankDeposit == ''){
this.$notify({ type: 'danger', message: '请输入开户银行!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankType == ''){
this.$notify({ type: 'danger', message: '请选择所属银行!' });
return;
}
this.getDicts("bank_type").then(res => {
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "1", //所属银行
bankTypeText:this.selectDictLabel(res.data, 1), //所属银行
showPayee:false,
showbankType:false
});
});
},
getPayeeList() {
let params = {
villageAccountType : 1,
status:'0',
accountType : this.form.accountType
}
listVaccount(params).then(response => {
console.log(response)
if(response.rows.length>0){
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
}
});
},
payeeDictLabel(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
console.log(data)
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
this.projectList.map(res => {
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
}
})
this.showproject = false;
},
onConfirmPayee(data,index){
console.log(data)
for (var i = 0 ; i < this.chargeItme.length ; i++){
this.chargeItme[i].showPayee = false;
}
this.chargeItme[index].payee = data.text;
this.chargeItme[index].payeeId = data.value;
this.payeeSelectChange(data.value , index)
},
onConfirmBankType(data,index){
for (var i = 0 ; i < this.chargeItme.length ; i++){
this.chargeItme[i].showbankType = false;
}
this.chargeItme[index].bankTypeText = data.text;
this.chargeItme[index].bankType = data.value;
this.chargeItme[index].showbankType = false;
},
onConfirmPayer(data){
console.log(data)
this.form.payer = data.text;
this.form.cashierId = data.value;
this.form.payerAccount = data.payeeAccount
this.showpayer = false;
//this.selectChange(data.value);
this.accountTypeChange();
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
this.chargeItme = [];
this.payeeList = [];
let params = {
villageAccountType : 1,
status:'0',
accountType : this.form.accountType,
taccountId:this.form.cashierId
}
listVaccount(params).then(response => {
console.log(response)
if(response.rows.length>0){
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
}
});
},
// 钱计算
moneyChange(input) {
console.log(input)
let obj = {};
obj = this.chargeItme.find((account) => {
//model就是上面的数据源
return parseFloat(account.incomeAmount).toFixed(2) === input; //筛选出匹配数据
});
let total = 0;
this.chargeItme.forEach((money) => {
total = (parseFloat(total) + parseFloat(money.incomeAmount)).toFixed(2)
});
this.$set(this.form, "expenditureAmount", total);
},
goAdd(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
if((this.uploadFiles==null||this.uploadFiles.length==0)&&(this.fileList==null||this.fileList.length==0)){
Dialog.confirm({
title: '提示',
message: '此申请单中未上传任何附件,是否确认提交?',
})
.then(() => {
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then(response => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
})
.catch(() => {
return false;
});
}else{
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then(response => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
}


},
goUpdate(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then((response) => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
console.log(this.uploadFiles)
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}

});
},
payeeSelectChange(select, i) {
let obj = {};
let fuzhitype = 0;
obj = this.payeeList.find((account) => {
//model就是上面的数据源
return account.id === select ; //筛选出匹配数据
});
if(this.chargeItme != [] && this.chargeItme.length>1){
this.chargeItme.some((value, index) => {
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i){
fuzhitype = 2;
return true;
}
if(value.accountType != undefined &&value.accountType != '' && obj.accountType != value.accountType&&index!=i){
fuzhitype = 1;
return true;
}
});
}
if(fuzhitype == 0){
this.$set(this.chargeItme[i], "payee",obj.payee)
this.$set(this.chargeItme[i], "bankType", obj.bankType)
this.$set(this.chargeItme[i], "payeeId", obj.id);
this.$set(this.chargeItme[i], "payeeAccount", obj.payeeAccount);
this.$set(this.chargeItme[i], "bankDeposit", obj.bankDeposit);
this.$set(this.chargeItme[i], "accountType", obj.accountType);
}else if(fuzhitype == 1){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '请选择账户类型相同的收款方!' });
}else if(fuzhitype == 2){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$notify({ type: 'danger', message: '收款方已存在!' });
}
},
selectChange(select) {
let obj = {};
obj = this.payerOptions.find((account) => {
//model就是上面的数据源
return account.id === select; //筛选出匹配数据
});
if(obj.payerFrom==1&&obj.operatorCode != null && obj.operatorCode != "" &&
obj.enterpriseCode != null && obj.enterpriseCode != "" &&
obj.accountPassword != null && obj.accountPassword != ""){
this.$set(this.form, "bookId", obj.bookId);
this.$set(this.form, "deptId", obj.deptId);
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
this.$set(this.form, "operatorCode", obj.operatorCode);
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
this.$set(this.form, "payerFrom", '1');
}else{
if(obj.payerFrom==1){
this.diglogStatus = false;
this.$notify({ type: 'danger', message: "请完善付款方“操作员代码”、“企业编码”、“支付口令”等信息!" });
this.$set(this.form,"payer","")
this.$set(this.form,"payerAccount","")
}else{
this.$set(this.form, "payerFrom", obj.parerFrom);
if(obj.operatorCode!=null&&obj.operatorCode!=''){
this.$set(this.form, "operatorCode", obj.operatorCode);
}else{
this.$set(this.form, "operatorCode", '');
}
if(obj.enterpriseCode!=null&&obj.enterpriseCode!=''){
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
}else{
this.$set(this.form, "enterpriseCode", '');
}
if(obj.accountPassword!=null&&obj.accountPassword!=''){
this.$set(this.form, "accountPassword", obj.accountPassword);
}else{
this.$set(this.form, "accountPassword", '');
}
this.$set(this.form, "bookId",'');
this.$set(this.form, "deptId", '');
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
if(obj.payerFrom==6){
getQmyeFlow(obj.bankAccountNumber).then((response) => {
this.$set(this.form, "payerAccount", response.data);
});
}else {
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
}
}
}
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
console.log(file)
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
if(file.id){
systemAttachment(file.id).then((res) => {
});
}
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "transfer",
fileType: "",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 1131
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify4.vue
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 948
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalModify5.vue Datei anzeigen

@@ -0,0 +1,948 @@
<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/icon/icon_flow.png" size="20" @click="goFlow"/>
</template>
</van-nav-bar>
<van-form @submit="getChange" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择申请时间' }]"
v-model="form.applyDate"
label="申请时间"
placeholder="请选择申请时间"
@click="showlasj = true"
input-align="right"
right-icon="arrow-down"
/>
<van-popup v-model="showlasj" position="bottom">
<van-datetime-picker
v-model="currentDate"
type="date"
title="选择年月日"
:min-date="minDate"
:max-date="maxDate"
@confirm="onConfirmLasj"
@cancel="showlasj = false"
/>
</van-popup>
<van-field
readonly
clickable
required
:rules="[{ required: true , message:'请选择资金支出类别' }]"
label="资金支出类别"
placeholder="请选择"
v-model="capitalExpenditureType"
@click="showcapital = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
/>
<van-popup v-model="showcapital" position="bottom">
<van-picker
show-toolbar
:columns="capitalExpenditureTypeOptions"
@confirm="onConfirmCapital"
@cancel="showcapital = false"
/>
</van-popup>
<van-field
readonly
required
label="支出总金额"
v-model="form.expenditureAmount"
placeholder="根据下方收款金额自动核算"
input-align="right"
label-width="auto"
/>

</div>

<div class="main_box" style="margin-top: 10px;">
<van-field
label="付款事由"
v-model="form.remark"
type="textarea"
placeholder="请输入付款事由"
input-align="right"
rows="3"
label-width="auto"
required
:rules="[{ required: true , message:'请输入付款事由' }]"
/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="说明情况" v-model="form.explainSituation" type="textarea" placeholder="请输入说明情况" input-align="right" rows="3" label-width="auto"/>
</div>

<p class="main_title" v-if="capitalExpenditureOpen">关联项目</p>
<div class="main_box" v-if="capitalExpenditureOpen" style="margin-bottom: 10px;margin-top: 10px;position:relative;">
<van-field
readonly
clickable
label="项目名称"
placeholder="请选择"
v-model="projectForm.projectName"
@click="showproject = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择项目名称' }]"
/>
<van-popup v-model="showproject" position="bottom">
<van-picker
show-toolbar
:columns="projectListShow"
@confirm="onConfirmProject"
@cancel="showproject = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入承建单位' }]" v-model="projectForm.projectContractor" label="承建单位" placeholder="请输入承建单位" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入合同价款(元)' }]" v-model="projectForm.projectAmount" label="合同价款(元)" placeholder="请输入合同价款(元)" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="工程款类型"
placeholder="请选择"
v-model="projectFundType"
@click="showFundType = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择工程款类型' }]"
/>
<van-popup v-model="showFundType" position="bottom">
<van-picker
show-toolbar
:columns="projectFundTypeOptions"
@confirm="onConfirmFundType"
@cancel="showFundType = false"
/>
</van-popup>
<van-field required :rules="[{ required: true , message:'请输入工程发票号' }]" v-model="projectForm.projectBillNum" label="工程发票号" placeholder="请输入工程发票号" input-align="right" label-width="auto"/>
</div>
<p class="main_title">付款方信息</p>
<div class="main_box">
<!-- <van-field label="付款方" v-model="form.payer" placeholder="请输入付款方" input-align="right" label-width="auto"/>-->
<van-field
readonly
clickable
label="付款方"
placeholder="请选择付款方"
v-model="form.payer"
@click="showpayer = true"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择付款方' }]"
/>
<van-popup v-model="showpayer" position="bottom">
<van-picker
show-toolbar
:columns="payerOptions"
@confirm="onConfirmPayer($event)"
@cancel="showpayer = false"
/>
</van-popup>
<van-field :rules="[{ required: true , message:'请输入账户' }]" required label="付款方账户" v-model="form.payerAccount" placeholder="请输入账户" input-align="right" label-width="auto"/>
</div>

<p class="main_title">收款方信息<van-button icon="plus" @click="addChargeItme(chargeItme.length)" size="mini" type="info" native-type="button" class="addFamily"/></p>

<div class="main_box" style="margin-bottom: 15px;">
<van-cell title="收款账户类型">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.accountType" @change="accountTypeChange">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-cell title="是否与付款方同行" v-if="form.bankType==2||form.bankType==4">
<template #right-icon>
<van-radio-group direction="horizontal" v-model="form.isPeers">
<van-radio name="Y">是</van-radio>
<van-radio name="N">否</van-radio>
</van-radio-group>
</template>
</van-cell>
</div>
<div :style="{position:'relative',padding: index == 0 ? '':'10px 0 0 0'}" v-for="(item, index) in chargeItme" :key="index">
<van-button icon="minus" size="mini" type="danger" class="deleteFamily" native-type="button" v-if="index!=0" @click="deleteChargeItme(index)" />
<div class="main_box" style="margin-bottom: 10px;position:relative;">
<van-field
readonly
clickable
label="收款方"
placeholder="请选择"
v-model="item.payee"
@click="item.showPayee = true"
input-align="right"
right-icon="arrow-down"
required
:rules="[{ required: true , message:'请选择收款方' }]"
/>
<van-popup v-model="item.showPayee" position="bottom">
<van-picker
show-toolbar
:columns="payeeList"
@confirm="onConfirmPayee($event,index)"
@cancel="item.showPayee = false"
/>
</van-popup>
<van-field required readonly :rules="[{ required: true , message:'请输入账户' }]" v-model="item.payeeAccount" label="收款账户" placeholder="请输入账户" input-align="right" label-width="auto"/>
<van-field required readonly :rules="[{ required: true , message:'请输入银行' }]" v-model="item.bankDeposit" label="开户银行" placeholder="请输入银行" input-align="right" label-width="auto"/>
<van-field required :rules="[{ required: true , message:'请输入金额' }]" v-model="item.incomeAmount" label="收入金额" placeholder="请输入金额" input-align="right" label-width="auto" @change="moneyChange"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="item.bankTypeText"
input-align="right"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
</div>
</div>
<p class="main_title">上传附件</p>
<div class="main_box" style="padding: 5px 0 0 8px;">
<van-uploader v-model="fileList" :after-read="beforeRead" @delete="deleteFile"></van-uploader>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="12" align="center">
<van-button type="info" native-type="submit" @click="buttonType='update'" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
<van-col span="12" align="center">
<van-button type="info" native-type="submit" @click="buttonType='add'" class="submitButton">保存并提交</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { getAccount , getTransfer , queryTransferDetail , listPayee , updateTransfer , getProjectto , listProject , addProjectto , customSubmit ,getQmyeFlow} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import request from '@/utils/request';
import {
addTransfer,
attachmentList,
commonAttach, listTaccount,
listVaccount, systemAttachment
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
import Dialog from "vant/lib/dialog";
export default {
name: "approvalModify5",
data() {
return {
showcapital:false,
showpayee:false,
showlasj:false,
showbankType:false,
showproject:false,
showFundType:false,
showpayer:false,

minDate: new Date(2000, 1, 1),
maxDate: new Date(2050, 12, 31),
currentDate: new Date(),
form:{},

capitalExpenditureType:'',
payee:'',
bankType:'',

buttonType:'a',

wfydlxDictionaries:[],
jglxDictionaries:[],
sysDictionaries:[],
capitalExpenditureTypeOptions:[],
bankTypeDictionaries:[],
projectList:[],
projectFundTypeOptions:[],
projectFundTypeDictionaries:[],
projectListShow:[],
payerOptions:[],

chargeItme:[],
chargeItmeShow:[],

payeeList:[],
// 查询参数
queryParams: {
transferType:"",
orderByColumn: "id",
isAsc: "desc",
},
capitalExpenditureOpen:false,
projectForm:{
projectId:null,
projectName:null,
projectContractor:null,
projectAmount:null,
projectBillNum:null,
projectFundType:'1',
outId:null,
ynType:'1'
},
projectFundType:'',
fileList:[],
uploadFiles:[],
};
},
created() {
let queryParams={
pageNum: 1,
pageSize: 100,
}
listProject(queryParams).then(response => {
this.projectList = response.rows;
for (var i = 0; i < response.rows.length; i++) {
this.projectListShow.push({text: response.rows[i].projectName, value: response.rows[i].id});
}
});
this.getDicts("project_fund_type").then((response) => {
for (var i = 0; i < response.data.length; i++) {
this.projectFundTypeOptions.push({text: response.data[i].dictLabel, value: response.data[i].dictValue});
}
this.projectFundTypeDictionaries = response.data;
});
let params1={
townAccountType:'2'
}
listTaccount(params1).then((response) => {
response.rows.map((res,index) => {
if(res.townAccountType=='2'){
res['payerFrom'] = '2'
this.payerOptions.push(res);
this.payerOptions[index].text = res.payee;
this.payerOptions[index].value = res.id;
}
})
});
this.getDictionaries();
this.getFileList();
},
methods: {
goFlow(){
if(this.form.approvalMode == '1' && this.form.approvalTemplateId != undefined && this.form.approvalTemplateId != "undefined"){
window.location='approvalProcess3?approvalTemplateId='+this.form.approvalTemplateId+'&approvalMode='+this.form.approvalMode;
}else{
this.$notify({ type: 'danger', message: '无审批流程!' });
}
},
getDictionaries(){
getTransfer(this.$route.query.id).then((response) => {
this.getDicts("capital_expenditure_type").then((res) => {
for (var i = 0; i < res.data.length; i++) {
this.capitalExpenditureTypeOptions.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
this.capitalExpenditureType = this.selectDictLabel(res.data, response.data.capitalExpenditureType);
});
if(response.data.capitalExpenditureType==2){
this.capitalExpenditureOpen = true
let param={
'outId' : response.data.id,
'ynType' : '1'
}
getProjectto(param).then(res => {
console.log(this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType))
this.projectFundType = this.selectDictLabel(this.projectFundTypeDictionaries, res.data.projectFundType);
this.projectForm = res.data
console.log(res.data)
})
}else{
this.showproject = false
}
this.form = response.data;
this.getPayeeList();
});
queryTransferDetail(this.$route.query.id).then((response) => {
this.getDicts("bank_type").then(res => {
for (var i = 0; i < res.data.length; i++) {
this.bankTypeDictionaries.push({text: res.data[i].dictLabel, value: res.data[i].dictValue});
}
for (var j = 0 ; j < response.rows.length ; j++){
// response.rows[j].payeeText = response.rows[j].payee;
response.rows[j].bankTypeText = this.selectDictLabel(res.data, response.rows[j].bankType);
response.rows[j].showPayee = false;
}
this.chargeItme = response.rows;
});
});
},
getChange(){
if(this.buttonType == 'update'){
this.goUpdate();
}else if(this.buttonType == 'add'){
this.goAdd();
}
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
addChargeItme(index){
if(this.chargeItme.length>0&&this.chargeItme[this.chargeItme.length-1].payee == ''){
this.$notify({ type: 'danger', message: '请勿添加多个空列表信息' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].incomeAmount == ''){
this.$notify({ type: 'danger', message: '请输入收入金额!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].payeeAccount == ''){
this.$notify({ type: 'danger', message: '请输入收款账户!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankDeposit == ''){
this.$notify({ type: 'danger', message: '请输入开户银行!' });
return;
}else if(this.chargeItme.length>0&&this.chargeItme[index-1].bankType == ''){
this.$notify({ type: 'danger', message: '请选择所属银行!' });
return;
}
this.getDicts("bank_type").then(res => {
this.chargeItme.splice(index + 1, 0, {
payeeId: "", //收款方ID
payee: "", //收款方
payeeAccount: "", //收款账户
bankDeposit: "", //开户银行
incomeAmount: "", //收入金额
bankType: "", //所属银行
bankTypeText: "", //所属银行
showPayee:false,
showbankType:false
});
});
},
getPayeeList() {
//普通转账
this.queryParams.accountType = this.form.accountType
this.queryParams.status = "0"
if(this.form.cashierId==null||this.form.cashierId==""){
this.$notify({ type: 'danger', message: '请先选择付款方!' });
return;
}else {
this.queryParams.taccountId = parseInt(this.form.cashierId)
listVaccount(this.queryParams).then((response) => {
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
});
}
},
payeeDictLabel(datas, value) {
var actions = [];
Object.keys(datas).some((key) => {
if (datas[key].payeeId == ('' + value)) {
actions.push(datas[key].payee);
return true;
}
})
return actions.join('');
},
onConfirmCapital(data){
if (data.value != 2){
this.capitalExpenditureOpen = false;
this.projectForm = [];
}else{
this.capitalExpenditureOpen = true;
}
this.capitalExpenditureType = data.text;
this.form.capitalExpenditureType = data.value;
this.showcapital = false;
},
onConfirmFundType(data){
console.log(data)
this.projectForm.projectFundType = data.value;
this.projectFundType = data.text;
this.showFundType = false;
},
onConfirmProject(data){
this.projectList.map(res => {
if(res.projectName==data.text){
this.projectForm.projectId = res.id
this.projectForm.projectName = res.projectName
this.projectForm.projectContractor = res.projectContractor
this.projectForm.projectAmount = res.projectAmount
}
})
this.showproject = false;
},
onConfirmPayee(data,index){
console.log(data)
for (var i = 0 ; i < this.chargeItme.length ; i++){
this.chargeItme[i].showPayee = false;
}
this.chargeItme[index].payee = data.text;
this.chargeItme[index].payeeId = data.value;
this.payeeSelectChange(data.value , index)
this.onConfirmBankType(data,index)
},
onConfirmBankType(data,index){
console.log(this.bankTypeDictionaries)
this.bankTypeDictionaries.map(res => {
if(res.value==data.bankType){
this.chargeItme[index].bankTypeText = res.text;
this.chargeItme[index].bankType = res.value;
}
})

},
onConfirmPayer(data){
this.form.payer = data.text;
this.form.cashierId = data.value;
this.showpayer = false;
this.selectChange(data.value)
},
onConfirmLasj(data){
this.form.applyDate = this.getNowFormatDate(data).substr(0,10);
this.showlasj = false;
},
accountTypeChange(e){
this.payeeList = [];
this.chargeItme = [];
this.queryParams.accountType = this.form.accountType
if(this.form.cashierId==null||this.form.cashierId==""){
this.$notify({ type: 'danger', message: '请先选择付款方!' });
return;
}else {
this.queryParams.taccountId = parseInt(this.form.cashierId)
console.log(this.queryParams)
listVaccount(this.queryParams).then((response) => {
this.payeeList = response.rows;
response.rows.map((res,index) => {
this.payeeList[index].text = res.payee;
this.payeeList[index].value = res.id;
})
});
}
},
// 钱计算
moneyChange(input) {
console.log(input)
let obj = {};
obj = this.chargeItme.find((account) => {
//model就是上面的数据源
return parseFloat(account.incomeAmount).toFixed(2) === input; //筛选出匹配数据
});
let total = 0;
this.chargeItme.forEach((money) => {
total = (parseFloat(total) + parseFloat(money.incomeAmount)).toFixed(2)
});
this.$set(this.form, "expenditureAmount", total);
},
goAdd(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
if((this.uploadFiles==null||this.uploadFiles.length==0)&&(this.fileList==null||this.fileList.length==0)){
Dialog.confirm({
title: '提示',
message: '此申请单中未上传任何附件,是否确认提交?',
})
.then(() => {
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then(response => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
})
.catch(() => {
return false;
});
}else{
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then(response => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
})
}else{
customSubmit(this.form.id).then(res => {
this.$toast.success('提交成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}
}
});
}


},
goUpdate(){
if(this.chargeItme.length<1){
this.$notify({ type: 'danger', message: '请添加收款方信息' });
return;
}
if(this.form.remark != null && this.form.remark.indexOf("|")!=-1){
this.$notify({ type: 'danger', message: '付款事由禁止包含!' });
return;
}
if(this.form.capitalExpenditureType==2){
if(this.projectForm.projectName==""||this.projectForm.projectName==null){
this.$notify({ type: 'danger', message: '请选择项目名称!' });
return;
}
if(this.projectForm.projectBillNum==""||this.projectForm.projectBillNum==null){
this.$notify({ type: 'danger', message: '请输入工程发票号!' });
return;
}
}
this.$set(this.form, "payeeList", this.chargeItme);
this.$set(this.form, "bankTypeList", this.chargeItme);
this.$set(this.form, "accountTypeList", this.chargeItme);
this.$set(this.form, "transferStatusList", this.chargeItme);
updateTransfer(this.form).then((response) => {
this.projectForm.outId = this.form.id
this.$set(this.projectForm, "ynType", '1');
if(this.uploadFiles!=null&&this.uploadFiles.length>0){
console.log(this.uploadFiles)
this.uploadFiles.map(rr => {
const params = new FormData();
params.append("tableId", this.form.id);
params.append("tableName", "t_yinnong_transfer");
params.append("bizPath", "transfer");
params.append("fileType", "1");
params.append("file", rr);
commonAttach(params).then((r) => {
})
})
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}else{
if(this.form.capitalExpenditureType==2){
addProjectto(this.projectForm).then(res => {
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
})
}else{
this.$toast.success('保存成功');
setTimeout(function(){
history.go(-1)
},2000)
}
}

});
},
payeeSelectChange(select, i) {
let obj = {};
let fuzhitype = 0;
obj = this.payeeList.find((account) => {
//model就是上面的数据源
return account.id === select ; //筛选出匹配数据
});
if(this.chargeItme != [] && this.chargeItme.length>1){
this.chargeItme.some((value, index) => {
if(value.payeeAccount != undefined &&value.payeeAccount != '' && obj.payeeAccount == value.payeeAccount&&index!=i){
fuzhitype = 2;
return true;
}
if(value.accountType != undefined &&value.accountType != '' && obj.accountType != value.accountType&&index!=i){
fuzhitype = 1;
return true;
}
});
}
if(fuzhitype == 0){
this.$set(this.chargeItme[i], "payee",obj.payee)
this.$set(this.chargeItme[i], "bankType", obj.bankType)
this.$set(this.chargeItme[i], "payeeId", obj.id);
this.$set(this.chargeItme[i], "payeeAccount", obj.payeeAccount);
this.$set(this.chargeItme[i], "bankDeposit", obj.bankDeposit);
this.$set(this.chargeItme[i], "accountType", obj.accountType);
this.$set(this.chargeItme[i], "payeePaymentLines", obj.payeePaymentLines);
}else if(fuzhitype == 1){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$set(this.chargeItme[i], "payeePaymentLines", '');
this.$notify({ type: 'danger', message: '请选择账户类型相同的收款方!' });
}else if(fuzhitype == 2){
this.$set(this.chargeItme[i], "payee",'')
this.$set(this.chargeItme[i], "bankType",'')
this.$set(this.chargeItme[i], "payeeId", '');
this.$set(this.chargeItme[i], "payeeAccount", '');
this.$set(this.chargeItme[i], "bankDeposit", '');
this.$set(this.chargeItme[i], "accountType", '');
this.$set(this.chargeItme[i], "payeePaymentLines", '');
this.$notify({ type: 'danger', message: '收款方已存在!' });
}
},
selectChange(select) {
let obj = {};
obj = this.payerOptions.find((account) => {
//model就是上面的数据源
return account.id === select; //筛选出匹配数据
});
if(obj.accountPassword != null && obj.accountPassword != "" &&
obj.bankType != null && obj.bankType != ""){
this.$set(this.form, "bookId", obj.bookId);
this.$set(this.form, "deptId", obj.deptId);
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
this.$set(this.form, "operatorCode", obj.operatorCode);
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
this.$set(this.form, "bankType", obj.bankType);
this.$set(this.form, "payerFrom", '1');
}else{
if(obj.payerFrom==1){
this.diglogStatus = false;
this.$notify({ type: 'danger', message: "请完善付款方“操作员代码”、“企业编码”、“支付口令”等信息!" });
this.$set(this.form,"payer","")
this.$set(this.form,"payerAccount","")
}else{
this.$set(this.form, "payerFrom", obj.parerFrom);
if(obj.operatorCode!=null&&obj.operatorCode!=''){
this.$set(this.form, "operatorCode", obj.operatorCode);
}else{
this.$set(this.form, "operatorCode", '');
}
if(obj.enterpriseCode!=null&&obj.enterpriseCode!=''){
this.$set(this.form, "enterpriseCode", obj.enterpriseCode);
}else{
this.$set(this.form, "enterpriseCode", '');
}
if(obj.accountPassword!=null&&obj.accountPassword!=''){
this.$set(this.form, "accountPassword", obj.accountPassword);
}else{
this.$set(this.form, "accountPassword", '');
}
this.$set(this.form, "bookId",'');
this.$set(this.form, "deptId", '');
this.$set(this.form, "cashierId", obj.id);
this.$set(this.form, "payer", obj.accountName);
if(obj.payerFrom==6){
getQmyeFlow(obj.bankAccountNumber).then((response) => {
this.$set(this.form, "payerAccount", response.data);
});
}else {
this.$set(this.form, "payerAccount", obj.bankAccountNumber);
}
}
}
},
beforeRead(file) {
this.uploadFiles.push(file.file);
},
deleteFile(file){
console.log(file)
this.uploadFiles.map((response,index) => {
if(file.file == response){
this.uploadFiles.splice(index,1)
}
})
if(file.id){
systemAttachment(file.id).then((res) => {
});
}
},
getFileList(){
let oData= {
tableId: this.$route.query.id,
tableName: "t_yinnong_transfer",
bizPath: "transfer",
fileType: "",
}
attachmentList(oData).then(res => {
console.log(res)
console.log(location.protocol+"//"+location.host+request.defaults.baseURL)
res.rows.map(r => {
let baseUrl = location.protocol+"//"+location.host+request.defaults.baseURL
this.fileList.push({"url":baseUrl + r.fileUrl,"file":new File([],r.fileName,{}),"id":r.id})
console.log(r)
})
})
},
goBack(){
window.history.go(-1)
},
//删除家庭成员
deleteChargeItme(index){
this.chargeItme.splice(index,1)
},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
position: relative;
}
.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>

+ 223
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess.vue Datei anzeigen

@@ -0,0 +1,223 @@
<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-if="processList.待申请!=2">
<van-col span="4" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col>
<van-col span="20" class="textBlue">草稿</van-col>
</van-row>
<van-row v-if="processList.待申请==2">
<van-col span="4" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col>
<van-col span="20" class="textBlue">已申请
<van-row>
<van-col span="8" style="padding: 0;" class="textBlue" v-show="processList.待申请==2">{{processList.申请人}}</van-col>
<van-col span="16" style="padding: 0;" class="textBlue" v-show="processList.待申请==2">{{processList.申请时间}}</van-col>
</van-row>
</van-col>
</van-row>
<van-row v-if="processList.status==2" v-for="(item1,index,i) in processList.审批事项" :key="i">
<van-col span="4" align="right">
<p class="icon_jian" v-show="item1.approverStatus==1"><van-icon name="minus" size="14" /></p>
<p class="icon_jian blue" v-show="item1.approverStatus==2"><van-icon name="success" size="14" /></p>
<p class="icon_jian red" v-show="item1.approverStatus==3"><van-icon name="cross" size="14" /></p>
</van-col>
<van-col span="20">
<van-row>
<van-col span="8" style="padding: 0;">
<p v-show="item1.approverStatus == 1">{{item1.deptLabel}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.deptLabel}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.deptLabel}}</p>
</van-col>
<van-col span="16" style="padding: 0;" >
<p v-show="item1.approverStatus == 1">{{item1.time}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.time}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.time}}</p>
</van-col>
</van-row>
<van-row>
<van-col span="16" style="padding: 0;" >
<p v-show="item1.approverStatus == 1">{{item1.assigneeName}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.assigneeName}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.assigneeName}}</p>
</van-col>
<van-col span="8" style="padding: 0;">
<p v-show="item1.approverStatus == 1">{{item1.comment}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.comment}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.comment}}</p>
</van-col>
</van-row>
</van-col>
</van-row>
<van-divider content-position="center" v-if="approvalTemplateDetailList.length>0"><h4>审批流程</h4></van-divider>
<van-row v-if="approvalTemplateDetailList.length>0" v-for="(item1,index,i) in approvalTemplateDetailList" :key="i">
<van-col span="4" align="right">
<p class="icon_jian" ><van-icon name="minus" size="14" /></p>
</van-col>
<van-col span="20">
<van-row>
<van-col span="12" style="padding: 0;">
<p>{{item1.name}}</p>
</van-col>
<van-col span="12" style="padding: 0;">
<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>
</van-col>
</van-row>
</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.processSchedule
this.processList.乡镇审批时间 = this.processList.乡镇审批时间?this.format(this.processList.乡镇审批时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.区县审批时间 = this.processList.区县审批时间?this.format(this.processList.区县审批时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.支付状态时间 = this.processList.支付状态时间?this.format(this.processList.支付状态时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.入账状态时间 = this.processList.入账状态时间?this.format(this.processList.入账状态时间, "yyyy-MM-dd HH:mm:ss"):""
})
},
handleUpdate(id) {
getTransfer(id).then((response) => {
this.form = response.data;
this.processList = {}
if(this.form.auditStatus != 0){
this.getTransferProcess(this.$route.query.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;
}
.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{
background-color: #C9C9C9;
display: inline-block;
width: 20Px;
height: 20Px;
line-height: 24Px;
text-align: center;
border-radius: 50%;
color: #FFF;
}
.blue{
background-color: #1D6FE9;
}
.red{
background-color: rgb(245, 108, 108);
}
.textBlue{
color: #1D6FE9!important;
}
.textRed{
color: rgb(245, 108, 108)!important;
}
.van-col{
padding: 10Px 10Px;
}
.van-col:nth-child(2){
font-size: 16Px;
color: #878787;
line-height: 22Px;
}
.van-row{
.van-row{
.van-col{
padding: 5Px 0 0 0!important;
color: #878787;
}
}
}
</style>

+ 228
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess2.vue Datei anzeigen

@@ -0,0 +1,228 @@
<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-if="processList.待申请!=2">
<van-col span="4" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col>
<van-col span="20" class="textBlue">草稿</van-col>
</van-row>
<van-row v-if="processList.待申请==2">
<van-col span="4" align="right"><p class="icon_jian blue"><van-icon name="success" size="14" /></p></van-col>
<van-col span="20" class="textBlue">已申请
<van-row>
<van-col span="8" style="padding: 0;" class="textBlue" v-show="processList.待申请==2">{{processList.申请人}}</van-col>
<van-col span="16" style="padding: 0;" class="textBlue" v-show="processList.待申请==2">{{processList.申请时间}}</van-col>
</van-row>
</van-col>
</van-row>
<van-row v-if="processList.status==2" v-for="(item1,index,i) in processList.审批事项" :key="i">
<van-col span="4" align="right">
<p class="icon_jian" v-show="item1.approverStatus==1"><van-icon name="minus" size="14" /></p>
<p class="icon_jian blue" v-show="item1.approverStatus==2"><van-icon name="success" size="14" /></p>
<p class="icon_jian red" v-show="item1.approverStatus==3"><van-icon name="cross" size="14" /></p>
</van-col>
<van-col span="20">
<van-row>
<van-col span="8" style="padding: 0;">
<p v-show="item1.approverStatus == 1">{{item1.deptLabel}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.deptLabel}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.deptLabel}}</p>
</van-col>
<van-col span="16" style="padding: 0;" >
<p v-show="item1.approverStatus == 1">{{item1.time}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.time}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.time}}</p>
</van-col>
</van-row>
<van-row>
<van-col span="16" style="padding: 0;" >
<p v-show="item1.approverStatus == 1">{{item1.assigneeName}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.assigneeName}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.assigneeName}}</p>
</van-col>
<van-col span="8" style="padding: 0;">
<p v-show="item1.approverStatus == 1">{{item1.comment}}</p>
<p v-show="item1.approverStatus == 2" class="textBlue">{{item1.comment}}</p>
<p v-show="item1.approverStatus == 3" class="textRed">{{item1.comment}}</p>
</van-col>
</van-row>
</van-col>
</van-row>
<van-divider content-position="center" v-if="approvalTemplateDetailList.length>0"><h4>审批流程</h4></van-divider>
<van-row v-if="approvalTemplateDetailList.length>0" v-for="(item1,index,i) in approvalTemplateDetailList" :key="i">
<van-col span="4" align="right">
<p class="icon_jian" ><van-icon name="minus" size="14" /></p>
</van-col>
<van-col span="20">
<van-row>
<van-col span="12" style="padding: 0;">
<p>{{item1.name}}</p>
</van-col>
<van-col span="12" style="padding: 0;">
<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>
</van-col>
</van-row>
</div>
</div>
</template>

<script>
import {
getTransferProcess,
getTransfer,
getProjectto,
queryTransferDetail,
selectApprovalByTemplateId
} from "@/api/onlineHome/bankAgriculture/paymentApproval";
import {
getCash,
getTransferProcess1,
listCashdetailByCashId
} from "../../../../api/onlineHome/bankAgriculture/paymentApproval";
export default {
name: "approvalProcess",
data() {
return {
processList:{},
form:{},
approvalTemplateDeptList:[],
approvalTemplateDetailList:[]
};
},
created() {
this.handleUpdate(this.$route.query.id);
},
methods: {
//查询审批进程
getTransferProcess1(id){
getTransferProcess(id).then(res => {
this.processList = res.data.processSchedule
this.processList.乡镇审批时间 = this.processList.乡镇审批时间?this.format(this.processList.乡镇审批时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.区县审批时间 = this.processList.区县审批时间?this.format(this.processList.区县审批时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.支付状态时间 = this.processList.支付状态时间?this.format(this.processList.支付状态时间, "yyyy-MM-dd HH:mm:ss"):""
this.processList.入账状态时间 = this.processList.入账状态时间?this.format(this.processList.入账状态时间, "yyyy-MM-dd HH:mm:ss"):""
})
},
handleUpdate(id) {
getCash(id).then((response) => {
this.form = response.data;
this.processList = {}
if(this.form.auditStatus != 0){
this.getTransferProcess1(this.$route.query.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' : '2'
}
getProjectto(param).then(res => {
this.projectForm = res.data
this.projectForm.projectFundType+=""
listCashdetailByCashId(id).then((r) => {
this.chargeItme = r.data;
this.length = this.chargeItme.length;
this.detailTotal = r.total;
this.loading = false;
});
})
}else{
this.capitalExpenditureOpen = false
listCashdetailByCashId(id).then((r) => {
this.chargeItme = r.data;
this.length = this.chargeItme.length;
this.detailTotal = r.total;
this.loading = false;
});
}

});

},
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 0.2rem 0;
}
.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{
background-color: #C9C9C9;
display: inline-block;
width: 20Px;
height: 20Px;
line-height: 24Px;
text-align: center;
border-radius: 50%;
color: #FFF;
}
.blue{
background-color: #1D6FE9;
}
.red{
background-color: rgb(245, 108, 108);
}
.textBlue{
color: #1D6FE9!important;
}
.textRed{
color: rgb(245, 108, 108)!important;
}
.van-col{
padding: 10Px 10Px;
}
.van-col:nth-child(2){
font-size: 16Px;
color: #878787;
line-height: 22Px;
}
.van-row{
.van-row{
.van-col{
padding: 5Px 0 0 0!important;
color: #878787;
}
}
}
</style>

+ 128
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/approvalProcess3.vue Datei anzeigen

@@ -0,0 +1,128 @@
<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-if="approvalTemplateDetailList.length>0" v-for="(item1,index,i) in approvalTemplateDetailList" :key="i">
<van-col span="4" align="right">
<p class="icon_jian" ><van-icon name="minus" size="14" /></p>
</van-col>
<van-col span="20">
<van-row>
<van-col span="12" style="padding: 0;">
<p>{{item1.name}}</p>
</van-col>
<van-col span="12" style="padding: 0;">
<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>
</van-col>
</van-row>
</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.approvalTemplateId);
},
methods: {
handleUpdate(approvalTemplateId) {
console.log("approvalTemplateId:"+approvalTemplateId);
console.log("this.$route.query.approvalMode:"+this.$route.query.approvalMode);
if(this.$route.query.approvalMode == '1' && approvalTemplateId != undefined && approvalTemplateId != "undefined"){
selectApprovalByTemplateId(approvalTemplateId).then(rs => {
this.approvalTemplateDeptList = rs.approvalDepts;
this.approvalTemplateDetailList = rs.approvalDetails;
})
}
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 0.2rem 0;
}
.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{
background-color: #C9C9C9;
display: inline-block;
width: 20Px;
height: 20Px;
line-height: 24Px;
text-align: center;
border-radius: 50%;
color: #FFF;
}
.blue{
background-color: #1D6FE9;
}
.red{
background-color: rgb(245, 108, 108);
}
.textBlue{
color: #1D6FE9!important;
}
.textRed{
color: rgb(245, 108, 108)!important;
}
.van-col{
padding: 10Px 10Px;
}
.van-col:nth-child(2){
font-size: 16Px;
color: #878787;
line-height: 22Px;
}
.van-row{
.van-row{
.van-col{
padding: 5Px 0 0 0!important;
color: #878787;
}
}
}
</style>

+ 274
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd.vue Datei anzeigen

@@ -0,0 +1,274 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加收款账户信息</p>
</template>
</van-nav-bar>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="isPeersRead ? showBankType = true : ''"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<!-- @click="showPayeeType = true"-->
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<!-- <van-radio name="1">停用</van-radio>-->
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
isPeersRead:true,
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0',
payeeType:'1'
},
bankType:'',
payeeType:'收款方',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
const accountType = this.$route.params.accountType;
const isPeers = this.$route.params.isPeers;
const bankType = this.$route.params.bankType;
console.log(this.$route.params.option)
if (accountType){this.form.accountType = accountType;}
if (isPeers){
this.form.isPeers = isPeers;
if (isPeers == 'Y'){
this.isPeersRead = false;
this.getDicts("bank_type").then((res) => {
let bankText = this.selectDictLabel(res.data,bankType);
let data = {
text : bankText,
value : bankType
}
this.onConfirmBankType(data);
});
}
}
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
console.log(data)
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
var that = this;
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
that.form.bankTypeText = that.bankType;
that.$router.push({name: 'approvalAdd', params: { payeeForm: that.form }});
// history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 274
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionAdd2.vue Datei anzeigen

@@ -0,0 +1,274 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加收款账户信息</p>
</template>
</van-nav-bar>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="isPeersRead ? showBankType = true : ''"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<!-- @click="showPayeeType = true"-->
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<!-- <van-radio name="1">停用</van-radio>-->
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
isPeersRead:true,
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0',
payeeType:'4'
},
bankType:'',
payeeType:'公务卡',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
const accountType = this.$route.params.accountType;
const isPeers = this.$route.params.isPeers;
const bankType = this.$route.params.bankType;
console.log(this.$route.params.option)
if (accountType){this.form.accountType = accountType;}
if (isPeers){
this.form.isPeers = isPeers;
if (isPeers == 'Y'){
this.isPeersRead = false;
this.getDicts("bank_type").then((res) => {
let bankText = this.selectDictLabel(res.data,bankType);
let data = {
text : bankText,
value : bankType
}
this.onConfirmBankType(data);
});
}
}
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
console.log(data)
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
var that = this;
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
that.form.bankTypeText = that.bankType;
that.$router.push({name: 'approvalAdd2', params: { payeeForm: that.form }});
// history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 276
- 0
src/views/sunVillage_info/bankAgriculture/paymentApproval/collectionApprovalAdd.vue Datei anzeigen

@@ -0,0 +1,276 @@
<template>
<div class="app-container">
<van-nav-bar
left-arrow
fixed
placeholder
@click-left="goBack"
>
<template #title>
<p style="font-weight: bold;">添加收款账户信息</p>
</template>
</van-nav-bar>

<van-form @submit="goAdd" @failed="getError" :show-error-message="false" scroll-to-error validate-first>
<p class="main_title">基础信息</p>
<div class="main_box">
<van-field label="收款方" required :rules="[{ required: true , message:'请输入收款方' }]" v-model="form.payee" placeholder="请输入收款方" input-align="right" label-width="auto"/>
<van-field label="收款账户" required :rules="[{ required: true , message:'请输入收款账户' }]" v-model="form.payeeAccount" placeholder="请输入收款账户" input-align="right" label-width="auto"/>
<van-field
readonly
clickable
label="所属银行"
placeholder="请选择"
v-model="bankType"
@click="isPeersRead ? showBankType = true : ''"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择所属银行' }]"
/>
<van-popup v-model="showBankType" position="bottom">
<van-picker
show-toolbar
:columns="bankTypeOptions"
@confirm="onConfirmBankType"
@cancel="showBankType = false"
/>
</van-popup>
<van-field
readonly
clickable
label="开户银行"
placeholder="请选择"
@click="showBankDeposit = true"
v-model="bankDeposit"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择开户银行' }]"
/>
<van-popup v-model="showBankDeposit" position="bottom">
<van-picker
show-toolbar
:columns="bankDepositOptions"
@confirm="onConfirmBankDeposit"
@cancel="showBankDeposit = false"
/>
</van-popup>
<van-field label="联行号" readonly required :rules="[{ required: true , message:'请输入联行号' }]" v-model="form.payeePaymentLines" input-align="right" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-field label="备注" v-model="form.remark" type="textarea" placeholder="请输入备注" input-align="right" rows="3" label-width="auto"/>
</div>

<div class="main_box" style="margin-top: 10px;">
<van-cell title="账户类型" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择账户类型' }]" v-model="form.accountType">
<van-radio name="1">公户</van-radio>
<van-radio name="2">私户</van-radio>
</van-radio-group>
</template>
</van-cell>
<van-field
readonly
clickable
label="收款人类型"
placeholder="请选择"
v-model="payeeType"
input-align="right"
right-icon="arrow-down"
label-width="auto"
required
:rules="[{ required: true , message:'请选择收款人类型' }]"
/>
<!-- @click="showPayeeType = true"-->
<van-popup v-model="showPayeeType" position="bottom">
<van-picker
show-toolbar
:columns="payeeTypeOptions"
@confirm="onConfirmPayeeType"
@cancel="showPayeeType = false"
/>
</van-popup>
<van-cell title="数据状态" required>
<template #right-icon>
<van-radio-group direction="horizontal" required :rules="[{ required: true , message:'请选择数据状态' }]" v-model="form.status">
<van-radio name="0">正常</van-radio>
<!-- <van-radio name="1">停用</van-radio>-->
</van-radio-group>
</template>
</van-cell>
</div>
<div style="padding: 16px 0;">
<van-row>
<van-col span="24" align="center">
<van-button type="info" native-type="submit" class="submitButton">保<i style="margin-right: 1em;"></i>存</van-button>
</van-col>
</van-row>
<div class="clear"></div>
</div>
</van-form>
</div>
</template>

<script>
import { addPayee,listDeposit } from "@/api/onlineHome/bankAgriculture/collectionAccount";
export default {
name: "collectionAdd",
data() {
return {
id:'',
isPeersRead:true,
showBankType:false,
showBankDeposit:false,
showPayeeType:false,
form:{
accountType:'1',
status:'0',
payeeType:'1'
},
bankType:'',
payeeType:'收款方',
bankDeposit:'',
bankTypeOptions:[],
statusOptions:[],
accountTypeOptions:[],
payeeTypeOptions:[],
bankDepositOptions:[],
};
},
created() {
this.getDictionaries();
const accountType = this.$route.params.accountType;
const isPeers = this.$route.params.isPeers;
const bankType = this.$route.params.bankType;
this.id = this.$route.params.id;
console.log(isPeers)
if (accountType){this.form.accountType = accountType;}
if (isPeers){
this.form.isPeers = isPeers;
if (isPeers == 'Y'){
this.isPeersRead = false;
this.getDicts("bank_type").then((res) => {
let bankText = this.selectDictLabel(res.data,bankType);
let data = {
text : bankText,
value : bankType
}
this.onConfirmBankType(data);
});
}
}
},
methods: {
getDictionaries(){
this.houseGetDicts("bank_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.bankTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("sys_normal_disable").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.statusOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("bank_account_type").then((res) => {
console.log(res)
for(var i = 0 ; i < res.data.length ; i++){
this.accountTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
this.houseGetDicts("payee_type").then((res) => {
for(var i = 0 ; i < res.data.length ; i++){
this.payeeTypeOptions.push({text:res.data[i].dictLabel,value:res.data[i].dictValue});
}
});
},
getError(e){
this.$notify({ type: 'danger', message: e.errors[0].message });
},
onConfirmBankType(data){
console.log(data)
this.bankType = data.text;
this.form.bankType = data.value;
this.bankDeposit = ""
this.form.payeePaymentLines = ""
this.showBankType = false;
let queryParams={
"bankType":this.form.bankType,
"status": "0",
}
listDeposit(queryParams).then(response => {
this.bankDepositOptions = []
for(var i = 0 ; i < response.rows.length ; i++){
this.bankDepositOptions.push({"text":response.rows[i].bankDeposit,"value":response.rows[i].id,
"payeePaymentLines":response.rows[i].payeePaymentLines,"institutionNumber":response.rows[i].institutionNumber});
}
});
},
onConfirmBankDeposit(data){
this.bankDeposit = data.text
this.form.bankDeposit = data.text
this.form.payeePaymentLines = data.payeePaymentLines
this.form.alternateField10 = data.institutionNumber
this.showBankDeposit = false;
},
onConfirmPayeeType(data){
this.payeeType = data.text;
this.form.payeeType = data.value;
this.showPayeeType = false;
},
goAdd(){
var that = this;
addPayee(this.form).then(response => {
this.$toast.success('新增成功');
setTimeout(function(){
that.form.bankTypeText = that.bankType;
that.$router.push({name: 'approvalModify', params: { payeeForm: that.form , id : that.id}});
// history.go(-1)
},2000)
});
},
goBack(){
window.history.go(-1)
}
},
}
</script>

<style scoped lang="scss">
.app-container {
padding: 2% 0;
}
.main_title{
font-size: 0.4rem;
color: #1D6FE9;
margin: 0.2rem 6%;
margin-top: 0;
position: relative;
}
.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%;
}
</style>

+ 104
- 8
src/views/sunVillage_info/index.vue Datei anzeigen

@@ -47,6 +47,11 @@
<div class="title"></div>
<div class="nav_list">
<div class="nav_list_box">
<van-cell style="border-radius: 6px;">
<template #title>
<p style="font-weight: bold;font-size: 18px;display: inline-block">阳光村务</p>
</template>
</van-cell>
<router-link :to="{name:'sunVillageInfoListFinance'}" class="nav_item n_1">财务公开榜</router-link>
<router-link :to="{name:'sunVillageInfoListTourists'}" class="nav_item n_2">零工公开榜</router-link>
<router-link :to="{name:'sunVillageInfoListIssues'}" class="nav_item n_3">重大事项</router-link>
@@ -57,6 +62,71 @@
<router-link :to="{name:'sunVillageInfoListRegister'}" class="nav_item n_8">零工登记</router-link>
</div>
</div>
<div class="nav_list">
<div class="nav_box">
<van-cell style="border-radius: 6px;">
<template #title>
<p style="font-weight: bold;font-size: 18px;display: inline-block">支出申请</p>
</template>
</van-cell>
<van-grid :border="false">
<van-grid-item text="银行卡转账" :to="{name:'sunVillageApprovalList'}" >
<div class="icon" slot="default" style="background:#FF4646;" >
<img src="../../../static/images/onlineHome/icon_Y1.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">银行卡转账</p>
</van-grid-item>
<!-- <van-grid-item text="代管转账" :to="{name:'approvalList4'}" >-->
<!-- <div class="icon" slot="default" style="background:#c568f5;" >-->
<!-- <img src="../../../static/images/onlineHome/icon_Y4.png" alt />-->
<!-- </div>-->
<!-- <p style="margin-top: 5px;color: #666666;">代管转账</p>-->
<!-- </van-grid-item>-->
<van-grid-item text="信用卡还款" :to="{name:'sunVillageApprovalList2'}" >
<div class="icon" slot="default" style="background:#3ac2db;" >
<img src="../../../static/images/onlineHome/icon_Y2.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">信用卡还款</p>
</van-grid-item>
<!-- <van-grid-item text="现金提现" :to="{name:'approvalList10'}" >-->
<!-- <div class="icon" slot="default" style="background:#FF6464;" >-->
<!-- <img src="../../../static/images/onlineHome/icon_Y6.png" alt />-->
<!-- </div>-->
<!-- <p style="margin-top: 5px;color: #666666;">现金提现</p>-->
<!-- </van-grid-item>-->
<van-grid-item text="备付金支出" :to="{name:'sunVillageApprovalList11'}" >
<div class="icon" slot="default" style="background:#7790FE;" >
<img src="../../../static/images/onlineHome/icon_Y7.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">备付金支出</p>
</van-grid-item>
<van-grid-item text="汇票支出" :to="{name:'sunVillageApprovalList12'}" >
<div class="icon" slot="default" style="background:#539ffd;" >
<img src="../../../static/images/onlineHome/icon_Y8.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">汇票支出</p>
</van-grid-item>
<van-grid-item text="收款账户" :to="{name:'sunVillageCollectionList'}" >
<div class="icon" slot="default" style="background:#7dda4f;" >
<img src="../../../static/images/onlineHome/icon_Y9.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">收款账户</p>
</van-grid-item>
<van-grid-item text="付款账户" :to="{name:'sunVillagePaymentAccountList'}" >
<div class="icon" slot="default" style="background:#FF4646;" >
<img src="../../../static/images/onlineHome/icon_Y10.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">付款账户</p>
</van-grid-item>
<van-grid-item text="开户行" :to="{name:'sunVillageBankOfDepositList'}" >
<div class="icon" slot="default" style="background:#FF6464;" >
<img src="../../../static/images/onlineHome/icon_Y6.png" alt />
</div>
<p style="margin-top: 5px;color: #666666;">开户行</p>
</van-grid-item>
</van-grid>
</div>
</div>
</div>
<div class="footer">
技术支持:北京农燊高科信息技术有限公司
@@ -260,15 +330,31 @@
.nav_list{
margin-top: 6vh;
padding:0 38px;
&:nth-child(3){
margin-top: 3vh;
}
.van-cell{
background: transparent;
}
.nav_list_box{
display: flex;
flex-flow: wrap;
box-shadow: 0px 0px 18px rgba(63,68,75,0.2);
padding: 0 0 20PX;
border-radius: 15PX;
overflow: hidden;
}
.nav_box{
box-shadow: 0px 0px 18px rgba(63,68,75,0.2);
margin-bottom: 40PX;
padding: 20PX 0;
border-radius: 15PX;
overflow: hidden;
/deep/ .van-grid-item__content{
background: transparent;
padding-top: 0;
}
}
.nav_item{
.nav_item{
width: 25%;
/*height: 180px;*/
border-radius: 30px;
@@ -316,15 +402,25 @@
background-size: 50%;
}
}
.icon{
padding: 15px;
border-radius: 10px;
box-sizing: border-box;
width: 80px;
height: 80px;
text-align:center;
}
.icon img{
width:50px;
}
}
}
.footer{
position: absolute;
bottom: 5.5vh;
width: 100%;
font-size: 22px;
color: #3f3d56;
text-align: center;
width: 100%;
font-size: 22px;
color: #3f3d56;
text-align: center;
padding-bottom: 25PX;
}
}
</style>

+ 157
- 0
src/views/yinnong/doneCompleted/completed.vue Datei anzeigen

@@ -0,0 +1,157 @@
<template>
<div>
<van-nav-bar
title="待办事项"
/>
<van-swipe class="my-swipe" :autoplay="3000" indicator-color="white" style="width: 96%;margin: 2%;height:120px;border-radius: 6px;">
<van-swipe-item v-for="(image,index) in images" :key="index">
<img :src="image" style="width:100%;height: 120px"/>
</van-swipe-item>
</van-swipe>
<van-cell-group @click="goDetail(item)" v-for="(item,index) in taskList" :key="index" style="width: 96%;margin:2%;border-radius: 6px;overflow: hidden;padding-top: 10px;padding-bottom: 10px;box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);">
<van-cell>
<template #title>
<van-row style="">
<van-col span="23" :offset="1">

<h3 style="display: inline-block;line-height: 30px;margin-left: 6px;width: 100%;overflow: hidden;">
<van-image
height="20"
width="20"
style="vertical-align: middle;margin-right: 10px"
src="../../../../static/images/onlineHome/done.png"></van-image>{{item.projectName}}</h3>
</van-col>
</van-row>
</template>
</van-cell>
<van-cell>
<template #title>
<van-row>
<van-col span="6" :offset="1">
<p style="color: #878787">{{item.createTime?item.createTime.substring(0,10):item.startTime.substring(0,10)}}</p>
</van-col>
<van-col span="10" :offset="1">
<p style="color: #878787">{{item.formData.activityBusinessType}}</p>
</van-col>
<van-col span="5" :offset="1">
<p style="font-size: 14px;font-weight:bold;text-align: right;color: #1D6FE9">{{activeName=='1'?'待审批':'已审批'}}</p>
</van-col>
</van-row>
</template>
</van-cell>
</van-cell-group>
<van-empty v-if="taskList.length<1" description="暂无事项" />
<yinnongIndex></yinnongIndex>
</div>
</template>

<script>
import onlineHomeIndex from "../../onlineHomeIndex";
import yinnongIndex from "../../yinnongIndex";
import {ListDone, ListTodo} from "../../../api/onlineHome/done";

export default {
components: {
onlineHomeIndex,
yinnongIndex
},
name: "done",
data(){
return{
taskList:[],
activeName:this.$route.query.activeName?this.$route.query.activeName:'1',
total:0,
queryParams: {
pageNum: 1,
pageSize: 100,
},
activityBusinessTypeOptions:[],
images:['../../../../static/images/onlineHome/tab.jpg'],
}
},
created() {
this.getDicts("activity_business_type").then((response) => {
this.activityBusinessTypeOptions = response.data;
if(this.$route.query.activeName){
this.activeName = this.$route.query.activeName
}
this.getList();
});
console.log(this.$route.query.fr)
if(this.$route.query.fr){
this.$cookies.set("from",this.$route.query.fr,"0")
}

},
methods: {
goOnlineHomeIndex(){
if(this.$cookies.get("from")=="my"){
this.$router.push({name:"yinnongMy"})
}else{
this.$router.push({name:"yinnongWorkbench"})
}
},
getList() {
this.taskList = []
this.$set(this.queryParams, "systemType", '4');
ListTodo(this.queryParams).then((response) => {
response.rows.map(res => {
if(res.tableName?res.tableName.indexOf('house')>0:""){
res.tableName = '来自农村宅基地管理系统'
}else if(res.tableName?res.tableName.indexOf('sys_seal')>0:""){
res.tableName = '来自银农直联审批管理系统'
}else if(res.tableName?res.tableName.indexOf('yinnong')>0:""){
res.tableName = '来自银农直联审批管理系统'
}
if(this.activityBusinessTypeOptions){
this.activityBusinessTypeOptions.map(t => {
if(t.dictValue == res.formData.activityBusinessType){
res.formData.activityBusinessType = t.dictLabel
this.taskList.push(res)
}
});
}
})
})
},
goDetail(item){
console.log(item)
let type = item.formData.processKey;
switch (type) {
case 'baseApply':
case 'landscope':
case 'accepting':
this.$router.push({name:'approvalForm',query: {id:item.formData.id,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}})
break;
case 'toReviewTransferProcess':
case 'yinnong_transfer':
if(item.formData.transferType == '10'){
this.$router.push({name:'approvalApproval10',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType == '11'){
this.$router.push({name:'approvalApproval11',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType == '12'){
this.$router.push({name:'approvalApproval12',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType != '10'&&item.formData.transferType != '11'&&item.formData.transferType != '12'){
this.$router.push({name:'approvalApproval',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
}
}
},
}
</script>

<style scoped>
>>>.my-swipe .van-swipe-item {
color: #fff;
font-size: 20px;
line-height: 144px;
text-align: center;
}
</style>

+ 157
- 0
src/views/yinnong/doneCompleted/done.vue Datei anzeigen

@@ -0,0 +1,157 @@
<template>
<div>
<van-nav-bar
title="已办事项"
/>
<van-swipe class="my-swipe" :autoplay="3000" indicator-color="white" style="width: 96%;margin: 2%;height:120px;border-radius: 6px;">
<van-swipe-item v-for="(image,index) in images" :key="index">
<img :src="image" style="width:100%;height: 120px"/>
</van-swipe-item>
</van-swipe>
<van-cell-group @click="goDetail(item)" v-for="(item,index) in taskList" :key="index" style="width: 96%;margin:2%;border-radius: 6px;overflow: hidden;padding-top: 10px;padding-bottom: 10px;box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);">
<van-cell>
<template #title>
<van-row style="">
<van-col span="23" :offset="1">

<h3 style="display: inline-block;line-height: 30px;margin-left: 6px;width: 100%;overflow: hidden;">
<van-image
height="20"
width="20"
style="vertical-align: middle;margin-right: 10px"
src="../../../../static/images/onlineHome/done.png"></van-image>{{item.projectName}}</h3>
</van-col>
</van-row>
</template>
</van-cell>
<van-cell>
<template #title>
<van-row>
<van-col span="6" :offset="1">
<p style="color: #878787">{{item.createTime?item.createTime.substring(0,10):item.startTime.substring(0,10)}}</p>
</van-col>
<van-col span="10" :offset="1">
<p style="color: #878787">{{item.formData.activityBusinessType}}</p>
</van-col>
<van-col span="5" :offset="1">
<p style="font-size: 14px;font-weight:bold;text-align: right;color: #1D6FE9">{{activeName=='1'?'待审批':'已审批'}}</p>
</van-col>
</van-row>
</template>
</van-cell>
</van-cell-group>
<van-empty v-if="taskList.length<1" description="暂无事项" />
<yinnongIndex></yinnongIndex>
</div>
</template>

<script>
import onlineHomeIndex from "../../onlineHomeIndex";
import yinnongIndex from "../../yinnongIndex";
import {ListDone, ListTodo} from "../../../api/onlineHome/done";

export default {
components: {
onlineHomeIndex,
yinnongIndex
},
name: "done",
data(){
return{
taskList:[],
activeName:this.$route.query.activeName?this.$route.query.activeName:'1',
total:0,
queryParams: {
pageNum: 1,
pageSize: 100,
},
activityBusinessTypeOptions:[],
images:['../../../../static/images/onlineHome/tab.jpg'],
}
},
created() {
this.getDicts("activity_business_type").then((response) => {
this.activityBusinessTypeOptions = response.data;
if(this.$route.query.activeName){
this.activeName = this.$route.query.activeName
}
this.getList();
});
console.log(this.$route.query.fr)
if(this.$route.query.fr){
this.$cookies.set("from",this.$route.query.fr,"0")
}

},
methods: {
goOnlineHomeIndex(){
if(this.$cookies.get("from")=="my"){
this.$router.push({name:"yinnongMy"})
}else{
this.$router.push({name:"yinnongWorkbench"})
}
},
getList() {
this.taskList = []
this.$set(this.queryParams, "systemType", '4');
ListDone(this.queryParams).then((response) => {
response.rows.map(res => {
if(res.tableName?res.tableName.indexOf('house')>0:""){
res.tableName = '来自农村宅基地管理系统'
}else if(res.tableName?res.tableName.indexOf('sys_seal')>0:""){
res.tableName = '来自银农直联审批管理系统'
}else if(res.tableName?res.tableName.indexOf('yinnong')>0:""){
res.tableName = '来自银农直联审批管理系统'
}
if(this.activityBusinessTypeOptions){
this.activityBusinessTypeOptions.map(t => {
if(t.dictValue == res.formData.activityBusinessType){
res.formData.activityBusinessType = t.dictLabel
this.taskList.push(res)
}
});
}
})
})
},
goDetail(item){
console.log(item)
let type = item.formData.processKey;
switch (type) {
case 'baseApply':
case 'landscope':
case 'accepting':
this.$router.push({name:'approvalForm',query: {id:item.formData.id,taskId:item.taskId,instanceId:item.formData.instanceId,type:item.type}})
break;
case 'toReviewTransferProcess':
case 'yinnong_transfer':
if(item.formData.transferType == '10'){
this.$router.push({name:'approvalApproval10',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType == '11'){
this.$router.push({name:'approvalApproval11',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType == '12'){
this.$router.push({name:'approvalApproval12',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
if(item.formData.transferType != '10'&&item.formData.transferType != '11'&&item.formData.transferType != '12'){
this.$router.push({name:'approvalApproval',query: {id:item.formData.id,taskId:item.taskId,type:item.type}})
break;
}
}
}
},
}
</script>

<style scoped>
>>>.my-swipe .van-swipe-item {
color: #fff;
font-size: 20px;
line-height: 144px;
text-align: center;
}
</style>

+ 20
- 20
src/views/yinnong/my.vue Datei anzeigen

@@ -19,16 +19,16 @@
</van-cell>
</van-row>
<van-cell-group style="width: 96%;margin:-50px 2% 2% 2%;border-radius: 6px;overflow: hidden;padding-top: 20px;padding-bottom: 20px;box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);">
<van-cell title="我的业务" is-link :to="{path:'done',query:{fr:'my'}}">
<template #icon>
<van-image
fit="contain"
height="22"
style="margin-right: 15px"
src="../../../static/images/onlineHome/myIcon2.png"
/>
</template>
</van-cell>
<!-- <van-cell title="我的业务" is-link :to="{path:'done',query:{fr:'my'}}">-->
<!-- <template #icon>-->
<!-- <van-image-->
<!-- fit="contain"-->
<!-- height="22"-->
<!-- style="margin-right: 15px"-->
<!-- src="../../../static/images/onlineHome/myIcon2.png"-->
<!-- />-->
<!-- </template>-->
<!-- </van-cell>-->
<!-- <van-cell title="画像(个人/农户)" is-link :to="{path:'personalPicture',params:{id:'1'}}">
<template #icon>
<van-image
@@ -59,16 +59,16 @@
/>
</template>
</van-cell> -->
<van-cell title="投诉" is-link to="advice">
<template #icon>
<van-image
fit="contain"
height="22"
style="margin-right: 15px"
src="../../../static/images/onlineHome/myIcon6.png"
/>
</template>
</van-cell>
<!-- <van-cell title="投诉" is-link to="advice">-->
<!-- <template #icon>-->
<!-- <van-image-->
<!-- fit="contain"-->
<!-- height="22"-->
<!-- style="margin-right: 15px"-->
<!-- src="../../../static/images/onlineHome/myIcon6.png"-->
<!-- />-->
<!-- </template>-->
<!-- </van-cell>-->
<van-cell title="修改密码" is-link to="password">
<template #icon>
<van-image


+ 13
- 13
src/views/yinnong/workbench.vue Datei anzeigen

@@ -40,19 +40,19 @@
<img :src="image" style="width:100%;height: 120px"/>
</van-swipe-item>
</van-swipe>
<van-row style="min-height: 100px;" class="indexCard">
<van-cell style="border-radius: 6px;" is-link :to="{path:'done',query:{fr:'workbench'}}">
<template #title>
<p style="display:inline-block;background: #EC4B2C;height:20px;width: 20px;border-radius: 2px;margin-right: 10px;float: left"></p>
<p style="font-weight: bold;font-size: 18px;display: inline-block;">待办</p>
</template>
<template #label>
<p style="padding-left: 10px;">
{{taskList&&taskList.length>0?taskList[0].projectName+'等,共'+taskList.length+'条':'暂无待办事项'}}
</p>
</template>
</van-cell>
</van-row>
<!-- <van-row style="min-height: 100px;" class="indexCard">-->
<!-- <van-cell style="border-radius: 6px;" is-link :to="{path:'done',query:{fr:'workbench'}}">-->
<!-- <template #title>-->
<!-- <p style="display:inline-block;background: #EC4B2C;height:20px;width: 20px;border-radius: 2px;margin-right: 10px;float: left"></p>-->
<!-- <p style="font-weight: bold;font-size: 18px;display: inline-block;">待办</p>-->
<!-- </template>-->
<!-- <template #label>-->
<!-- <p style="padding-left: 10px;">-->
<!-- {{taskList&&taskList.length>0?taskList[0].projectName+'等,共'+taskList.length+'条':'暂无待办事项'}}-->
<!-- </p>-->
<!-- </template>-->
<!-- </van-cell>-->
<!-- </van-row>-->
<van-row class="indexCard">
<van-cell style="border-radius: 6px;">
<template #title>


+ 3
- 1
src/views/yinnongIndex.vue Datei anzeigen

@@ -2,7 +2,9 @@
<div class="app-container">
<router-view />
<van-tabbar route :placeholder="true" >
<van-tabbar-item replace to="/yinnong/publicity" icon="bullhorn-o">公示</van-tabbar-item>
<!-- <van-tabbar-item replace to="/yinnong/publicity" icon="bullhorn-o">公示</van-tabbar-item>-->
<van-tabbar-item replace to="/yinnong/doneCompleted/completed" icon="todo-list-o">待办</van-tabbar-item>
<van-tabbar-item replace to="/yinnong/doneCompleted/done" icon="completed">已办</van-tabbar-item>
<van-tabbar-item replace to="/yinnong/workbench" icon="apps-o">工作台</van-tabbar-item>
<!-- <van-tabbar-item replace to="/yinnong/home" icon="wap-home-o">家园</van-tabbar-item> -->
<van-tabbar-item replace to="/yinnong/my" icon="manager-o">我的</van-tabbar-item>


+ 58
- 58
src/views/yinnongLogin.vue Datei anzeigen

@@ -5,7 +5,7 @@
margin: 0 auto;" src="../../static/images/onlineHome/yinnongLogo.jpg" alt="">
</div>
<van-tabs v-model="active" :swipeable="true" style="margin-top:0.5rem;padding:0 10px;">
<van-tab title="登录" name="1">
<van-tab title="密码登录" name="1">
<van-form style="margin:50px 0;" v-if="!showMessage">
<van-field
v-model="formData.username"
@@ -35,10 +35,12 @@
<div class="clear"></div>
<div style="margin: 50px 16px 16px;">
<van-button block type="info" native-type="submit" @click="handleLogin">登录</van-button>
<p style="text-align: center;margin-top: 20px;color:#878787 " @click="showMessagePop">短信验证码登录</p>
<!-- <p style="text-align: center;margin-top: 20px;color:#878787 " @click="showMessagePop">短信验证码登录</p>-->
</div>
</van-form>
<van-form style="margin:50px 0;" v-if="showMessage">
</van-tab>
<van-tab title="短信登录" name="2">
<van-form style="margin:50px 0;">
<van-field
v-model="formData.mobile"
name="请输入手机号"
@@ -58,62 +60,60 @@
</van-field>
<div style="margin: 50px 16px 16px;">
<van-button block type="info" native-type="submit" @click="getSmsCode">获取验证码</van-button>
<p style="text-align: center;margin-top: 20px;color:#878787 " @click="showMessagePop">密码登录</p>
<!-- <p style="text-align: center;margin-top: 20px;color:#878787 " @click="showMessagePop">密码登录</p>-->
</div>
</van-form>
</van-tab>
<van-tab title="注册" name="2">
<van-form style="margin:50px 0;">
<van-field
v-model="formData.memberName"
name="请输入姓名"
placeholder="请输入姓名"
:rules="[{ required: true, message: '' }]"
/>
<van-field
v-model="formData.idcard"
name="请输入身份证号"
style="margin-top: 20px"
placeholder="请输入身份证号"
:rules="[{ required: true, message: '' }]"
/>
<van-field
v-model="formData.mobile"
name="请输入手机号"
style="margin-top: 20px"
placeholder="请输入手机号"
:rules="[{ required: true, message: '' }]"
/>
<van-field
v-model="formData.code"
center
clearable
label="验证码"
placeholder="图形验证码"
>
<template #button>
<img style="width: 100px" :src="codeUrl" @click="getCode" />
</template>
</van-field>
<van-field
v-model="formData.smsCode"
style="margin-top: 20px"
placeholder="请输入验证码"
:rules="[{ required: true, message: '' }]"
>
<template #button>
<!-- <van-button size="mini" type="info" @click="getRegisterSmsCode" >获取验证码</van-button> -->
<div class="registerSmsBtn" @click="getRegisterSmsCode">{{
computeTime > 0 ? `(${computeTime}s)已发送` : "获取短信码"
}}</div>
<!-- <van-form style="margin:50px 0;">-->
<!-- <van-field-->
<!-- v-model="formData.memberName"-->
<!-- name="请输入姓名"-->
<!-- placeholder="请输入姓名"-->
<!-- :rules="[{ required: true, message: '' }]"-->
<!-- />-->
<!-- <van-field-->
<!-- v-model="formData.idcard"-->
<!-- name="请输入身份证号"-->
<!-- style="margin-top: 20px"-->
<!-- placeholder="请输入身份证号"-->
<!-- :rules="[{ required: true, message: '' }]"-->
<!-- />-->
<!-- <van-field-->
<!-- v-model="formData.mobile"-->
<!-- name="请输入手机号"-->
<!-- style="margin-top: 20px"-->
<!-- placeholder="请输入手机号"-->
<!-- :rules="[{ required: true, message: '' }]"-->
<!-- />-->
<!-- <van-field-->
<!-- v-model="formData.code"-->
<!-- center-->
<!-- clearable-->
<!-- label="验证码"-->
<!-- placeholder="图形验证码"-->
<!-- >-->
<!-- <template #button>-->
<!-- <img style="width: 100px" :src="codeUrl" @click="getCode" />-->
<!-- </template>-->
<!-- </van-field>-->
<!-- <van-field-->
<!-- v-model="formData.smsCode"-->
<!-- style="margin-top: 20px"-->
<!-- placeholder="请输入验证码"-->
<!-- :rules="[{ required: true, message: '' }]"-->
<!-- >-->
<!-- <template #button>-->
<!-- &lt;!&ndash; <van-button size="mini" type="info" @click="getRegisterSmsCode" >获取验证码</van-button> &ndash;&gt;-->
<!-- <div class="registerSmsBtn" @click="getRegisterSmsCode">{{-->
<!-- computeTime > 0 ? `(${computeTime}s)已发送` : "获取短信码"-->
<!-- }}</div>-->


</template>
</van-field>
<div style="margin: 50px 16px 16px;">
<van-button block type="info" native-type="submit" @click="registerSubmit">注册</van-button>
</div>
</van-form>
<!-- </template>-->
<!-- </van-field>-->
<!-- <div style="margin: 50px 16px 16px;">-->
<!-- <van-button block type="info" native-type="submit" @click="registerSubmit">注册</van-button>-->
<!-- </div>-->
<!-- </van-form>-->
</van-tab>
</van-tabs>
<van-popup v-model="showKeyboard" :style="{ height: '100%',width:'100%' }" >
@@ -307,7 +307,7 @@ export default {
this.$store
.dispatch("SmsLogin", this.formData)
.then(() => {
this.$router.push({ path: "/yinnongIndex" }).catch(() => {});
this.$router.push({ path: "/yinnong/doneCompleted/completed" }).catch(() => {});
})
.catch((error) => {
this.loading = false;
@@ -342,7 +342,7 @@ export default {
this.$store
.dispatch("Login", this.formData)
.then(() => {
this.$router.push({ path: "/yinnong/workbench" }).catch(() => {});
this.$router.push({ path: "/yinnong/doneCompleted/completed" }).catch(() => {});
})
.catch((error) => {
console.log(error)
@@ -429,7 +429,7 @@ export default {
this.$dialog.alert({
message: '您的初始密码:'+res.password,
}).then(() => {
this.$router.push({ path: "/yinnong/workbench" }).catch(() => {});
this.$router.push({ path: "/yinnong/doneCompleted/completed" }).catch(() => {});
});
}
})


BIN
static/images/agriculturalTrusteeship/address.png Datei anzeigen

Vorher Nachher
Breite: 11  |  Höhe: 13  |  Größe: 469 B

BIN
static/images/agriculturalTrusteeship/index/address_icon.png Datei anzeigen

Vorher Nachher
Breite: 19  |  Höhe: 19  |  Größe: 658 B

BIN
static/images/agriculturalTrusteeship/index/header.png Datei anzeigen

Vorher Nachher
Breite: 51  |  Höhe: 51  |  Größe: 2.0 KiB

BIN
static/images/agriculturalTrusteeship/index/index_btn_icon_01.png Datei anzeigen

Vorher Nachher
Breite: 67  |  Höhe: 67  |  Größe: 3.7 KiB

BIN
static/images/agriculturalTrusteeship/index/index_btn_icon_02.png Datei anzeigen

Vorher Nachher
Breite: 67  |  Höhe: 67  |  Größe: 3.7 KiB

BIN
static/images/agriculturalTrusteeship/index/name_icon.png Datei anzeigen

Vorher Nachher
Breite: 14  |  Höhe: 12  |  Größe: 349 B

BIN
static/images/agriculturalTrusteeship/index/nav_01.png Datei anzeigen

Vorher Nachher
Breite: 70  |  Höhe: 70  |  Größe: 4.7 KiB

BIN
static/images/agriculturalTrusteeship/index/nav_02.png Datei anzeigen

Vorher Nachher
Breite: 69  |  Höhe: 70  |  Größe: 4.7 KiB

BIN
static/images/agriculturalTrusteeship/index/nav_03.png Datei anzeigen

Vorher Nachher
Breite: 70  |  Höhe: 70  |  Größe: 4.8 KiB

BIN
static/images/agriculturalTrusteeship/index/nav_04.png Datei anzeigen

Vorher Nachher
Breite: 71  |  Höhe: 70  |  Größe: 3.9 KiB

BIN
static/images/agriculturalTrusteeship/index/notice_icon.png Datei anzeigen

Vorher Nachher
Breite: 19  |  Höhe: 16  |  Größe: 704 B

BIN
static/images/agriculturalTrusteeship/index/search_icon_01.png Datei anzeigen

Vorher Nachher
Breite: 15  |  Höhe: 15  |  Größe: 343 B

BIN
static/images/agriculturalTrusteeship/index/search_icon_02.png Datei anzeigen

Vorher Nachher
Breite: 66  |  Höhe: 32  |  Größe: 2.5 KiB

BIN
static/images/agriculturalTrusteeship/index/test.png Datei anzeigen

Vorher Nachher
Breite: 98  |  Höhe: 100  |  Größe: 26 KiB

BIN
static/images/agriculturalTrusteeship/insurance/insurance_go.png Datei anzeigen

Vorher Nachher
Breite: 9  |  Höhe: 10  |  Größe: 336 B

BIN
static/images/agriculturalTrusteeship/insurance/insurance_list_head.png Datei anzeigen

Vorher Nachher
Breite: 390  |  Höhe: 106  |  Größe: 88 KiB

BIN
static/images/agriculturalTrusteeship/insurance/insurance_list_iphone.png Datei anzeigen

Vorher Nachher
Breite: 14  |  Höhe: 16  |  Größe: 434 B

BIN
static/images/agriculturalTrusteeship/insurance/insurance_list_name.png Datei anzeigen

Vorher Nachher
Breite: 15  |  Höhe: 16  |  Größe: 455 B

BIN
static/images/agriculturalTrusteeship/insurance/insurance_list_project.png Datei anzeigen

Vorher Nachher
Breite: 16  |  Höhe: 16  |  Größe: 488 B

BIN
static/images/agriculturalTrusteeship/return.png Datei anzeigen

Vorher Nachher
Breite: 9  |  Höhe: 17  |  Größe: 240 B

BIN
static/images/agriculturalTrusteeship/share.png Datei anzeigen

Vorher Nachher
Breite: 13  |  Höhe: 15  |  Größe: 305 B

BIN
static/images/agriculturalTrusteeship/test2.png Datei anzeigen

Vorher Nachher
Breite: 390  |  Höhe: 229  |  Größe: 146 KiB

BIN
static/images/lawEnforcement/icon/close.png Datei anzeigen

Vorher Nachher
Breite: 48  |  Höhe: 48  |  Größe: 413 B

BIN
static/images/onlineHome/yinnongLogo.jpg Datei anzeigen

Vorher Nachher
Breite: 192  |  Höhe: 192  |  Größe: 11 KiB Breite: 192  |  Höhe: 192  |  Größe: 12 KiB

Laden…
Abbrechen
Speichern