diff --git a/src/api/data/config.ts b/src/api/data/config.ts
new file mode 100644
index 0000000..192bfcf
--- /dev/null
+++ b/src/api/data/config.ts
@@ -0,0 +1,67 @@
+import { http } from '@/utils/http/axios';
+
+/**
+ * @description: 配置列表
+ */
+export function getConfigList(params?) {
+ return http.request({
+ url: '/config/page',
+ method: 'GET',
+ params,
+ });
+}
+export function getConfigAllList(params?) {
+ return http.request({
+ url: '/config/list',
+ method: 'GET',
+ params,
+ });
+}
+/**
+ * @description: 根据ID获取详情
+ */
+export function getConfigDetail(id) {
+ return http.request({
+ url: '/config/detail/'+id,
+ method: 'get',
+ });
+}
+/**
+ * @description: 添加配置
+ */
+export function configAdd(data:any) {
+ return http.request({
+ url: '/config/add',
+ method: 'POST',
+ data,
+ });
+}
+/**
+ * @description: 更新配置
+ */
+export function configUpdate(data:any) {
+ return http.request({
+ url: '/config/update',
+ method: 'PUT',
+ data
+ });
+}
+/**
+ * @description: 删除配置
+ */
+export function configDelete(id) {
+ return http.request({
+ url: '/config/delete/'+id,
+ method: 'DELETE',
+ });
+}
+/**
+ * @description: 批量删除配置
+ */
+export function configBatchDelete(data:any) {
+ return http.request({
+ url: '/config/batchDelete',
+ method: 'DELETE',
+ data
+ });
+}
\ No newline at end of file
diff --git a/src/api/data/notice.ts b/src/api/data/notice.ts
new file mode 100644
index 0000000..a476a9c
--- /dev/null
+++ b/src/api/data/notice.ts
@@ -0,0 +1,67 @@
+import { http } from '@/utils/http/axios';
+
+/**
+ * @description: 公告列表
+ */
+export function getNoticeList(params?) {
+ return http.request({
+ url: '/notice/page',
+ method: 'GET',
+ params,
+ });
+}
+export function getNoticeAllList(params?) {
+ return http.request({
+ url: '/notice/list',
+ method: 'GET',
+ params,
+ });
+}
+/**
+ * @description: 根据ID获取详情
+ */
+export function getNoticeDetail(id) {
+ return http.request({
+ url: '/notice/detail/'+id,
+ method: 'get',
+ });
+}
+/**
+ * @description: 添加公告
+ */
+export function noticeAdd(data:any) {
+ return http.request({
+ url: '/notice/add',
+ method: 'POST',
+ data,
+ });
+}
+/**
+ * @description: 更新公告
+ */
+export function noticeUpdate(data:any) {
+ return http.request({
+ url: '/notice/update',
+ method: 'PUT',
+ data
+ });
+}
+/**
+ * @description: 删除公告
+ */
+export function noticeDelete(id) {
+ return http.request({
+ url: '/notice/delete/'+id,
+ method: 'DELETE',
+ });
+}
+/**
+ * @description: 批量删除公告
+ */
+export function noticeBatchDelete(data:any) {
+ return http.request({
+ url: '/notice/batchDelete',
+ method: 'DELETE',
+ data
+ });
+}
\ No newline at end of file
diff --git a/src/api/system/tenant.ts b/src/api/system/tenant.ts
new file mode 100644
index 0000000..afb89dd
--- /dev/null
+++ b/src/api/system/tenant.ts
@@ -0,0 +1,61 @@
+import { http } from '@/utils/http/axios';
+
+
+/**
+ * @description: 获取租户列表
+ */
+export function getTenantList(params) {
+ return http.request({
+ url: '/tenant/page',
+ method: 'get',
+ params,
+ });
+}
+/**
+ * @description: 根据ID获取详情
+ */
+export function getTenantDetail(tenantId) {
+ return http.request({
+ url: '/tenant/detail/'+tenantId,
+ method: 'get',
+ });
+}
+/**
+ * @description: 添加租户
+ */
+export function tenantAdd(data:any) {
+ return http.request({
+ url: '/tenant/add',
+ method: 'POST',
+ data,
+ });
+}
+/**
+ * @description: 更新租户
+ */
+export function tenantUpdate(data:any) {
+ return http.request({
+ url: '/tenant/update',
+ method: 'PUT',
+ data
+ });
+}
+/**
+ * @description: 删除租户
+ */
+export function tenantDelete(tenantId) {
+ return http.request({
+ url: '/tenant/delete/'+tenantId,
+ method: 'DELETE',
+ });
+}
+/**
+ * @description: 批量删除租户
+ */
+export function tenantBatchDelete(data:any) {
+ return http.request({
+ url: '/tenant/batchDelete',
+ method: 'DELETE',
+ data
+ });
+}
\ No newline at end of file
diff --git a/src/components/numberInput/index.vue b/src/components/numberInput/index.vue
new file mode 100644
index 0000000..c873770
--- /dev/null
+++ b/src/components/numberInput/index.vue
@@ -0,0 +1,68 @@
+
+ inputF(value)"
+ />
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/data/config/columns.ts b/src/views/data/config/columns.ts
new file mode 100644
index 0000000..baca339
--- /dev/null
+++ b/src/views/data/config/columns.ts
@@ -0,0 +1,24 @@
+import { h } from 'vue';
+import { ElTag } from 'element-plus';
+
+export const columns = [
+ {
+ type: 'selection',
+ },
+ {
+ label: '配置名称',
+ prop: 'name',
+ },
+ {
+ label: '排序',
+ prop: 'sort',
+ },
+ {
+ label: '创建人',
+ prop: 'createUser',
+ },
+ {
+ label: '创建时间',
+ prop: 'createTime',
+ },
+];
diff --git a/src/views/data/config/edit.vue b/src/views/data/config/edit.vue
new file mode 100644
index 0000000..717f21d
--- /dev/null
+++ b/src/views/data/config/edit.vue
@@ -0,0 +1,104 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/data/config/index.vue b/src/views/data/config/index.vue
new file mode 100644
index 0000000..b793cdf
--- /dev/null
+++ b/src/views/data/config/index.vue
@@ -0,0 +1,162 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 添加配置
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/data/config/querySchemas.ts b/src/views/data/config/querySchemas.ts
new file mode 100644
index 0000000..acba086
--- /dev/null
+++ b/src/views/data/config/querySchemas.ts
@@ -0,0 +1,11 @@
+import { FormSchema } from '@/components/Form/index';
+export const schemas: FormSchema[] = [
+ {
+ field: 'name',
+ component: 'Input',
+ label: '配置名称',
+ componentProps: {
+ placeholder: '请输入配置名称',
+ },
+ }
+];
diff --git a/src/views/data/notice/columns.ts b/src/views/data/notice/columns.ts
new file mode 100644
index 0000000..599ec3e
--- /dev/null
+++ b/src/views/data/notice/columns.ts
@@ -0,0 +1,38 @@
+import { h } from 'vue';
+import { ElTag } from 'element-plus';
+
+export const columns = [
+ {
+ type: 'selection',
+ },
+ {
+ label: '标题',
+ prop: 'title',
+ },
+ {
+ label: '类型',
+ prop: 'type',
+ render(record) {
+ return h('span', record.row.type === 1 ? '通知' : '公告');
+ },
+ },
+ {
+ label: '状态',
+ prop: 'status',
+ render(record) {
+ return h('span', record.row.status === 1 ? '正常' : '关闭')
+ },
+ },
+ {
+ label: '点击率',
+ prop: 'clickNum',
+ },
+ {
+ label: '创建人',
+ prop: 'createUser',
+ },
+ {
+ label: '创建时间',
+ prop: 'createTime',
+ },
+];
diff --git a/src/views/data/notice/edit.vue b/src/views/data/notice/edit.vue
new file mode 100644
index 0000000..295ac6a
--- /dev/null
+++ b/src/views/data/notice/edit.vue
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 正常
+ 关闭
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/data/notice/index.vue b/src/views/data/notice/index.vue
new file mode 100644
index 0000000..939de6a
--- /dev/null
+++ b/src/views/data/notice/index.vue
@@ -0,0 +1,161 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 添加公告
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/data/notice/querySchemas.ts b/src/views/data/notice/querySchemas.ts
new file mode 100644
index 0000000..516003f
--- /dev/null
+++ b/src/views/data/notice/querySchemas.ts
@@ -0,0 +1,47 @@
+import { FormSchema } from '@/components/Form/index';
+export const schemas: FormSchema[] = [
+ {
+ field: 'title',
+ component: 'Input',
+ label: '标题',
+ componentProps: {
+ placeholder: '请输入标题',
+ },
+ },
+ {
+ field: 'type',
+ component: 'Select',
+ label: '状态',
+ componentProps: {
+ placeholder: '请选择类型',
+ options: [
+ {
+ label: '通知',
+ value: '1',
+ },
+ {
+ label: '公告',
+ value: '2',
+ },
+ ],
+ },
+ },
+ {
+ field: 'status',
+ component: 'Select',
+ label: '状态',
+ componentProps: {
+ placeholder: '请选择状态',
+ options: [
+ {
+ label: '正常',
+ value: '1',
+ },
+ {
+ label: '关闭',
+ value: '2',
+ },
+ ],
+ },
+ },
+];
diff --git a/src/views/system/tenant/columns.ts b/src/views/system/tenant/columns.ts
new file mode 100644
index 0000000..6e5124f
--- /dev/null
+++ b/src/views/system/tenant/columns.ts
@@ -0,0 +1,78 @@
+import { h } from 'vue';
+import { ElAvatar, ElTag } from 'element-plus';
+
+export const columns = [
+ {
+ type: 'selection',
+ },
+ {
+ label: '租户名称',
+ prop: 'name',
+ },
+ {
+ label: '租户编码',
+ prop: 'code',
+ },
+ {
+ label: '统一社会信用代码',
+ prop: 'license',
+ width: 160,
+ },
+ {
+ label: '人数',
+ prop: 'number',
+ },
+ {
+ label: '到期时间',
+ prop: 'expireTime',
+ },
+ {
+ label: '联系人姓名',
+ prop: 'contactUser',
+ width:140
+ },
+ {
+ label: '联系人电话',
+ prop: 'contactMobile',
+ width:140
+ },
+ {
+ label: '联系人姓名',
+ prop: 'contactUser',
+ width:140
+ },
+ {
+ label: '联系人邮箱',
+ prop: 'contactEmail',
+ width:140
+ },
+ {
+ label: '联系人网址',
+ prop: 'contactSite',
+ width:140
+ },
+ {
+ label: '状态',
+ prop: 'status',
+ render(record) {
+ return h(
+ ElTag,
+ {
+ type: record.row.status ==1 ? 'success' : 'danger',
+ },
+ {
+ default: () => (record.row.status ==1 ? '正常' : '禁用'),
+ },
+ );
+ },
+ },
+ {
+ label: '创建人',
+ prop: 'createUser',
+ },
+ {
+ label: '创建时间',
+ prop: 'createTime',
+ width: 180,
+ },
+];
diff --git a/src/views/system/tenant/edit.vue b/src/views/system/tenant/edit.vue
new file mode 100644
index 0000000..90ea277
--- /dev/null
+++ b/src/views/system/tenant/edit.vue
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 正常
+ 禁用
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/system/tenant/index.vue b/src/views/system/tenant/index.vue
new file mode 100644
index 0000000..93edd96
--- /dev/null
+++ b/src/views/system/tenant/index.vue
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 新建
+
+
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/system/tenant/querySchemas.ts b/src/views/system/tenant/querySchemas.ts
new file mode 100644
index 0000000..e3f56f9
--- /dev/null
+++ b/src/views/system/tenant/querySchemas.ts
@@ -0,0 +1,41 @@
+import { FormSchema } from '@/components/Form/index';
+import { getRoleAllList } from '@/api/system/role';
+export const loadSelectData = async(res)=> {
+ //这里可以进行数据转换处理
+ return (await getRoleAllList({ ...res })).map((item, index) => {
+ return {
+ ...item,
+ label:item.name,
+ value:item.id,
+ index,
+ };
+ });
+}
+export const schemas: FormSchema[] = [
+ {
+ field: 'name',
+ component: 'Input',
+ label: '租户名称',
+ componentProps: {
+ placeholder: '请输入租户名称',
+ },
+ },
+ {
+ field: 'status',
+ component: 'Select',
+ label: '状态',
+ componentProps: {
+ placeholder: '请选择状态',
+ options: [
+ {
+ label: '正常',
+ value: '0',
+ },
+ {
+ label: '禁用',
+ value: '1',
+ },
+ ],
+ },
+ },
+];
diff --git a/src/views/system/user/querySchemas.ts b/src/views/system/user/querySchemas.ts
index 9a87893..8ce4ae3 100644
--- a/src/views/system/user/querySchemas.ts
+++ b/src/views/system/user/querySchemas.ts
@@ -20,20 +20,20 @@ export const schemas: FormSchema[] = [
placeholder: '请输入用户名',
},
},
- {
- field: 'role',
- component: 'BasicSelect',
- label: '角色',
- componentProps: {
- placeholder: '请选择角色',
- block:true,
- multiple:true,
- request: loadSelectData,
- onChange: (e: any) => {
- console.log(e);
- },
- },
- },
+ // {
+ // field: 'role',
+ // component: 'BasicSelect',
+ // label: '角色',
+ // componentProps: {
+ // placeholder: '请选择角色',
+ // block:true,
+ // multiple:true,
+ // request: loadSelectData,
+ // onChange: (e: any) => {
+ // console.log(e);
+ // },
+ // },
+ // },
{
field: 'status',
component: 'Select',