Forráskód Böngészése

fixed:项目推进

sdjakl 1 éve
szülő
commit
dd66bb25d5
48 módosított fájl, 4052 hozzáadás és 876 törlés
  1. 3 3
      .env.development
  2. 1 1
      .env.production
  3. 1 1
      .env.staging
  4. 1 1
      index.html
  5. 3 3
      package.json
  6. 49 0
      src/api/basicData/accidents.js
  7. 49 0
      src/api/basicData/account.js
  8. 49 0
      src/api/basicData/account2.js
  9. 5 8
      src/api/basicData/confirmation.js
  10. 49 0
      src/api/basicData/dishonesty.js
  11. 1 0
      src/api/basicData/enterprises2.js
  12. 49 0
      src/api/basicData/execution.js
  13. 49 0
      src/api/basicData/executor3.js
  14. 49 0
      src/api/basicData/information27.js
  15. 49 0
      src/api/basicData/information28.js
  16. 49 0
      src/api/basicData/materials.js
  17. 2 2
      src/api/companyDetail.js
  18. 6 1
      src/api/home/home.js
  19. 1 1
      src/layout/components/Sidebar/Logo.vue
  20. 11 5
      src/views/CCInformation/GIRelease/index.vue
  21. 98 7
      src/views/CCInformation/HQEReleased/index.vue
  22. 47 21
      src/views/CEEnterprise/ARQuery/index.vue
  23. 22 5
      src/views/CEEnterprise/CERating/index.vue
  24. 49 22
      src/views/CEEnterprise/companydetail/index.vue
  25. 362 32
      src/views/CEEnterprise/companydetail/map/index.js
  26. 112 326
      src/views/basicData/HetcData/CJInformation/index.vue
  27. 1 1
      src/views/basicData/HetcData/TOTECInformation/index.vue
  28. 2 2
      src/views/basicData/ManageAbility/BranchInformation/index.vue
  29. 301 0
      src/views/basicData/OpeCapability/hydmxb/index.vue
  30. 319 0
      src/views/basicData/OpeCapability/kjdmxb/index.vue
  31. 143 331
      src/views/basicData/confirmation/index.vue
  32. 0 6
      src/views/basicData/cwxx/cwbbxx/index.vue
  33. 2 2
      src/views/basicData/cwxx/nzsczthyxx/index.vue
  34. 300 0
      src/views/basicData/ggxyjl/jnlyxx/tgxjclxx/index.vue
  35. 39 67
      src/views/basicData/ggxyjl/sfcpxx/bzxr/index.vue
  36. 319 0
      src/views/basicData/ggxyjl/sfcpxx/sfsssxbzxr/index.vue
  37. 307 0
      src/views/basicData/ggxyjl/xzjgxx/gazacfxx/index.vue
  38. 343 0
      src/views/basicData/ggxyjl/xzjgxx/mzglsx/index.vue
  39. 1 1
      src/views/basicData/ggxyjl/xzjgxx/xzcfxx/qtcf5/index.vue
  40. 4 4
      src/views/basicData/ggxyjl/xzjgxx/xzcfxx/zlzg/index.vue
  41. 298 0
      src/views/basicData/ggxyjl/xzjgxx/zdaqscsgxx/index.vue
  42. 14 13
      src/views/basicData/penalty/index.vue
  43. 16 1
      src/views/basicData/qyzjl/jscq/gxjsqy/index.vue
  44. 440 0
      src/views/basicData/qyzjl/jscq/gxqqyxxyl/index.vue
  45. 1 1
      src/views/basicData/result/index.vue
  46. 33 5
      src/views/home/index.vue
  47. 1 1
      src/views/login.vue
  48. 2 2
      vite.config.js

+ 3 - 3
.env.development

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = '怀化高新区企业信用信息分级分类管理平台'
+VITE_APP_TITLE = '怀化高新区企业信用分级分类管理平台'
 
 # 开发环境配置
 VITE_APP_ENV = 'development'
@@ -7,5 +7,5 @@ VITE_APP_ENV = 'development'
 # 桃江管理系统/开发环境
 VITE_APP_BASE_API = '/dev-api'
 
-# VITE_APP_BASE_URL = 'http://192.168.110.13:20002'
-VITE_APP_BASE_URL = 'http://192.168.110.235:20002'
+VITE_APP_BASE_URL = 'http://192.168.110.13:20002'
+

+ 1 - 1
.env.production

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = 怀化高新区企业信用信息分级分类管理平台
+VITE_APP_TITLE = 怀化高新区企业信用分级分类管理平台
 
 # 生产环境配置
 VITE_APP_ENV = 'production'

+ 1 - 1
.env.staging

@@ -1,5 +1,5 @@
 # 页面标题
-VITE_APP_TITLE = 怀化高新区企业信用信息分级分类管理平台
+VITE_APP_TITLE = 怀化高新区企业信用分级分类管理平台
 
 # 生产环境配置
 VITE_APP_ENV = 'staging'

+ 1 - 1
index.html

@@ -18,7 +18,7 @@
     <script src="//mapv.baidu.com/build/mapv.min.js"></script>
     <script src="https://code.bdstatic.com/npm/mapvgl@1.0.0-beta.189/dist/mapvgl.min.js"></script>
 
-    <title>怀化高新区企业信用信息分级分类管理平台</title>
+    <title>怀化高新区企业信用分级分类管理平台</title>
     <!--[if lt IE 11
       ]><script>
         window.location.href = "/html/ie.html";

+ 3 - 3
package.json

@@ -1,8 +1,8 @@
 {
-  "name": "怀化高新区企业信用信息分级分类管理平台",
+  "name": "怀化高新区企业信用分级分类管理平台",
   "version": "3.8.1",
-  "description": "怀化高新区企业信用信息分级分类管理平台",
-  "author": "怀化高新区企业信用信息分级分类管理平台",
+  "description": "怀化高新区企业信用分级分类管理平台",
+  "author": "怀化高新区企业信用分级分类管理平台",
   "license": "MIT",
   "scripts": {
     "dev": "vite",

+ 49 - 0
src/api/basicData/accidents.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询重大安全生产事故通报信息列表
+export function listAccidents(query) {
+    return request({
+        url: '/crmMajorWorkSafetyAccidents/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询重大安全生产事故通报信息详细
+export function getAccidents(id) {
+    return request({
+        url: '/crmMajorWorkSafetyAccidents/' + id,
+        method: 'get'
+    })
+}
+
+// 新增重大安全生产事故通报信息
+export function addAccidents(data) {
+    return request({
+        url: '/crmMajorWorkSafetyAccidents',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改重大安全生产事故通报信息
+export function updateAccidents(data) {
+    return request({
+        url: '/crmMajorWorkSafetyAccidents',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除重大安全生产事故通报信息
+export function delAccidents(id) {
+    return request({
+        url: '/crmMajorWorkSafetyAccidents/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delAccidentsBatch(ids) {
+    console.log(ids);
+    return request.post('/crmMajorWorkSafetyAccidents/delete',ids)
+}

+ 49 - 0
src/api/basicData/account.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询惠园贷台账信息列表
+export function listAccount(query) {
+    return request({
+        url: '/crmHuiparkLoanAccount/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询惠园贷台账信息详细
+export function getAccount(id) {
+    return request({
+        url: '/crmHuiparkLoanAccount/' + id,
+        method: 'get'
+    })
+}
+
+// 新增惠园贷台账信息
+export function addAccount(data) {
+    return request({
+        url: '/crmHuiparkLoanAccount',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改惠园贷台账信息
+export function updateAccount(data) {
+    return request({
+        url: '/crmHuiparkLoanAccount',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除惠园贷台账信息
+export function delAccount(id) {
+    return request({
+        url: '/crmHuiparkLoanAccount/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delAccountBatch(ids) {
+    console.log(ids);
+    return request.post('/crmHuiparkLoanAccount/delete',ids)
+}

+ 49 - 0
src/api/basicData/account2.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询科技贷台账信息列表
+export function listAccount(query) {
+    return request({
+        url: '/crmTechLoanAccount/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询科技贷台账信息详细
+export function getAccount(id) {
+    return request({
+        url: '/crmTechLoanAccount/' + id,
+        method: 'get'
+    })
+}
+
+// 新增科技贷台账信息
+export function addAccount(data) {
+    return request({
+        url: '/crmTechLoanAccount',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改科技贷台账信息
+export function updateAccount(data) {
+    return request({
+        url: '/crmTechLoanAccount',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除科技贷台账信息
+export function delAccount(id) {
+    return request({
+        url: '/crmTechLoanAccount/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delAccountBatch(ids) {
+    console.log(ids);
+    return request.post('/crmTechLoanAccount/delete',ids)
+}

+ 5 - 8
src/api/basicData/confirmation.js

@@ -12,7 +12,7 @@ export function listConfirmation(query) {
 // 查询行政确认详细
 export function getConfirmation(id) {
   return request({
-    url: '/basicData/confirmation/' + id,
+    url: '/crmAdministrativeConfirmation/' + id,
     method: 'get'
   })
 }
@@ -20,7 +20,7 @@ export function getConfirmation(id) {
 // 新增行政确认
 export function addConfirmation(data) {
   return request({
-    url: '/basicData/confirmation',
+    url: '/crmAdministrativeConfirmation',
     method: 'post',
     data: data
   })
@@ -29,24 +29,21 @@ export function addConfirmation(data) {
 // 修改行政确认
 export function updateConfirmation(data) {
   return request({
-    url: '/basicData/confirmation',
+    url: '/crmAdministrativeConfirmation',
     method: 'put',
     data: data
   })
 }
 
 // 删除行政确认
-export function delConfirmation() {
+export function delConfirmation(id) {
   return request({
     url: '/crmAdministrativeConfirmation/deleteAll',
     method: 'delete'
   })
 }
-
-
 // 批量删除行政许可
 export function delConfirmationBatch(ids) {
   console.log(ids);
   return request.post('/crmAdministrativeConfirmation/delete',ids)
-}
-
+}

+ 49 - 0
src/api/basicData/dishonesty.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询民政管理失信列表
+export function listDishonesty(query) {
+    return request({
+        url: '/crmCivilManagementDishonesty/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询民政管理失信详细
+export function getDishonesty(id) {
+    return request({
+        url: '/crmCivilManagementDishonesty/' + id,
+        method: 'get'
+    })
+}
+
+// 新增民政管理失信
+export function addDishonesty(data) {
+    return request({
+        url: '/crmCivilManagementDishonesty',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改民政管理失信
+export function updateDishonesty(data) {
+    return request({
+        url: '/crmCivilManagementDishonesty',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除民政管理失信
+export function delDishonesty(id) {
+    return request({
+        url: '/crmCivilManagementDishonesty/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delDishonestyBatch(ids) {
+    console.log(ids);
+    return request.post('/crmCivilManagementDishonesty/delete',ids)
+}

+ 1 - 0
src/api/basicData/enterprises2.js

@@ -42,3 +42,4 @@ export function delEnterprises(id) {
     method: 'delete'
   })
 }
+

+ 49 - 0
src/api/basicData/execution.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询被执行人信息列表
+export function listExecution(query) {
+    return request({
+        url: '/crmSubjectToExecution/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询被执行人信息详细
+export function getExecution(id) {
+    return request({
+        url: '/crmSubjectToExecution/' + id,
+        method: 'get'
+    })
+}
+
+// 新增被执行人信息
+export function addExecution(data) {
+    return request({
+        url: '/crmSubjectToExecution',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改被执行人信息
+export function updateExecution(data) {
+    return request({
+        url: '/crmSubjectToExecution',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除被执行人信息
+export function delExecution(id) {
+    return request({
+        url: '/crmSubjectToExecution/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delExecutionBatch(ids) {
+    console.log(ids);
+    return request.post('/crmSubjectToExecution/delete',ids)
+}

+ 49 - 0
src/api/basicData/executor3.js

@@ -0,0 +1,49 @@
+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: '/crmDishonestExecutor/' + id,
+        method: 'get'
+    })
+}
+
+// 新增司法涉诉-失信被执行人
+export function addExecutor(data) {
+    return request({
+        url: '/crmDishonestExecutor',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改司法涉诉-失信被执行人
+export function updateExecutor(data) {
+    return request({
+        url: '/crmDishonestExecutor',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除司法涉诉-失信被执行人
+export function delExecutor(id) {
+    return request({
+        url: '/crmDishonestExecutor/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delExecutorBatch(ids) {
+    console.log(ids);
+    return request.post('/crmDishonestExecutor/delete',ids)
+}

+ 49 - 0
src/api/basicData/information27.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询企业信息列表
+export function listInformation(query) {
+    return request({
+        url: '/crmEnterpriseInformation/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询企业信息详细
+export function getInformation(id) {
+    return request({
+        url: '/crmEnterpriseInformation/' + id,
+        method: 'get'
+    })
+}
+
+// 新增企业信息
+export function addInformation(data) {
+    return request({
+        url: '/crmEnterpriseInformation',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改企业信息
+export function updateInformation(data) {
+    return request({
+        url: '/crmEnterpriseInformation',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除企业信息
+export function delInformation(id) {
+    return request({
+        url: '/crmEnterpriseInformation/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delInformationBatch(ids) {
+    console.log(ids);
+    return request.post('/crmEnterpriseInformation/delete',ids)
+}

+ 49 - 0
src/api/basicData/information28.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询公安治安处罚信息列表
+export function listInformation(query) {
+    return request({
+        url: '/crmPublicSecurityPenaltyInformation/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询公安治安处罚信息详细
+export function getInformation(id) {
+    return request({
+        url: '/crmPublicSecurityPenaltyInformation/' + id,
+        method: 'get'
+    })
+}
+
+// 新增公安治安处罚信息
+export function addInformation(data) {
+    return request({
+        url: '/crmPublicSecurityPenaltyInformation',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改公安治安处罚信息
+export function updateInformation(data) {
+    return request({
+        url: '/crmPublicSecurityPenaltyInformation',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除公安治安处罚信息
+export function delInformation(id) {
+    return request({
+        url: '/crmPublicSecurityPenaltyInformation/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delInformationBatch(ids) {
+    console.log(ids);
+    return request.post('/crmPublicSecurityPenaltyInformation/delete',ids)
+}

+ 49 - 0
src/api/basicData/materials.js

@@ -0,0 +1,49 @@
+import request from '@/utils/request'
+
+// 查询虚假材料申报信息列表
+export function listMaterials(query) {
+    return request({
+        url: '/crmFraudulentMaterials/findByPage',
+        method: 'get',
+        params: query
+    })
+}
+
+// 查询虚假材料申报信息详细
+export function getMaterials(id) {
+    return request({
+        url: '/crmFraudulentMaterials/' + id,
+        method: 'get'
+    })
+}
+
+// 新增虚假材料申报信息
+export function addMaterials(data) {
+    return request({
+        url: '/crmFraudulentMaterials',
+        method: 'post',
+        data: data
+    })
+}
+
+// 修改虚假材料申报信息
+export function updateMaterials(data) {
+    return request({
+        url: '/crmFraudulentMaterials',
+        method: 'put',
+        data: data
+    })
+}
+
+// 删除虚假材料申报信息
+export function delMaterials(id) {
+    return request({
+        url: '/crmFraudulentMaterials/deleteAll',
+        method: 'delete'
+    })
+}
+// 批量删除行政许可
+export function delMaterialsBatch(ids) {
+    console.log(ids);
+    return request.post('/crmFraudulentMaterials/delete',ids)
+}

+ 2 - 2
src/api/companyDetail.js

@@ -1,9 +1,9 @@
 import request from "@/utils/request";
 
-export const getCompanyDetail = (id) => {
+export const getCompanyDetail = (unifiedSocialCreditCode) => {
   return request.get('/crmHighTechZoneEnterprises/enterpriseDetails',{
     params:{
-        unifiedSocialCreditCode:'91431200MA4TC4MB7J'
+        unifiedSocialCreditCode
     }
   })
 }

+ 6 - 1
src/api/home/home.js

@@ -1,5 +1,10 @@
 import request from "../../utils/request";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
 
 export const getHomeList = ()=>{
-    return request.get('/crmHighTechZoneEnterprises/getList');
+    return request({
+        url:'/crmHighTechZoneEnterprises/getCreditScoreList',
+        method:'get',
+        params:likeQueryMethod('unified_social_credit_code','',1,500)
+    });
 }

+ 1 - 1
src/layout/components/Sidebar/Logo.vue

@@ -43,7 +43,7 @@ defineProps({
   }
 })
 
-const title = ref('怀化高新区企业信用信息分级分类管理平台')
+const title = ref('怀化高新区企业信用分级分类管理平台')
 const store = useStore()
 const sideTheme = computed(() => store.state.settings.sideTheme)
 </script>

+ 11 - 5
src/views/CCInformation/GIRelease/index.vue

@@ -48,7 +48,7 @@
       <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="releaseList" @selection-change="handleSelectionChange">
+    <el-table v-loading="loading" :data="releaseList" 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="title" />
@@ -123,6 +123,9 @@
                           placeholder="请选择发布时间">
           </el-date-picker>
         </el-form-item>
+        <el-form-item label="数据来源" prop="dataSource">
+          <el-input v-model="form.dataSource" placeholder="请输入数据来源" />
+        </el-form-item>
         <el-form-item label="内容">
           <el-input v-model="form.content" :min-height="192" type="textarea"/>
           <el-upload
@@ -270,7 +273,8 @@ const data = reactive({
     specialColumn: null,
     date: null,
     content: null,
-    files:[]
+    files:[],
+    dataSource:null
   },
   rules: {
   }
@@ -307,7 +311,8 @@ function reset() {
     createTime: null,
     updateBy: null,
     updateTime: null,
-    files:[]
+    files:[],
+    dataSource:null
   };
   proxy.resetForm("releaseRef");
 }
@@ -344,8 +349,9 @@ function handleUpdate(row) {
   reset();
   const id = row.id || ids.value
   getRelease(id).then(response => {
-    form.value = response.data.data;
-    fileList.value = response.data.data.files.map(item=>{
+    console.log(response);
+    form.value = response.data;
+    fileList.value = response.data.files.map(item=>{
       return{
         name:item.fileOriginalName,
         url: import.meta.env.VITE_APP_BASE_API + item.fileUrl,

+ 98 - 7
src/views/CCInformation/HQEReleased/index.vue

@@ -1,9 +1,100 @@
 <template>
-    <div>
-        信用优质企业名单发布
+  <div class="app-container">
+    <el-row :gutter="20">
+      <!--用户数据-->
+      <el-col style="display:flex" :span="20" :xs="24">
+        <el-form :model="queryParams" ref="queryRef" :inline="true">
+          <el-form-item label="企业信用代码" prop="unifiedSocialCreditCode">
+            <el-input v-model="queryParams.unifiedSocialCreditCode" placeholder="请输入企业信用代码" clearable
+                      style="width: 240px" />
+          </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-col>
+    </el-row>
+    <el-table stripe :data="tableData" style="width: 100%" height="710">
+      <el-table-column prop="enterpriseName" label="企业名称">
+      </el-table-column>
+      <el-table-column label="企业信用代码">
+        <template #default="scope">
+          <el-link type="primary" @click="handleClick(scope.row)">{{ scope.row.unifiedSocialCreditCode }}</el-link>
+        </template>
+      </el-table-column>
+      <!--      <el-table-column prop="total" label="总数">-->
+      <!--      </el-table-column>-->
+      <el-table-column label="总分" align="center" prop="total">
+        <template #default="scope">
+          {{ scope.row.total.toFixed(2) }}
+        </template>
+      </el-table-column>
+      <el-table-column prop="grade" label="等级">
+      </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>
-  
+  </div>
+</template>
+
+<script setup name="getCerating">
+// import { getToken } from '@/utils/auth'
+import { getCreditScoreList } from '@/api/ceenterprise/cerating'
+import {useRouter} from "vue-router";
+const router = useRouter();
+const tableData = ref([])
+const handleClick = (row)=>{
+  const {unifiedSocialCreditCode, enterpriseName} = row
+  router.push({
+    path: '/CEEnterprise/companydetail',
+    query: {
+      unifiedSocialCreditCode,
+      enterpriseName
+    }
+  })
+}
+
+const total = ref(0)
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    unifiedSocialCreditCode: '',
+    grade:null,
+    total:null,
+    condition:'AAA,AA,A'
+    // userName: undefined,
+    // phonenumber: undefined,
+    // status: undefined,
+    // deptId: store.state.user.userInfo.deptId
+  },
+})
+const { queryParams } = toRefs(data)
+
+
+/** 搜索按钮操作 */
+function handleQuery() {
+  queryParams.value.pageNum = 1;
+  getList()
+}
+
+/** 重置按钮操作 */
+function resetQuery() {
+  queryParams.value.unifiedSocialCreditCode = "";
+  handleQuery()
+}
+
+/** 查询用户列表 */
+function getList() {
+  getCreditScoreList(queryParams.value).then((res) => {
+    tableData.value = res.data.result
+    total.value = res.data.totalSize
+  })
+}
+getList()
+</script>

+ 47 - 21
src/views/CEEnterprise/ARQuery/index.vue

@@ -16,24 +16,37 @@
     </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="enterpriseName" width="260" />
-      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200" />
-      <el-table-column label="财务总得分(满分10分)" align="center" prop="financialScore" width="170" />
-      <el-table-column label="参考信用评价得分(满分10分)" align="center" prop="referenceCreditRatingScore" width="220" />
-      <el-table-column label="行政处罚得分(满分20分)" align="center" prop="administrativePenaltyScore" width="220" />
-      <el-table-column label="行政监管、践诺履约得分(满分20分)" align="center" prop="administrativeSupervisionScore" width="240" />
-      <el-table-column label="企业竞争力得分(满分30分)" align="center" prop="enterpriseCompetitivenessScore" width="220" />
-      <el-table-column label="司法裁判得分(满分10分)" align="center" prop="judicialScore" width="220" />
-      <el-table-column label="总分" align="center" prop="total" />
-      <el-table-column label="评级" align="center" prop="grade" />
+      <!--      <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" width="260"/>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
+      <el-table-column label="企业竞争力得分(满分30分)" align="center" prop="enterpriseCompetitivenessScore" width="220"/>
+      <el-table-column label="行政监管、践诺履约得分(满分20分)" align="center" prop="administrativeSupervisionScore" width="240"/>
+      <el-table-column label="行政处罚得分(满分20分)" align="center" prop="administrativePenaltyScore" width="220"/>
+      <el-table-column label="司法裁判得分(满分10分)" align="center" prop="judicialScore" width="220"/>
+      <el-table-column label="财务总得分(满分10分)" align="center" prop="financialScore" width="170">
+        <template #default="scope">
+          {{ scope.row.financialScore.toFixed(2) }}
+        </template>
+      </el-table-column>
+      <el-table-column label="参考信用评价得分(满分10分)" align="center" prop="referenceCreditRatingScore" width="220"/>
+      <el-table-column label="总分" align="center" prop="total">
+        <template #default="scope">
+          {{ scope.row.total.toFixed(2) }}
+        </template>
+      </el-table-column>
+      <el-table-column label="评级" align="center" prop="grade"/>
+      <el-table-column label="操作" align="center" width="200">
+        <template #default="scope">
+          <el-button type="primary" @click="handleDownloadReport(scope.row)">下载企业信用报告</el-button>
+        </template>
+      </el-table-column>
     </el-table>
     <div style="position: fixed;bottom: 20px;right: 10px;">
       <el-pagination
           :page-sizes="[10, 20, 30, 50]"
-          v-model:page-size = "queryParams.pageSize"
-          v-model:current-page = "queryParams.pageNum"
+          v-model:page-size="queryParams.pageSize"
+          v-model:current-page="queryParams.pageNum"
           layout="total, sizes, prev, pager, next, jumper"
           @current-change="getList"
           :total="total"
@@ -44,10 +57,16 @@
 </template>
 
 <script setup name="Enterprises">
-import { listEnterprises, getEnterprises, delEnterprises, addEnterprises, updateEnterprises } from "@/api/basicData/enterprises2";
+import {
+  listEnterprises,
+  getEnterprises,
+  delEnterprises,
+  addEnterprises,
+  updateEnterprises
+} from "@/api/basicData/enterprises2";
 import {likeQueryMethod} from "../../../utils/likeQueryMethod";
 
-const { proxy } = getCurrentInstance();
+const {proxy} = getCurrentInstance();
 
 const enterprisesList = ref([]);
 const open = ref(false);
@@ -59,6 +78,12 @@ const multiple = ref(true);
 const total = ref(0);
 const title = ref("");
 
+const handleDownloadReport = (rows) => {
+  proxy.download('/crmHighTechZoneEnterprises/download?unifiedSocialCreditCode='+rows.unifiedSocialCreditCode, {
+    ...rows.unifiedSocialCreditCode
+  }, `${rows.enterpriseName}_${new Date().getTime()}.docx`)
+}
+
 const data = reactive({
   form: {},
   queryParams: {
@@ -71,12 +96,12 @@ const data = reactive({
   },
   rules: {
     enterpriseName: [
-      { required: true, message: "企业名称不能为空", trigger: "blur" }
+      {required: true, message: "企业名称不能为空", trigger: "blur"}
     ],
   }
 });
 
-const { queryParams, form, rules } = toRefs(data);
+const {queryParams, form, rules} = toRefs(data);
 
 /** 查询高新区企业(119家)列表 */
 function getList() {
@@ -84,7 +109,7 @@ function getList() {
   let toServerObj = {
     pageNum: queryParams.value.pageNum,
     pageSize: queryParams.value.pageSize,
-    unifiedSocialCreditCode:queryParams.value.unifiedSocialCreditCode
+    unifiedSocialCreditCode: queryParams.value.unifiedSocialCreditCode
   }
   listEnterprises(toServerObj).then(response => {
     enterprisesList.value = response.data.result;
@@ -174,12 +199,13 @@ function submitForm() {
 /** 删除按钮操作 */
 function handleDelete(row) {
   const ids = row.id || ids.value;
-  proxy.$modal.confirm('是否确认删除高新区企业(119家)编号为"' + ids + '"的数据项?').then(function() {
+  proxy.$modal.confirm('是否确认删除高新区企业(119家)编号为"' + ids + '"的数据项?').then(function () {
     return delEnterprises(ids);
   }).then(() => {
     getList();
     proxy.$modal.msgSuccess("删除成功");
-  }).catch(() => {});
+  }).catch(() => {
+  });
 }
 
 /** 导出按钮操作 */

+ 22 - 5
src/views/CEEnterprise/CERating/index.vue

@@ -16,12 +16,20 @@
       </el-col>
     </el-row>
     <el-table stripe :data="tableData" style="width: 100%" height="710">
-      <el-table-column prop="unifiedSocialCreditCode" label="企业信用代码">
-      </el-table-column>
       <el-table-column prop="enterpriseName" label="企业名称">
       </el-table-column>
+      <el-table-column label="企业信用代码">
+        <template #default="scope">
+          <el-link type="primary" @click="handleClick(scope.row)">{{ scope.row.unifiedSocialCreditCode }}</el-link>
+        </template>
+      </el-table-column>
 <!--      <el-table-column prop="total" label="总数">-->
 <!--      </el-table-column>-->
+      <el-table-column label="总分" align="center" prop="total">
+        <template #default="scope">
+          {{ scope.row.total.toFixed(2) }}
+        </template>
+      </el-table-column>
       <el-table-column prop="grade" label="等级">
       </el-table-column>
     </el-table>
@@ -35,8 +43,19 @@
 <script setup name="getCerating">
 // import { getToken } from '@/utils/auth'
 import { getCreditScoreList } from '@/api/ceenterprise/cerating'
-const store = useStore()
+import {useRouter} from "vue-router";
+const router = useRouter();
 const tableData = ref([])
+const handleClick = (row)=>{
+  const {unifiedSocialCreditCode, enterpriseName} = row
+  router.push({
+    path: '/CEEnterprise/companydetail',
+    query: {
+      unifiedSocialCreditCode,
+      enterpriseName
+    }
+  })
+}
 
 const total = ref(0)
 
@@ -74,8 +93,6 @@ function getList() {
   getCreditScoreList(queryParams.value).then((res) => {
     tableData.value = res.data.result
     total.value = res.data.totalSize
-
-    console.log(11, tableData.value)
   })
 }
 getList()

+ 49 - 22
src/views/CEEnterprise/companydetail/index.vue

@@ -1,10 +1,12 @@
 <script setup>
-    import {tableMap,fieldMap} from './map';
-    import {getCompanyDetail} from '@/api/companyDetail';
-    import { ref } from 'vue'
-    const activeNames = ref([])
-    const showList = ref([])
+import {fieldMap, tableMap} from './map';
+import {getCompanyDetail} from '@/api/companyDetail';
+import {ref} from 'vue'
+import {useRoute} from "vue-router";
 
+const activeNames = ref([])
+    const showList = ref([])
+  const route = useRoute();
 
     const handleChange = (val) => {
       console.log(val)
@@ -20,31 +22,56 @@
       }
       return Object.keys(newObj);
     }
-    getCompanyDetail().then(res=>{
+    getCompanyDetail(route.query.unifiedSocialCreditCode).then(res=>{
       if(res.code == 200){
-        console.log(res.data)
+        for(let i=0;i<res.data.length;i++){
+          activeNames.value.push(i)
+        }
         showList.value = res.data;
-        console.log(showList.value);
+        // console.log(showList.value);
       }
     })
-
+    // const test = (a)=>{
+    //   // console.log(a);
+    //   const r = a.map(item=>{
+    //     let entries = Object.entries(item);
+    //     const r = entries.filter(item=>{
+    //       return item[0] == 'unified_social_credit_code'
+    //     })
+    //     const index = entries.findIndex(item=>{
+    //       return item[0] == 'unified_social_credit_code'
+    //     })
+    //     const r1 = entries.filter(item=>{
+    //       return item[0] == 'id'
+    //     })
+    //     const index1 = entries.findIndex(item=>{
+    //       return item[0] == 'id'
+    //     })
+    //     entries.splice(index,1)
+    //     entries.splice(index1,1)
+    //     return [...r,...r1,...entries];
+    //   })
+    //   console.log(r);
+    // }
 </script>
 
 <template>
-  <div>当前查询的统一信用代码是:91431200MA4TC4MB7J</div>
-  <div class="demo-collapse">
-    <el-collapse v-model="activeNames" @change="handleChange">
-      <el-collapse-item v-for="(item,index) in showList" :title="tableMap[item.tableName]" :name="index">
-        <el-table :data="item.data">
-          <template v-for="(t,i) in getTableLength(item.data[0])" :key="i">
-            <el-table-column :prop="t" :label="fieldMap[t]" width="300"></el-table-column>
-          </template>
-        </el-table>
-      </el-collapse-item>
-    </el-collapse>
+  <div>
+    <div>企业名称:{{route.query.enterpriseName}}</div>
+    <div>当前查询的统一信用代码是:{{route.query.unifiedSocialCreditCode}}</div>
+    <div class="demo-collapse">
+      <el-collapse v-model="activeNames" @change="handleChange">
+        <el-collapse-item v-for="(item,index) in showList" :title="tableMap[item.tableName]" :name="index">
+          <el-table :data="item.data">
+            <template v-for="(t,i) in getTableLength(item.data[0])" :key="i">
+              <el-table-column :prop="t" :label="fieldMap[t]" width="300"></el-table-column>
+            </template>
+          </el-table>
+        </el-collapse-item>
+      </el-collapse>
+    </div>
   </div>
 </template>
 
-<style scoped lang="scss">
-
+<style lang="scss">
 </style>

+ 362 - 32
src/views/CEEnterprise/companydetail/map/index.js

@@ -51,40 +51,370 @@ export const tableMap = {
     crm_technology_enterprises: '科技型中小企业名单',
     crm_termination_case_information: '终结本次执行案件信息',
     crm_union_information: '工会信息表',
-
+    crm_administrative_sanction: '行政制裁信息表',
+    crm_agri_fishery_water_penalty: '农渔水利-行政处罚',
+    crm_announcement_penalty: '通报处罚信息表',
+    crm_arbitration_information: '仲裁信息',
+    crm_arrears_notification_financial: '金融欠款-催告信息表',
+    crm_association_honor_information: '协会颁发的荣誉信息',
+    crm_bad_supplier_enterprise_penalty: '不良供应商-企业采购处罚信息表',
+    crm_bank_credit_rating: '银行信用等级信息',
+    crm_bankruptcy_announcement: '破产公告信息表',
+    crm_brand_honor_info: '品牌荣誉信息表',
+    crm_broadcast_communication_penalty: '广电网信-行政处罚',
+    crm_business_abnormality: '市场监管-经营异常',
+    crm_charity_info: '公益慈善信息表',
+    crm_civil_penalties: '民政管理-处罚',
+    crm_commerce_penalty: '商务领域行政处罚信息表',
+    crm_complaint_info: '企业投诉信息表',
+    crm_complaint_information: '投诉信息',
+    crm_construction_other_penalties: '住建处罚-其他处罚',
+    crm_contract_nonperformance_info: '合同未履行信息表',
+    crm_corrective_action: '税务处罚-责令整改',
+    crm_credit_redlist_info: '守信红名单信息表',
+    crm_criminal_litigation_information: '刑事诉讼信息',
+    crm_domestic_market_entity_industry_info: '内资市场主体行业信息表',
+    crm_emergency_other_penalty: '应急安全监督-其他处罚信息表',
+    crm_energy_electricity_penalty: '能源电力-涉电领域行政处罚信息表',
+    crm_enterprise_credit_rating: '企业征信机构评分(天眼查)',
+    crm_enterprise_tax_payment_info: '企业纳税信息表',
+    crm_env_supervision_violation_supervision: '环保监管-违法督办信息表',
+    crm_environmental_other_penalties: '环保监管-其他处罚',
+    crm_equity_freeze: '市场监管-股权冻结',
+    crm_finance_supervision_financial_penalty: '财金监管-金融监管局处罚',
+    crm_finance_supervision_fiscal_penalty: '财金监管-财政行政处罚信息表',
+    crm_finance_supervision_local_penalty: '财金监管-地方金融行政处罚信息表',
+    crm_finance_supervision_pbc_penalty: '财金监管-人民银行行政处罚信息表',
+    crm_financial_report: '财务报表信息表',
+    crm_government_awarded_honors: '政府颁发的荣誉信息表',
+    crm_health_sanitation_penalty: '卫生健康-行政处罚',
+    crm_house_mortgage: '房屋抵押信息表',
+    crm_huipark_loan_account: '惠园贷台账信息表',
+    crm_industry_organization_discipline_penalty: '行业组织-自律处罚',
+    crm_ip_infringement: '市场监管-侵犯知产',
+    crm_judicial_auction: '司法拍卖信息',
+    crm_key_polluters: '环保监管-重点排污',
+    crm_labor_arbitration: '仲裁信息-劳动仲裁',
+    crm_labor_supervision_punishment: '劳动保障-劳动监察处罚',
+    crm_land_mortgage: '土地抵押信息表',
+    crm_land_resources_penalty: '国土资源-行政处罚信息表',
+    crm_liquidation_info: '清算信息表',
+    crm_listing_supervision_penalty: '上市监管-处罚信息表',
+    crm_market_regulation: '市场监管-其他处罚',
+    crm_market_regulatory_credit_rating: '市场监管领域信用等级表',
+    crm_miit_post_penalty: '工信邮电-行政处罚',
+    crm_national_public_credit_evaluation_information: '国家公共信用评价信息',
+    crm_other_domain_credit_rating: '其他领域信用等级信息',
+    crm_other_penalty_administrative: '其他行政处罚信息表',
+    crm_other_punishments: '税务处罚-其他处罚',
+    crm_output_value: '企业产值',
+    crm_price_penalty: '价格处罚信息表',
+    crm_product_recall: '市场监管-产品召回',
+    crm_public_security_penalty_information: '公安治安处罚信息',
+    crm_punish_public_security_announcement: '公安公告-行政处罚信息',
+    crm_quarterly_electricity_bill: '季度电费信息表',
+    crm_quarterly_water_usage: '季度用水明细表',
+    crm_rating_agency_info: '评级机构评级信息表',
+    crm_sci_edu_culture_penalty: '科教文旅-行政处罚',
+    crm_seriously_dishonest_subjects: '严重失信主体信息表',
+    crm_subject_to_execution: '被执行人信息',
+    crm_suspended_business_info: '停业信息表',
+    crm_system_certification_info: '体系认证信息表',
+    crm_tax_arrears: '税务处罚-欠税公告',
+    crm_tax_urge: '税务处罚-税务催告',
+    crm_tech_loan_account: '科技贷台账信息表',
+    crm_transport_administrative_penalty: '交通运输-行政处罚',
+    crm_unfulfilled_credit_commitment_information: '信用承诺未履行信息',
+    crm_unqualified_suppliers_punishment: '不良供应商-军队采购处罚表',
+    crm_unsatisfactory_supplier_penalty: '不良供应商-政府采购处罚信息表',
+    crm_urban_administration_penalty: '城市管理-行政处罚信息表',
+    crm_fraudulent_materials: '虚假材料申报信息表',
+    crm_major_work_safety_accidents: '重大安全生产事故通报信息表'
 }
 export const fieldMap = {
-    certificateName: '证书名称',
-    enterpriseName: '企业名称',
-    legalPerson: '法人',
-    enterpriseType: '企业类型',
-    registrationLocation: '注册属地',
-    businessAddress: '经营地址',
-    qualificationLevel: '资质证书等级',
-    certificateNumber: '资质证书号',
-    qualificationName: '资质名称',
-    issueDate: '发证日期',
-    validPeriod: '发证有效期',
-    issuingAuthority: '发证机关',
-    qualificationScope: '资质范围',
-    securityCode: '证券代码',
-    securityAbbr: '证券简称',
-    tradingMethod: '交易方式',
-    listingLayer: '所属分层',
-    listingDate: '挂牌日期',
-    totalShares: '总股本(股)',
-    nonRestrictedShares: '非限售股本(股)',
-    csrcIndustry: '证监会行业',
-    companyNature: '公司性质',
-    sizeClassification: '大中小微分类',
-    listingBoard: '上市板',
-    creditPositionName: '信用岗位名称',
-    departmentHead: '企业信用部门负责人',
-    contactPhone: '联系电话',
-    primaryUnionName: '基层工会名称',
-    unionPresidentName: '工会主席姓名',
-    enterpriseContactAndPhone: '企业联系人及电话',
-    branchName: '党支部名称',
+    notified_entity: '被通报单位',
+    notification_authority: '通报单位',
+    notification_date: '通报时间',
+    notification_reason: '通报事由',
+    submission_date: '材料提交日期',
+    original_content: '原材料申报内容',
+    false_content: '材料申报虚假内容',
+    principal_department: '主管部门',
+    punishment_reason: '处罚事由',
+    enforcement_authority: '处罚机关',
+    credit_commitment_company_name: '信用承诺企业名称',
+    credit_commitment_item: '信用承诺事项',
+    credit_commitment_date: '信用承诺日期',
+    unfulfilled_credit_item: '未履行承诺的信用事项',
+    unfulfilled_credit_item_date: '未履行承诺的信用事项的日期',
+    competent_department: '主管部门',
+    urge_date: '日期',
+    urge_content: '税务催告内容',
+    tax_arrears_amount: '欠税金额',
+    transaction_number: '流水号',
+    credit_limit_amount: '授信金额(万元)',
+    application_amount: '申请备案金额(万元)',
+    loan_start_date: '贷款开始日期',
+    loan_end_date: '贷款结束日期',
+    loan_term: '贷款期限',
+    principal_officer: '企业负责人',
+    contact_person: '企业联系人',
+    issuing_bank: '贷款发放银行',
+    interest_rate: '利率(%)',
+    region: '区域',
+    option_flag: '勾选项',
+    suspended_company: '停业企业名称',
+    suspension_date: '停业日期',
+    certificate_no: '证书编号',
+    certificate_status: '证书状态',
+    organization_name: '获证组织-组织名称',
+    certification_type: '体系认证类型',
+    expiry_date: '证书到期日期',
+    initial_certification_date: '初次获证日期',
+    reporting_date: '信息上报日期',
+    certification_project: '认证项目',
+    certification_basis: '认证依据',
+    supervision_times: '监督次数',
+    recertification_times: '再认证次数',
+    business_scope_covered: '认证覆盖的业务范围',
+    multi_site_covered: '是否覆盖多场所',
+    site_names_and_addresses: '认证覆盖的场所名称及地址',
+    accreditation_marks_used: '证书使用的认可标识',
+    country_region: '获证组织-所在国别地区',
+    certified_personnel_count: '获证组织-本证书体系覆盖人数',
+    organization_address: '获证组织-组织地址',
+    issuing_agency_name: '发证机构-机构名称',
+    agency_approval_no: '发证机构-机构批准号',
+    agency_valid_period: '发证机构-有效期',
+    agency_status: '发证机构-机构状态',
+    agency_website: '发证机构-网址',
+    agency_address: '发证机构-地址',
+    agency_business_scope: '发证机构-业务范围',
+    law_enforcement_agency: '执法机关',
+    date: '日期',
+    tax_type: '欠税税种',
+    tax_amount: '欠税金额',
+    unified_social_credit_code_execution: '信用代码',
+    executor: '被执行人',
+    subject_of_execution: '执行标的',
+    source_department: '来源部门',
+    punishment_department: '处罚部门',
+    first_quarter_consumption: '第一季度',
+    second_quarter_consumption: '第二季度',
+    third_quarter_consumption: '第三季度',
+    fourth_quarter_consumption: '第四季度',
+    annual_total_consumption: '年度总',
+    arrear_exists: '当前是否欠缴电费',
+    first_quarter_usage: '第一季度',
+    second_quarter_usage: '第二季度',
+    third_quarter_usage: '第三季度用',
+    fourth_quarter_usage: '第四季度',
+    total: '合计',
+    annual: '年度',
+    rating_certificate_no: '评级证书号码',
+    rating_date: '评级时间',
+    rating_type: '评级类型',
+    rating_agency: '评级机构',
+    agency_credit_code: '评级机构统一社会信用代码',
+    publishing_authority: '公布机关',
+    date_published: '时间',
+    cause_of_punishment: '处罚事由',
+    legal_basis_of_punishment: '处罚依据',
+    punishment_object: '处罚对象名称',
+    evaluation_domain: '评价领域',
+    penalty_target: '处罚对象名称',
+    punishment_subject: '处罚对象名称',
+    punishing_agency: '处罚机关',
+    punishment_consequence: '处罚结果',
+    evaluation_score: '评价得分',
+    evaluation_grade: '评价等级',
+    land_certificate_number: '土地证号',
+    applicant_enterprise: '申请人/申请企业',
+    liquidated_enterprise: '被清算企业',
+    handling_authority: '经办机关',
+    liquidation_date: '清算日期',
+    announcement_name: '公告名称',
+    auction_subject: '拍卖标的',
+    starting_price: '起拍价(元)',
+    evaluation_price: '评估价(元)',
+    second_auction: '二拍',
+    entrusted_court: '委托法院',
+    auction_time: '拍卖时间',
+    disclosing_unit: '公示单位',
+    disclosure_time: '公示时间',
+    pollution_type: '污染类型',
+    arbitration_organization: '仲裁机构',
+    arbitration_date: '仲裁时间',
+    infringement_reason: '侵犯知识产权处罚事由',
+    room_number: '房间号',
+    property_unit_number: '不动产单元号',
+    mortgagee: '抵押权人',
+    mortgage_area: '抵押面积(平方米)',
+    debt_amount: '债权数额(万元)',
+    registration_certificate_number: '登记证明号',
+    mortgage_type: '抵押方式',
+    mortgagee_id_number: '抵押权人证件号码',
+    is_cancelled: '是否注销',
+    due_date: '到期日期',
+    loan_purpose: '贷款用途',
+    loan_type: '类型',
+    renewal_times: '续贷次数',
+    punishment_entity_name: '处罚对象名称',
+    industry_organization: '行业组织',
+    punishment_date: '处罚时间',
+    project: '项目',
+    beginning_balance: '年初余额',
+    ending_balance: '期末余额',
+    scale_category: '规模类别',
+    honor_type: '荣誉榜单类型',
+    publish_year: '发布年份',
+    id_number: '身份证号码',
+    document_serial: '文书字号',
+    penalty_datetime: '处罚时间',
+    penalty_consequence: '处罚结果',
+    debtor_name: '被执行人名称',
+    equity_frozen_company: '股权冻结公司名称',
+    publicity_date: '公示日期',
+    freeze_duration: '冻结/续行冻结期限',
+    execution_matter: '执行事项',
+    equity_investment_amount: '被执行人持有股权其他投资权益的数额(万元)',
+    first_quarter_amount: '第一季度',
+    second_quarter_amount: '第二季度',
+    third_quarter_amount: '第三季度',
+    fourth_quarter_amount: '第四季度',
+    annual_amount: '年度',
+    tax_arrears_exist: '当前是否欠缴税费',
+    penalty_time: '处罚时间',
+    penalty_reason: '处罚事由',
+    rating_score: '天眼评分分数',
+    executor_name: '被执行人名称',
+    enforcement_court: '执行法院',
+    basis_unit: '做出执行依据单位',
+    basis_document_number: '执行依据文号',
+    filing_time: '立案时间',
+    legal_obligation: '生效法律文书确定的义务',
+    performance_status: '被执行人的履行情况',
+    dishonest_behavior: '失信被执行人行为具体情形',
+    national_economic_industry_classification: '国民经济行业分类',
+    gb_industry_type: '国标行业类型',
+    practitioners: '从业人员',
+    taxpayer: '纳税主体',
+    tax_authority: '税务机关',
+    penalty_date: '处罚日期',
+    penalty_result: '处罚结果',
+    entry_time: '录入时间',
+    subject_name: '主体名称',
+    red_list_reason: '列入红名单原因',
+    laws_and_regulations: '法律法规',
+    statistics_department: '统计部门',
+    statistics_time: '统计时间',
+    public_prosecution_authority: '公诉机关',
+    defendant: '被告人',
+    judgment_content: '裁判内容',
+    complainer_name: '投诉人姓名',
+    complainer_id_number: '投诉人身份证号码',
+    complaint_date: '投诉日期',
+    complaint_matter: '投诉事项',
+    defendant_phone: '被投诉人电话',
+    defendant_position: '被投诉人工作单位/工作岗位',
+    complainant_name: '投诉人姓名',
+    complainant_phone: '投诉人电话',
+    accused_name_company_name: '被投诉人姓名/企业名称',
+    accused_phone: '被投诉人电话',
+    accused_work_unit_position: '被投诉人工作单位/工作岗位',
+    note: '备注',
+    party_a_name: '甲方企业名称',
+    party_a_credit_code: '甲方统一社会信用代码',
+    party_b_name: '合同乙方企业名称',
+    party_b_credit_code: '乙方统一社会信用代码',
+    contract_sign_date: '合同签订日期',
+    scheduled_performance_clause: '合同应履行条款内容',
+    unfulfilled_clause: '合同未履行条款内容',
+    nonperforming_party: '未履行合同方',
+    scheduled_performance_date: '合同应履行日期',
+    unfulfilled_matter: '合同未履行事项',
+    supervising_department: '主管部门',
+    charity_company_name: '公益慈善参与企业名称',
+    charity_project_name: '公益慈善事项名称',
+    charity_project_type: '公益慈善事项类型',
+    specific_charity_matter: '公益慈善具体事项',
+    participation_date: '参与公益慈善日期',
+    data_source_dept: '数据来源部门',
+    document_serial_number: '文书字号',
+    punishment_basis: '处罚依据',
+    listing_reason: '列入原因',
+    register_number: '注册号',
+    announcement_authority: '公告机关',
+    announcement_title: '公告文书名称',
+    announcement_date: '日期',
+    administrator_institution: '管理人机构',
+    case_type: '案件类型',
+    announcement_type: '公告类型',
+    debtor_people: '债务人',
+    chief_administrator: '管理人主要负责人',
+    honor_name: '品牌荣誉名称',
+    well_known_brand: '知名品牌',
+    famous_trademark: '驰名商标',
+    awarding_department: '荣誉颁发部门',
+    achievement_date: '取得荣誉日期',
+    honor_document_no: '荣誉证明文件号',
+    basis: '处罚依据',
+    debtor_enterprise_name: '欠款被催告企业名称',
+    arrears_date: '欠款时间',
+    arrears_cause: '欠款被催告事由',
+    notification_unit: '催告单位',
+    honor_list_name: '荣誉榜单名称',
+    honor_list_type: '荣誉榜单类型',
+    source: '来源',
+    association_name: '协会/组织名称',
+    release_year: '发布年份',
+    punished_entity_name: '处罚对象名称',
+    punishing_authority: '处罚机关',
+    punishment_cause: '处罚事由',
+    punishment_result: '处罚结果',
+    bank_credit_rating: '银行信用等级',
+    evaluation_year: '评价年度',
+    notified_unit: '被通报单位',
+    announcing_unit: '通报单位',
+    announcement_time: '通报时间',
+    respondent: '被申请人',
+    arbitration_agency: '仲裁机构',
+    arbitration_time: '仲裁时间',
+    dispute_reason: '纠纷案由',
+    applicant: '申请人',
+    relative_name: '行政相对人名称(必填)',
+    relative_type: '行政相对人类别(必填)',
+    legal_person_name: '法定代表人姓名(选填)',
+    legal_person_id_type: '法定代表人证件类型(选填)',
+    legal_person_id_number: '法定代表人证件号码(选填)',
+    sanction_doc_name: '行政制裁决定文书名称(必填)',
+    sanction_doc_number: '行政制裁决定文书号(必填)',
+    sanction_reason: '行政制裁理由(必填)',
+    sanction_basis: '行政制裁依据(必填)',
+    sanction_category: '行政制裁种类(必填)',
+    sanction_measure: '行政制裁措施',
+    sanction_execution_type: '行政制裁执行类型',
+    sanction_content: '行政制裁内容(必填)',
+    sanction_result: '行政制裁结果(必填)',
+    sanction_execution_mode: '行政制裁执行方式(必填)',
+    sanction_decision_date: '行政制裁决定日期(必填)',
+    measure_start_time: '实施制裁措施起始时间(选填)',
+    measure_end_time: '实施制裁措施结束时间(选填)',
+    sanction_execution_time: '行政制裁执行时间(选填)',
+    admin_org_name: '行政机关名称(必填)',
+    admin_org_social_credit_code: '行政机关统一社会信用代码(必填)',
+    punishment_object_name: '处罚对象名称',
+    punishment_authority: '处罚机关',
+    punishment_time: '处罚时间',
+    reason: '处罚事由',
+    result: '处罚结果',
+    sampled_unit: '被抽样单位',
+    sampled_unit_address: '被抽样单位地址',
+    task_source: '任务源',
+    performance_of_the_obligor: '被执行人的履行情况',
+    customs_registration_code: '海关注册编码(企业注册号)',
+
+    suspension_revocation_license_name_number: '暂扣或吊销证照名称及编号',
     primary_union_name: '基层工会名称',
     union_president_name: '工会主席姓名',
     enterprise_contact_and_phone: '企业联系人及电话',

+ 112 - 326
src/views/basicData/HetcData/CJInformation/index.vue

@@ -1,39 +1,15 @@
 <template>
   <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="原、被告姓名" label-width="200" prop="nameOfPlaintiffOrDefendant">
+      <el-form-item label="案件名称" prop="caseName" label-width="200">
         <el-input
-            v-model="queryParams.nameOfPlaintiffOrDefendant"
-            placeholder="请输入原、被告姓名"
+            v-model="queryParams.caseName"
+            placeholder="请输入案件名称"
             clearable
             @keyup.enter="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="统一社会信用代码" label-width="200" prop="unifiedSocialCreditCode">
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
         <el-input
             v-model="queryParams.unifiedSocialCreditCode"
             placeholder="请输入统一社会信用代码"
@@ -41,158 +17,79 @@
             @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-popconfirm
-                title="你确定清除所有数据?"
-                confirm-button-text="是的"
-                cancel-button-text="不是"
-                :icon="InfoFilled"
-                icon-color="#626AEF"
-                @confirm="handleDelete"
-            >
-              <template #reference>
-                <el-button
-                    type="danger"
-                    plain
-                    icon="Delete"
-                    v-hasPermi="['basicData:license:remove']"
-                >清除全表</el-button>
-              </template>
-            </el-popconfirm>
-          </el-col>
-          <el-col :span="1.5">
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
             <el-button
                 type="danger"
                 plain
                 icon="Delete"
-                @click="batchDelete"
-                v-hasPermi="['basicData:license:remove']"
-                :disabled="ids.length === 0"
-            >批量删除</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>
-          <el-col :span="1.5">
-            <el-button type="success" plain icon="Download" @click="downloadTemplate">
-              下载导入模版
+                v-hasPermi="['basicData:information:remove']"
+            >清除全表
             </el-button>
-          </el-col>
-          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
-        </el-row>
-      </el-form-item>
-    </el-form>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:information:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
 
     <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-column type="selection" width="55" align="center"/>
+      <el-table-column label="案件名称" align="center" prop="caseName" :show-overflow-tooltip='true'/>
+      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="案由" align="center" prop="causeOfAction" :show-overflow-tooltip='true'/>
+      <el-table-column label="案件身份" align="center" prop="litigantRole" :show-overflow-tooltip='true'/>
+      <el-table-column label="裁判结果" align="center" prop="judgmentResult" :show-overflow-tooltip='true'/>
+      <el-table-column label="案件金额" align="center" prop="caseAmount" :show-overflow-tooltip='true'/>
+      <el-table-column label="审理法院" align="center" prop="hearingCourt" :show-overflow-tooltip='true'/>
+      <el-table-column label="裁判日期" align="center" prop="adjudicationDate" :show-overflow-tooltip='true'/>
+      <el-table-column label="发布日期" align="center" prop="publicationDate" :show-overflow-tooltip='true'/>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
     </el-table>
 
     <div style="position: fixed;bottom: 20px;right: 10px;">
@@ -209,7 +106,9 @@
       <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>
+        <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">
@@ -226,51 +125,6 @@
     </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>
 
@@ -279,16 +133,14 @@ import {
   listInformation,
   getInformation,
   delInformation,
-  addInformation,
-  updateInformation,
   delInformationBatch
 } from "@/api/basicData/information4";
-import {reactive} from "vue";
+import {reactive, ref, toRaw} from "vue";
 import {getToken} from "@/utils/auth";
 import {ElMessage} from "element-plus";
 import {likeQueryMethod} from "@/utils/likeQueryMethod";
 
-const { proxy } = getCurrentInstance();
+const {proxy} = getCurrentInstance();
 
 const informationList = ref([]);
 const open = ref(false);
@@ -312,71 +164,57 @@ const upload = reactive({
   // 上传的地址
   url: import.meta.env.VITE_APP_BASE_API + '/crmJudgmentDocumentJudgmentInformation/importData'
 })
-const handleFileSuccess = (e)=>{
-  if(e.code == 200){
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
     ElMessage({
-      type:"success",
-      message:e.msg
+      type: "success",
+      message: e.msg
     })
     getList()
     proxy.$refs['uploadRef']?.clearFiles()
-  }else {
+  } else {
     ElMessage({
-      type:"error",
-      message:e.msg
+      type: "error",
+      message: e.msg
     })
     proxy.$refs['uploadRef']?.clearFiles()
   }
 }
+
 function submitFileForm() {
-  proxy.$refs['uploadRef'].submit()
+  proxy.$refs['uploadRef']?.submit();
   upload.open = false;
-  // setTimeout(getList,1000)
 }
+
 function handleImport() {
   upload.open = true
-  // let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'name_of_plaintiff_or_defendant',queryParams.value.nameOfPlaintiffOrDefendant);
-  // 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,
+    pageSize: 20,
+    caseName: null,
     caseNumber: null,
-    releaseDate: null,
     causeOfAction: null,
-    nameOfPlaintiffOrDefendant: null,
-    unifiedSocialCreditCode: '',
-    identityInformation: null,
-    nameOfCase: null,
+    litigantRole: null,
     judgmentResult: null,
-    executiveCourt: null,
-    location: null,
+    caseAmount: null,
+    hearingCourt: null,
+    adjudicationDate: null,
+    publicationDate: null,
+    unifiedSocialCreditCode: ''
   },
-  rules: {
-  }
+  rules: {}
 });
 
-const { queryParams, form, rules } = toRefs(data);
+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,'name_of_plaintiff_or_defendant',queryParams.value.nameOfPlaintiffOrDefendant);
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'case_name',queryParams.value.caseName);
   listInformation(toServerObj).then(response => {
     informationList.value = response.records;
     total.value = response.total;
@@ -384,28 +222,21 @@ function getList() {
   });
 }
 
-// 取消按钮
-function cancel() {
-  open.value = false;
-  reset();
-}
 
 // 表单重置
 function reset() {
   form.value = {
     id: null,
+    caseName: null,
     caseNumber: null,
-    releaseDate: null,
     causeOfAction: null,
-    nameOfPlaintiffOrDefendant: null,
-    unifiedSocialCreditCode: '',
-    identityInformation: null,
-    nameOfCase: null,
+    litigantRole: null,
     judgmentResult: null,
-    executiveCourt: null,
-    location: null,
-    createTime: null,
-    updateTime: null
+    caseAmount: null,
+    hearingCourt: null,
+    adjudicationDate: null,
+    publicationDate: null,
+    unifiedSocialCreditCode: ''
   };
   proxy.resetForm("informationRef");
 }
@@ -429,86 +260,41 @@ function handleSelectionChange(selection) {
   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){
+  if (res.code == 200) {
     ElMessage({
-      type:'success',
-      message:'删除成功'
+      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(() => {});
 }
 
-/**
- * 批量删除
- */
-const batchDelete = (row)=>{
+/** 批量删除*/
+const batchDelete = (row) => {
   const idsToS = row.id || ids.value;
-  proxy.$modal.confirm('是否确认删除这'+idsToS.length+'条的数据项?').then(function() {
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length + '条的数据项?').then(function () {
     return delInformationBatch(toRaw(idsToS));
   }).then(() => {
     getList();
     proxy.$modal.msgSuccess("删除成功");
-  }).catch(() => {});
+  }).catch(() => {
+  });
 }
 
 /** 导出按钮操作 */
 function handleExport() {
   proxy.download('crmJudgmentDocumentJudgmentInformation/exportData', {
     ...queryParams.value
-  }, `法院公开判文书_${new Date().getTime()}.xlsx`)
+  }, `法院已公开裁判文书判决信息_${new Date().getTime()}.xlsx`)
 }
-const downloadTemplate = ()=>{
-  proxy.download('crmJudgmentDocumentJudgmentInformation/getUploadTemplate',{}, `法院公开判决文书模板.xlsx`)
+
+const downloadTemplate = () => {
+  proxy.download('crmJudgmentDocumentJudgmentInformation/getUploadTemplate', {}, `法院已公开裁判文书判决信息模板.xlsx`)
 }
 
 getList();
-</script>
+</script>

+ 1 - 1
src/views/basicData/HetcData/TOTECInformation/index.vue

@@ -488,7 +488,7 @@ function handleExport() {
 }
 
 const downloadTemplate = ()=>{
-  proxy.download('crmTerminationCaseInformation/getUploadTemplate',{}, `行政许可模板.xlsx`)
+  proxy.download('crmTerminationCaseInformation/getUploadTemplate',{}, `终结本次执行案件信息模版.xlsx`)
 }
 
 getList();

+ 2 - 2
src/views/basicData/ManageAbility/BranchInformation/index.vue

@@ -142,9 +142,9 @@
       <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="name" :show-overflow-tooltip="true" />-->
+      <el-table-column label="分支机构名称" align="center" prop="branchName" :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">

+ 301 - 0
src/views/basicData/OpeCapability/hydmxb/index.vue

@@ -0,0 +1,301 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业名称" prop="enterpriseName" label-width="200">
+        <el-input
+            v-model="queryParams.enterpriseName"
+            placeholder="请输入企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <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>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:account:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:account:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!accountList.length"
+            v-hasPermi="['basicData:account: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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="accountList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <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="loanAmount" :show-overflow-tooltip='true'/>
+      <el-table-column label="借款日期" align="center" prop="borrowingDate" width="180" />
+<!--      <el-table-column label="借款日期" align="center" prop="borrowingDate" width="180">-->
+<!--        <template #default="scope">-->
+<!--          <span>{{ parseTime(scope.row.borrowingDate, '{y}-{m}-{d}') }}</span>-->
+<!--        </template>-->
+<!--      </el-table-column>-->
+      <el-table-column label="到期日期" align="center" prop="dueDate" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款用途" align="center" prop="loanPurpose" :show-overflow-tooltip='true'/>
+      <el-table-column label="类型" align="center" prop="loanType" :show-overflow-tooltip='true'/>
+      <el-table-column label="续贷次数" align="center" prop="renewalTimes" :show-overflow-tooltip='true'/>
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改惠园贷台账信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Account">
+import {
+  listAccount,
+  getAccount,
+  delAccount,
+  delAccountBatch
+} from "@/api/basicData/account";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const accountList = 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 + '/crmHuiparkLoanAccount/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    loanAmount: null,
+    borrowingDate: null,
+    dueDate: null,
+    loanPurpose: null,
+    loanType: null,
+    renewalTimes: 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,'enterprise_name',queryParams.value.enterpriseName);
+  listAccount(toServerObj).then(response => {
+    accountList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    loanAmount: null,
+    borrowingDate: null,
+    dueDate: null,
+    loanPurpose: null,
+    loanType: null,
+    renewalTimes: null,
+    remark: null
+  };
+  proxy.resetForm("accountRef");
+}
+
+/** 搜索按钮操作 */
+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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delAccount();
+  if (res.code == 200) {
+    ElMessage({
+      type: 'success',
+      message: '删除成功'
+    })
+    getList();
+  }
+}
+
+/** 批量删除*/
+const batchDelete = (row) => {
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length + '条的数据项?').then(function () {
+    return delAccountBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {
+  });
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmHuiparkLoanAccount/exportData', {
+    ...queryParams.value
+  }, `惠园贷台账信息_${new Date().getTime()}.xlsx`)
+}
+
+const downloadTemplate = () => {
+  proxy.download('crmHuiparkLoanAccount/getUploadTemplate', {}, `惠园贷台账信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 319 - 0
src/views/basicData/OpeCapability/kjdmxb/index.vue

@@ -0,0 +1,319 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入企业信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="企业名称" prop="enterpriseName" label-width="200">
+        <el-input
+            v-model="queryParams.enterpriseName"
+            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-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:account:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:account:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!accountList.length"
+            v-hasPermi="['basicData:account: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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="accountList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <el-table-column label="流水号" align="center" prop="transactionNumber" :show-overflow-tooltip='true'/>
+      <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="creditLimitAmount" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款金额(万元)" align="center" prop="loanAmount" :show-overflow-tooltip='true'/>
+      <el-table-column label="申请备案金额(万元)" align="center" prop="applicationAmount" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款开始日期" align="center" prop="loanStartDate" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款结束日期" align="center" prop="loanEndDate" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款期限" align="center" prop="loanTerm" :show-overflow-tooltip='true'/>
+      <el-table-column label="企业负责人" align="center" prop="principalOfficer" :show-overflow-tooltip='true'/>
+      <el-table-column label="企业联系人" align="center" prop="contactPerson" :show-overflow-tooltip='true'/>
+      <el-table-column label="联系电话" align="center" prop="contactPhone" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款发放银行" align="center" prop="issuingBank" :show-overflow-tooltip='true'/>
+      <el-table-column label="利率(%)" align="center" prop="interestRate" :show-overflow-tooltip='true'/>
+      <el-table-column label="区域" align="center" prop="region" :show-overflow-tooltip='true'/>
+      <el-table-column label="贷款方式" align="center" prop="loanMethod" :show-overflow-tooltip='true'/>
+      <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改科技贷台账信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Account">
+import {
+  listAccount,
+  getAccount,
+  delAccount,
+  delAccountBatch
+} from "@/api/basicData/account2";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const accountList = 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 + '/crmTechLoanAccount/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    transactionNumber: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    creditLimitAmount: null,
+    loanAmount: null,
+    applicationAmount: null,
+    loanStartDate: null,
+    loanEndDate: null,
+    loanTerm: null,
+    principalOfficer: null,
+    contactPerson: null,
+    contactPhone: null,
+    issuingBank: null,
+    interestRate: null,
+    region: null,
+    loanMethod: 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,'enterprise_name',queryParams.value.enterpriseName);
+  listAccount(toServerObj).then(response => {
+    accountList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    transactionNumber: null,
+    unifiedSocialCreditCode: '',
+    enterpriseName: null,
+    creditLimitAmount: null,
+    loanAmount: null,
+    applicationAmount: null,
+    loanStartDate: null,
+    loanEndDate: null,
+    loanTerm: null,
+    principalOfficer: null,
+    contactPerson: null,
+    contactPhone: null,
+    issuingBank: null,
+    interestRate: null,
+    region: null,
+    loanMethod: null,
+    remarks: null
+  };
+  proxy.resetForm("accountRef");
+}
+
+/** 搜索按钮操作 */
+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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delAccount();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delAccountBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmTechLoanAccount/exportData', {
+    ...queryParams.value
+  }, `科技贷台账信息_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmTechLoanAccount/getUploadTemplate',{}, `科技贷台账信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 143 - 331
src/views/basicData/confirmation/index.vue

@@ -1,224 +1,128 @@
 <template>
   <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="administrativePartyName">
+      <el-form-item label="行政相对人名称" prop="administrativePartyName" label-width="200">
         <el-input
-          v-model="queryParams.administrativePartyName"
-          placeholder="请输入行政相对人名称"
-          clearable
-          @keyup.enter="handleQuery"
+            v-model="queryParams.administrativePartyName"
+            placeholder="请输入行政相对人名称"
+            clearable
+            @keyup.enter="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="行政相对人代码" label-width="200" prop="unifiedSocialCreditCode">
+      <el-form-item label="行政相对人代码" prop="unifiedSocialCreditCode" label-width="200">
         <el-input
-          v-model="queryParams.unifiedSocialCreditCode"
-          placeholder="请输入行政相对人代码"
-          clearable
-          @keyup.enter="handleQuery"
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入行政相对人代码"
+            clearable
+            @keyup.enter="handleQuery"
         />
       </el-form-item>
-<!--      <el-form-item label="法定代表人姓名" prop="legalRepresentativeName">-->
+<!--      <el-form-item label="法定代表人姓名" prop="legalRepresentativeName" label-width="200">-->
 <!--        <el-input-->
-<!--          v-model="queryParams.legalRepresentativeName"-->
-<!--          placeholder="请输入法定代表人姓名"-->
-<!--          clearable-->
-<!--          @keyup.enter="handleQuery"-->
+<!--            v-model="queryParams.legalRepresentativeName"-->
+<!--            placeholder="请输入法定代表人姓名"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
 <!--        />-->
 <!--      </el-form-item>-->
-<!--      <el-form-item label="法定代表人证件号码" prop="legalRepresentativeIdNumber">-->
+<!--      <el-form-item label="确认事项名称" prop="confirmationItemName" label-width="200">-->
 <!--        <el-input-->
-<!--          v-model="queryParams.legalRepresentativeIdNumber"-->
-<!--          placeholder="请输入法定代表人证件号码"-->
-<!--          clearable-->
-<!--          @keyup.enter="handleQuery"-->
+<!--            v-model="queryParams.confirmationItemName"-->
+<!--            placeholder="请输入确认事项名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
 <!--        />-->
 <!--      </el-form-item>-->
-<!--      <el-form-item label="行政确认" prop="administrativeConfirmation">-->
+<!--      <el-form-item label="确认机关名称" prop="confirmationAuthorityName" label-width="200">-->
 <!--        <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"-->
+<!--            v-model="queryParams.confirmationAuthorityName"-->
+<!--            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-popconfirm
-                title="你确定清除所有数据?"
-                confirm-button-text="是的"
-                cancel-button-text="不是"
-                :icon="InfoFilled"
-                icon-color="#626AEF"
-                @confirm="handleDelete"
-            >
-              <template #reference>
-                <el-button
-                    type="danger"
-                    plain
-                    icon="Delete"
-                    v-hasPermi="['basicData:license:remove']"
-                >清除全表</el-button>
-              </template>
-            </el-popconfirm>
-          </el-col>
-          <el-col :span="1.5">
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
             <el-button
                 type="danger"
                 plain
                 icon="Delete"
-                @click="batchDelete"
-                v-hasPermi="['basicData:license:remove']"
-                :disabled="ids.length === 0"
-            >批量删除</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>
-          <el-col :span="1.5">
-            <el-button type="success" plain icon="Download" @click="downloadTemplate">
-              下载导入模版
+                v-hasPermi="['basicData:confirmation:remove']"
+            >清除全表
             </el-button>
-          </el-col>
-          <!--      <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>-->
-        </el-row>
-      </el-form-item>
-    </el-form>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:confirmation:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!confirmationList.length"
+            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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
 
-    <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 type="selection" 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="unifiedSocialCreditCode" 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">
+    <el-table v-loading="loading" :data="confirmationList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <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="unifiedSocialCreditCode" 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" width="180" />-->
+      <el-table-column label="确认日期" align="center" prop="confirmationDate" 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-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>
 
     <div style="position: fixed;bottom: 20px;right: 10px;">
@@ -231,55 +135,29 @@
       />
     </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="unifiedSocialCreditCode">
-          <el-input v-model="form.unifiedSocialCreditCode" 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>
+    <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="submitForm">确 定</el-button>
-          <el-button @click="cancel">取 消</el-button>
+          <el-button type="primary" @click="submitFileForm">确 定</el-button>
+          <el-button @click="upload.open = false">取 消</el-button>
         </div>
       </template>
     </el-dialog>
+
+    <!-- 添加或修改行政确认对话框 -->
   </div>
 </template>
 
@@ -288,16 +166,14 @@ import {
   listConfirmation,
   getConfirmation,
   delConfirmation,
-  addConfirmation,
-  updateConfirmation,
   delConfirmationBatch
 } from "@/api/basicData/confirmation";
-import {reactive} from "vue";
-import {getToken} from "../../../utils/auth";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
 import {ElMessage} from "element-plus";
-import {likeQueryMethod} from "../../../utils/likeQueryMethod";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
 
-const { proxy } = getCurrentInstance();
+const {proxy} = getCurrentInstance();
 
 const confirmationList = ref([]);
 const open = ref(false);
@@ -321,42 +197,30 @@ const upload = reactive({
   // 上传的地址
   url: import.meta.env.VITE_APP_BASE_API + '/crmAdministrativeConfirmation/importData'
 })
-const handleFileSuccess = (e)=>{
-  if(e.code == 200){
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
     ElMessage({
-      type:"success",
-      message:e.msg
+      type: "success",
+      message: e.msg
     })
     getList()
     proxy.$refs['uploadRef']?.clearFiles()
-  }else {
+  } else {
     ElMessage({
-      type:"error",
-      message:e.msg
+      type: "error",
+      message: e.msg
     })
     proxy.$refs['uploadRef']?.clearFiles()
   }
 }
+
 function submitFileForm() {
-  proxy.$refs['uploadRef'].submit()
+  proxy.$refs['uploadRef']?.submit();
   upload.open = false;
-  setTimeout(getList,1000)
 }
+
 function handleImport() {
   upload.open = true
-  // let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,"administrative_party_name",queryParams.value.administrativePartyName);
-  // listConfirmation(toServerObj).then(res=>{
-  //   if(res.records.length >0){
-  //     ElMessage({
-  //       type:'warning',
-  //       message:'当前已经有数据,请删除后再导入'
-  //     })
-  //     return
-  //   }else {
-  //     upload.title = '用户导入'
-  //     upload.open = true
-  //   }
-  // })
 }
 
 const data = reactive({
@@ -379,16 +243,15 @@ const data = reactive({
     confirmationAuthorityCode: null,
     remarks: null,
   },
-  rules: {
-  }
+  rules: {}
 });
 
-const { queryParams, form, rules } = toRefs(data);
+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,"administrative_party_name",queryParams.value.administrativePartyName);
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'administrative_party_name',queryParams.value.administrativePartyName);
   listConfirmation(toServerObj).then(response => {
     confirmationList.value = response.records;
     total.value = response.total;
@@ -396,11 +259,6 @@ function getList() {
   });
 }
 
-// 取消按钮
-function cancel() {
-  open.value = false;
-  reset();
-}
 
 // 表单重置
 function reset() {
@@ -408,7 +266,7 @@ function reset() {
     id: null,
     administrativePartyName: null,
     administrativePartyType: null,
-    unifiedSocialCreditCode: null,
+    unifiedSocialCreditCode: '',
     legalRepresentativeName: null,
     legalRepresentativeIdType: null,
     legalRepresentativeIdNumber: null,
@@ -445,87 +303,41 @@ function handleSelectionChange(selection) {
   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){
+  if (res.code == 200) {
     ElMessage({
-      type:'success',
-      message:'删除成功'
+      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(() => {});
 }
 
-/**
- * 批量删除
- */
-const batchDelete = (row)=>{
+/** 批量删除*/
+const batchDelete = (row) => {
   const idsToS = row.id || ids.value;
-  proxy.$modal.confirm('是否确认删除这'+idsToS.length+'条的数据项?').then(function() {
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length + '条的数据项?').then(function () {
     return delConfirmationBatch(toRaw(idsToS));
   }).then(() => {
     getList();
     proxy.$modal.msgSuccess("删除成功");
-  }).catch(() => {});
+  }).catch(() => {
+  });
 }
 
 /** 导出按钮操作 */
 function handleExport() {
-  proxy.download('/crmAdministrativeConfirmation/exportData', {
+  proxy.download('crmAdministrativeConfirmation/exportData', {
     ...queryParams.value
-  }, `行政确认数据导出_${new Date().getTime()}.xlsx`)
-}
-const downloadTemplate = ()=>{
-  proxy.download('crmAdministrativeConfirmation/getUploadTemplate',{}, `行政确认数据模板.xlsx`)
+  }, `行政确认_${new Date().getTime()}.xlsx`)
 }
 
+const downloadTemplate = () => {
+  proxy.download('crmAdministrativeConfirmation/getUploadTemplate', {}, `行政确认模板.xlsx`)
+}
 
 getList();
-</script>
+</script>

+ 0 - 6
src/views/basicData/cwxx/cwbbxx/index.vue

@@ -85,8 +85,6 @@
       <el-table-column label="期末余额" align="center" prop="endingBalance" :show-overflow-tooltip='true'/>
       <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="industryCategory" :show-overflow-tooltip='true'/>
-      <el-table-column label="规模类别" align="center" prop="scaleCategory" :show-overflow-tooltip='true'/>
       <el-table-column label="从业人员" align="center" prop="practitioners" :show-overflow-tooltip='true'/>
     </el-table>
 
@@ -198,8 +196,6 @@ const data = reactive({
     endingBalance: null,
     unifiedSocialCreditCode: '',
     enterpriseName: null,
-    industryCategory: null,
-    scaleCategory: null,
     practitioners: null
   },
   rules: {
@@ -257,8 +253,6 @@ function reset() {
     endingBalance: null,
     unifiedSocialCreditCode: '',
     enterpriseName: null,
-    industryCategory: null,
-    scaleCategory: null,
     practitioners: null
   };
   proxy.resetForm("reportRef");

+ 2 - 2
src/views/basicData/cwxx/nzsczthyxx/index.vue

@@ -83,8 +83,8 @@
       <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="industryCode" :show-overflow-tooltip='true'/>
-      <el-table-column label="国民经济行业分类" align="center" prop="nationalEconomicIndustryClassification" :show-overflow-tooltip='true'/>
-      <el-table-column label="国标行业类型" align="center" prop="gbIndustryType" :show-overflow-tooltip='true'/>
+<!--      <el-table-column label="国民经济行业分类" align="center" prop="nationalEconomicIndustryClassification" :show-overflow-tooltip='true'/>-->
+<!--      <el-table-column label="国标行业类型" align="center" prop="gbIndustryType" :show-overflow-tooltip='true'/>-->
     </el-table>
 
     <div style="position: fixed;bottom: 20px;right: 10px;">

+ 300 - 0
src/views/basicData/ggxyjl/jnlyxx/tgxjclxx/index.vue

@@ -0,0 +1,300 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="材料申报企业名称" prop="companyName" label-width="200">
+        <el-input
+            v-model="queryParams.companyName"
+            placeholder="请输入材料申报企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <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>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:materials:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:materials:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!materialsList.length"
+            v-hasPermi="['basicData:materials: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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="materialsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <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="submissionDate" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.submissionDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="原材料申报内容" align="center" prop="originalContent" :show-overflow-tooltip='true'/>
+      <el-table-column label="材料申报虚假内容" align="center" prop="falseContent" :show-overflow-tooltip='true'/>
+      <el-table-column label="主管部门" align="center" prop="principalDepartment" :show-overflow-tooltip='true'/>
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改虚假材料申报信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Materials">
+import {
+  listMaterials,
+  getMaterials,
+  delMaterials,
+  delMaterialsBatch
+} from "@/api/basicData/materials";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const materialsList = 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 + '/crmFraudulentMaterials/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    submissionDate: null,
+    originalContent: null,
+    falseContent: null,
+    principalDepartment: null,
+  },
+  rules: {
+    companyName: [
+      {
+        required: true, message: "材料申报企业名称不能为空", trigger: "blur" }
+    ],
+    unifiedSocialCreditCode: [
+      {
+        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,'company_name',queryParams.value.companyName);
+  listMaterials(toServerObj).then(response => {
+    materialsList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    submissionDate: null,
+    originalContent: null,
+    falseContent: null,
+    principalDepartment: null,
+    remark: null
+  };
+  proxy.resetForm("materialsRef");
+}
+
+/** 搜索按钮操作 */
+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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delMaterials();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delMaterialsBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmFraudulentMaterials/exportData', {
+    ...queryParams.value
+  }, `虚假材料申报信息_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmFraudulentMaterials/getUploadTemplate',{}, `虚假材料申报信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 39 - 67
src/views/basicData/ggxyjl/sfcpxx/bzxr/index.vue

@@ -17,14 +17,6 @@
             @keyup.enter="handleQuery"
         />
       </el-form-item>
-<!--      <el-form-item label="被执行人名称" prop="executorName" label-width="200">-->
-<!--        <el-input-->
-<!--            v-model="queryParams.executorName"-->
-<!--            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>
@@ -46,7 +38,7 @@
                 type="danger"
                 plain
                 icon="Delete"
-                v-hasPermi="['basicData:executor:remove']"
+                v-hasPermi="['basicData:execution:remove']"
             >清除全表
             </el-button>
           </template>
@@ -58,7 +50,7 @@
             plain
             icon="Delete"
             @click="batchDelete"
-            v-hasPermi="['basicData:executor:remove']"
+            v-hasPermi="['basicData:execution:remove']"
             :disabled="ids.length === 0"
         >批量删除
         </el-button>
@@ -69,8 +61,8 @@
             plain
             icon="Download"
             @click="handleExport"
-            :disabled="!executorList.length"
-            v-hasPermi="['basicData:executor:export']"
+            :disabled="!executionList.length"
+            v-hasPermi="['basicData:execution:export']"
         >导出
         </el-button>
       </el-col>
@@ -81,29 +73,25 @@
       </el-col>
       <el-col :span="1.5">
         <el-button type="success" plain icon="Download" @click="downloadTemplate">
-          下载导入模
+          下载导入模
         </el-button>
       </el-col>
     </el-row>
 
-    <el-table v-loading="loading" :data="executorList" height="650" @selection-change="handleSelectionChange">
+    <el-table v-loading="loading" :data="executionList" height="650" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center"/>
       <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="executorName" :show-overflow-tooltip='true'/>
-      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true'/>
-      <el-table-column label="执行法院" align="center" prop="enforcementCourt" :show-overflow-tooltip='true'/>
-      <el-table-column label="省份" align="center" prop="province" :show-overflow-tooltip='true'/>
-      <el-table-column label="做出执行依据单位" align="center" prop="basisUnit" :show-overflow-tooltip='true'/>
-      <el-table-column label="执行依据文号" align="center" prop="basisDocumentNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="行业代码" align="center" prop="industryCode" :show-overflow-tooltip='true'/>
+      <el-table-column label="被执行人" align="center" prop="executor" :show-overflow-tooltip='true'/>
+      <el-table-column label="执行法院" align="center" prop="executingCourt" :show-overflow-tooltip='true'/>
       <el-table-column label="立案时间" align="center" prop="filingTime" width="180">
         <template #default="scope">
           <span>{{ parseTime(scope.row.filingTime, '{y}-{m}-{d}') }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="生效法律文书确定的义务" align="center" prop="legalObligation" :show-overflow-tooltip='true'/>
-      <el-table-column label="被执行人的履行情况" align="center" prop="performanceStatus" :show-overflow-tooltip='true'/>
-      <el-table-column label="失信被执行人行为具体情形" align="center" prop="dishonestBehavior" :show-overflow-tooltip='true'/>
+      <el-table-column label="执行案号" align="center" prop="caseNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="执行标的" align="center" prop="subjectOfExecution" :show-overflow-tooltip='true'/>
     </el-table>
 
     <div style="position: fixed;bottom: 20px;right: 10px;">
@@ -138,17 +126,17 @@
       </template>
     </el-dialog>
 
-    <!-- 添加或修改司法涉诉-失信被执行人对话框 -->
+    <!-- 添加或修改被执行人信息对话框 -->
   </div>
 </template>
 
-<script setup name="Executor">
+<script setup name="Execution">
 import {
-  listExecutor,
-  getExecutor,
-  delExecutor,
-  delExecutorBatch
-} from "@/api/basicData/executor2";
+  listExecution,
+  getExecution,
+  delExecution,
+  delExecutionBatch
+} from "@/api/basicData/execution";
 import {reactive, ref, toRaw} from "vue";
 import {getToken} from "@/utils/auth";
 import {ElMessage} from "element-plus";
@@ -156,7 +144,7 @@ import {likeQueryMethod} from "@/utils/likeQueryMethod";
 
 const {proxy} = getCurrentInstance();
 
-const executorList = ref([]);
+const executionList = ref([]);
 const open = ref(false);
 const loading = ref(true);
 const showSearch = ref(true);
@@ -176,7 +164,7 @@ const upload = reactive({
   // 设置上传的请求头部
   headers: {Authorization: getToken()},
   // 上传的地址
-  url: import.meta.env.VITE_APP_BASE_API + '/crmDishonestExecutor/importData'
+  url: import.meta.env.VITE_APP_BASE_API + '/crmSubjectToExecution/importData'
 })
 const handleFileSuccess = (e) => {
   if (e.code == 200) {
@@ -211,37 +199,25 @@ const data = reactive({
     pageSize: 20,
     enterpriseName: null,
     unifiedSocialCreditCode: '',
-    executorName: null,
-    caseNumber: null,
-    enforcementCourt: null,
-    province: null,
-    basisUnit: null,
-    basisDocumentNumber: null,
+    industryCode: null,
+    executor: null,
+    executingCourt: null,
     filingTime: null,
-    legalObligation: null,
-    performanceStatus: null,
-    dishonestBehavior: null
+    caseNumber: null,
+    subjectOfExecution: null
   },
   rules: {
-    enterpriseName: [
-      {
-        required: true, message: "企业名称不能为空", trigger: "blur" }
-    ],
-    unifiedSocialCreditCode: [
-      {
-        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,'enterprise_name',queryParams.value.enterpriseName);
-  listExecutor(toServerObj).then(response => {
-    executorList.value = response.records;
+  listExecution(toServerObj).then(response => {
+    executionList.value = response.records;
     total.value = response.total;
     loading.value = false;
   });
@@ -254,18 +230,14 @@ function reset() {
     id: null,
     enterpriseName: null,
     unifiedSocialCreditCode: '',
-    executorName: null,
-    caseNumber: null,
-    enforcementCourt: null,
-    province: null,
-    basisUnit: null,
-    basisDocumentNumber: null,
+    industryCode: null,
+    executor: null,
+    executingCourt: null,
     filingTime: null,
-    legalObligation: null,
-    performanceStatus: "0",
-    dishonestBehavior: null
+    caseNumber: null,
+    subjectOfExecution: null
   };
-  proxy.resetForm("executorRef");
+  proxy.resetForm("executionRef");
 }
 
 /** 搜索按钮操作 */
@@ -290,7 +262,7 @@ function handleSelectionChange(selection) {
 
 /** 删除按钮操作 */
 async function handleDelete(row) {
-  const res = await delExecutor();
+  const res = await delExecution();
   if(res.code == 200){
     ElMessage({
       type:'success',
@@ -303,7 +275,7 @@ async function handleDelete(row) {
 const batchDelete = (row)=>{
   const idsToS = row.id || ids.value;
   (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
-    return delExecutorBatch(toRaw(idsToS));
+    return delExecutionBatch(toRaw(idsToS));
   }).then(() => {
     getList();
     proxy.$modal.msgSuccess("删除成功");
@@ -312,12 +284,12 @@ const batchDelete = (row)=>{
 
 /** 导出按钮操作 */
 function handleExport() {
-  proxy.download('crmDishonestExecutor/exportData', {
+  proxy.download('crmSubjectToExecution/exportData', {
     ...queryParams.value
-  }, `司法涉诉-失信被执行人_${new Date().getTime()}.xlsx`)
+  }, `被执行人信息_${new Date().getTime()}.xlsx`)
 }
 const downloadTemplate = ()=>{
-  proxy.download('crmDishonestExecutor/getUploadTemplate',{}, `司法涉诉-失信被执行人模板.xlsx`)
+  proxy.download('crmSubjectToExecution/getUploadTemplate',{}, `被执行人信息模板.xlsx`)
 }
 
 getList();

+ 319 - 0
src/views/basicData/ggxyjl/sfcpxx/sfsssxbzxr/index.vue

@@ -0,0 +1,319 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业名称" prop="enterpriseName" label-width="200">
+        <el-input
+            v-model="queryParams.enterpriseName"
+            placeholder="请输入企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <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>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:executor:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:executor:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!executorList.length"
+            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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模板
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <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="enterpriseName" :show-overflow-tooltip='true'/>
+      <el-table-column label="信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
+      <el-table-column label="行业代码" align="center" prop="industryCode" :show-overflow-tooltip='true'/>
+      <el-table-column label="被执行人名称" align="center" prop="executorName" :show-overflow-tooltip='true'/>
+      <el-table-column label="案号" align="center" prop="caseNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="执行法院" align="center" prop="enforcementCourt" :show-overflow-tooltip='true'/>
+      <el-table-column label="省份" align="center" prop="province" :show-overflow-tooltip='true'/>
+      <el-table-column label="做出执行依据单位" align="center" prop="basisUnit" :show-overflow-tooltip='true'/>
+      <el-table-column label="执行依据文号" align="center" prop="basisDocumentNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="立案时间" align="center" prop="filingTime" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.filingTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="生效法律文书确定的义务" align="center" prop="legalObligation" :show-overflow-tooltip='true'/>
+      <el-table-column label="被执行人的履行情况" align="center" prop="performanceStatus" :show-overflow-tooltip='true'/>
+      <el-table-column label="失信被执行人行为具体情形" align="center" prop="dishonestBehavior" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改司法涉诉-失信被执行人对话框 -->
+  </div>
+</template>
+
+<script setup name="Executor">
+import {
+  listExecutor,
+  getExecutor,
+  delExecutor,
+  delExecutorBatch
+} from "@/api/basicData/executor3";
+import {reactive, ref, toRaw} 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()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    industryCode: null,
+    executorName: null,
+    caseNumber: null,
+    enforcementCourt: null,
+    province: null,
+    basisUnit: null,
+    basisDocumentNumber: null,
+    filingTime: null,
+    legalObligation: null,
+    performanceStatus: null,
+    dishonestBehavior: null
+  },
+  rules: {
+    enterpriseName: [
+      {
+        required: true, message: "企业名称不能为空", trigger: "blur" }
+    ],
+    unifiedSocialCreditCode: [
+      {
+        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,'enterprise_name',queryParams.value.enterpriseName);
+  listExecutor(toServerObj).then(response => {
+    executorList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    industryCode: null,
+    executorName: null,
+    caseNumber: null,
+    enforcementCourt: null,
+    province: null,
+    basisUnit: null,
+    basisDocumentNumber: null,
+    filingTime: null,
+    legalObligation: null,
+    performanceStatus: "0",
+    dishonestBehavior: 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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delExecutor();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delExecutorBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmDishonestExecutor/exportData', {
+    ...queryParams.value
+  }, `司法涉诉-失信被执行人_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmDishonestExecutor/getUploadTemplate',{}, `司法涉诉-失信被执行人模板.xlsx`)
+}
+
+getList();
+</script>

+ 307 - 0
src/views/basicData/ggxyjl/xzjgxx/gazacfxx/index.vue

@@ -0,0 +1,307 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="处罚企业名称" prop="companyName" label-width="200">
+        <el-input
+            v-model="queryParams.companyName"
+            placeholder="请输入处罚企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="处罚对象名称" prop="punishedEntityName" label-width="200">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.punishedEntityName"-->
+<!--            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-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:information:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:information:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <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="companyName" :show-overflow-tooltip='true'/>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
+      <el-table-column label="处罚对象名称" align="center" prop="punishedEntityName" :show-overflow-tooltip='true'/>
+      <el-table-column label="文书字号" align="center" prop="documentNumber" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚机关" align="center" prop="penaltyAuthority" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚时间" align="center" prop="penaltyTime" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.penaltyTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="处罚事由" align="center" prop="penaltyReason" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚依据" align="center" prop="legalBasis" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚结果" align="center" prop="penaltyResult" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改公安治安处罚信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Information">
+import {
+  listInformation,
+  getInformation,
+  delInformation,
+  delInformationBatch
+} from "@/api/basicData/information28";
+import {reactive, ref, toRaw} 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 + '/crmPublicSecurityPenaltyInformation/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    punishedEntityName: null,
+    documentNumber: null,
+    penaltyAuthority: null,
+    penaltyTime: null,
+    penaltyReason: null,
+    legalBasis: null,
+    penaltyResult: 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,'company_name',queryParams.value.companyName);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    punishedEntityName: null,
+    documentNumber: null,
+    penaltyAuthority: null,
+    penaltyTime: null,
+    penaltyReason: null,
+    legalBasis: null,
+    penaltyResult: 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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delInformationBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmPublicSecurityPenaltyInformation/exportData', {
+    ...queryParams.value
+  }, `公安治安处罚信息_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmPublicSecurityPenaltyInformation/getUploadTemplate',{}, `公安治安处罚信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 343 - 0
src/views/basicData/ggxyjl/xzjgxx/mzglsx/index.vue

@@ -0,0 +1,343 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业名称" prop="companyName" label-width="200">
+        <el-input
+            v-model="queryParams.companyName"
+            placeholder="请输入企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="处罚对象名称" prop="punishmentEntityName" label-width="200">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.punishmentEntityName"-->
+<!--            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-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:dishonesty:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:dishonesty:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!dishonestyList.length"
+            v-hasPermi="['basicData:dishonesty: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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="dishonestyList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <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="punishmentEntityName" :show-overflow-tooltip='true'/>
+      <el-table-column label="文书字号" align="center" prop="documentSerial" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚机关" align="center" prop="punishmentAuthority" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚时间" align="center" prop="punishmentDate" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.punishmentDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="失信事由" align="center" prop="dishonestyCause" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚依据" align="center" prop="punishmentBasis" :show-overflow-tooltip='true'/>
+      <el-table-column label="处罚结果" align="center" prop="punishmentResult" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改民政管理失信对话框 -->
+  </div>
+</template>
+
+<script setup name="Dishonesty">
+import {
+  listDishonesty,
+  getDishonesty,
+  delDishonesty,
+  delDishonestyBatch
+} from "@/api/basicData/dishonesty";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const dishonestyList = 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 + '/crmCivilManagementDishonesty/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    punishmentEntityName: null,
+    documentSerial: null,
+    punishmentAuthority: null,
+    punishmentDate: null,
+    dishonestyCause: null,
+    punishmentBasis: null,
+    punishmentResult: null
+  },
+  rules: {
+    companyName: [
+      {
+        required: true, message: "企业名称不能为空", trigger: "blur" }
+    ],
+    unifiedSocialCreditCode: [
+      {
+        required: true, message: "信用代码不能为空", trigger: "blur" }
+    ],
+    punishmentEntityName: [
+      {
+        required: true, message: "处罚对象名称不能为空", trigger: "blur" }
+    ],
+    documentSerial: [
+      {
+        required: true, message: "文书字号不能为空", trigger: "blur" }
+    ],
+    punishmentAuthority: [
+      {
+        required: true, message: "处罚机关不能为空", trigger: "blur" }
+    ],
+    punishmentDate: [
+      {
+        required: true, message: "处罚时间不能为空", trigger: "blur" }
+    ],
+    dishonestyCause: [
+      {
+        required: true, message: "失信事由不能为空", trigger: "blur" }
+    ],
+    punishmentBasis: [
+      {
+        required: true, message: "处罚依据不能为空", trigger: "blur" }
+    ],
+    punishmentResult: [
+      {
+        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,'company_name',queryParams.value.companyName);
+  listDishonesty(toServerObj).then(response => {
+    dishonestyList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    punishmentEntityName: null,
+    documentSerial: null,
+    punishmentAuthority: null,
+    punishmentDate: null,
+    dishonestyCause: null,
+    punishmentBasis: null,
+    punishmentResult: null
+  };
+  proxy.resetForm("dishonestyRef");
+}
+
+/** 搜索按钮操作 */
+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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delDishonesty();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delDishonestyBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmCivilManagementDishonesty/exportData', {
+    ...queryParams.value
+  }, `民政管理失信_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmCivilManagementDishonesty/getUploadTemplate',{}, `民政管理失信模板.xlsx`)
+}
+
+getList();
+</script>

+ 1 - 1
src/views/basicData/ggxyjl/xzjgxx/xzcfxx/qtcf5/index.vue

@@ -144,7 +144,7 @@ import {
   getPenalties,
   delPenalties,
   delPenaltiesBatch
-} from "@/api/basicData/penalties";
+} from "@/api/basicData/penalties2";
 import {reactive, ref, toRaw} from "vue";
 import {getToken} from "@/utils/auth";
 import {ElMessage} from "element-plus";

+ 4 - 4
src/views/basicData/ggxyjl/xzjgxx/xzcfxx/zlzg/index.vue

@@ -1,9 +1,9 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
-      <el-form-item label="企业名称" prop="enterpriseName" label-width="200">
+      <el-form-item label="企业名称" prop="companyName" label-width="200">
         <el-input
-            v-model="queryParams.enterpriseName"
+            v-model="queryParams.companyName"
             placeholder="请输入企业名称"
             clearable
             @keyup.enter="handleQuery"
@@ -80,7 +80,7 @@
 
     <el-table v-loading="loading" :data="actionList" height="650" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center"/>
-      <el-table-column label="企业名称" align="center" prop="enterpriseName" :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" prop="industryCode" :show-overflow-tooltip='true'/>
       <el-table-column label="纳税主体" align="center" prop="taxpayer" :show-overflow-tooltip='true'/>
@@ -214,7 +214,7 @@ 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,'enterprise_name',queryParams.value.enterpriseName);
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'company_name',queryParams.value.companyName);
   listAction(toServerObj).then(response => {
     actionList.value = response.records;
     total.value = response.total;

+ 298 - 0
src/views/basicData/ggxyjl/xzjgxx/zdaqscsgxx/index.vue

@@ -0,0 +1,298 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业名称" prop="companyName" label-width="200">
+        <el-input
+            v-model="queryParams.companyName"
+            placeholder="请输入企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <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>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:accidents:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:accidents:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!accidentsList.length"
+            v-hasPermi="['basicData:accidents: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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <el-table v-loading="loading" :data="accidentsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+      <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="notifiedEntity" :show-overflow-tooltip='true'/>
+      <el-table-column label="通报单位" align="center" prop="notificationAuthority" :show-overflow-tooltip='true'/>
+      <el-table-column label="通报时间" align="center" prop="notificationDate" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.notificationDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="通报事由" align="center" prop="notificationReason" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改重大安全生产事故通报信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Accidents">
+import {
+  listAccidents,
+  getAccidents,
+  delAccidents,
+  delAccidentsBatch
+} from "@/api/basicData/accidents";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElMessage} from "element-plus";
+import {likeQueryMethod} from "@/utils/likeQueryMethod";
+
+const {proxy} = getCurrentInstance();
+
+const accidentsList = 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 + '/crmMajorWorkSafetyAccidents/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    notifiedEntity: null,
+    notificationAuthority: null,
+    notificationDate: null,
+    notificationReason: null
+  },
+  rules: {
+    companyName: [
+      {
+        required: true, message: "企业名称不能为空", trigger: "blur" }
+    ],
+    unifiedSocialCreditCode: [
+      {
+        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,'company_name',queryParams.value.companyName);
+  listAccidents(toServerObj).then(response => {
+    accidentsList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    companyName: null,
+    unifiedSocialCreditCode: '',
+    notifiedEntity: null,
+    notificationAuthority: null,
+    notificationDate: null,
+    notificationReason: null
+  };
+  proxy.resetForm("accidentsRef");
+}
+
+/** 搜索按钮操作 */
+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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delAccidents();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delAccidentsBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmMajorWorkSafetyAccidents/exportData', {
+    ...queryParams.value
+  }, `重大安全生产事故通报信息_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmMajorWorkSafetyAccidents/getUploadTemplate',{}, `重大安全生产事故通报信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 14 - 13
src/views/basicData/penalty/index.vue

@@ -447,19 +447,20 @@ function submitFileForm() {
   upload.open = false;
 }
 function handleImport() {
-  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'administrative_party_name',queryParams.value.administrativePartyName);
-  listPenalty(toServerObj).then(res=>{
-    if(res.records.length >0){
-      ElMessage({
-        type:'warning',
-        message:'当前已经有数据,请删除后再导入'
-      })
-      return
-    }else {
-      upload.title = '用户导入'
-      upload.open = true
-    }
-  })
+  upload.open = true
+  // let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'administrative_party_name',queryParams.value.administrativePartyName);
+  // listPenalty(toServerObj).then(res=>{
+  //   if(res.records.length >0){
+  //     ElMessage({
+  //       type:'warning',
+  //       message:'当前已经有数据,请删除后再导入'
+  //     })
+  //     return
+  //   }else {
+  //     upload.title = '用户导入'
+  //     upload.open = true
+  //   }
+  // })
 }
 
 

+ 16 - 1
src/views/basicData/qyzjl/jscq/gxjsqy/index.vue

@@ -9,6 +9,14 @@
             @keyup.enter="handleQuery"
         />
       </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <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>
@@ -73,7 +81,13 @@
     <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="companyName" :show-overflow-tooltip='true'/>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
       <el-table-column label="高企证号" align="center" prop="highTechCertNo" :show-overflow-tooltip='true'/>
+      <el-table-column label="有效期结束时间" align="center" prop="endDate" width="180">
+        <template #default="scope">
+          <span>{{ parseTime(scope.row.endDate, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
     </el-table>
 
     <div style="position: fixed;bottom: 20px;right: 10px;">
@@ -181,6 +195,7 @@ const data = reactive({
     pageSize: 20,
     companyName: null,
     highTechCertNo: null,
+    unifiedSocialCreditCode:'',
   },
   rules: {
   }
@@ -191,7 +206,7 @@ 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);
+  let toServerObj = likeQueryMethod('unified_social_credit_code', queryParams.value.unifiedSocialCreditCode, queryParams.value.pageNum, queryParams.value.pageSize,'company_name',queryParams.value.companyName);
   listEnterprise(toServerObj).then(response => {
     enterpriseList.value = response.records;
     total.value = response.total;

+ 440 - 0
src/views/basicData/qyzjl/jscq/gxqqyxxyl/index.vue

@@ -0,0 +1,440 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="企业名称" prop="enterpriseName" label-width="200">
+        <el-input
+            v-model="queryParams.enterpriseName"
+            placeholder="请输入企业名称"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="统一社会信用代码" prop="unifiedSocialCreditCode" label-width="200">
+        <el-input
+            v-model="queryParams.unifiedSocialCreditCode"
+            placeholder="请输入统一社会信用代码"
+            clearable
+            @keyup.enter="handleQuery"
+        />
+      </el-form-item>
+<!--      <el-form-item label="原材料名称" prop="rawMaterialNames" label-width="200">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.rawMaterialNames"-->
+<!--            placeholder="请输入原材料名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="货物名称" prop="commodityName" label-width="200">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.commodityName"-->
+<!--            placeholder="请输入货物名称"-->
+<!--            clearable-->
+<!--            @keyup.enter="handleQuery"-->
+<!--        />-->
+<!--      </el-form-item>-->
+<!--      <el-form-item label="项目名称" prop="projectName" label-width="200">-->
+<!--        <el-input-->
+<!--            v-model="queryParams.projectName"-->
+<!--            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-popconfirm
+            title="你确定清除所有数据?"
+            confirm-button-text="是的"
+            cancel-button-text="不是"
+            :icon="InfoFilled"
+            icon-color="#626AEF"
+            @confirm="handleDelete"
+        >
+          <template #reference>
+            <el-button
+                type="danger"
+                plain
+                icon="Delete"
+                v-hasPermi="['basicData:information:remove']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:information:remove']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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>
+      <el-col :span="1.5">
+        <el-button type="success" plain icon="Download" @click="downloadTemplate">
+          下载导入模版
+        </el-button>
+      </el-col>
+    </el-row>
+
+    <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="enterpriseName" :show-overflow-tooltip='true'/>
+      <el-table-column label="统一社会信用代码" align="center" prop="unifiedSocialCreditCode" width="200"/>
+      <el-table-column label="经营情况" align="center" prop="operatingCondition" :show-overflow-tooltip='true'/>
+      <el-table-column label="企业类型" align="center" prop="enterpriseType" :show-overflow-tooltip='true'/>
+      <el-table-column label="产业链分类" align="center" prop="industrialChainClassification" :show-overflow-tooltip='true'/>
+      <el-table-column label="产业链链长" align="center" prop="industrialChainLength" :show-overflow-tooltip='true'/>
+      <el-table-column label="入园时间" align="center" prop="admissionTime" :show-overflow-tooltip='true'/>
+      <el-table-column label="入规时间" align="center" prop="complianceTime" :show-overflow-tooltip='true'/>
+      <el-table-column label="包保部门" align="center" prop="guaranteedDepartment" :show-overflow-tooltip='true'/>
+      <el-table-column label="包保领导" align="center" prop="guaranteedLeader" :show-overflow-tooltip='true'/>
+      <el-table-column label="包保责任人" align="center" prop="guaranteedResponsiblePerson" :show-overflow-tooltip='true'/>
+      <el-table-column label="企业联系人及联系" align="center" prop="enterpriseContactPersonAndContact" :show-overflow-tooltip='true'/>
+      <el-table-column label="主要产品" align="center" prop="mainProducts" :show-overflow-tooltip='true'/>
+      <el-table-column label="原材料名称" align="center" prop="rawMaterialNames" :show-overflow-tooltip='true'/>
+      <el-table-column label="供应商" align="center" prop="supplier" :show-overflow-tooltip='true'/>
+      <el-table-column label="产地" align="center" prop="placeOfOrigin" :show-overflow-tooltip='true'/>
+      <el-table-column label="年采购价值" align="center" prop="annualProcurementValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="货物名称" align="center" prop="commodityName" :show-overflow-tooltip='true'/>
+      <el-table-column label="起运地" align="center" prop="placeOfDeparture" :show-overflow-tooltip='true'/>
+      <el-table-column label="目的地" align="center" prop="destination" :show-overflow-tooltip='true'/>
+      <el-table-column label="运输方式" align="center" prop="transportationMode" :show-overflow-tooltip='true'/>
+      <el-table-column label="年物流费用" align="center" prop="annualLogisticsExpense" :show-overflow-tooltip='true'/>
+      <el-table-column label="合作公司" align="center" prop="cooperativeCompany" :show-overflow-tooltip='true'/>
+      <el-table-column label="项目名称" align="center" prop="projectName" :show-overflow-tooltip='true'/>
+      <el-table-column label="新增投资" align="center" prop="additionalInvestment" :show-overflow-tooltip='true'/>
+      <el-table-column label="预计年新增产值" align="center" prop="expectedAnnualOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="预计实现税收" align="center" prop="expectedTaxRevenue" :show-overflow-tooltip='true'/>
+      <el-table-column label="具体项目内容" align="center" prop="specificProjectContent" :show-overflow-tooltip='true'/>
+      <el-table-column label="总面积" align="center" prop="totalArea" :show-overflow-tooltip='true'/>
+      <el-table-column label="租赁" align="center" prop="lease" :show-overflow-tooltip='true'/>
+      <el-table-column label="占地面积" align="center" prop="floorSpace" :show-overflow-tooltip='true'/>
+      <el-table-column label="建筑面积" align="center" prop="buildingArea" :show-overflow-tooltip='true'/>
+      <el-table-column label="上年产值" align="center" prop="lastYearOutput" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年已完成产值" align="center" prop="thisCompletedOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年预计产值" align="center" prop="thisExpectedOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年产值完成进度%" align="center" prop="thisOutputValueCompletionProgress" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年第一季度产值" align="center" prop="thisFirstQuarterTaxation" :show-overflow-tooltip='true'/>
+      <el-table-column label="上年第一季度产值" align="center" prop="lastYearFirstQuarterTaxation" :show-overflow-tooltip='true'/>
+      <el-table-column label="产值增速%" align="center" prop="growthRateTaxation" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年第一季度税收" align="center" prop="thisFirstQuarterElectricity" :show-overflow-tooltip='true'/>
+      <el-table-column label="上年第一季度税收" align="center" prop="lastYearFirstQuarterElectricity" :show-overflow-tooltip='true'/>
+      <el-table-column label="税收增速%" align="center" prop="growthRateElectricity" :show-overflow-tooltip='true'/>
+      <el-table-column label="本年第一季度用电" align="center" prop="thisFirstQuarterOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="上年第一季度用电" align="center" prop="lastYearFirstQuarterOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="用电增速%" align="center" prop="growthRateOutputValue" :show-overflow-tooltip='true'/>
+      <el-table-column label="用工人数(个)" align="center" prop="numberOfEmployees" :show-overflow-tooltip='true'/>
+      <el-table-column label="天然气m³" align="center" prop="naturalGas" :show-overflow-tooltip='true'/>
+      <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip='true'/>
+    </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>
+
+    <!-- 添加或修改企业信息对话框 -->
+  </div>
+</template>
+
+<script setup name="Information">
+import {
+  listInformation,
+  getInformation,
+  delInformation,
+  delInformationBatch
+} from "@/api/basicData/information27";
+import {reactive, ref, toRaw} from "vue";
+import {getToken} from "@/utils/auth";
+import {ElLoading, 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 + '/crmEnterpriseInformation/importData'
+})
+const handleFileSuccess = (e) => {
+  if (e.code == 200) {
+    ElMessage({
+      type: "success",
+      message: e.msg
+    })
+    getList()
+    proxy.$refs['uploadRef']?.clearFiles()
+  } else {
+    ElMessage({
+      type: "error",
+      message: e.msg
+    })
+    proxy.$refs['uploadRef']?.clearFiles()
+  }
+}
+
+function submitFileForm() {
+  proxy.$refs['uploadRef']?.submit();
+  upload.open = false;
+}
+
+function handleImport() {
+  upload.open = true
+}
+
+const data = reactive({
+  form: {},
+  queryParams: {
+    pageNum: 1,
+    pageSize: 20,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    operatingCondition: null,
+    enterpriseType: null,
+    industrialChainClassification: null,
+    industrialChainLength: null,
+    admissionTime: null,
+    complianceTime: null,
+    guaranteedDepartment: null,
+    guaranteedLeader: null,
+    guaranteedResponsiblePerson: null,
+    enterpriseContactPersonAndContact: null,
+    mainProducts: null,
+    rawMaterialNames: null,
+    supplier: null,
+    placeOfOrigin: null,
+    annualProcurementValue: null,
+    commodityName: null,
+    placeOfDeparture: null,
+    destination: null,
+    transportationMode: null,
+    annualLogisticsExpense: null,
+    cooperativeCompany: null,
+    projectName: null,
+    additionalInvestment: null,
+    expectedAnnualOutputValue: null,
+    expectedTaxRevenue: null,
+    specificProjectContent: null,
+    totalArea: null,
+    lease: null,
+    floorSpace: null,
+    buildingArea: null,
+    lastYearOutput: null,
+    thisCompletedOutputValue: null,
+    thisExpectedOutputValue: null,
+    thisOutputValueCompletionProgress: null,
+    thisFirstQuarterTaxation: null,
+    lastYearFirstQuarterTaxation: null,
+    growthRateTaxation: null,
+    thisFirstQuarterElectricity: null,
+    lastYearFirstQuarterElectricity: null,
+    growthRateElectricity: null,
+    thisFirstQuarterOutputValue: null,
+    lastYearFirstQuarterOutputValue: null,
+    growthRateOutputValue: null,
+    numberOfEmployees: null,
+    naturalGas: 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,'enterprise_name',queryParams.value.enterpriseName);
+  listInformation(toServerObj).then(response => {
+    informationList.value = response.records;
+    total.value = response.total;
+    loading.value = false;
+  });
+}
+
+
+// 表单重置
+function reset() {
+  form.value = {
+    id: null,
+    enterpriseName: null,
+    unifiedSocialCreditCode: '',
+    operatingCondition: null,
+    enterpriseType: null,
+    industrialChainClassification: null,
+    industrialChainLength: null,
+    admissionTime: null,
+    complianceTime: null,
+    guaranteedDepartment: null,
+    guaranteedLeader: null,
+    guaranteedResponsiblePerson: null,
+    enterpriseContactPersonAndContact: null,
+    mainProducts: null,
+    rawMaterialNames: null,
+    supplier: null,
+    placeOfOrigin: null,
+    annualProcurementValue: null,
+    commodityName: null,
+    placeOfDeparture: null,
+    destination: null,
+    transportationMode: null,
+    annualLogisticsExpense: null,
+    cooperativeCompany: null,
+    projectName: null,
+    additionalInvestment: null,
+    expectedAnnualOutputValue: null,
+    expectedTaxRevenue: null,
+    specificProjectContent: null,
+    totalArea: null,
+    lease: null,
+    floorSpace: null,
+    buildingArea: null,
+    lastYearOutput: null,
+    thisCompletedOutputValue: null,
+    thisExpectedOutputValue: null,
+    thisOutputValueCompletionProgress: null,
+    thisFirstQuarterTaxation: null,
+    lastYearFirstQuarterTaxation: null,
+    growthRateTaxation: null,
+    thisFirstQuarterElectricity: null,
+    lastYearFirstQuarterElectricity: null,
+    growthRateElectricity: null,
+    thisFirstQuarterOutputValue: null,
+    lastYearFirstQuarterOutputValue: null,
+    growthRateOutputValue: null,
+    numberOfEmployees: null,
+    naturalGas: 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;
+}
+
+
+/** 删除按钮操作 */
+async function handleDelete(row) {
+  const res = await delInformation();
+  if(res.code == 200){
+    ElMessage({
+      type:'success',
+      message:'删除成功'
+    })
+    getList();
+  }
+}
+/** 批量删除*/
+const batchDelete = (row)=>{
+  const idsToS = row.id || ids.value;
+  (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+    return delInformationBatch(toRaw(idsToS));
+  }).then(() => {
+    getList();
+    proxy.$modal.msgSuccess("删除成功");
+  }).catch(() => {});
+}
+
+/** 导出按钮操作 */
+function handleExport() {
+  proxy.download('crmEnterpriseInformation/exportData', {
+    ...queryParams.value
+  }, `企业信息_${new Date().getTime()}.xlsx`)
+}
+const downloadTemplate = ()=>{
+  proxy.download('crmEnterpriseInformation/getUploadTemplate',{}, `企业信息模板.xlsx`)
+}
+
+getList();
+</script>

+ 1 - 1
src/views/basicData/result/index.vue

@@ -487,7 +487,7 @@ function handleExport() {
   }, `食品及食用农产品监督抽检结果统计_${new Date().getTime()}.xlsx`)
 }
 const downloadTemplate = ()=>{
-  proxy.download('crmAgriculturalProductSupervisionCheckResult/getUploadTemplate',{}, `行政许可模板.xlsx`)
+  proxy.download('crmAgriculturalProductSupervisionCheckResult/getUploadTemplate',{}, `食品及食用农产品监督抽检结果统计模板.xlsx`)
 }
 
 getList();

+ 33 - 5
src/views/home/index.vue

@@ -16,10 +16,11 @@
         </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" style="position: relative"><span
-            style="position: absolute;left: 10px;">{{ index + 1 + '、' }}</span>{{ item.enterpriseName }}</div>
+    <div class="listContainer" ref="listContainer" @mouseenter="handleMouseEnter" @mouseleave="handleMouseLeave" @wheel.prevent="handleWheel">
+      <div class="listContent" ref="listContent" :style="{ transform: 'translateY(' + moveValue + 'px)' }" >
+        <div class="lsitItem" v-for="(item, index) in homeList" :key="index" style="position: relative" @click="toDetail(item)">
+          <span style="position: absolute;left: 10px;">{{ index + 1 + '、' }}</span>{{ item.enterpriseName }}
+        </div>
       </div>
     </div>
     <div class="footerContianer">
@@ -67,6 +68,33 @@ import { getHomeList } from "../../api/home/home";
 
 const router = useRouter()
 const username = localStorage.getItem('username')
+
+const toDetail = (item)=>{
+  const {unifiedSocialCreditCode, enterpriseName} = item
+  router.push({
+    path: '/CEEnterprise/companydetail',
+    query: {
+      unifiedSocialCreditCode,
+      enterpriseName
+    }
+  })
+}
+const handleWheel = (e)=>{
+  if (e.deltaY > 0) {
+    if(moveValue.value <= -limitRange.value)return;
+    moveValue.value-=20;
+  } else {
+    if(moveValue.value >= 0)return;
+    moveValue.value+=20;
+  }
+}
+const handleMouseEnter = ()=>{
+  clearInterval(interval)
+  interval = null;
+}
+const handleMouseLeave = ()=>{
+  interval = setInterval(moveList, 16.6);
+}
 const toLink = (index) => {
   switch (index) {
     case 1:
@@ -106,7 +134,7 @@ const homeList = ref([]);
 onMounted(() => {
   getHomeList().then(res => {
     if (res.code == 200) {
-      homeList.value = res.data;
+      homeList.value = res.data.result;
       nextTick(() => {
         limitRange.value = listContent.value.offsetHeight - listContainer.value.offsetHeight;
       })

+ 1 - 1
src/views/login.vue

@@ -1,7 +1,7 @@
 <template>
 	<div class="login">
 		<el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
-			<h3 class="title">怀化高新区企业信用信息分级分类管理平台</h3>
+			<h3 class="title">怀化高新区企业信用分级分类管理平台</h3>
 			<el-form-item prop="username">
 				<el-input v-model="loginForm.username" type="text" size="large" auto-complete="off" placeholder="账号">
 					<template #prefix><svg-icon icon-class="user" class="el-input__icon input-icon" /></template>

+ 2 - 2
vite.config.js

@@ -5,8 +5,8 @@ import createVitePlugins from './vite/plugins'
 // https://vitejs.dev/config/
 let dev = {
   // shaoyang: `http://42.48.99.5:20002`
-  shaoyang: `http://192.168.110.235:20002`
-  // shaoyang: `http://192.168.110.13:20002`
+  // shaoyang: `http://192.168.110.235:20002`
+  shaoyang: `http://192.168.110.13:20002`
 }
 export default defineConfig(({ mode, command }) => {
   const env = loadEnv(mode, process.cwd())