sdjakl 2 years ago
parent
commit
2701c2965d
72 changed files with 16353 additions and 216 deletions
  1. 44 0
      src/api/basicData/check.js
  2. 44 0
      src/api/basicData/complain.js
  3. 44 0
      src/api/basicData/detail.js
  4. 44 0
      src/api/basicData/enterprise.js
  5. 44 0
      src/api/basicData/enterprises.js
  6. 44 0
      src/api/basicData/executor.js
  7. 44 0
      src/api/basicData/info4.js
  8. 44 0
      src/api/basicData/info5.js
  9. 44 0
      src/api/basicData/info6.js
  10. 44 0
      src/api/basicData/info7.js
  11. 44 0
      src/api/basicData/information10.js
  12. 44 0
      src/api/basicData/information11.js
  13. 44 0
      src/api/basicData/information12.js
  14. 44 0
      src/api/basicData/information13.js
  15. 44 0
      src/api/basicData/information14.js
  16. 44 0
      src/api/basicData/information15.js
  17. 44 0
      src/api/basicData/information16.js
  18. 44 0
      src/api/basicData/information17.js
  19. 44 0
      src/api/basicData/information18.js
  20. 44 0
      src/api/basicData/information3.js
  21. 44 0
      src/api/basicData/information4.js
  22. 44 0
      src/api/basicData/information5.js
  23. 44 0
      src/api/basicData/information6.js
  24. 44 0
      src/api/basicData/information7.js
  25. 44 0
      src/api/basicData/information8.js
  26. 44 0
      src/api/basicData/information9.js
  27. 44 0
      src/api/basicData/list2.js
  28. 44 0
      src/api/basicData/notification.js
  29. 44 0
      src/api/basicData/rating.js
  30. 44 0
      src/api/basicData/result.js
  31. 44 0
      src/api/basicData/sampling.js
  32. 44 0
      src/api/basicData/summary.js
  33. 44 0
      src/api/basicData/summary2.js
  34. 44 0
      src/api/basicData/type.js
  35. 5 0
      src/api/home/home.js
  36. 314 8
      src/views/CDCService/COmpService/index.vue
  37. 701 7
      src/views/basicData/HetcData/ACInformation/index.vue
  38. 521 7
      src/views/basicData/HetcData/ARInformation/index.vue
  39. 429 7
      src/views/basicData/HetcData/BankruptcyInformation/index.vue
  40. 434 7
      src/views/basicData/HetcData/CCreditRating/index.vue
  41. 458 7
      src/views/basicData/HetcData/CJInformation/index.vue
  42. 3 2
      src/views/basicData/HetcData/CRIPayTaxes/index.vue
  43. 404 7
      src/views/basicData/HetcData/CRIRvnPro/index.vue
  44. 552 7
      src/views/basicData/HetcData/DITPInformation/index.vue
  45. 423 7
      src/views/basicData/HetcData/LOTLViolations/index.vue
  46. 2 1
      src/views/basicData/HetcData/SCInformation/index.vue
  47. 438 7
      src/views/basicData/HetcData/TOTECInformation/index.vue
  48. 516 7
      src/views/basicData/ManageAbility/BLInformation/index.vue
  49. 389 7
      src/views/basicData/ManageAbility/BranchInformation/index.vue
  50. 393 7
      src/views/basicData/ManageAbility/CRInformation/index.vue
  51. 400 7
      src/views/basicData/ManageAbility/ChangeInformation/index.vue
  52. 460 7
      src/views/basicData/ManageAbility/EPInformation/index.vue
  53. 484 7
      src/views/basicData/ManageAbility/ETInformation/index.vue
  54. 351 7
      src/views/basicData/ManageAbility/ITInformation/index.vue
  55. 352 7
      src/views/basicData/ManageAbility/LOEHighTech/index.vue
  56. 381 7
      src/views/basicData/ManageAbility/ROEPInformation/index.vue
  57. 430 7
      src/views/basicData/ManageAbility/SACCInformation/index.vue
  58. 403 7
      src/views/basicData/ManageAbility/SCInformation/index.vue
  59. 366 7
      src/views/basicData/ManageAbility/TOLSEnterprise/index.vue
  60. 387 7
      src/views/basicData/ManageAbility/TRADInformation/index.vue
  61. 579 7
      src/views/basicData/OpeCapability/EBInformation/index.vue
  62. 409 7
      src/views/basicData/OpeCapability/GFInformation/index.vue
  63. 417 8
      src/views/basicData/OpeCapability/PFPInformation/index.vue
  64. 352 7
      src/views/basicData/OpeCapability/SSAInformation/index.vue
  65. 386 8
      src/views/basicData/OpeCapability/SSPInformation/index.vue
  66. 1 1
      src/views/basicData/OpeCapability/TAInformation/index.vue
  67. 520 7
      src/views/basicData/OpeCapability/WFInformation/index.vue
  68. 450 0
      src/views/basicData/check/index.vue
  69. 474 0
      src/views/basicData/confirmation/index.vue
  70. 448 0
      src/views/basicData/result/index.vue
  71. 716 0
      src/views/basicData/sampling/index.vue
  72. 109 6
      src/views/home/index.vue

+ 44 - 0
src/api/basicData/check.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询食品及食用农产品监督抽检情况汇总列表
+export function listCheck(query) {
+  return request({
+    url: '/crmAgriculturalProductSupervisionCheck/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询食品及食用农产品监督抽检情况汇总详细
+export function getCheck(id) {
+  return request({
+    url: '/basicData/check/' + id,
+    method: 'get'
+  })
+}
+
+// 新增食品及食用农产品监督抽检情况汇总
+export function addCheck(data) {
+  return request({
+    url: '/basicData/check',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改食品及食用农产品监督抽检情况汇总
+export function updateCheck(data) {
+  return request({
+    url: '/basicData/check',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除食品及食用农产品监督抽检情况汇总
+export function delCheck(id) {
+  return request({
+    url: '/crmAgriculturalProductSupervisionCheck/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/complain.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询投诉列表
+export function listComplain(query) {
+  return request({
+    url: '/crmComplain/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询投诉详细
+export function getComplain(id) {
+  return request({
+    url: '/crmComplain/getById/' + id,
+    method: 'get'
+  })
+}
+
+// 新增投诉
+export function addComplain(data) {
+  return request({
+    url: '/crmComplain/save',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改投诉
+export function updateComplain(data) {
+  return request({
+    url: '/crmComplain/updateById',
+    method: 'post',
+    data: data
+  })
+}
+
+// 删除投诉
+export function delComplain(id) {
+  return request({
+    url: '/crmComplain/delete' + id,
+    method: 'post'
+  })
+}

+ 44 - 0
src/api/basicData/detail.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询工业园区各单位用水明细列表
+export function listDetail(query) {
+  return request({
+    url: '/crmIndustrialParkWaterUsageDetail/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询工业园区各单位用水明细详细
+export function getDetail(id) {
+  return request({
+    url: '/basicData/detail/' + id,
+    method: 'get'
+  })
+}
+
+// 新增工业园区各单位用水明细
+export function addDetail(data) {
+  return request({
+    url: '/basicData/detail',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改工业园区各单位用水明细
+export function updateDetail(data) {
+  return request({
+    url: '/basicData/detail',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除工业园区各单位用水明细
+export function delDetail(id) {
+  return request({
+    url: '/crmIndustrialParkWaterUsageDetail/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/enterprise.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询认证通过高新技术企业名单列表
+export function listEnterprise(query) {
+  return request({
+    url: '/crmCertifiedTechnologyEnterprise/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询认证通过高新技术企业名单详细
+export function getEnterprise(id) {
+  return request({
+    url: '/basicData/enterprise/' + id,
+    method: 'get'
+  })
+}
+
+// 新增认证通过高新技术企业名单
+export function addEnterprise(data) {
+  return request({
+    url: '/basicData/enterprise',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改认证通过高新技术企业名单
+export function updateEnterprise(data) {
+  return request({
+    url: '/basicData/enterprise',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除认证通过高新技术企业名单
+export function delEnterprise(id) {
+  return request({
+    url: '/crmCertifiedTechnologyEnterprise/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/enterprises.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询科技型中小企业名单列表
+export function listEnterprises(query) {
+  return request({
+    url: '/crmTechnologyEnterprises/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询科技型中小企业名单详细
+export function getEnterprises(id) {
+  return request({
+    url: '/basicData/enterprises/' + id,
+    method: 'get'
+  })
+}
+
+// 新增科技型中小企业名单
+export function addEnterprises(data) {
+  return request({
+    url: '/basicData/enterprises',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改科技型中小企业名单
+export function updateEnterprises(data) {
+  return request({
+    url: '/basicData/enterprises',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除科技型中小企业名单
+export function delEnterprises(id) {
+  return request({
+    url: '/crmTechnologyEnterprises/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/executor.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询失信被执行人信息列表
+export function listExecutor(query) {
+  return request({
+    url: '/crmDishonestExecutor/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询失信被执行人信息详细
+export function getExecutor(id) {
+  return request({
+    url: '/basicData/executor/' + id,
+    method: 'get'
+  })
+}
+
+// 新增失信被执行人信息
+export function addExecutor(data) {
+  return request({
+    url: '/basicData/executor',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改失信被执行人信息
+export function updateExecutor(data) {
+  return request({
+    url: '/basicData/executor',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除失信被执行人信息
+export function delExecutor(id) {
+  return request({
+    url: '/crmDishonestExecutor/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/info4.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询行政裁决信息填报模板列表
+export function listInfo(query) {
+  return request({
+    url: '/crmAdministrativeSanctionInfo/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询行政裁决信息填报模板详细
+export function getInfo(id) {
+  return request({
+    url: '/basicData/info/' + id,
+    method: 'get'
+  })
+}
+
+// 新增行政裁决信息填报模板
+export function addInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改行政裁决信息填报模板
+export function updateInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除行政裁决信息填报模板
+export function delInfo(id) {
+  return request({
+    url: '/crmAdministrativeSanctionInfo/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/info5.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询企业社会保险费缴纳信息列表
+export function listInfo(query) {
+  return request({
+    url: '/crmEnterpriseSocialSecurityInfo/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业社会保险费缴纳信息详细
+export function getInfo(id) {
+  return request({
+    url: '/basicData/info/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业社会保险费缴纳信息
+export function addInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业社会保险费缴纳信息
+export function updateInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业社会保险费缴纳信息
+export function delInfo(id) {
+  return request({
+    url: '/crmEnterpriseSocialSecurityInfo/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/info6.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询社会保险费欠缴信息列表
+export function listInfo(query) {
+  return request({
+    url: '/crmSocialInsuranceArrearsInfo/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询社会保险费欠缴信息详细
+export function getInfo(id) {
+  return request({
+    url: '/basicData/info/' + id,
+    method: 'get'
+  })
+}
+
+// 新增社会保险费欠缴信息
+export function addInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改社会保险费欠缴信息
+export function updateInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除社会保险费欠缴信息
+export function delInfo(id) {
+  return request({
+    url: '/crmSocialInsuranceArrearsInfo/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/info7.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询企业电费信息汇总列表
+export function listInfo(query) {
+  return request({
+    url: '/crmEnterpriseElectricityFeeInfo/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业电费信息汇总详细
+export function getInfo(id) {
+  return request({
+    url: '/basicData/info/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业电费信息汇总
+export function addInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业电费信息汇总
+export function updateInfo(data) {
+  return request({
+    url: '/basicData/info',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业电费信息汇总
+export function delInfo(id) {
+  return request({
+    url: '/crmEnterpriseElectricityFeeInfo/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information10.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询分支机构信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmBranchOfficeInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询分支机构信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增分支机构信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改分支机构信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除分支机构信息
+export function delInformation(id) {
+  return request({
+    url: '/crmBranchOfficeInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information11.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询分支机构信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmEquityPledgeInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询分支机构信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增分支机构信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改分支机构信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除分支机构信息
+export function delInformation(id) {
+  return request({
+    url: '/crmEquityPledgeInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information12.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询海关注册信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmCustomsRegistrationInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询海关注册信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增海关注册信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改海关注册信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除海关注册信息
+export function delInformation(id) {
+  return request({
+    url: '/crmCustomsRegistrationInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information13.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询变更记录信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmChangeRecordInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询变更记录信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增变更记录信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改变更记录信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除变更记录信息
+export function delInformation(id) {
+  return request({
+    url: '/crmChangeRecordInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information14.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询股东信息列表
+export function listInformation(query) {
+    return request({
+        url: '/crmShareholderInformation/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询股东信息详细
+export function getInformation(id) {
+    return request({
+        url: '/basicData/information/' + id,
+        method: 'get'
+    })
+}
+
+// 新增股东信息
+export function addInformation(data) {
+    return request({
+        url: '/basicData/information',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改股东信息
+export function updateInformation(data) {
+    return request({
+        url: '/basicData/information',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除股东信息
+export function delInformation(id) {
+    return request({
+        url: '/crmShareholderInformation/deleteAll',
+        method: 'delete'
+    })
+}

+ 44 - 0
src/api/basicData/information15.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询软件著作权信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmSoftwareCopyrightInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询软件著作权信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增软件著作权信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改软件著作权信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除软件著作权信息
+export function delInformation(id) {
+  return request({
+    url: '/crmSoftwareCopyrightInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information16.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询企业商标信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmEnterpriseTrademarkInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业商标信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业商标信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业商标信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业商标信息
+export function delInformation(id) {
+  return request({
+    url: '/crmEnterpriseTrademarkInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information17.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询专利信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmPatentInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询专利信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增专利信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改专利信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除专利信息
+export function delInformation(id) {
+  return request({
+    url: '/crmPatentInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information18.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询企业燃气费信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmGasFeeInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业燃气费信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业燃气费信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业燃气费信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业燃气费信息
+export function delInformation(id) {
+  return request({
+    url: '/crmGasFeeInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information3.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询行政强制信息填报模板列表
+export function listInformation(query) {
+  return request({
+    url: '/crmAdministrativeCompulsionInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询行政强制信息填报模板详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增行政强制信息填报模板
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改行政强制信息填报模板
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除行政强制信息填报模板
+export function delInformation(id) {
+  return request({
+    url: '/crmAdministrativeCompulsionInformation/deleteAll' ,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information4.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询法院已公开裁判文书判决信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmJudgmentDocumentJudgmentInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询法院已公开裁判文书判决信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增法院已公开裁判文书判决信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改法院已公开裁判文书判决信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除法院已公开裁判文书判决信息
+export function delInformation(id) {
+  return request({
+    url: '/crmJudgmentDocumentJudgmentInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information5.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询终结本次执行案件信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmTerminationCaseInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询终结本次执行案件信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增终结本次执行案件信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改终结本次执行案件信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除终结本次执行案件信息
+export function delInformation(id) {
+  return request({
+    url: '/crmTerminationCaseInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information6.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询破产信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmBankruptcyInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询破产信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增破产信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改破产信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除破产信息
+export function delInformation(id) {
+  return request({
+    url: '/crmBankruptcyInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information7.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询营业执照信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmBusinessLicenseInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询营业执照信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增营业执照信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改营业执照信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除营业执照信息
+export function delInformation(id) {
+  return request({
+    url: '/crmBusinessLicenseInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information8.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询变更记录信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmChangeRecordInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询变更记录信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增变更记录信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改变更记录信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除变更记录信息
+export function delInformation(id) {
+  return request({
+    url: '/crmChangeRecordInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/information9.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询股东信息列表
+export function listInformation(query) {
+  return request({
+    url: '/crmShareholderInformation/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询股东信息详细
+export function getInformation(id) {
+  return request({
+    url: '/basicData/information/' + id,
+    method: 'get'
+  })
+}
+
+// 新增股东信息
+export function addInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改股东信息
+export function updateInformation(data) {
+  return request({
+    url: '/basicData/information',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除股东信息
+export function delInformation(id) {
+  return request({
+    url: '/crmShareholderInformation/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/list2.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询严重违法失信名单列表
+export function listList(query) {
+  return request({
+    url: '/crmSeriouslyIllegalAndDishonestList/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询严重违法失信名单详细
+export function getListData(id) {
+  return request({
+    url: '/basicData/list/' + id,
+    method: 'get'
+  })
+}
+
+// 新增严重违法失信名单
+export function addList(data) {
+  return request({
+    url: '/basicData/list',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改严重违法失信名单
+export function updateList(data) {
+  return request({
+    url: '/basicData/list',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除严重违法失信名单
+export function delList(id) {
+  return request({
+    url: '/crmSeriouslyIllegalAndDishonestList/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/notification.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询环保信用评价结果的通知列表
+export function listNotification(query) {
+  return request({
+    url: '/crmEnvironmentalCreditEvaluationNotification/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询环保信用评价结果的通知详细
+export function getNotification(id) {
+  return request({
+    url: '/basicData/notification/' + id,
+    method: 'get'
+  })
+}
+
+// 新增环保信用评价结果的通知
+export function addNotification(data) {
+  return request({
+    url: '/basicData/notification',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改环保信用评价结果的通知
+export function updateNotification(data) {
+  return request({
+    url: '/basicData/notification',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除环保信用评价结果的通知
+export function delNotification(id) {
+  return request({
+    url: '/crmEnvironmentalCreditEvaluationNotification/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/rating.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询海关信用等级信息列表
+export function listRating(query) {
+  return request({
+    url: '/crmCustomsCreditRating/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询海关信用等级信息详细
+export function getRating(id) {
+  return request({
+    url: '/basicData/rating/' + id,
+    method: 'get'
+  })
+}
+
+// 新增海关信用等级信息
+export function addRating(data) {
+  return request({
+    url: '/basicData/rating',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改海关信用等级信息
+export function updateRating(data) {
+  return request({
+    url: '/basicData/rating',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除海关信用等级信息
+export function delRating(id) {
+  return request({
+    url: '/crmCustomsCreditRating/deleteAll' ,
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/result.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询食品及食用农产品监督抽检结果统计列表
+export function listResult(query) {
+  return request({
+    url: '/crmAgriculturalProductSupervisionCheckResult/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询食品及食用农产品监督抽检结果统计详细
+export function getResult(id) {
+  return request({
+    url: '/basicData/result/' + id,
+    method: 'get'
+  })
+}
+
+// 新增食品及食用农产品监督抽检结果统计
+export function addResult(data) {
+  return request({
+    url: '/basicData/result',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改食品及食用农产品监督抽检结果统计
+export function updateResult(data) {
+  return request({
+    url: '/basicData/result',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除食品及食用农产品监督抽检结果统计
+export function delResult(id) {
+  return request({
+    url: '/crmAgriculturalProductSupervisionCheckResult/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/sampling.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询市场监督管理局流通抽样检验工作汇总列表
+export function listSampling(query) {
+  return request({
+    url: '/crmCirculationSampling/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询市场监督管理局流通抽样检验工作汇总详细
+export function getSampling(id) {
+  return request({
+    url: '/basicData/sampling/' + id,
+    method: 'get'
+  })
+}
+
+// 新增市场监督管理局流通抽样检验工作汇总
+export function addSampling(data) {
+  return request({
+    url: '/basicData/sampling',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改市场监督管理局流通抽样检验工作汇总
+export function updateSampling(data) {
+  return request({
+    url: '/basicData/sampling',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除市场监督管理局流通抽样检验工作汇总
+export function delSampling(id) {
+  return request({
+    url: '/crmCirculationSampling/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/summary.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询企业科技研发信息汇总列表
+export function listSummary(query) {
+  return request({
+    url: '/crmEnterpriseTechnologyRndSummary/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业科技研发信息汇总详细
+export function getSummary(id) {
+  return request({
+    url: '/basicData/summary/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业科技研发信息汇总
+export function addSummary(data) {
+  return request({
+    url: '/basicData/summary',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业科技研发信息汇总
+export function updateSummary(data) {
+  return request({
+    url: '/basicData/summary',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业科技研发信息汇总
+export function delSummary(id) {
+  return request({
+    url: '/crmEnterpriseTechnologyRndSummary/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/summary2.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询公积金信息汇总列表
+export function listSummary(query) {
+  return request({
+    url: '/crmAccumulationFundSummary/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询公积金信息汇总详细
+export function getSummary(id) {
+  return request({
+    url: '/basicData/summary/' + id,
+    method: 'get'
+  })
+}
+
+// 新增公积金信息汇总
+export function addSummary(data) {
+  return request({
+    url: '/basicData/summary',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改公积金信息汇总
+export function updateSummary(data) {
+  return request({
+    url: '/basicData/summary',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除公积金信息汇总
+export function delSummary(id) {
+  return request({
+    url: '/crmAccumulationFundSummary/deleteAll',
+    method: 'delete'
+  })
+}

+ 44 - 0
src/api/basicData/type.js

@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询所属行业类型列表
+export function listType(query) {
+  return request({
+    url: '/crmIndustryType/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询所属行业类型详细
+export function getType(id) {
+  return request({
+    url: '/basicData/type/' + id,
+    method: 'get'
+  })
+}
+
+// 新增所属行业类型
+export function addType(data) {
+  return request({
+    url: '/basicData/type',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改所属行业类型
+export function updateType(data) {
+  return request({
+    url: '/basicData/type',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除所属行业类型
+export function delType(id) {
+  return request({
+    url: '/crmIndustryType/deleteAll',
+    method: 'delete'
+  })
+}

+ 5 - 0
src/api/home/home.js

@@ -0,0 +1,5 @@
+import request from "../../utils/request";
+
+export const getHomeList = ()=>{
+    return request.get('/crmHighTechZoneEnterprises/getList');
+}

+ 314 - 8
src/views/CDCService/COmpService/index.vue

@@ -1,9 +1,315 @@
 <template>
-    <div>
-        投诉服务
-    </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="投诉标题" prop="title">
+        <el-input
+            v-model="queryParams.title"
+            placeholder="请输入投诉标题"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="投诉人姓名" prop="name">
+        <el-input
+            v-model="queryParams.name"
+            placeholder="请输入投诉人姓名"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="联系方式" prop="phone">
+        <el-input
+            v-model="queryParams.phone"
+            placeholder="请输入联系方式"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="身份证号" prop="card">
+        <el-input
+            v-model="queryParams.card"
+            placeholder="请输入身份证号"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="图片文件" prop="fileId">
+        <el-input
+            v-model="queryParams.fileId"
+            placeholder="请输入图片文件"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="primary"
+            plain
+            icon="Plus"
+            @click="handleAdd"
+            v-hasPermi="['basicData:complain:add']"
+        >新增</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="success"
+            plain
+            icon="Edit"
+            :disabled="single"
+            @click="handleUpdate"
+            v-hasPermi="['basicData:complain:edit']"
+        >修改</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            :disabled="multiple"
+            @click="handleDelete"
+            v-hasPermi="['basicData:complain:remove']"
+        >删除</el-button>
+      </el-col>
+<!--      <el-col :span="1.5">-->
+<!--        <el-button-->
+<!--            type="warning"-->
+<!--            plain-->
+<!--            icon="Download"-->
+<!--            @click="handleExport"-->
+<!--            v-hasPermi="['basicData:complain:export']"-->
+<!--        >导出</el-button>-->
+<!--      </el-col>-->
+      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <el-table v-loading="loading" :data="complainList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="投诉类型" align="center" prop="type" />
+      <el-table-column label="投诉标题" align="center" prop="title" />
+      <el-table-column label="投诉内容" align="center" prop="content" />
+      <el-table-column label="投诉人姓名" align="center" prop="name" />
+      <el-table-column label="联系方式" align="center" prop="phone" />
+      <el-table-column label="身份证号" align="center" prop="card" />
+      <el-table-column label="图片文件" align="center" prop="fileId" />
+      <el-table-column label="备注" align="center" prop="remark" />
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+        <template #default="scope">
+          <el-button
+              type="text"
+              icon="Edit"
+              @click="handleUpdate(scope.row)"
+              v-hasPermi="['basicData:complain:edit']"
+          >修改</el-button>
+          <el-button
+              type="text"
+              icon="Delete"
+              @click="handleDelete(scope.row)"
+              v-hasPermi="['basicData:complain:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+        v-show="total>0"
+        :total="total"
+        v-model:page="queryParams.pageNum"
+        v-model:limit="queryParams.pageSize"
+        @pagination="getList"
+    />
+
+    <!-- 添加或修改投诉对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="complainRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="投诉类型" prop="type">
+          <el-input v-model="form.type" placeholder="请输入投诉类型" />
+        </el-form-item>
+        <el-form-item label="投诉标题" prop="title">
+          <el-input v-model="form.title" placeholder="请输入投诉标题" />
+        </el-form-item>
+        <el-form-item label="投诉内容">
+          <el-input v-model="form.content" :min-height="192" type="textarea"/>
+        </el-form-item>
+        <el-form-item label="投诉人姓名" prop="name">
+          <el-input v-model="form.name" placeholder="请输入投诉人姓名" />
+        </el-form-item>
+        <el-form-item label="联系方式" prop="phone">
+          <el-input v-model="form.phone" placeholder="请输入联系方式" />
+        </el-form-item>
+        <el-form-item label="身份证号" prop="card">
+          <el-input v-model="form.card" placeholder="请输入身份证号" />
+        </el-form-item>
+        <el-form-item label="图片文件" prop="fileId">
+          <el-input v-model="form.fileId" placeholder="请输入图片文件" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Complain">
+import { listComplain, getComplain, delComplain, addComplain, updateComplain } from "@/api/basicData/complain";
+import {Editor} from "@wangeditor/editor-for-vue";
+
+const { proxy } = getCurrentInstance();
+
+const complainList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 10,
+    type: null,
+    title: null,
+    content: null,
+    name: null,
+    phone: null,
+    card: null,
+    fileId: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询投诉列表 */
+function getList() {
+  loading.value = true;
+  listComplain(queryParams.value).then(response => {
+    complainList.value = response.rows;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    type: null,
+    title: null,
+    content: null,
+    name: null,
+    phone: null,
+    card: null,
+    fileId: null,
+    createBy: null,
+    createTime: null,
+    updateBy: null,
+    updateTime: null,
+    remark: null
+  };
+  proxy.resetForm("complainRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加投诉";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getComplain(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改投诉";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["complainRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateComplain(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addComplain(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+function handleDelete(row) {
+  const ids = row.id || ids.value;
+  proxy.$modal.confirm('是否确认删除投诉编号为"' + ids + '"的数据项?').then(function() {
+    return delComplain(ids);
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('basicData/complain/export', {
+    ...queryParams.value
+  }, `complain_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 701 - 7
src/views/basicData/HetcData/ACInformation/index.vue

@@ -1,9 +1,703 @@
 <template>
-    <div>
-        行政强制信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="行政相对人名称" prop="nameOfAdministrativeParty">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfAdministrativeParty"-->
+<!--            placeholder="请输入行政相对人名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政相对人类别" prop="typeOfAdministrativeParty">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfAdministrativeParty"-->
+<!--            placeholder="请输入行政相对人类别"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="行政相对人代码" prop="codeOfAdministrativeParty">
+        <el-input
+            v-model="queryParams.codeOfAdministrativeParty"
+            placeholder="请输入行政相对人代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="法定代表人姓名" prop="nameOfLegalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfLegalRepresentative"-->
+<!--            placeholder="请输入法定代表人姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人证件类型" prop="typeOfLegalRepresentativeIdentityCard">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfLegalRepresentativeIdentityCard"-->
+<!--            placeholder="请输入法定代表人证件类型"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人证件号码" prop="identityCardNumberOfLegalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.identityCardNumberOfLegalRepresentative"-->
+<!--            placeholder="请输入法定代表人证件号码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制决定文书名称" prop="nameOfAdministrativeCompulsionDocument">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfAdministrativeCompulsionDocument"-->
+<!--            placeholder="请输入行政强制决定文书名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制决定文书号" prop="numberOfAdministrativeCompulsionDocument">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.numberOfAdministrativeCompulsionDocument"-->
+<!--            placeholder="请输入行政强制决定文书号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制执行理由" prop="reasonForAdministrativeCompulsionExecution">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.reasonForAdministrativeCompulsionExecution"-->
+<!--            placeholder="请输入行政强制执行理由"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制执行依据" prop="basisForAdministrativeCompulsionExecution">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.basisForAdministrativeCompulsionExecution"-->
+<!--            placeholder="请输入行政强制执行依据"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制种类" prop="typeOfAdministrativeCompulsion">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfAdministrativeCompulsion"-->
+<!--            placeholder="请输入行政强制种类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制措施类型" prop="typeOfAdministrativeCompulsoryMeasures">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfAdministrativeCompulsoryMeasures"-->
+<!--            placeholder="请输入行政强制措施类型"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制执行类型" prop="typeOfAdministrativeCompulsionExecution">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfAdministrativeCompulsionExecution"-->
+<!--            placeholder="请输入行政强制执行类型"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制内容" prop="contentOfAdministrativeCompulsion">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.contentOfAdministrativeCompulsion"-->
+<!--            placeholder="请输入行政强制内容"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制结果" prop="resultOfAdministrativeCompulsion">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.resultOfAdministrativeCompulsion"-->
+<!--            placeholder="请输入行政强制结果"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制执行方式" prop="methodOfAdministrativeCompulsionExecution">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.methodOfAdministrativeCompulsionExecution"-->
+<!--            placeholder="请输入行政强制执行方式"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制决定日期" prop="dateOfAdministrativeCompulsionDecision">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.dateOfAdministrativeCompulsionDecision"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择行政强制决定日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实施强制措施起始时间" prop="startTimeOfCompulsoryMeasures">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.startTimeOfCompulsoryMeasures"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择实施强制措施起始时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实施强制措施结束时间" prop="endTimeOfCompulsoryMeasures">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.endTimeOfCompulsoryMeasures"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择实施强制措施结束时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政强制执行时间" prop="timeOfAdministrativeCompulsionExecution">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.timeOfAdministrativeCompulsionExecution"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择行政强制执行时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政机关名称" prop="nameOfAdministrativeAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfAdministrativeAuthority"-->
+<!--            placeholder="请输入行政机关名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政机关统一社会信用代码" prop="creditCodeOfAdministrativeAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.creditCodeOfAdministrativeAuthority"-->
+<!--            placeholder="请输入行政机关统一社会信用代码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="行政相对人名称" align="center" prop="nameOfAdministrativeParty" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人类别" align="center" prop="typeOfAdministrativeParty" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人代码" align="center" prop="codeOfAdministrativeParty" />
+      <el-table-column label="法定代表人姓名" align="center" prop="nameOfLegalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件类型" align="center" prop="typeOfLegalRepresentativeIdentityCard" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件号码" align="center" prop="identityCardNumberOfLegalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制决定文书名称" align="center" prop="nameOfAdministrativeCompulsionDocument" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制决定文书号" align="center" prop="numberOfAdministrativeCompulsionDocument" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制执行理由" align="center" prop="reasonForAdministrativeCompulsionExecution" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制执行依据" align="center" prop="basisForAdministrativeCompulsionExecution" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制种类" align="center" prop="typeOfAdministrativeCompulsion" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制措施类型" align="center" prop="typeOfAdministrativeCompulsoryMeasures" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制执行类型" align="center" prop="typeOfAdministrativeCompulsionExecution" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制内容" align="center" prop="contentOfAdministrativeCompulsion" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制结果" align="center" prop="resultOfAdministrativeCompulsion" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制执行方式" align="center" prop="methodOfAdministrativeCompulsionExecution" :show-overflow-tooltip='true' />
+      <el-table-column label="行政强制决定日期" align="center" prop="dateOfAdministrativeCompulsionDecision" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.dateOfAdministrativeCompulsionDecision, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="实施强制措施起始时间" align="center" prop="startTimeOfCompulsoryMeasures" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.startTimeOfCompulsoryMeasures, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="实施强制措施结束时间" align="center" prop="endTimeOfCompulsoryMeasures" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.endTimeOfCompulsoryMeasures, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="行政强制执行时间" align="center" prop="timeOfAdministrativeCompulsionExecution" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.timeOfAdministrativeCompulsionExecution, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="行政机关名称" align="center" prop="nameOfAdministrativeAuthority" :show-overflow-tooltip='true' />
+      <el-table-column label="行政机关统一社会信用代码" align="center" prop="creditCodeOfAdministrativeAuthority" :show-overflow-tooltip='true' />
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改行政强制信息填报模板对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="行政相对人名称" prop="nameOfAdministrativeParty">
+          <el-input v-model="form.nameOfAdministrativeParty" placeholder="请输入行政相对人名称" />
+        </el-form-item>
+        <el-form-item label="行政相对人类别" prop="typeOfAdministrativeParty">
+          <el-input v-model="form.typeOfAdministrativeParty" placeholder="请输入行政相对人类别" />
+        </el-form-item>
+        <el-form-item label="行政相对人代码" prop="codeOfAdministrativeParty">
+          <el-input v-model="form.codeOfAdministrativeParty" placeholder="请输入行政相对人代码" />
+        </el-form-item>
+        <el-form-item label="法定代表人姓名" prop="nameOfLegalRepresentative">
+          <el-input v-model="form.nameOfLegalRepresentative" placeholder="请输入法定代表人姓名" />
+        </el-form-item>
+        <el-form-item label="法定代表人证件类型" prop="typeOfLegalRepresentativeIdentityCard">
+          <el-input v-model="form.typeOfLegalRepresentativeIdentityCard" placeholder="请输入法定代表人证件类型" />
+        </el-form-item>
+        <el-form-item label="法定代表人证件号码" prop="identityCardNumberOfLegalRepresentative">
+          <el-input v-model="form.identityCardNumberOfLegalRepresentative" placeholder="请输入法定代表人证件号码" />
+        </el-form-item>
+        <el-form-item label="行政强制决定文书名称" prop="nameOfAdministrativeCompulsionDocument">
+          <el-input v-model="form.nameOfAdministrativeCompulsionDocument" placeholder="请输入行政强制决定文书名称" />
+        </el-form-item>
+        <el-form-item label="行政强制决定文书号" prop="numberOfAdministrativeCompulsionDocument">
+          <el-input v-model="form.numberOfAdministrativeCompulsionDocument" placeholder="请输入行政强制决定文书号" />
+        </el-form-item>
+        <el-form-item label="行政强制执行理由" prop="reasonForAdministrativeCompulsionExecution">
+          <el-input v-model="form.reasonForAdministrativeCompulsionExecution" placeholder="请输入行政强制执行理由" />
+        </el-form-item>
+        <el-form-item label="行政强制执行依据" prop="basisForAdministrativeCompulsionExecution">
+          <el-input v-model="form.basisForAdministrativeCompulsionExecution" placeholder="请输入行政强制执行依据" />
+        </el-form-item>
+        <el-form-item label="行政强制种类" prop="typeOfAdministrativeCompulsion">
+          <el-input v-model="form.typeOfAdministrativeCompulsion" placeholder="请输入行政强制种类" />
+        </el-form-item>
+        <el-form-item label="行政强制措施类型" prop="typeOfAdministrativeCompulsoryMeasures">
+          <el-input v-model="form.typeOfAdministrativeCompulsoryMeasures" placeholder="请输入行政强制措施类型" />
+        </el-form-item>
+        <el-form-item label="行政强制执行类型" prop="typeOfAdministrativeCompulsionExecution">
+          <el-input v-model="form.typeOfAdministrativeCompulsionExecution" placeholder="请输入行政强制执行类型" />
+        </el-form-item>
+        <el-form-item label="行政强制内容" prop="contentOfAdministrativeCompulsion">
+          <el-input v-model="form.contentOfAdministrativeCompulsion" placeholder="请输入行政强制内容" />
+        </el-form-item>
+        <el-form-item label="行政强制结果" prop="resultOfAdministrativeCompulsion">
+          <el-input v-model="form.resultOfAdministrativeCompulsion" placeholder="请输入行政强制结果" />
+        </el-form-item>
+        <el-form-item label="行政强制执行方式" prop="methodOfAdministrativeCompulsionExecution">
+          <el-input v-model="form.methodOfAdministrativeCompulsionExecution" placeholder="请输入行政强制执行方式" />
+        </el-form-item>
+        <el-form-item label="行政强制决定日期" prop="dateOfAdministrativeCompulsionDecision">
+          <el-date-picker clearable
+                          v-model="form.dateOfAdministrativeCompulsionDecision"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择行政强制决定日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="实施强制措施起始时间" prop="startTimeOfCompulsoryMeasures">
+          <el-date-picker clearable
+                          v-model="form.startTimeOfCompulsoryMeasures"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择实施强制措施起始时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="实施强制措施结束时间" prop="endTimeOfCompulsoryMeasures">
+          <el-date-picker clearable
+                          v-model="form.endTimeOfCompulsoryMeasures"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择实施强制措施结束时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="行政强制执行时间" prop="timeOfAdministrativeCompulsionExecution">
+          <el-date-picker clearable
+                          v-model="form.timeOfAdministrativeCompulsionExecution"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择行政强制执行时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="行政机关名称" prop="nameOfAdministrativeAuthority">
+          <el-input v-model="form.nameOfAdministrativeAuthority" placeholder="请输入行政机关名称" />
+        </el-form-item>
+        <el-form-item label="行政机关统一社会信用代码" prop="creditCodeOfAdministrativeAuthority">
+          <el-input v-model="form.creditCodeOfAdministrativeAuthority" placeholder="请输入行政机关统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information3";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAdministrativeCompulsionInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('code_of_administrative_party', queryParams.value.codeOfAdministrativeParty, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    nameOfAdministrativeParty: null,
+    typeOfAdministrativeParty: null,
+    codeOfAdministrativeParty: '',
+    nameOfLegalRepresentative: null,
+    typeOfLegalRepresentativeIdentityCard: null,
+    identityCardNumberOfLegalRepresentative: null,
+    nameOfAdministrativeCompulsionDocument: null,
+    numberOfAdministrativeCompulsionDocument: null,
+    reasonForAdministrativeCompulsionExecution: null,
+    basisForAdministrativeCompulsionExecution: null,
+    typeOfAdministrativeCompulsion: null,
+    typeOfAdministrativeCompulsoryMeasures: null,
+    typeOfAdministrativeCompulsionExecution: null,
+    contentOfAdministrativeCompulsion: null,
+    resultOfAdministrativeCompulsion: null,
+    methodOfAdministrativeCompulsionExecution: null,
+    dateOfAdministrativeCompulsionDecision: null,
+    startTimeOfCompulsoryMeasures: null,
+    endTimeOfCompulsoryMeasures: null,
+    timeOfAdministrativeCompulsionExecution: null,
+    nameOfAdministrativeAuthority: null,
+    creditCodeOfAdministrativeAuthority: null,
+  },
+  rules: {
+    nameOfAdministrativeParty: [
+      { required: true, message: "行政相对人名称不能为空", trigger: "blur" }
+    ],
+    typeOfAdministrativeParty: [
+      { required: true, message: "行政相对人类别不能为空", trigger: "blur" }
+    ],
+    codeOfAdministrativeParty: [
+      { required: true, message: "行政相对人代码不能为空", trigger: "blur" }
+    ],
+    nameOfAdministrativeCompulsionDocument: [
+      { required: true, message: "行政强制决定文书名称不能为空", trigger: "blur" }
+    ],
+    numberOfAdministrativeCompulsionDocument: [
+      { required: true, message: "行政强制决定文书号不能为空", trigger: "blur" }
+    ],
+    reasonForAdministrativeCompulsionExecution: [
+      { required: true, message: "行政强制执行理由不能为空", trigger: "blur" }
+    ],
+    basisForAdministrativeCompulsionExecution: [
+      { required: true, message: "行政强制执行依据不能为空", trigger: "blur" }
+    ],
+    typeOfAdministrativeCompulsion: [
+      { required: true, message: "行政强制种类不能为空", trigger: "blur" }
+    ],
+    contentOfAdministrativeCompulsion: [
+      { required: true, message: "行政强制内容不能为空", trigger: "blur" }
+    ],
+    resultOfAdministrativeCompulsion: [
+      { required: true, message: "行政强制结果不能为空", trigger: "blur" }
+    ],
+    methodOfAdministrativeCompulsionExecution: [
+      { required: true, message: "行政强制执行方式不能为空", trigger: "blur" }
+    ],
+    dateOfAdministrativeCompulsionDecision: [
+      { required: true, message: "行政强制决定日期不能为空", trigger: "blur" }
+    ],
+    nameOfAdministrativeAuthority: [
+      { required: true, message: "行政机关名称不能为空", trigger: "blur" }
+    ],
+    creditCodeOfAdministrativeAuthority: [
+      { required: true, message: "行政机关统一社会信用代码不能为空", trigger: "blur" }
+    ],
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询行政强制信息填报模板列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('code_of_administrative_party', queryParams.value.codeOfAdministrativeParty, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    nameOfAdministrativeParty: null,
+    typeOfAdministrativeParty: null,
+    codeOfAdministrativeParty: null,
+    nameOfLegalRepresentative: '',
+    typeOfLegalRepresentativeIdentityCard: null,
+    identityCardNumberOfLegalRepresentative: null,
+    nameOfAdministrativeCompulsionDocument: null,
+    numberOfAdministrativeCompulsionDocument: null,
+    reasonForAdministrativeCompulsionExecution: null,
+    basisForAdministrativeCompulsionExecution: null,
+    typeOfAdministrativeCompulsion: null,
+    typeOfAdministrativeCompulsoryMeasures: null,
+    typeOfAdministrativeCompulsionExecution: null,
+    contentOfAdministrativeCompulsion: null,
+    resultOfAdministrativeCompulsion: null,
+    methodOfAdministrativeCompulsionExecution: null,
+    dateOfAdministrativeCompulsionDecision: null,
+    startTimeOfCompulsoryMeasures: null,
+    endTimeOfCompulsoryMeasures: null,
+    timeOfAdministrativeCompulsionExecution: null,
+    nameOfAdministrativeAuthority: null,
+    creditCodeOfAdministrativeAuthority: null,
+    remark: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加行政强制信息填报模板";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改行政强制信息填报模板";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除行政强制信息填报模板编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmAdministrativeCompulsionInformation/exportData', {
+    ...queryParams.value
+  }, `行政强制信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 521 - 7
src/views/basicData/HetcData/ARInformation/index.vue

@@ -1,9 +1,523 @@
 <template>
-    <div>
-        行政裁决信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="行政相对人名称" prop="nameOfAdministrativeParty">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfAdministrativeParty"-->
+<!--            placeholder="请输入行政相对人名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政相对人类别" prop="typeOfAdministrativeParty">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfAdministrativeParty"-->
+<!--            placeholder="请输入行政相对人类别"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="行政相对人代码" prop="codeOfAdministrativeParty">
+        <el-input
+            v-model="queryParams.codeOfAdministrativeParty"
+            placeholder="请输入行政相对人代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="法定代表人姓名" prop="nameOfLegalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfLegalRepresentative"-->
+<!--            placeholder="请输入法定代表人姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人证件类型" prop="typeOfLegalRepresentativeIdentityCard">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfLegalRepresentativeIdentityCard"-->
+<!--            placeholder="请输入法定代表人证件类型"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人证件号码" prop="identityCardNumberOfLegalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.identityCardNumberOfLegalRepresentative"-->
+<!--            placeholder="请输入法定代表人证件号码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决种类" prop="typeOfSanction">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.typeOfSanction"-->
+<!--            placeholder="请输入裁决种类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="是否终局裁决" prop="isFinalDecision">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.isFinalDecision"-->
+<!--            placeholder="请输入是否终局裁决"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决内容" prop="contentOfSanction">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.contentOfSanction"-->
+<!--            placeholder="请输入裁决内容"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决事由" prop="causeOfSanction">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.causeOfSanction"-->
+<!--            placeholder="请输入裁决事由"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法律依据" prop="legalBasis">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalBasis"-->
+<!--            placeholder="请输入法律依据"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决日期" prop="dateOfSanction">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.dateOfSanction"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择裁决日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决机关名称" prop="nameOfSanctioningAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfSanctioningAuthority"-->
+<!--            placeholder="请输入裁决机关名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁决机关代码" prop="codeOfSanctioningAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.codeOfSanctioningAuthority"-->
+<!--            placeholder="请输入裁决机关代码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:info:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:info:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:info:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!infoList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:info:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="infoList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="行政相对人名称" align="center" prop="nameOfAdministrativeParty" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人类别" align="center" prop="typeOfAdministrativeParty" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人代码" align="center" prop="codeOfAdministrativeParty" />
+      <el-table-column label="法定代表人姓名" align="center" prop="nameOfLegalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件类型" align="center" prop="typeOfLegalRepresentativeIdentityCard" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件号码" align="center" prop="identityCardNumberOfLegalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="裁决种类" align="center" prop="typeOfSanction" :show-overflow-tooltip='true' />
+      <el-table-column label="是否终局裁决" align="center" prop="isFinalDecision" :show-overflow-tooltip='true' />
+      <el-table-column label="裁决内容" align="center" prop="contentOfSanction" :show-overflow-tooltip='true' />
+      <el-table-column label="裁决事由" align="center" prop="causeOfSanction" :show-overflow-tooltip='true' />
+      <el-table-column label="法律依据" align="center" prop="legalBasis" :show-overflow-tooltip='true' />
+      <el-table-column label="裁决日期" align="center" prop="dateOfSanction" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.dateOfSanction, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="裁决机关名称" align="center" prop="nameOfSanctioningAuthority" :show-overflow-tooltip='true' />
+      <el-table-column label="裁决机关代码" align="center" prop="codeOfSanctioningAuthority" :show-overflow-tooltip='true' />
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改行政裁决信息填报模板对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="infoRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="行政相对人名称" prop="nameOfAdministrativeParty">
+          <el-input v-model="form.nameOfAdministrativeParty" placeholder="请输入行政相对人名称" />
+        </el-form-item>
+        <el-form-item label="行政相对人类别" prop="typeOfAdministrativeParty">
+          <el-input v-model="form.typeOfAdministrativeParty" placeholder="请输入行政相对人类别" />
+        </el-form-item>
+        <el-form-item label="行政相对人代码" prop="codeOfAdministrativeParty">
+          <el-input v-model="form.codeOfAdministrativeParty" placeholder="请输入行政相对人代码" />
+        </el-form-item>
+        <el-form-item label="法定代表人姓名" prop="nameOfLegalRepresentative">
+          <el-input v-model="form.nameOfLegalRepresentative" placeholder="请输入法定代表人姓名" />
+        </el-form-item>
+        <el-form-item label="法定代表人证件类型" prop="typeOfLegalRepresentativeIdentityCard">
+          <el-input v-model="form.typeOfLegalRepresentativeIdentityCard" placeholder="请输入法定代表人证件类型" />
+        </el-form-item>
+        <el-form-item label="法定代表人证件号码" prop="identityCardNumberOfLegalRepresentative">
+          <el-input v-model="form.identityCardNumberOfLegalRepresentative" placeholder="请输入法定代表人证件号码" />
+        </el-form-item>
+        <el-form-item label="裁决种类" prop="typeOfSanction">
+          <el-input v-model="form.typeOfSanction" placeholder="请输入裁决种类" />
+        </el-form-item>
+        <el-form-item label="是否终局裁决" prop="isFinalDecision">
+          <el-input v-model="form.isFinalDecision" placeholder="请输入是否终局裁决" />
+        </el-form-item>
+        <el-form-item label="裁决内容" prop="contentOfSanction">
+          <el-input v-model="form.contentOfSanction" placeholder="请输入裁决内容" />
+        </el-form-item>
+        <el-form-item label="裁决事由" prop="causeOfSanction">
+          <el-input v-model="form.causeOfSanction" placeholder="请输入裁决事由" />
+        </el-form-item>
+        <el-form-item label="法律依据" prop="legalBasis">
+          <el-input v-model="form.legalBasis" placeholder="请输入法律依据" />
+        </el-form-item>
+        <el-form-item label="裁决日期" prop="dateOfSanction">
+          <el-date-picker clearable
+                          v-model="form.dateOfSanction"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择裁决日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="裁决机关名称" prop="nameOfSanctioningAuthority">
+          <el-input v-model="form.nameOfSanctioningAuthority" placeholder="请输入裁决机关名称" />
+        </el-form-item>
+        <el-form-item label="裁决机关代码" prop="codeOfSanctioningAuthority">
+          <el-input v-model="form.codeOfSanctioningAuthority" placeholder="请输入裁决机关代码" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Info">
+import { listInfo, getInfo, delInfo, addInfo, updateInfo } from "@/api/basicData/info4";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const infoList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAdministrativeSanctionInfo/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('code_of_administrative_party', queryParams.value.codeOfAdministrativeParty, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    nameOfAdministrativeParty: null,
+    typeOfAdministrativeParty: null,
+    codeOfAdministrativeParty: '',
+    nameOfLegalRepresentative: null,
+    typeOfLegalRepresentativeIdentityCard: null,
+    identityCardNumberOfLegalRepresentative: null,
+    typeOfSanction: null,
+    isFinalDecision: null,
+    contentOfSanction: null,
+    causeOfSanction: null,
+    legalBasis: null,
+    dateOfSanction: null,
+    nameOfSanctioningAuthority: null,
+    codeOfSanctioningAuthority: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询行政裁决信息填报模板列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('code_of_administrative_party', queryParams.value.codeOfAdministrativeParty, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(response => {
+    infoList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    nameOfAdministrativeParty: null,
+    typeOfAdministrativeParty: null,
+    codeOfAdministrativeParty: '',
+    nameOfLegalRepresentative: null,
+    typeOfLegalRepresentativeIdentityCard: null,
+    identityCardNumberOfLegalRepresentative: null,
+    typeOfSanction: null,
+    isFinalDecision: null,
+    contentOfSanction: null,
+    causeOfSanction: null,
+    legalBasis: null,
+    dateOfSanction: null,
+    nameOfSanctioningAuthority: null,
+    codeOfSanctioningAuthority: null,
+    remark: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("infoRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加行政裁决信息填报模板";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInfo(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改行政裁决信息填报模板";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["infoRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInfo();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除行政裁决信息填报模板编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInfo(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmAdministrativeCompulsionInformation/exportData', {
+    ...queryParams.value
+  }, `行政裁决_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 429 - 7
src/views/basicData/HetcData/BankruptcyInformation/index.vue

@@ -1,9 +1,431 @@
 <template>
-    <div>
-        破产信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="破产案件案号" prop="bankruptcyCaseNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.bankruptcyCaseNumber"-->
+<!--            placeholder="请输入破产案件案号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业破产程序受理时间" prop="enterpriseBankruptcyProcedureAcceptanceTime">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.enterpriseBankruptcyProcedureAcceptanceTime"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择企业破产程序受理时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="受理法院" prop="courtAcceptance">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.courtAcceptance"-->
+<!--            placeholder="请输入受理法院"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="管理人名称" prop="administratorName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.administratorName"-->
+<!--            placeholder="请输入管理人名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="社会统一信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入社会统一信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="结案方式" prop="caseClosureMethod">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.caseClosureMethod"-->
+<!--            placeholder="请输入结案方式"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="日期" prop="closureDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.closureDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="破产案件案号" align="center" prop="bankruptcyCaseNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="破产类型" align="center" prop="bankruptcyType" :show-overflow-tooltip='true' />
+      <el-table-column label="企业破产程序受理时间" align="center" prop="enterpriseBankruptcyProcedureAcceptanceTime" :show-overflow-tooltip='true' width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.enterpriseBankruptcyProcedureAcceptanceTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="受理法院" align="center" prop="courtAcceptance" :show-overflow-tooltip='true' />
+      <el-table-column label="管理人名称" align="center" prop="administratorName" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="结案方式" align="center" prop="caseClosureMethod" :show-overflow-tooltip='true' />
+      <el-table-column label="日期" align="center" prop="closureDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.closureDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改破产信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="破产案件案号" prop="bankruptcyCaseNumber">
+          <el-input v-model="form.bankruptcyCaseNumber" placeholder="请输入破产案件案号" />
+        </el-form-item>
+        <el-form-item label="企业破产程序受理时间" prop="enterpriseBankruptcyProcedureAcceptanceTime">
+          <el-date-picker clearable
+                          v-model="form.enterpriseBankruptcyProcedureAcceptanceTime"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择企业破产程序受理时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="受理法院" prop="courtAcceptance">
+          <el-input v-model="form.courtAcceptance" placeholder="请输入受理法院" />
+        </el-form-item>
+        <el-form-item label="管理人名称" prop="administratorName">
+          <el-input v-model="form.administratorName" placeholder="请输入管理人名称" />
+        </el-form-item>
+        <el-form-item label="社会信用统一代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入社会信用统一代码" />
+        </el-form-item>
+        <el-form-item label="结案方式" prop="caseClosureMethod">
+          <el-input v-model="form.caseClosureMethod" placeholder="请输入结案方式" />
+        </el-form-item>
+        <el-form-item label="日期" prop="closureDate">
+          <el-date-picker clearable
+                          v-model="form.closureDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择日期">
+          </el-date-picker>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information6";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmBankruptcyInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    bankruptcyCaseNumber: null,
+    bankruptcyType: null,
+    enterpriseBankruptcyProcedureAcceptanceTime: null,
+    courtAcceptance: null,
+    administratorName: null,
+    unifiedSocialCreditCode:'',
+    caseClosureMethod: null,
+    closureDate: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询破产信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    bankruptcyCaseNumber: null,
+    bankruptcyType: null,
+    enterpriseBankruptcyProcedureAcceptanceTime: null,
+    courtAcceptance: null,
+    administratorName: null,
+    unifiedSocialCreditCode:'',
+    caseClosureMethod: null,
+    closureDate: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加破产信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改破产信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除破产信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmBankruptcyInformation/exportData', {
+    ...queryParams.value
+  }, `破产信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 434 - 7
src/views/basicData/HetcData/CCreditRating/index.vue

@@ -1,9 +1,436 @@
 <template>
-    <div>
-        海关信用等级信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="海关注册编码(企业注册号)" prop="customsRegistrationCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.customsRegistrationCode"-->
+<!--            placeholder="请输入海关注册编码(企业注册号)"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行业种类" prop="industryCategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.industryCategory"-->
+<!--            placeholder="请输入行业种类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="信用等级" prop="creditRating">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.creditRating"-->
+<!--            placeholder="请输入信用等级"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注册日期" prop="registrationDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.registrationDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择注册日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="适用信用等级时间" prop="applicableCreditRatingTime">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.applicableCreditRatingTime"-->
+<!--            placeholder="请输入适用信用等级时间"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注册海关" prop="registeredCustoms">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registeredCustoms"-->
+<!--            placeholder="请输入注册海关"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:rating:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:rating:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:rating:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!ratingList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:rating:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="ratingList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="海关注册编码(企业注册号)" align="center" prop="customsRegistrationCode" :show-overflow-tooltip='true' />
+      <el-table-column label="行业种类" align="center" prop="industryCategory" :show-overflow-tooltip='true' />
+      <el-table-column label="信用等级" align="center" prop="creditRating" :show-overflow-tooltip='true' />
+      <el-table-column label="注册日期" align="center" prop="registrationDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.registrationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="适用信用等级时间" align="center" prop="applicableCreditRatingTime" :show-overflow-tooltip='true' />
+      <el-table-column label="注册海关" align="center" prop="registeredCustoms" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:rating:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:rating:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改海关信用等级信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="ratingRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="海关注册编码(企业注册号)" prop="customsRegistrationCode">
+          <el-input v-model="form.customsRegistrationCode" placeholder="请输入海关注册编码(企业注册号)" />
+        </el-form-item>
+        <el-form-item label="行业种类" prop="industryCategory">
+          <el-input v-model="form.industryCategory" placeholder="请输入行业种类" />
+        </el-form-item>
+        <el-form-item label="信用等级" prop="creditRating">
+          <el-input v-model="form.creditRating" placeholder="请输入信用等级" />
+        </el-form-item>
+        <el-form-item label="注册日期" prop="registrationDate">
+          <el-date-picker clearable
+                          v-model="form.registrationDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择注册日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="适用信用等级时间" prop="applicableCreditRatingTime">
+          <el-input v-model="form.applicableCreditRatingTime" placeholder="请输入适用信用等级时间" />
+        </el-form-item>
+        <el-form-item label="注册海关" prop="registeredCustoms">
+          <el-input v-model="form.registeredCustoms" placeholder="请输入注册海关" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Rating">
+import { listRating, getRating, delRating, addRating, updateRating } from "@/api/basicData/rating";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const ratingList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmCustomsCreditRating/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listRating(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    customsRegistrationCode: null,
+    industryCategory: null,
+    creditRating: null,
+    registrationDate: null,
+    applicableCreditRatingTime: null,
+    registeredCustoms: null,
+  },
+  rules: {
+    enterpriseName: [
+      { required: true, message: "企业名称不能为空", trigger: "blur" }
+    ],
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询海关信用等级信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listRating(toServerObj).then(response => {
+    ratingList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    customsRegistrationCode: null,
+    industryCategory: null,
+    creditRating: null,
+    registrationDate: null,
+    applicableCreditRatingTime: null,
+    registeredCustoms: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("ratingRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加海关信用等级信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getRating(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改海关信用等级信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["ratingRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateRating(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addRating(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delRating();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除海关信用等级信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delRating(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmCustomsCreditRating/exportData', {
+    ...queryParams.value
+  }, `海关信用等级_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 458 - 7
src/views/basicData/HetcData/CJInformation/index.vue

@@ -1,9 +1,460 @@
 <template>
-    <div>
-        法院判决信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="案号" prop="caseNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.caseNumber"-->
+<!--            placeholder="请输入案号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="发布日期" prop="releaseDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.releaseDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择发布日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="案由" prop="causeOfAction">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.causeOfAction"-->
+<!--            placeholder="请输入案由"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="原、被告姓名" prop="nameOfPlaintiffOrDefendant">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfPlaintiffOrDefendant"-->
+<!--            placeholder="请输入原、被告姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="身份信息" prop="identityInformation">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.identityInformation"-->
+<!--            placeholder="请输入身份信息"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="案件名称" prop="nameOfCase">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nameOfCase"-->
+<!--            placeholder="请输入案件名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="裁判结果" prop="judgmentResult">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.judgmentResult"-->
+<!--            placeholder="请输入裁判结果"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="执行法院" prop="executiveCourt">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executiveCourt"-->
+<!--            placeholder="请输入执行法院"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="所在地" prop="location">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.location"-->
+<!--            placeholder="请输入所在地"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="发布日期" align="center" prop="releaseDate" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.releaseDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="案由" align="center" prop="causeOfAction" :show-overflow-tooltip='true' />
+      <el-table-column label="原、被告姓名" align="center" prop="nameOfPlaintiffOrDefendant" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" />
+      <el-table-column label="身份信息" align="center" prop="identityInformation" :show-overflow-tooltip='true' />
+      <el-table-column label="案件名称" align="center" prop="nameOfCase" :show-overflow-tooltip='true' />
+      <el-table-column label="裁判结果" align="center" prop="judgmentResult" :show-overflow-tooltip='true' />
+      <el-table-column label="执行法院" align="center" prop="executiveCourt" :show-overflow-tooltip='true' />
+      <el-table-column label="所在地" align="center" prop="location" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改法院已公开裁判文书判决信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="案号" prop="caseNumber">
+          <el-input v-model="form.caseNumber" placeholder="请输入案号" />
+        </el-form-item>
+        <el-form-item label="发布日期" prop="releaseDate">
+          <el-date-picker clearable
+                          v-model="form.releaseDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择发布日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="案由" prop="causeOfAction">
+          <el-input v-model="form.causeOfAction" placeholder="请输入案由" />
+        </el-form-item>
+        <el-form-item label="原、被告姓名" prop="nameOfPlaintiffOrDefendant">
+          <el-input v-model="form.nameOfPlaintiffOrDefendant" placeholder="请输入原、被告姓名" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="身份信息" prop="identityInformation">
+          <el-input v-model="form.identityInformation" placeholder="请输入身份信息" />
+        </el-form-item>
+        <el-form-item label="案件名称" prop="nameOfCase">
+          <el-input v-model="form.nameOfCase" placeholder="请输入案件名称" />
+        </el-form-item>
+        <el-form-item label="裁判结果" prop="judgmentResult">
+          <el-input v-model="form.judgmentResult" placeholder="请输入裁判结果" />
+        </el-form-item>
+        <el-form-item label="执行法院" prop="executiveCourt">
+          <el-input v-model="form.executiveCourt" placeholder="请输入执行法院" />
+        </el-form-item>
+        <el-form-item label="所在地" prop="location">
+          <el-input v-model="form.location" placeholder="请输入所在地" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information4";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmJudgmentDocumentJudgmentInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 10,
+    caseNumber: null,
+    releaseDate: null,
+    causeOfAction: null,
+    nameOfPlaintiffOrDefendant: null,
+    unifiedSocialCreditCode: null,
+    identityInformation: null,
+    nameOfCase: null,
+    judgmentResult: null,
+    executiveCourt: null,
+    location: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询法院已公开裁判文书判决信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.rows;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    caseNumber: null,
+    releaseDate: null,
+    causeOfAction: null,
+    nameOfPlaintiffOrDefendant: null,
+    unifiedSocialCreditCode: null,
+    identityInformation: null,
+    nameOfCase: null,
+    judgmentResult: null,
+    executiveCourt: null,
+    location: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加法院已公开裁判文书判决信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改法院已公开裁判文书判决信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除法院已公开裁判文书判决信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmJudgmentDocumentJudgmentInformation/exportData', {
+    ...queryParams.value
+  }, `法院公开判决文书_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 3 - 2
src/views/basicData/HetcData/CRIPayTaxes/index.vue

@@ -207,12 +207,13 @@ const handleFileSuccess = (e)=>{
       type:"success",
       message:e.msg
     })
+    getList()
   }
 }
 function submitFileForm() {
   proxy.$refs['uploadRef'].submit()
   upload.open = false;
-  setTimeout(getList,1000)
+  // setTimeout(getList,1000)
 }
 function handleImport() {
 
@@ -235,7 +236,7 @@ const data = reactive({
   form: {},
   queryParams: {
     pageNum: 1,
-    pageSize: 10,
+    pageSize: 20,
     unifiedSocialCreditCode: '',
     enterpriseName: null,
     ratingYear: null,

+ 404 - 7
src/views/basicData/HetcData/CRIRvnPro/index.vue

@@ -1,9 +1,406 @@
 <template>
-    <div>
-        环保信用评价信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="公司名称" prop="companyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.companyName"-->
+<!--            placeholder="请输入公司名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="环保信用评级" prop="creditRating">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.creditRating"-->
+<!--            placeholder="请输入环保信用评级"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="评价时间" prop="evaluationTime">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.evaluationTime"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择评价时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="所属年度" prop="fiscalYear">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.fiscalYear"-->
+<!--            placeholder="请输入所属年度"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="环保信用评分" prop="creditScore">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.creditScore"-->
+<!--            placeholder="请输入环保信用评分"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:notification:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:notification:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:notification:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!notificationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:notification:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="notificationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="公司名称" align="center" prop="companyName" :show-overflow-tooltip='true' />
+      <el-table-column label="环保信用评级" align="center" prop="creditRating" :show-overflow-tooltip='true' />
+      <el-table-column label="评价时间" align="center" prop="evaluationTime" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.evaluationTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="所属年度" align="center" prop="fiscalYear" :show-overflow-tooltip='true' />
+      <el-table-column label="环保信用评分" align="center" prop="creditScore" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:notification:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:notification:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改环保信用评价结果的通知对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="notificationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="公司名称" prop="companyName">
+          <el-input v-model="form.companyName" placeholder="请输入公司名称" />
+        </el-form-item>
+        <el-form-item label="环保信用评级" prop="creditRating">
+          <el-input v-model="form.creditRating" placeholder="请输入环保信用评级" />
+        </el-form-item>
+        <el-form-item label="评价时间" prop="evaluationTime">
+          <el-date-picker clearable
+                          v-model="form.evaluationTime"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择评价时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="所属年度" prop="fiscalYear">
+          <el-input v-model="form.fiscalYear" placeholder="请输入所属年度" />
+        </el-form-item>
+        <el-form-item label="环保信用评分" prop="creditScore">
+          <el-input v-model="form.creditScore" placeholder="请输入环保信用评分" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Notification">
+import { listNotification, getNotification, delNotification, addNotification, updateNotification } from "@/api/basicData/notification";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const notificationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEnvironmentalCreditEvaluationNotification/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listNotification(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    companyName: null,
+    creditRating: null,
+    evaluationTime: null,
+    fiscalYear: null,
+    creditScore: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询环保信用评价结果的通知列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listNotification(toServerObj).then(response => {
+    notificationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    companyName: null,
+    creditRating: null,
+    evaluationTime: null,
+    fiscalYear: null,
+    creditScore: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("notificationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加环保信用评价结果的通知";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getNotification(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改环保信用评价结果的通知";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["notificationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateNotification(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addNotification(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delNotification();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除环保信用评价结果的通知编号为"' + ids + '"的数据项?').then(function() {
+  //   return delNotification(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnvironmentalCreditEvaluationNotification/exportData', {
+    ...queryParams.value
+  }, `notification_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 552 - 7
src/views/basicData/HetcData/DITPInformation/index.vue

@@ -1,9 +1,554 @@
 <template>
-    <div>
-        失信被执行人信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="失信被执行人" prop="discreditedExecutor">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.discreditedExecutor"-->
+<!--            placeholder="请输入失信被执行人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="法定代表人" prop="legalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentative"-->
+<!--            placeholder="请输入法定代表人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="身份证号/组织机构代码" prop="idNumberOrOrganizationCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.idNumberOrOrganizationCode"-->
+<!--            placeholder="请输入身份证号/组织机构代码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="执行依据文书号" prop="executionBasisDocumentNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executionBasisDocumentNumber"-->
+<!--            placeholder="请输入执行依据文书号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="案号" prop="caseNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.caseNumber"-->
+<!--            placeholder="请输入案号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="做出执行依据单位" prop="executingBasisUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executingBasisUnit"-->
+<!--            placeholder="请输入做出执行依据单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="执行法院" prop="executingCourt">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executingCourt"-->
+<!--            placeholder="请输入执行法院"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="省份" prop="province">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.province"-->
+<!--            placeholder="请输入省份"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="立案日期" prop="filingDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.filingDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择立案日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="发布日期" prop="releaseDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.releaseDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择发布日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="失信被执行人具体行为情形" prop="dishonestExecutorBehavior">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.dishonestExecutorBehavior"-->
+<!--            placeholder="请输入失信被执行人具体行为情形"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="生效法律文书确定的义务" prop="legalObligationsDeterminedByEffectiveLegalDocument">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalObligationsDeterminedByEffectiveLegalDocument"-->
+<!--            placeholder="请输入生效法律文书确定的义务"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="被执行人的履行情况" prop="performanceOfTheObligationOfTheExecutedPerson">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.performanceOfTheObligationOfTheExecutedPerson"-->
+<!--            placeholder="请输入被执行人的履行情况"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="已履行" prop="performed">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.performed"-->
+<!--            placeholder="请输入已履行"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="未履行" prop="unperformed">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.unperformed"-->
+<!--            placeholder="请输入未履行"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:executor:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:executor:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:executor:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!executorList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:executor:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="executorList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="失信被执行人" align="center" prop="discreditedExecutor" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="法定代表人" align="center" prop="legalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="身份证号/组织机构代码" align="center" prop="idNumberOrOrganizationCode" :show-overflow-tooltip='true' />
+      <el-table-column label="执行依据文书号" align="center" prop="executionBasisDocumentNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="做出执行依据单位" align="center" prop="executingBasisUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="执行法院" align="center" prop="executingCourt" :show-overflow-tooltip='true' />
+      <el-table-column label="省份" align="center" prop="province" :show-overflow-tooltip='true' />
+      <el-table-column label="立案日期" align="center" prop="filingDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.filingDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="发布日期" align="center" prop="releaseDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.releaseDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="失信被执行人具体行为情形" align="center" prop="dishonestExecutorBehavior" :show-overflow-tooltip='true' />
+      <el-table-column label="生效法律文书确定的义务" align="center" prop="legalObligationsDeterminedByEffectiveLegalDocument" :show-overflow-tooltip='true' />
+      <el-table-column label="被执行人的履行情况" align="center" prop="performanceOfTheObligationOfTheExecutedPerson" :show-overflow-tooltip='true' />
+      <el-table-column label="已履行" align="center" prop="performed" :show-overflow-tooltip='true' />
+      <el-table-column label="未履行" align="center" prop="unperformed" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:executor:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:executor:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改失信被执行人信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="executorRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="失信被执行人" prop="discreditedExecutor">
+          <el-input v-model="form.discreditedExecutor" placeholder="请输入失信被执行人" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="法定代表人" prop="legalRepresentative">
+          <el-input v-model="form.legalRepresentative" placeholder="请输入法定代表人" />
+        </el-form-item>
+        <el-form-item label="身份证号/组织机构代码" prop="idNumberOrOrganizationCode">
+          <el-input v-model="form.idNumberOrOrganizationCode" placeholder="请输入身份证号/组织机构代码" />
+        </el-form-item>
+        <el-form-item label="执行依据文书号" prop="executionBasisDocumentNumber">
+          <el-input v-model="form.executionBasisDocumentNumber" placeholder="请输入执行依据文书号" />
+        </el-form-item>
+        <el-form-item label="案号" prop="caseNumber">
+          <el-input v-model="form.caseNumber" placeholder="请输入案号" />
+        </el-form-item>
+        <el-form-item label="做出执行依据单位" prop="executingBasisUnit">
+          <el-input v-model="form.executingBasisUnit" placeholder="请输入做出执行依据单位" />
+        </el-form-item>
+        <el-form-item label="执行法院" prop="executingCourt">
+          <el-input v-model="form.executingCourt" placeholder="请输入执行法院" />
+        </el-form-item>
+        <el-form-item label="省份" prop="province">
+          <el-input v-model="form.province" placeholder="请输入省份" />
+        </el-form-item>
+        <el-form-item label="立案日期" prop="filingDate">
+          <el-date-picker clearable
+                          v-model="form.filingDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择立案日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="发布日期" prop="releaseDate">
+          <el-date-picker clearable
+                          v-model="form.releaseDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择发布日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="失信被执行人具体行为情形" prop="dishonestExecutorBehavior">
+          <el-input v-model="form.dishonestExecutorBehavior" placeholder="请输入失信被执行人具体行为情形" />
+        </el-form-item>
+        <el-form-item label="生效法律文书确定的义务" prop="legalObligationsDeterminedByEffectiveLegalDocument">
+          <el-input v-model="form.legalObligationsDeterminedByEffectiveLegalDocument" placeholder="请输入生效法律文书确定的义务" />
+        </el-form-item>
+        <el-form-item label="被执行人的履行情况" prop="performanceOfTheObligationOfTheExecutedPerson">
+          <el-input v-model="form.performanceOfTheObligationOfTheExecutedPerson" placeholder="请输入被执行人的履行情况" />
+        </el-form-item>
+        <el-form-item label="已履行" prop="performed">
+          <el-input v-model="form.performed" placeholder="请输入已履行" />
+        </el-form-item>
+        <el-form-item label="未履行" prop="unperformed">
+          <el-input v-model="form.unperformed" placeholder="请输入未履行" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Executor">
+import { listExecutor, getExecutor, delExecutor, addExecutor, updateExecutor } from "@/api/basicData/executor";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const executorList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmDishonestExecutor/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listExecutor(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    discreditedExecutor: null,
+    unifiedSocialCreditCode: '',
+    legalRepresentative: null,
+    idNumberOrOrganizationCode: null,
+    executionBasisDocumentNumber: null,
+    caseNumber: null,
+    executingBasisUnit: null,
+    executingCourt: null,
+    province: null,
+    filingDate: null,
+    releaseDate: null,
+    dishonestExecutorBehavior: null,
+    legalObligationsDeterminedByEffectiveLegalDocument: null,
+    performanceOfTheObligationOfTheExecutedPerson: null,
+    performed: null,
+    unperformed: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询失信被执行人信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listExecutor(toServerObj).then(response => {
+    executorList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    discreditedExecutor: null,
+    unifiedSocialCreditCode: '',
+    legalRepresentative: null,
+    idNumberOrOrganizationCode: null,
+    executionBasisDocumentNumber: null,
+    caseNumber: null,
+    executingBasisUnit: null,
+    executingCourt: null,
+    province: null,
+    filingDate: null,
+    releaseDate: null,
+    dishonestExecutorBehavior: null,
+    legalObligationsDeterminedByEffectiveLegalDocument: null,
+    performanceOfTheObligationOfTheExecutedPerson: null,
+    performed: null,
+    unperformed: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("executorRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加失信被执行人信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getExecutor(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改失信被执行人信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["executorRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateExecutor(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addExecutor(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delExecutor();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除失信被执行人信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delExecutor(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmDishonestExecutor/exportData', {
+    ...queryParams.value
+  }, `失信被执行人信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 423 - 7
src/views/basicData/HetcData/LOTLViolations/index.vue

@@ -1,9 +1,425 @@
 <template>
-    <div>
-        列入严重违法名单
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码/注册号" label-width="200" prop="unifiedSocialCreditCodeOrRegistrationNumber">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCodeOrRegistrationNumber"
+            placeholder="请输入统一社会信用代码/注册号"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="登记机关" prop="registrationAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationAuthority"-->
+<!--            placeholder="请输入登记机关"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人" prop="legalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentative"-->
+<!--            placeholder="请输入法定代表人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="列入决定时间" prop="listingDecisionDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.listingDecisionDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择列入决定时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="文号" prop="documentNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.documentNumber"-->
+<!--            placeholder="请输入文号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="列入原因" prop="reasonForListing">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.reasonForListing"-->
+<!--            placeholder="请输入列入原因"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="数据来源" prop="dataSource">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.dataSource"-->
+<!--            placeholder="请输入数据来源"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:list:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:list:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:list:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!listListData.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:list:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="listListData" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码/注册号" align="center" prop="unifiedSocialCreditCodeOrRegistrationNumber" width="200" />
+      <el-table-column label="登记机关" align="center" prop="registrationAuthority" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人" align="center" prop="legalRepresentative" :show-overflow-tooltip='true' />
+      <el-table-column label="列入决定时间" align="center" prop="listingDecisionDate" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.listingDecisionDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="状态" align="center" prop="status" :show-overflow-tooltip='true' />
+      <el-table-column label="文号" align="center" prop="documentNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="列入原因" align="center" prop="reasonForListing" :show-overflow-tooltip='true' />
+      <el-table-column label="数据来源" align="center" prop="dataSource" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:list:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:list:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改严重违法失信名单对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="listRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码/注册号" prop="unifiedSocialCreditCodeOrRegistrationNumber">
+          <el-input v-model="form.unifiedSocialCreditCodeOrRegistrationNumber" placeholder="请输入统一社会信用代码/注册号" />
+        </el-form-item>
+        <el-form-item label="登记机关" prop="registrationAuthority">
+          <el-input v-model="form.registrationAuthority" placeholder="请输入登记机关" />
+        </el-form-item>
+        <el-form-item label="法定代表人" prop="legalRepresentative">
+          <el-input v-model="form.legalRepresentative" placeholder="请输入法定代表人" />
+        </el-form-item>
+        <el-form-item label="列入决定时间" prop="listingDecisionDate">
+          <el-date-picker clearable
+                          v-model="form.listingDecisionDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择列入决定时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="文号" prop="documentNumber">
+          <el-input v-model="form.documentNumber" placeholder="请输入文号" />
+        </el-form-item>
+        <el-form-item label="列入原因" prop="reasonForListing">
+          <el-input v-model="form.reasonForListing" placeholder="请输入列入原因" />
+        </el-form-item>
+        <el-form-item label="数据来源" prop="dataSource">
+          <el-input v-model="form.dataSource" placeholder="请输入数据来源" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="List">
+import { listList, getListData, delList, addList, updateList } from "@/api/basicData/list2";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const listListData = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmSeriouslyIllegalAndDishonestList/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code_or_registration_number', queryParams.value.unifiedSocialCreditCodeOrRegistrationNumber, queryParams.value.pageNum, queryParams.value.pageSize);
+  listList(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCodeOrRegistrationNumber: '',
+    registrationAuthority: null,
+    legalRepresentative: null,
+    listingDecisionDate: null,
+    status: null,
+    documentNumber: null,
+    reasonForListing: null,
+    dataSource: null,
+  },
+  rules: {
+    unifiedSocialCreditCodeOrRegistrationNumber: [
+      { required: true, message: "统一社会信用代码/注册号不能为空", trigger: "blur" }
+    ],
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询严重违法失信名单列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code_or_registration_number', queryParams.value.unifiedSocialCreditCodeOrRegistrationNumber, queryParams.value.pageNum, queryParams.value.pageSize);
+  listList(toServerObj).then(response => {
+    listListData.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCodeOrRegistrationNumber: '',
+    registrationAuthority: null,
+    legalRepresentative: null,
+    listingDecisionDate: null,
+    status: "0",
+    documentNumber: null,
+    reasonForListing: null,
+    dataSource: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("listRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加严重违法失信名单";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getListData(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改严重违法失信名单";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["listRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateList(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addList(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delList();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除严重违法失信名单编号为"' + ids + '"的数据项?').then(function() {
+  //   return delList(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmSeriouslyIllegalAndDishonestList/exportData', {
+    ...queryParams.value
+  }, `严重违法失信名单_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 2 - 1
src/views/basicData/HetcData/SCInformation/index.vue

@@ -1,6 +1,7 @@
 <template>
     <div>
-        抽查信息    </div>
+        抽查信息
+    </div>
   </template>
   
   <script setup name="Confirmation">

+ 438 - 7
src/views/basicData/HetcData/TOTECInformation/index.vue

@@ -1,9 +1,440 @@
 <template>
-    <div>
-        终结本次执行案件信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="案号" prop="caseNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.caseNumber"-->
+<!--            placeholder="请输入案号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="被执行人" prop="debtor">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.debtor"-->
+<!--            placeholder="请输入被执行人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="执行标的" prop="executionTarget">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executionTarget"-->
+<!--            placeholder="请输入执行标的"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="未履行金额" prop="unfulfilledAmount">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.unfulfilledAmount"-->
+<!--            placeholder="请输入未履行金额"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="执行法院" prop="executingCourt">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.executingCourt"-->
+<!--            placeholder="请输入执行法院"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="终本日期" prop="finalDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.finalDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择终本日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="立案日期" prop="filingDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.filingDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择立案日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+    <el-table v-loading="loading" :data="informationList" :height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="被执行人" align="center" prop="debtor" :show-overflow-tooltip='true' />
+      <el-table-column label="执行标的" align="center" prop="executionTarget" :show-overflow-tooltip='true' />
+      <el-table-column label="未履行金额" align="center" prop="unfulfilledAmount" :show-overflow-tooltip='true' />
+      <el-table-column label="执行法院" align="center" prop="executingCourt" :show-overflow-tooltip='true' />
+      <el-table-column label="终本日期" align="center" prop="finalDate" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.finalDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="立案日期" align="center" prop="filingDate" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.filingDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改终结本次执行案件信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="案号" prop="caseNumber">
+          <el-input v-model="form.caseNumber" placeholder="请输入案号" />
+        </el-form-item>
+        <el-form-item label="被执行人" prop="debtor">
+          <el-input v-model="form.debtor" placeholder="请输入被执行人" />
+        </el-form-item>
+        <el-form-item label="执行标的" prop="executionTarget">
+          <el-input v-model="form.executionTarget" placeholder="请输入执行标的" />
+        </el-form-item>
+        <el-form-item label="未履行金额" prop="unfulfilledAmount">
+          <el-input v-model="form.unfulfilledAmount" placeholder="请输入未履行金额" />
+        </el-form-item>
+        <el-form-item label="执行法院" prop="executingCourt">
+          <el-input v-model="form.executingCourt" placeholder="请输入执行法院" />
+        </el-form-item>
+        <el-form-item label="终本日期" prop="finalDate">
+          <el-date-picker clearable
+                          v-model="form.finalDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择终本日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="立案日期" prop="filingDate">
+          <el-date-picker clearable
+                          v-model="form.filingDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择立案日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information5";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmTerminationCaseInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    caseNumber: null,
+    debtor: null,
+    executionTarget: null,
+    unfulfilledAmount: null,
+    executingCourt: null,
+    finalDate: null,
+    filingDate: null,
+    unifiedSocialCreditCode: '',
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询终结本次执行案件信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    caseNumber: null,
+    debtor: null,
+    executionTarget: null,
+    unfulfilledAmount: null,
+    executingCourt: null,
+    finalDate: null,
+    filingDate: null,
+    unifiedSocialCreditCode: '',
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加终结本次执行案件信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改终结本次执行案件信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除终结本次执行案件信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('/crmTerminationCaseInformation/exportData', {
+    ...queryParams.value
+  }, `终结本次执行案件信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 516 - 7
src/views/basicData/ManageAbility/BLInformation/index.vue

@@ -1,9 +1,518 @@
 <template>
-    <div>
-        营业执照信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="注册号" prop="registrationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationNumber"-->
+<!--            placeholder="请输入注册号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="登记类别" prop="registrationCategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationCategory"-->
+<!--            placeholder="请输入登记类别"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人/负责人姓名" prop="legalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentative"-->
+<!--            placeholder="请输入法定代表人/负责人姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人/负责人证件号码" prop="legalRepresentativeId">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentativeId"-->
+<!--            placeholder="请输入法定代表人/负责人证件号码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="联络员姓名" prop="contactName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.contactName"-->
+<!--            placeholder="请输入联络员姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="联络员联系电话" prop="contactPhone">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.contactPhone"-->
+<!--            placeholder="请输入联络员联系电话"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注册资本(万元)" prop="registeredCapital">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registeredCapital"-->
+<!--            placeholder="请输入注册资本(万元)"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实收资本(万元)" prop="paidInCapital">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.paidInCapital"-->
+<!--            placeholder="请输入实收资本(万元)"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业联系电话" prop="enterprisePhone">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterprisePhone"-->
+<!--            placeholder="请输入企业联系电话"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="成立日期" prop="establishmentDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.establishmentDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择成立日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="营业期限" prop="businessPeriod">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.businessPeriod"-->
+<!--            placeholder="请输入营业期限"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="登记机关" prop="registrationAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationAuthority"-->
+<!--            placeholder="请输入登记机关"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="邮政编号" prop="postalCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.postalCode"-->
+<!--            placeholder="请输入邮政编号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="监管单位" prop="supervisoryAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.supervisoryAuthority"-->
+<!--            placeholder="请输入监管单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行业代码" prop="industryCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.industryCode"-->
+<!--            placeholder="请输入行业代码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="核准时间" prop="approvalTime">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.approvalTime"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择核准时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注销时间" prop="cancellationTime">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.cancellationTime"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择注销时间">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="登记类别" align="center" prop="registrationCategory" :show-overflow-tooltip="true" />
+      <el-table-column label="企业类型" align="center" prop="enterpriseType" :show-overflow-tooltip="true" />
+      <el-table-column label="法定代表人/负责人姓名" align="center" prop="legalRepresentative" :show-overflow-tooltip="true" />
+      <el-table-column label="法定代表人/负责人证件号码" align="center" prop="legalRepresentativeId" :show-overflow-tooltip="true" />
+      <el-table-column label="联络员姓名" align="center" prop="contactName" :show-overflow-tooltip="true" />
+      <el-table-column label="联络员联系电话" align="center" prop="contactPhone" :show-overflow-tooltip="true" />
+      <el-table-column label="注册资本(万元)" align="center" prop="registeredCapital" :show-overflow-tooltip="true" />
+      <el-table-column label="实收资本(万元)" align="center" prop="paidInCapital" :show-overflow-tooltip="true" />
+      <el-table-column label="企业联系电话" align="center" prop="enterprisePhone" :show-overflow-tooltip="true" />
+      <el-table-column label="经营范围" align="center" prop="businessScope" :show-overflow-tooltip="true" />
+      <el-table-column label="成立日期" align="center" prop="establishmentDate" :show-overflow-tooltip="true" />
+      <el-table-column label="营业期限" align="center" prop="businessPeriod" :show-overflow-tooltip="true" />
+      <el-table-column label="登记机关" align="center" prop="registrationAuthority" :show-overflow-tooltip="true" />
+      <el-table-column label="邮政编号" align="center" prop="postalCode" :show-overflow-tooltip="true" />
+      <el-table-column label="住所" align="center" prop="address" :show-overflow-tooltip="true" />
+      <el-table-column label="监管单位" align="center" prop="supervisoryAuthority" :show-overflow-tooltip="true" />
+      <el-table-column label="状态" align="center" prop="status" :show-overflow-tooltip="true" />
+      <el-table-column label="行业代码" align="center" prop="industryCode" :show-overflow-tooltip="true" />
+      <el-table-column label="核准时间" align="center" prop="approvalTime" :show-overflow-tooltip="true" />
+      <el-table-column label="注销时间" align="center" prop="cancellationTime" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改营业执照信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information7";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmBusinessLicenseInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    registrationCategory: null,
+    enterpriseType: null,
+    legalRepresentative: null,
+    legalRepresentativeId: null,
+    contactName: null,
+    contactPhone: null,
+    registeredCapital: null,
+    paidInCapital: null,
+    enterprisePhone: null,
+    businessScope: null,
+    establishmentDate: null,
+    businessPeriod: null,
+    registrationAuthority: null,
+    postalCode: null,
+    address: null,
+    supervisoryAuthority: null,
+    status: null,
+    industryCode: null,
+    approvalTime: null,
+    cancellationTime: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询营业执照信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: null,
+    registrationCategory: null,
+    enterpriseType: null,
+    legalRepresentative: null,
+    legalRepresentativeId: null,
+    contactName: null,
+    contactPhone: null,
+    registeredCapital: null,
+    paidInCapital: null,
+    enterprisePhone: null,
+    businessScope: null,
+    establishmentDate: null,
+    businessPeriod: null,
+    registrationAuthority: null,
+    postalCode: null,
+    address: null,
+    supervisoryAuthority: null,
+    status: "0",
+    industryCode: null,
+    approvalTime: null,
+    cancellationTime: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加营业执照信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改营业执照信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除营业执照信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmBusinessLicenseInformation/exportData', {
+    ...queryParams.value
+  }, `营业执照信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 389 - 7
src/views/basicData/ManageAbility/BranchInformation/index.vue

@@ -1,9 +1,391 @@
 <template>
-    <div>
-        分支机构信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="总公司名称" prop="parentCompanyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.parentCompanyName"-->
+<!--            placeholder="请输入总公司名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构名称" prop="branchName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.branchName"-->
+<!--            placeholder="请输入分支机构名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="分支机构法定代表人" prop="legalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentative"-->
+<!--            placeholder="请输入分支机构法定代表人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构成立日期" prop="establishmentDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.establishmentDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择分支机构成立日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构住所" prop="address">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.address"-->
+<!--            placeholder="请输入分支机构住所"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构登记机关" prop="registrationAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationAuthority"-->
+<!--            placeholder="请输入分支机构登记机关"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="总公司名称" align="center" prop="parentCompanyName" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构名称" align="center" prop="branchName" :show-overflow-tooltip="true" />
+      <el-table-column label="总公司统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="分支机构名称" align="center" prop="name" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构统一社会代码" align="center" prop="code" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构法定代表人/负责人" align="center" prop="legalRepresentative" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构成立日期" align="center" prop="establishmentDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.establishmentDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="分支机构住所" align="center" prop="address" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构登记状态" align="center" prop="registrationStatus" :show-overflow-tooltip="true" />
+      <el-table-column label="分支机构登记机关" align="center" prop="registrationAuthority" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information10";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmBranchOfficeInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    parentCompanyName: null,
+    branchName: null,
+    unifiedSocialCreditCode: '',
+    name: null,
+    code: null,
+    legalRepresentative: null,
+    establishmentDate: null,
+    address: null,
+    registrationStatus: null,
+    registrationAuthority: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询分支机构信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    parentCompanyName: null,
+    branchName: null,
+    unifiedSocialCreditCode: '',
+    name: null,
+    code: null,
+    legalRepresentative: null,
+    establishmentDate: null,
+    address: null,
+    registrationStatus: "0",
+    registrationAuthority: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加分支机构信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改分支机构信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除分支机构信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmBranchOfficeInformation/exportData', {
+    ...queryParams.value
+  }, `分支机构信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 393 - 7
src/views/basicData/ManageAbility/CRInformation/index.vue

@@ -1,9 +1,395 @@
 <template>
-    <div>
-        海关注册信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="companyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.companyName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="海关注册编码(企业注册号)" prop="customsRegistrationCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.customsRegistrationCode"-->
+<!--            placeholder="请输入海关注册编码(企业注册号)"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="经营类别" prop="businessCategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.businessCategory"-->
+<!--            placeholder="请输入经营类别"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="海关注销标志" prop="customsCancellationFlag">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.customsCancellationFlag"-->
+<!--            placeholder="请输入海关注销标志"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="经济区划" prop="economicZone">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.economicZone"-->
+<!--            placeholder="请输入经济区划"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="companyName" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="海关注册编码(企业注册号)" align="center" prop="customsRegistrationCode" :show-overflow-tooltip="true" />
+      <el-table-column label="经营类别" align="center" prop="businessCategory" :show-overflow-tooltip="true" />
+      <el-table-column label="海关注销标志" align="center" prop="customsCancellationFlag" :show-overflow-tooltip="true" />
+      <el-table-column label="经济区划" align="center" prop="economicZone" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改海关注册信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="companyName">
+          <el-input v-model="form.companyName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="海关注册编码(企业注册号)" prop="customsRegistrationCode">
+          <el-input v-model="form.customsRegistrationCode" placeholder="请输入海关注册编码(企业注册号)" />
+        </el-form-item>
+        <el-form-item label="经营类别" prop="businessCategory">
+          <el-input v-model="form.businessCategory" placeholder="请输入经营类别" />
+        </el-form-item>
+        <el-form-item label="海关注销标志" prop="customsCancellationFlag">
+          <el-input v-model="form.customsCancellationFlag" placeholder="请输入海关注销标志" />
+        </el-form-item>
+        <el-form-item label="经济区划" prop="economicZone">
+          <el-input v-model="form.economicZone" placeholder="请输入经济区划" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information12";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmCustomsRegistrationInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    customsRegistrationCode: null,
+    businessCategory: null,
+    customsCancellationFlag: null,
+    economicZone: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询海关注册信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    customsRegistrationCode: null,
+    businessCategory: null,
+    customsCancellationFlag: null,
+    economicZone: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加海关注册信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改海关注册信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除海关注册信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmCustomsRegistrationInformation/exportData', {
+    ...queryParams.value
+  }, `海关注册信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 400 - 7
src/views/basicData/ManageAbility/ChangeInformation/index.vue

@@ -1,9 +1,402 @@
 <template>
-    <div>
-        变更信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="companyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.companyName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="变更日期" prop="changeDate">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.changeDate"-->
+<!--            placeholder="请输入变更日期"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="变更项目" prop="changeItem">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.changeItem"-->
+<!--            placeholder="请输入变更项目"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="变更前" prop="beforeChange">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.beforeChange"-->
+<!--            placeholder="请输入变更前"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="变更后" prop="afterChange">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.afterChange"-->
+<!--            placeholder="请输入变更后"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="companyName" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="变更日期" align="center" prop="changeDate" :show-overflow-tooltip='true' />
+      <el-table-column label="变更项目" align="center" prop="changeItem" :show-overflow-tooltip='true' />
+      <el-table-column label="变更前" align="center" prop="beforeChange" :show-overflow-tooltip='true' />
+      <el-table-column label="变更后" align="center" prop="afterChange" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改变更记录信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="companyName">
+          <el-input v-model="form.companyName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="变更日期" prop="changeDate">
+          <el-input v-model="form.changeDate" placeholder="请输入变更日期" />
+        </el-form-item>
+        <el-form-item label="变更项目" prop="changeItem">
+          <el-input v-model="form.changeItem" placeholder="请输入变更项目" />
+        </el-form-item>
+        <el-form-item label="变更前" prop="beforeChange">
+          <el-input v-model="form.beforeChange" placeholder="请输入变更前" />
+        </el-form-item>
+        <el-form-item label="变更后" prop="afterChange">
+          <el-input v-model="form.afterChange" placeholder="请输入变更后" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import {
+  listInformation,
+  getInformation,
+  delInformation,
+  addInformation,
+  updateInformation
+} from "@/api/basicData/information13";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmChangeRecordInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    changeDate: null,
+    changeItem: null,
+    beforeChange: null,
+    afterChange: null,
+  },
+  rules: {}
+});
+
+const {queryParams, form, rules} = toRefs(data);
+
+/** 查询变更记录信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    changeDate: null,
+    changeItem: null,
+    beforeChange: null,
+    afterChange: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加变更记录信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改变更记录信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除变更记录信息编号为"' + ids + '"的数据项?').then(function () {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {
+  // });
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmChangeRecordInformation/exportData', {
+    ...queryParams.value
+  }, `变更记录信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 460 - 7
src/views/basicData/ManageAbility/EPInformation/index.vue

@@ -1,9 +1,462 @@
 <template>
-    <div>
-        企业专利信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="申请" prop="application">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.application"-->
+<!--            placeholder="请输入申请"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="申请日期" prop="applicationDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.applicationDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择申请日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="专利名称" prop="patentName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.patentName"-->
+<!--            placeholder="请输入专利名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="申请号" prop="applicationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.applicationNumber"-->
+<!--            placeholder="请输入申请号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="公开" prop="publicationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.publicationNumber"-->
+<!--            placeholder="请输入公开"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="公开" prop="publicationDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.publicationDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择公开">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="发明人" prop="inventor">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.inventor"-->
+<!--            placeholder="请输入发明人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="申请" prop="applicantAddress">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.applicantAddress"-->
+<!--            placeholder="请输入申请"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="申请" align="center" prop="application" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="申请日期" align="center" prop="applicationDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.applicationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="专利名称" align="center" prop="patentName" :show-overflow-tooltip="true" />
+      <el-table-column label="专利类型" align="center" prop="patentType" :show-overflow-tooltip="true" />
+      <el-table-column label="专利状态" align="center" prop="patentStatus" :show-overflow-tooltip="true" />
+      <el-table-column label="申请号" align="center" prop="applicationNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="公开" align="center" prop="publicationNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="公开" align="center" prop="publicationDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.publicationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="发明人" align="center" prop="inventor" :show-overflow-tooltip="true" />
+      <el-table-column label="申请" align="center" prop="applicantAddress" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改专利信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="申请" prop="application">
+          <el-input v-model="form.application" placeholder="请输入申请" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="申请日期" prop="applicationDate">
+          <el-date-picker clearable
+                          v-model="form.applicationDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择申请日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="专利名称" prop="patentName">
+          <el-input v-model="form.patentName" placeholder="请输入专利名称" />
+        </el-form-item>
+        <el-form-item label="申请号" prop="applicationNumber">
+          <el-input v-model="form.applicationNumber" placeholder="请输入申请号" />
+        </el-form-item>
+        <el-form-item label="公开" prop="publicationNumber">
+          <el-input v-model="form.publicationNumber" placeholder="请输入公开" />
+        </el-form-item>
+        <el-form-item label="公开" prop="publicationDate">
+          <el-date-picker clearable
+                          v-model="form.publicationDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择公开">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="发明人" prop="inventor">
+          <el-input v-model="form.inventor" placeholder="请输入发明人" />
+        </el-form-item>
+        <el-form-item label="申请" prop="applicantAddress">
+          <el-input v-model="form.applicantAddress" placeholder="请输入申请" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information17";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmPatentInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    application: null,
+    unifiedSocialCreditCode: '',
+    applicationDate: null,
+    patentName: null,
+    patentType: null,
+    patentStatus: null,
+    applicationNumber: null,
+    publicationNumber: null,
+    publicationDate: null,
+    inventor: null,
+    applicantAddress: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询专利信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    application: null,
+    unifiedSocialCreditCode: '',
+    applicationDate: null,
+    patentName: null,
+    patentType: null,
+    patentStatus: "0",
+    applicationNumber: null,
+    publicationNumber: null,
+    publicationDate: null,
+    inventor: null,
+    applicantAddress: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加专利信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改专利信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除专利信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmPatentInformation/exportData', {
+    ...queryParams.value
+  }, `专利信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 484 - 7
src/views/basicData/ManageAbility/ETInformation/index.vue

@@ -1,9 +1,486 @@
 <template>
-    <div>
-        企业商标信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="申请人名称" prop="applicantName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.applicantName"-->
+<!--            placeholder="请输入申请人名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="申请日期" prop="applicationDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.applicationDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择申请日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="商标名称" prop="trademarkName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.trademarkName"-->
+<!--            placeholder="请输入商标名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注册号" prop="registrationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationNumber"-->
+<!--            placeholder="请输入注册号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="国际分类" prop="internationalClassification">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.internationalClassification"-->
+<!--            placeholder="请输入国际分类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="注册公告日期" prop="registrationPublicationDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.registrationPublicationDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择注册公告日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="专用期开始日期" prop="exclusivePeriodStartDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.exclusivePeriodStartDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择专用期开始日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="专用期结束日期" prop="exclusivePeriodEndDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.exclusivePeriodEndDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择专用期结束日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="申请人名称" align="center" prop="applicantName" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="申请日期" align="center" prop="applicationDate" width="180" :show-overflow-tooltip="true" >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.applicationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="商标图片" align="center" prop="trademarkImage" width="100" :show-overflow-tooltip="true" >
+        <template #default="scope">
+          <image-preview :src="scope.row.trademarkImage" :width="50" :height="50"/>
+        </template>
+      </el-table-column>
+      <el-table-column label="商标名称" align="center" prop="trademarkName" :show-overflow-tooltip="true" />
+      <el-table-column label="注册号" align="center" prop="registrationNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="国际分类" align="center" prop="internationalClassification" :show-overflow-tooltip="true" />
+      <el-table-column label="商标状态" align="center" prop="trademarkStatus" :show-overflow-tooltip="true" />
+      <el-table-column label="注册公告日期" align="center" prop="registrationPublicationDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.registrationPublicationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="专用期开始日期" align="center" prop="exclusivePeriodStartDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.exclusivePeriodStartDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="专用期结束日期" align="center" prop="exclusivePeriodEndDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.exclusivePeriodEndDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改企业商标信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="申请人名称" prop="applicantName">
+          <el-input v-model="form.applicantName" placeholder="请输入申请人名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="申请日期" prop="applicationDate">
+          <el-date-picker clearable
+                          v-model="form.applicationDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择申请日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="商标图片">
+          <image-upload v-model="form.trademarkImage"/>
+        </el-form-item>
+        <el-form-item label="商标名称" prop="trademarkName">
+          <el-input v-model="form.trademarkName" placeholder="请输入商标名称" />
+        </el-form-item>
+        <el-form-item label="注册号" prop="registrationNumber">
+          <el-input v-model="form.registrationNumber" placeholder="请输入注册号" />
+        </el-form-item>
+        <el-form-item label="国际分类" prop="internationalClassification">
+          <el-input v-model="form.internationalClassification" placeholder="请输入国际分类" />
+        </el-form-item>
+        <el-form-item label="注册公告日期" prop="registrationPublicationDate">
+          <el-date-picker clearable
+                          v-model="form.registrationPublicationDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择注册公告日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="专用期开始日期" prop="exclusivePeriodStartDate">
+          <el-date-picker clearable
+                          v-model="form.exclusivePeriodStartDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择专用期开始日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="专用期结束日期" prop="exclusivePeriodEndDate">
+          <el-date-picker clearable
+                          v-model="form.exclusivePeriodEndDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择专用期结束日期">
+          </el-date-picker>
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information16";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEnterpriseTrademarkInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    applicantName: null,
+    unifiedSocialCreditCode: '',
+    applicationDate: null,
+    trademarkImage: null,
+    trademarkName: null,
+    registrationNumber: null,
+    internationalClassification: null,
+    trademarkStatus: null,
+    registrationPublicationDate: null,
+    exclusivePeriodStartDate: null,
+    exclusivePeriodEndDate: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询企业商标信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    applicantName: null,
+    unifiedSocialCreditCode: '',
+    applicationDate: null,
+    trademarkImage: null,
+    trademarkName: null,
+    registrationNumber: null,
+    internationalClassification: null,
+    trademarkStatus: "0",
+    registrationPublicationDate: null,
+    exclusivePeriodStartDate: null,
+    exclusivePeriodEndDate: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加企业商标信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改企业商标信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除企业商标信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnterpriseTrademarkInformation/exportData', {
+    ...queryParams.value
+  }, `企业商标信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 351 - 7
src/views/basicData/ManageAbility/ITInformation/index.vue

@@ -1,9 +1,353 @@
 <template>
-    <div>
-        所属行业类型信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行业代码" prop="industryCode">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.industryCode"-->
+<!--            placeholder="请输入行业代码"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+<!--          <el-col :span="1.5">-->
+<!--            <el-button-->
+<!--                type="primary"-->
+<!--                plain-->
+<!--                icon="Plus"-->
+<!--                @click="handleAdd"-->
+<!--                v-hasPermi="['basicData:type:add']"-->
+<!--            >新增</el-button>-->
+<!--          </el-col>-->
+<!--          <el-col :span="1.5">-->
+<!--            <el-button-->
+<!--                type="success"-->
+<!--                plain-->
+<!--                icon="Edit"-->
+<!--                :disabled="single"-->
+<!--                @click="handleUpdate"-->
+<!--                v-hasPermi="['basicData:type:edit']"-->
+<!--            >修改</el-button>-->
+<!--          </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:type:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!typeList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:type:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="typeList" :height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' />
+      <el-table-column label="行业代码" align="center" prop="industryCode" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:type:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:type:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改所属行业类型对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="typeRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="行业代码" prop="industryCode">
+          <el-input v-model="form.industryCode" placeholder="请输入行业代码" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Type">
+import { listType, getType, delType, addType, updateType } from "@/api/basicData/type";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const typeList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmIndustryType/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listType(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    industryCode: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询所属行业类型列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listType(toServerObj).then(response => {
+    typeList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    industryCode: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("typeRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加所属行业类型";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getType(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改所属行业类型";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["typeRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateType(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addType(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delType();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除所属行业类型编号为"' + ids + '"的数据项?').then(function() {
+  //   return delType(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmIndustryType/exportData', {
+    ...queryParams.value
+  }, `所属行业类型_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 352 - 7
src/views/basicData/ManageAbility/LOEHighTech/index.vue

@@ -1,9 +1,354 @@
 <template>
-    <div>
-        技术企业名单
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="companyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.companyName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="信用代码" prop="creditCode">
+        <el-input
+            v-model="queryParams.creditCode"
+            placeholder="请输入信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="高企证号" prop="highTechCertNo">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.highTechCertNo"-->
+<!--            placeholder="请输入高企证号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:enterprise:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:enterprise:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:enterprise:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!enterpriseList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:enterprise:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="enterpriseList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="companyName" :show-overflow-tooltip="true" />
+      <el-table-column label="信用代码" align="center" prop="creditCode" width="200" />
+      <el-table-column label="高企证号" align="center" prop="highTechCertNo" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:enterprise:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:enterprise:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改认证通过高新技术企业名单对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="enterpriseRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="companyName">
+          <el-input v-model="form.companyName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="信用代码" prop="creditCode">
+          <el-input v-model="form.creditCode" placeholder="请输入信用代码" />
+        </el-form-item>
+        <el-form-item label="高企证号" prop="highTechCertNo">
+          <el-input v-model="form.highTechCertNo" placeholder="请输入高企证号" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Enterprise">
+import { listEnterprise, getEnterprise, delEnterprise, addEnterprise, updateEnterprise } from "@/api/basicData/enterprise";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const enterpriseList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmCertifiedTechnologyEnterprise/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('credit_code', queryParams.value.creditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listEnterprise(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    creditCode: '',
+    highTechCertNo: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询认证通过高新技术企业名单列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('credit_code', queryParams.value.creditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listEnterprise(toServerObj).then(response => {
+    enterpriseList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    creditCode: '',
+    highTechCertNo: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("enterpriseRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加认证通过高新技术企业名单";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getEnterprise(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改认证通过高新技术企业名单";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["enterpriseRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateEnterprise(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addEnterprise(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delEnterprise();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除认证通过高新技术企业名单编号为"' + ids + '"的数据项?').then(function() {
+  //   return delEnterprise(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmCertifiedTechnologyEnterprise/exportData', {
+    ...queryParams.value
+  }, `认证通过高新技术企业名单_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 381 - 7
src/views/basicData/ManageAbility/ROEPInformation/index.vue

@@ -1,9 +1,383 @@
 <template>
-    <div>
-        股权出质登记信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="总公司名称" prop="parentCompanyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.parentCompanyName"-->
+<!--            placeholder="请输入总公司名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构名称" prop="branchName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.branchName"-->
+<!--            placeholder="请输入分支机构名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="分支机构法定代表人" prop="legalRepresentative">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.legalRepresentative"-->
+<!--            placeholder="请输入分支机构法定代表人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构成立日期" prop="establishmentDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.establishmentDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择分支机构成立日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构住所" prop="address">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.address"-->
+<!--            placeholder="请输入分支机构住所"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分支机构登记机关" prop="registrationAuthority">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationAuthority"-->
+<!--            placeholder="请输入分支机构登记机关"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="登记编号" align="center" prop="registrationNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="出质人" align="center" prop="pledgor" :show-overflow-tooltip='true' />
+      <el-table-column label="出质股权数额" align="center" prop="pledgedEquityAmount" :show-overflow-tooltip='true' />
+      <el-table-column label="股权出质设立登记日期" align="center" prop="pledgeRegistrationDate" :show-overflow-tooltip='true' />
+      <el-table-column label="质权人" align="center" prop="pledgee" :show-overflow-tooltip='true' />
+      <el-table-column label="状态" align="center" prop="status" :show-overflow-tooltip='true' />
+      <el-table-column label="企业名称" align="center" prop="companyName" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改分支机构信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information11";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEquityPledgeInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    registrationNumber: null,
+    pledgor: null,
+    pledgedEquityAmount: null,
+    pledgeRegistrationDate: null,
+    pledgee: null,
+    status: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询分支机构信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    registrationNumber: null,
+    pledgor: null,
+    pledgedEquityAmount: null,
+    pledgeRegistrationDate: null,
+    pledgee: null,
+    status: "0",
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加分支机构信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改分支机构信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除分支机构信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEquityPledgeInformation/exportData', {
+    ...queryParams.value
+  }, `股权出资信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 430 - 7
src/views/basicData/ManageAbility/SACCInformation/index.vue

@@ -1,9 +1,432 @@
 <template>
-    <div>
-        股东及出资信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="companyName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.companyName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="股东" prop="shareholderName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.shareholderName"-->
+<!--            placeholder="请输入股东"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="持股比例" prop="shareholdingRatio">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.shareholdingRatio"-->
+<!--            placeholder="请输入持股比例"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="最终受益股份" prop="ultimateBeneficialShareholding">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.ultimateBeneficialShareholding"-->
+<!--            placeholder="请输入最终受益股份"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="认缴出资额" prop="subscribedContributions">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.subscribedContributions"-->
+<!--            placeholder="请输入认缴出资额"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="认缴出资日期" prop="subscribedContributionsDate">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.subscribedContributionsDate"-->
+<!--            placeholder="请输入认缴出资日期"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实缴出资方式" prop="actualPaymentMethod">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.actualPaymentMethod"-->
+<!--            placeholder="请输入实缴出资方式"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                @click="handleExport"
+                :disabled="!informationList.length"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="companyName" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="股东" align="center" prop="shareholderName" :show-overflow-tooltip='true' />
+      <el-table-column label="持股比例" align="center" prop="shareholdingRatio" :show-overflow-tooltip='true' />
+      <el-table-column label="最终受益股份" align="center" prop="ultimateBeneficialShareholding" :show-overflow-tooltip='true' />
+      <el-table-column label="认缴出资额" align="center" prop="subscribedContributions" :show-overflow-tooltip='true' />
+      <el-table-column label="认缴出资日期" align="center" prop="subscribedContributionsDate" :show-overflow-tooltip='true' />
+      <el-table-column label="股东类型" align="center" prop="shareholderType" :show-overflow-tooltip='true' />
+      <el-table-column label="实缴出资方式" align="center" prop="actualPaymentMethod" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改股东信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="companyName">
+          <el-input v-model="form.companyName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="股东" prop="shareholderName">
+          <el-input v-model="form.shareholderName" placeholder="请输入股东" />
+        </el-form-item>
+        <el-form-item label="持股比例" prop="shareholdingRatio">
+          <el-input v-model="form.shareholdingRatio" placeholder="请输入持股比例" />
+        </el-form-item>
+        <el-form-item label="最终受益股份" prop="ultimateBeneficialShareholding">
+          <el-input v-model="form.ultimateBeneficialShareholding" placeholder="请输入最终受益股份" />
+        </el-form-item>
+        <el-form-item label="认缴出资额" prop="subscribedContributions">
+          <el-input v-model="form.subscribedContributions" placeholder="请输入认缴出资额" />
+        </el-form-item>
+        <el-form-item label="认缴出资日期" prop="subscribedContributionsDate">
+          <el-input v-model="form.subscribedContributionsDate" placeholder="请输入认缴出资日期" />
+        </el-form-item>
+        <el-form-item label="实缴出资方式" prop="actualPaymentMethod">
+          <el-input v-model="form.actualPaymentMethod" placeholder="请输入实缴出资方式" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import {
+  listInformation,
+  getInformation,
+  delInformation,
+  addInformation,
+  updateInformation
+} from "@/api/basicData/information14";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmShareholderInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    shareholderName: null,
+    shareholdingRatio: null,
+    ultimateBeneficialShareholding: null,
+    subscribedContributions: null,
+    subscribedContributionsDate: null,
+    shareholderType: null,
+    actualPaymentMethod: null,
+  },
+  rules: {}
+});
+
+const {queryParams, form, rules} = toRefs(data);
+
+/** 查询股东信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    shareholderName: null,
+    shareholdingRatio: null,
+    ultimateBeneficialShareholding: null,
+    subscribedContributions: null,
+    subscribedContributionsDate: null,
+    shareholderType: null,
+    actualPaymentMethod: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加股东信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改股东信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除股东信息编号为"' + ids + '"的数据项?').then(function () {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {
+  // });
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmShareholderInformation/exportData', {
+    ...queryParams.value
+  }, `股东信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 403 - 7
src/views/basicData/ManageAbility/SCInformation/index.vue

@@ -1,9 +1,405 @@
 <template>
-    <div>
-        软件著作权信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="软件著作权人" prop="copyrightOwner">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.copyrightOwner"-->
+<!--            placeholder="请输入软件著作权人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="登记批准日期" prop="registrationApprovalDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.registrationApprovalDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择登记批准日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="软件全称" prop="fullSoftwareName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.fullSoftwareName"-->
+<!--            placeholder="请输入软件全称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="软件简称" prop="softwareAbbreviation">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.softwareAbbreviation"-->
+<!--            placeholder="请输入软件简称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="登记号" prop="registrationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.registrationNumber"-->
+<!--            placeholder="请输入登记号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="版本号" prop="versionNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.versionNumber"-->
+<!--            placeholder="请输入版本号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="首次发表日期" prop="firstPublishDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.firstPublishDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择首次发表日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="分类号" prop="classificationNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.classificationNumber"-->
+<!--            placeholder="请输入分类号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行业分类" prop="industryClassification">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.industryClassification"-->
+<!--            placeholder="请输入行业分类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="软件著作权人" align="center" prop="copyrightOwner" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="登记批准日期" align="center" prop="registrationApprovalDate" :show-overflow-tooltip="true" />
+      <el-table-column label="软件全称" align="center" prop="fullSoftwareName" :show-overflow-tooltip="true" />
+      <el-table-column label="软件简称" align="center" prop="softwareAbbreviation" :show-overflow-tooltip="true" />
+      <el-table-column label="登记号" align="center" prop="registrationNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="版本号" align="center" prop="versionNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="首次发表日期" align="center" prop="firstPublishDate" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改软件著作权信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information15";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmSoftwareCopyrightInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    copyrightOwner: null,
+    unifiedSocialCreditCode: '',
+    registrationApprovalDate: null,
+    fullSoftwareName: null,
+    softwareAbbreviation: null,
+    registrationNumber: null,
+    versionNumber: null,
+    firstPublishDate: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询软件著作权信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    copyrightOwner: null,
+    unifiedSocialCreditCode: '',
+    registrationApprovalDate: null,
+    fullSoftwareName: null,
+    softwareAbbreviation: null,
+    registrationNumber: null,
+    versionNumber: null,
+    firstPublishDate: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加软件著作权信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改软件著作权信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除软件著作权信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmSoftwareCopyrightInformation/exportData', {
+    ...queryParams.value
+  }, `软件著作权信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 366 - 7
src/views/basicData/ManageAbility/TOLSEnterprise/index.vue

@@ -1,9 +1,368 @@
 <template>
-    <div>
-科技型中小企业名单
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="批次" prop="batch">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.batch"-->
+<!--            placeholder="请输入批次"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="入库编号" prop="warehouseNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.warehouseNumber"-->
+<!--            placeholder="请输入入库编号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:enterprises:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:enterprises:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:enterprises:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!enterprisesList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:enterprises:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="enterprisesList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="批次" align="center" prop="batch" :show-overflow-tooltip="true" />
+      <el-table-column label="入库编号" align="center" prop="warehouseNumber" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:enterprises:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:enterprises:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改科技型中小企业名单对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="enterprisesRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="批次" prop="batch">
+          <el-input v-model="form.batch" placeholder="请输入批次" />
+        </el-form-item>
+        <el-form-item label="入库编号" prop="warehouseNumber">
+          <el-input v-model="form.warehouseNumber" placeholder="请输入入库编号" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Enterprises">
+import { listEnterprises, getEnterprises, delEnterprises, addEnterprises, updateEnterprises } from "@/api/basicData/enterprises";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const enterprisesList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmTechnologyEnterprises/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listEnterprises(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    batch: null,
+    warehouseNumber: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询科技型中小企业名单列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listEnterprises(toServerObj).then(response => {
+    enterprisesList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    batch: null,
+    warehouseNumber: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("enterprisesRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加科技型中小企业名单";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getEnterprises(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改科技型中小企业名单";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["enterprisesRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateEnterprises(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addEnterprises(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delEnterprises();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除科技型中小企业名单编号为"' + ids + '"的数据项?').then(function() {
+  //   return delEnterprises(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmTechnologyEnterprises/exportData', {
+    ...queryParams.value
+  }, `科技型中小企业名单_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 387 - 7
src/views/basicData/ManageAbility/TRADInformation/index.vue

@@ -1,9 +1,389 @@
 <template>
-    <div>
-        科技研发信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="是否属于国家级" prop="isNationalLevel">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.isNationalLevel"-->
+<!--            placeholder="请输入是否属于国家级"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实验室建设" prop="labConstruction">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.labConstruction"-->
+<!--            placeholder="请输入实验室建设"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="政府资金支持" prop="governmentFundingSupport">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.governmentFundingSupport"-->
+<!--            placeholder="请输入政府资金支持"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="参与标准制定" prop="participationInStandards">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.participationInStandards"-->
+<!--            placeholder="请输入参与标准制定"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="人才认证" prop="talentCertification">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.talentCertification"-->
+<!--            placeholder="请输入人才认证"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="其他" prop="otherRelatedActivities">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.otherRelatedActivities"-->
+<!--            placeholder="请输入其他"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:summary:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:summary:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:summary:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                @click="handleExport"
+                :disabled="!summaryList.length"
+                v-hasPermi="['basicData:summary:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="summaryList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="是否属于国家级" align="center" prop="isNationalLevel" :show-overflow-tooltip="true" />
+      <el-table-column label="实验室建设" align="center" prop="labConstruction" :show-overflow-tooltip="true" />
+      <el-table-column label="政府资金支持" align="center" prop="governmentFundingSupport" :show-overflow-tooltip="true" />
+      <el-table-column label="参与标准制定" align="center" prop="participationInStandards" :show-overflow-tooltip="true" />
+      <el-table-column label="人才认证" align="center" prop="talentCertification" :show-overflow-tooltip="true" />
+      <el-table-column label="其他" align="center" prop="otherRelatedActivities" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:summary:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:summary:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改企业科技研发信息汇总对话框 -->
+  </div>
+</template>
+
+<script setup name="Summary">
+import { listSummary, getSummary, delSummary, addSummary, updateSummary } from "@/api/basicData/summary";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const summaryList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEnterpriseTechnologyRndSummary/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSummary(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    isNationalLevel: null,
+    labConstruction: null,
+    governmentFundingSupport: null,
+    participationInStandards: null,
+    talentCertification: null,
+    otherRelatedActivities: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询企业科技研发信息汇总列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSummary(toServerObj).then(response => {
+    summaryList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    isNationalLevel: null,
+    labConstruction: null,
+    governmentFundingSupport: null,
+    participationInStandards: null,
+    talentCertification: null,
+    otherRelatedActivities: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("summaryRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加企业科技研发信息汇总";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getSummary(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改企业科技研发信息汇总";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["summaryRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateSummary(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addSummary(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delSummary();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除企业科技研发信息汇总编号为"' + ids + '"的数据项?').then(function() {
+  //   return delSummary(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnterpriseTechnologyRndSummary/exportData', {
+    ...queryParams.value
+  }, `企业科技研发信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 579 - 7
src/views/basicData/OpeCapability/EBInformation/index.vue

@@ -1,9 +1,581 @@
 <template>
-    <div>
-        电费信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="电网户号" prop="gridAccountNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.gridAccountNumber"-->
+<!--            placeholder="请输入电网户号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="1月" prop="january">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.january"-->
+<!--            placeholder="请输入1月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="2月" prop="february">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.february"-->
+<!--            placeholder="请输入2月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="3月" prop="march">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.march"-->
+<!--            placeholder="请输入3月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="4月" prop="april">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.april"-->
+<!--            placeholder="请输入4月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="5月" prop="may">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.may"-->
+<!--            placeholder="请输入5月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="6月" prop="june">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.june"-->
+<!--            placeholder="请输入6月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="7月" prop="july">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.july"-->
+<!--            placeholder="请输入7月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="8月" prop="august">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.august"-->
+<!--            placeholder="请输入8月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="9月" prop="september">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.september"-->
+<!--            placeholder="请输入9月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="10月" prop="october">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.october"-->
+<!--            placeholder="请输入10月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="11月" prop="november">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.november"-->
+<!--            placeholder="请输入11月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="12月" prop="december">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.december"-->
+<!--            placeholder="请输入12月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="次年1月" prop="nextYearJanuary">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.nextYearJanuary"-->
+<!--            placeholder="请输入次年1月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="近3个月月均用电量" prop="recent3MonthsAvgConsumption">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.recent3MonthsAvgConsumption"-->
+<!--            placeholder="请输入近3个月月均用电量"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="近6个月月均用电量" prop="recent6MonthsAvgConsumption">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.recent6MonthsAvgConsumption"-->
+<!--            placeholder="请输入近6个月月均用电量"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="近一年月均用电量" prop="recent1YearAvgConsumption">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.recent1YearAvgConsumption"-->
+<!--            placeholder="请输入近一年月均用电量"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:info:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:info:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:info:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!infoList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:info:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="infoList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="电网户号" align="center" prop="gridAccountNumber" :show-overflow-tooltip="true" />
+      <el-table-column label="1月" align="center" prop="january" :show-overflow-tooltip="true" />
+      <el-table-column label="2月" align="center" prop="february" :show-overflow-tooltip="true" />
+      <el-table-column label="3月" align="center" prop="march" :show-overflow-tooltip="true" />
+      <el-table-column label="4月" align="center" prop="april" :show-overflow-tooltip="true" />
+      <el-table-column label="5月" align="center" prop="may" :show-overflow-tooltip="true" />
+      <el-table-column label="6月" align="center" prop="june" :show-overflow-tooltip="true" />
+      <el-table-column label="7月" align="center" prop="july" :show-overflow-tooltip="true" />
+      <el-table-column label="8月" align="center" prop="august" :show-overflow-tooltip="true" />
+      <el-table-column label="9月" align="center" prop="september" :show-overflow-tooltip="true" />
+      <el-table-column label="10月" align="center" prop="october" :show-overflow-tooltip="true" />
+      <el-table-column label="11月" align="center" prop="november" :show-overflow-tooltip="true" />
+      <el-table-column label="12月" align="center" prop="december" :show-overflow-tooltip="true" />
+      <el-table-column label="次年1月" align="center" prop="nextYearJanuary" :show-overflow-tooltip="true" />
+      <el-table-column label="近3个月月均用电量" align="center" prop="recent3MonthsAvgConsumption" :show-overflow-tooltip="true" />
+      <el-table-column label="近6个月月均用电量" align="center" prop="recent6MonthsAvgConsumption" :show-overflow-tooltip="true" />
+      <el-table-column label="近一年月均用电量" align="center" prop="recent1YearAvgConsumption" :show-overflow-tooltip="true" />
+      <el-table-column label="当前是否欠费" align="center" prop="arrearsStatus" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改企业电费信息汇总对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="infoRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="电网户号" prop="gridAccountNumber">
+          <el-input v-model="form.gridAccountNumber" placeholder="请输入电网户号" />
+        </el-form-item>
+        <el-form-item label="1月" prop="january">
+          <el-input v-model="form.january" placeholder="请输入1月" />
+        </el-form-item>
+        <el-form-item label="2月" prop="february">
+          <el-input v-model="form.february" placeholder="请输入2月" />
+        </el-form-item>
+        <el-form-item label="3月" prop="march">
+          <el-input v-model="form.march" placeholder="请输入3月" />
+        </el-form-item>
+        <el-form-item label="4月" prop="april">
+          <el-input v-model="form.april" placeholder="请输入4月" />
+        </el-form-item>
+        <el-form-item label="5月" prop="may">
+          <el-input v-model="form.may" placeholder="请输入5月" />
+        </el-form-item>
+        <el-form-item label="6月" prop="june">
+          <el-input v-model="form.june" placeholder="请输入6月" />
+        </el-form-item>
+        <el-form-item label="7月" prop="july">
+          <el-input v-model="form.july" placeholder="请输入7月" />
+        </el-form-item>
+        <el-form-item label="8月" prop="august">
+          <el-input v-model="form.august" placeholder="请输入8月" />
+        </el-form-item>
+        <el-form-item label="9月" prop="september">
+          <el-input v-model="form.september" placeholder="请输入9月" />
+        </el-form-item>
+        <el-form-item label="10月" prop="october">
+          <el-input v-model="form.october" placeholder="请输入10月" />
+        </el-form-item>
+        <el-form-item label="11月" prop="november">
+          <el-input v-model="form.november" placeholder="请输入11月" />
+        </el-form-item>
+        <el-form-item label="12月" prop="december">
+          <el-input v-model="form.december" placeholder="请输入12月" />
+        </el-form-item>
+        <el-form-item label="次年1月" prop="nextYearJanuary">
+          <el-input v-model="form.nextYearJanuary" placeholder="请输入次年1月" />
+        </el-form-item>
+        <el-form-item label="近3个月月均用电量" prop="recent3MonthsAvgConsumption">
+          <el-input v-model="form.recent3MonthsAvgConsumption" placeholder="请输入近3个月月均用电量" />
+        </el-form-item>
+        <el-form-item label="近6个月月均用电量" prop="recent6MonthsAvgConsumption">
+          <el-input v-model="form.recent6MonthsAvgConsumption" placeholder="请输入近6个月月均用电量" />
+        </el-form-item>
+        <el-form-item label="近一年月均用电量" prop="recent1YearAvgConsumption">
+          <el-input v-model="form.recent1YearAvgConsumption" placeholder="请输入近一年月均用电量" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Info">
+import { listInfo, getInfo, delInfo, addInfo, updateInfo } from "@/api/basicData/info7";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const infoList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEnterpriseElectricityFeeInfo/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    gridAccountNumber: null,
+    january: null,
+    february: null,
+    march: null,
+    april: null,
+    may: null,
+    june: null,
+    july: null,
+    august: null,
+    september: null,
+    october: null,
+    november: null,
+    december: null,
+    nextYearJanuary: null,
+    recent3MonthsAvgConsumption: null,
+    recent6MonthsAvgConsumption: null,
+    recent1YearAvgConsumption: null,
+    arrearsStatus: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询企业电费信息汇总列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(response => {
+    infoList.value = response.rows;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    gridAccountNumber: null,
+    january: null,
+    february: null,
+    march: null,
+    april: null,
+    may: null,
+    june: null,
+    july: null,
+    august: null,
+    september: null,
+    october: null,
+    november: null,
+    december: null,
+    nextYearJanuary: null,
+    recent3MonthsAvgConsumption: null,
+    recent6MonthsAvgConsumption: null,
+    recent1YearAvgConsumption: null,
+    arrearsStatus: "0",
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("infoRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加企业电费信息汇总";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInfo(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改企业电费信息汇总";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["infoRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInfo();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除企业电费信息汇总编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInfo(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnterpriseElectricityFeeInfo/exportData', {
+    ...queryParams.value
+  }, `企业电费信息汇总_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 409 - 7
src/views/basicData/OpeCapability/GFInformation/index.vue

@@ -1,9 +1,411 @@
 <template>
-    <div>
-        燃气费信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="燃气用户信息" prop="gasUserInformation">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.gasUserInformation"-->
+<!--            placeholder="请输入燃气用户信息"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="近3个月月均燃气用量" prop="last3MonthsAverageGasConsumption">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.last3MonthsAverageGasConsumption"-->
+<!--            placeholder="请输入近3个月月均燃气用量"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="近6个月月均燃气用量" prop="last6MonthsAverageGasConsumption">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.last6MonthsAverageGasConsumption"-->
+<!--            placeholder="请输入近6个月月均燃气用量"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="当前是否欠费" prop="isOverdue">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.isOverdue"-->
+<!--            placeholder="请输入当前是否欠费"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="缴纳燃气费明细" prop="gasFeePaymentDetails">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.gasFeePaymentDetails"-->
+<!--            placeholder="请输入缴纳燃气费明细"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:information:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:information:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:information:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!informationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:information:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+    <el-table v-loading="loading" :data="informationList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="燃气用户信息" align="center" prop="gasUserInformation" :show-overflow-tooltip="true" />
+      <el-table-column label="近3个月月均燃气用量" align="center" prop="last3MonthsAverageGasConsumption" :show-overflow-tooltip="true" />
+      <el-table-column label="近6个月月均燃气用量" align="center" prop="last6MonthsAverageGasConsumption" :show-overflow-tooltip="true" />
+      <el-table-column label="当前是否欠费" align="center" prop="isOverdue" :show-overflow-tooltip="true" />
+      <el-table-column label="缴纳燃气费明细" align="center" prop="gasFeePaymentDetails" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:information:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改企业燃气费信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="informationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="燃气用户信息" prop="gasUserInformation">
+          <el-input v-model="form.gasUserInformation" placeholder="请输入燃气用户信息" />
+        </el-form-item>
+        <el-form-item label="近3个月月均燃气用量" prop="last3MonthsAverageGasConsumption">
+          <el-input v-model="form.last3MonthsAverageGasConsumption" placeholder="请输入近3个月月均燃气用量" />
+        </el-form-item>
+        <el-form-item label="近6个月月均燃气用量" prop="last6MonthsAverageGasConsumption">
+          <el-input v-model="form.last6MonthsAverageGasConsumption" placeholder="请输入近6个月月均燃气用量" />
+        </el-form-item>
+        <el-form-item label="当前是否欠费" prop="isOverdue">
+          <el-input v-model="form.isOverdue" placeholder="请输入当前是否欠费" />
+        </el-form-item>
+        <el-form-item label="缴纳燃气费明细" prop="gasFeePaymentDetails">
+          <el-input v-model="form.gasFeePaymentDetails" placeholder="请输入缴纳燃气费明细" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Information">
+import { listInformation, getInformation, delInformation, addInformation, updateInformation } from "@/api/basicData/information18";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const informationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmGasFeeInformation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    gasUserInformation: null,
+    last3MonthsAverageGasConsumption: null,
+    last6MonthsAverageGasConsumption: null,
+    isOverdue: null,
+    gasFeePaymentDetails: null,
+  },
+  rules: {
+    enterpriseName: [
+      { required: true, message: "企业名称不能为空", trigger: "blur" }
+    ],
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询企业燃气费信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    gasUserInformation: null,
+    last3MonthsAverageGasConsumption: null,
+    last6MonthsAverageGasConsumption: null,
+    isOverdue: null,
+    gasFeePaymentDetails: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("informationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加企业燃气费信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInformation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改企业燃气费信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["informationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInformation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除企业燃气费信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInformation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmGasFeeInformation/exportData', {
+    ...queryParams.value
+  }, `企业燃气费信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 417 - 8
src/views/basicData/OpeCapability/PFPInformation/index.vue

@@ -1,10 +1,419 @@
 <template>
-    <div>
-        住房公积金
-缴纳信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="单位名称" prop="unitName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.unitName"-->
+<!--            placeholder="请输入单位名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="2023年平均每月缴存人数" prop="avgMonthlyContributors">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.avgMonthlyContributors"-->
+<!--            placeholder="请输入2023年平均每月缴存人数"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="2023年缴存总和" prop="totalContributions">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.totalContributions"-->
+<!--            placeholder="请输入2023年缴存总和"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="最近缴存日期" prop="lastContributionDate">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.lastContributionDate"-->
+<!--            placeholder="请输入最近缴存日期"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="开户日期" prop="accountOpeningDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.accountOpeningDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择开户日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="连续缴存月份" prop="consecutiveContributingMonths">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.consecutiveContributingMonths"-->
+<!--            placeholder="请输入连续缴存月份"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:summary:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:summary:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:summary:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!summaryList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:summary:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="summaryList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" />
+      <el-table-column label="2023年平均每月缴存人数" align="center" prop="avgMonthlyContributors" :show-overflow-tooltip="true" />
+      <el-table-column label="2023年缴存总和" align="center" prop="totalContributions" :show-overflow-tooltip="true" />
+      <el-table-column label="最近缴存日期" align="center" prop="lastContributionDate" :show-overflow-tooltip="true" />
+      <el-table-column label="开户日期" align="center" prop="accountOpeningDate" width="180" :show-overflow-tooltip="true">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.accountOpeningDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="连续缴存月份" align="center" prop="consecutiveContributingMonths" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:summary:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:summary:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改公积金信息汇总对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="summaryRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="单位名称" prop="unitName">
+          <el-input v-model="form.unitName" placeholder="请输入单位名称" />
+        </el-form-item>
+        <el-form-item label="2023年平均每月缴存人数" prop="avgMonthlyContributors">
+          <el-input v-model="form.avgMonthlyContributors" placeholder="请输入2023年平均每月缴存人数" />
+        </el-form-item>
+        <el-form-item label="2023年缴存总和" prop="totalContributions">
+          <el-input v-model="form.totalContributions" placeholder="请输入2023年缴存总和" />
+        </el-form-item>
+        <el-form-item label="最近缴存日期" prop="lastContributionDate">
+          <el-input v-model="form.lastContributionDate" placeholder="请输入最近缴存日期" />
+        </el-form-item>
+        <el-form-item label="开户日期" prop="accountOpeningDate">
+          <el-date-picker clearable
+                          v-model="form.accountOpeningDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择开户日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="连续缴存月份" prop="consecutiveContributingMonths">
+          <el-input v-model="form.consecutiveContributingMonths" placeholder="请输入连续缴存月份" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Summary">
+import { listSummary, getSummary, delSummary, addSummary, updateSummary } from "@/api/basicData/summary2";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const summaryList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAccumulationFundSummary/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSummary(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    unitName: null,
+    avgMonthlyContributors: null,
+    totalContributions: null,
+    lastContributionDate: null,
+    accountOpeningDate: null,
+    consecutiveContributingMonths: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询公积金信息汇总列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSummary(toServerObj).then(response => {
+    summaryList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    unitName: null,
+    avgMonthlyContributors: null,
+    totalContributions: null,
+    lastContributionDate: null,
+    accountOpeningDate: null,
+    consecutiveContributingMonths: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("summaryRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加公积金信息汇总";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getSummary(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改公积金信息汇总";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["summaryRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateSummary(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addSummary(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delSummary();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除公积金信息汇总编号为"' + ids + '"的数据项?').then(function() {
+  //   return delSummary(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmAccumulationFundSummary/exportData', {
+    ...queryParams.value
+  }, `公积金信息汇总_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 352 - 7
src/views/basicData/OpeCapability/SSAInformation/index.vue

@@ -1,9 +1,354 @@
 <template>
-    <div>
-        社会保险费欠缴信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="当前是否欠缴" prop="isCurrentlyInArrears">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.isCurrentlyInArrears"-->
+<!--            placeholder="请输入当前是否欠缴"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:info:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:info:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:info:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!infoList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:info:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="infoList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"  />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="当前是否欠缴" align="center" prop="isCurrentlyInArrears" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改社会保险费欠缴信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="infoRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="当前是否欠缴" prop="isCurrentlyInArrears">
+          <el-input v-model="form.isCurrentlyInArrears" placeholder="请输入当前是否欠缴" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Info">
+import { listInfo, getInfo, delInfo, addInfo, updateInfo } from "@/api/basicData/info6";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const infoList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmSocialInsuranceArrearsInfo/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    isCurrentlyInArrears: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询社会保险费欠缴信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(response => {
+    infoList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    isCurrentlyInArrears: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("infoRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加社会保险费欠缴信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInfo(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改社会保险费欠缴信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["infoRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInfo();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除社会保险费欠缴信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInfo(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmSocialInsuranceArrearsInfo/exportData', {
+    ...queryParams.value
+  }, `社会保险费欠缴信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 386 - 8
src/views/basicData/OpeCapability/SSPInformation/index.vue

@@ -1,10 +1,388 @@
 <template>
-    <div>
-        社会保险费
-缴纳信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="企业名称" prop="enterpriseName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.enterpriseName"-->
+<!--            placeholder="请输入企业名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业职工基本养老保险近一年月均参保人数分档" prop="avgInsuredPersonsBand">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.avgInsuredPersonsBand"-->
+<!--            placeholder="请输入企业职工基本养老保险近一年月均参保人数分档"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业职工基本养老保险近一年月均单位缴费金额分档" prop="avgMonthlyPaymentBand">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.avgMonthlyPaymentBand"-->
+<!--            placeholder="请输入企业职工基本养老保险近一年月均单位缴费金额分档"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="企业职工基本养老保险最近一次正常缴费月份" prop="lastNormalPaymentMonth">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.lastNormalPaymentMonth"-->
+<!--            placeholder="请输入企业职工基本养老保险最近一次正常缴费月份"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:info:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:info:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                :disabled="multiple"
+                @click="handleDelete"
+                v-hasPermi="['basicData:info:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                @click="handleExport"
+                v-hasPermi="['basicData:info:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="infoList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip="true" />
+      <el-table-column label="企业职工基本养老保险近一年月均参保人数分档" align="center" prop="avgInsuredPersonsBand" :show-overflow-tooltip="true" />
+      <el-table-column label="企业职工基本养老保险近一年月均单位缴费金额分档" align="center" prop="avgMonthlyPaymentBand" :show-overflow-tooltip="true" />
+      <el-table-column label="企业职工基本养老保险最近一次正常缴费月份" align="center" prop="lastNormalPaymentMonth" :show-overflow-tooltip="true" />
+      <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:info:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改企业社会保险费缴纳信息对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="infoRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="企业名称" prop="enterpriseName">
+          <el-input v-model="form.enterpriseName" placeholder="请输入企业名称" />
+        </el-form-item>
+        <el-form-item label="企业职工基本养老保险近一年月均参保人数分档" prop="avgInsuredPersonsBand">
+          <el-input v-model="form.avgInsuredPersonsBand" placeholder="请输入企业职工基本养老保险近一年月均参保人数分档" />
+        </el-form-item>
+        <el-form-item label="企业职工基本养老保险近一年月均单位缴费金额分档" prop="avgMonthlyPaymentBand">
+          <el-input v-model="form.avgMonthlyPaymentBand" placeholder="请输入企业职工基本养老保险近一年月均单位缴费金额分档" />
+        </el-form-item>
+        <el-form-item label="企业职工基本养老保险最近一次正常缴费月份" prop="lastNormalPaymentMonth">
+          <el-input v-model="form.lastNormalPaymentMonth" placeholder="请输入企业职工基本养老保险最近一次正常缴费月份" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remarks">
+          <el-input v-model="form.remarks" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Info">
+import { listInfo, getInfo, delInfo, addInfo, updateInfo } from "@/api/basicData/info5";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const infoList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmEnterpriseSocialSecurityInfo/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    avgInsuredPersonsBand: null,
+    avgMonthlyPaymentBand: null,
+    lastNormalPaymentMonth: null,
+    remarks: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询企业社会保险费缴纳信息列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listInfo(toServerObj).then(response => {
+    infoList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    avgInsuredPersonsBand: null,
+    avgMonthlyPaymentBand: null,
+    lastNormalPaymentMonth: null,
+    remarks: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("infoRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加企业社会保险费缴纳信息";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getInfo(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改企业社会保险费缴纳信息";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["infoRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addInfo(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInfo();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除企业社会保险费缴纳信息编号为"' + ids + '"的数据项?').then(function() {
+  //   return delInfo(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnterpriseSocialSecurityInfo/exportData', {
+    ...queryParams.value
+  }, `企业社会保险费缴纳信息_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 1 - 1
src/views/basicData/OpeCapability/TAInformation/index.vue

@@ -236,7 +236,7 @@ const data = reactive({
   form: {},
   queryParams: {
     pageNum: 1,
-    pageSize: 10,
+    pageSize: 20,
     unifiedSocialCreditCode: '',
     enterpriseName: null,
     isCurrentlyInArrears: null,

+ 520 - 7
src/views/basicData/OpeCapability/WFInformation/index.vue

@@ -1,9 +1,522 @@
 <template>
-    <div>
-        水费信息
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="单位名称" prop="unitName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.unitName"-->
+<!--            placeholder="请输入单位名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="一月" prop="january">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.january"-->
+<!--            placeholder="请输入一月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="二月" prop="february">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.february"-->
+<!--            placeholder="请输入二月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="三月" prop="march">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.march"-->
+<!--            placeholder="请输入三月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="四月" prop="april">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.april"-->
+<!--            placeholder="请输入四月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="五月" prop="may">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.may"-->
+<!--            placeholder="请输入五月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="六月" prop="june">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.june"-->
+<!--            placeholder="请输入六月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="七月" prop="july">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.july"-->
+<!--            placeholder="请输入七月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="八月" prop="august">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.august"-->
+<!--            placeholder="请输入八月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="九月" prop="september">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.september"-->
+<!--            placeholder="请输入九月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="十月" prop="october">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.october"-->
+<!--            placeholder="请输入十月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="十一月" prop="november">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.november"-->
+<!--            placeholder="请输入十一月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="十二月" prop="december">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.december"-->
+<!--            placeholder="请输入十二月"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="合计" prop="totalUsage">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.totalUsage"-->
+<!--            placeholder="请输入合计"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:detail:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:detail:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:detail:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!detailList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:detail:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="detailList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="单位名称" align="center" prop="unitName" :show-overflow-tooltip="true" />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="一月" align="center" prop="january" :show-overflow-tooltip="true" />
+      <el-table-column label="二月" align="center" prop="february" :show-overflow-tooltip="true" />
+      <el-table-column label="三月" align="center" prop="march" :show-overflow-tooltip="true" />
+      <el-table-column label="四月" align="center" prop="april" :show-overflow-tooltip="true" />
+      <el-table-column label="五月" align="center" prop="may" :show-overflow-tooltip="true" />
+      <el-table-column label="六月" align="center" prop="june" :show-overflow-tooltip="true" />
+      <el-table-column label="七月" align="center" prop="july" :show-overflow-tooltip="true" />
+      <el-table-column label="八月" align="center" prop="august" :show-overflow-tooltip="true" />
+      <el-table-column label="九月" align="center" prop="september" :show-overflow-tooltip="true" />
+      <el-table-column label="十月" align="center" prop="october" :show-overflow-tooltip="true" />
+      <el-table-column label="十一月" align="center" prop="november" :show-overflow-tooltip="true" />
+      <el-table-column label="十二月" align="center" prop="december" :show-overflow-tooltip="true" />
+      <el-table-column label="合计" align="center" prop="totalUsage" :show-overflow-tooltip="true" />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:detail:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:detail:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
     </div>
-  </template>
-  
-  <script setup name="Confirmation">
-  </script>
-  
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改工业园区各单位用水明细对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="detailRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="单位名称" prop="unitName">
+          <el-input v-model="form.unitName" placeholder="请输入单位名称" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="一月" prop="january">
+          <el-input v-model="form.january" placeholder="请输入一月" />
+        </el-form-item>
+        <el-form-item label="二月" prop="february">
+          <el-input v-model="form.february" placeholder="请输入二月" />
+        </el-form-item>
+        <el-form-item label="三月" prop="march">
+          <el-input v-model="form.march" placeholder="请输入三月" />
+        </el-form-item>
+        <el-form-item label="四月" prop="april">
+          <el-input v-model="form.april" placeholder="请输入四月" />
+        </el-form-item>
+        <el-form-item label="五月" prop="may">
+          <el-input v-model="form.may" placeholder="请输入五月" />
+        </el-form-item>
+        <el-form-item label="六月" prop="june">
+          <el-input v-model="form.june" placeholder="请输入六月" />
+        </el-form-item>
+        <el-form-item label="七月" prop="july">
+          <el-input v-model="form.july" placeholder="请输入七月" />
+        </el-form-item>
+        <el-form-item label="八月" prop="august">
+          <el-input v-model="form.august" placeholder="请输入八月" />
+        </el-form-item>
+        <el-form-item label="九月" prop="september">
+          <el-input v-model="form.september" placeholder="请输入九月" />
+        </el-form-item>
+        <el-form-item label="十月" prop="october">
+          <el-input v-model="form.october" placeholder="请输入十月" />
+        </el-form-item>
+        <el-form-item label="十一月" prop="november">
+          <el-input v-model="form.november" placeholder="请输入十一月" />
+        </el-form-item>
+        <el-form-item label="十二月" prop="december">
+          <el-input v-model="form.december" placeholder="请输入十二月" />
+        </el-form-item>
+        <el-form-item label="合计" prop="totalUsage">
+          <el-input v-model="form.totalUsage" placeholder="请输入合计" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Detail">
+import { listDetail, getDetail, delDetail, addDetail, updateDetail } from "@/api/basicData/detail";
+import {reactive} from "vue";
+import {getToken} from "../../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const detailList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmIndustrialParkWaterUsageDetail/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listDetail(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unitName: null,
+    unifiedSocialCreditCode: '',
+    january: null,
+    february: null,
+    march: null,
+    april: null,
+    may: null,
+    june: null,
+    july: null,
+    august: null,
+    september: null,
+    october: null,
+    november: null,
+    december: null,
+    totalUsage: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询工业园区各单位用水明细列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listDetail(toServerObj).then(response => {
+    detailList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    unitName: null,
+    unifiedSocialCreditCode: '',
+    january: null,
+    february: null,
+    march: null,
+    april: null,
+    may: null,
+    june: null,
+    july: null,
+    august: null,
+    september: null,
+    october: null,
+    november: null,
+    december: null,
+    totalUsage: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("detailRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加工业园区各单位用水明细";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getDetail(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改工业园区各单位用水明细";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["detailRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateDetail(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addDetail(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delDetail();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除工业园区各单位用水明细编号为"' + ids + '"的数据项?').then(function() {
+  //   return delDetail(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmIndustrialParkWaterUsageDetail/exportData', {
+    ...queryParams.value
+  }, `工业园区各单位用水明细_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 450 - 0
src/views/basicData/check/index.vue

@@ -0,0 +1,450 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="抽样日期" prop="samplingDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.samplingDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择抽样日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="产品名称" prop="productName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.productName"-->
+<!--            placeholder="请输入产品名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="食品大类" prop="foodCategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.foodCategory"-->
+<!--            placeholder="请输入食品大类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="被抽样单位" prop="sampledUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.sampledUnit"-->
+<!--            placeholder="请输入被抽样单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="被抽样单位地址" prop="sampledUnitAddress">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.sampledUnitAddress"-->
+<!--            placeholder="请输入被抽样单位地址"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检测项目" prop="testItem">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.testItem"-->
+<!--            placeholder="请输入检测项目"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检测结果" prop="testResult">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.testResult"-->
+<!--            placeholder="请输入检测结果"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="任务源" prop="taskSource">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.taskSource"-->
+<!--            placeholder="请输入任务源"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:check:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:check:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:check:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!checkList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:check:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="checkList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="抽样日期" align="center" prop="samplingDate" width="180" :show-overflow-tooltip='true' >
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.samplingDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="产品名称" align="center" prop="productName" :show-overflow-tooltip='true' />
+      <el-table-column label="食品大类" align="center" prop="foodCategory" :show-overflow-tooltip='true' />
+      <el-table-column label="食品细类" align="center" prop="foodType" :show-overflow-tooltip='true' />
+      <el-table-column label="被抽样单位" align="center" prop="sampledUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="被抽样单位地址" align="center" prop="sampledUnitAddress" :show-overflow-tooltip='true' />
+      <el-table-column label="检测项目" align="center" prop="testItem" :show-overflow-tooltip='true' />
+      <el-table-column label="检测结果" align="center" prop="testResult" :show-overflow-tooltip='true' />
+      <el-table-column label="任务源" align="center" prop="taskSource" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:check:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:check:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
+    </div>
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改食品及食用农产品监督抽检情况汇总对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="checkRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="抽样日期" prop="samplingDate">
+          <el-date-picker clearable
+                          v-model="form.samplingDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择抽样日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="产品名称" prop="productName">
+          <el-input v-model="form.productName" placeholder="请输入产品名称" />
+        </el-form-item>
+        <el-form-item label="食品大类" prop="foodCategory">
+          <el-input v-model="form.foodCategory" placeholder="请输入食品大类" />
+        </el-form-item>
+        <el-form-item label="被抽样单位" prop="sampledUnit">
+          <el-input v-model="form.sampledUnit" placeholder="请输入被抽样单位" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="被抽样单位地址" prop="sampledUnitAddress">
+          <el-input v-model="form.sampledUnitAddress" placeholder="请输入被抽样单位地址" />
+        </el-form-item>
+        <el-form-item label="检测项目" prop="testItem">
+          <el-input v-model="form.testItem" placeholder="请输入检测项目" />
+        </el-form-item>
+        <el-form-item label="检测结果" prop="testResult">
+          <el-input v-model="form.testResult" placeholder="请输入检测结果" />
+        </el-form-item>
+        <el-form-item label="任务源" prop="taskSource">
+          <el-input v-model="form.taskSource" placeholder="请输入任务源" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Check">
+import { listCheck, getCheck, delCheck, addCheck, updateCheck } from "@/api/basicData/check";
+import {reactive} from "vue";
+import {getToken} from "../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const checkList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAgriculturalProductSupervisionCheck/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listCheck(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    samplingDate: null,
+    productName: null,
+    foodCategory: null,
+    foodType: null,
+    sampledUnit: null,
+    unifiedSocialCreditCode: '',
+    sampledUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    taskSource: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询食品及食用农产品监督抽检情况汇总列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listCheck(toServerObj).then(response => {
+    checkList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    samplingDate: null,
+    productName: null,
+    foodCategory: null,
+    foodType: null,
+    sampledUnit: null,
+    unifiedSocialCreditCode: '',
+    sampledUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    taskSource: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("checkRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加食品及食用农产品监督抽检情况汇总";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getCheck(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改食品及食用农产品监督抽检情况汇总";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["checkRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateCheck(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addCheck(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delCheck();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除食品及食用农产品监督抽检情况汇总编号为"' + ids + '"的数据项?').then(function() {
+  //   return delCheck(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmAgriculturalProductSupervisionCheck/exportData', {
+    ...queryParams.value
+  }, `食品及食用农产品监督抽检情况汇总_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 474 - 0
src/views/basicData/confirmation/index.vue

@@ -0,0 +1,474 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="行政相对人名称" prop="administrativePartyName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.administrativePartyName"-->
+<!--          placeholder="请输入行政相对人名称"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="行政相对人代码" prop="administrativePartyCode">
+        <el-input
+          v-model="queryParams.administrativePartyCode"
+          placeholder="请输入行政相对人代码"
+          clearable
+          @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="法定代表人姓名" prop="legalRepresentativeName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.legalRepresentativeName"-->
+<!--          placeholder="请输入法定代表人姓名"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="法定代表人证件号码" prop="legalRepresentativeIdNumber">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.legalRepresentativeIdNumber"-->
+<!--          placeholder="请输入法定代表人证件号码"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="行政确认" prop="administrativeConfirmation">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.administrativeConfirmation"-->
+<!--          placeholder="请输入行政确认"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="确认事项名称" prop="confirmationItemName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.confirmationItemName"-->
+<!--          placeholder="请输入确认事项名称"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="确认日期" prop="confirmationDate">-->
+<!--        <el-date-picker clearable-->
+<!--          v-model="queryParams.confirmationDate"-->
+<!--          type="date"-->
+<!--          value-format="YYYY-MM-DD"-->
+<!--          placeholder="请选择确认日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="确认机关名称" prop="confirmationAuthorityName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.confirmationAuthorityName"-->
+<!--          placeholder="请输入确认机关名称"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="确认机关代码" prop="confirmationAuthorityCode">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.confirmationAuthorityCode"-->
+<!--          placeholder="请输入确认机关代码"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="备注" prop="remarks">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.remarks"-->
+<!--          placeholder="请输入备注"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--          type="primary"-->
+          <!--          plain-->
+          <!--          icon="Plus"-->
+          <!--          @click="handleAdd"-->
+          <!--          v-hasPermi="['basicData:confirmation:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--          type="success"-->
+          <!--          plain-->
+          <!--          icon="Edit"-->
+          <!--          :disabled="single"-->
+          <!--          @click="handleUpdate"-->
+          <!--          v-hasPermi="['basicData:confirmation:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:confirmation:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!confirmationList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:confirmation:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+
+
+    <el-table v-loading="loading" :data="confirmationList" @selection-change="handleSelectionChange" height="650">
+      <el-table-column width="55" align="center" />
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="行政相对人名称" align="center" prop="administrativePartyName" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人类别" align="center" prop="administrativePartyType" :show-overflow-tooltip='true' />
+      <el-table-column label="行政相对人代码" align="center" prop="administrativePartyCode" width="200" />
+      <el-table-column label="法定代表人姓名" align="center" prop="legalRepresentativeName" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件类型" align="center" prop="legalRepresentativeIdType" :show-overflow-tooltip='true' />
+      <el-table-column label="法定代表人证件号码" align="center" prop="legalRepresentativeIdNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="行政确认" align="center" prop="administrativeConfirmation" :show-overflow-tooltip='true' />
+      <el-table-column label="确认事项名称" align="center" prop="confirmationItemName" :show-overflow-tooltip='true' />
+      <el-table-column label="确认种类" align="center" prop="confirmationType" :show-overflow-tooltip='true' />
+      <el-table-column label="确认内容" align="center" prop="confirmationContent" :show-overflow-tooltip='true' />
+      <el-table-column label="确认日期" align="center" prop="confirmationDate" :show-overflow-tooltip='true' width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.confirmationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="确认机关名称" align="center" prop="confirmationAuthorityName" :show-overflow-tooltip='true' />
+      <el-table-column label="确认机关代码" align="center" prop="confirmationAuthorityCode" :show-overflow-tooltip='true' />
+      <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--            type="text"-->
+<!--            icon="Edit"-->
+<!--            @click="handleUpdate(scope.row)"-->
+<!--            v-hasPermi="['basicData:confirmation:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--            type="text"-->
+<!--            icon="Delete"-->
+<!--            @click="handleDelete(scope.row)"-->
+<!--            v-hasPermi="['basicData:confirmation:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
+    </div>
+
+    <!-- 添加或修改行政确认对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="confirmationRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="行政相对人名称" prop="administrativePartyName">
+          <el-input v-model="form.administrativePartyName" placeholder="请输入行政相对人名称" />
+        </el-form-item>
+        <el-form-item label="行政相对人代码" prop="administrativePartyCode">
+          <el-input v-model="form.administrativePartyCode" placeholder="请输入行政相对人代码" />
+        </el-form-item>
+        <el-form-item label="法定代表人姓名" prop="legalRepresentativeName">
+          <el-input v-model="form.legalRepresentativeName" placeholder="请输入法定代表人姓名" />
+        </el-form-item>
+        <el-form-item label="法定代表人证件号码" prop="legalRepresentativeIdNumber">
+          <el-input v-model="form.legalRepresentativeIdNumber" placeholder="请输入法定代表人证件号码" />
+        </el-form-item>
+        <el-form-item label="行政确认" prop="administrativeConfirmation">
+          <el-input v-model="form.administrativeConfirmation" placeholder="请输入行政确认" />
+        </el-form-item>
+        <el-form-item label="确认事项名称" prop="confirmationItemName">
+          <el-input v-model="form.confirmationItemName" placeholder="请输入确认事项名称" />
+        </el-form-item>
+        <el-form-item label="确认内容">
+          <editor v-model="form.confirmationContent" :min-height="192"/>
+        </el-form-item>
+        <el-form-item label="确认日期" prop="confirmationDate">
+          <el-date-picker clearable
+            v-model="form.confirmationDate"
+            type="date"
+            value-format="YYYY-MM-DD"
+            placeholder="请选择确认日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="确认机关名称" prop="confirmationAuthorityName">
+          <el-input v-model="form.confirmationAuthorityName" placeholder="请输入确认机关名称" />
+        </el-form-item>
+        <el-form-item label="确认机关代码" prop="confirmationAuthorityCode">
+          <el-input v-model="form.confirmationAuthorityCode" placeholder="请输入确认机关代码" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remarks">
+          <el-input v-model="form.remarks" placeholder="请输入备注" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Confirmation">
+import { listConfirmation, getConfirmation, delConfirmation, addConfirmation, updateConfirmation } from "@/api/basicData/confirmation";
+import {reactive} from "vue";
+import {getToken} from "../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const confirmationList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAdministrativeConfirmation/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('administrative_party_code', queryParams.value.administrativePartyCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listConfirmation(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    administrativePartyName: null,
+    administrativePartyType: null,
+    administrativePartyCode: '',
+    legalRepresentativeName: null,
+    legalRepresentativeIdType: null,
+    legalRepresentativeIdNumber: null,
+    administrativeConfirmation: null,
+    confirmationItemName: null,
+    confirmationType: null,
+    confirmationContent: null,
+    confirmationDate: null,
+    confirmationAuthorityName: null,
+    confirmationAuthorityCode: null,
+    remarks: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询行政确认列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('administrative_party_code', queryParams.value.administrativePartyCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listConfirmation(toServerObj).then(response => {
+    confirmationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    administrativePartyName: null,
+    administrativePartyType: null,
+    administrativePartyCode: null,
+    legalRepresentativeName: null,
+    legalRepresentativeIdType: null,
+    legalRepresentativeIdNumber: null,
+    administrativeConfirmation: null,
+    confirmationItemName: null,
+    confirmationType: null,
+    confirmationContent: null,
+    confirmationDate: null,
+    confirmationAuthorityName: null,
+    confirmationAuthorityCode: null,
+    remarks: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("confirmationRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加行政确认";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getConfirmation(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改行政确认";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["confirmationRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateConfirmation(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addConfirmation(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delConfirmation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除行政确认编号为"' + ids + '"的数据项?').then(function() {
+  //   return delConfirmation(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('/crmAdministrativeConfirmation/exportData', {
+    ...queryParams.value
+  }, `行政确认数据导出_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 448 - 0
src/views/basicData/result/index.vue

@@ -0,0 +1,448 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="抽样日期" prop="samplingDate">-->
+<!--        <el-date-picker clearable-->
+<!--          v-model="queryParams.samplingDate"-->
+<!--          type="date"-->
+<!--          value-format="YYYY-MM-DD"-->
+<!--          placeholder="请选择抽样日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="产品名称" prop="productName">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.productName"-->
+<!--          placeholder="请输入产品名称"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="食品大类" prop="foodCategory">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.foodCategory"-->
+<!--          placeholder="请输入食品大类"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="被抽样单位" prop="sampledUnit">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.sampledUnit"-->
+<!--          placeholder="请输入被抽样单位"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+          v-model="queryParams.unifiedSocialCreditCode"
+          placeholder="请输入统一社会信用代码"
+          clearable
+          @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="被抽样单位地址" prop="sampledUnitAddress">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.sampledUnitAddress"-->
+<!--          placeholder="请输入被抽样单位地址"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检测项目" prop="testItem">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.testItem"-->
+<!--          placeholder="请输入检测项目"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检测结果" prop="testResult">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.testResult"-->
+<!--          placeholder="请输入检测结果"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="任务源" prop="taskSource">-->
+<!--        <el-input-->
+<!--          v-model="queryParams.taskSource"-->
+<!--          placeholder="请输入任务源"-->
+<!--          clearable-->
+<!--          @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--          type="primary"-->
+          <!--          plain-->
+          <!--          icon="Plus"-->
+          <!--          @click="handleAdd"-->
+          <!--          v-hasPermi="['basicData:result:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--          type="success"-->
+          <!--          plain-->
+          <!--          icon="Edit"-->
+          <!--          :disabled="single"-->
+          <!--          @click="handleUpdate"-->
+          <!--          v-hasPermi="['basicData:result:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:result:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                :disabled="!resultList.length"
+                @click="handleExport"
+                v-hasPermi="['basicData:result:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+<!--          <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table v-loading="loading" :data="resultList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="抽样日期" align="center" prop="samplingDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.samplingDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="产品名称" align="center" prop="productName" :show-overflow-tooltip='true' />
+      <el-table-column label="食品大类" align="center" prop="foodCategory" :show-overflow-tooltip='true' />
+      <el-table-column label="食品细类" align="center" prop="foodType" :show-overflow-tooltip='true' />
+      <el-table-column label="被抽样单位" align="center" prop="sampledUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
+      <el-table-column label="被抽样单位地址" align="center" prop="sampledUnitAddress" :show-overflow-tooltip='true' />
+      <el-table-column label="检测项目" align="center" prop="testItem" :show-overflow-tooltip='true' />
+      <el-table-column label="检测结果" align="center" prop="testResult" :show-overflow-tooltip='true' />
+      <el-table-column label="任务源" align="center" prop="taskSource" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--            type="text"-->
+<!--            icon="Edit"-->
+<!--            @click="handleUpdate(scope.row)"-->
+<!--            v-hasPermi="['basicData:result:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--            type="text"-->
+<!--            icon="Delete"-->
+<!--            @click="handleDelete(scope.row)"-->
+<!--            v-hasPermi="['basicData:result:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
+    </div>
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+    <!-- 添加或修改食品及食用农产品监督抽检结果统计对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="resultRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="抽样日期" prop="samplingDate">
+          <el-date-picker clearable
+            v-model="form.samplingDate"
+            type="date"
+            value-format="YYYY-MM-DD"
+            placeholder="请选择抽样日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="产品名称" prop="productName">
+          <el-input v-model="form.productName" placeholder="请输入产品名称" />
+        </el-form-item>
+        <el-form-item label="食品大类" prop="foodCategory">
+          <el-input v-model="form.foodCategory" placeholder="请输入食品大类" />
+        </el-form-item>
+        <el-form-item label="被抽样单位" prop="sampledUnit">
+          <el-input v-model="form.sampledUnit" placeholder="请输入被抽样单位" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="被抽样单位地址" prop="sampledUnitAddress">
+          <el-input v-model="form.sampledUnitAddress" placeholder="请输入被抽样单位地址" />
+        </el-form-item>
+        <el-form-item label="检测项目" prop="testItem">
+          <el-input v-model="form.testItem" placeholder="请输入检测项目" />
+        </el-form-item>
+        <el-form-item label="检测结果" prop="testResult">
+          <el-input v-model="form.testResult" placeholder="请输入检测结果" />
+        </el-form-item>
+        <el-form-item label="任务源" prop="taskSource">
+          <el-input v-model="form.taskSource" placeholder="请输入任务源" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Result">
+import { listResult, getResult, delResult, addResult, updateResult } from "@/api/basicData/result";
+import {reactive} from "vue";
+import {getToken} from "../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const resultList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmAgriculturalProductSupervisionCheckResult/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listResult(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    samplingDate: null,
+    productName: null,
+    foodCategory: null,
+    foodType: null,
+    sampledUnit: null,
+    unifiedSocialCreditCode: '',
+    sampledUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    taskSource: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询食品及食用农产品监督抽检结果统计列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listResult(toServerObj).then(response => {
+    resultList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    samplingDate: null,
+    productName: null,
+    foodCategory: null,
+    foodType: null,
+    sampledUnit: null,
+    unifiedSocialCreditCode: null,
+    sampledUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    taskSource: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("resultRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加食品及食用农产品监督抽检结果统计";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getResult(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改食品及食用农产品监督抽检结果统计";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["resultRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateResult(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addResult(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delResult();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除食品及食用农产品监督抽检结果统计编号为"' + ids + '"的数据项?').then(function() {
+  //   return delResult(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmAgriculturalProductSupervisionCheckResult/exportData', {
+    ...queryParams.value
+  }, `食品及食用农产品监督抽检结果统计_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 716 - 0
src/views/basicData/sampling/index.vue

@@ -0,0 +1,716 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+<!--      <el-form-item label="抽查领域" prop="checkArea">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.checkArea"-->
+<!--            placeholder="请输入抽查领域"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="抽样单位" prop="samplingUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.samplingUnit"-->
+<!--            placeholder="请输入抽样单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="被抽样单位所在地市" prop="locationCityOfTheSampledUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.locationCityOfTheSampledUnit"-->
+<!--            placeholder="请输入被抽样单位所在地市"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="食品大类" prop="foodCategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.foodCategory"-->
+<!--            placeholder="请输入食品大类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="食品亚类" prop="foodSubcategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.foodSubcategory"-->
+<!--            placeholder="请输入食品亚类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="食品次亚类" prop="foodSubsubcategory">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.foodSubsubcategory"-->
+<!--            placeholder="请输入食品次亚类"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="报告书编号" prop="reportNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.reportNumber"-->
+<!--            placeholder="请输入报告书编号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="抽样单号" prop="samplingNumber">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.samplingNumber"-->
+<!--            placeholder="请输入抽样单号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="产品名称" prop="productName">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.productName"-->
+<!--            placeholder="请输入产品名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="规格型号" prop="specificationModel">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.specificationModel"-->
+<!--            placeholder="请输入规格型号"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="商标" prop="brand">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.brand"-->
+<!--            placeholder="请输入商标"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="生产日期" prop="productionDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.productionDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择生产日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="抽样日期" prop="samplingDate">-->
+<!--        <el-date-picker clearable-->
+<!--                        v-model="queryParams.samplingDate"-->
+<!--                        type="date"-->
+<!--                        value-format="YYYY-MM-DD"-->
+<!--                        placeholder="请选择抽样日期">-->
+<!--        </el-date-picker>-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="受检单位" prop="inspectedUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.inspectedUnit"-->
+<!--            placeholder="请输入受检单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="受检单位地址" prop="inspectedUnitAddress">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.inspectedUnitAddress"-->
+<!--            placeholder="请输入受检单位地址"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="受检单位联系人" prop="inspectedUnitContactPerson">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.inspectedUnitContactPerson"-->
+<!--            placeholder="请输入受检单位联系人"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="受检单位电话" prop="inspectedUnitPhone">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.inspectedUnitPhone"-->
+<!--            placeholder="请输入受检单位电话"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="生产单位" prop="productionUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.productionUnit"-->
+<!--            placeholder="请输入生产单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="生产单位地址" prop="productionUnitAddress">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.productionUnitAddress"-->
+<!--            placeholder="请输入生产单位地址"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检验项目" prop="testItem">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.testItem"-->
+<!--            placeholder="请输入检验项目"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="检验结果" prop="testResult">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.testResult"-->
+<!--            placeholder="请输入检验结果"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="不合格项目" prop="unqualifiedItem">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.unqualifiedItem"-->
+<!--            placeholder="请输入不合格项目"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="标准要求" prop="standardRequirements">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.standardRequirements"-->
+<!--            placeholder="请输入标准要求"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="实测值" prop="measuredValue">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.measuredValue"-->
+<!--            placeholder="请输入实测值"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="项目单位" prop="itemUnit">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.itemUnit"-->
+<!--            placeholder="请输入项目单位"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="任务性质" prop="taskNature">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.taskNature"-->
+<!--            placeholder="请输入任务性质"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-row :gutter="10" class="mb8">
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="primary"-->
+          <!--            plain-->
+          <!--            icon="Plus"-->
+          <!--            @click="handleAdd"-->
+          <!--            v-hasPermi="['basicData:sampling:add']"-->
+          <!--        >新增</el-button>-->
+          <!--      </el-col>-->
+          <!--      <el-col :span="1.5">-->
+          <!--        <el-button-->
+          <!--            type="success"-->
+          <!--            plain-->
+          <!--            icon="Edit"-->
+          <!--            :disabled="single"-->
+          <!--            @click="handleUpdate"-->
+          <!--            v-hasPermi="['basicData:sampling:edit']"-->
+          <!--        >修改</el-button>-->
+          <!--      </el-col>-->
+          <el-col :span="1.5">
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                @click="handleDelete"
+                v-hasPermi="['basicData:sampling:remove']"
+            >删除</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button
+                type="warning"
+                plain
+                icon="Download"
+                @click="handleExport"
+                :disabled="!samplingList.length"
+                v-hasPermi="['basicData:sampling:export']"
+            >导出</el-button>
+          </el-col>
+          <el-col :span="1.5">
+            <el-button type="info" plain icon="Upload" @click="handleImport"
+                       v-hasPermi="['system:user:import']">导入
+            </el-button>
+          </el-col>
+          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
+        </el-row>
+      </el-form-item>
+    </el-form>
+
+
+
+    <el-table v-loading="loading" :data="samplingList" height="650" @selection-change="handleSelectionChange">
+<!--      <el-table-column type="selection" width="55" align="center" />-->
+<!--      <el-table-column label="主键" align="center" prop="id" />-->
+      <el-table-column label="抽查领域" align="center" prop="checkArea" :show-overflow-tooltip='true' />
+      <el-table-column label="抽样单位" align="center" prop="samplingUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="被抽样单位所在地市" align="center" prop="locationCityOfTheSampledUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="食品大类" align="center" prop="foodCategory" :show-overflow-tooltip='true' />
+      <el-table-column label="食品亚类" align="center" prop="foodSubcategory" :show-overflow-tooltip='true' />
+      <el-table-column label="食品次亚类" align="center" prop="foodSubsubcategory" :show-overflow-tooltip='true' />
+      <el-table-column label="食品细类" align="center" prop="foodType" :show-overflow-tooltip='true' />
+      <el-table-column label="报告书编号" align="center" prop="reportNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="抽样单号" align="center" prop="samplingNumber" :show-overflow-tooltip='true' />
+      <el-table-column label="产品名称" align="center" prop="productName" :show-overflow-tooltip='true' />
+      <el-table-column label="规格型号" align="center" prop="specificationModel" :show-overflow-tooltip='true' />
+      <el-table-column label="商标" align="center" prop="brand" :show-overflow-tooltip='true' />
+      <el-table-column label="生产日期" align="center" prop="productionDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.productionDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="抽样日期" align="center" prop="samplingDate" width="180" :show-overflow-tooltip='true'>
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.samplingDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="受检单位" align="center" prop="inspectedUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="受检单位地址" align="center" prop="inspectedUnitAddress" :show-overflow-tooltip='true' />
+      <el-table-column label="受检单位联系人" align="center" prop="inspectedUnitContactPerson" :show-overflow-tooltip='true' />
+      <el-table-column label="受检单位电话" align="center" prop="inspectedUnitPhone" :show-overflow-tooltip='true' />
+      <el-table-column label="生产单位" align="center" prop="productionUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="生产单位地址" align="center" prop="productionUnitAddress" :show-overflow-tooltip='true' />
+      <el-table-column label="检验项目" align="center" prop="testItem" :show-overflow-tooltip='true' />
+      <el-table-column label="检验结果" align="center" prop="testResult" :show-overflow-tooltip='true' />
+      <el-table-column label="不合格项目" align="center" prop="unqualifiedItem" :show-overflow-tooltip='true' />
+      <el-table-column label="标准要求" align="center" prop="standardRequirements" :show-overflow-tooltip='true' />
+      <el-table-column label="实测值" align="center" prop="measuredValue" :show-overflow-tooltip='true' />
+      <el-table-column label="项目单位" align="center" prop="itemUnit" :show-overflow-tooltip='true' />
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" />
+      <el-table-column label="任务性质" align="center" prop="taskNature" :show-overflow-tooltip='true' />
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true' />
+<!--      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
+<!--        <template #default="scope">-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Edit"-->
+<!--              @click="handleUpdate(scope.row)"-->
+<!--              v-hasPermi="['basicData:sampling:edit']"-->
+<!--          >修改</el-button>-->
+<!--          <el-button-->
+<!--              type="text"-->
+<!--              icon="Delete"-->
+<!--              @click="handleDelete(scope.row)"-->
+<!--              v-hasPermi="['basicData:sampling:remove']"-->
+<!--          >删除</el-button>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+    </el-table>
+
+    <div style="position: fixed;bottom: 20px;right: 10px;">
+      <pagination
+          v-show="total>0"
+          :total="total"
+          v-model:page="queryParams.pageNum"
+          v-model:limit="queryParams.pageSize"
+          @pagination="getList"
+      />
+    </div>
+
+    <el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
+      <el-upload ref="uploadRef" :limit="1" accept=".xlsx, .xls" :headers="upload.headers"
+                 :action="upload.url + '?updateSupport=' + upload.updateSupport" :disabled="upload.isUploading"
+                 :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess" :auto-upload="false" drag>
+        <el-icon class="el-icon--upload"><upload-filled /></el-icon>
+        <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
+        <template #tip>
+          <div class="el-upload__tip text-center">
+            <span>仅允许导入xls、xlsx格式文件。</span>
+          </div>
+        </template>
+      </el-upload>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+
+    <!-- 添加或修改市场监督管理局流通抽样检验工作汇总对话框 -->
+    <el-dialog :title="title" v-model="open" width="500px" append-to-body>
+      <el-form ref="samplingRef" :model="form" :rules="rules" label-width="80px">
+        <el-form-item label="抽查领域" prop="checkArea">
+          <el-input v-model="form.checkArea" placeholder="请输入抽查领域" />
+        </el-form-item>
+        <el-form-item label="抽样单位" prop="samplingUnit">
+          <el-input v-model="form.samplingUnit" placeholder="请输入抽样单位" />
+        </el-form-item>
+        <el-form-item label="被抽样单位所在地市" prop="locationCityOfTheSampledUnit">
+          <el-input v-model="form.locationCityOfTheSampledUnit" placeholder="请输入被抽样单位所在地市" />
+        </el-form-item>
+        <el-form-item label="食品大类" prop="foodCategory">
+          <el-input v-model="form.foodCategory" placeholder="请输入食品大类" />
+        </el-form-item>
+        <el-form-item label="食品亚类" prop="foodSubcategory">
+          <el-input v-model="form.foodSubcategory" placeholder="请输入食品亚类" />
+        </el-form-item>
+        <el-form-item label="食品次亚类" prop="foodSubsubcategory">
+          <el-input v-model="form.foodSubsubcategory" placeholder="请输入食品次亚类" />
+        </el-form-item>
+        <el-form-item label="报告书编号" prop="reportNumber">
+          <el-input v-model="form.reportNumber" placeholder="请输入报告书编号" />
+        </el-form-item>
+        <el-form-item label="抽样单号" prop="samplingNumber">
+          <el-input v-model="form.samplingNumber" placeholder="请输入抽样单号" />
+        </el-form-item>
+        <el-form-item label="产品名称" prop="productName">
+          <el-input v-model="form.productName" placeholder="请输入产品名称" />
+        </el-form-item>
+        <el-form-item label="规格型号" prop="specificationModel">
+          <el-input v-model="form.specificationModel" placeholder="请输入规格型号" />
+        </el-form-item>
+        <el-form-item label="商标" prop="brand">
+          <el-input v-model="form.brand" placeholder="请输入商标" />
+        </el-form-item>
+        <el-form-item label="生产日期" prop="productionDate">
+          <el-date-picker clearable
+                          v-model="form.productionDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择生产日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="抽样日期" prop="samplingDate">
+          <el-date-picker clearable
+                          v-model="form.samplingDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          placeholder="请选择抽样日期">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="受检单位" prop="inspectedUnit">
+          <el-input v-model="form.inspectedUnit" placeholder="请输入受检单位" />
+        </el-form-item>
+        <el-form-item label="受检单位地址" prop="inspectedUnitAddress">
+          <el-input v-model="form.inspectedUnitAddress" placeholder="请输入受检单位地址" />
+        </el-form-item>
+        <el-form-item label="受检单位联系人" prop="inspectedUnitContactPerson">
+          <el-input v-model="form.inspectedUnitContactPerson" placeholder="请输入受检单位联系人" />
+        </el-form-item>
+        <el-form-item label="受检单位电话" prop="inspectedUnitPhone">
+          <el-input v-model="form.inspectedUnitPhone" placeholder="请输入受检单位电话" />
+        </el-form-item>
+        <el-form-item label="生产单位" prop="productionUnit">
+          <el-input v-model="form.productionUnit" placeholder="请输入生产单位" />
+        </el-form-item>
+        <el-form-item label="生产单位地址" prop="productionUnitAddress">
+          <el-input v-model="form.productionUnitAddress" placeholder="请输入生产单位地址" />
+        </el-form-item>
+        <el-form-item label="检验项目" prop="testItem">
+          <el-input v-model="form.testItem" placeholder="请输入检验项目" />
+        </el-form-item>
+        <el-form-item label="检验结果" prop="testResult">
+          <el-input v-model="form.testResult" placeholder="请输入检验结果" />
+        </el-form-item>
+        <el-form-item label="不合格项目" prop="unqualifiedItem">
+          <el-input v-model="form.unqualifiedItem" placeholder="请输入不合格项目" />
+        </el-form-item>
+        <el-form-item label="标准要求" prop="standardRequirements">
+          <el-input v-model="form.standardRequirements" placeholder="请输入标准要求" />
+        </el-form-item>
+        <el-form-item label="实测值" prop="measuredValue">
+          <el-input v-model="form.measuredValue" placeholder="请输入实测值" />
+        </el-form-item>
+        <el-form-item label="项目单位" prop="itemUnit">
+          <el-input v-model="form.itemUnit" placeholder="请输入项目单位" />
+        </el-form-item>
+        <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode">
+          <el-input v-model="form.unifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
+        </el-form-item>
+        <el-form-item label="任务性质" prop="taskNature">
+          <el-input v-model="form.taskNature" placeholder="请输入任务性质" />
+        </el-form-item>
+        <el-form-item label="备注" prop="remark">
+          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <div class="dialog-footer">
+          <el-button type="primary" @click="submitForm">确 定</el-button>
+          <el-button @click="cancel">取 消</el-button>
+        </div>
+      </template>
+    </el-dialog>
+  </div>
+</template>
+
+<script setup name="Sampling">
+import { listSampling, getSampling, delSampling, addSampling, updateSampling } from "@/api/basicData/sampling";
+import {reactive} from "vue";
+import {getToken} from "../../../utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "../../../utils/likeQueryMethod";
+
+const { proxy } = getCurrentInstance();
+
+const samplingList = ref([]);
+const open = ref(false);
+const loading = ref(true);
+const showSearch = ref(true);
+const ids = ref([]);
+const single = ref(true);
+const multiple = ref(true);
+const total = ref(0);
+const title = ref("");
+
+const upload = reactive({
+  // 是否显示弹出层(用户导入)
+  open: false,
+  // 弹出层标题(用户导入)
+  title: '',
+  // 是否禁用上传
+  isUploading: false,
+  // 设置上传的请求头部
+  headers: {Authorization: getToken()},
+  // 上传的地址
+  url: import.meta.env.VITE_APP_BASE_API + '/crmCirculationSampling/importData'
+})
+const handleFileSuccess = (e)=>{
+  if(e.code == 200){
+    ElMessage({
+      type:"success",
+      message:e.msg
+    })
+    getList()
+
+  }
+}
+function submitFileForm() {
+  proxy.$refs['uploadRef'].submit()
+  upload.open = false;
+  // setTimeout(getList,1000)
+}
+function handleImport() {
+
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSampling(toServerObj).then(res=>{
+    if(res.records.length >0){
+      ElMessage({
+        type:'warning',
+        message:'当前已经有数据,请删除后再导入'
+      })
+      return
+    }else {
+      upload.title = '用户导入'
+      upload.open = true
+    }
+  })
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    checkArea: null,
+    samplingUnit: null,
+    locationCityOfTheSampledUnit: null,
+    foodCategory: null,
+    foodSubcategory: null,
+    foodSubsubcategory: null,
+    foodType: null,
+    reportNumber: null,
+    samplingNumber: null,
+    productName: null,
+    specificationModel: null,
+    brand: null,
+    productionDate: null,
+    samplingDate: null,
+    inspectedUnit: null,
+    inspectedUnitAddress: null,
+    inspectedUnitContactPerson: null,
+    inspectedUnitPhone: null,
+    productionUnit: null,
+    productionUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    unqualifiedItem: null,
+    standardRequirements: null,
+    measuredValue: null,
+    itemUnit: null,
+    unifiedSocialCreditCode: '',
+    taskNature: null,
+  },
+  rules: {
+  }
+});
+
+const { queryParams, form, rules } = toRefs(data);
+
+/** 查询市场监督管理局流通抽样检验工作汇总列表 */
+function getList() {
+  loading.value = true;
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize);
+  listSampling(toServerObj).then(response => {
+    samplingList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+// 取消按钮
+function cancel() {
+  open.value = false;
+  reset();
+}
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    checkArea: null,
+    samplingUnit: null,
+    locationCityOfTheSampledUnit: null,
+    foodCategory: null,
+    foodSubcategory: null,
+    foodSubsubcategory: null,
+    foodType: null,
+    reportNumber: null,
+    samplingNumber: null,
+    productName: null,
+    specificationModel: null,
+    brand: null,
+    productionDate: null,
+    samplingDate: null,
+    inspectedUnit: null,
+    inspectedUnitAddress: null,
+    inspectedUnitContactPerson: null,
+    inspectedUnitPhone: null,
+    productionUnit: null,
+    productionUnitAddress: null,
+    testItem: null,
+    testResult: null,
+    unqualifiedItem: null,
+    standardRequirements: null,
+    measuredValue: null,
+    itemUnit: null,
+    unifiedSocialCreditCode: '',
+    taskNature: null,
+    remark: null,
+    createTime: null,
+    updateTime: null
+  };
+  proxy.resetForm("samplingRef");
+}
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList();
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  proxy.resetForm("queryRef");
+  handleQuery();
+}
+
+// 多选框选中数据
+function handleSelectionChange(selection) {
+  ids.value = selection.map(item => item.id);
+  single.value = selection.length != 1;
+  multiple.value = !selection.length;
+}
+
+/** 新增按钮操作 */
+function handleAdd() {
+  reset();
+  open.value = true;
+  title.value = "添加市场监督管理局流通抽样检验工作汇总";
+}
+
+/** 修改按钮操作 */
+function handleUpdate(row) {
+  reset();
+  const id = row.id || ids.value
+  getSampling(id).then(response => {
+    form.value = response.data;
+    open.value = true;
+    title.value = "修改市场监督管理局流通抽样检验工作汇总";
+  });
+}
+
+/** 提交按钮 */
+function submitForm() {
+  proxy.$refs["samplingRef"].validate(valid => {
+    if (valid) {
+      if (form.value.id != null) {
+        updateSampling(form.value).then(response => {
+          proxy.$modal.msgSuccess("修改成功");
+          open.value = false;
+          getList();
+        });
+      } else {
+        addSampling(form.value).then(response => {
+          proxy.$modal.msgSuccess("新增成功");
+          open.value = false;
+          getList();
+        });
+      }
+    }
+  });
+}
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delSampling();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+  // const ids = row.id || ids.value;
+  // proxy.$modal.confirm('是否确认删除市场监督管理局流通抽样检验工作汇总编号为"' + ids + '"的数据项?').then(function() {
+  //   return delSampling(ids);
+  // }).then(() => {
+  //   getList();
+  //   proxy.$modal.msgSuccess("删除成功");
+  // }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmCirculationSampling/exportData', {
+    ...queryParams.value
+  }, `市场监督管理局流通抽样检验工作汇总_${new Date().getTime()}.xlsx`)
+}
+
+getList();
+</script>

+ 109 - 6
src/views/home/index.vue

@@ -1,11 +1,28 @@
 <template>
-  <div class="user__info">
-    <!-- <el-image :src="imgUrl" alt="" /> -->
-    <div class="user__info--right">
-      <span>管理员:</span>
-      <span>{{ username }}</span>
-      <div>怀化市高新区企业信用信息分级分类管理平台</div>
+  <div class="homeContainer">
+    <div class="carouselContainer">
+      <div>
+        <el-carousel :interval="5000" arrow="always" :height="'500px'">
+          <el-carousel-item v-for="item in 4" :key="item">
+            <img src="src/assets/images/login-background.jpg" style="width: 50vw;" />
+          </el-carousel-item>
+        </el-carousel>
+      </div>
     </div>
+    <div class="listContainer" ref="listContainer">
+      <div class="listContent" ref="listContent" :style="{transform:'translateY('+moveValue+'px)'}">
+        <div class="lsitItem" v-for="(item,index) in homeList" :key="index">{{item.enterpriseName}}</div>
+      </div>
+    </div>
+    <div class="footerContianer">
+      <div class="footerItem"></div>
+      <div class="footerItem"></div>
+      <div class="footerItem"></div>
+      <div class="footerItem"></div>
+      <div class="footerItem"></div>
+    </div>
+
+
   </div>
 </template>
 
@@ -14,7 +31,40 @@
 
 // const imgUrl = new URL('../../assets/logo/logo.png', import.meta.url).href
 
+import {nextTick, onMounted, onUnmounted, watch} from "vue";
+import {getHomeList} from "../../api/home/home";
+
 const username = localStorage.getItem('username')
+const moveList = ()=>{
+  // console.log(listContent.value.offsetHeight);
+  // console.log(listContainer.value.offsetHeight);
+  console.log(limitRange.value);
+  if(moveValue.value<=-limitRange.value){
+    moveValue.value = 0;
+  }
+  moveValue.value = moveValue.value - 1;
+}
+const listContent = ref(null);
+const listContainer = ref(null);
+const limitRange = ref(0);
+const moveValue = ref(0);
+const homeList = ref([]);
+
+onMounted(()=>{
+  getHomeList().then(res=>{
+    if(res.code == 200){
+      homeList.value = res.data;
+      nextTick(()=>{
+        limitRange.value = listContent.value.offsetHeight-listContainer.value.offsetHeight;
+      })
+    }
+  })
+})
+let interval = setInterval(moveList,16.6);
+onUnmounted(()=>{
+  interval = null;
+})
+
 </script>
 
 <style scoped lang="scss">
@@ -32,4 +82,57 @@ const username = localStorage.getItem('username')
     }
   }
 }
+.homeContainer{
+  margin-top: 30px;
+  display: flex;
+  flex-wrap: wrap;
+  .carouselContainer{
+    width: 50vw;
+  }
+  .listContainer{
+    height: 500px;
+    width: 30vw;
+    overflow: hidden;
+    .listContent{
+      //height: 100px;
+      .lsitItem{
+        width: 100%;
+        height: 40px;
+        margin-bottom: 10px;
+        line-height: 40px;
+        text-align: center;
+        //border: 1px solid #8492a6;
+        box-shadow: #dae2e2 0 0 5px;
+        border-radius: 10px;
+        background-color: #e5effb;
+        cursor: pointer;
+      }
+    }
+  }
+  .footerContianer{
+    display: flex;
+    margin-top: 70px;
+    .footerItem{
+      margin: 10px;
+      background-color: green;
+      width: 300px;
+      height: 200px;
+    }
+  }
+}
+.el-carousel__item h3 {
+  color: #475669;
+  opacity: 0.75;
+  line-height: 300px;
+  margin: 0;
+  text-align: center;
+}
+
+.el-carousel__item:nth-child(2n) {
+  background-color: #99a9bf;
+}
+
+.el-carousel__item:nth-child(2n + 1) {
+  background-color: #d3dce6;
+}
 </style>