Browse Source

update

main
wangshaoping 1 year ago
parent
commit
2a70df20da
  1. 2
      app.platform/build.gradle
  2. 35
      erm.frontend/package.json
  3. 1
      erm/build.gradle
  4. 2
      erm/src/main/java/erm/kpi/controller/IndicatorWebController.java
  5. 2
      erm/src/main/java/erm/kpi/controller/LibWebController.java
  6. 2
      erm/src/main/java/erm/kpi/jpa/entity/IndicatorEntity.java
  7. 2
      erm/src/main/java/erm/kpi/jpa/entity/LibEntity.java
  8. 2
      erm/src/main/java/erm/kpi/jpa/repository/IndicatorRepository.java
  9. 2
      erm/src/main/java/erm/kpi/jpa/repository/LibRepository.java
  10. 4
      gradle.properties
  11. 4
      io.sc.engine.mv.frontend/package.json
  12. 4
      io.sc.engine.mv.frontend/src/views/sample/Sample.vue
  13. 4
      io.sc.engine.rule.frontend/package.json
  14. 4
      io.sc.engine.rule.frontend/src/views/lib/Lib.vue
  15. 2
      io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java
  16. 2
      io.sc.platform.core.frontend/package.json
  17. 19
      io.sc.platform.core.frontend/src/platform/plugin/manager/TagViewManager.ts
  18. 4
      io.sc.platform.core.frontend/template-project/package.json
  19. 4
      io.sc.platform.developer.frontend/package.json
  20. 6
      io.sc.platform.developer.frontend/src/views/springboot/Mapping.vue
  21. 4
      io.sc.platform.gradle/templates/pgp/setup/gradle.properties
  22. 4
      io.sc.platform.lcdp.frontend/package.json
  23. 6
      io.sc.platform.lcdp.frontend/src/views/bpm/Bpm.vue
  24. 4
      io.sc.platform.mvc.frontend/package.json
  25. 4
      io.sc.platform.security.frontend/package.json
  26. 4
      io.sc.platform.system.frontend/package.json
  27. 2
      io.sc.platform.system.frontend/src/views/department/Department.vue
  28. 4
      io.sc.platform.system.frontend/src/views/menu/Menu.vue
  29. 31
      io.sc.platform.system.frontend/src/views/monitor/Log.vue
  30. 4
      io.sc.platform.system.frontend/src/views/org/Org.vue
  31. 4
      io.sc.platform.system.frontend/src/views/role/Role.vue
  32. 4
      io.sc.platform.system.frontend/src/views/user/User.vue
  33. 2
      io.sc.platform.system/src/main/java/io/sc/platform/system/parameter/controller/ParameterWebController.java
  34. 4
      io.sc.standard.frontend/package.json
  35. 5
      io.sc.standard.frontend/src/App.vue
  36. 46
      io.sc.standard.frontend/src/boostrap.ts
  37. 4
      io.sc.standard.frontend/src/components/index.ts
  38. 7
      io.sc.standard.frontend/src/css/tailwind.css
  39. 18
      io.sc.standard.frontend/src/i18n/index.ts
  40. 1
      io.sc.standard.frontend/src/main.ts
  41. 20
      io.sc.standard.frontend/src/mock/index.ts
  42. 33
      io.sc.standard.frontend/src/shims-vue.d.ts
  43. 22
      io.sc.standard.frontend/src/views/Standard.vue
  44. 23
      io.sc.standard.frontend/src/views/standard/GB_T_2260_2007.vue
  45. 23
      io.sc.standard.frontend/src/views/standard/GB_T_4754_2017.vue

2
app.platform/build.gradle

@ -25,6 +25,8 @@ dependencies {
project(":io.sc.engine.rule.server"),
project(":io.sc.engine.rule.sample"),
project(":erm"),
// project(":erm"),
// project(":erm.frontend"),

35
erm.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "erm.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -68,9 +68,23 @@
"@vue/babel-plugin-jsx": "1.1.5"
},
"dependencies": {
"@codemirror/autocomplete": "6.11.1",
"@codemirror/commands": "6.3.3",
"@codemirror/lang-html": "6.4.7",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.1",
"@codemirror/lang-json": "6.0.1",
"@codemirror/lang-sql": "6.5.4",
"@codemirror/lang-xml": "6.0.2",
"@codemirror/language": "6.10.0",
"@codemirror/search": "6.5.5",
"@codemirror/state": "6.4.0",
"@codemirror/view": "6.23.0",
"@maxgraph/core": "0.9.0",
"@quasar/extras": "1.16.9",
"@vueuse/core": "10.7.1",
"axios": "1.6.3",
"codemirror": "6.0.1",
"dayjs": "1.11.10",
"echarts": "5.4.3",
"exceljs": "4.4.0",
@ -78,27 +92,12 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",
"vue-dompurify-html": "5.0.1",
"vue-i18n": "9.8.0",
"vue-router": "4.2.5",
"@codemirror/autocomplete": "6.11.1",
"@codemirror/commands": "6.3.3",
"@codemirror/lang-html": "6.4.7",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.1",
"@codemirror/lang-json": "6.0.1",
"@codemirror/lang-sql": "6.5.4",
"@codemirror/lang-xml": "6.0.2",
"@codemirror/language": "6.10.0",
"@codemirror/search": "6.5.5",
"@codemirror/state": "6.4.0",
"@codemirror/view": "6.23.0",
"codemirror": "6.0.1",
"vue-codemirror6": "1.2.0",
"@maxgraph/core": "0.9.0"
"vue-router": "4.2.5"
}
}

1
erm/build.gradle

@ -1,6 +1,7 @@
dependencies {
api(
project(":erm.api"),
project(":erm.frontend"),
project(":io.sc.standard"),
project(":io.sc.platform.data"),
project(":io.sc.platform.system"),

2
erm/src/main/java/erm/kpi/controller/IndicatorWebController.java

@ -17,7 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RestController("erm.kpi.controller.IndicatorWebController")
@RequestMapping("/api/erm/kpi/indicator")
public class IndicatorWebController extends RestCrudController<IndicatorVo, IndicatorEntity,String, IndicatorRepository, IndicatorService> {
@GetMapping("queryIndicatorsByLib")

2
erm/src/main/java/erm/kpi/controller/LibWebController.java

@ -19,7 +19,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@RestController
@RestController("erm.kpi.controller.LibWebController")
@RequestMapping("/api/erm/kpi/lib")
public class LibWebController extends RestCrudController<LibVo, LibEntity,String, LibRepository, LibService> {

2
erm/src/main/java/erm/kpi/jpa/entity/IndicatorEntity.java

@ -11,7 +11,7 @@ import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
@Entity
@Entity(name="erm.kpi.jpa.entity.IndicatorEntity")
@Table(name="RP_INDICATOR")
public class IndicatorEntity extends CorporationAuditorEntity<IndicatorVo> {
//ID,主键

2
erm/src/main/java/erm/kpi/jpa/entity/LibEntity.java

@ -10,7 +10,7 @@ import javax.validation.constraints.Size;
import java.util.ArrayList;
import java.util.List;
@Entity
@Entity(name="erm.kpi.jpa.entity.LibEntity")
@Table(name="RP_LIB")
public class LibEntity extends CorporationAuditorEntity<LibVo> {
//ID,主键

2
erm/src/main/java/erm/kpi/jpa/repository/IndicatorRepository.java

@ -2,9 +2,11 @@ package erm.kpi.jpa.repository;
import erm.kpi.jpa.entity.IndicatorEntity;
import io.sc.platform.orm.repository.DaoRepository;
import org.springframework.stereotype.Service;
import java.util.List;
@Service("erm.kpi.jpa.repository.IndicatorRepository" /* 避免其他同名接口冲突 */)
public interface IndicatorRepository extends DaoRepository<IndicatorEntity,String> {
public IndicatorEntity findByCode(String code);
public List<IndicatorEntity> findByCategoryOrderByName(String category);

2
erm/src/main/java/erm/kpi/jpa/repository/LibRepository.java

@ -2,9 +2,11 @@ package erm.kpi.jpa.repository;
import erm.kpi.jpa.entity.LibEntity;
import io.sc.platform.orm.repository.DaoRepository;
import org.springframework.stereotype.Service;
import java.util.List;
@Service("erm.kpi.jpa.repository.LibRepository" /* 避免其他同名接口冲突 */)
public interface LibRepository extends DaoRepository<LibEntity,String> {
public LibEntity findByCode(String code);
public List<LibEntity> findAllByOrderByName();

4
gradle.properties

@ -36,9 +36,9 @@ application_version=1.0.0
# platform
###########################################################
platform_group=io.sc
platform_version=8.1.34
platform_version=8.1.36
platform_plugin_version=8.1.13
platform_core_frontend_version=8.1.178
platform_core_frontend_version=8.1.180
###########################################################
# dependencies version

4
io.sc.engine.mv.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.engine.mv.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

4
io.sc.engine.mv.frontend/src/views/sample/Sample.vue

@ -6,7 +6,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="scoreRecord" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="scoreRecord" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="scoreRecordGridRef"
:title="$t('io.sc.engine.mv.sample.scoreRecord.grid.title')"
@ -83,7 +83,7 @@
}"
></w-grid>
</q-tab-panel>
<q-tab-panel name="defaultRecord" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="defaultRecord" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="defaultRecordGridRef"
:title="$t('io.sc.engine.mv.sample.defaultRecord.grid.title')"

4
io.sc.engine.rule.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.engine.rule.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

4
io.sc.engine.rule.frontend/src/views/lib/Lib.vue

@ -30,7 +30,7 @@
<q-tab name="testcase" :label="$t('re.lib.tab.testcase.title')" icon="bi-receipt" />
</q-tabs>
<q-tab-panels v-model="currentSelectedIndicatorOrTestcaseTabNameRef" animated style="height: calc(100% - 48px)">
<q-tab-panel name="indicator" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="indicator" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<q-splitter :model-value="indicatorSplitterRef" unit="px" separator-style="width: 3px;" horizontal class="w-full" style="height: 100%">
<template #before>
<IndicatorGrid
@ -67,7 +67,7 @@
</template>
</q-splitter>
</q-tab-panel>
<q-tab-panel name="testcase" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="testcase" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<q-splitter :model-value="testcaseSplitterRef" unit="px" separator-style="width: 3px;" horizontal class="w-full" style="height: 100%">
<template #before>
<TestCase

2
io.sc.engine.rule.server/src/main/java/io/sc/engine/rule/server/model/entity/ParameterEntity.java

@ -26,7 +26,7 @@ import java.util.List;
* @author wangshaoping
*
*/
@Entity(name="io.sc.engine.rule.server.model.entity.ParameterEntity" /* 避免和 io.sc.platform.system.parameter.jpa.entity.ParameterEntity 冲突 */)
@Entity(name="io.sc.engine.rule.server.model.entity.ParameterEntity" /* 避免和其他同名Bean冲突 */)
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="TYPE_",discriminatorType=DiscriminatorType.STRING,length=20)
@Table(name="RE_MODEL_PARAMETER")

2
io.sc.platform.core.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "platform-core",
"version": "8.1.179",
"version": "8.1.180",
"description": "前端核心包,用于快速构建前端的脚手架",
"//main": "库的主文件",
"main": "dist/platform-core.js",

19
io.sc.platform.core.frontend/src/platform/plugin/manager/TagViewManager.ts

@ -36,17 +36,20 @@ class TagViewManager {
public static handleTagViewAndBreadcrumbsAndKeepAlive(to: any) {
if (to.name) {
const menu = MenuManager.getMenuByRoute(to);
const isHomePageRoute = to.fullPath === gc.setting.homePage;
const storage = JSON.parse(SessionStorage.getItem(PConst.APP) || TagViewManager.#DEFAULT_JSON);
TagViewManager.#tagViewsAndBreadcrumbs.tagViews = TagViewManager.createTagViews(storage);
TagViewManager.#tagViewsAndBreadcrumbs.breadcrumbs = TagViewManager.createBreadcrumbs(storage);
// 首页无需添加 TagView
if (isHomePageRoute) {
return;
}
if (menu) {
const storage = JSON.parse(SessionStorage.getItem(PConst.APP) || TagViewManager.#DEFAULT_JSON);
TagViewManager.#tagViewsAndBreadcrumbs.tagViews = TagViewManager.createTagViews(storage);
TagViewManager.#tagViewsAndBreadcrumbs.breadcrumbs = TagViewManager.createBreadcrumbs(storage);
TagViewManager.#tagViewsAndBreadcrumbs.menuGroupExpandStatus = TagViewManager.createMenuGroupExpandStatus(storage, menu.id);
// 首页无需添加 TagView
if (to.routeName === gc.setting.homePage) {
return;
}
// 是否需要添加 TagView
let needToAdd = true;
for (const tagView of TagViewManager.#tagViewsAndBreadcrumbs.tagViews) {

4
io.sc.platform.core.frontend/template-project/package.json

@ -1,6 +1,6 @@
{
"name": "platform-core",
"version": "8.1.179",
"version": "8.1.180",
"description": "前端核心包,用于快速构建前端的脚手架",
"private": false,
"keywords": [],
@ -93,7 +93,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.179",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

4
io.sc.platform.developer.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.platform.developer.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

6
io.sc.platform.developer.frontend/src/views/springboot/Mapping.vue

@ -6,7 +6,7 @@
<q-tab name="servlets" icon="bi-diagram-3" :label="$t('Servlets')" />
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="dispatcherServlets" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="dispatcherServlets" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
:title="$t('menu.developer.springboot.mapping')"
:checkbox-selection="false"
@ -60,7 +60,7 @@
}"
></w-grid>
</q-tab-panel>
<q-tab-panel name="servletFilters" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="servletFilters" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
:title="$t('menu.developer.springboot.bean')"
:toolbar-actions="['refresh', 'separator', 'view', 'export']"
@ -84,7 +84,7 @@
}"
></w-grid>
</q-tab-panel>
<q-tab-panel name="servlets" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="servlets" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
:title="$t('menu.developer.springboot.bean')"
:checkbox-selection="false"

4
io.sc.platform.gradle/templates/pgp/setup/gradle.properties

@ -36,9 +36,9 @@ application_version=1.0.0
# platform
###########################################################
platform_group=io.sc
platform_version=8.1.34
platform_version=8.1.36
platform_plugin_version=8.1.13
platform_core_frontend_version=8.1.178
platform_core_frontend_version=8.1.179
###########################################################
# dependencies version

4
io.sc.platform.lcdp.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.platform.lcdp.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

6
io.sc.platform.lcdp.frontend/src/views/bpm/Bpm.vue

@ -11,7 +11,7 @@
</template>
<template #after>
<q-tab-panels v-model="selectedTabRef" animated swipeable vertical transition-prev="jump-up" transition-next="jump-up" keep-alive style="height: 100%">
<q-tab-panel name="processDefine" class="pl-2 pb-0" style="height: 100%">
<q-tab-panel name="processDefine" class="pl-2 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="processDefineGridRef"
:title="$t('lcdp.bpm.processDefine.grid.title')"
@ -231,7 +231,7 @@
}"
></w-grid>
</q-tab-panel>
<q-tab-panel name="processInstance" class="pl-2 pb-0" style="height: 100%">
<q-tab-panel name="processInstance" class="pl-2 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="processInstanceGridRef"
:title="$t('lcdp.bpm.processInstance.grid.title')"
@ -314,7 +314,7 @@
}"
></w-grid>
</q-tab-panel>
<q-tab-panel name="task" class="pl-2 pb-0" style="height: 100%">
<q-tab-panel name="task" class="pl-2 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="taskGridRef"
:title="$t('lcdp.bpm.task.grid.title')"

4
io.sc.platform.mvc.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.platform.mvc.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

4
io.sc.platform.security.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.platform.security.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [
@ -93,7 +93,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

4
io.sc.platform.system.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.platform.system.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.179",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

2
io.sc.platform.system.frontend/src/views/department/Department.vue

@ -95,7 +95,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectUserGrid
ref="userGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/user/queryUsersByDepartment')"

4
io.sc.platform.system.frontend/src/views/menu/Menu.vue

@ -193,7 +193,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="role" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="role" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectRoleGrid
ref="roleGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/role/queryRolesByMenu')"
@ -207,7 +207,7 @@
></SelectRoleGrid>
</q-tab-panel>
<q-tab-panel name="org" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="org" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectOrgTreeGrid
ref="orgTreeGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/org/listAllOrgsWithSelectedStatusByMenu')"

31
io.sc.platform.system.frontend/src/views/monitor/Log.vue

@ -7,8 +7,8 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="view" class="px-0 pb-0" style="height: 100%">
<div class="row q-pt-sm">
<q-tab-panel name="view" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<div class="row q-pt-sm" style="height: 50px">
<div class="col-2">
<q-input v-model="logRows" :label="$t('system.monitor.log.viewer.logRows')" outlined dense />
</div>
@ -17,16 +17,19 @@
</div>
<div class="col-4"></div>
<div class="col-1">
<q-btn :label="$t('system.monitor.log.viewer.action.refreshNow')" @click="refresh" />
<q-btn :label="$t('system.monitor.log.viewer.action.refreshNow')" color="primary" @click="refresh" />
</div>
</div>
<div class="row q-pt-sm">
<div class="col-12">
<q-input v-model="logContent" type="textarea" outlined input-style="height:500px;font-size:12px" />
</div>
<div class="row q-pt-sm" style="height: calc(100% - 52px)">
<div
v-dompurify-html="logContent"
contenteditable="true"
class="col-12 border overflow-auto text-nowrap rounded-md p-2 text-sm"
style="height: 100%"
></div>
</div>
</q-tab-panel>
<q-tab-panel name="download" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="download" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="downloadGridRef"
:title="$t('system.monitor.log.download.grid.title')"
@ -70,7 +73,7 @@
>
</w-grid>
</q-tab-panel>
<q-tab-panel name="level" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="level" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<w-grid
ref="levelGridRef"
:title="$t('system.monitor.log.level.grid.title')"
@ -132,7 +135,15 @@ const refresh = () => {
rows: logRows.value,
})
.then((response) => {
logContent.value = response.data;
if (response.data) {
let content = response.data;
content = content.replace(/\n/g, '<div></div>');
content = content.replace(/\r/g, '<div></div>');
logContent.value = content;
console.log(logContent.value);
} else {
logContent.value = '';
}
});
};

4
io.sc.platform.system.frontend/src/views/org/Org.vue

@ -97,7 +97,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectUserGrid
ref="userGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/user/queryUsersByOrg')"
@ -111,7 +111,7 @@
>
</SelectUserGrid>
</q-tab-panel>
<q-tab-panel name="menu" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="menu" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectMenuTreeGrid
ref="menuTreeGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/menu/listAllMenusWithSelectedStatusByOrg')"

4
io.sc.platform.system.frontend/src/views/role/Role.vue

@ -87,7 +87,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="menu" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="menu" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectMenuTreeGrid
ref="menuTreeGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/menu/listAllMenusWithSelectedStatusByRole')"
@ -97,7 +97,7 @@
></SelectMenuTreeGrid>
</q-tab-panel>
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="user" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectUserGrid
ref="userGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/user/queryUsersByRole')"

4
io.sc.platform.system.frontend/src/views/user/User.vue

@ -188,7 +188,7 @@
</q-tabs>
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: calc(100% - 48px)">
<q-tab-panel name="role" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="role" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectRoleGrid
ref="roleGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/role/queryRolesByUser')"
@ -201,7 +201,7 @@
@select-all-out="selectAllOut"
></SelectRoleGrid>
</q-tab-panel>
<q-tab-panel name="org" class="px-0 pb-0" style="height: 100%">
<q-tab-panel name="org" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<SelectOrgTreeGrid
ref="orgTreeGridRef"
:fetch-data-url="Environment.apiContextPath('/api/system/org/listAllOrgsWithSelectedStatusByUser')"

2
io.sc.platform.system/src/main/java/io/sc/platform/system/parameter/controller/ParameterWebController.java

@ -41,7 +41,7 @@ public class ParameterWebController extends RestCrudController<ParameterVo, Para
Map<String, String> homeMap =new LinkedHashMap<>();
homeMap.put("/home","home.default");
homeMap.putAll(PluginManager.getInstance().getFrontEndRouteHomeMap());
vo.setOptions(PluginManager.getInstance().getFrontEndRouteHomeMap());
vo.setOptions(homeMap);
}else {
if (parameter.getOptions() != null) {
vo.setOptions(parameter.getOptions());

4
io.sc.standard.frontend/package.json

@ -1,6 +1,6 @@
{
"name": "io.sc.standard.frontend",
"version": "8.1.34",
"version": "8.1.36",
"description": "",
"private": false,
"keywords": [],
@ -92,7 +92,7 @@
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.178",
"platform-core": "8.1.180",
"quasar": "2.14.5",
"tailwindcss": "3.4.0",
"vue": "3.4.3",

5
io.sc.standard.frontend/src/App.vue

@ -0,0 +1,5 @@
<template>
<w-platform-page></w-platform-page>
</template>
<script setup lang="ts"></script>

46
io.sc.standard.frontend/src/boostrap.ts

@ -0,0 +1,46 @@
import packageJson from '../package.json';
import { createApp } from 'vue';
import platform from 'platform-core';
import { ApplicationInitializer, ComponentManager } from 'platform-core';
import localMocks from './mock';
import localI18nMessages from './i18n';
import localMenus from './menus/menus.json';
import localRoutes from './routes/routes.json';
import localComponents from './components';
import App from './App.vue';
import 'platform-core/dist/css/platform-core.css';
import './css/tailwind.css';
// 设置远程组件加载器
// 覆盖 platform-core 包中的 remoteComponentLoader 函数
// 只有在主前端项目中编写如下的 remoteComponentLoader 函数才能实现 webpack MF 的 shared 功能
ComponentManager.setRemoteComponentLoader((moduleName: string, componentName: string): any => {
return async () => {
await __webpack_init_sharing__('default');
const container = window[moduleName];
if (container) {
await container.init(__webpack_share_scopes__.default);
const factory = await window[moduleName].get(componentName);
return factory();
} else {
throw new Error('window["' + moduleName + '"] is undefined!');
}
};
});
//初始化平台
ApplicationInitializer.initialize({
moduleName: packageJson.name,
moduleVersion: packageJson.version,
localMocks: localMocks,
localI18nMessages: localI18nMessages,
localMenus: localMenus,
localRoutes: localRoutes,
localComponents: localComponents,
callback: () => {
const app = createApp(App);
app.use(platform);
app.mount('#app');
},
});

4
io.sc.standard.frontend/src/components/index.ts

@ -5,7 +5,7 @@
import component_system_standard from '@/views/Standard.vue';
const localComponents = {
'component.system.standard': component_system_standard,
}
'component.system.standard': component_system_standard,
};
export default localComponents;

7
io.sc.standard.frontend/src/css/tailwind.css

@ -0,0 +1,7 @@
/**
* 引入 tailwind.css
*/
@tailwind base;
@tailwind components;
@tailwind utilities;

18
io.sc.standard.frontend/src/i18n/index.ts

@ -0,0 +1,18 @@
/**
*
* 1
*/
import messages from './messages.json';
import messages_tw_CN from './messages_tw_CN.json';
import messages_zh_CN from './messages_zh_CN.json';
const localI18nMessages = [
{
en: messages,
tw_CN: messages_tw_CN,
zh_CN: messages_zh_CN,
},
];
export default localI18nMessages;

1
io.sc.standard.frontend/src/main.ts

@ -0,0 +1 @@
import('./boostrap');

20
io.sc.standard.frontend/src/mock/index.ts

@ -0,0 +1,20 @@
/**
* mock, json mock, mock :
{
"enable": true,
"url": "/api/sample/action1",
"method": "get",
"response": {
"code": 200,
"messageI18nKey": "success",
"message": "success",
"data": {
"message": "This is a message for Action 1"
}
}
}
*/
const localMocks = [];
export default localMocks;

33
io.sc.standard.frontend/src/shims-vue.d.ts

@ -0,0 +1,33 @@
import type { AppType } from 'platform-core/types';
declare global {
interface Window {
APP: AppType;
__webpack_init_sharing__: any;
__webpack_share_scopes__: any;
}
}
declare module '*.vue' {
import type { App, DefineComponent } from 'vue';
const component: DefineComponent<{}, {}, any> & {
install(app: App): void;
};
export default component;
}
declare module 'vue/types/vue' {
interface VueConstructor {
$t: any;
$fc: any;
}
}
declare module '@vue/runtime-core' {
interface ComponentCustomProperties {
$t: any;
$fc: any;
}
}

22
io.sc.standard.frontend/src/views/Standard.vue

@ -1,6 +1,6 @@
<template>
<div>
<q-splitter v-model="splitterModelRef">
<div style="height: 100%">
<q-splitter v-model="splitterModelRef" style="height: 100%">
<template #before>
<q-tabs v-model="selectedTabRef" vertical active-class="active-class">
<q-tab name="GB_T_4754_2017" no-caps>
@ -13,14 +13,16 @@
</template>
<template #after>
<q-tab-panels v-model="selectedTabRef" animated swipeable vertical transition-prev="jump-up" transition-next="jump-up">
<q-tab-panel name="GB_T_4754_2017">
<GB_T_4754_2017></GB_T_4754_2017>
</q-tab-panel>
<q-tab-panel name="GB_T_2260_2007">
<GB_T_2260_2007></GB_T_2260_2007>
</q-tab-panel>
</q-tab-panels>
<div class="pl-1" style="height: 100%">
<q-tab-panels v-model="selectedTabRef" animated swipeable keep-alive style="height: 100%">
<q-tab-panel name="GB_T_4754_2017" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<GB_T_4754_2017></GB_T_4754_2017>
</q-tab-panel>
<q-tab-panel name="GB_T_2260_2007" class="px-0 pb-0" style="height: 100%; padding-left: 0px; padding-right: 0px; padding-bottom: 0px">
<GB_T_2260_2007></GB_T_2260_2007>
</q-tab-panel>
</q-tab-panels>
</div>
</template>
</q-splitter>
</div>

23
io.sc.standard.frontend/src/views/standard/GB_T_2260_2007.vue

@ -2,6 +2,7 @@
<w-grid
ref="treeGridRef"
:title="$t('standard.GB_T_2260_2007.grid.title')"
hide-bottom
:config-button="true"
selection="multiple"
:checkbox-selection="true"
@ -19,14 +20,20 @@
:toolbar-actions="[
'refresh',
'separator',
{
extend: 'addTop',
label: $t('standard.GB_T_2260_2007.grid.toolbar.addTop'),
},
{
extend: 'addChild',
label: $t('standard.GB_T_2260_2007.grid.toolbar.addChild'),
},
[
{
extend: 'add',
click: undefined,
},
{
extend: 'addTop',
label: $t('standard.GB_T_2260_2007.grid.toolbar.addTop'),
},
{
extend: 'addChild',
label: $t('standard.GB_T_2260_2007.grid.toolbar.addChild'),
},
],
'edit',
'remove',
'separator',

23
io.sc.standard.frontend/src/views/standard/GB_T_4754_2017.vue

@ -2,6 +2,7 @@
<w-grid
ref="treeGridRef"
:title="$t('standard.GB_T_4754_2017.grid.title')"
hide-bottom
:config-button="true"
selection="multiple"
:checkbox-selection="true"
@ -19,14 +20,20 @@
:toolbar-actions="[
'refresh',
'separator',
{
extend: 'addTop',
label: $t('standard.GB_T_4754_2017.grid.toolbar.addTop'),
},
{
extend: 'addChild',
label: $t('standard.GB_T_4754_2017.grid.toolbar.addChild'),
},
[
{
extend: 'add',
click: undefined,
},
{
extend: 'addTop',
label: $t('standard.GB_T_4754_2017.grid.toolbar.addTop'),
},
{
extend: 'addChild',
label: $t('standard.GB_T_4754_2017.grid.toolbar.addChild'),
},
],
'edit',
'remove',
'separator',

Loading…
Cancel
Save