Browse Source

update

main
wangshaoping 9 months ago
parent
commit
785341f4fd
  1. 6
      app.platform/build.gradle
  2. 87
      erm.api/src/main/java/erm/capitalplan/api/StrategicTargetVo.java
  3. 15
      erm.frontend/package.json
  4. 2
      erm.frontend/src/components/index.ts
  5. 9
      erm.frontend/src/i18n/messages.json
  6. 9
      erm.frontend/src/i18n/messages_tw_CN.json
  7. 9
      erm.frontend/src/i18n/messages_zh_CN.json
  8. 2
      erm.frontend/src/menus/menus.json
  9. 15
      erm.frontend/src/routes/routes.json
  10. 79
      erm.frontend/src/views/capitalPlan/StrategicTarget.vue
  11. 2
      erm.frontend/src/views/kpi/Indicator.vue
  12. 15
      erm/src/main/java/erm/capitalplan/controller/StrategicTargetWebController.java
  13. 148
      erm/src/main/java/erm/capitalplan/jpa/entity/StrategicTargetEntity.java
  14. 11
      erm/src/main/java/erm/capitalplan/jpa/entity/repository/StrategicTargetRepository.java
  15. 10
      erm/src/main/java/erm/capitalplan/service/StrategicTargetService.java
  16. 12
      erm/src/main/java/erm/capitalplan/service/impl/StrategicTargetServiceImpl.java
  17. 5
      erm/src/main/resources/META-INF/platform/plugins/components.json
  18. 5
      erm/src/main/resources/META-INF/platform/plugins/liquibase.json
  19. 5
      erm/src/main/resources/META-INF/platform/plugins/repositories.json
  20. 23
      erm/src/main/resources/erm/liquibase/data/rp_cp_strategic_target.csv
  21. 19
      erm/src/main/resources/liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Database Data.xml
  22. 44
      erm/src/main/resources/liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Schema DDL.xml
  23. 2
      gradle.properties
  24. 15
      io.sc.engine.mv.frontend/package.json
  25. 15
      io.sc.engine.rule.frontend/package.json
  26. 15
      io.sc.engine.st.frontend/package.json
  27. 4
      io.sc.platform.core.frontend/src/platform/components/grid/TreeGridRow.vue
  28. 6
      io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue
  29. 4
      io.sc.platform.core.frontend/template-project/package.json
  30. 15
      io.sc.platform.developer.frontend/package.json
  31. 36
      io.sc.platform.installer/src/main/resources/templates/io/sc/platform/installer/installer.html
  32. 15
      io.sc.platform.lcdp.frontend/package.json
  33. 2
      io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/api/Sider.java
  34. 15
      io.sc.platform.mvc.frontend/package.json
  35. 2
      io.sc.platform.security.frontend/package.json
  36. 15
      io.sc.platform.system.frontend/package.json
  37. 5
      io.sc.platform.system.frontend/src/views/announcement/AnnouncementManager.vue
  38. 1
      io.sc.platform.system.frontend/src/views/role/Role.vue
  39. 15
      io.sc.standard.frontend/package.json

6
app.platform/build.gradle

@ -33,10 +33,10 @@ dependencies {
// project(":io.sc.engine.st"), // project(":io.sc.engine.st"),
// project(":io.sc.engine.st.frontend"), // project(":io.sc.engine.st.frontend"),
// //
// project(":erm"), project(":erm"),
// project(":erm.frontend"), project(":erm.frontend"),
project(":io.sc.standard"), // project(":io.sc.standard"),
) )
} }

87
erm.api/src/main/java/erm/capitalplan/api/StrategicTargetVo.java

@ -0,0 +1,87 @@
package erm.capitalplan.api;
import io.sc.platform.orm.api.vo.CorporationAuditorVo;
public class StrategicTargetVo extends CorporationAuditorVo {
private String id;
private String code;
private String name;
private String category;
private Integer order;
private Double t;
private Double t1;
private Double t2;
private Double t3;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCategory() {
return category;
}
public void setCategory(String category) {
this.category = category;
}
public Integer getOrder() {
return order;
}
public void setOrder(Integer order) {
this.order = order;
}
public Double getT() {
return t;
}
public void setT(Double t) {
this.t = t;
}
public Double getT1() {
return t1;
}
public void setT1(Double t1) {
this.t1 = t1;
}
public Double getT2() {
return t2;
}
public void setT2(Double t2) {
this.t2 = t2;
}
public Double getT3() {
return t3;
}
public void setT3(Double t3) {
this.t3 = t3;
}
}

15
erm.frontend/package.json

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

2
erm.frontend/src/components/index.ts

@ -29,6 +29,7 @@ import component_erm_assessment_managementResult from '@/views/assessment/Manage
import component_erm_assessment_selfEvaluation from '@/views/assessment/SelfEvaluation.vue'; import component_erm_assessment_selfEvaluation from '@/views/assessment/SelfEvaluation.vue';
import component_erm_assessment_reEvaluation from '@/views/assessment/ReEvaluation.vue'; import component_erm_assessment_reEvaluation from '@/views/assessment/ReEvaluation.vue';
import component_erm_assessment_additional from '@/views/assessment/Additional.vue'; import component_erm_assessment_additional from '@/views/assessment/Additional.vue';
import component_erm_capitalPlan_strategicTarget from '@/views/capitalPlan/StrategicTarget.vue';
import component_erm_capitalPlan_parameter from '@/views/capitalPlan/Parameter.vue'; import component_erm_capitalPlan_parameter from '@/views/capitalPlan/Parameter.vue';
import component_erm_capitalPlan_result from '@/views/capitalPlan/Result.vue'; import component_erm_capitalPlan_result from '@/views/capitalPlan/Result.vue';
import component_erm_capitalPlan_insufficiency from '@/views/capitalPlan/Insufficiency.vue'; import component_erm_capitalPlan_insufficiency from '@/views/capitalPlan/Insufficiency.vue';
@ -67,6 +68,7 @@ const localComponents = {
'component.erm.assessment.selfEvaluation': component_erm_assessment_selfEvaluation, 'component.erm.assessment.selfEvaluation': component_erm_assessment_selfEvaluation,
'component.erm.assessment.reEvaluation': component_erm_assessment_reEvaluation, 'component.erm.assessment.reEvaluation': component_erm_assessment_reEvaluation,
'component.erm.assessment.additional': component_erm_assessment_additional, 'component.erm.assessment.additional': component_erm_assessment_additional,
'component.erm.capitalPlan.strategicTarget': component_erm_capitalPlan_strategicTarget,
'component.erm.capitalPlan.parameter': component_erm_capitalPlan_parameter, 'component.erm.capitalPlan.parameter': component_erm_capitalPlan_parameter,
'component.erm.capitalPlan.result': component_erm_capitalPlan_result, 'component.erm.capitalPlan.result': component_erm_capitalPlan_result,
'component.erm.capitalPlan.insufficiency': component_erm_capitalPlan_insufficiency, 'component.erm.capitalPlan.insufficiency': component_erm_capitalPlan_insufficiency,

9
erm.frontend/src/i18n/messages.json

@ -35,6 +35,7 @@
"menu.erm.assessment.reEvaluation" : "Management Re Evaluation", "menu.erm.assessment.reEvaluation" : "Management Re Evaluation",
"menu.erm.assessment.additional" : "Capital Additional", "menu.erm.assessment.additional" : "Capital Additional",
"menu.erm.capitalPlan" : "Capital Plan", "menu.erm.capitalPlan" : "Capital Plan",
"menu.erm.capitalPlan.strategicTarget" : "Strategic Objectives",
"menu.erm.capitalPlan.parameter" : "Parameter", "menu.erm.capitalPlan.parameter" : "Parameter",
"menu.erm.capitalPlan.result" : "Result", "menu.erm.capitalPlan.result" : "Result",
"menu.erm.capitalPlan.insufficiency" : "Insufficiency", "menu.erm.capitalPlan.insufficiency" : "Insufficiency",
@ -136,5 +137,11 @@
"erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "Minial Value of Supervision", "erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "Minial Value of Supervision",
"erm.appetite.spread.coreIndicator.grid.entity.expectValue": "Expect Value", "erm.appetite.spread.coreIndicator.grid.entity.expectValue": "Expect Value",
"erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "Reference Value", "erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "Reference Value",
"erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "Last Year Value" "erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "Last Year Value",
"erm.capitalPlan.strategicTarget.grid.title": "Strategic Objectives",
"erm.capitalPlan.strategicTarget.grid.entity.t": "T Year",
"erm.capitalPlan.strategicTarget.grid.entity.t1": "T+1 Year",
"erm.capitalPlan.strategicTarget.grid.entity.t2": "T+2 Year",
"erm.capitalPlan.strategicTarget.grid.entity.t3": "T+3 Year",
} }

9
erm.frontend/src/i18n/messages_tw_CN.json

@ -35,6 +35,7 @@
"menu.erm.assessment.reEvaluation" : "管理能力復評估", "menu.erm.assessment.reEvaluation" : "管理能力復評估",
"menu.erm.assessment.additional" : "資本附加結果", "menu.erm.assessment.additional" : "資本附加結果",
"menu.erm.capitalPlan" : "資本規劃", "menu.erm.capitalPlan" : "資本規劃",
"menu.erm.capitalPlan.strategicTarget" : "戰略目標",
"menu.erm.capitalPlan.parameter" : "參數管理", "menu.erm.capitalPlan.parameter" : "參數管理",
"menu.erm.capitalPlan.result" : "規劃結果", "menu.erm.capitalPlan.result" : "規劃結果",
"menu.erm.capitalPlan.insufficiency" : "缺口測算", "menu.erm.capitalPlan.insufficiency" : "缺口測算",
@ -136,5 +137,11 @@
"erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "容忍下限(監管要求)", "erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "容忍下限(監管要求)",
"erm.appetite.spread.coreIndicator.grid.entity.expectValue": "目標值(股東期望)", "erm.appetite.spread.coreIndicator.grid.entity.expectValue": "目標值(股東期望)",
"erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "參考值(定量傳導)", "erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "參考值(定量傳導)",
"erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "上年度指標值" "erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "上年度指標值",
"erm.capitalPlan.strategicTarget.grid.title": "戰略目標",
"erm.capitalPlan.strategicTarget.grid.entity.t": "T 年",
"erm.capitalPlan.strategicTarget.grid.entity.t1": "T+1 年",
"erm.capitalPlan.strategicTarget.grid.entity.t2": "T+2 年",
"erm.capitalPlan.strategicTarget.grid.entity.t3": "T+3 年",
} }

9
erm.frontend/src/i18n/messages_zh_CN.json

@ -35,6 +35,7 @@
"menu.erm.assessment.reEvaluation" : "管理能力复评估", "menu.erm.assessment.reEvaluation" : "管理能力复评估",
"menu.erm.assessment.additional" : "资本附加结果", "menu.erm.assessment.additional" : "资本附加结果",
"menu.erm.capitalPlan" : "资本规划", "menu.erm.capitalPlan" : "资本规划",
"menu.erm.capitalPlan.strategicTarget": "战略目标",
"menu.erm.capitalPlan.parameter" : "参数管理", "menu.erm.capitalPlan.parameter" : "参数管理",
"menu.erm.capitalPlan.result" : "规划结果", "menu.erm.capitalPlan.result" : "规划结果",
"menu.erm.capitalPlan.insufficiency" : "缺口测算", "menu.erm.capitalPlan.insufficiency" : "缺口测算",
@ -136,5 +137,11 @@
"erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "容忍下限(监管要求)", "erm.appetite.spread.coreIndicator.grid.entity.supervisionMinValue": "容忍下限(监管要求)",
"erm.appetite.spread.coreIndicator.grid.entity.expectValue": "目标值(股东期望)", "erm.appetite.spread.coreIndicator.grid.entity.expectValue": "目标值(股东期望)",
"erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "参考值(定量传导)", "erm.appetite.spread.coreIndicator.grid.entity.referenceValue": "参考值(定量传导)",
"erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "上年度指标值" "erm.appetite.spread.coreIndicator.grid.entity.lastYearValue": "上年度指标值",
"erm.capitalPlan.strategicTarget.grid.title": "战略目标",
"erm.capitalPlan.strategicTarget.grid.entity.t": "T 年",
"erm.capitalPlan.strategicTarget.grid.entity.t1": "T+1 年",
"erm.capitalPlan.strategicTarget.grid.entity.t2": "T+2 年",
"erm.capitalPlan.strategicTarget.grid.entity.t3": "T+3 年",
} }

2
erm.frontend/src/menus/menus.json

@ -97,6 +97,8 @@
/*/*/ /*/*/
{"type":"GROUP", "order":600, "parentId":"menu.erm", "id":"menu.erm.capitalPlan", "titleI18nKey":"menu.erm.capitalPlan", "icon":"bi-textarea"}, {"type":"GROUP", "order":600, "parentId":"menu.erm", "id":"menu.erm.capitalPlan", "titleI18nKey":"menu.erm.capitalPlan", "icon":"bi-textarea"},
/*//*/
{"type":"ROUTE", "order":50, "parentId":"menu.erm.capitalPlan", "id":"menu.erm.capitalPlan.strategicTarget", "titleI18nKey":"menu.erm.capitalPlan.strategicTarget", "icon":"bi-gear", "routeName":"route.erm.capitalPlan.strategicTarget"},
/*//*/ /*//*/
{"type":"ROUTE", "order":100, "parentId":"menu.erm.capitalPlan", "id":"menu.erm.capitalPlan.parameter", "titleI18nKey":"menu.erm.capitalPlan.parameter", "icon":"bi-gear", "routeName":"route.erm.capitalPlan.parameter"}, {"type":"ROUTE", "order":100, "parentId":"menu.erm.capitalPlan", "id":"menu.erm.capitalPlan.parameter", "titleI18nKey":"menu.erm.capitalPlan.parameter", "icon":"bi-gear", "routeName":"route.erm.capitalPlan.parameter"},
/*//*/ /*//*/

15
erm.frontend/src/routes/routes.json

@ -404,6 +404,21 @@
] ]
} }
}, },
{
"name": "route.erm.capitalPlan.strategicTarget",
"path": "erm/capitalPlan/strategicTarget",
"parent": "/",
"priority": 0,
"module": "erm.frontend",
"component": "component.erm.capitalPlan.strategicTarget",
"componentPath": "@/views/capitalPlan/StrategicTarget.vue",
"redirect": null,
"meta": {
"permissions": [
"/erm/capitalPlan/**/*"
]
}
},
{ {
"name": "route.erm.capitalPlan.parameter", "name": "route.erm.capitalPlan.parameter",
"path": "erm/capitalPlan/parameter", "path": "erm/capitalPlan/parameter",

79
erm.frontend/src/views/capitalPlan/StrategicTarget.vue

@ -0,0 +1,79 @@
<template>
<div style="height: 100%">
<w-grid
ref="gridRef"
:title="$t('erm.capitalPlan.strategicTarget.grid.title')"
:config-button="true"
selection="multiple"
:checkbox-selection="true"
dense-body
:data-url="Environment.apiContextPath('/api/erm/capitalpan/strategicTarget')"
:pageable="false"
:sort-by="['order']"
:query-form-cols-num="3"
:query-form-fields="[]"
:toolbar-configure="{ noIcon: false }"
:toolbar-actions="['query', 'refresh', 'separator', 'add', 'clone', 'edit', 'remove', 'separator', 'view', 'separator', 'export']"
:columns="[
{ width: 60, name: 'order', label: $t('order') },
{ width: 100, name: 'category', label: $t('category') },
{ width: 150, name: 'code', label: $t('code') },
{ width: '100%', name: 'name', label: $t('name') },
{ width: 130, name: 't', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t'), align: 'right', format: Formater.thousands() },
{ width: 130, name: 't1', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t1'), align: 'right', format: Formater.thousands() },
{ width: 130, name: 't2', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t2'), align: 'right', format: Formater.thousands() },
{ width: 130, name: 't3', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t3'), align: 'right', format: Formater.thousands() },
{ width: 100, name: 'lastModifier', label: $t('lastModifier') },
{ width: 110, name: 'lastModifyDate', label: $t('lastModifyDate'), format: Formater.dateOnly() },
]"
:editor="{
dialog: {
width: '600px',
},
form: {
colsNum: 1,
fields: [
{ name: 'order', label: $t('order'), type: 'number' },
{ name: 'category', label: $t('category'), type: 'text' },
{ name: 'code', label: $t('code'), type: 'text', required: true },
{ name: 'name', label: $t('name'), type: 'text', required: true },
{ name: 't', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t'), type: 'number', precision: 3 },
{ name: 't1', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t1'), type: 'number', precision: 3 },
{ name: 't2', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t2'), type: 'number', precision: 3 },
{ name: 't3', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t3'), type: 'number', precision: 3 },
],
},
}"
:viewer="{
panel: {
columnNum: 1,
fields: [
{ name: 'id', label: $t('id') },
{ name: 'code', label: $t('code') },
{ name: 'name', label: $t('name') },
{ name: 'category', label: $t('category') },
{ name: 't', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t'), format: Formater.thousands() },
{ name: 't1', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t1'), format: Formater.thousands() },
{ name: 't2', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t2'), format: Formater.thousands() },
{ name: 't3', label: $t('erm.capitalPlan.strategicTarget.grid.entity.t3'), format: Formater.thousands() },
{ name: 'dataComeFrom', label: $t('dataComeFrom') },
{ name: 'creator', label: $t('creator') },
{ name: 'createDate', label: $t('createDate') },
{ name: 'lastModifier', label: $t('lastModifier') },
{ name: 'lastModifyDate', label: $t('lastModifyDate'), format: Formater.none() },
{ name: 'corporationCode', label: $t('corporationCode') },
],
},
}"
@row-click="(evt, row, index) => {}"
@before-request-data="() => {}"
>
</w-grid>
</div>
</template>
<script setup lang="ts">
import { ref } from 'vue';
import { Environment, Formater } from 'platform-core';
const gridRef = ref();
</script>

2
erm.frontend/src/views/kpi/Indicator.vue

@ -32,7 +32,7 @@
label: $t('erm.kpi.indicator.grid.entity.category'), label: $t('erm.kpi.indicator.grid.entity.category'),
type: 'select', type: 'select',
clearable: true, clearable: true,
options: Options.dictionary(INDICATOR_CATEGORY), options: Options.dictionary(DICTIONARY_MAP.INDICATOR_CATEGORY),
queryOperator: 'equals', queryOperator: 'equals',
}, },
{ {

15
erm/src/main/java/erm/capitalplan/controller/StrategicTargetWebController.java

@ -0,0 +1,15 @@
package erm.capitalplan.controller;
import erm.capitalplan.api.StrategicTargetVo;
import erm.capitalplan.jpa.entity.StrategicTargetEntity;
import erm.capitalplan.jpa.entity.repository.StrategicTargetRepository;
import erm.capitalplan.service.StrategicTargetService;
import io.sc.platform.mvc.controller.support.RestCrudController;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController("erm.capitalplan.controller.StrategicTargetWebController")
@RequestMapping("/api/erm/capitalpan/strategicTarget")
public class StrategicTargetWebController extends RestCrudController<StrategicTargetVo, StrategicTargetEntity,String, StrategicTargetRepository, StrategicTargetService> {
}

148
erm/src/main/java/erm/capitalplan/jpa/entity/StrategicTargetEntity.java

@ -0,0 +1,148 @@
package erm.capitalplan.jpa.entity;
import erm.appetite.api.CrossValidateVo;
import erm.capitalplan.api.StrategicTargetVo;
import io.sc.platform.orm.entity.CorporationAuditorEntity;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import javax.validation.constraints.Size;
@Entity
@Table(name="RP_CP_STRATEGIC_TARGET")
public class StrategicTargetEntity extends CorporationAuditorEntity<StrategicTargetVo> {
//ID,主键
@Id
@GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "uuid2")
@Column(name="ID_", length=36)
@Size(max=36)
private String id;
//代码
@Column(name="CODE_",nullable=false,length=255)
@Size(max=255)
private String code;
//名称
@Column(name="NAME_",nullable=false, length=255)
@Size(min=1,max=255)
private String name;
//分类
@Column(name="CATEGORY_",length=255)
@Size(max=255)
private String category;
@Column(name="ORDER_")
private Integer order;
//T年
@Column(name="T_")
private Double t;
//T+1年
@Column(name="T1_")
private Double t1;
//T+2年
@Column(name="T2_")
private Double t2;
//T+3年
@Column(name="T3_")
private Double t3;
@Override
public StrategicTargetVo toVo() {
StrategicTargetVo vo =new StrategicTargetVo();
super.toVo(vo);
vo.setId(this.getId());
vo.setCode(this.getCode());
vo.setName(this.getName());
vo.setCategory(this.getCategory());
vo.setOrder(this.getOrder());
vo.setT(this.getT());
vo.setT1(this.getT1());
vo.setT2(this.getT2());
vo.setT3(this.getT3());
return vo;
}
public StrategicTargetEntity(){}
public StrategicTargetEntity(String id){
this.id =id;
}
public @Size(max = 36) String getId() {
return id;
}
public void setId(@Size(max = 36) String id) {
this.id = id;
}
public @Size(max = 255) String getCode() {
return code;
}
public void setCode(@Size(max = 255) String code) {
this.code = code;
}
public @Size(min = 1, max = 255) String getName() {
return name;
}
public void setName(@Size(min = 1, max = 255) String name) {
this.name = name;
}
public @Size(max = 255) String getCategory() {
return category;
}
public void setCategory(@Size(max = 255) String category) {
this.category = category;
}
public Integer getOrder() {
return order;
}
public void setOrder(Integer order) {
this.order = order;
}
public Double getT() {
return t;
}
public void setT(Double t) {
this.t = t;
}
public Double getT1() {
return t1;
}
public void setT1(Double t1) {
this.t1 = t1;
}
public Double getT2() {
return t2;
}
public void setT2(Double t2) {
this.t2 = t2;
}
public Double getT3() {
return t3;
}
public void setT3(Double t3) {
this.t3 = t3;
}
}

11
erm/src/main/java/erm/capitalplan/jpa/entity/repository/StrategicTargetRepository.java

@ -0,0 +1,11 @@
package erm.capitalplan.jpa.entity.repository;
import erm.appetite.jpa.entity.CrossValidateEntity;
import erm.capitalplan.jpa.entity.StrategicTargetEntity;
import io.sc.platform.orm.repository.DaoRepository;
import org.springframework.stereotype.Repository;
@Repository("erm.capitalplan.jpa.entity.repository.StrategicTargetRepository")
public interface StrategicTargetRepository extends DaoRepository<StrategicTargetEntity,String> {
}

10
erm/src/main/java/erm/capitalplan/service/StrategicTargetService.java

@ -0,0 +1,10 @@
package erm.capitalplan.service;
import erm.appetite.jpa.entity.CrossValidateEntity;
import erm.appetite.jpa.repository.CrossValidateRepository;
import erm.capitalplan.jpa.entity.StrategicTargetEntity;
import erm.capitalplan.jpa.entity.repository.StrategicTargetRepository;
import io.sc.platform.orm.service.DaoService;
public interface StrategicTargetService extends DaoService<StrategicTargetEntity, String, StrategicTargetRepository> {
}

12
erm/src/main/java/erm/capitalplan/service/impl/StrategicTargetServiceImpl.java

@ -0,0 +1,12 @@
package erm.capitalplan.service.impl;
import erm.capitalplan.jpa.entity.StrategicTargetEntity;
import erm.capitalplan.jpa.entity.repository.StrategicTargetRepository;
import erm.capitalplan.service.StrategicTargetService;
import io.sc.platform.orm.service.impl.DaoServiceImpl;
import org.springframework.stereotype.Service;
@Service("erm.capitalplan.service.impl.StrategicTargetServiceImpl")
public class StrategicTargetServiceImpl extends DaoServiceImpl<StrategicTargetEntity, String, StrategicTargetRepository> implements StrategicTargetService {
}

5
erm/src/main/resources/META-INF/platform/plugins/components.json

@ -13,7 +13,10 @@
"erm.kpi.service.impl", "erm.kpi.service.impl",
"erm.appetite.controller", "erm.appetite.controller",
"erm.appetite.service.impl" "erm.appetite.service.impl",
"erm.capitalplan.controller",
"erm.capitalplan.service.impl"
], ],
"excludes":[] "excludes":[]
} }

5
erm/src/main/resources/META-INF/platform/plugins/liquibase.json

@ -20,7 +20,10 @@
"liquibase/kpi/erm.kpi_1.0.0_20221020__ERM KPI Database Data.xml", "liquibase/kpi/erm.kpi_1.0.0_20221020__ERM KPI Database Data.xml",
"liquibase/appetite/erm.appetite_1.0.0_20221020__ERM Appetite Database Schema DDL.xml", "liquibase/appetite/erm.appetite_1.0.0_20221020__ERM Appetite Database Schema DDL.xml",
"liquibase/appetite/erm.appetite_1.0.0_20221020__ERM Appetite Database Data.xml" "liquibase/appetite/erm.appetite_1.0.0_20221020__ERM Appetite Database Data.xml",
"liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Schema DDL.xml",
"liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Database Data.xml"
] ]
} }
] ]

5
erm/src/main/resources/META-INF/platform/plugins/repositories.json

@ -13,7 +13,10 @@
"erm.kpi.jpa.repository", "erm.kpi.jpa.repository",
"erm.appetite.jpa.entity", "erm.appetite.jpa.entity",
"erm.appetite.jpa.repository" "erm.appetite.jpa.repository",
"erm.capitalplan.jpa.entity",
"erm.capitalplan.jpa.repository"
], ],
"excludes":[] "excludes":[]
} }

23
erm/src/main/resources/erm/liquibase/data/rp_cp_strategic_target.csv

@ -0,0 +1,23 @@
"RP_CP_STRATEGIC_TARGET",,,,,,,,,,,,,,,
"ID_","CODE_","NAME_","CATEGORY_","ORDER_","T_","T1_","T2_","T3_","JPA_VERSION_","DATA_COME_FROM_","CREATOR_","CREATE_DATE_","LAST_MODIFIER_","LAST_MODIFYDATE_","CORP_CODE_"
"ID","指标代码","指标名称","指标分类","指标排序","指标T年值","指标T+1年值","指标T+2年值","指标T+3年值","JPA乐观锁版本","数据来源(INPUT:手工录入,IMPORT:系统自动导入)","创建人","创建日期","最后修改人","最后修改日期","所属法人代码"
"VARCHAR","VARCHAR","VARCHAR","VARCHAR","INTEGER","DECIMAL","DECIMAL","DECIMAL","DECIMAL","INTEGER","VARCHAR","VARCHAR","TIMESTAMP","VARCHAR","TIMESTAMP","VARCHAR"
"java.lang.String","java.lang.String","java.lang.String","java.lang.String","java.lang.Integer","java.math.BigDecimal","java.math.BigDecimal","java.math.BigDecimal","java.math.BigDecimal","java.lang.Integer","java.lang.String","java.lang.String","java.sql.Timestamp","java.lang.String","java.sql.Timestamp","java.lang.String"
"238bd862-b2d9-4904-bf61-d95ad2c4b459","ROA","资产收益率","经营管理","8","0.050000","0.050000","0.050000","0.050000",,"INPUT","admin","2024-06-07 12:14:39.0","admin","2024-06-07 13:51:28.0","_PRIMARY_"
"4079f3cd-76bb-4b23-97a5-681eac6ae9d4","ITR","所得税税率","经营管理","15","0.250000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:22:49.0","admin","2024-06-07 13:57:02.0","_PRIMARY_"
"456e09b8-a176-474b-afa5-3356f82b250c","CIR","成本收入比","经营管理","9","0.400000","0.390000","0.380000","0.370000",,"INPUT","admin","2024-06-07 12:15:19.0","admin","2024-06-07 13:52:13.0","_PRIMARY_"
"4b4a5075-8aff-447d-8419-3f006e325d8c","BM","业务及管理费","经营管理","14","2000000000.000000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:21:18.0","admin","2024-06-07 13:55:57.0","_PRIMARY_"
"4cfaa729-880f-408e-a94d-2bc135e5f88f","CORE_1_CAP_RATIO","一级核心资本充足率","监管合规","3","0.080000","0.080000","0.080000","0.080000",,"INPUT","admin","2024-06-07 11:50:33.0","admin","2024-06-07 13:46:34.0","_PRIMARY_"
"5b3556ec-0428-4dc9-a830-8689796dd5b8","ARN","实际拨备余额","经营管理","13","4000000000.000000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:20:49.0","admin","2024-06-07 13:55:44.0","_PRIMARY_"
"6f979bea-bb5f-43f7-bce2-ee4334c5f77c","NOI","营业净收入","经营管理","17","6000000000.000000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:23:57.0","admin","2024-06-07 13:57:55.0","_PRIMARY_"
"75a9f87f-5763-45ef-8901-2de91170b7df","ROE","净资产收益率","经营管理","16","0.090000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:23:10.0","admin","2024-06-07 13:57:31.0","_PRIMARY_"
"7e6a1712-3626-437d-83e4-e98f750c9936","TOTAL_LOANS","资产总额","业务规模","2","50000000000.000000","60000000000.000000","70000000000.000000","80000000000.000000",,"INPUT","admin","2024-06-07 11:37:32.0","admin","2024-06-07 12:07:48.0","_PRIMARY_"
"7fedd979-50dc-4b91-ba8a-ae04744bcff3","TP","税金预测","经营管理","11","0.000000","100000000.000000","200000000.000000","300000000.000000",,"INPUT","admin","2024-06-07 12:18:27.0","admin","2024-06-07 13:53:24.0","_PRIMARY_"
"aec9b6cf-cf22-480e-b5d5-75819847f136","PCR","拨备覆盖率","风险管理","7","2.000000","2.000000","2.000000","2.000000",,"INPUT","admin","2024-06-07 12:13:25.0","admin","2024-06-07 12:13:33.0","_PRIMARY_"
"b5117a57-4af0-4293-807c-38600c8b9690","CAP_RATIO","资本充足率","监管合规","5","0.100000","0.105000","0.110000","0.115000",,"INPUT","admin","2024-06-07 11:57:47.0","admin","2024-06-07 13:47:34.0","_PRIMARY_"
"c408da96-b191-4f51-8fec-b5d3e2764548","1_CAP_RATIO","一级资本充足率","监管合规","4","0.080000","0.080000","0.080000","0.080000",,"INPUT","admin","2024-06-07 11:53:44.0","admin","2024-06-07 13:46:47.0","_PRIMARY_"
"c7f3a151-62eb-40ba-9027-2acd3d4c9b50","NPL","不良贷款率","风险管理","6","0.020000","0.020000","0.020000","0.020000",,"INPUT","admin","2024-06-07 12:12:15.0","admin","2024-06-07 13:50:26.0","_PRIMARY_"
"dcd8fdff-6dfb-4184-a5c7-5f7bfa25ba0b","AR","计提拨备","经营管理","12","1100000000.000000","1200000000.000000","1300000000.000000","1400000000.000000",,"INPUT","admin","2024-06-07 12:19:42.0","admin","2024-06-07 13:54:23.0","_PRIMARY_"
"dd4a2cb8-7ac2-406f-96d7-25afb8f36fd6","DPR","股利支付率","经营管理","10","0.000000","0.300000","0.300000","0.300000",,"INPUT","admin","2024-06-07 12:16:35.0","admin","2024-06-07 13:52:40.0","_PRIMARY_"
"e985a261-affb-4065-ad2c-917b23473543","NP","净利润","经营管理","14","1500000000.000000","0.000000","0.000000","0.000000",,"INPUT","admin","2024-06-07 12:22:00.0","admin","2024-06-07 13:56:26.0","_PRIMARY_"
"f0e0a744-cafa-4482-a845-7a19aee866ff","TOTAL_ASSETS","资产总额","业务规模","1","100000000000.000000","110000000000.000000","120000000000.000000","130000000000.000000",,"INPUT","admin","2024-06-07 11:18:03.0","admin","2024-06-07 12:07:36.0","_PRIMARY_"
1 RP_CP_STRATEGIC_TARGET
2 ID_ CODE_ NAME_ CATEGORY_ ORDER_ T_ T1_ T2_ T3_ JPA_VERSION_ DATA_COME_FROM_ CREATOR_ CREATE_DATE_ LAST_MODIFIER_ LAST_MODIFYDATE_ CORP_CODE_
3 ID 指标代码 指标名称 指标分类 指标排序 指标T年值 指标T+1年值 指标T+2年值 指标T+3年值 JPA乐观锁版本 数据来源(INPUT:手工录入,IMPORT:系统自动导入) 创建人 创建日期 最后修改人 最后修改日期 所属法人代码
4 VARCHAR VARCHAR VARCHAR VARCHAR INTEGER DECIMAL DECIMAL DECIMAL DECIMAL INTEGER VARCHAR VARCHAR TIMESTAMP VARCHAR TIMESTAMP VARCHAR
5 java.lang.String java.lang.String java.lang.String java.lang.String java.lang.Integer java.math.BigDecimal java.math.BigDecimal java.math.BigDecimal java.math.BigDecimal java.lang.Integer java.lang.String java.lang.String java.sql.Timestamp java.lang.String java.sql.Timestamp java.lang.String
6 238bd862-b2d9-4904-bf61-d95ad2c4b459 ROA 资产收益率 经营管理 8 0.050000 0.050000 0.050000 0.050000 INPUT admin 2024-06-07 12:14:39.0 admin 2024-06-07 13:51:28.0 _PRIMARY_
7 4079f3cd-76bb-4b23-97a5-681eac6ae9d4 ITR 所得税税率 经营管理 15 0.250000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:22:49.0 admin 2024-06-07 13:57:02.0 _PRIMARY_
8 456e09b8-a176-474b-afa5-3356f82b250c CIR 成本收入比 经营管理 9 0.400000 0.390000 0.380000 0.370000 INPUT admin 2024-06-07 12:15:19.0 admin 2024-06-07 13:52:13.0 _PRIMARY_
9 4b4a5075-8aff-447d-8419-3f006e325d8c BM 业务及管理费 经营管理 14 2000000000.000000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:21:18.0 admin 2024-06-07 13:55:57.0 _PRIMARY_
10 4cfaa729-880f-408e-a94d-2bc135e5f88f CORE_1_CAP_RATIO 一级核心资本充足率 监管合规 3 0.080000 0.080000 0.080000 0.080000 INPUT admin 2024-06-07 11:50:33.0 admin 2024-06-07 13:46:34.0 _PRIMARY_
11 5b3556ec-0428-4dc9-a830-8689796dd5b8 ARN 实际拨备余额 经营管理 13 4000000000.000000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:20:49.0 admin 2024-06-07 13:55:44.0 _PRIMARY_
12 6f979bea-bb5f-43f7-bce2-ee4334c5f77c NOI 营业净收入 经营管理 17 6000000000.000000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:23:57.0 admin 2024-06-07 13:57:55.0 _PRIMARY_
13 75a9f87f-5763-45ef-8901-2de91170b7df ROE 净资产收益率 经营管理 16 0.090000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:23:10.0 admin 2024-06-07 13:57:31.0 _PRIMARY_
14 7e6a1712-3626-437d-83e4-e98f750c9936 TOTAL_LOANS 资产总额 业务规模 2 50000000000.000000 60000000000.000000 70000000000.000000 80000000000.000000 INPUT admin 2024-06-07 11:37:32.0 admin 2024-06-07 12:07:48.0 _PRIMARY_
15 7fedd979-50dc-4b91-ba8a-ae04744bcff3 TP 税金预测 经营管理 11 0.000000 100000000.000000 200000000.000000 300000000.000000 INPUT admin 2024-06-07 12:18:27.0 admin 2024-06-07 13:53:24.0 _PRIMARY_
16 aec9b6cf-cf22-480e-b5d5-75819847f136 PCR 拨备覆盖率 风险管理 7 2.000000 2.000000 2.000000 2.000000 INPUT admin 2024-06-07 12:13:25.0 admin 2024-06-07 12:13:33.0 _PRIMARY_
17 b5117a57-4af0-4293-807c-38600c8b9690 CAP_RATIO 资本充足率 监管合规 5 0.100000 0.105000 0.110000 0.115000 INPUT admin 2024-06-07 11:57:47.0 admin 2024-06-07 13:47:34.0 _PRIMARY_
18 c408da96-b191-4f51-8fec-b5d3e2764548 1_CAP_RATIO 一级资本充足率 监管合规 4 0.080000 0.080000 0.080000 0.080000 INPUT admin 2024-06-07 11:53:44.0 admin 2024-06-07 13:46:47.0 _PRIMARY_
19 c7f3a151-62eb-40ba-9027-2acd3d4c9b50 NPL 不良贷款率 风险管理 6 0.020000 0.020000 0.020000 0.020000 INPUT admin 2024-06-07 12:12:15.0 admin 2024-06-07 13:50:26.0 _PRIMARY_
20 dcd8fdff-6dfb-4184-a5c7-5f7bfa25ba0b AR 计提拨备 经营管理 12 1100000000.000000 1200000000.000000 1300000000.000000 1400000000.000000 INPUT admin 2024-06-07 12:19:42.0 admin 2024-06-07 13:54:23.0 _PRIMARY_
21 dd4a2cb8-7ac2-406f-96d7-25afb8f36fd6 DPR 股利支付率 经营管理 10 0.000000 0.300000 0.300000 0.300000 INPUT admin 2024-06-07 12:16:35.0 admin 2024-06-07 13:52:40.0 _PRIMARY_
22 e985a261-affb-4065-ad2c-917b23473543 NP 净利润 经营管理 14 1500000000.000000 0.000000 0.000000 0.000000 INPUT admin 2024-06-07 12:22:00.0 admin 2024-06-07 13:56:26.0 _PRIMARY_
23 f0e0a744-cafa-4482-a845-7a19aee866ff TOTAL_ASSETS 资产总额 业务规模 1 100000000000.000000 110000000000.000000 120000000000.000000 130000000000.000000 INPUT admin 2024-06-07 11:18:03.0 admin 2024-06-07 12:07:36.0 _PRIMARY_

19
erm/src/main/resources/liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Database Data.xml

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xsi:schemaLocation="
http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.1.xsd
http://www.liquibase.org/xml/ns/dbchangelog-ext
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
"
>
<changeSet id="erm.capitalpan_1.0.0_20221020__ERM Capital Plan Database Data" author="platform">
<!-- 资本规划战略目标表 -->
<customChange class="io.sc.platform.jdbc.liquibase.task.CsvImportTaskChange">
<param name="dataFile" value="classpath:/erm/liquibase/data/rp_cp_strategic_target.csv"/>
</customChange>
</changeSet>
</databaseChangeLog>

44
erm/src/main/resources/liquibase/capitalplan/erm.capitalpan_1.0.0_20221020__ERM Capital Plan Schema DDL.xml

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xsi:schemaLocation="
http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.1.xsd
http://www.liquibase.org/xml/ns/dbchangelog-ext
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
"
>
<changeSet id="erm.kpi_1.0.0_20221020__ERM KPI Database Schema DDL" author="platform">
<!-- 资本规划战略目标表 -->
<createTable tableName="RP_CP_STRATEGIC_TARGET" remarks="资本规划战略目标表">
<column name="ID_" type="NVARCHAR(36)" remarks="ID">
<constraints primaryKey="true"/>
</column>
<column name="CODE_" type="NVARCHAR(255)" remarks="指标代码"/>
<column name="NAME_" type="NVARCHAR(255)" remarks="指标名称"/>
<column name="CATEGORY_" type="NVARCHAR(255)" remarks="指标分类"/>
<column name="ORDER_" type="INTEGER" remarks="指标排序"/>
<column name="T_" type="NUMERIC(22,6)" remarks="指标T年值"/>
<column name="T1_" type="NUMERIC(22,6)" remarks="指标T+1年值"/>
<column name="T2_" type="NUMERIC(22,6)" remarks="指标T+2年值"/>
<column name="T3_" type="NUMERIC(22,6)" remarks="指标T+3年值"/>
<column name="JPA_VERSION_" type="INTEGER" remarks="JPA乐观锁版本"/>
<column name="DATA_COME_FROM_" type="NVARCHAR(10)" remarks="数据来源(INPUT:手工录入,IMPORT:系统自动导入)"/>
<column name="CREATOR_" type="NVARCHAR(255)" remarks="创建人"/>
<column name="CREATE_DATE_" type="DATETIME" remarks="创建日期"/>
<column name="LAST_MODIFIER_" type="NVARCHAR(255)" remarks="最后修改人"/>
<column name="LAST_MODIFYDATE_" type="DATETIME" remarks="最后修改日期"/>
<column name="CORP_CODE_" type="NVARCHAR(255)" remarks="所属法人代码"/>
</createTable>
<addUniqueConstraint tableName="RP_INDICATOR" columnNames="CODE_,CORP_CODE_"></addUniqueConstraint>
<addNotNullConstraint columnName="CODE_" columnDataType="NVARCHAR(255)" tableName="RP_INDICATOR" constraintName="CONST_RP_INDICATOR_CODE"/>
<addNotNullConstraint columnName="DATA_COME_FROM_" columnDataType="NVARCHAR(10)" tableName="RP_INDICATOR" constraintName="CONST_RP_INDICATOR_DCF"/>
<addNotNullConstraint columnName="CORP_CODE_" columnDataType="NVARCHAR(255)" tableName="RP_INDICATOR" constraintName="CONST_RP_INDICATOR_CORP"/>
<addDefaultValue columnName="DATA_COME_FROM_" columnDataType="NVARCHAR(10)" tableName="RP_INDICATOR" defaultValue="INPUT"/>
<addDefaultValue columnName="CORP_CODE_" columnDataType="NVARCHAR(255)" tableName="RP_INDICATOR" defaultValue="_PRIMARY_"/>
</changeSet>
</databaseChangeLog>

2
gradle.properties

@ -38,7 +38,7 @@ application_version=1.0.0
platform_group=io.sc platform_group=io.sc
platform_version=8.1.43 platform_version=8.1.43
platform_plugin_version=8.1.13 platform_plugin_version=8.1.13
platform_core_frontend_version=8.1.219 platform_core_frontend_version=8.1.227
########################################################### ###########################################################
# dependencies version # dependencies version

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

4
io.sc.platform.core.frontend/src/platform/components/grid/TreeGridRow.vue

@ -16,7 +16,7 @@
> >
<div ref="tdDivRef" class="flex flex-nowrap items-center h-full w-full" style="flex-wrap: nowrap"> <div ref="tdDivRef" class="flex flex-nowrap items-center h-full w-full" style="flex-wrap: nowrap">
<!--层级占位符--> <!--层级占位符-->
<span :style="`width:${27 * props.level}px;`"></span> <span :style="`width:${24 * props.level}px;`"></span>
<!--展开按钮--> <!--展开按钮-->
<q-btn <q-btn
v-if="row.children && row.children.length > 0" v-if="row.children && row.children.length > 0"
@ -28,7 +28,7 @@
@dblclick.stop="() => {}" @dblclick.stop="() => {}"
/> />
<!--展开按钮占位符--> <!--展开按钮占位符-->
<span v-else style="width: 27px"></span> <span v-else style="width: 24px"></span>
<!--选择框--> <!--选择框-->
<q-checkbox <q-checkbox
v-if="table.checkboxSelection" v-if="table.checkboxSelection"

6
io.sc.platform.core.frontend/src/platform/components/grid/WGrid.vue

@ -2634,6 +2634,9 @@ VueTools.expose2Instance(instance);
border-top-width: 0px; border-top-width: 0px;
border-bottom-width: 1px; border-bottom-width: 1px;
} }
.w-grid .q-table__middle .q-table th:last-child {
border-right-width: 0px;
}
.w-grid .q-table__middle .q-table td { .w-grid .q-table__middle .q-table td {
height: var(--tableBodyHeight); height: var(--tableBodyHeight);
padding: var(--tableBodyPadding) 8px; padding: var(--tableBodyPadding) 8px;
@ -2642,6 +2645,9 @@ VueTools.expose2Instance(instance);
border-top-width: 0px; border-top-width: 0px;
border-bottom-width: 1px; border-bottom-width: 1px;
} }
.w-grid .q-table__middle .q-table td:last-child {
border-right-width: 0px;
}
.w-grid .q-table__bottom { .w-grid .q-table__bottom {
min-height: var(--tableBottomHeight); min-height: var(--tableBottomHeight);
border-color: rgba(0, 0, 0, 0.12); border-color: rgba(0, 0, 0, 0.12);

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

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

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

36
io.sc.platform.installer/src/main/resources/templates/io/sc/platform/installer/installer.html

@ -14,6 +14,42 @@
background-color: #EEE; background-color: #EEE;
background-size: 100% 100%; background-size: 100% 100%;
} }
.text-primary {
color: #14234a !important;
}
.bg-primary {
background-color: #14234a !important;
}
.nav-pills .nav-link.active {
background-color: #14234a;
}
.btn-primary {
background-color: #14234a;
border-color: #14234a;
}
.form-check-input:checked {
background-color: #14234a;
border-color: #14234a;
}
.btn-outline-primary {
--bs-btn-color: #14234a;
--bs-btn-border-color: #14234a;
--bs-btn-hover-color: #fff;
--bs-btn-hover-bg: #14234a;
--bs-btn-hover-border-color: #14234a;
--bs-btn-focus-shadow-rgb: 13, 110, 253;
--bs-btn-active-color: #fff;
--bs-btn-active-bg: #14234a;
--bs-btn-active-border-color: #14234a;
--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
--bs-btn-disabled-color: #14234a;
--bs-btn-disabled-bg: transparent;
--bs-btn-disabled-border-color: #14234a;
--bs-gradient: none;
}
.progress-bar {
background-color: #14234a;
}
</style> </style>
<script type="text/javascript" th:src="@{/bootstrap/js/bootstrap.bundle.min.js}"></script> <script type="text/javascript" th:src="@{/bootstrap/js/bootstrap.bundle.min.js}"></script>
<script type="text/javascript" th:src="@{/axios/js/axios.min.js}"></script> <script type="text/javascript" th:src="@{/axios/js/axios.min.js}"></script>

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.221", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

2
io.sc.platform.lcdp/src/main/java/io/sc/platform/lcdp/configure/api/Sider.java

@ -2,7 +2,7 @@ package io.sc.platform.lcdp.configure.api;
public class Sider { public class Sider {
private String position ="left"; // 位置(可选值:left;right) private String position ="left"; // 位置(可选值:left;right)
private boolean isSiderExpaned; // 边栏状态(是否展开) private boolean isSiderExpaned=true; // 边栏状态(是否展开)
private boolean dense =true; // 是否采用紧凑模式 private boolean dense =true; // 是否采用紧凑模式
private boolean border =true; // 是否显示边框 private boolean border =true; // 是否显示边框

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

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

@ -93,7 +93,7 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.14.5", "quasar": "2.14.5",
"tailwindcss": "3.4.0", "tailwindcss": "3.4.0",
"vue": "3.4.3", "vue": "3.4.3",

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.225", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }

5
io.sc.platform.system.frontend/src/views/announcement/AnnouncementManager.vue

@ -6,10 +6,7 @@
selection="multiple" selection="multiple"
:checkbox-selection="true" :checkbox-selection="true"
:data-url="Environment.apiContextPath('/api/system/announcement')" :data-url="Environment.apiContextPath('/api/system/announcement')"
:pagination="{ :sort-by="['-lastModifyDate']"
sortBy: 'lastModifyDate',
descending: true,
}"
:query-form-cols-num="2" :query-form-cols-num="2"
:query-form-fields="[{ name: 'title', label: $t('title'), type: 'text' }]" :query-form-fields="[{ name: 'title', label: $t('title'), type: 'text' }]"
:toolbar-configure="{ noIcon: false }" :toolbar-configure="{ noIcon: false }"

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

@ -31,7 +31,6 @@
:editor="{ :editor="{
dialog: { dialog: {
width: '600px', width: '600px',
height: '300px',
}, },
form: { form: {
colsNum: 1, colsNum: 1,

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

@ -92,12 +92,23 @@
"luckyexcel": "1.0.1", "luckyexcel": "1.0.1",
"mockjs": "1.1.0", "mockjs": "1.1.0",
"pinia": "2.1.7", "pinia": "2.1.7",
"platform-core": "8.1.219", "platform-core": "8.1.227",
"quasar": "2.15.3", "quasar": "2.15.3",
"tailwindcss": "3.4.3", "tailwindcss": "3.4.3",
"vue": "3.4.24", "vue": "3.4.24",
"vue-dompurify-html": "5.0.1", "vue-dompurify-html": "5.0.1",
"vue-i18n": "9.13.1", "vue-i18n": "9.13.1",
"vue-router": "4.3.2" "vue-router": "4.3.2",
"@univerjs/core": "0.1.13",
"@univerjs/design": "0.1.13",
"@univerjs/docs": "0.1.13",
"@univerjs/docs-ui": "0.1.13",
"@univerjs/engine-formula": "0.1.13",
"@univerjs/engine-render": "0.1.13",
"@univerjs/facade": "0.1.13",
"@univerjs/sheets": "0.1.13",
"@univerjs/sheets-formula": "0.1.13",
"@univerjs/sheets-ui": "0.1.13",
"@univerjs/ui": "0.1.13"
} }
} }
Loading…
Cancel
Save