From c89d7658ed5609dc6716587d387e7a4ff4d1afbd Mon Sep 17 00:00:00 2001 From: wangxiang <1827945911@qq.com> Date: Wed, 4 May 2022 01:46:34 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=80=20=E9=87=8D=E6=9E=84=E5=89=8D?= =?UTF-8?q?=E7=AB=AF=E6=A1=86=E6=9E=B6=E8=BF=9B=E8=A1=8C=E9=80=82=E9=85=8D?= =?UTF-8?q?=E5=90=8E=E7=AB=AF=E6=A1=86=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OauthClientDetailsController.java | 83 +++++------ .../service/OauthClientDetailsService.java | 10 +- .../impl/OauthClientDetailsServiceImpl.java | 24 +-- .../api/platform/system/controller/client.ts | 2 +- .../api/platform/system/controller/config.ts | 2 +- .../api/platform/system/controller/dict.ts | 2 +- .../platform/system/controller/dictdata.ts | 2 +- .../entity/{clientModel.ts => client.ts} | 0 .../entity/{configModel.ts => config.ts} | 0 .../system/entity/{dictModel.ts => dict.ts} | 0 .../entity/{dictDataModel.ts => dictData.ts} | 0 .../api/platform/system/entity/logModel.ts | 33 ----- kicc-ui/src/views/system/log/LogDrawer.vue | 72 --------- kicc-ui/src/views/system/log/index.vue | 90 ------------ kicc-ui/src/views/system/log/log.data.ts | 137 ------------------ 15 files changed, 50 insertions(+), 407 deletions(-) rename kicc-ui/src/api/platform/system/entity/{clientModel.ts => client.ts} (100%) rename kicc-ui/src/api/platform/system/entity/{configModel.ts => config.ts} (100%) rename kicc-ui/src/api/platform/system/entity/{dictModel.ts => dict.ts} (100%) rename kicc-ui/src/api/platform/system/entity/{dictDataModel.ts => dictData.ts} (100%) delete mode 100644 kicc-ui/src/api/platform/system/entity/logModel.ts delete mode 100644 kicc-ui/src/views/system/log/LogDrawer.vue delete mode 100644 kicc-ui/src/views/system/log/index.vue delete mode 100644 kicc-ui/src/views/system/log/log.data.ts diff --git a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/OauthClientDetailsController.java b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/OauthClientDetailsController.java index f8365270..48b72180 100644 --- a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/OauthClientDetailsController.java +++ b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/OauthClientDetailsController.java @@ -1,20 +1,21 @@ package com.cloud.kicc.system.controller; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.cloud.kicc.system.api.entity.OauthClientDetails; -import com.cloud.kicc.system.service.OauthClientDetailsService; import com.cloud.kicc.common.core.api.R; import com.cloud.kicc.common.core.constant.AppConstants; import com.cloud.kicc.common.log.annotation.SysLog; +import com.cloud.kicc.system.api.entity.OauthClientDetails; +import com.cloud.kicc.system.service.OauthClientDetailsService; import io.swagger.annotations.Api; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; -import java.util.List; +import java.util.Arrays; /** *

@@ -32,62 +33,46 @@ public class OauthClientDetailsController { private final OauthClientDetailsService oauthClientDetailsService; - /** - * 通过ID查询 - * @param clientId 客户端id - * @return SysOauthClientDetails - */ - @GetMapping("/{clientId}") - public R> getByClientId(@PathVariable String clientId) { - return R.ok(oauthClientDetailsService - .list(Wrappers.lambdaQuery().eq(OauthClientDetails::getClientId, clientId))); + private LambdaQueryWrapper getQueryWrapper(OauthClientDetails oauthClientDetails) { + return new LambdaQueryWrapper() + .like(StrUtil.isNotBlank(oauthClientDetails.getClientId()), OauthClientDetails::getClientId, oauthClientDetails.getClientId()) + .between(StrUtil.isNotBlank(oauthClientDetails.getBeginTime()) && StrUtil.isNotBlank(oauthClientDetails.getEndTime()), + OauthClientDetails::getCreateTime, oauthClientDetails.getBeginTime(), oauthClientDetails.getEndTime()); } - /** - * 简单分页查询 - * @param page 分页对象 - * @param oauthClientDetails 系统终端 - * @return - */ @GetMapping("/list") - public R> getOauthClientDetailsPage(Page page, OauthClientDetails oauthClientDetails) { - return R.ok(oauthClientDetailsService.page(page, Wrappers.query(oauthClientDetails))); + public R list(Page page, OauthClientDetails oauthClientDetails) { + IPage list = oauthClientDetailsService.page(page, getQueryWrapper(oauthClientDetails)); + return R.ok(list.getRecords(), list.getTotal()); } - /** - * 添加 - * @param oauthClientDetails 实体 - * @return success/false - */ - @SysLog("添加终端") - @PostMapping("/save") - @PreAuthorize("@pms.hasPermission('sys_client_add')") - public R add(@Valid @RequestBody OauthClientDetails oauthClientDetails) { - return R.ok(oauthClientDetailsService.save(oauthClientDetails)); + @GetMapping("/{id:\\w+}") + public R getById(@PathVariable("id") String id) { + return R.ok(oauthClientDetailsService.getById(id)); } - /** - * 删除 - * @param id ID - * @return success/false - */ - @SysLog("删除终端") - @DeleteMapping("/{id}") - @PreAuthorize("@pms.hasPermission('sys_client_del')") - public R removeById(@PathVariable String id) { - return R.ok(oauthClientDetailsService.removeClientDetailsById(id)); + @SysLog("添加终端") + @PostMapping("/save") + @PreAuthorize("@pms.hasPermission('client_add')") + public R save(@Valid @RequestBody OauthClientDetails oauthClientDetails) { + oauthClientDetailsService.save(oauthClientDetails); + return R.ok(); } - /** - * 编辑 - * @param oauthClientDetails 实体 - * @return success/false - */ @SysLog("编辑终端") @PutMapping("/update") - @PreAuthorize("@pms.hasPermission('sys_client_edit')") - public R update(@Valid @RequestBody OauthClientDetails oauthClientDetails) { - return R.ok(oauthClientDetailsService.updateClientDetailsById(oauthClientDetails)); + @PreAuthorize("@pms.hasPermission('client_edit')") + public R update(@Valid @RequestBody OauthClientDetails oauthClientDetails) { + oauthClientDetailsService.updateClientDetailsById(oauthClientDetails); + return R.ok(); + } + + @SysLog("删除终端") + @DeleteMapping("/{ids}") + @PreAuthorize("@pms.hasPermission('client_del')") + public R removeById(@PathVariable String[] ids) { + oauthClientDetailsService.removeClientDetailsByIds(Arrays.asList(ids)); + return R.ok(); } @SysLog("清除终端缓存") diff --git a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/OauthClientDetailsService.java b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/OauthClientDetailsService.java index 6da6a979..10e4900e 100644 --- a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/OauthClientDetailsService.java +++ b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/OauthClientDetailsService.java @@ -3,6 +3,8 @@ package com.cloud.kicc.system.service; import com.baomidou.mybatisplus.extension.service.IService; import com.cloud.kicc.system.api.entity.OauthClientDetails; +import java.util.List; + /** *

* 授权客户端管理 @@ -15,15 +17,15 @@ public interface OauthClientDetailsService extends IService /** * 通过ID删除客户端 - * @param id - * @return + * @param ids + * @return Boolean */ - Boolean removeClientDetailsById(String id); + Boolean removeClientDetailsByIds(List ids); /** * 修改客户端信息 * @param oauthClientDetails - * @return + * @return Boolean */ Boolean updateClientDetailsById(OauthClientDetails oauthClientDetails); diff --git a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/OauthClientDetailsServiceImpl.java b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/OauthClientDetailsServiceImpl.java index e7e4a457..d6997c55 100644 --- a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/OauthClientDetailsServiceImpl.java +++ b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/OauthClientDetailsServiceImpl.java @@ -1,13 +1,15 @@ package com.cloud.kicc.system.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.cloud.kicc.common.core.constant.CacheConstants; import com.cloud.kicc.system.api.entity.OauthClientDetails; import com.cloud.kicc.system.mapper.OauthClientDetailsMapper; import com.cloud.kicc.system.service.OauthClientDetailsService; -import com.cloud.kicc.common.core.constant.CacheConstants; import org.springframework.cache.annotation.CacheEvict; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 授权客户端管理 @@ -19,35 +21,21 @@ import org.springframework.stereotype.Service; @Service public class OauthClientDetailsServiceImpl extends ServiceImpl implements OauthClientDetailsService { - /** - * 通过ID删除客户端 - * @param id - * @return - */ @Override - @CacheEvict(value = CacheConstants.OAUTH_CLIENT_DETAILS, key = "#id") - public Boolean removeClientDetailsById(String id) { - return this.removeById(id); + @CacheEvict(value = CacheConstants.OAUTH_CLIENT_DETAILS, key = "#ids") + public Boolean removeClientDetailsByIds(List ids) { + return this.removeByIds(ids); } - /** - * 根据客户端信息 - * @param clientDetails - * @return - */ @Override @CacheEvict(value = CacheConstants.OAUTH_CLIENT_DETAILS, key = "#clientDetails.clientId") public Boolean updateClientDetailsById(OauthClientDetails clientDetails) { return this.updateById(clientDetails); } - /** - * 清除客户端缓存 - */ @Override @CacheEvict(value = CacheConstants.OAUTH_CLIENT_DETAILS, allEntries = true) public void clearClientCache() { - } } diff --git a/kicc-ui/src/api/platform/system/controller/client.ts b/kicc-ui/src/api/platform/system/controller/client.ts index 9ba5c384..22d5693f 100644 --- a/kicc-ui/src/api/platform/system/controller/client.ts +++ b/kicc-ui/src/api/platform/system/controller/client.ts @@ -1,4 +1,4 @@ -import { ClientParams, ClientListGetResultModel, ClientListItem } from '../entity/clientModel'; +import { ClientParams, ClientListGetResultModel, ClientListItem } from '../entity/client'; import { defHttp } from '/@/utils/http/axios'; enum Api { diff --git a/kicc-ui/src/api/platform/system/controller/config.ts b/kicc-ui/src/api/platform/system/controller/config.ts index 744ccf21..a8ba25b0 100644 --- a/kicc-ui/src/api/platform/system/controller/config.ts +++ b/kicc-ui/src/api/platform/system/controller/config.ts @@ -1,4 +1,4 @@ -import { ConfigParams, Config, ConfigResult } from '../entity/configModel' +import { ConfigParams, Config, ConfigResult } from '../entity/config' import { defHttp } from '/@/utils/http/axios'; import {isDef} from "/@/utils/is"; diff --git a/kicc-ui/src/api/platform/system/controller/dict.ts b/kicc-ui/src/api/platform/system/controller/dict.ts index 9447f5dc..24ed3461 100644 --- a/kicc-ui/src/api/platform/system/controller/dict.ts +++ b/kicc-ui/src/api/platform/system/controller/dict.ts @@ -1,4 +1,4 @@ -import { DictParams, DictResult, Dict } from '../entity/dictModel'; +import { DictParams, DictResult, Dict } from '../entity/dict'; import { defHttp } from '/@/utils/http/axios'; import {isDef} from "/@/utils/is"; diff --git a/kicc-ui/src/api/platform/system/controller/dictdata.ts b/kicc-ui/src/api/platform/system/controller/dictdata.ts index 1c31eeff..1f9c8d7f 100644 --- a/kicc-ui/src/api/platform/system/controller/dictdata.ts +++ b/kicc-ui/src/api/platform/system/controller/dictdata.ts @@ -1,4 +1,4 @@ -import {DictDataParams, DictDataResult, DictData} from '../entity/dictDataModel'; +import {DictDataParams, DictDataResult, DictData} from '../entity/dictData'; import {defHttp} from '/@/utils/http/axios'; import {isDef} from "/@/utils/is"; diff --git a/kicc-ui/src/api/platform/system/entity/clientModel.ts b/kicc-ui/src/api/platform/system/entity/client.ts similarity index 100% rename from kicc-ui/src/api/platform/system/entity/clientModel.ts rename to kicc-ui/src/api/platform/system/entity/client.ts diff --git a/kicc-ui/src/api/platform/system/entity/configModel.ts b/kicc-ui/src/api/platform/system/entity/config.ts similarity index 100% rename from kicc-ui/src/api/platform/system/entity/configModel.ts rename to kicc-ui/src/api/platform/system/entity/config.ts diff --git a/kicc-ui/src/api/platform/system/entity/dictModel.ts b/kicc-ui/src/api/platform/system/entity/dict.ts similarity index 100% rename from kicc-ui/src/api/platform/system/entity/dictModel.ts rename to kicc-ui/src/api/platform/system/entity/dict.ts diff --git a/kicc-ui/src/api/platform/system/entity/dictDataModel.ts b/kicc-ui/src/api/platform/system/entity/dictData.ts similarity index 100% rename from kicc-ui/src/api/platform/system/entity/dictDataModel.ts rename to kicc-ui/src/api/platform/system/entity/dictData.ts diff --git a/kicc-ui/src/api/platform/system/entity/logModel.ts b/kicc-ui/src/api/platform/system/entity/logModel.ts deleted file mode 100644 index e86c98cf..00000000 --- a/kicc-ui/src/api/platform/system/entity/logModel.ts +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @program: kicc-ui - * @description: 文件上传实体类 - * 类型定义 - * @author: entfrm开发团队-王翔 - * @create: 2022/4/8 - */ -import { Page, R } from '/@/api/model'; - -// 定义查询参数 -export type LogParams = Page & { - title?: string; - traceId?: string; -}; - -// 定义日志对象 -export interface LogListItem { - type: string; - traceId: string; - title: string; - operation: string; - method: string; - url: string; - params: string; - ip: string; - executeTime: string; - location: string; - createTime: string; - exception: string; -} - -// 根据日志对象生成响应模型 -export type LogListGetResultModel = R; diff --git a/kicc-ui/src/views/system/log/LogDrawer.vue b/kicc-ui/src/views/system/log/LogDrawer.vue deleted file mode 100644 index dc8a8bd1..00000000 --- a/kicc-ui/src/views/system/log/LogDrawer.vue +++ /dev/null @@ -1,72 +0,0 @@ - - diff --git a/kicc-ui/src/views/system/log/index.vue b/kicc-ui/src/views/system/log/index.vue deleted file mode 100644 index 394bce19..00000000 --- a/kicc-ui/src/views/system/log/index.vue +++ /dev/null @@ -1,90 +0,0 @@ - - diff --git a/kicc-ui/src/views/system/log/log.data.ts b/kicc-ui/src/views/system/log/log.data.ts deleted file mode 100644 index 1437d89a..00000000 --- a/kicc-ui/src/views/system/log/log.data.ts +++ /dev/null @@ -1,137 +0,0 @@ -import { BasicColumn } from '/@/components/Table'; -import { FormSchema } from '/@/components/Table'; -import { h } from 'vue'; -import { Tag } from 'ant-design-vue'; - -export const columns: BasicColumn[] = [ - { - title: 'TraceId', - dataIndex: 'traceId', - width: 100, - }, - { - title: '操作', - dataIndex: 'title', - width: 100, - }, - { - title: '路径', - dataIndex: 'url', - width: 130, - }, - { - title: '方法', - dataIndex: 'method', - width: 60, - customRender: ({ record }) => { - return h(Tag, { color: 'blue' }, () => record.method); - }, - }, - { - title: '耗时(ms)', - dataIndex: 'executeTime', - width: 80, - customRender: ({ record }) => { - const time = record.executeTime; - const color = time > 1000 ? 'red' : 'green'; - return h(Tag, { color: color }, () => time); - }, - }, - { - title: 'IP地址', - dataIndex: 'ip', - width: 100, - }, - { - title: '地区', - dataIndex: 'location', - width: 100, - }, - { - title: '类型', - dataIndex: 'type', - width: 120, - customRender: ({ record }) => { - const type = record.type; - const enable = ~~type === 1; - const color = enable ? 'green' : 'red'; - const text = enable ? '日志' : '异常'; - return h(Tag, { color: color }, () => text); - }, - }, - { - title: '创建时间', - dataIndex: 'createTime', - width: 180, - }, -]; - -export const searchFormSchema: FormSchema[] = [ - { - field: 'keyword', - label: '关键字', - component: 'Input', - componentProps: { - placeholder: '请输入TraceId/名称', - }, - colProps: { span: 8 }, - }, - { - field: 'startDate', - label: '起始时间', - component: 'DatePicker', - colProps: { span: 8 }, - }, - { - field: 'endDate', - label: '截止时间', - component: 'DatePicker', - colProps: { span: 8 }, - }, -]; - -export const formSchema: FormSchema[] = [ - { - field: 'type', - label: '日志类型', - required: true, - component: 'Select', - componentProps: { - options: [ - { label: '日志', value: '1' }, - { label: '异常', value: '2' }, - ], - }, - dynamicDisabled: true, - }, - { - field: 'title', - label: '日志标题', - component: 'Input', - }, - { - field: 'method', - label: '执行方法', - component: 'Input', - }, - { - field: 'url', - label: '请求路径', - component: 'Input', - }, - { - field: 'params', - label: '请求参数', - component: 'InputTextArea', - }, - { - label: '操作内容', - field: 'operation', - component: 'InputTextArea', - }, - { - field: 'exception', - label: '异常信息', - component: 'InputTextArea', - } -];