From 8d99bc63281148d8ffc2e9d3977aa7f4a8c75013 Mon Sep 17 00:00:00 2001 From: taojinlong Date: Mon, 13 May 2024 18:05:26 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/i18n/core_en_US.properties | 1 + .../main/resources/i18n/core_zh_CN.properties | 1 + .../main/resources/i18n/core_zh_TW.properties | 1 + core/core-frontend/src/api/variable.ts | 21 +++++++ core/core-frontend/src/locales/zh-CN.ts | 4 ++ .../api/permissions/user/dto/UserCreator.java | 2 + .../api/permissions/user/vo/UserFormVO.java | 7 +++ .../api/permissions/user/vo/UserGridVO.java | 3 + .../variable/api/SysVariablesApi.java | 63 +++++++++++++++++++ .../variable/dto/SysVariableDto.java | 16 +++++ .../variable/dto/SysVariableValueDto.java | 16 +++++ .../variable/dto/SysVariableValueItem.java | 10 +++ 12 files changed, 145 insertions(+) create mode 100644 core/core-frontend/src/api/variable.ts create mode 100644 sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/api/SysVariablesApi.java create mode 100644 sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableDto.java create mode 100644 sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueDto.java create mode 100644 sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueItem.java diff --git a/core/core-backend/src/main/resources/i18n/core_en_US.properties b/core/core-backend/src/main/resources/i18n/core_en_US.properties index babe1471e4..c659316227 100644 --- a/core/core-backend/src/main/resources/i18n/core_en_US.properties +++ b/core/core-backend/src/main/resources/i18n/core_en_US.properties @@ -16,6 +16,7 @@ i18n_menu.datasource=datasource i18n_menu.user=User i18n_menu.org=Organization i18n_menu.auth=Authority +i18n_menu.sysVariable=System Variables i18n_field_name_repeat=has duplicate field names: i18n_pid_not_eq_id=Target is error i18n_ds_name_exists=Name is exists diff --git a/core/core-backend/src/main/resources/i18n/core_zh_CN.properties b/core/core-backend/src/main/resources/i18n/core_zh_CN.properties index 4fc8609f59..afa0e516ec 100644 --- a/core/core-backend/src/main/resources/i18n/core_zh_CN.properties +++ b/core/core-backend/src/main/resources/i18n/core_zh_CN.properties @@ -26,6 +26,7 @@ i18n_menu.task=\u4EFB\u52A1\u7BA1\u7406 i18n_menu.embedded=\u5D4C\u5165\u5F0F\u7BA1\u7406 i18n_menu.platform=\u5E73\u53F0\u5BF9\u63A5 i18n_menu.appearance=\u5916\u89C2\u914D\u7F6E +i18n_menu.sysVariable=\u7cfb\u7edf\u53d8\u91cf i18n_field_name_repeat=\u6709\u91CD\u590D\u5B57\u6BB5\u540D\uFF1A i18n_pid_not_eq_id=\u79FB\u52A8\u76EE\u6807\u4E0D\u80FD\u662F\u81EA\u5DF1\u6216\u5B50\u76EE\u5F55 i18n_ds_name_exists=\u8BE5\u5206\u7EC4\u4E0B\u540D\u79F0\u91CD\u590D diff --git a/core/core-backend/src/main/resources/i18n/core_zh_TW.properties b/core/core-backend/src/main/resources/i18n/core_zh_TW.properties index 62880d8aad..556df80747 100644 --- a/core/core-backend/src/main/resources/i18n/core_zh_TW.properties +++ b/core/core-backend/src/main/resources/i18n/core_zh_TW.properties @@ -17,6 +17,7 @@ i18n_menu.datasource=\u6578\u64DA\u6E90 i18n_menu.user=\u7528\u6236\u7BA1\u7406 i18n_menu.org=\u7D44\u7E54\u7BA1\u7406 i18n_menu.auth=\u6B0A\u9650\u914D\u7F6E +i18n_menu.sysVariable=\u7cfb\u7edf\u53d8\u91cf i18n_field_name_repeat=\u5177\u6709\u91CD\u8907\u7684\u6B04\u4F4D\u540D\u7A31\uFF1A i18n_pid_not_eq_id=\u79FB\u52D5\u76EE\u6A19\u4E0D\u80FD\u662F\u81EA\u5DF1\u6216\u5B50\u76EE\u9304 i18n_ds_name_exists=\u8A72\u5206\u7D44\u4E0B\u540D\u7A31\u91CD\u5FA9 diff --git a/core/core-frontend/src/api/variable.ts b/core/core-frontend/src/api/variable.ts new file mode 100644 index 0000000000..8e85b0d56f --- /dev/null +++ b/core/core-frontend/src/api/variable.ts @@ -0,0 +1,21 @@ +import request from '@/config/axios' + +export const variableCreateApi = data => request.post({ url: '/sysVariable/create', data }) + +export const variableEditApi = data => request.post({ url: '/sysVariable/edit', data }) + +export const variableDetailApi = id => request.get({ url: '/sysVariable/detail/' + id }) + +export const variableDeletelApi = id => request.get({ url: '/sysVariable/delete/' + id }) + +export const searchVariableApi = data => request.post({ url: '/sysVariable/query', data }) + +export const valueSelectedForVaribleApi = (page: number, limit: number, data) => + request.post({ url: `/sysVariable/value/selected/${page}/${limit}`, data }) + +export const variableValueCreateApi = data => + request.post({ url: '/sysVariable/value/create', data }) + +export const variableValueDeletelApi = id => request.get({ url: '/sysVariable/value/delete/' + id }) + +export const variableValueEditApi = data => request.post({ url: '/sysVariable/value/edit', data }) diff --git a/core/core-frontend/src/locales/zh-CN.ts b/core/core-frontend/src/locales/zh-CN.ts index 12ffe370e8..4ee3b30724 100644 --- a/core/core-frontend/src/locales/zh-CN.ts +++ b/core/core-frontend/src/locales/zh-CN.ts @@ -2304,5 +2304,9 @@ export default { last_status_running: '运行中', last_status_fail: '失败', last_status_success: '成功' + }, + variable: { + give_up: 's', + save_apply: '保存并应用' } } diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/dto/UserCreator.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/dto/UserCreator.java index e97d13e952..1939c2426f 100644 --- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/dto/UserCreator.java +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/dto/UserCreator.java @@ -31,4 +31,6 @@ public class UserCreator implements Serializable { @Schema(hidden = true) @JsonIgnore private Long uid; + @Schema(description = "系统变量") + private String sysVariable; } diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserFormVO.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserFormVO.java index 851ab91999..4c5fed52da 100644 --- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserFormVO.java +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserFormVO.java @@ -2,6 +2,7 @@ package io.dataease.api.permissions.user.vo; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import io.dataease.api.permissions.variable.dto.SysVariableValueItem; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -42,4 +43,10 @@ public class UserFormVO implements Serializable { @Schema(description = "模式") private String model; + + @Schema(description = "系统变量") + private String sysVariable; + + @Schema(description = "系统变量") + private List variables; } diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserGridVO.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserGridVO.java index 4326ebbe41..35f8f1d886 100644 --- a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserGridVO.java +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/user/vo/UserGridVO.java @@ -2,6 +2,7 @@ package io.dataease.api.permissions.user.vo; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import io.dataease.api.permissions.variable.dto.SysVariableValueItem; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @@ -26,4 +27,6 @@ public class UserGridVO { private Boolean enable; @Schema(description = "创建时间") private Long createTime; + @Schema(description = "系统变量") + private List variables; } diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/api/SysVariablesApi.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/api/SysVariablesApi.java new file mode 100644 index 0000000000..118554de35 --- /dev/null +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/api/SysVariablesApi.java @@ -0,0 +1,63 @@ +package io.dataease.api.permissions.variable.api; + + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.github.xiaoymin.knife4j.annotations.ApiSupport; +import io.dataease.api.permissions.variable.dto.SysVariableDto; +import io.dataease.api.permissions.variable.dto.SysVariableValueDto; +import io.dataease.auth.DeApiPath; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + +import static io.dataease.constant.AuthResourceEnum.SYSTEM; + +@Tag(name = "系统变量") +@ApiSupport(order = 881, author = "fit2cloud-someone") +@DeApiPath(value = "/sysVariable", rt = SYSTEM) +public interface SysVariablesApi { + + @Operation(summary = "创建") + @PostMapping("/create") + SysVariableDto create(@RequestBody SysVariableDto sysVariableDto); + + @Operation(summary = "编辑") + @PostMapping("/edit") + SysVariableDto edit(@RequestBody SysVariableDto sysVariableDto); + + @Operation(summary = "删除") + @GetMapping("/delete/{id}") + void delete(@PathVariable String id); + + @Operation(summary = "详细信息") + @GetMapping("/detail/{id}") + SysVariableDto detail(@PathVariable String id); + + @Operation(summary = "查询") + @PostMapping("/query") + List query(@RequestBody SysVariableDto sysVariableDto); + + @Operation(summary = "创建") + @PostMapping("/value/create") + SysVariableValueDto createValue(@RequestBody SysVariableValueDto sysVariableDto); + + @Operation(summary = "编辑") + @PostMapping("/value/edit") + SysVariableValueDto editValue(@RequestBody SysVariableValueDto sysVariableDto); + + @Operation(summary = "删除") + @GetMapping("/value/delete/{id}") + void deleteValue(@PathVariable String id); + +// @PostMapping("/value/selected/{id}") +// List selectVariableValue(@PathVariable("id") String id, @PathVariable("pageSize") int pageSize, @RequestBody SysVariableDto request); + + @PostMapping("/value/selected/{goPage}/{pageSize}") + IPage selectPage(@PathVariable("goPage") int goPage, @PathVariable("pageSize") int pageSize, @RequestBody SysVariableDto request); + +} diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableDto.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableDto.java new file mode 100644 index 0000000000..752c3c6435 --- /dev/null +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableDto.java @@ -0,0 +1,16 @@ +package io.dataease.api.permissions.variable.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; + +@Data +public class SysVariableDto { + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + private String type; + private String name; + private boolean root = false; + private boolean disabled = false; +} + diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueDto.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueDto.java new file mode 100644 index 0000000000..3dbe0bc695 --- /dev/null +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueDto.java @@ -0,0 +1,16 @@ +package io.dataease.api.permissions.variable.dto; + +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import lombok.Data; + +@Data +public class SysVariableValueDto { + @JsonSerialize(using = ToStringSerializer.class) + private Long id; + @JsonSerialize(using = ToStringSerializer.class) + private Long sysVariableId; + private String value; + private String begin; + private String end; +} diff --git a/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueItem.java b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueItem.java new file mode 100644 index 0000000000..d2eb0bd2fc --- /dev/null +++ b/sdk/api/api-permissions/src/main/java/io/dataease/api/permissions/variable/dto/SysVariableValueItem.java @@ -0,0 +1,10 @@ +package io.dataease.api.permissions.variable.dto; + +import lombok.Data; + +@Data +public class SysVariableValueItem { + private String variable; + private String variableValue; + private String variableValueId; +}