Browse Source

update

main
wangshaoping 2 weeks ago
parent
commit
cf2c8e4075
  1. 1
      erm.frontend/.npmrc
  2. 90
      erm.frontend/package.json
  3. 2
      gradle.properties
  4. 1
      io.sc.engine.mv.frontend/.npmrc
  5. 90
      io.sc.engine.mv.frontend/package.json
  6. 2
      io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/IndicatorGenerator.java
  7. 1
      io.sc.engine.rule.frontend/.npmrc
  8. 90
      io.sc.engine.rule.frontend/package.json
  9. 32
      io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts
  10. 3
      io.sc.engine.rule.frontend/src/views/shared/TestCaseGrid.vue
  11. 1
      io.sc.engine.st.frontend/.npmrc
  12. 90
      io.sc.engine.st.frontend/package.json
  13. 90
      io.sc.platform.core.frontend/package.json
  14. 146
      io.sc.platform.core.frontend/src/views/testcase/code-mirror/AutoCompletionManager.ts
  15. 2
      io.sc.platform.core.frontend/src/views/testcase/code-mirror/code-mirror.vue
  16. 1
      io.sc.platform.core.frontend/template-project/.npmrc
  17. 92
      io.sc.platform.core.frontend/template-project/package.json
  18. 1
      io.sc.platform.developer.doc/.npmrc
  19. 10
      io.sc.platform.developer.doc/package.json
  20. 88
      io.sc.platform.developer.frontend/package.json
  21. 2
      io.sc.platform.gradle/templates/pgp/setup/gradle.properties
  22. 1
      io.sc.platform.lcdp.frontend/.npmrc
  23. 103
      io.sc.platform.lcdp.frontend/package copy.json
  24. 90
      io.sc.platform.lcdp.frontend/package.json
  25. 4
      io.sc.platform.lcdp.frontend/src/components/index.ts
  26. 4
      io.sc.platform.lcdp.frontend/src/routes/routes.json
  27. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/ExcelReport.vue
  28. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateConfig.vue
  29. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateConfigDialog.vue
  30. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateGrid.vue
  31. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateParamsDialog.vue
  32. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateParamsSelectDialog.vue
  33. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateReportDialog.vue
  34. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateSetColumnParamsDialog.vue
  35. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateSetForeachPropsDialog.vue
  36. 6
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/luckysheet/LuckySheet.vue
  37. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/luckysheet/exportExcel.ts
  38. 0
      io.sc.platform.lcdp.frontend/src/views/excelTemplate/template.ts
  39. 1
      io.sc.platform.license.keygen.frontend/.npmrc
  40. 90
      io.sc.platform.license.keygen.frontend/package.json
  41. 1
      io.sc.platform.mvc.frontend/.npmrc
  42. 90
      io.sc.platform.mvc.frontend/package.json
  43. 1
      io.sc.platform.scheduler.manager.frontend/.npmrc
  44. 90
      io.sc.platform.scheduler.manager.frontend/package.json
  45. 1
      io.sc.platform.system.frontend/.npmrc
  46. 90
      io.sc.platform.system.frontend/package.json
  47. 133
      io.sc.platform.util/src/main/java/io/sc/platform/util/ArrayUtil.java
  48. 3
      io.sc.platform.util/src/main/java/io/sc/platform/util/ByteUtil.java
  49. 1
      io.sc.standard.frontend/.npmrc
  50. 90
      io.sc.standard.frontend/package.json
  51. 1
      io.sc.website/.npmrc
  52. 6
      io.sc.website/package.json

1
erm.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

90
erm.frontend/package.json

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

2
gradle.properties

@ -38,7 +38,7 @@ application_version=1.0.0
platform_group=io.sc
platform_version=8.2.8
platform_plugin_version=8.2.8
platform_core_frontend_version=8.2.33
platform_core_frontend_version=8.2.34
###########################################################
# dependencies version

1
io.sc.engine.mv.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

2
io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/IndicatorGenerator.java

@ -213,7 +213,7 @@ public class IndicatorGenerator {
if(IndicatorType.INDICATOR.equals(indicator.getType())){
if(ValueTypeUtil.isDecimal(indicator.getValueType())){
String tpl ="result.addParameterResult(new ParameterResult('${code}','${name}',ParameterType.${type},'${valueType}',${valueScale},RoundingMode.${valueRoundingMode},this.${fieldName}==null?null:this.${fieldName}.setScale(${valueScale},RoundingMode.${valueRoundingMode})));";
String tpl ="result.addParameterResult(new ParameterResult('${code}','${name}',ParameterType.${type},'${valueType}',${valueScale},RoundingMode.${valueRoundingMode},this.${fieldName}==null?null:this.${fieldName}.setScale(${valueScale},RoundingMode.${valueRoundingMode}).toString()));";
sb.append(StringUtil.format(tpl,variables)).append("\n");
}else if(ValueTypeUtil.isBase(indicator.getValueType())){
String tpl ="result.addParameterResult(new ParameterResult('${code}','${name}',ParameterType.${type},'${valueType}',null,null,this.${fieldName}==null?null:this.${fieldName}.toString()));";

1
io.sc.engine.rule.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

32
io.sc.engine.rule.frontend/src/views/shared/AutoCompletionManager.ts

@ -204,7 +204,7 @@ class AutoCompletionManager {
};
}
public autoCompletionProperties(to: any, matchedText?: any): any {
public autoCompletionProperties(to: any, matchedText?: any, subText?: string): any {
const matchedTextReverse = Tools.reverseString(matchedText);
const regReverse = /(\.(\](.+?)\[)?\}(.+?)\{[$#])+/g; //匹配 '.]n[}xxx{$#' 模式
// -- -- --- -- -- --- ----
@ -222,9 +222,19 @@ class AutoCompletionManager {
if (Tools.isUndefinedOrNull(options)) {
return null;
}
let filteredOptions: any[] = [];
if (!Tools.isUndefinedOrNull(subText)) {
options.forEach((item: any) => {
if (item.label.indexOf(subText) > -1) {
filteredOptions.push(item);
}
});
} else {
filteredOptions = options;
}
return {
from: to,
options: options,
options: filteredOptions,
validFor: /^(.*)?$/,
};
}
@ -235,14 +245,20 @@ class AutoCompletionManager {
return null;
}
const beforeText = beforeMatched.text || '';
if (beforeText.endsWith('.')) {
//匹配属性
return this.autoCompletionProperties(beforeMatched.to, beforeText);
} else if (beforeText.endsWith(' ')) {
//匹配参数
if (beforeText.endsWith(' ')) {
//匹配所有参数
return this.autoCompletionParameters(beforeMatched.to);
} else if (beforeText.endsWith('.')) {
//匹配所有属性
return this.autoCompletionProperties(beforeMatched.to, beforeText);
} else {
return null;
//匹配部分属性
const lastIndexOf = beforeText.lastIndexOf('.');
const matchedText = beforeText.substring(0, lastIndexOf + 1);
const subText = beforeText.substring(lastIndexOf + 1);
if (lastIndexOf > -1) {
return this.autoCompletionProperties(beforeMatched.to - subText.length, matchedText, subText);
}
}
}

3
io.sc.engine.rule.frontend/src/views/shared/TestCaseGrid.vue

@ -189,7 +189,8 @@ const actionMap = {
label: $t('re.testcase.grid.tools.download'),
icon: 'bi-box-arrow-in-down',
click: (args: any) => {
Downloader.post(Environment.apiContextPath('/api/re/testCase/downloadTemplate/' + props.owner.resource), {}, { loading: true });
console.log(props.owner);
Downloader.post(Environment.apiContextPath('/api/re/testCase/downloadTemplate/' + props.owner.id), {}, { loading: true });
},
},
upload: {

1
io.sc.engine.st.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

90
io.sc.engine.st.frontend/package.json

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

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

@ -1,6 +1,6 @@
{
"name": "platform-core",
"version": "8.2.33",
"version": "8.2.34",
"description": "前端核心包,用于快速构建前端的脚手架",
"//main": "库的主文件",
"main": "dist/platform-core.js",
@ -57,52 +57,52 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -111,40 +111,40 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.2.6",
"quasar": "2.17.4",
"pinia": "2.3.0",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3",
"node-sql-parser": "5.3.4"
"node-sql-parser": "5.3.6"
}
}

146
io.sc.platform.core.frontend/src/views/testcase/code-mirror/AutoCompletionManager.ts

@ -1,5 +1,67 @@
import { axios, Tools } from '@/platform';
class ParameterMapping {
/**
*
*/
static #Boost = {
//指标类型
INTERFACE: 100, //接口
INDICATOR: 100 - 1, //指标
// 参数类型
CONSTANT: 100, //常量
IN: 100 - 1, //输入
IN_OPTION: 100 - 1, //输入(选项)
IN_SUB_OUT: 100 - 1, //输入(子模型输出)
INTERMEDIATE: 100 - 2, //中间值
OUT: 100 - 2, //输出
// 元数据类型
ENUM: 0, //枚举
UD_JAVA_CLASS: 200 - 1, //自定义Java类
};
/**
*
* @param type
* @returns
*/
public static getPlaceholderPrefix(type: string) {
if (type === 'ENUM') {
return '#';
} else {
return '$';
}
}
/**
* ,
* @param type
* @returns
*/
public static getBoost(type: string) {
return ParameterMapping.#Boost[type];
}
/**
*
* @param type
* @returns
*/
public static getAutoCompletionType(type: string) {
if (type === 'ENUM') {
return 'enum';
} else if (type === 'CONSTANT') {
return 'constant';
} else if (type === 'INDICATOR' || type === 'INTERMEDIATE' || type === 'OUT') {
return 'variable';
} else {
return 'interface';
}
}
}
class AutoCompletionManager {
parameters: any;
valueTypes: any;
@ -101,13 +163,20 @@ class AutoCompletionManager {
}
public getParameterOptions(): any {
const cache = {};
const options: any[] = [];
Object.values(this.parameters).forEach((parameter: any) => {
const option = this.getOptionItem(parameter);
if (option) {
if (!cache[option.label]) {
cache[option.label] = option;
options.push(option);
}
}
});
for (const option of options) {
option.boost = ParameterMapping.getBoost(option.category);
}
return options;
}
@ -116,15 +185,13 @@ class AutoCompletionManager {
if (!Tools.isNill(valueType)) {
const version = valueType.version ? valueType.name + '(V' + valueType.version + ')' : valueType.name;
const info = parameter.valueTypeIsList ? 'List<' + version + '>' : version;
if (parameter.type === 'parameter') {
if (parameter.valueTypeIsList) {
return { label: parameter.name, type: 'variable', apply: '${' + parameter.name + '}[0]', info: info };
} else {
return { label: parameter.name, type: 'variable', apply: '${' + parameter.name + '}', info: info };
}
} else if (parameter.type === 'enum') {
return { label: parameter.name, type: 'enum', apply: '#{' + parameter.name + '}', info: info };
}
return {
category: parameter.type,
type: ParameterMapping.getAutoCompletionType(parameter.type),
label: parameter.name,
apply: ParameterMapping.getPlaceholderPrefix(parameter.type) + '{' + parameter.name + '}' + (parameter.valueTypeIsList ? '[0]' : ''),
info: info,
};
}
return null;
}
@ -137,7 +204,8 @@ class AutoCompletionManager {
};
}
public autoCompletionProperties(to: any, matchedText?: any): any {
public autoCompletionProperties(to: any, matchedText?: any, subText?: string): any {
console.log(matchedText, subText);
const matchedTextReverse = Tools.reverseString(matchedText);
const regReverse = /(\.(\](.+?)\[)?\}(.+?)\{[$#])+/g; //匹配 '.]n[}xxx{$#' 模式
// -- -- --- -- -- --- ----
@ -151,72 +219,56 @@ class AutoCompletionManager {
if (Tools.isUndefinedOrNull(parameterName)) {
return null;
}
/*
const enumRegReverse = /(\.(\](.+?)\[)?\}(.+?)\{#)+/g; //匹配 '.]n[}xxx{#' 模式
// -- -- --- -- -- --- ----
// . ] n [ } xxx {#
let matcheds: any = matchedTextReverse.match(enumRegReverse);
if (Tools.isUndefinedOrNull(matcheds) || matcheds.length <= 0) {
const regReverse = /(\.(\](.+?)\[)?\}(.+?)\{\$)+/g; //匹配 '.]n[}xxx{$' 模式
// -- -- --- -- -- --- ----
// . ] n [ } xxx {$
matcheds = matchedTextReverse.match(regReverse);
if (Tools.isUndefinedOrNull(matcheds) || matcheds.length <= 0) {
return null;
}
}
const matched = Tools.reverseString(matcheds[0]);
let parameterName = matched.replace(/#\{(.+?)\}(\[(.+?)\])?/g, '$1');
// ---- --- -- -- --- --
// $ { xxx } [ n ]
if (Tools.isUndefinedOrNull(parameterName)) {
parameterName = matched.replace(/\$\{(.+?)\}(\[(.+?)\])?/g, '$1');
if (Tools.isUndefinedOrNull(parameterName)) {
return null;
}
}
*/
const options = this.getOptions(parameterName);
if (Tools.isUndefinedOrNull(options)) {
return null;
}
let filteredOptions: any[] = [];
if (!Tools.isUndefinedOrNull(subText)) {
options.forEach((item: any) => {
if (item.label.indexOf(subText) > -1) {
filteredOptions.push(item);
}
});
} else {
filteredOptions = options;
}
return {
from: to,
options: options,
options: filteredOptions,
validFor: /^(.*)?$/,
};
}
public doAutoCompletion(context: any): any {
console.log('>>>>');
const beforeMatched = context.matchBefore(/(.+?)/g);
console.log(beforeMatched);
if (Tools.isUndefinedOrNull(beforeMatched)) {
return null;
}
const beforeText = beforeMatched.text || '';
if (beforeText.endsWith('.')) {
//匹配属性
return this.autoCompletionProperties(beforeMatched.to, beforeText);
} else if (beforeText.endsWith(' ')) {
if (beforeText.endsWith(' ')) {
//匹配参数
return this.autoCompletionParameters(beforeMatched.to);
} else if (beforeText.endsWith('.')) {
//匹配所有属性
return this.autoCompletionProperties(beforeMatched.to, beforeText);
} else {
return null;
//匹配部分属性
const lastIndexOf = beforeText.lastIndexOf('.');
if (lastIndexOf > -1) {
return this.autoCompletionProperties(beforeMatched.to, beforeText.substring(0, lastIndexOf + 1), beforeText.substring(lastIndexOf + 1));
}
}
}
public load(url: string) {
axios.get(url).then((response) => {
axios.get(url).then((response: any) => {
this.setParameters(response.data?.parameters);
this.setValueTypes(response.data?.valueTypes);
});
}
public autoCompletion(): any {
console.log('????');
return (context: any) => {
return this.doAutoCompletion(context);
};

2
io.sc.platform.core.frontend/src/views/testcase/code-mirror/code-mirror.vue

@ -30,7 +30,7 @@ const click = () => {
const autoCompletionManager = new AutoCompletionManager();
const userDefinedFunctionsManager = new UserDefinedFunctionsManager();
autoCompletionManager.load(Environment.apiContextPath('/api/re/common/parameterAndValueType/findByParameterId/34e7391f-ba76-4e14-b152-ae0da917fd20'));
autoCompletionManager.load(Environment.apiContextPath('/api/re/common/parameterAndValueType/findByParameterId/069d4b6d-1972-4953-aa47-2ae3a4d41f4a'));
userDefinedFunctionsManager.load();
console.log(Tools.escapeHtml('<xml>&</xml>'));

1
io.sc.platform.core.frontend/template-project/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -1,6 +1,6 @@
{
"name": "platform-core",
"version": "8.2.33",
"version": "8.2.34",
"description": "前端核心包,用于快速构建前端的脚手架",
"private": false,
"keywords": [],
@ -29,52 +29,52 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,40 +83,40 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

1
io.sc.platform.developer.doc/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

10
io.sc.platform.developer.doc/package.json

@ -20,17 +20,17 @@
"pnpm": ">=7"
},
"devDependencies": {
"sass": "1.81.0",
"sass-loader": "16.0.3",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"vue-loader": "17.4.2",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"vuepress": "2.0.0-rc.15"
},
"dependencies": {
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"vue": "3.5.13",
"vue-i18n": "10.0.4"
"vue-i18n": "11.0.1"
}
}

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

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

@ -38,7 +38,7 @@ application_version=1.0.0
platform_group=io.sc
platform_version=8.2.8
platform_plugin_version=8.2.8
platform_core_frontend_version=8.2.33
platform_core_frontend_version=8.2.34
###########################################################
# dependencies version

1
io.sc.platform.lcdp.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

103
io.sc.platform.lcdp.frontend/package copy.json

@ -1,103 +0,0 @@
{
"name": "io.sc.platform.lcdp.frontend",
"version": "8.1.38",
"description": "",
"private": false,
"keywords": [],
"author": "",
"license": "ISC",
"scripts": {
"clean": "rm -rf ./node_modules && rm -rf pnpm-lock.yaml",
"dev": "nodemon",
"serve": "node ./util-components-generator.cjs && cross-env NODE_ENV=development webpack serve --config webpack.env.serve.cjs",
"build": "node ./util-components-generator.cjs && cross-env NODE_ENV=development webpack --config webpack.env.build.cjs",
"prod": "node ./util-components-generator.cjs && cross-env NODE_ENV=production webpack --config webpack.env.prod.cjs",
"sync": "platform sync"
},
"engines": {
"node": ">=18",
"pnpm": ">=7"
},
"publishConfig": {
"registry": "http://nexus.sc.io:8000/repository/npm-releases/",
"access": "public"
},
"devDependencies": {
"@babel/core": "7.23.7",
"@babel/preset-env": "7.23.7",
"@babel/preset-typescript": "7.23.3",
"@babel/plugin-transform-class-properties": "7.23.3",
"@babel/plugin-transform-object-rest-spread": "7.23.4",
"@quasar/app-webpack": "3.12.1",
"@quasar/cli": "2.3.0",
"@types/mockjs": "1.0.10",
"@types/node": "20.10.6",
"@typescript-eslint/eslint-plugin": "6.17.0",
"@typescript-eslint/parser": "6.17.0",
"@vue/compiler-sfc": "3.4.3",
"@webpack-cli/serve": "2.0.5",
"autoprefixer": "10.4.16",
"babel-loader": "9.1.3",
"clean-webpack-plugin": "4.0.0",
"copy-webpack-plugin": "11.0.0",
"cross-env": "7.0.3",
"css-loader": "6.8.1",
"eslint": "8.56.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.1.2",
"eslint-plugin-vue": "9.19.2",
"eslint-webpack-plugin": "4.0.1",
"html-webpack-plugin": "5.6.0",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.7.6",
"nodemon": "3.0.2",
"postcss": "8.4.32",
"postcss-import": "16.0.0",
"postcss-loader": "7.3.4",
"postcss-preset-env": "9.3.0",
"prettier": "3.1.1",
"sass": "1.69.7",
"sass-loader": "13.3.3",
"typescript": "5.3.3",
"vue-loader": "17.4.2",
"webpack": "5.89.0",
"webpack-bundle-analyzer": "4.10.1",
"webpack-cli": "5.1.4",
"webpack-dev-server": "4.15.1",
"webpack-merge": "5.10.0",
"@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",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"pinia": "2.1.7",
"platform-core": "8.1.188",
"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"
}
}

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

4
io.sc.platform.lcdp.frontend/src/components/index.ts

@ -6,9 +6,9 @@ import component_lcdp_Frontend from '@/views/Frontend.vue';
import component_lcdp_Theme from '@/views/Theme.vue';
import component_lcdp_bpm from '@/views/bpm/Bpm.vue';
import component_lcdp_form_page from '@/views/form/Page.vue';
import component_lcdp_excel_report from '@/views/excel-template/ExcelReport.vue';
import component_lcdp_excel_report from '@/views/excelTemplate/ExcelReport.vue';
import component_lcdp_formConfig from '@/views/form/FormConfig.vue';
import component_lcdp_excel_template from '@/views/excel-template/TemplateGrid.vue';
import component_lcdp_excel_template from '@/views/excelTemplate/TemplateGrid.vue';
const localComponents = {
'component.lcdp.Frontend': component_lcdp_Frontend,

4
io.sc.platform.lcdp.frontend/src/routes/routes.json

@ -54,7 +54,7 @@
"path": "lcdp/excel/report",
"priority": 0,
"component": "component.lcdp.excel.report",
"componentPath": "@/views/excel-template/ExcelReport.vue",
"componentPath": "@/views/excelTemplate/ExcelReport.vue",
"redirect": null,
"meta": {
"permissions": ["/example/**/*"]
@ -77,7 +77,7 @@
"name": "route.lcdp.excel.template",
"path": "lcdp/excel/template",
"component": "component.lcdp.excel.template",
"componentPath": "@/views/excel-template/TemplateGrid.vue",
"componentPath": "@/views/excelTemplate/TemplateGrid.vue",
"meta": {
"permissions": ["/example/**/*"]
},

0
io.sc.platform.lcdp.frontend/src/views/excel-template/ExcelReport.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/ExcelReport.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateConfig.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateConfig.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateConfigDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateConfigDialog.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateGrid.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateGrid.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateParamsDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateParamsDialog.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateParamsSelectDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateParamsSelectDialog.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateReportDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateReportDialog.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateSetColumnParamsDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateSetColumnParamsDialog.vue

0
io.sc.platform.lcdp.frontend/src/views/excel-template/TemplateSetForeachPropsDialog.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/TemplateSetForeachPropsDialog.vue

6
io.sc.platform.lcdp.frontend/src/views/excel-template/luckysheet/LuckySheet.vue → io.sc.platform.lcdp.frontend/src/views/excelTemplate/luckysheet/LuckySheet.vue

@ -51,9 +51,9 @@ import { exportExcel } from './exportExcel';
import { useQuasar } from 'quasar';
import { axios, TagViewManager, Environment, PlatformIconEnum, Tools, NotifyManager } from 'platform-core';
import TemplateParamsSelectDialog from '@/views/excel_template/TemplateParamsSelectDialog.vue';
import TemplateSetForEachParamsDialog from '@/views/excel_template/TemplateSetForeachPropsDialog.vue';
import TemplateSetColumnParamsDialog from '@/views/excel_template/TemplateSetColumnParamsDialog.vue';
import TemplateParamsSelectDialog from '@/views/excelTemplate/TemplateParamsSelectDialog.vue';
import TemplateSetForEachParamsDialog from '@/views/excelTemplate/TemplateSetForeachPropsDialog.vue';
import TemplateSetColumnParamsDialog from '@/views/excelTemplate/TemplateSetColumnParamsDialog.vue';
const gc = Environment.getConfigure();
const $q = useQuasar();

0
io.sc.platform.lcdp.frontend/src/views/excel-template/luckysheet/exportExcel.ts → io.sc.platform.lcdp.frontend/src/views/excelTemplate/luckysheet/exportExcel.ts

0
io.sc.platform.lcdp.frontend/src/views/excel-template/template.ts → io.sc.platform.lcdp.frontend/src/views/excelTemplate/template.ts

1
io.sc.platform.license.keygen.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

90
io.sc.platform.license.keygen.frontend/package.json

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

1
io.sc.platform.mvc.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

1
io.sc.platform.scheduler.manager.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

90
io.sc.platform.scheduler.manager.frontend/package.json

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

1
io.sc.platform.system.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,40 +83,40 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

133
io.sc.platform.util/src/main/java/io/sc/platform/util/ArrayUtil.java

@ -1,103 +1,135 @@
package io.sc.platform.util;
import java.util.Date;
public class ArrayUtil {
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(boolean[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(byte[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(char[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(short[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(int[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(long[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(float[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(double[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组是否含有元素
*
* @param arrays 数组对象
* @return 数组是否含有元素
*/
public static boolean hasElements(Object[] arrays) {
if(arrays==null){ return false; }
if (arrays == null) {
return false;
}
return arrays.length > 0;
}
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static boolean max(boolean[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
for (boolean v : arrays) {
if (v) {
return true;
@ -108,11 +140,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static byte max(byte[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
byte r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -124,11 +159,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static char max(char[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
char r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -140,11 +178,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static short max(short[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
short r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -156,11 +197,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static int max(int[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
int r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -172,11 +216,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static long max(long[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
long r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -188,11 +235,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static float max(float[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
float r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -204,11 +254,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static double max(double[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
double r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] > r) {
@ -220,11 +273,14 @@ public class ArrayUtil {
/**
* 获取数组中最大的元素
*
* @param arrays 数组对象
* @return 数组中最大的元素
*/
public static Comparable max(Comparable[] arrays) {
if(arrays==null){ return null; }
if (arrays == null) {
return null;
}
Comparable r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i].compareTo(r) > 0) {
@ -234,13 +290,10 @@ public class ArrayUtil {
return r;
}
public static boolean min(boolean[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
for (boolean v : arrays) {
if (!v) {
return false;
@ -250,7 +303,9 @@ public class ArrayUtil {
}
public static byte min(byte[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
byte r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -261,7 +316,9 @@ public class ArrayUtil {
}
public static char min(char[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
char r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -272,7 +329,9 @@ public class ArrayUtil {
}
public static short min(short[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
short r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -283,7 +342,9 @@ public class ArrayUtil {
}
public static int min(int[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
int r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -294,7 +355,9 @@ public class ArrayUtil {
}
public static long min(long[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
long r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -305,7 +368,9 @@ public class ArrayUtil {
}
public static float min(float[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
float r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -316,7 +381,9 @@ public class ArrayUtil {
}
public static double min(double[] arrays) {
if(arrays==null){ throw new RuntimeException("parameter must NOT null"); }
if (arrays == null) {
throw new RuntimeException("parameter must NOT null");
}
double r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i] < r) {
@ -327,7 +394,9 @@ public class ArrayUtil {
}
public static Comparable min(Comparable[] arrays) {
if(arrays==null){ return null; }
if (arrays == null || arrays.length == 0) {
return null;
}
Comparable r = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if (arrays[i].compareTo(r) < 0) {

3
io.sc.platform.util/src/main/java/io/sc/platform/util/ByteUtil.java

@ -2,6 +2,9 @@ package io.sc.platform.util;
import java.nio.ByteBuffer;
/**
* 字节工具类
*/
public class ByteUtil {
private ByteUtil(){}
/**

1
io.sc.standard.frontend/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

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

@ -28,17 +28,17 @@
"@babel/plugin-transform-object-rest-spread": "7.25.9",
"@babel/preset-env": "7.26.0",
"@babel/preset-typescript": "7.26.0",
"@quasar/app-webpack": "4.0.0-rc.4",
"@quasar/app-webpack": "4.0.7",
"@quasar/cli": "2.4.1",
"@types/mockjs": "1.0.10",
"@types/node": "22.10.0",
"@typescript-eslint/eslint-plugin": "8.16.0",
"@typescript-eslint/parser": "8.16.0",
"@types/node": "22.10.7",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@vue/babel-plugin-jsx": "1.2.5",
"@vue/compiler-sfc": "3.5.13",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
"@vuepress/theme-default": "2.0.0-rc.49",
"@webpack-cli/serve": "2.0.5",
"@webpack-cli/serve": "3.0.1",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"clean-webpack-plugin": "4.0.0",
@ -46,35 +46,35 @@
"copy-webpack-plugin": "12.0.2",
"cross-env": "7.0.3",
"css-loader": "7.1.2",
"eslint": "9.15.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vue": "9.31.0",
"eslint": "9.18.0",
"eslint-config-prettier": "10.0.1",
"eslint-plugin-prettier": "5.2.2",
"eslint-plugin-vue": "9.32.0",
"eslint-webpack-plugin": "4.2.0",
"html-webpack-plugin": "5.6.3",
"json5": "2.2.3",
"mini-css-extract-plugin": "2.9.2",
"nodemon": "3.1.7",
"postcss": "8.4.49",
"nodemon": "3.1.9",
"postcss": "8.5.1",
"postcss-import": "16.1.0",
"postcss-loader": "8.1.1",
"postcss-preset-env": "10.1.1",
"prettier": "3.4.1",
"sass": "1.81.0",
"sass-loader": "16.0.3",
"tailwindcss": "3.4.15",
"postcss-preset-env": "10.1.3",
"prettier": "3.4.2",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"tailwindcss": "3.4.17",
"typescript": "5.5.4",
"vue-loader": "17.4.2",
"vuepress": "2.0.0-rc.15",
"webpack": "5.96.1",
"webpack": "5.97.1",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.1.0",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.0",
"webpack-merge": "6.0.1"
},
"dependencies": {
"@codemirror/autocomplete": "6.18.4",
"@codemirror/commands": "6.7.1",
"@codemirror/commands": "6.8.0",
"@codemirror/lang-html": "6.4.9",
"@codemirror/lang-java": "6.0.1",
"@codemirror/lang-javascript": "6.2.2",
@ -83,42 +83,42 @@
"@codemirror/lang-xml": "6.1.0",
"@codemirror/language": "6.10.8",
"@codemirror/search": "6.5.8",
"@codemirror/state": "6.5.0",
"@codemirror/view": "6.36.1",
"@maxgraph/core": "0.13.1",
"@quasar/extras": "1.16.13",
"@univerjs/core": "0.5.0",
"@univerjs/design": "0.5.0",
"@univerjs/docs": "0.5.0",
"@univerjs/docs-ui": "0.5.0",
"@univerjs/engine-formula": "0.5.0",
"@univerjs/engine-render": "0.5.0",
"@univerjs/facade": "0.5.0",
"@univerjs/sheets": "0.5.0",
"@univerjs/sheets-formula": "0.5.0",
"@univerjs/sheets-ui": "0.5.0",
"@univerjs/thread-comment": "0.5.0",
"@univerjs/ui": "0.5.0",
"@vueuse/core": "11.3.0",
"axios": "1.7.8",
"@codemirror/state": "6.5.1",
"@codemirror/view": "6.36.2",
"@maxgraph/core": "0.14.0",
"@quasar/extras": "1.16.15",
"@univerjs/core": "0.5.4",
"@univerjs/design": "0.5.4",
"@univerjs/docs": "0.5.4",
"@univerjs/docs-ui": "0.5.4",
"@univerjs/engine-formula": "0.5.4",
"@univerjs/engine-render": "0.5.4",
"@univerjs/facade": "0.5.4",
"@univerjs/sheets": "0.5.4",
"@univerjs/sheets-formula": "0.5.4",
"@univerjs/sheets-ui": "0.5.4",
"@univerjs/thread-comment": "0.5.4",
"@univerjs/ui": "0.5.4",
"@vueuse/core": "12.4.0",
"axios": "1.7.9",
"codemirror": "6.0.1",
"dayjs": "1.11.13",
"echarts": "5.5.1",
"echarts": "5.6.0",
"exceljs": "4.4.0",
"file-saver": "2.0.5",
"luckyexcel": "1.0.1",
"mockjs": "1.1.0",
"node-sql-parser": "5.3.4",
"pinia": "2.2.6",
"node-sql-parser": "5.3.6",
"pinia": "2.3.0",
"pinia-undo": "0.2.4",
"platform-core": "8.2.33",
"quasar": "2.17.4",
"platform-core": "8.2.34",
"quasar": "2.17.6",
"sort-array": "5.0.0",
"svg-path-commander": "2.1.5",
"svg-path-commander": "2.1.7",
"tailwindcss": "3.4.10",
"vue": "3.5.13",
"vue-dompurify-html": "5.2.0",
"vue-i18n": "10.0.4",
"vue-i18n": "11.0.1",
"vue-router": "4.5.0",
"xml-formatter": "3.6.3"
}

1
io.sc.website/.npmrc

@ -1,5 +1,6 @@
# npm 仓库地址, 在 npm install 时使用
registry=http://nexus.sc.io:8000/repository/npm-public/
#registry=https://registry.npm.taobao.org/
# 用户邮箱
email=

6
io.sc.website/package.json

@ -18,8 +18,8 @@
"pnpm": ">=7"
},
"devDependencies": {
"sass": "1.81.0",
"sass-loader": "16.0.3",
"sass": "1.83.4",
"sass-loader": "16.0.4",
"vue-loader": "17.4.2",
"platform-core": "8.1.385",
"@vuepress/bundler-webpack": "2.0.0-rc.15",
@ -28,6 +28,6 @@
},
"dependencies": {
"vue": "3.5.13",
"platform-core": "8.2.33"
"platform-core": "8.2.34"
}
}
Loading…
Cancel
Save