瀏覽代碼

新增的8张表

nahida 1 年之前
父節點
當前提交
eaa9cf8912

+ 48 - 0
src/api/basicData/xcrAssociationHonor.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询协会等社会组织颁发的荣誉信息列表
+export function listHonor(query) {
+  return request({
+    url: '/basicData/xcrAssociationHonor/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询协会等社会组织颁发的荣誉信息详细
+export function getHonor(id) {
+  return request({
+    url: '/basicData/xcrAssociationHonor/' + id,
+    method: 'get'
+  })
+}
+
+// 新增协会等社会组织颁发的荣誉信息
+export function addHonor(data) {
+  return request({
+    url: '/basicData/xcrAssociationHonor',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改协会等社会组织颁发的荣誉信息
+export function updateHonor(data) {
+  return request({
+    url: '/basicData/xcrAssociationHonor',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除协会等社会组织颁发的荣誉信息
+export function delHonor(id) {
+  return request({
+    url: '/basicData/xcrAssociationHonor/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delHonorBatch(ids) {
+  return request.post('/basicData/xcrAssociationHonor/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrBankCreditRatings.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询银行信用评级信息列表
+export function listRatings(query) {
+  return request({
+    url: '/basicData/xcrBankCreditRatings/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询银行信用评级信息详细
+export function getRatings(id) {
+  return request({
+    url: '/basicData/xcrBankCreditRatings/' + id,
+    method: 'get'
+  })
+}
+
+// 新增银行信用评级信息
+export function addRatings(data) {
+  return request({
+    url: '/basicData/xcrBankCreditRatings',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改银行信用评级信息
+export function updateRatings(data) {
+  return request({
+    url: '/basicData/xcrBankCreditRatings',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除银行信用评级信息
+export function delRatings(id) {
+  return request({
+    url: '/basicData/xcrBankCreditRatings/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delRatingsBatch(ids) {
+  return request.post('/basicData/xcrBankCreditRatings/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrBrandHonors.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询品牌荣誉信息列表
+export function listHonors(query) {
+  return request({
+    url: '/basicData/xcrBrandHonors/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询品牌荣誉信息详细
+export function getHonors(id) {
+  return request({
+    url: '/basicData/xcrBrandHonors/' + id,
+    method: 'get'
+  })
+}
+
+// 新增品牌荣誉信息
+export function addHonors(data) {
+  return request({
+    url: '/basicData/xcrBrandHonors',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改品牌荣誉信息
+export function updateHonors(data) {
+  return request({
+    url: '/basicData/xcrBrandHonors',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除品牌荣誉信息
+export function delHonors(id) {
+  return request({
+    url: '/basicData/xcrBrandHonors/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delHonorsBatch(ids) {
+  return request.post('/basicData/xcrBrandHonors/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrCharitableActivities.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询公益慈善信息列表
+export function listActivities(query) {
+  return request({
+    url: '/basicData/xcrCharitableActivities/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询公益慈善信息详细
+export function getActivities(id) {
+  return request({
+    url: '/basicData/xcrCharitableActivities/' + id,
+    method: 'get'
+  })
+}
+
+// 新增公益慈善信息
+export function addActivities(data) {
+  return request({
+    url: '/basicData/xcrCharitableActivities',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改公益慈善信息
+export function updateActivities(data) {
+  return request({
+    url: '/basicData/xcrCharitableActivities',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除公益慈善信息
+export function delActivities(id) {
+  return request({
+    url: '/basicData/xcrCharitableActivities/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delActivitiesBatch(ids) {
+  return request.post('/basicData/xcrCharitableActivities/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrCreditEvaluations.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询其他领域信用等级列表
+export function listEvaluations(query) {
+  return request({
+    url: '/basicData/xcrCreditEvaluations/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询其他领域信用等级详细
+export function getEvaluations(id) {
+  return request({
+    url: '/basicData/xcrCreditEvaluations/' + id,
+    method: 'get'
+  })
+}
+
+// 新增其他领域信用等级
+export function addEvaluations(data) {
+  return request({
+    url: '/basicData/xcrCreditEvaluations',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改其他领域信用等级
+export function updateEvaluations(data) {
+  return request({
+    url: '/basicData/xcrCreditEvaluations',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除其他领域信用等级
+export function delEvaluations(id) {
+  return request({
+    url: '/basicData/xcrCreditEvaluations/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delEvaluationsBatch(ids) {
+  return request.post('/basicData/xcrCreditEvaluations/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrHonorLists.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询政府职能部门颁发的其他荣誉列表
+export function listLists(query) {
+  return request({
+    url: '/basicData/xcrHonorLists/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询政府职能部门颁发的其他荣誉详细
+export function getLists(id) {
+  return request({
+    url: '/basicData/xcrHonorLists/' + id,
+    method: 'get'
+  })
+}
+
+// 新增政府职能部门颁发的其他荣誉
+export function addLists(data) {
+  return request({
+    url: '/basicData/xcrHonorLists',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改政府职能部门颁发的其他荣誉
+export function updateLists(data) {
+  return request({
+    url: '/basicData/xcrHonorLists',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除政府职能部门颁发的其他荣誉
+export function delLists(id) {
+  return request({
+    url: '/basicData/xcrHonorLists/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delListsBatch(ids) {
+  return request.post('/basicData/xcrHonorLists/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrOtherTechnologies.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询企业其他技术创新成果汇总列表
+export function listTechnologies(query) {
+  return request({
+    url: '/basicData/xcrOtherTechnologies/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询企业其他技术创新成果汇总详细
+export function getTechnologies(id) {
+  return request({
+    url: '/basicData/xcrOtherTechnologies/' + id,
+    method: 'get'
+  })
+}
+
+// 新增企业其他技术创新成果汇总
+export function addTechnologies(data) {
+  return request({
+    url: '/basicData/xcrOtherTechnologies',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改企业其他技术创新成果汇总
+export function updateTechnologies(data) {
+  return request({
+    url: '/basicData/xcrOtherTechnologies',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除企业其他技术创新成果汇总
+export function delTechnologies(id) {
+  return request({
+    url: '/basicData/xcrOtherTechnologies/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delTechnologiesBatch(ids) {
+  return request.post('/basicData/xcrOtherTechnologies/delete',ids)
+}

+ 48 - 0
src/api/basicData/xcrRatingAgency.js

@@ -0,0 +1,48 @@
+import request from '@/utils/request'
+
+// 查询信用评级机构评级信息列表
+export function listAgency(query) {
+  return request({
+    url: '/basicData/xcrRatingAgency/findByPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询信用评级机构评级信息详细
+export function getAgency(id) {
+  return request({
+    url: '/basicData/xcrRatingAgency/' + id,
+    method: 'get'
+  })
+}
+
+// 新增信用评级机构评级信息
+export function addAgency(data) {
+  return request({
+    url: '/basicData/xcrRatingAgency',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改信用评级机构评级信息
+export function updateAgency(data) {
+  return request({
+    url: '/basicData/xcrRatingAgency',
+    method: 'put',
+    data: data
+  })
+}
+
+// 删除信用评级机构评级信息
+export function delAgency(id) {
+  return request({
+    url: '/basicData/xcrRatingAgency/deleteAll',
+    method: 'delete'
+  })
+}
+// 批量删除行政许可
+export function delAgencyBatch(ids) {
+  return request.post('/basicData/xcrRatingAgency/delete',ids)
+}

+ 295 - 0
src/views/basicData/xcrAssociationHonor/index.vue

@@ -0,0 +1,295 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrAssociationHonorList.length"
+            v-hasPermi="['basicData:xcrAssociationHonor:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrAssociationHonor:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrAssociationHonor:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:honor:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrAssociationHonorList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="荣誉榜单名称" align="center" prop="honorListName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="荣誉榜单类型" align="center" prop="honorListType" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="来源" align="center" prop="source" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="协会/组织名称" align="center" prop="associationName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="发布年份" align="center" prop="releaseYear" :show-overflow-tooltip='true' width="150"/>
+    </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="Honor">
+  import {
+    listHonor,
+    getHonor,
+    delHonor,
+    delHonorBatch
+  } from "@/api/basicData/xcrAssociationHonor";
+  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 xcrAssociationHonorList = 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 + '/basicData/xcrAssociationHonor/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,
+                        honorListName: null,
+                        honorListType: null,
+                        source: null,
+                        associationName: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        releaseYear: null
+    },
+    rules: {
+                    honorListName: [
+                {
+                  required: true, message: "荣誉榜单名称不能为空", trigger: "blur" }
+              ],
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询协会等社会组织颁发的荣誉信息列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listHonor(toServerObj).then(response => {
+            xcrAssociationHonorList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        honorListName: null,
+                        honorListType: null,
+                        source: null,
+                        associationName: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        releaseYear: null
+    };
+    proxy.resetForm("xcrAssociationHonorRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delHonor();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delHonorBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrAssociationHonor/export', {
+      ...queryParams.value
+    }, `协会等社会组织颁发的荣誉信息_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrAssociationHonor/getUploadTemplate',{}, `协会等社会组织颁发的荣誉信息模板.xlsx`)
+  }
+  getList();
+</script>

+ 290 - 0
src/views/basicData/xcrBankCreditRatings/index.vue

@@ -0,0 +1,290 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrBankCreditRatingsList.length"
+            v-hasPermi="['basicData:xcrBankCreditRatings:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrBankCreditRatings:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrBankCreditRatings:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:ratings:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrBankCreditRatingsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="银行信用等级" align="center" prop="bankCreditRating" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评价年度" align="center" prop="evaluationYear" :show-overflow-tooltip='true' width="150"/>
+    </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="Ratings">
+  import {
+    listRatings,
+    getRatings,
+    delRatings,
+    delRatingsBatch
+  } from "@/api/basicData/xcrBankCreditRatings";
+  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 xcrBankCreditRatingsList = 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 + '/basicData/xcrBankCreditRatings/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,
+                        uniCode: '',
+                        bankCreditRating: null,
+                        evaluationYear: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+                    bankCreditRating: [
+                {
+                  required: true, message: "银行信用等级不能为空", trigger: "blur" }
+              ],
+                    evaluationYear: [
+                {
+                  required: true, message: "评价年度不能为空", trigger: "blur" }
+              ]
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询银行信用评级信息列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listRatings(toServerObj).then(response => {
+            xcrBankCreditRatingsList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        bankCreditRating: null,
+                        evaluationYear: null
+    };
+    proxy.resetForm("xcrBankCreditRatingsRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delRatings();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delRatingsBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrBankCreditRatings/export', {
+      ...queryParams.value
+    }, `银行信用评级信息_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrBankCreditRatings/getUploadTemplate',{}, `银行信用评级信息模板.xlsx`)
+  }
+  getList();
+</script>

+ 302 - 0
src/views/basicData/xcrBrandHonors/index.vue

@@ -0,0 +1,302 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrBrandHonorsList.length"
+            v-hasPermi="['basicData:xcrBrandHonors:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrBrandHonors:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrBrandHonors:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:honors:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrBrandHonorsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="品牌荣誉名称" align="center" prop="honorName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="知名品牌" align="center" prop="wellKnownBrand" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="驰名商标" align="center" prop="famousTrademark" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="荣誉颁发部门" align="center" prop="issuingDepartment" :show-overflow-tooltip='true' width="150"/>
+              <el-table-column label="取得荣誉日期" align="center" prop="awardDate" width="180">
+                <template #default="scope">
+                  <span>{{ parseTime(scope.row.awardDate, '{y}-{m}-{d}') }}</span>
+                </template>
+              </el-table-column>
+                  <el-table-column label="荣誉证明文件号" align="center" prop="honorCertificateNumber" :show-overflow-tooltip='true' width="150"/>
+    </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="Honors">
+  import {
+    listHonors,
+    getHonors,
+    delHonors,
+    delHonorsBatch
+  } from "@/api/basicData/xcrBrandHonors";
+  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 xcrBrandHonorsList = 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 + '/basicData/xcrBrandHonors/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,
+                        uniCode: '',
+                        honorName: null,
+                        wellKnownBrand: null,
+                        famousTrademark: null,
+                        issuingDepartment: null,
+                        awardDate: null,
+                        honorCertificateNumber: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+                    honorName: [
+                {
+                  required: true, message: "品牌荣誉名称不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询品牌荣誉信息列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listHonors(toServerObj).then(response => {
+            xcrBrandHonorsList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        honorName: null,
+                        wellKnownBrand: null,
+                        famousTrademark: null,
+                        issuingDepartment: null,
+                        awardDate: null,
+                        honorCertificateNumber: null
+    };
+    proxy.resetForm("xcrBrandHonorsRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delHonors();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delHonorsBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrBrandHonors/export', {
+      ...queryParams.value
+    }, `品牌荣誉信息_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrBrandHonors/getUploadTemplate',{}, `品牌荣誉信息模板.xlsx`)
+  }
+  getList();
+</script>

+ 302 - 0
src/views/basicData/xcrCharitableActivities/index.vue

@@ -0,0 +1,302 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrCharitableActivitiesList.length"
+            v-hasPermi="['basicData:xcrCharitableActivities:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrCharitableActivities:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrCharitableActivities:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:activities:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrCharitableActivitiesList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="公益慈善参与企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="公益慈善事项名称" align="center" prop="charityEventName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="公益慈善事项类型" align="center" prop="charityEventType" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="公益慈善具体事项" align="center" prop="charityEventDetails" :show-overflow-tooltip='true' width="150"/>
+              <el-table-column label="参与公益慈善日期" align="center" prop="participationDate" width="180">
+                <template #default="scope">
+                  <span>{{ parseTime(scope.row.participationDate, '{y}-{m}-{d}') }}</span>
+                </template>
+              </el-table-column>
+                  <el-table-column label="数据来源部门" align="center" prop="dataSourceDepartment" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="备注" align="center" prop="remarks" :show-overflow-tooltip='true' width="150"/>
+    </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="Activities">
+  import {
+    listActivities,
+    getActivities,
+    delActivities,
+    delActivitiesBatch
+  } from "@/api/basicData/xcrCharitableActivities";
+  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 xcrCharitableActivitiesList = 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 + '/basicData/xcrCharitableActivities/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,
+                        uniCode: '',
+                        charityEventName: null,
+                        charityEventType: null,
+                        charityEventDetails: null,
+                        participationDate: null,
+                        dataSourceDepartment: null,
+                        remarks: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "公益慈善参与企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+                    charityEventName: [
+                {
+                  required: true, message: "公益慈善事项名称不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询公益慈善信息列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listActivities(toServerObj).then(response => {
+            xcrCharitableActivitiesList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        charityEventName: null,
+                        charityEventType: null,
+                        charityEventDetails: null,
+                        participationDate: null,
+                        dataSourceDepartment: null,
+                        remarks: null
+    };
+    proxy.resetForm("xcrCharitableActivitiesRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delActivities();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delActivitiesBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrCharitableActivities/export', {
+      ...queryParams.value
+    }, `公益慈善信息_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrCharitableActivities/getUploadTemplate',{}, `公益慈善信息模板.xlsx`)
+  }
+  getList();
+</script>

+ 293 - 0
src/views/basicData/xcrCreditEvaluations/index.vue

@@ -0,0 +1,293 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrCreditEvaluationsList.length"
+            v-hasPermi="['basicData:xcrCreditEvaluations:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrCreditEvaluations:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrCreditEvaluations:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:evaluations:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrCreditEvaluationsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="信用等级" align="center" prop="creditRating" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评价年度" align="center" prop="evaluationYear" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评价领域" align="center" prop="evaluationField" :show-overflow-tooltip='true' width="150"/>
+    </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="Evaluations">
+  import {
+    listEvaluations,
+    getEvaluations,
+    delEvaluations,
+    delEvaluationsBatch
+  } from "@/api/basicData/xcrCreditEvaluations";
+  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 xcrCreditEvaluationsList = 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 + '/basicData/xcrCreditEvaluations/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,
+                        uniCode: '',
+                        creditRating: null,
+                        evaluationYear: null,
+                        evaluationField: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+                    creditRating: [
+                {
+                  required: true, message: "信用等级不能为空", trigger: "blur" }
+              ],
+                    evaluationYear: [
+                {
+                  required: true, message: "评价年度不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询其他领域信用等级列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listEvaluations(toServerObj).then(response => {
+            xcrCreditEvaluationsList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        creditRating: null,
+                        evaluationYear: null,
+                        evaluationField: null
+    };
+    proxy.resetForm("xcrCreditEvaluationsRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delEvaluations();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delEvaluationsBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrCreditEvaluations/export', {
+      ...queryParams.value
+    }, `其他领域信用等级_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrCreditEvaluations/getUploadTemplate',{}, `其他领域信用等级模板.xlsx`)
+  }
+  getList();
+</script>

+ 295 - 0
src/views/basicData/xcrHonorLists/index.vue

@@ -0,0 +1,295 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrHonorListsList.length"
+            v-hasPermi="['basicData:xcrHonorLists:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrHonorLists:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrHonorLists:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:lists:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrHonorListsList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="荣誉榜单名称" align="center" prop="honorListName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="荣誉榜单类型" align="center" prop="honorListType" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="来源" align="center" prop="source" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="颁发部门" align="center" prop="issuingDepartment" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="发布年份" align="center" prop="releaseYear" :show-overflow-tooltip='true' width="150"/>
+    </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="Lists">
+  import {
+    listLists,
+    getLists,
+    delLists,
+    delListsBatch
+  } from "@/api/basicData/xcrHonorLists";
+  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 xcrHonorListsList = 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 + '/basicData/xcrHonorLists/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,
+                        honorListName: null,
+                        honorListType: null,
+                        source: null,
+                        issuingDepartment: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        releaseYear: null
+    },
+    rules: {
+                    honorListName: [
+                {
+                  required: true, message: "荣誉榜单名称不能为空", trigger: "blur" }
+              ],
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询政府职能部门颁发的其他荣誉列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listLists(toServerObj).then(response => {
+            xcrHonorListsList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        honorListName: null,
+                        honorListType: null,
+                        source: null,
+                        issuingDepartment: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        releaseYear: null
+    };
+    proxy.resetForm("xcrHonorListsRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delLists();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delListsBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrHonorLists/export', {
+      ...queryParams.value
+    }, `政府职能部门颁发的其他荣誉_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrHonorLists/getUploadTemplate',{}, `政府职能部门颁发的其他荣誉模板.xlsx`)
+  }
+  getList();
+</script>

+ 279 - 0
src/views/basicData/xcrOtherTechnologies/index.vue

@@ -0,0 +1,279 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrOtherTechnologiesList.length"
+            v-hasPermi="['basicData:xcrOtherTechnologies:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrOtherTechnologies:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrOtherTechnologies:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:technologies:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrOtherTechnologiesList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="其他技术创新成果" align="center" prop="technologicalAchievements" :show-overflow-tooltip='true' width="150"/>
+    </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="Technologies">
+  import {
+    listTechnologies,
+    getTechnologies,
+    delTechnologies,
+    delTechnologiesBatch
+  } from "@/api/basicData/xcrOtherTechnologies";
+  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 xcrOtherTechnologiesList = 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 + '/basicData/xcrOtherTechnologies/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,
+                        uniCode: '',
+                        technologicalAchievements: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询企业其他技术创新成果汇总列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listTechnologies(toServerObj).then(response => {
+            xcrOtherTechnologiesList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        technologicalAchievements: null
+    };
+    proxy.resetForm("xcrOtherTechnologiesRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delTechnologies();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delTechnologiesBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrOtherTechnologies/export', {
+      ...queryParams.value
+    }, `企业其他技术创新成果汇总_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrOtherTechnologies/getUploadTemplate',{}, `企业其他技术创新成果汇总模板.xlsx`)
+  }
+  getList();
+</script>

+ 306 - 0
src/views/basicData/xcrRatingAgency/index.vue

@@ -0,0 +1,306 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryRef" :inline="true" v-show="showSearch" label-width="68px">
+                  <el-form-item label="统一社会信用代码" prop="uniCode" label-width="200">
+                    <el-input
+                        v-model="queryParams.uniCode"
+                        placeholder="请输入统一社会信用代码"
+                        clearable
+                        @keyup.enter="handleQuery"
+                    />
+                  </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
+        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+            type="warning"
+            plain
+            icon="Download"
+            @click="handleExport"
+            :disabled="!xcrRatingAgencyList.length"
+            v-hasPermi="['basicData:xcrRatingAgency:export']"
+        >导出
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="info"
+            plain
+            icon="Upload"
+            @click="handleImport"
+            v-hasPermi="['basicData:xcrRatingAgency:import']"
+        >导入
+        </el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+            type="danger"
+            plain
+            icon="Delete"
+            @click="batchDelete"
+            v-hasPermi="['basicData:xcrRatingAgency:delete']"
+            :disabled="ids.length === 0"
+        >批量删除
+        </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:agency:delete']"
+            >清除全表
+            </el-button>
+          </template>
+        </el-popconfirm>
+      </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="xcrRatingAgencyList" height="650" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center"/>
+        <el-table-column label="统一社会信用代码" align="center" prop="uniCode" width="200"/>
+                  <el-table-column label="企业名称" align="center" prop="enterpriseName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评级证书号码" align="center" prop="ratingCertificateNumber" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="信用等级" align="center" prop="creditRating" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评级时间" align="center" prop="ratingDate" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评级类型" align="center" prop="ratingType" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评级机构名称" align="center" prop="ratingAgencyName" :show-overflow-tooltip='true' width="150"/>
+                  <el-table-column label="评级机构统一社会信用代码" align="center" prop="ratingAgencyUnifiedSocialCreditCode" :show-overflow-tooltip='true' width="150"/>
+    </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="Agency">
+  import {
+    listAgency,
+    getAgency,
+    delAgency,
+    delAgencyBatch
+  } from "@/api/basicData/xcrRatingAgency";
+  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 xcrRatingAgencyList = 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 + '/basicData/xcrRatingAgency/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,
+                        uniCode: '',
+                        ratingCertificateNumber: null,
+                        creditRating: null,
+                        ratingDate: null,
+                        ratingType: null,
+                        ratingAgencyName: null,
+                        ratingAgencyUnifiedSocialCreditCode: null
+    },
+    rules: {
+                    enterpriseName: [
+                {
+                  required: true, message: "企业名称不能为空", trigger: "blur" }
+              ],
+                    uniCode: [
+                {
+                  required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
+              ],
+                    ratingCertificateNumber: [
+                {
+                  required: true, message: "评级证书号码不能为空", trigger: "blur" }
+              ],
+                    creditRating: [
+                {
+                  required: true, message: "信用等级不能为空", trigger: "blur" }
+              ],
+                    ratingDate: [
+                {
+                  required: true, message: "评级时间不能为空", trigger: "blur" }
+              ],
+    }
+  });
+
+  const {queryParams, form, rules} = toRefs(data);
+
+  /** 查询信用评级机构评级信息列表 */
+  function getList() {
+    loading.value = true;
+                                                                                              let toServerObj = likeQueryMethod('uni_code', queryParams.value.uniCode, queryParams.value.pageNum, queryParams.value.pageSize);
+    listAgency(toServerObj).then(response => {
+            xcrRatingAgencyList.value = response.records;
+      total.value = response.total;
+      loading.value = false;
+    });
+  }
+
+
+  // 表单重置
+  function reset() {
+    form.value = {
+                        id: null,
+                        enterpriseName: null,
+                        uniCode: '',
+                        ratingCertificateNumber: null,
+                        creditRating: null,
+                        ratingDate: null,
+                        ratingType: null,
+                        ratingAgencyName: null,
+                        ratingAgencyUnifiedSocialCreditCode: null
+    };
+    proxy.resetForm("xcrRatingAgencyRef");
+  }
+
+  /** 搜索按钮操作 */
+  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 delAgency();
+    if(res.code == 200){
+      ElMessage({
+        type:'success',
+        message:'删除成功'
+      })
+      getList();
+    }
+  }
+  /** 批量删除*/
+  const batchDelete = (row)=>{
+    const idsToS = row.xhCodeId || ids.value;
+    (proxy.$modal).confirm('是否确认删除这' + idsToS.length+'条的数据项?').then(function() {
+      return delAgencyBatch(toRaw(idsToS));
+    }).then(() => {
+      getList();
+      proxy.$modal.msgSuccess("删除成功");
+    }).catch(() => {});
+  }
+
+  /** 导出按钮操作 */
+  function handleExport() {
+    proxy.download('basicData/xcrRatingAgency/export', {
+      ...queryParams.value
+    }, `信用评级机构评级信息_${new Date().getTime()}.xlsx`)
+  }
+  const downloadTemplate = ()=>{
+    proxy.download('basicData/xcrRatingAgency/getUploadTemplate',{}, `信用评级机构评级信息模板.xlsx`)
+  }
+  getList();
+</script>

+ 3 - 3
src/views/index.vue

@@ -4,9 +4,9 @@
     <div class="carouselContainer">
       <div>
         <el-carousel :interval="5000" arrow="always" :height="'500px'">
-          <el-carousel-item>
-            <img alt='图片' src="@/assets/images/2222.jpg" style="width: 50vw;"/>
-          </el-carousel-item>
+<!--          <el-carousel-item>-->
+<!--            <img alt='图片' src="@/assets/images/2222.jpg" style="width: 50vw;"/>-->
+<!--          </el-carousel-item>-->
           <el-carousel-item>
             <img alt='图片' src="@/assets/images/1111.jpg" style="width: 50vw;"/>
           </el-carousel-item>

+ 2 - 2
vite.config.js

@@ -31,8 +31,8 @@ export default defineConfig(({ mode, command }) => {
       proxy: {
         // https://cn.vitejs.dev/config/#server-proxy
         '/dev-api': {
-          target: 'http://localhost:8900/background',
-          // target: 'http://localhost:18902',
+          // target: 'http://localhost:8900/background',
+          target: 'http://localhost:18902',
           // target: 'http://42.48.99.5:8900/background',
           changeOrigin: true,
           rewrite: (p) => p.replace(/^\/dev-api/, '')