From a70d04ddb0117cef12752422fa33c864144bf8db Mon Sep 17 00:00:00 2001
From: 王恒 <318726284@qq.com>
Date: 星期五, 18 七月 2025 17:02:42 +0800
Subject: [PATCH] '对接导入导出接口'
---
/dev/null | 44 -----------
src/api/system/manage.ts | 16 ++--
src/views/system/manage/index.vue | 162 ++++++++++++++++++++++++++-------------
3 files changed, 115 insertions(+), 107 deletions(-)
diff --git a/src/api/system/manage.js b/src/api/system/manage.js
deleted file mode 100644
index 274c55a..0000000
--- a/src/api/system/manage.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import request from '@/utils/request'
-
-// 鏌ヨ璁″垝绠$悊鍒楄〃
-export function listManage(query) {
- return request({
- url: '/system/manage/list',
- method: 'get',
- params: query
- })
-}
-
-// 鏌ヨ璁″垝绠$悊璇︾粏
-export function getManage(id) {
- return request({
- url: '/system/manage/' + id,
- method: 'get'
- })
-}
-
-// 鏂板璁″垝绠$悊
-export function addManage(data) {
- return request({
- url: '/system/manage',
- method: 'post',
- data: data
- })
-}
-
-// 淇敼璁″垝绠$悊
-export function updateManage(data) {
- return request({
- url: '/system/manage',
- method: 'put',
- data: data
- })
-}
-
-// 鍒犻櫎璁″垝绠$悊
-export function delManage(id) {
- return request({
- url: '/system/manage/' + id,
- method: 'delete'
- })
-}
diff --git a/src/api/system/manage.ts b/src/api/system/manage.ts
index 9450bb0..52fca89 100644
--- a/src/api/system/manage.ts
+++ b/src/api/system/manage.ts
@@ -1,7 +1,7 @@
import request from "@/utils/request";
// 鏌ヨ璁″垝绠$悊鍒楄〃
-export function listManage(query) {
+export function listManage(query: any) {
return request({
url: "/system/manage/list",
method: "get",
@@ -10,7 +10,7 @@
}
// 鏌ヨ璁″垝绠$悊璇︾粏
-export function getManage(id) {
+export function getManage(id: any) {
return request({
url: "/system/manage/" + id,
method: "get",
@@ -18,25 +18,25 @@
}
// 鏂板璁″垝绠$悊
-export function addManage(data) {
+export function addManage(data: any) {
return request({
- url: "/system/manage",
+ url: "/system/manage/add",
method: "post",
data: data,
});
}
// 淇敼璁″垝绠$悊
-export function updateManage(data) {
+export function updateManage(data: any) {
return request({
- url: "/system/manage",
- method: "put",
+ url: "/system/manage/upd",
+ method: "post",
data: data,
});
}
// 鍒犻櫎璁″垝绠$悊
-export function delManage(id) {
+export function delManage(id: any) {
return request({
url: "/system/manage/" + id,
method: "delete",
diff --git a/src/views/system/manage/index.vue b/src/views/system/manage/index.vue
index 118edb2..eed9aa5 100644
--- a/src/views/system/manage/index.vue
+++ b/src/views/system/manage/index.vue
@@ -44,6 +44,9 @@
:default-expand-all="isExpandAll" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
+ <el-table-column prop="planNo" label="搴忓彿" width="55">
+ <template #default="scope">{{ scope.$index + 1 }}</template>
+ </el-table-column>
<el-table-column prop="planNo" label="璁″垝缂栧彿" width="180"></el-table-column>
<el-table-column prop="planName" label="璁″垝鍚嶇О" width="180"></el-table-column>
<el-table-column prop="makeOrgName" label="鍒跺畾鏈烘瀯" width="180"></el-table-column>
@@ -58,7 +61,7 @@
<el-table-column prop="planStatus" label="鐘舵��" width="180"></el-table-column>
<el-table-column label="鎿嶄綔" align="center" fixed="right" class-name="small-padding fixed-width" width="240">
<template #default="scope">
- <el-link type="info" @click="createQrcodeHandler(scope.row)">鏌ョ湅</el-link>
+ <el-link type="info" @click="handleView(scope.row)">鏌ョ湅</el-link>
<el-divider direction="vertical" />
<el-link type="primary" @click="handleAdd(scope.row)">缂栬緫</el-link>
<el-divider direction="vertical" />
@@ -74,32 +77,44 @@
<el-form ref="deptRef" :model="form" :rules="rules" label-width="140px">
<el-row :gutter="20">
<el-col :span="12">
+ <el-form-item label="璁″垝缂栧彿" prop="planNo">
+ <el-input v-model="form.planNo" placeholder="璇疯緭鍏ヨ鍒掑悕绉�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
<el-form-item label="璁″垝鍚嶇О" prop="planName">
<el-input v-model="form.planName" placeholder="璇疯緭鍏ヨ鍒掑悕绉�" />
</el-form-item>
</el-col>
+ </el-row>
+ <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="鍒跺畾璁″垝鐨勬満鏋�" prop="makeOrgName">
<el-input v-model="form.makeOrgName" placeholder="璇疯緭鍏ュ埗瀹氳鍒掔殑鏈烘瀯" />
</el-form-item>
</el-col>
- </el-row>
- <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="琚鏌ョ殑瀵硅薄" prop="checkdObject">
<el-input v-model="form.checkdObject" placeholder="璇疯緭鍏ヨ妫�鏌ョ殑瀵硅薄" />
</el-form-item>
</el-col>
+ </el-row>
+ <el-row :gutter="20">
<el-col :span="12">
<el-form-item label="缁熶竴绀句細淇$敤浠g爜" prop="unifiedSocialCreditCode">
<el-input v-model="form.unifiedSocialCreditCode" placeholder="璇疯緭鍏ョ粺涓�绀句細淇$敤浠g爜" />
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <el-form-item label="鎵�灞炶涓�" prop="industry">
+ <el-input v-model="form.industry" placeholder="璇疯緭鍏ユ墍灞炶涓�" />
+ </el-form-item>
+ </el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
- <el-form-item label="琛屼笟" prop="industry">
- <el-input v-model="form.industry" placeholder="璇疯緭鍏ヨ涓�" />
+ <el-form-item label="妫�鏌ユ柟寮�" prop="executiveSection">
+ <el-input v-model="form.checkdType" placeholder="璇疯緭鍏ユ鏌ユ柟寮�" />
</el-form-item>
</el-col>
<el-col :span="12">
@@ -117,19 +132,24 @@
</el-row>
<el-row :gutter="20">
<el-col :span="12">
+ <el-form-item label="璁″垝鏈堜唤" prop="planMonth">
+ <el-date-picker v-model="form.planMonth" type="month" format="YYYY-MM" value-format="YYYY-MM"
+ placeholder="璇烽�夋嫨璁″垝鏈堜唤" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
<el-form-item label="璁″垝棰戠巼" prop="planFrequency">
<el-input v-model="form.planFrequency" placeholder="璇疯緭鍏ヨ鍒掗鐜�" />
</el-form-item>
</el-col>
+ </el-row>
+ <el-row :gutter="20">
<el-col :span="12">
- <el-form-item label="璁″垝鏈堜唤" prop="planMonth">
- <el-input v-model="form.planMonth" placeholder="璇疯緭鍏ヨ鍒掓湀浠�" />
+ <el-form-item label="鐘舵��" prop="planStatus">
+ <el-input v-model="form.planStatus" placeholder="璇疯緭鍏ョ姸鎬�" />
</el-form-item>
</el-col>
</el-row>
- <!-- <el-form-item label="鐘舵��">
- <el-switch v-model="form.companyStatus" :active-value="0" :inactive-value="1"></el-switch>
- </el-form-item> -->
</el-form>
<template #footer>
<div class="dialog-footer">
@@ -138,9 +158,6 @@
</div>
</template>
</el-dialog>
- <exportRecord ref="exportRecordCom" :recordRow="recordRow" @uploadList="getList"></exportRecord>
- <judgeCom ref="judgeComRef" @upload="getList"></judgeCom>
- <createQrcode ref="createQrcodeRef"></createQrcode>
<!-- 璁″垝瀵煎叆瀵硅瘽妗� -->
<el-dialog :title="upload.title" v-model="upload.open" width="400px" append-to-body>
@@ -165,18 +182,61 @@
</div>
</template>
</el-dialog>
+
+ <!-- 璁″垝璇︾粏 -->
+ <el-dialog title="璁″垝璇︽儏" v-model="planOpen" width="700px" append-to-body>
+ <el-form label-width="140px">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="璁″垝缂栧彿锛�">{{ planDetail.planNo }}</el-form-item>
+ <el-form-item label="璁″垝鍚嶇О锛�">{{ planDetail.planName }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍒跺畾璁″垝鐨勬満鏋勶細">{{ planDetail.makeOrgName }}</el-form-item>
+ <el-form-item label="琚鏌ョ殑瀵硅薄锛�">{{ planDetail.checkdObject }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="缁熶竴绀句細淇$敤浠g爜锛�">{{ planDetail.unifiedSocialCreditCode }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鎵�灞炶涓氾細">{{ planDetail.industry }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="妫�鏌ユ柟寮忥細">{{ planDetail.checkdType }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鎵ц绉戝锛�">{{ planDetail.executiveSection }}</el-form-item>
+ </el-col>
+ <el-col :span="24">
+ <el-form-item label="妫�鏌ュ唴瀹癸細">{{ planDetail.checkdContent }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="璁″垝鏈堜唤锛�">{{ planDetail.planMonth }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="璁″垝棰戠巼锛�">{{ planDetail.planFrequency }}</el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鐘舵�侊細">{{ planDetail.planStatus }}</el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <template #footer>
+ <div class="dialog-footer">
+ <el-button @click="planOpen = false; planDetail = {}">鍏� 闂�</el-button>
+ </div>
+ </template>
+ </el-dialog>
</div>
</template>
<script setup name="Dept">
import { getToken } from "@/utils/auth";
import { listCompany, addCompany, updStatus, delCompany, updateCompany, getCompany } from "@/api/system/company/company";
-import { listManage } from "@/api/system/manage";
+import { listManage, addManage, getManage, updateManage, delManage } from "@/api/system/manage";
import { computed } from "vue";
-import { judgeStatus, companyStatus, scopeList } from '@/utils/mapList/index.ts'
import useSettingsStore from "@/store/modules/settings";
import { download } from '@/utils/request'; // 涓嬭浇鏂囦欢
-const thcolor = computed(() => useSettingsStore().theme);
const { proxy } = getCurrentInstance();
const { sys_normal_disable } = proxy.useDict("sys_normal_disable");
const deptList = ref([]);
@@ -184,25 +244,10 @@
const loading = ref(true);
const showSearch = ref(true);
const title = ref("");
-const deptOptions = ref([]);
const isExpandAll = ref(false);
const refreshTable = ref(true);
-const exporttem = ref()
-const exportRecordCom = ref()
-const judgeComRef = ref()
-const createQrcodeRef = ref()
-const options = reactive({
- companyStatus: [
- {
- label: '姝e父',
- value: 0
- },
- {
- label: '绂佺敤',
- value: 1
- },
- ],
-})
+const planOpen = ref(false);
+const planDetail = ref({});
const data = reactive({
form: {},
queryParams: {
@@ -214,6 +259,7 @@
total: 1
},
rules: {
+ planNo: [{ required: true, message: "璁″垝缂栧彿涓嶈兘涓虹┖", trigger: "blur" }],
planName: [{ required: true, message: "璁″垝鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }],
makeOrgName: [{ required: true, message: "鍒跺畾璁″垝鐨勬満鏋勪笉鑳戒负绌�", trigger: "blur" }],
checkdObject: [{ required: true, message: "琚鏌ュ璞′笉鑳戒负绌�", trigger: "blur" }],
@@ -223,6 +269,8 @@
executiveSection: [{ required: true, message: "鎵ц绉戝涓嶈兘涓虹┖", trigger: "blur" }],
planFrequency: [{ required: true, message: "璁″垝棰戞涓嶈兘涓虹┖", trigger: "blur" }],
planMonth: [{ required: true, message: "璁″垝鏈堜唤涓嶈兘涓虹┖", trigger: "blur" }],
+ checkdType: [{ required: true, message: "妫�鏌ユ柟寮忎笉鑳戒负绌�", trigger: "blur" }],
+ planStatus: [{ required: true, message: "鐘舵�佷笉鑳戒负绌�", trigger: "blur" }],
},
});
@@ -243,8 +291,7 @@
});
const { queryParams, form, rules } = toRefs(data);
-const recordRow = ref([])
-/** 鏌ヨ浼佷笟鍒楄〃 */
+/** 鏌ヨ璁″垝鍒楄〃 */
function getList() {
loading.value = true;
listManage(queryParams.value).then((response) => {
@@ -262,6 +309,7 @@
/** 琛ㄥ崟閲嶇疆 */
function reset() {
form.value = {
+ planNo: '', // 璁″垝缂栧彿
planName: '', // 璁″垝鍚嶇О
makeOrgName: '', // 鍒跺畾鏈烘瀯
checkdObject: '', // 琚鏌ュ璞�
@@ -271,6 +319,8 @@
executiveSection: '', // 鎵ц绉戝
planFrequency: '', // 璁″垝棰戞
planMonth: '', // 璁″垝鏈堜唤
+ checkdType: '', // 妫�鏌ユ柟寮�
+ planStatus: '', // 鐘舵��
};
proxy.resetForm("deptRef");
}
@@ -285,22 +335,28 @@
handleQuery();
}
function getDetails(id) {
- getCompany(id).then((response) => {
+ getManage(id).then((response) => {
form.value = response.data;
open.value = true;
- // title.value = "鏌ョ湅浼佷笟";
});
}
+
+/** 璇︾粏鎸夐挳鎿嶄綔 */
+function handleView(row) {
+ planOpen.value = true;
+ planDetail.value = row
+ planOpen.value = true;
+}
+
/** 鏂板鎸夐挳鎿嶄綔 */
function handleAdd(row) {
if (row) {
- // form.value = row
title.value = "缂栬緫璁″垝";
- getDetails(row.companyId)
+ getDetails(row.id)
} else {
- form.value = {
- companyStatus: 0
- }
+ // form.value = {
+ // companyStatus: 0
+ // }
title.value = "娣诲姞璁″垝";
open.value = true;
}
@@ -310,14 +366,14 @@
function submitForm() {
proxy.$refs["deptRef"].validate((valid) => {
if (valid) {
- if (form.value.companyId != undefined) {
- updateCompany(form.value).then((response) => {
+ if (form.value.id != undefined) {
+ updateManage(form.value).then((response) => {
proxy.$modal.msgSuccess("淇敼鎴愬姛");
open.value = false;
getList();
});
} else {
- addCompany(form.value).then((response) => {
+ addManage(form.value).then((response) => {
proxy.$modal.msgSuccess("鏂板鎴愬姛");
open.value = false;
getList();
@@ -331,7 +387,7 @@
proxy.$modal
.confirm('鏄惁纭鍒犻櫎璇ユ暟鎹�?')
.then(function () {
- return delCompany({ delId: row.companyId });
+ return delManage(row.id);
})
.then(() => {
getList();
@@ -353,7 +409,7 @@
/** 涓嬭浇妯℃澘鎿嶄綔 */
function importTemplate() {
- proxy.download("system/user/importTemplate", {}, `user_template_${new Date().getTime()}.xlsx`);
+ proxy.download("system/manage/exportTemplate", {}, `plan_template_${new Date().getTime()}.xlsx`);
}
// 淇敼浼佷笟淇℃伅
@@ -367,18 +423,14 @@
})
}
-function createQrcodeHandler(row) {
- createQrcodeRef.value.openDialog(row)
-}
let valueArr = []
function downLoadCode() {
- download('/system/company/downloadQrcode', {
- companyIds: valueArr.join()
- }, "浼佷笟鍥剧墖.zip")
+ download('/system/manage/export', {
+ ids: valueArr.join()
+ }, `plan_${new Date().getTime()}.xlsx`)
}
function handleSelectionChange(e) {
- console.log(e)
- valueArr = e.map(item => item.companyId)
+ valueArr = e.map(item => item.id)
}
getList();
function selectableFun(e) {
--
Gitblit v1.9.1