From 74cac758319c66a5544a022362c0c61165138407 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 26 七月 2023 15:03:30 +0800
Subject: [PATCH] Merge branch 'master' of http://dev.vci-tech.com:1065/r/ubcs
---
Source/UBCS-WEB/src/components/template/FlowPath.vue | 156 +++---
Source/UBCS-WEB/src/components/template/Stage.vue | 20
Source/UBCS-WEB/src/api/system/statistic.js | 11
Source/UBCS-WEB/src/components/basic-container/main.vue | 6
Source/UBCS-WEB/src/views/wel/Statistic.vue | 150 ++++++
Source/UBCS-WEB/src/api/system/user.js | 15
Source/UBCS-WEB/src/views/wel/index.vue | 796 ++++++-----------------------------
Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue | 115 ++++
Source/UBCS-WEB/src/components/Tree/TemplatePro.vue | 8
Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 28
10 files changed, 547 insertions(+), 758 deletions(-)
diff --git a/Source/UBCS-WEB/src/api/system/statistic.js b/Source/UBCS-WEB/src/api/system/statistic.js
new file mode 100644
index 0000000..fc60966
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/system/statistic.js
@@ -0,0 +1,11 @@
+import request from '@/router/axios';
+
+export const getList = (url, params) => {
+ return request({
+ url: url,
+ method: 'get',
+ params: {
+ ...params
+ }
+ })
+}
diff --git a/Source/UBCS-WEB/src/api/system/user.js b/Source/UBCS-WEB/src/api/system/user.js
index 855786d..f0e5d18 100644
--- a/Source/UBCS-WEB/src/api/system/user.js
+++ b/Source/UBCS-WEB/src/api/system/user.js
@@ -158,4 +158,17 @@
roleName
}
})
-}
\ No newline at end of file
+}
+
+// 棣栭〉浠e姙娴佺▼浠诲姟鏌ヨ
+export const getUndoTaskList =(current, size, params) => {
+ return request({
+ url: '/api/ubcs-flow/work/send-list',
+ method: 'get',
+ params:{
+ ...params,
+ current,
+ size
+ }
+ })
+}
diff --git a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
index 87b0057..d04c8ff 100644
--- a/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
+++ b/Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -261,9 +261,13 @@
created() {
},
mounted() {
+
},
activated() {
// this.doLayout();
+ this.$nextTick(() => {
+ this.$refs.dataTable.doLayout()
+ })
},
watch: {
tableHeadDataFateher: {
@@ -302,8 +306,6 @@
}
})
this.tableHeadFindDatas = newval;
- console.log('newval',newval)
- console.log('newval',this.tableHeadFindData)
},
},
total: {
@@ -340,7 +342,6 @@
}
},
openVis(visible) {
- console.log(visible)
this[visible] = true
},
handelBtnClick(event) {
@@ -439,16 +440,16 @@
if (this.selectRow.length <= 0) {
this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else {
- let hasEditing = this.selectRow.some(item => item.lcstatus == 'Released');
+ let hasEditing = this.selectRow.every(item => item.lcstatus == 'Released');
let showMessage = true;
this.selectRow.forEach(item => {
if (this.selectRow.length === 1 && item.lcstatus === "Disabled" && showMessage) {
this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
showMessage = false;
- } else if (this.selectRow.length >1 && !hasEditing && showMessage) {
+ } else if (this.selectRow.length >=1 && !hasEditing && showMessage) {
this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬彂甯冪姸鎬併�戞墠鍙互鍙戣捣娴佺▼');
showMessage = false;
- } else if (this.selectRow.length >= 1 && hasEditing && showMessage) {
+ } else if (this.selectRow.length > 1 && hasEditing && showMessage) {
processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
if (res.data.records != [] && res.data.code != 200) {
this.userName = localStorage.getItem("username");
@@ -494,7 +495,53 @@
if (this.selectRow.length <= 0) {
this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else {
-
+ let hasEditing = this.selectRow.every(item => item.lcstatus == 'Disabled');
+ console.log('hasEditing',hasEditing)
+ let showMessage = true;
+ this.selectRow.forEach(item => {
+ if (this.selectRow.length === 1 && item.lcstatus !== "Disabled" && showMessage) {
+ this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
+ showMessage = false;
+ } else if (this.selectRow.length >=1 && hasEditing && showMessage) {
+ processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
+ if (res.data.records != [] && res.data.code != 200) {
+ this.userName = localStorage.getItem("username");
+ this.parameter.template = this.userName + "鍚敤" + "[鐗╁搧]";
+ this.parameter.type = 'Released'
+ this.title = '鍚敤缂栫爜鏁版嵁'
+ this.visibleDeactivate = true;
+ } else {
+ if (showMessage) {
+ showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔
+ this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ const index = this.$route.query.id.indexOf('@');
+ const result = this.$route.query.id.substring(0, index);
+ const oid = this.selectRow.map(obj => obj.oid).join(",");
+ changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => {
+ console.log(res);
+ if(res.data.code == 200 ){
+ this.$message.success('鍚敤鎴愬姛')
+ this.onLoad()
+ }
+ });
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑�'
+ });
+ });
+ }
+ }
+ });
+ } else if (this.selectRow.length >1 && !hasEditing && showMessage) {
+ this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬併�戞墠鍙互鍙戣捣娴佺▼');
+ showMessage = false;
+ }
+ });
}
},
//鍥炴敹
@@ -502,7 +549,59 @@
if (this.selectRow.length <= 0) {
this.$message.warning("璇烽�夋嫨涓�鏉℃暟鎹�");
} else {
-
+ // 缂栬緫涓�-鍙兘鍙戝竷锛屼笉鑳藉洖鏀�
+ // 瀹℃牳涓�-浠�涔堥兘涓嶈兘鍋�
+ // 宸插彂甯�-鍋滅敤銆佸洖鏀�
+ // 鍋滅敤-鍙兘鍚敤銆佸洖鏀�
+ const disabledCount = this.selectRow.filter(item => item.lcstatus === 'Disabled').length;
+ const releasedCount = this.selectRow.filter(item => item.lcstatus === 'Released').length;
+ console.log('hasEditing',disabledCount,releasedCount)
+ let showMessage = true;
+ this.selectRow.forEach(item => {
+ if (this.selectRow.length === 1 && item.lcstatus == "TakeBack" && showMessage) {
+ this.$message.warning('閫夋嫨鐨勬暟鎹腑鐘舵�佹棤闇�鍐嶆墽琛屽綋鍓嶆搷浣�');
+ showMessage = false;
+ } else if (this.selectRow.length >=1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) {
+ //disabledCount 鍜� releasedCount 涓换鎰忎竴涓瓑浜� this.selectRow 鏁扮粍鐨勯暱搴� 鍒欒〃绀哄叏閮ㄦ槸鍚屼竴绉嶇姸鎬侊紝杩斿洖 true 濡傛灉disabledCount 鍜� releasedCount 閮藉ぇ浜�0锛屽垯琛ㄧず鏃㈡湁Disabled涔熸湁Released杩斿洖 true
+ processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => {
+ if (res.data.records != [] && res.data.code != 200) {
+ this.userName = localStorage.getItem("username");
+ this.parameter.template = this.userName + "鍥炴敹" + "[鐗╁搧]";
+ this.parameter.type = 'TakeBack'
+ this.title = '鍥炴敹缂栫爜鏁版嵁'
+ this.visibleDeactivate = true;
+ } else {
+ if (showMessage) {
+ showMessage = false; // 鏍囪宸叉墽琛岃繃鎿嶄綔
+ this.$confirm('褰撳墠鍒嗙被娌℃湁娣诲姞娴佺▼妯℃澘锛屾槸鍚︿笉鐢ㄦ祦绋嬪鎵圭洿鎺ユ墽琛�?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ const index = this.$route.query.id.indexOf('@');
+ const result = this.$route.query.id.substring(0, index);
+ const oid = this.selectRow.map(obj => obj.oid).join(",");
+ changeStatus({ oid: oid, btmname: result, lcStatus: 'TakeBack' }).then(res => {
+ console.log(res);
+ if(res.data.code == 200 ){
+ this.$message.success('鍥炴敹鎴愬姛')
+ this.onLoad()
+ }
+ });
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: '宸插彇娑�'
+ });
+ });
+ }
+ }
+ });
+ } else if (this.selectRow.length >=1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) {
+ this.$message.warning('鎮ㄩ�夋嫨鐨勬暟鎹叏閮ㄤ负銆愬仠鐢ㄧ姸鎬佹垨鍙戝竷鐘舵�併�戞墠鍙互鍙戣捣娴佺▼');
+ showMessage = false;
+ }
+ });
}
},
handleSizeChange(val) {
diff --git a/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue b/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue
index b030217..63588d6 100644
--- a/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue
+++ b/Source/UBCS-WEB/src/components/Tree/TemplatePro.vue
@@ -2,10 +2,10 @@
<basic-container>
<avue-tabs :option="Taboption" @change="handleChange"></avue-tabs>
<span v-if="type.prop==='tab1'">
- <attrCrud :ProData="ProData" :crudOid="crudOid" :crudLCStatus="crudLCStatus" :crudArray="crudArray" :Formlist="Formlist" :codeClassifyOid="codeClassifyOid"></attrCrud>
+ <attrCrud :ProData="ProData" :crudOid="crudOid" :checkStatus="checkStatus" :crudLCStatus="crudLCStatus" :crudArray="crudArray" :Formlist="Formlist" :codeClassifyOid="codeClassifyOid"></attrCrud>
</span>
<span v-else-if="type.prop==='tab2'">
- <FlowPath :code="this.crudOid" :crudLCStatus="crudLCStatus"></FlowPath>
+ <FlowPath :code="this.crudOid" :checkStatus="checkStatus" :crudLCStatus="crudLCStatus"></FlowPath>
</span>
<span v-else-if="type.prop==='tab3'">
@@ -34,13 +34,13 @@
prop: 'tab3',
}]
},
-
+ checkStatus:false //鏄惁闇�瑕侀獙璇佹ā鏉跨姸鎬�
}
},
created() {
// 杩涘叆椤甸潰榛樿鏄ā鏉垮睘鎬�
this.type = this.Taboption.column[0];
- this.type.prop = "tab1"
+ this.type.prop = "tab1";
},
methods: {
// Tab鏍忓垏鎹�
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index ec68c50..bbd676c 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -3,31 +3,31 @@
<div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag"class="app">
<!--鏂板-->
- <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
+ <el-button v-if="attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
<!-- 鍏ㄥ睆缂栬緫-->
- <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && crudLCStatus=='Editing'" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
+ <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false && (!checkStatus || crudLCStatus=='Editing')" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
<!-- 楠岃瘉瑙勫垯-->
- <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
<!-- 灞炴�у垎缁�-->
- <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
<!-- 鍒嗙被娉ㄥ叆-->
- <el-button v-if="crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
<!-- 缁勫悎瑙勫垯-->
- <el-button v-if="crudLCStatus=='Editing'" size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
<!-- 鏋氫妇娉ㄥ叆-->
- <el-button v-if="crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button>
<!-- 绾ц仈灞炴��-->
- <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
+ <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
<!-- 棰勮鎺掑簭-->
<el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">棰勮鎺掑簭</el-button>
<!-- 淇濆瓨-->
- <el-button v-if="crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
+ <el-button v-if="!checkStatus|| crudLCStatus=='Editing'" size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
<!-- 鍒犻櫎-->
- <el-button v-if="crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button>
+ <el-button v-if="!checkStatus || crudLCStatus=='Editing'" size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button>
<!-- 閲嶇疆-->
<el-button size="small" @click="reset" icon="el-icon-refresh-right">閲嶇疆</el-button>
<!-- 鍚屾鍒板叾浠栨ā鏉�-->
@@ -240,7 +240,7 @@
</div>
<el-table :data="ProData"
style="width: 100%"
- height="750"
+ height="400"
@cell-click="handleCellClicks"
@select="selectHandle"
@selection-change="selectionChange"
@@ -313,6 +313,10 @@
crudOid: {
type: String,
default: ''
+ },
+ checkStatus:{
+ type: Boolean,
+ default: false
},
crudLCStatus: {
type: String,
@@ -1456,7 +1460,7 @@
citem.oid = ''
this.busineAddList=Object.assign(citem, {
orderNum: ++ordernum,
- attributedatatype: citem.attrDataType,
+ attributeDataType: citem.attrDataType,
attributeDataTypeText: this.vciFieldTypeMap[citem.attrDataType],
controlLength: citem.attributeLength,
valueArea: citem.range,
diff --git a/Source/UBCS-WEB/src/components/basic-container/main.vue b/Source/UBCS-WEB/src/components/basic-container/main.vue
index cbe7b61..60b30f3 100644
--- a/Source/UBCS-WEB/src/components/basic-container/main.vue
+++ b/Source/UBCS-WEB/src/components/basic-container/main.vue
@@ -3,6 +3,9 @@
:style="styleName"
:class="{'basic-container--block':block}">
<el-card class="basic-container__card">
+ <div slot="header" v-if="title" class="clearfix">
+ <span>{{title}}</span>
+ </div>
<slot></slot>
</el-card>
</div>
@@ -22,6 +25,9 @@
block: {
type: Boolean,
default: false
+ },
+ title:{
+ type: String
}
},
computed: {
diff --git a/Source/UBCS-WEB/src/components/template/FlowPath.vue b/Source/UBCS-WEB/src/components/template/FlowPath.vue
index 24ccf03..d068154 100644
--- a/Source/UBCS-WEB/src/components/template/FlowPath.vue
+++ b/Source/UBCS-WEB/src/components/template/FlowPath.vue
@@ -11,11 +11,19 @@
export default {
name: 'FlowPath',
props: {
- code: {
- typeof: String,
- required: true,
- default: ""
- }
+ checkStatus: {
+ type: Boolean,
+ default: false
+ },
+ crudLCStatus: {
+ type: String,
+ default: 'Editing'
+ },
+ code: {
+ typeof: String,
+ required: true,
+ default: ""
+ }
},
data() {
return {
@@ -31,68 +39,69 @@
startData: [],
form: {},
option: {
- height: "auto",
- border: true,
- align: 'center',
- menuAlign: 'center',
- index: true,
- searchMenuSpan: 8,
- searchBtn: false,
- emptyBtn: false,
- columnBtn: false,
- defaultSort: {
- prop: 'id,name,description,version',
- order: 'descending'
+ height: "auto",
+ border: true,
+ align: 'center',
+ menuAlign: 'center',
+ index: true,
+ searchMenuSpan: 8,
+ searchBtn: false,
+ emptyBtn: false,
+ columnBtn: false,
+ addBtn: !this.checkStatus || this.crudLCStatus == 'Editing',
+ defaultSort: {
+ prop: 'id,name,description,version',
+ order: 'descending'
+ },
+ column: [
+ {
+ label: '妯℃澘key',
+ prop: 'modelKey',
+ width: 120,
+ sortable: true,
+ type: 'tree',
+ dicData: [],
+ props: {
+ label: "key",
+ value: "key"
+ },
+ rules: [{
+ required: true,
+ message: '妯℃澘key涓嶈兘涓虹┖',
+ trigger: 'blur'
+ }],
+ nodeClick: (data) => {
+ console.log(data)
+ // 鑺傜偣鐐瑰嚮鐨勬椂鍊欎細鑾峰彇鍒版暟鎹�
+ this.form.modelName = data.name
+ }
+ }, {
+ label: '妯℃澘鍚嶇О',
+ prop: 'modelName',
+ sortable: true,
+ width: 220,
+ addDisabled: true,
+ editDisabled: true,
},
- column: [
- {
- label: '妯℃澘key',
- prop: 'modelKey',
- width:120,
- sortable: true,
- type: 'tree',
- dicData: [],
- props: {
- label: "key",
- value: "key"
- },
- rules: [{
- required: true,
- message: '妯℃澘key涓嶈兘涓虹┖',
- trigger: 'blur'
- }],
- nodeClick: (data) => {
- console.log(data)
- // 鑺傜偣鐐瑰嚮鐨勬椂鍊欎細鑾峰彇鍒版暟鎹�
- this.form.modelName = data.name
- }
- }, {
- label: '妯℃澘鍚嶇О',
- prop: 'modelName',
- sortable: true,
- width:220,
- addDisabled: true,
- editDisabled: true,
- },
- {
- label: '妯℃澘鐢ㄩ��',
- prop: 'buttonTypeKey',
- type: 'tree',
- width:120,
- dicUrl: '/api/ubcs-flow/processTS/tt',
- dicMethod: 'post',
- props: {
- value: "codee",
- label: "namee",
- },
- },
- {
- label: '妯℃澘鎻忚堪',
- prop: 'description',
- type:'textarea'
- },
- ]
- },
+ {
+ label: '妯℃澘鐢ㄩ��',
+ prop: 'buttonTypeKey',
+ type: 'tree',
+ width: 120,
+ dicUrl: '/api/ubcs-flow/processTS/tt',
+ dicMethod: 'post',
+ props: {
+ value: "codee",
+ label: "namee",
+ },
+ },
+ {
+ label: '妯℃澘鎻忚堪',
+ prop: 'description',
+ type: 'textarea'
+ },
+ ]
+ }
}
},
created() {
@@ -114,18 +123,19 @@
},
// 鑾峰彇鍒楄〃
async getDataList() {
- this.loading = false
- console.log(this.search)
+ this.loading = false
+ if(this.code){
const { pageSize, currentPage } = this.page
let param = { size: pageSize, current: currentPage }
const response = await getFlowpathList({ ...param, ...{ templateId: this.code } })
if (response.status === 200) {
- console.log(response)
- this.loading = false
- const data = response.data.data
- this.data = data.records
- this.page.total = data.total
+ this.loading = false
+ const data = response.data.data
+ this.data = data.records
+ this.page.total = data.total
} else this.loading = false
+ }
+
},
// 鏂板
async handleSave(row, done, loading) {
diff --git a/Source/UBCS-WEB/src/components/template/Stage.vue b/Source/UBCS-WEB/src/components/template/Stage.vue
index 8fe6216..7d01c68 100644
--- a/Source/UBCS-WEB/src/components/template/Stage.vue
+++ b/Source/UBCS-WEB/src/components/template/Stage.vue
@@ -127,17 +127,19 @@
},
// 鑾峰彇鍒楄〃
async getDataList() {
- this.loading = false
- const { pageSize, currentPage } = this.page
- let param = { size: pageSize, current: currentPage }
- const response = await getFlowpathList({ ...param, ...{ templateId: this.code } })
+ this.loading = false
+ if (this.code) {
+ const {pageSize, currentPage} = this.page
+ let param = {size: pageSize, current: currentPage}
+ const response = await getFlowpathList({...param, ...{templateId: this.code}})
if (response.status === 200) {
- console.log(response)
- this.loading = false
- const data = response.data.data
- this.data = data.records
- this.page.total = data.total
+ console.log(response)
+ this.loading = false
+ const data = response.data.data
+ this.data = data.records
+ this.page.total = data.total
} else this.loading = false
+ }
},
// 鑾峰彇闃舵鍒楄〃
async getStagelist() {
diff --git a/Source/UBCS-WEB/src/views/wel/Statistic.vue b/Source/UBCS-WEB/src/views/wel/Statistic.vue
new file mode 100644
index 0000000..f95cb3d
--- /dev/null
+++ b/Source/UBCS-WEB/src/views/wel/Statistic.vue
@@ -0,0 +1,150 @@
+<template>
+ <div>
+ <el-row :gutter="20">
+ <el-col :span="3" v-for="item in listMyTask">
+ <div class="box" :style="item.style">
+ {{item.name}}
+ <div><avue-count-up class="value" :end="item.count"></avue-count-up></div>
+ </div>
+ </el-col>
+ </el-row>
+ </div>
+</template>
+
+<script>
+import {validatenull} from "@/util/validate";
+import {getList} from "@/api/system/statistic";
+
+export default {
+name: "Statistic",
+ data(){
+ return {
+ countByServer:true,
+ listMyTask:[]
+ }
+ },
+ created() {
+ this.getList();
+ },
+ computed(){
+
+ },
+ methods: {
+ getList() {
+ let data = [{
+ "backgroundColor": "#FF5722",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countNeedConfirmPlan",
+ "name": "寰呯‘璁よ鍒�",
+ "nameOid": "",
+ "oid": "34aebfde-eb11-4555-87eb-0a779be9aad0",
+ "uiUrl": "USEJS:rpm/wrj/ProductPricePlan",
+ }, {
+ "backgroundColor": "#5FB878",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countPricingPlan",
+ "name": "浠婃棩宸茬‘璁よ鍒�",
+ "nameOid": "2C72EA23-8AA5-E5FC-9BC1-DE4AD182EF7B",
+ "oid": "6256ae79-7765-4c66-afc7-f12fad350065",
+ "uiUrl": "USEJS:rpm/wrj/ProductPricePlan",
+ },
+ {
+ "backgroundColor": "#1E9FFF",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countNeedFeedbackPlan",
+ "name": "宸茶皥銆佸緟鍙嶉",
+ "nameOid": "2536978C-CD1B-5B56-6529-A8C3456B5260",
+ "oid": "3043cdf1-8479-4c2a-9eab-fc35e9f9d5a7",
+ "uiUrl": "USEJS:rpm/wrj/ProductPricePlan",
+ },
+ {
+ "backgroundColor": "#FF5722",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countMyUnCreatePricePlan",
+ "name": "閲囪喘璋堜环-缁忓姙",
+ "nameOid": "",
+ "oid": "529634e7-1854-4f61-b911-a91e3c406757",
+ "uiUrl": "USEJS:rpm/wrj/PurchaseRequstUndo",
+ },
+ {
+ "backgroundColor": "#5FB878",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countPricingPlan",
+ "name": "浠婃棩宸茬‘璁よ鍒�--缁忓姙浜�",
+ "nameOid": "",
+ "oid": "a03a6ab2-f87d-4e45-94cb-9ef4d66fbba2",
+ "uiUrl": "USEJS:rpm/wrj/PurchaseRequstUndo?showPlan=true",
+ },
+ {
+ "backgroundColor": "#1E9FFF",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countNeedFeedbackPlan",
+ "name": "宸茶皥銆佸緟鍙嶉--缁忓姙浜�",
+ "nameOid": "",
+ "oid": "8e56cce6-c955-4624-99d5-6c5b870a8c09",
+ "uiUrl": "USEJS:rpm/wrj/PurchaseRequstUndo?showPlan=true",
+ },
+ {
+ "backgroundColor": "",
+ "btmname": "",
+ "countUrl": "priceIndexController/countMyWillAuditPlan",
+ "name": "閲囪喘璋堜环-缁忓姙",
+ "nameOid": "",
+ "oid": "f7d5c541-3a3a-4f24-bf76-b1538abb7abd",
+ "uiUrl": "USEJS:rpm/wrj/PurchaseRequstUndo?showPlan=true",
+ },
+ {
+ "backgroundColor": "",
+ "btmname": "hometask",
+ "countUrl": "priceIndexController/countNeedDispatch",
+ "name": "閲囪喘璋堜环-鍒嗘淳",
+ "nameOid": "BAD3108F-6F6B-F287-705C-82D69A5E030A",
+ "oid": "6093b1cb-bd7b-438b-8a76-05ab486ccf63",
+ "uiUrl": "USEJS:rpm/wrj/PurchaseRequstUndo?showPlan=true"
+ }
+ ]
+ this.listMyTask = data.map(record => {
+ record.style=record.style || ''
+ if(record.backgroundColor!=''){
+ record.style = 'background-color:'+record.backgroundColor;
+ }
+ record.count=record.count || 0;
+ if(!this.countByServer){
+ //鏄墠绔煡璇�
+ getList(record.countUrl,{}).then(res=>{
+ if(res.data.data.success){
+ record.count=res.data.data.obj;
+ }else{
+ record.count=0
+ }
+ })
+
+ }
+ return {
+ ...record
+ }
+ })
+ }
+ }
+}
+</script>
+
+<style scoped>
+.box{
+ text-align: center;
+ background: rgb(235, 238, 245);
+ color: #303133;
+ height: 74px;
+ margin: 10px 0!important;
+ padding: 15px 20px;
+ position: relative;
+ border-radius: 4px;
+ box-sizing: border-box;
+ font-size: 14px;
+}
+.value{
+ font-size: 12px;
+ opacity: .69;
+ line-height: 24px;
+}
+</style>
diff --git a/Source/UBCS-WEB/src/views/wel/index.vue b/Source/UBCS-WEB/src/views/wel/index.vue
index f19499e..234ae9e 100644
--- a/Source/UBCS-WEB/src/views/wel/index.vue
+++ b/Source/UBCS-WEB/src/views/wel/index.vue
@@ -7,144 +7,57 @@
</el-row>
<el-row>
<el-col :span="24">
- <basic-container>
- <p style="text-align: center">
- <img src="https://img.shields.io/badge/Release-V3.0.1-green.svg" alt="Downloads"/>
- <img src="https://img.shields.io/badge/JDK-1.8+-green.svg" alt="Build Status"/>
- <img src="https://img.shields.io/badge/Spring%20Cloud-2021-blue.svg" alt="Coverage Status"/>
- <img src="https://img.shields.io/badge/Spring%20Boot-2.7-blue.svg" alt="Downloads"/>
- <!-- <a target="_blank" href="https://bladex.vip">
- <img src="https://img.shields.io/badge/Saber%20Author-Small%20Chill-ff69b4.svg" alt="Downloads"/>
- </a>
- <a target="_blank" href="https://bladex.vip">
- <img src="https://img.shields.io/badge/Copyright%20-@BladeX-%23ff3f59.svg" alt="Downloads"/>
- </a> -->
- </p>
+ <basic-container title="寰呭姙浜嬮」">
+ <Statistic></Statistic>
</basic-container>
</el-col>
</el-row>
<el-row>
<el-col :span="16">
- <basic-container class="aaa">
- <el-collapse v-model="activeNames" @change="handleChange" class="fontcoll">
- <el-collapse-item title="娆㈣繋浣跨敤UBCS" name="1">
- <div style="font-size: 16px">1.UBCS鏄竴娆剧簿蹇冭璁$殑寰湇鍔℃灦鏋勶紝鎻愪緵 SpringCloud 鍏ㄥ瑙e喅鏂规锛屽畬缇庨泦鎴� SpringCloud Alibaba 绯诲垪缁勪欢</div>
- <div style="font-size: 16px">2.UBCS鏄负浼佷笟鎻愪緵缁熶竴涓氬姟鍗忓悓绯荤粺骞冲彴</div>
- <div style="font-size: 16px">3.UBCS杩芥眰浼佷笟寮�鍙戞洿鍔犻珮鏁堬紝閮ㄧ讲鏇村姞鏂逛究锛岀敓浜ф洿鍔犵ǔ瀹�</div>
- <div style="font-size: 16px">4.绯荤粺瀹炵幇涓�濂椾唬鐮佸吋瀹筂ySql銆丱racle銆丳ostgreSQL銆丼qlServer銆佽揪姊︼紝閫傚簲浼佷笟鍚勭涓嶅悓鍦烘櫙鐨勯渶姹�</div>
- <div style="font-size: 16px">5.闆嗘垚浜嗗緢澶氫紒涓氭�ュ垏鎵�闇�鐨勪緥濡傚绉熸埛銆丱auth2鎺堟潈璁よ瘉銆佸伐浣滄祦銆佸垎甯冨紡浜嬪姟绛夌瓑鍔熻兘</div>
- <div style="font-size: 16px">5.绯荤粺娣卞害瀹氬埗浜咶lowable宸ヤ綔娴侊紝瀹岀編鏀寔SpringCloud鍒嗗竷寮忔湇鍔$殑鍦烘櫙锛屼互杩滅▼璋冪敤鐨勬柟寮忚繘琛屾搷浣�</div>
- </el-collapse-item>
-
- </el-collapse>
+ <basic-container title="寰呭姙娴佺▼浠诲姟">
+ <avue-crud ref="crud" :table-loading="loading" :data="todoData" :option="todoOption"
+ @on-load="onLoad"
+ @cell-click="cellHandle"
+ :page.sync="page">
+ <template #menu="{size,row,index}">
+ <el-button @click="gotodo(row,index)"
+ icon="el-icon-check"
+ type="text"
+ :size="size">鎵ц</el-button>
+ </template>
+ </avue-crud>
</basic-container>
</el-col>
<el-col :span="8">
<el-row>
- <basic-container>
+ <basic-container title="娑堟伅鍒楄〃">
<el-collapse v-model="logActiveNames" @change="handleChange">
- <el-collapse-item title="3.0.1.RELEASE鍙戝竷锛屼唬鐮佺敓鎴愬姛鑳藉叏闈㈠崌绾�" name="28">
- <div>1.[鏂板]鏁版嵁妯″瀷鍦ㄧ嚎閰嶇疆</div>
- <div>2.[鏂板]浠g爜鐢熸垚琛ㄥ崟缁勪欢鍦ㄧ嚎閰嶇疆</div>
- <div>3.[鏂板]Saber椋庢牸鐨勫崟琛ㄧ敓鎴愭ā鐗�</div>
- <div>4.[鏂板]Saber椋庢牸鐨勪富瀛愯〃鐢熸垚妯$増</div>
- <div>5.[鏂板]Saber椋庢牸鐨勬爲琛ㄧ敓鎴愭ā鐗�</div>
- <div>6.[鏂板]ElementUI椋庢牸鐨勫崟琛ㄧ敓鎴愭ā鐗�</div>
- <div>7.[鏂板]ElementUI椋庢牸鐨勪富瀛愯〃鐢熸垚妯$増</div>
- <div>8.[鏂板]ElementUI椋庢牸鐨勬爲琛ㄧ敓鎴愭ā鐗�</div>
- </el-collapse-item>
- <el-collapse-item title="3.0.0.RELEASE鍙戝竷锛岀郴缁熸灦鏋勫崌绾ц嚦 SpringCloud 2021" name="27">
- <div>1.[鍗囩骇]SpringCloud 鑷� 2021.0.3</div>
- <div>2.[鍗囩骇]SpringBoot 鑷� 2.7.1</div>
- <div>3.[鍗囩骇]SpringBootAdmin 鑷� 2.7.1</div>
- <div>4.[鍗囩骇]AlibabaCloud 鑷� 2021.0.1.0</div>
- <div>5.[鍗囩骇]Mybatis-Plus 鑷� 3.5.2</div>
- <div>6.[鍗囩骇]Mybatis-Plus-Generator 鑷� 3.5.3</div>
- <div>7.[鍗囩骇]Nacos 鑷� 2.1.0</div>
- <div>8.[鍗囩骇]Seata 鑷� 1.5.2</div>
- <div>9.[鍗囩骇]Log4J 鑷� 2.18.0</div>
- <div>10.[鍗囩骇]JackSon 鑷� 2.13.3</div>
- <div>11.[鍗囩骇]FastJson 鑷� 1.2.83</div>
- <div>12.[鍗囩骇]Avue 鑷� 2.9.12</div>
- <div>13.[鏂板]鍩轰簬Oauth2鐨勫崟鐐圭櫥褰�</div>
- <div>14.[鏂板]鐏板害鏈嶅姟鍙戝竷涓庤皟鐢�</div>
- <div>15.[鏂板]浠g爜鐢熸垚澧炲姞element鍜宖eign妯$増</div>
- <div>16.[浼樺寲]鑷姩瑁呴厤妯″潡閲囩敤鏂扮増@AutoConfiguration娉ㄨВ</div>
- <div>17.[浼樺寲]TencentCosTemplate閬垮厤oom鐨勬儏鍐�</div>
- <div>18.[浼樺寲]TreeNode绫�</div>
- <div>19.[浼樺寲]Gateway閴存潈閫昏緫</div>
- <div>20.[淇]BladeRedis incr鏂规硶澶辨晥鐨勯棶棰�</div>
- <div>21.[淇]绉熸埛浜у搧鍖呮洿鏂板悗缂撳瓨鏈埛鏂扮殑闂</div>
- <div>22.[淇]缁戝畾绉熸埛浜у搧鍖呭悗鏅�氱鐞嗗憳鏉冮檺閰嶇疆涓㈠け鎸夐挳閫夐」鐨勯棶棰�</div>
- <div>23.[淇]娴佺▼璁捐鍣ㄧ洃鍚棤娉曞垹闄ょ殑闂</div>
- <div>24.[淇]鐢ㄦ埛excel瀵煎嚭鏉′欢涓虹┖鐨勫垽鏂�昏緫</div>
- <div>25.[鍒犻櫎]Hystrix鎺ュ叆浠entinel鍙栦唬</div>
- <div>26.[鍒犻櫎]Ribbon鎺ュ叆浠oadBalancer鍙栦唬</div>
- <div>27.[鍒犻櫎]Zipkin鎺ュ叆</div>
- <div>28.[鍒犻櫎]Turbine鎺ュ叆</div>
- <div>29.[鏇夸唬]鍚庣画鐗堟湰灏嗗鎺kyWalking鍙栦唬Zipkin涓嶵urbine</div>
- </el-collapse-item>
- <el-collapse-item title="2.9.1.RELEASE鍙戝竷锛屾柊澧炶揪姊︽暟鎹簱鏀寔锛岄泦鎴怤utFlow娴佺▼璁捐鍣�" name="26">
- <div>1.[鍗囩骇]Mybatis-Plus 鑷� 3.5.1</div>
- <div>2.[鍗囩骇]Mybatis-Plus-Generator 鑷� 3.5.2</div>
- <div>3.[鍗囩骇]Nacos 鑷� 2.0.4</div>
- <div>4.[鍗囩骇]Log4j2 鑷� 2.17.2</div>
- <div>5.[鍗囩骇]FastJson 鑷� 1.2.80</div>
- <div>6.[鍗囩骇]Sentinel 鑷� 1.8.3</div>
- <div>7.[鍗囩骇]EasyExcel 鑷� 2.2.11</div>
- <div>8.[鍗囩骇]JuatAuth 鑷� 1.16.5</div>
- <div>9.[鍗囩骇]OkHttp 鑷� 4.9.3</div>
- <div>10.[鍗囩骇]AliyunOss 鑷� 3.14.0</div>
- <div>11.[鍗囩骇]Minio 鑷� 8.3.7</div>
- <div>12.[鍗囩骇]Qiniu 鑷� 7.9.4</div>
- <div>13.[鍗囩骇]TencentCOS 鑷� 5.6.69</div>
- <div>14.[鍗囩骇]HuaweiOss 鑷� 3.21.12</div>
- <div>15.[鍗囩骇]Avue 鑷� 2.9.4</div>
- <div>16.[鍗囩骇]ElementUI 鑷� 2.15.6</div>
- <div>17.[鏂板]杈炬ⅵ鏁版嵁搴撴敮鎸�</div>
- <div>18.[鏂板]NutFlow娴佺▼璁捐鍣ㄩ泦鎴�</div>
- <div>19.[鏂板]Sword鍗囩骇鑷矨ntdV4鐗堟湰</div>
- <div>20.[浼樺寲]绉熸埛鍏ㄥ眬鏁版嵁婧愭嫤鎴櫒閫昏緫</div>
- <div>21.[浼樺寲]鍗曚汉鍦ㄧ嚎妯″紡RefreshToken鐨勫鐞嗛�昏緫</div>
- <div>22.[浼樺寲]鍗曞厓娴嬭瘯鏀寔璇诲彇鏈嶅姟鍚嶄笉鍚岀幆澧冪殑閰嶇疆</div>
- <div>23.[浼樺寲]绉熸埛浜у搧鍖呮敮鎸侀厤缃竻绌�</div>
- <div>24.[浼樺寲]閰嶇疆瑙e喅oracle鏇存柊null鍊兼姤閿欑殑闂</div>
- <div>25.[浼樺寲]閫傞厤oss涓巗ms鎿嶄綔鏍忎笉鎹㈣</div>
- <div>26.[浼樺寲]鎻愬崌excel瀵煎嚭鍔熻兘鐨勭敤鎴蜂綋楠�</div>
- <div>27.[浼樺寲]涓婚〉閮ㄩ棬鍒囨崲閫昏緫</div>
- <div>28.[淇]鐢ㄦ埛瑙e皝澧炲姞绌烘暟鎹垽鏂�昏緫</div>
- <div>29.[淇]娴佺▼鐢ㄦ埛鏌ヨ澧炲姞绉熸埛ID绛涢��</div>
- <div>30.[淇]Oauth2鎺堟潈鐮佹ā寮忓け鏁�</div>
- <div>31.[淇]鐧诲綍閿佸畾閫昏緫</div>
- <div>32.[淇]閫氱煡鍏憡鏃ユ湡娈垫煡璇㈡姤閿�</div>
- </el-collapse-item>
- <el-collapse-item title="2.9.0.RELEASE鍙戝竷锛屾柊澧炵鎴疯彍鍗曚骇鍝佸寘鍔熻兘" name="25">
- <div>1.[鍗囩骇]SpringCloud 鑷� Hoxton.SR12</div>
- <div>2.[鍗囩骇]AlibabaCloud 鑷� 2.2.7.RELEASE</div>
- <div>3.[鍗囩骇]Nacos 鑷� 2.0.3</div>
- <div>4.[鍗囩骇]Log4j2 鑷� 2.17.0</div>
- <div>5.[鍗囩骇]Druid 鑷� 1.2.8</div>
- <div>6.[鍗囩骇]FastJson 鑷� 1.2.78</div>
- <div>7.[鍗囩骇]Lombok 鑷� 1.18.22</div>
- <div>8.[鍗囩骇]Avue 鑷� 2.8.25</div>
- <div>9.[鍗囩骇]闃块噷浜戜粨搴撲负鏈�鏂板湴鍧�</div>
- <div>10.[鏂板]绉熸埛鑿滃崟浜у搧鍖呭姛鑳�</div>
- <div>11.[鏂板]閮ㄩ棬瑙掕壊鍦ㄧ嚎鍒囨崲鍔熻兘</div>
- <div>12.[鏂板]鐧诲綍閿欒娆℃暟鏀寔浠庡弬鏁扮鐞嗚鍙�</div>
- <div>13.[鏂板]绠$悊绔墜鍔ㄨВ閿佺敤鎴峰姛鑳�</div>
- <div>14.[鏂板]actuator鎺ュ彛澧炲姞鍐呯綉鏀捐澶栫綉璁よ瘉鍔熻兘</div>
- <div>15.[鏂板]pg鏁版嵁搴搃nt绫诲瀷鏉′欢鏌ヨ澶勭悊绀轰緥</div>
- <div>16.[鏂板]Lemon骞冲彴浠g爜鐢熸垚妯℃澘</div>
- <div>17.[浼樺寲]瑙掕壊鍒犻櫎澧炲姞瀛愯妭鐐瑰垽鏂�</div>
- <div>18.[浼樺寲]娴佺▼鏉′欢鏌ヨ澧炲姞绉熸埛杩囨护</div>
- <div>19.[浼樺寲]娴佺▼鍒楄〃澧炲姞鍚嶇О鏌ヨ</div>
- <div>20.[浼樺寲]鐧诲綍鎴愬姛鏃舵竻闄ら敊璇鏁�</div>
- <div>21.[浼樺寲]閫傞厤cloud鏈�鏂扮増寮傚父澶勭悊</div>
- <div>22.[浼樺寲]鏁版嵁鏉冮檺鏂板鎴愬姛鍚庢竻绌鸿〃鍗曟暟鎹�</div>
- <div>23.[淇]淇鐢ㄦ埛瀵煎叆閮ㄩ棬鏁版嵁涓簄ull鏃朵繚瀛樻姤閿欑殑闂</div>
- <div>24.[淇]淇鍒锋柊token瀵艰嚧澶氶儴闂╥d琚鐩栫殑闂</div>
- <div>25.[淇]淇鐧诲綍鐣岄潰澶氶儴闂ㄩ�夋嫨寮规鍑虹幇鍚庣洿鎺ュ埛鏂板氨鑳借繘鍏ヤ富椤电殑闂</div>
- <div>26.[淇]淇閫氱煡鍏憡鍒嗛〉鏈甫鍏ユ煡璇㈡潯浠剁殑闂</div>
+ <el-collapse-item title="2.8.2.RELEASE鍙戝竷" name="23">
+ <div>1.[鍗囩骇]SpringBoot 鑷� 2.3.12</div>
+ <div>2.[鍗囩骇]SpringBootAdmin 鑷� 2.3.1</div>
+ <div>3.[鍗囩骇]Knife4j 鑷� 2.0.9</div>
+ <div>4.[鍗囩骇]Nacos 鑷� 2.0.2</div>
+ <div>5.[鍗囩骇]Seata 鑷� 1.4.2</div>
+ <div>6.[鍥炴粴]MybatisPlus 鑷� 3.4.2</div>
+ <div>7.[鍗囩骇]DynamicDatasource 鑷� 3.3.6</div>
+ <div>8.[鍗囩骇]Druid 鑷� 1.2.6</div>
+ <div>9.[鍗囩骇]Avue 鑷� 2.8.18</div>
+ <div>10.[鏂板]鐢ㄦ埛鐧诲綍閿欒娆℃暟閿佸畾鍔熻兘</div>
+ <div>11.[鏂板]澶氶儴闂ㄥ瑙掕壊鐢ㄦ埛鍦ㄧ櫥褰曟椂澧炲姞涓嬫媺閫夐」</div>
+ <div>12.[鏂板]鏂板鐢ㄦ埛澶氭潯浠舵煡璇㈡帴鍙�</div>
+ <div>13.[鏂板]Ribbon缁勪欢鏉冮噸璇诲彇閫昏緫</div>
+ <div>14.[鏂板]ExcelUtil鏂板WriteHandler鍙傛暟</div>
+ <div>15.[鏂板]CacheUtil澧炲姞鎸囧畾tenantId娓呯┖鏂规硶</div>
+ <div>16.[浼樺寲]鎵嬫満鐭俊鏍¢獙閫昏緫锛屽鍔犳墜鏈哄彿寮哄埗鍒ゆ柇</div>
+ <div>17.[浼樺寲]鐭俊璋冭瘯鍔熻兘澧炲姞璧勬簮缂栧彿璇诲彇</div>
+ <div>18.[浼樺寲]澶氱鎴峰垏闈㈤�昏緫</div>
+ <div>19.[浼樺寲]澶氱鎴风紦瀛樻竻绌洪�昏緫</div>
+ <div>20.[浼樺寲]ISqlInjector鏀寔鑷畾涔夎鐩�</div>
+ <div>21.[浼樺寲]浼樺寲鏃ュ織瀵逛簬绉熸埛id鐨勫垽鏂�</div>
+ <div>22.[浼樺寲]Menu绫婚噸鍐檋ashCode鏂规硶</div>
+ <div>23.[浼樺寲]MySql鑴氭湰灏唋ong绫诲瀷瀛楁鏀逛负bigint(20)</div>
+ <div>24.[淇]鐢ㄦ埛涓績瀛楁缁戝畾鐩稿弽鐨勯棶棰�</div>
+ <div>25.[淇]鍏抽棴楠岃瘉鐮佹ā寮忓悗棣栭〉浠嶈皟鐢ㄩ獙璇佺爜鎺ュ彛鐨勯棶棰�</div>
</el-collapse-item>
<el-collapse-item title="2.8.2.RELEASE鍙戝竷锛屽寮虹敤鎴风櫥褰曟柟妗�" name="24">
<div>1.[鍗囩骇]SpringBoot 鑷� 2.3.12</div>
@@ -172,491 +85,6 @@
<div>23.[浼樺寲]MySql鑴氭湰灏唋ong绫诲瀷瀛楁鏀逛负bigint(20)</div>
<div>24.[淇]鐢ㄦ埛涓績瀛楁缁戝畾鐩稿弽鐨勯棶棰�</div>
<div>25.[淇]鍏抽棴楠岃瘉鐮佹ā寮忓悗棣栭〉浠嶈皟鐢ㄩ獙璇佺爜鎺ュ彛鐨勯棶棰�</div>
- </el-collapse-item>
- <el-collapse-item title="2.8.1.RELEASE鍙戝竷锛岄�傞厤Nacos2鏀寔闀块摼鎺ョ壒鎬�" name="23">
- <div>1.[鍗囩骇]SpringCloud 鑷� Hoxton.SR11</div>
- <div>2.[鍗囩骇]Avue 鑷� 2.8.12</div>
- <div>3.[鍗囩骇]Lombok 鑷� 1.18.18</div>
- <div>4.[鍗囩骇]Nacos 鑷� 2.0.1</div>
- <div>5.[鍗囩骇]JustAuth 鑷� 1.16.1</div>
- <div>6.[鏂板]JustAuth鏀寔鍩轰簬redis鐨剆tate缂撳瓨</div>
- <div>7.[鏂板]鏈嶅姟鍐呴儴璋冪敤鏂囦欢涓婁紶鐨勫伐鍏风被</div>
- <div>8.[鏂板]鎻掍欢甯傚満鐩綍璇存槑</div>
- <div>9.[鏂板]鍏ㄦ柊甯冨眬鐨勫瓧鍏哥鐞嗘ā鍧�</div>
- <div>10.[浼樺寲]Dockerfile鍒濆闀滃儚鏀逛负鍥哄寲鐨刼penjdk8-openj9鍚瓧浣撶増鏈�</div>
- <div>11.[浼樺寲]SmsResponse杩斿洖瀛楁message涓簃sg</div>
- <div>12.[浼樺寲]Feign鐔旀柇鍔犺浇閫昏緫</div>
- <div>13.[浼樺寲]Sql鎵撳嵃鎻掍欢澧炲姞java8鏃堕棿澶勭悊</div>
- <div>14.[浼樺寲]澶氭暟鎹簮鐜涓嬬敓鏁圫ql鎵撳嵃鎻掍欢鐨勯厤缃�</div>
- <div>15.[浼樺寲]鏍¢獙鐭俊楠岃瘉鐮佹椂涓庢墜鏈哄彿鍏宠仈楠岃瘉</div>
- <div>16.[浼樺寲]Request鍖呰閫昏緫鏀寔閰嶇疆璺宠繃</div>
- <div>17.[浼樺寲]Mybatis-plus鐨凷QLServerDialect閫昏緫</div>
- <div>18.[浼樺寲]ObjectMapper鏀寔鍙厤</div>
- <div>19.[浼樺寲]澧炲姞璺ㄥ煙璇锋眰澶翠互闃茬嫭绔媠wagger鏈嶅姟鍑虹幇璺ㄥ煙</div>
- <div>20.[浼樺寲]鏁版嵁鏉冮檺涓庢帴鍙f潈闄愮殑缂撳瓨鏀逛负鍏ㄥ眬</div>
- <div>21.[浼樺寲]Xss杩囨护閫昏緫</div>
- <div>22.[浼樺寲]瑙掕壊閰嶇疆閫昏緫</div>
- <div>23.[浼樺寲]鑿滃崟閰嶇疆閫昏緫</div>
- <div>24.[淇]ImageUtil瀹介珮鍙嶈浆鐨刡ug</div>
- <div>25.[淇]鏍戠粍浠舵湭鍏ㄩ�夊鑷寸埗鑺傜偣娌℃湁鍏ュ簱浠庤�屽紩鍙戦《閮ㄨ彍鍗曠敓鎴愮殑bug</div>
- <div>26.[淇]瀛楀吀閫氱敤鎺ュ彛鏈繑鍥瀒d涓巔arentId浜х敓鐨刡ug</div>
- <div>27.[鑴氭湰]鍚姩鑴氭湰澧炲姞jvm閰嶇疆</div>
- <div>28.[鑴氭湰]淇report鑴氭湰閮ㄧ讲閫昏緫</div>
- <div>29.[绉婚櫎]杩囨椂鐨凚ladeRedisCache锛岃鐢˙ladeRedis鍙栦唬</div>
- </el-collapse-item>
- <el-collapse-item title="2.8.0.RELEASE鍙戝竷锛岄泦鎴怭rometheus鍏ㄦ柟浣嶇洃鎺ф柟妗�" name="22">
- <div>1.[鍗囩骇]SpringCloud 鑷� Hoxton.SR10</div>
- <div>2.[鍗囩骇]AlibabaCloud 鑷� 2.2.5.RELEASE</div>
- <div>3.[鍗囩骇]FastJson 鑷� 1.2.75</div>
- <div>4.[鍗囩骇]Druid 鑷� 1.2.5</div>
- <div>5.[鍗囩骇]EasyExcel 鑷� 1.2.7</div>
- <div>6.[鍗囩骇]JustAuth 鑷� 1.15.9</div>
- <div>7.[鍗囩骇]Avue 鑷� 2.8.1</div>
- <div>8.[鍗囩骇]ElementUI 鑷� 2.15.1</div>
- <div>9.[鍗囩骇]Oss涓嶴ms鍗囩骇渚濊禆骞堕�傞厤鏈�鏂扮増</div>
- <div>10.[鏂板]鍩轰簬瀹濆绯荤粺鐨勯儴缃叉柟妗�</div>
- <div>11.[鏂板]Prometheus鍏ㄦ柟浣嶇洃鎺ф柟妗�</div>
- <div>12.[鏂板]ubcs-admin鏈嶅姟鏀寔prometheus瀵筺acos鐨勬湇鍔″彂鐜�</div>
- <div>13.[鏂板]BladeX瀵规帴Prometheus閮ㄧ讲鑴氭湰</div>
- <div>14.[鏂板]Saber杩滅▼閮ㄧ讲鎺ㄩ�佽剼鏈�</div>
- <div>15.[鏂板]鍩轰簬Sentinel鐨勬湇鍔$啍鏂柟妗�</div>
- <div>16.[鏂板]Mybatis-Plus娣诲姞OptimizeJoin閰嶇疆鍙傛暟</div>
- <div>17.[浼樺寲]灏唎ss-starter绯诲垪鍚堝苟涓轰竴</div>
- <div>18.[浼樺寲]灏唖ms-starter绯诲垪鍚堝苟涓轰竴</div>
- <div>19.[浼樺寲]澧炲己浼樺寲Url閫氶厤绗﹀尮閰嶉�昏緫</div>
- <div>20.[浼樺寲]鏁版嵁鏉冮檺缂撳瓨閫昏緫</div>
- <div>21.[浼樺寲]ubcs-auto灏佽</div>
- <div>22.[浼樺寲]SqlLogInterceptor閰嶇疆</div>
- </el-collapse-item>
- <el-collapse-item title="2.7.2.RELEASE鍙戝竷锛岄噸鏋勫崌绾у父鐢ㄥ姛鑳斤紝浼樺寲浣跨敤浣撻獙" name="21">
- <div>1.[鍗囩骇]SpringBoot 鑷� 2.2.13.RELEASE</div>
- <div>2.[鍗囩骇]AlibabaCloud 鑷� 2.2.5</div>
- <div>3.[鍗囩骇]Mybatis-Plus 鑷� 3.4.2</div>
- <div>4.[鍗囩骇]Dynamic-Datasource 鑷�3.3.1</div>
- <div>5.[鍗囩骇]Avue 鑷� 2.7.8</div>
- <div>6.[鍗囩骇]閫傞厤 Knife4j 2.0.8</div>
- <div>7.[閲嶆瀯]Swagger鑱氬悎缃戝叧杩佺Щ鑷冲叏鏂扮殑blade-swagger鏈嶅姟</div>
- <div>8.[閲嶆瀯]Sql鏃ュ織鎵撳嵃閲囩敤druid搴曞眰瀹炵幇灞曠ず瀹屾暣甯﹀弬SQL</div>
- <div>9.[鏂板]LocalFile鐨刣omain瀛楁</div>
- <div>10.[鏂板]Sign妯″紡閴存潈timestamp鍦�10绉掑唴鐨勫悎娉曟椂闂存鍒ゆ柇</div>
- <div>11.[鏂板]寮�鍚鎴锋彃浠跺悗浣跨敤@TenantIgnore娉ㄨВ绮惧噯鍏抽棴绉熸埛杩囨护閫昏緫</div>
- <div>12.[鏂板]Swagger鍏叡淇℃伅閰嶇疆</div>
- <div>13.[鏂板]Saber鐭㈤噺鍥炬爣绂荤嚎鍖�</div>
- <div>14.[鏂板]鑿滃崟绠$悊isOpen瀛楁鎺у埗宸︿晶鑿滃崟鏄惁鍙互浣跨敤鏂皌ab鎵撳紑澶栭摼</div>
- <div>15.[鏂板]Mybatis-Plus鐨凱age鍚堝苟宸ュ叿绫�</div>
- <div>16.[浼樺寲]闃块噷浜戠煭淇¤繑鍥炴垚鍔熷垽鏂�昏緫</div>
- <div>17.[浼樺寲]Token杩囨湡鏃堕棿澶勭悊</div>
- <div>18.[浼樺寲]Redis鍔犺浇閫昏緫</div>
- <div>19.[浼樺寲]鐢ㄦ埛鐧诲綍閫昏緫</div>
- <div>20.[浼樺寲]澶氱鎴疯鑹插垱寤洪�昏緫</div>
- <div>21.[浼樺寲]Dockerfile鍔犻�熷瓧浣撴瀯寤�</div>
- <div>22.[浼樺寲]Nacos Shared Config閰嶇疆API鏀逛负鏈�鏂扮増</div>
- <div>23.[浼樺寲]Saber鎺堟潈绫诲瀷瀛楁鏀逛负checkbox</div>
- <div>24.[淇]RequestLog閬囧埌MultipartFile.[]绫诲瀷搴忓垪鍖栨姤閿欑殑闂</div>
- <div>25.[淇]椤剁骇瀛楀吀鏇存柊鍚庢湭鍚屾鏇存柊涓嬪睘瀛楀吀鐨勭紪鍙�</div>
- <div>26.[淇]Saber閫�鍑哄悗鏈埛鏂版祻瑙堝櫒椤堕儴title璺敱鐨勯棶棰�</div>
- <div>27.[淇]鑿滃崟鏈烘瀯妯″潡鍏抽棴缂栬緫鐣岄潰鍐嶆墦寮�鏂板鐣岄潰鏁版嵁娌℃湁娓呯┖鐨勯棶棰�</div>
- </el-collapse-item>
- <el-collapse-item title="2.7.1.RELEASE鍙戝竷锛岄噸鏋勯拤閽夌洃鎺ч�氱煡锛屽崌绾т緷璧栭�傞厤鏈�鏂癆PI" name="20">
- <div>1.[鍗囩骇]SpringBoot 鑷� 2.2.12.RELEASE</div>
- <div>2.[鍗囩骇]SpringCloud 鑷� Hoxton.SR9</div>
- <div>3.[鍗囩骇]Knife4j 鑷� 2.0.8</div>
- <div>4.[鍗囩骇]Druid 鑷� 1.2.4</div>
- <div>5.[鍗囩骇]Seata 鑷� 1.4.1</div>
- <div>6.[鍗囩骇]Jackson 鑷� 2.11.4</div>
- <div>7.[鍗囩骇]Mybatis-Plus 鑷� 3.4.1</div>
- <div>8.[鍗囩骇]Dynamic-Datasource 鑷�3.2.1</div>
- <div>9.[鍗囩骇]Avue 鑷� 2.7.5</div>
- <div>10.[鏂板]Secure妯″潡鍔ㄦ�佺鍚嶈璇佺壒鎬�</div>
- <div>11.[鏂板]Redis搴忓垪鍖栨柟寮忕殑閰嶇疆</div>
- <div>12.[鏂板]鐢ㄦ埛瀵煎叆瀵煎嚭鐨勭敤鎴峰钩鍙板瓧娈�</div>
- <div>13.[淇敼]鏃ュ織璺緞榛樿浼樺厛绾э紝鏀寔閰嶇疆瑕嗙洊</div>
- <div>14.[淇敼]Report妯″潡鍖呰矾寰勶紝鏂板Core鐩綍</div>
- <div>15.[閲嶆瀯]ubcs-admin锛岄拤閽夌洃鎺ч�氱煡瀹炵幇</div>
- <div>16.[浼樺寲]ubcs-admin锛屽鍔犺处鍙峰瘑鐮佺櫥褰�</div>
- <div>17.[浼樺寲]RefreshToken鍒锋柊閫昏緫</div>
- <div>18.[浼樺寲]绉熸埛鏂板閫昏緫锛屼笟鍔″瓧鍏告敮鎸佹棤闄愬眰绾у鍒�</div>
- <div>19.[浼樺寲]Ribbon缁勪欢锛屾敮鎸丗eign璋冪敤閰嶇疆</div>
- <div>20.[淇]娴佺▼鍚嶆悳绱㈠け鏁堢殑闂</div>
- <div>21.[淇]闄勪欢绠$悊绉熸埛闅旂闂</div>
- <div>22.[淇]鏁版嵁鏉冮檺鍒嗛厤妯″潡鐨剆qlserver鍏煎鎬�</div>
- <div>23.[淇]绯荤粺瀛楀吀缂撳瓨鍒锋柊閫昏緫</div>
- <div>24.[淇]Swagger鏂囨。鍑虹幇Locale鍙傛暟鐨勯棶棰�</div>
- <div>25.[鍒犻櫎]spring-cloud-stream渚濊禆锛屾寜闇�寮曞叆</div>
- </el-collapse-item>
- <el-collapse-item title="2.7.0.RELEASE鍙戝竷锛屾洿鏂癏oxton.SR8锛屽叏闈㈠崌绾у簳灞傞┍鍔�" name="19">
- <div>1.[鍗囩骇]SpringBoot 鑷� 2.2.11.RELEASE</div>
- <div>2.[鍗囩骇]SpringCloud 鑷� Hoxton.SR8</div>
- <div>3.[鍗囩骇]AlibabaCloud 鑷� 2.2.3.RELEASE</div>
- <div>4.[鍗囩骇]SpringBootAdmin 鑷� 2.2.4</div>
- <div>5.[鍗囩骇]Knife4j 鑷� 2.0.6</div>
- <div>6.[鍗囩骇]Swagger 鑷� 2.10.5</div>
- <div>7.[鍗囩骇]SwaggerModel 鑷� 1.6.2</div>
- <div>8.[鍗囩骇]SpringPlugin 鑷� 2.2.0.RELEASE</div>
- <div>9.[鍗囩骇]Druid 鑷� 1.2.1</div>
- <div>10.[鍗囩骇]JustAuth 鑷� 1.15.8</div>
- <div>11.[鍗囩骇]Dubbo 鑷� 2.7.8</div>
- <div>12.[鍗囩骇]Guava 鑷� 30.0-jre</div>
- <div>13.[鍗囩骇]Avue 鑷� 2.7.0</div>
- <div>14.[浼樺寲]Swagger灏佽浠ユ敮鎸並nife4j鏈�鏂癆PI</div>
- <div>15.[浼樺寲]寮曞叆Knife4j澧炲己閰嶇疆,鐢熶骇鐜灏嗗畬鍏ㄩ殧绂绘枃妗h闂�</div>
- <div>16.[淇]鏈紩鍏ョ鎴锋彃浠跺悗,鑷畾涔夌被绌烘寚閽堢殑闂</div>
- <div>17.[鍒犻櫎]Zipkin妯″潡,鎺ㄨ崘浣跨敤瀹樻柟鐙珛妯″紡杩愯鏈嶅姟</div>
- </el-collapse-item>
- <el-collapse-item title="2.6.1.RELEASE鍙戝竷锛屽鍔犲叏灞�涓婁笅鏂囩郴缁燂紝澧炲姞鐢ㄦ埛骞冲彴鎷撳睍妯″潡" name="18">
- <div>1.[鍗囩骇]SpringBoot 鑷� 2.1.17.RELEASE</div>
- <div>2.[鍗囩骇]Mybatis-Plus 鑷� 3.4.0</div>
- <div>3.[鍗囩骇]Knife4j 鑷� 2.0.5</div>
- <div>4.[鍗囩骇]JJWT 鑷� 0.11.2</div>
- <div>5.[鍗囩骇]FastJson 鑷� 1.2.74</div>
- <div>6.[鏂板]涓婁笅鏂囨牳蹇冨寘锛屼紭鍖栧叏灞�涓婁笅鏂囬厤缃�</div>
- <div>7.[鏂板]secure妯″潡鐨刡asic璁よ瘉鍔熻兘</div>
- <div>8.[鏂板]鐢ㄦ埛骞冲彴鎷撳睍妯″潡</div>
- <div>9.[浼樺寲]閲嶆瀯澧炲己cloud妯″潡</div>
- <div>10.[浼樺寲]request鏍稿績鑷砨oot妯″潡</div>
- <div>11.[浼樺寲]澧炲己mybatis-plus鐨勫垎椤甸槻娉ㄥ叆鍔熻兘</div>
- <div>12.[浼樺寲]sms杩斿洖缁撴灉锛屽幓鎺夐獙璇佺爜搴忓垪鍖�</div>
- <div>13.[浼樺寲]鏁版嵁鏉冮檺鎻掍欢鏀寔鏈�鏂扮増mybatis-plus</div>
- <div>14.[浼樺寲]澧炲己sql鏃ュ織鎷︽埅鍣�</div>
- <div>15.[浼樺寲]澧炲己浠ょ墝锛屾柊澧炲鐢ㄦ埛骞冲彴鐨勫垽鏂�昏緫</div>
- <div>16.[浼樺寲]浠g爜鐢熸垚澧炲姞瀵箂qlserver鐨勬敮鎸�</div>
- <div>17.[浼樺寲]鑷畾涔塵apper鐨刟pi</div>
- <div>18.[淇]Kv绫诲厠闅嗗己杞棶棰�</div>
- <div>19.[淇]elk閰嶇疆鏃犳硶璇诲彇椤圭洰鍚嶇殑闂</div>
- <div>20.[淇]鍖哄垝瀛楁level涓簉egionLevel浠ラ槻oracle鎶ラ敊</div>
- </el-collapse-item>
- <el-collapse-item title="2.6.0.RELEASE鍙戝竷锛岀鎴锋暟鎹簱闅旂銆佹姤琛ㄧ鐞嗐�丼qlServer鍏煎" name="17">
- <div>1.[鍗囩骇]Avue 鑷� 2.6.15</div>
- <div>2.[鍗囩骇]SpringBoot 鑷� 2.1.16.RELEASE</div>
- <div>3.[鍗囩骇]Seata 鑷� 1.3.0</div>
- <div>4.[鍗囩骇]Nacos 鑷� 1.3.2</div>
- <div>5.[鍗囩骇]FastJson 鑷� 1.2.73</div>
- <div>6.[鍗囩骇]Knife4j 鑷� 2.0.4</div>
- <div>7.[鍗囩骇]EasyExcel 鑷� 2.2.6</div>
- <div>8.[鍗囩骇]JustAuth 鑷� 1.15.6</div>
- <div>9.[鏂板]澶氱鎴锋暟鎹簱闅旂銆佸姩鎬佹暟鎹簮鐗规��</div>
- <div>10.[鏂板]SqlServer鍏煎</div>
- <div>11.[鏂板]UReport2鎶ヨ〃绠$悊妯″潡</div>
- <div>12.[鏂板]瀵硅薄瀛樺偍闄勪欢琛ㄥ姛鑳�</div>
- <div>13.[浼樺寲]LocalFile鏀寔搴忓垪鍖�</div>
- <div>14.[浼樺寲]MinioTemplate澧炲姞ContentType閰嶇疆</div>
- <div>15.[浼樺寲]LogBack-Elk鐨勯厤缃�</div>
- <div>16.[浼樺寲]娴佺▼鐘舵�佸彉鏇寸殑杩斿洖淇℃伅</div>
- <div>17.[浼樺寲]椤堕儴鑿滃崟閰嶇疆鎺ュ彛锛屾敮鎸佸ぇ瀹归噺鏁版嵁浼犺緭</div>
- <div>18.[浼樺寲]User瀵嗙爜瀛楁搴忓垪鍖�</div>
- <div>19.[浼樺寲]搴忓垪鍖朼dditionalInformation锛岃В鍐抽潪null鍊兼姤閿欑殑闂</div>
- <div>20.[淇]鍚敤Token鏈夌姸鎬佹ā寮忎笅鍒锋柊Token鐨勯棶棰�</div>
- <div>21.[淇]鏃ュ織琛ㄦ棤娉曞叆搴揟enantId鐨勯棶棰�</div>
- <div>22.[淇]flowable-oracle鑴氭湰杩愯閿欒鐨勯棶棰�</div>
- </el-collapse-item>
- <el-collapse-item title="2.5.1.RELEASE鍙戝竷锛屽鍔犵涓夋柟鐧诲綍銆佽鏀垮尯鍒掋�丄PI鎶ユ枃鍔犲瘑" name="16">
- <div>1.[鍗囩骇]Avue 鑷� 2.6.1銆丒lementUI 鑷� 2.13.2</div>
- <div>2.[鍗囩骇]SpringBoot 鑷� 2.1.14.RELEASE</div>
- <div>3.[鍗囩骇]SpringCloud 鑷� Greenwich.SR6</div>
- <div>4.[鍗囩骇]SpringCloud Alibaba 鑷� 2.1.2.RELEASE</div>
- <div>5.[鍗囩骇]Seata 鑷� 1.2.0</div>
- <div>6.[鍗囩骇]FastJson 鑷� 1.2.70</div>
- <div>7.[鍗囩骇]Knife4j 鑷� 2.0.3</div>
- <div>8.[鍗囩骇]MybatisPlus 鑷�3.3.2</div>
- <div>9.[鍗囩骇]EasyExcel 鑷� 2.2.4</div>
- <div>10.[鏂板]绗笁鏂圭郴缁熺櫥褰曪紝闆嗘垚鎷撳睍JustAuth</div>
- <div>11.[鏂板]琛屾斂鍖哄垝鍔熻兘妯″潡</div>
- <div>12.[鏂板]API鎶ユ枃鍔犲瘑宸ュ叿</div>
- <div>13.[鏂板]Token閰嶇疆锛屾敮鎸佹湁鐘舵�佹ā寮忥紝鏀寔涓�浜哄湪绾挎垨澶氫汉鍦ㄧ嚎</div>
- <div>14.[鏂板]Secure閰嶇疆锛屾敮鎸侀厤缃姹傛柟娉曠被鍨嬨�佽姹傝矾寰勩�佽姹傝〃杈惧紡鍖归厤</div>
- <div>15.[鏂板]Jackson閰嶇疆锛屾敮鎸佸ぇ鏁板瓧杞瓧绗︿覆妯″紡锛屾敮鎸乶ull杞┖鍊兼ā寮�</div>
- <div>16.[鏂板]绉熸埛璐﹀彿鎺堟潈鐮佷繚鎶ゆ満鍒讹紝闃叉绉佹湁閮ㄧ讲瀹㈡埛绡℃敼鏁版嵁搴撹秺鏉�</div>
- <div>17.[浼樺寲]瀛楀吀妯″潡锛屽鍔犳爲褰㈢粨鏋�</div>
- <div>18.[浼樺寲]鏂板绉熸埛閫昏緫锛屾柊澧炴椂鍚屾瓒呯閰嶇疆鐨勯粯璁や笟鍔″瓧鍏告暟鎹�</div>
- <div>19.[浼樺寲]鐢ㄦ埛瀵煎叆閫昏緫锛屽彧鏈夎秴绠℃墠鍙互瀹氫箟绉熸埛缂栧彿</div>
- <div>20.[浼樺寲]閮ㄩ棬鍒楄〃閫昏緫锛岄潪瓒呯瑙掕壊鍙彲鐪嬪埌鏈骇鍙婁互涓嬮儴闂ㄦ暟鎹�</div>
- <div>21.[浼樺寲]瀛楀吀妯″潡锛屽鍔犳灇涓剧被锛岀粺涓�鍏ュ彛</div>
- <div>22.[浼樺寲]DictCache缂撳瓨鍔犺浇閫昏緫</div>
- <div>23.[浼樺寲]绉熸埛缂撳瓨鍒锋柊閫昏緫</div>
- <div>24.[浼樺寲]瑙掕壊閰嶇疆閫昏緫锛屽悓姝ュ彇娑堝瓙瑙掕壊瀵瑰簲鐨勮彍鍗曟潈闄�</div>
- <div>25.[浼樺寲]椤堕儴鑿滃崟锛屽鍔犳帓搴忓姛鑳�</div>
- <div>26.[浼樺寲]INode锛屾敮鎸佹硾鍨�</div>
- <div>27.[浼樺寲]浠g爜缁撴瀯锛屼负bean缁熶竴鍔犱笂final鍏抽敭瀛椾慨楗�</div>
- <div>28.[浼樺寲]Nacos鍔ㄦ�佸埛鏂伴厤缃�</div>
- <div>29.[浼樺寲]Dockerfile锛岄噰鐢∣penj9鍩虹闀滃儚锛屽ぇ骞呭害闄嶄綆鍐呭瓨鍗犵敤</div>
- <div>30.[浼樺寲]宸ョ▼鍚姩閫昏緫锛屽叧闂璅lowable鑷姩寤鸿〃鍔熻兘锛岄渶瑕佹墜鍔ㄥ鍏ユ祦绋媠ql</div>
- <div>31.[淇]SpringBootAdmin璇诲彇actuator璺緞閰嶇疆</div>
- <div>32.[淇]鐢ㄦ埛瀵煎叆閫昏緫锛屼慨姝e瘑鐮佸姞瀵嗚鍒�</div>
- <div>33.[淇]Boot鐗堟湰Xss榛樿閰嶇疆璺緞</div>
- </el-collapse-item>
- <el-collapse-item title="2.5.0.RELEASE鍙戝竷锛屽鍔犲矖浣嶇鐞嗭紝澧炲姞鐢ㄦ埛瀵煎叆瀵煎嚭" name="15">
- <div>1.[鍗囩骇]Avue 鑷� 2.5.0</div>
- <div>2.[鍗囩骇]SpringBoot 鑷� 2.1.13</div>
- <div>3.[鍗囩骇]FastJson 鑷� 1.2.68</div>
- <div>4.[鍗囩骇]Druid 鑷� 1.1.22</div>
- <div>5.[鍗囩骇]Knife4j 鑷� 2.0.2</div>
- <div>6.[鍗囩骇]Taobao-Sdk 鑷� 20200415</div>
- <div>7.[鍗囩骇]docker-maven-plugin 鑷� dockerfile-maven-plugin</div>
- <div>8.[鏂板]楠岃瘉鐮佸紑鍏�</div>
- <div>9.[鏂板]鏁版嵁鏉冮檺鍏ㄥ眬寮�鍏�</div>
- <div>10.[鏂板]宀椾綅绠$悊妯″潡</div>
- <div>11.[鏂板]鐢ㄦ埛Excel瀵煎叆瀵煎嚭鍔熻兘</div>
- <div>12.[鏂板]鐢ㄦ埛缁戝畾宀椾綅鍔熻兘</div>
- <div>13.[鏂板]EasyExcel灏佽宸ュ叿ExcelUtil</div>
- <div>14.[鏂板]Feign鍐呴儴绾跨▼浼犻��</div>
- <div>15.[鏂板]Mybatis-Plus閰嶇疆锛屾敮鎸侀厤缃渶澶у垎椤垫暟</div>
- <div>16.[鏂板]Gateway鍦ㄥ鍥㈤槦鍗忎綔妯″紡鐏垫椿鎸囧悜鏈湴鏈嶅姟鐨勯厤缃�</div>
- <div>17.[鏂板]Sms妯″潡鐨剆endMessage鎺ュ彛鍙奡msResponse鍝嶅簲绫�</div>
- <div>18.[鏂板]CacheUtil绉熸埛缂撳瓨闅旂鍔熻兘</div>
- <div>19.[浼樺寲]CacheUtil缂撳瓨閲嶈浇閫昏緫锛岃繑鍥瀊ean涓嶄负null浣嗘暟鎹叏涓虹┖灏嗕笉鍏ョ紦瀛�</div>
- <div>20.[浼樺寲]缂撳瓨娓呴櫎閫昏緫锛孈CacheEvict缁熶竴淇敼涓篊acheUtil.clear</div>
- <div>21.[浼樺寲]鐧诲綍閫昏緫锛屽墠绔瀵嗙爜鍔犲瘑鍚庡啀浼犻�掕嚦閴存潈鎺ュ彛</div>
- <div>22.[浼樺寲]Oss涓婁紶鎺ュ彛锛岃繑鍥瀌omain瀛楁</div>
- <div>23.[浼樺寲]BladeRedisCache鍛藉悕涓築ladeRedis</div>
- <div>24.[浼樺寲]鎺у埗鍙版棩蹇楁墦鍗板姛鑳斤紝瑙勯伩MultipartFile璇诲彇鎶ラ敊</div>
- <div>25.[浼樺寲]閰嶇疆鍏抽敭瀛梕nable缁熶竴涓篹nabled</div>
- <div>26.[浼樺寲]keyword鏃ユ湡澶勭悊</div>
- <div>27.[浼樺寲]浠g爜鐢熸垚sql鑴氭湰榛樿鍦ㄥ伐浣滃彴鑿滃崟涓�</div>
- <div>28.[浼樺寲]Jwt鑾峰彇Token閫昏緫</div>
- <div>29.[浼樺寲]Token杩斿洖锛屽鍔犲矖浣岻D</div>
- <div>30.[浼樺寲]TokenGranter锛岄噰鐢ㄦ洿绠�娲佺殑鎷撳睍鏂瑰紡</div>
- <div>31.[浼樺寲]鏃ュ織绠$悊灞曠幇鏂瑰紡</div>
- <div>32.[浼樺寲]鏂板缓绉熸埛閫昏緫锛屽鍔犲弬鏁拌鍙栨潵璁剧疆鏂板缓绉熸埛鐨勯厤缃�</div>
- <div>33.[浼樺寲]娴佺▼绛炬敹鎺ュ彛锛屾敮鎸佸瑙掕壊鎿嶄綔</div>
- <div>34.[浼樺寲]鍔ㄦ�佺綉鍏筹紝鏀寔璇诲彇鑷畾涔塶amespace閰嶇疆</div>
- <div>35.[浼樺寲]鍒犻櫎绉熸埛閫昏緫锛屽悓鏃跺垹闄ゅ搴旂殑鐢ㄦ埛</div>
- <div>36.[浼樺寲]鏍戝舰鎳掑姞杞斤紝鏀寔灞�閮ㄥ疄鏃跺埛鏂板姛鑳�</div>
- <div>37.[浼樺寲]澶氱鎴锋彃浠舵柊澧炰慨鏀归�昏緫锛岃嫢鎸囧畾tenantId涓虹┖鍒欎笉杩涜鎿嶄綔</div>
- <div>38.[浼樺寲]SmsBuilder銆丱ssBuilder</div>
- <div>39.[浼樺寲]Sentinel閰嶇疆</div>
- <div>40.[浼樺寲]XssFilter涓哄叏灞�鐨凚ladeRequestFilte</div>
- <div>41.[浼樺寲]BladeX寮�鍙戞墜鍐孡inux閮ㄧ讲绔犺妭璁茶В</div>
- <div>42.[浼樺寲]Saber鐩稿叧閰嶇疆锛屼互閫傞厤Avue鏈�鏂扮増API</div>
- <div>43.[浼樺寲]Saber鐩稿叧閰嶇疆鍐卍one涓巐oading鐨勯『搴�</div>
- <div>44.[淇]鐢ㄦ埛鍩烘湰淇℃伅淇敼鐨刡ug</div>
- <div>45.[淇]QiniuTemplate鐨刾utFile寰幆璋冪敤鐨刡ug</div>
- <div>46.[淇]鏃ュ織妗嗘灦鑾峰彇RequestBody涓虹┖鐨刡ug</div>
- <div>47.[淇]Saber缁勪欢琚鐢ㄥ鑷存病鏈夊埛鏂扮殑bug</div>
- <div>48.[鍒犻櫎]杩囨椂鐨凚ladeSecureUrlProperties</div>
- <div>49.[鍒犻櫎]杩囨椂鐨刋ssUrlProperties</div>
- <div>50.[鍒犻櫎]杩囨椂鐨凴edisUtil</div>
- </el-collapse-item>
- <el-collapse-item title="2.4.0.RELEASE鍙戝竷锛屽鍔犲绉熸埛鐭俊鏈嶅姟锛屽崌绾eata1.1" name="14">
- <div>1.[鏂板]闆嗘垚涓冪墰銆侀樋閲屼簯銆佽吘璁簯銆佷簯鐗囩瓑鐭俊鏈嶅姟锛屾敮鎸佸绉熸埛閰嶇疆</div>
- <div>2.[鏂板]瀵硅薄瀛樺偍妯″潡鐨勮祫婧愮紪鍙峰瓧娈碉紝鍙牴鎹紪鍙锋寚瀹歰ss閰嶇疆鐨勬湇鍔�</div>
- <div>3.[鏂板]瀵硅薄瀛樺偍銆佺煭淇¢厤缃ā鍧楃殑璋冭瘯鍔熻兘锛屽彲鍦ㄧ嚎璋冭瘯閰嶇疆鏄惁鍙敤</div>
- <div>4.[鏂板]瓒呯鍚敤绉熸埛杩囨护鐨勯厤缃�</div>
- <div>5.[鍗囩骇]SpringBoot 2.1.12锛孲pringCloud SR5</div>
- <div>6.[鍗囩骇]鍏煎 Seata 1.1</div>
- <div>7.[浼樺寲]瀵硅薄瀛樺偍鐨勬ā鍧椾娇鐢ㄤ綋楠�</div>
- <div>8.[浼樺寲]鍏煎Oracle妯$硦鏌ヨ鐨勫啓娉�</div>
- <div>9.[浼樺寲]瓒呯鏉冮檺锛屼笉鍙楃鎴疯繃鏈熸椂闂村奖鍝�</div>
- <div>10.[浼樺寲]mybatis-plus鐩稿叧杩囨湡娉ㄨВ</div>
- <div>11.[浼樺寲]xxl-job妯″潡鐨勯厤缃枃浠�</div>
- <div>12.[浼樺寲]INode鏀寔搴忓垪鍖栨帴鍙�</div>
- <div>13.[浼樺寲]缁熶竴Oss妯″潡鍛藉悕</div>
- <div>14.[浼樺寲]閮ㄧ讲鑴氭湰锛屽崌绾х浉鍏崇増鏈�</div>
- <div>15.[淇]鏁版嵁鏉冮檺閮ㄩ棬杩囨护宸插垹闄ゅ璞�</div>
- <div>16.[淇]涓氬姟瀛楀吀缂撳瓨bug锛屽鍔犵鎴疯繃婊�</div>
- <div>17.[淇]鍗犱綅绗﹁В鏋愬櫒鐨刡ug</div>
- </el-collapse-item>
- <el-collapse-item title="2.3.1.RELEASE鍙戝竷锛屾祦绋嬪鍔犵鎴峰畾鍒讹紝鐧诲綍澧炲姞楠岃瘉鐮�" name="13">
- <div>1.[鏂板]鐧诲綍楠岃瘉鐮佸姛鑳�</div>
- <div>2.[鏂板]Oauth2鑷畾涔塗okenGranter</div>
- <div>3.[鏂板]宸ヤ綔娴佺粦瀹氱鎴峰姛鑳斤紝鏀寔閫氱敤娴佺▼鍜屽畾鍒舵祦绋�</div>
- <div>4.[鏂板]Condition绫荤殑鑷畾涔夊弬鏁版帓闄ゅ叆鍙�</div>
- <div>5.[澧炲己]绉熸埛鎻掍欢鍔熻兘锛屾柊澧炴搷浣滃彲鏍规嵁鑷畾涔夌殑tenantId鍊艰繘琛岃鐩�</div>
- <div>6.[澧炲己]瓒呯鏉冮檺锛屼笉鍙楁暟鎹潈闄愭彃浠跺奖鍝�</div>
- <div>7.[鍗囩骇]mybatis-plus鑷�3.3.1</div>
- <div>8.[浼樺寲]mybatis-plus灏佽锛屾彁鍗囧垎椤靛彲鎷撳睍鎬�</div>
- <div>9.[浼樺寲]lib鍒嗙鎵撳寘閫昏緫</div>
- <div>10.[浼樺寲]CacheUtil鍒濆鍖栭�昏緫</div>
- <div>11.[浼樺寲]HttpUtil锛岄噰鐢ㄦ渶鏂板皝瑁呴�昏緫</div>
- <div>12.[浼樺寲]瑙掕壊淇℃伅鑾峰彇閫昏緫涓哄疄鏃讹紝涓嶅彈寮�婧愮増銆佸崟浣撶増缂撳瓨褰卞搷</div>
- <div>13.[浼樺寲]鏃ュ織鎵撳嵃宸ュ叿鍒ゆ柇绌洪�昏緫</div>
- <div>14.[淇]BeanUtil鐨刢lass绫诲瀷鍒ゆ柇閫昏緫</div>
- <div>15.[鍒犻櫎]鍩轰簬zookeeper浣撻獙涓嶄匠鐨勫垎甯冨紡閿�</div>
- </el-collapse-item>
- <el-collapse-item title="2.3.0.RELEASE鍙戝竷锛岀鎴峰寮猴紝搴曞眰鏋舵瀯鎻掍欢鍏ㄩ潰澧炲己" name="12">
- <div>1.[鏂板]swagger-bootstrap-ui鍏ㄦ柊鍗囩骇涓簁nife4j</div>
- <div>2.[鏂板]saber鍗囩骇鑷砤vue2.3.7鐗堟湰</div>
- <div>3.[鏂板]saber鏍戣〃鎳掑姞杞芥ā寮�</div>
- <div>4.[鏂板]鑵捐浜戝瓨鍌ㄥ皝瑁�</div>
- <div>5.[鏂板]xxl-job闆嗘垚锛屾敮鎸佸垎甯冨紡浠诲姟璋冨害</div>
- <div>6.[鏂板]kafka銆乺abbitmq銆乧loudstream闆嗘垚</div>
- <div>7.[鏂板]redis鍒嗗竷寮忛攣鎻掍欢</div>
- <div>8.[鏂板]楂樻�ц兘http璋冪敤妯″潡</div>
- <div>9.[鏂板]PropertySource娉ㄥ唽閫昏緫锛屾彁楂樺畨鍏ㄦ��</div>
- <div>10.[鏂板]Param鍙傛暟缂撳瓨宸ュ叿绫�</div>
- <div>11.[鏂板]绉熸埛鎿嶄綔锛屽鍔犲垱寤哄搴旂殑绉熸埛绠$悊鍛樿处鍙枫�佽彍鍗曟潈闄�</div>
- <div>12.[鏂板]绉熸埛鎻掍欢锛岃秴绠″彲鏌ョ湅鎵�鏈夌鎴锋暟鎹殑閫昏緫</div>
- <div>13.[鏂板]绉熸埛鍔熻兘锛岀粦瀹氬煙鍚嶃�佺郴缁熻儗鏅�佽处鍙烽搴︺�佽繃鏈熸椂闂�</div>
- <div>14.[鏂板]鐧诲綍銆佸垱寤虹敤鎴锋搷浣滅粦瀹氱鎴烽厤缃�</div>
- <div>15.[浼樺寲]绉熸埛鎻掍欢鍒ゆ柇閫昏緫锛屽鍔爁lowable鐩稿叧琛ㄧ殑绉熸埛杩囨护鎺掗櫎</div>
- <div>16.[浼樺寲]xss杩囨护閫昏緫锛屾彁楂樻�ц兘</div>
- <div>17.[浼樺寲]鏈湴鏂囦欢涓婁紶閫昏緫</div>
- <div>18.[浼樺寲]oss閰嶇疆锛屼慨鏀瑰悗鍙婃椂鐢熸晥鏃犻渶鐐瑰嚮鍚敤</div>
- <div>19.[浼樺寲]璇锋眰鏃ュ織灞曠ず鍔熻兘</div>
- <div>20.[淇]鍓嶇鍏抽棴绉熸埛妯″紡瀵艰嚧鐨勬柊澧炵敤鎴峰け鏁堥棶棰�</div>
- <div>21.[淇]OSS鐩稿叧bucket鍛藉悕鐨勯棶棰�</div>
- <div>22.[淇]ribbon缁勪欢鐢遍檷绾у紩璧风殑闂</div>
- </el-collapse-item>
- <el-collapse-item title="2.2.2.RELEASE鍙戝竷锛屽寮哄瓧鍏哥鐞嗭紝鐢ㄦ埛绠$悊澧炲姞宸︽爲鍙宠〃" name="11">
- <div>1.[浼樺寲]鎷嗗垎鍑虹郴缁熷瓧鍏歌〃涓庝笟鍔″瓧鍏歌〃锛屽瓧鍏搁敭鍊兼敼涓簊tring绫诲瀷</div>
- <div>2.[浼樺寲]鐢ㄦ埛绠$悊澧炲姞宸︽爲鍙宠〃鍔熻兘</div>
- <div>3.[浼樺寲]绉熸埛鏂板澧炲姞绉熸埛榛樿绫诲瀷</div>
- <div>4.[浼樺寲]澶氱鎴疯〃瀵瑰簲瀹炰綋缁ф壙TenantEntity</div>
- <div>5.[浼樺寲]鐢ㄤ簬鏈湴涓婁紶鐨凚ladeFile绫绘洿鍚嶄负LocalFile闃叉鍐茬獊</div>
- <div>6.[浼樺寲]鑿滃崟鏂板閫昏緫</div>
- <div>7.[浼樺寲]mybatis-plus榛樿閰嶇疆鐨勫鐞�</div>
- <div>8.[浼樺寲]绉熸埛杩囨护鍒ゆ柇閫昏緫锛屽垹闄ゅ浣欑殑绫�</div>
- <div>9.[浼樺寲]alioss鐢熸垚鍦板潃鐨勯�昏緫</div>
- <div>10.[浼樺寲]redisTemplate鍔犺浇閫昏緫</div>
- <div>11.[浼樺寲]绉熸埛澶勭悊锛岀畝鍖栭厤缃紝鑷姩璇嗗埆闇�瑕佽繃婊ょ殑绉熸埛琛�</div>
- <div>12.[浼樺寲]鏁版嵁鏉冮檺琛ㄥ崟鐢ㄦ埛浣撻獙</div>
- <div>13.[淇]鏁版嵁鏉冮檺鎻掍欢涓嶅吋瀹圭殑闂</div>
- <div>14.[淇]鏁版嵁鏉冮檺鏍戝嬀閫夋樉绀洪棶棰�</div>
- <div>15.[淇]windows骞冲彴elk寮�鍏冲け鏁堢殑闂</div>
- <div>16.[淇]绉熸埛bean鍔犺浇閫昏緫</div>
- <div>17.[淇]saber浠g爜鐢熸垚椹煎嘲璺緞瀵艰嚧鐨勯棶棰�</div>
- <div>18.[淇]docker鑴氭湰nginx绔彛鍖归厤闂</div>
- <div>19.[淇]鏈烘瀯妯″潡鎻愪氦鏈垹闄ょ紦瀛樼殑闂</div>
- <div>20.[淇]oss缂撳瓨鑾峰彇鏈姞绉熸埛鍒ゆ柇鐨勯棶棰�</div>
- <div>21.[淇]ubcs-auth鍦╦ava11涓嬫棤娉曡繍琛岀殑闂</div>
- </el-collapse-item>
- <el-collapse-item title="2.2.1.RELEASE鍙戝竷锛岄泦鎴怑LK锛屽鍔犲垎甯冨紡鏃ュ織杩借釜" name="10">
- <div>1.[鏂板]闆嗘垚鏈�鏂扮増ELK锛屽鍔犲垎甯冨紡鏃ュ織杩借釜鍔熻兘</div>
- <div>2.[鏂板]澧炲姞ELK涓�閿儴缃瞕ocker鑴氭湰</div>
- <div>3.[鏂板]鎶借薄灏佽鏃ュ織绠$悊閫昏緫</div>
- <div>4.[鏂板]BladeX-Biz澧炲姞easypoi鐨刣emo宸ョ▼</div>
- <div>5.[鏂板]BladeX-Biz澧炲姞websocket鐨刣emo宸ョ▼</div>
- <div>6.[浼樺寲]minio鏂囦欢绛栫暐</div>
- <div>7.[鏂板]Sql鏉′欢鏋勫缓绫诲幓闄ゅ垎椤靛瓧娈�</div>
- <div>8.[浼樺寲]sql鎵撳嵃鍔熻兘</div>
- <div>9.[浼樺寲]wrapper閫昏緫</div>
- <div>10.[鏂板]CommonConstant鎷嗗垎鍑篖auncherConstant</div>
- </el-collapse-item>
- <el-collapse-item title="2.2.0.RELEASE鍙戝竷锛屽鍔犻泦缇ょ洃鎺э紝閾捐矾杩借釜" name="9">
- <div>1.[鏂板]turbine闆嗙兢鐩戞帶鏈嶅姟</div>
- <div>2.[鏂板]zipkin鍒嗗竷寮忛摼璺拷韪�</div>
- <div>3.[鍗囩骇]seata鐗堟湰鑷�0.9.0锛岃В鍐冲垎甯冨紡浜嬪姟閬囧埌鐨刡ug</div>
- <div>4.[鏂板]Launcher鐨刵acos閰嶇疆鏀逛负sharedIds锛屾彁鍗囧瓙宸ョ▼閰嶇疆浼樺厛绾�</div>
- <div>5.[鏂板]澧炲姞changeStatus鏂规硶锛屾柟渚夸慨鏀逛笟鍔$姸鎬佸瓧娈�</div>
- <div>6.[鏂板]saber浠g爜妯℃澘澧炲姞鍒锋柊浜嬩欢</div>
- <div>7.[鏂板]saber搴曞眰鏋舵瀯鍗囩骇</div>
- <div>8.[鏂板]saber鏀寔tab鍒囨崲淇濆瓨椤甸潰鐘舵��</div>
- <div>9.[鏂板]娣诲姞bom缁熶竴鐗堟湰閰嶇疆</div>
- <div>10.[鏂板]娣诲姞trace starter</div>
- <div>11.[鏂板]ubcs-admin鎺掗櫎seata鏈嶅姟</div>
- <div>12.[鏂板]oss鏁忔劅鎿嶄綔澧炲姞鏉冮檺鏍¢獙</div>
- <div>13.[鏂板][淇]dict銆乺ole涓嶉�夋嫨鐖惰妭鐐规姤閿�</div>
- <div>14.[鏂板]鍔ㄦ�佺綉鍏宠缃惎鍔ㄥ姞杞�</div>
- <div>15.[鏂板]瀛楀吀澧炲姞灏佸瓨鍔熻兘</div>
- </el-collapse-item>
- <el-collapse-item title="2.1.0.RELEASE鍙戝竷锛屽叏闈㈠寮哄簳灞傞┍鍔�" name="8">
- <div>1.[鍗囩骇]springboot 2.1.8銆乻pringcloud greenwich sr3</div>
- <div>2.[鏂板]闆嗘垚seata锛屾彁渚涙渶绠�闆嗘垚鏂规</div>
- <div>3.[鏂板]ubcs-admin澧炲姞nacos鍔ㄦ�佺洃鍚�</div>
- <div>4.[鏂板]澧炲姞alioss闆嗘垚锛屽己鍖杘ss杩斿洖淇℃伅</div>
- <div>5.[鏂板]鑾峰彇浠ょ墝鎿嶄綔澧炲姞绌哄垽鏂�</div>
- <div>6.[鏂板]鎷嗗垎鏁版嵁搴撲緷璧栥�佸寮簃ybatis銆佸鍔爕ml鑷畾涔夐厤缃鍙�</div>
- <div>7.[鏂板]鍚勬ā鍧楀鍔犻粯璁ょ殑yml閰嶇疆锛屼笉鍗犵敤application.yml</div>
- <div>8.[鏂板]澧炲姞ribbon缁勪欢锛屽彲鑷畾涔塴b浼樺厛閫夋嫨鐨刬p娈碉紝瑙e喅鍥㈤槦缃戝叧璋冭瘯闇�姹�</div>
- <div>9.[浼樺寲]feign鐨刡ean鍔犺浇閫昏緫</div>
- <div>10.[澧炲己]condition鏉′欢</div>
- <div>11.[浼樺寲]鏃ュ織鎵撳嵃鏁堟灉</div>
- <div>12.[閲嶆瀯]redis妯″潡锛屽鍔爎edis闄愭祦鍔熻兘</div>
- <div>13.[浼樺寲]beanutil鎬ц兘</div>
- <div>14.[浼樺寲]鍘绘帀璋冭瘯鐢ㄧ殑RouteEndpoint锛屽寮哄畨鍏ㄦ��</div>
- <div>15.[浼樺寲]閮ㄩ棬鏂板閫昏緫</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.7.RELEASE鍙戝竷锛屽鍔犵綉鍏抽壌鏉冿紝寮哄寲浠g爜鐢熸垚" name="7">
- <div>1.[鏂板]澧炲姞鍩轰簬Nacos鐨勫姩鎬佺綉鍏抽壌鏉�</div>
- <div>2.[鏂板]浠g爜鐢熸垚澧炲姞澶氭暟鎹簮閫夋嫨锛屽己鍖栧崟琛ㄤ唬鐮佺敓鎴�</div>
- <div>3.[鏂板]澧炲姞涓汉淇℃伅淇敼銆佸ご鍍忎笂浼犮�佸瘑鐮佹洿鏂板姛鑳�</div>
- <div>4.[浼樺寲]鏂板缓瑙掕壊閫昏緫</div>
- <div>5.[淇]鑻ュ共issue</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.6.RELEASE鍙戝竷锛屽吋瀹逛笁澶т富娴佹暟鎹簱" name="6">
- <div>1.[鏂板]涓�濂椾唬鐮佸吋瀹筂ysql銆丱racle銆丳ostgreSQL涓夊ぇ涓绘祦鏁版嵁搴�</div>
- <div>2.[鍗囩骇]flowable 6.4.2</div>
- <div>3.[鏂板]瓒呯榛樿鎷ユ湁鎵�鏈夎彍鍗曟潈闄�</div>
- <div>4.[淇]鏉冮檺閰嶇疆鏁版嵁闀垮害杩囧ぇ鐨刡ug</div>
- <div>5.[鏂板]澧炲姞绉熸埛淇℃伅鑾峰彇</div>
- <div>6.[浼樺寲]鍛戒护琛屽惎鍔ㄩ『搴�</div>
- <div>7.[鍗囩骇]alibaba cloud姣曚笟鐗堟湰</div>
- <div>8.[鏂板]鏃ュ織鐩戝惉澧炲姞鑷畾涔夐厤缃�</div>
- <div>9.[鍗囩骇]swagger-bootstrap-ui鐗堟湰</div>
- <div>10.[鏂板]saber琛ㄦ牸鑷�傚簲銆佸鍔爈oading</div>
- <div>11.[鏂板]saber閫氱煡鍏憡妯″潡澧炲姞瀵屾枃鏈紪杈戝櫒</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.5.RELEASE鍙戝竷锛屽崌绾у垎甯冨紡鎺ュ彛鏉冮檺绯荤粺" name="5">
- <div>1.[鍗囩骇]涓哄垎甯冨紡鎺ュ彛鏉冮檺绯荤粺</div>
- <div>2.[鏂板]澧炲姞澶氱鎴疯嚜瀹氫箟椤堕儴鑿滃崟鍔熻兘</div>
- <div>3.[鍗囩骇]greenwich SR2锛宮ybatis-plus 3.1.2</div>
- <div>4.[鏂板]swagger鎺掑簭瑙勫垯閲囩敤鏈�鏂版敞瑙�</div>
- <div>5.[鏂板]鏁版嵁鏉冮檺澧炲姞鍙瀛楁閰嶇疆</div>
- <div>6.[鏂板]鏁版嵁鏉冮檺澧炲姞鍒嗗竷寮忔湇鍔℃敮鎸�</div>
- <div>7.[鏂板]澧炲姞杩滅▼璋冪敤鍒嗛〉鐨勪緥瀛愶紝瑙e喅mybatis-plus浼犻�扞Page鍙嶅簭鍖栧嚭鐜扮殑bug</div>
- <div>8.[浼樺寲]绉熸埛鎺ュ彛鏉冮檺瑙勫垯</div>
- <div>9.[鏂板]SqlKeyword澧炲姞鏉′欢鍒ゆ柇</div>
- <div>10.[淇]閮ㄥ垎妯″潡鍖呭悕鍒嗗眰鐨勯棶棰�</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.4.RELEASE鍙戝竷锛屽鍔犲姩鎬佹暟鎹潈闄愮郴缁�" name="4">
- <div>1.[鏂板]娉ㄨВ+web鍙鍖栭厤缃殑鍔ㄦ�佹暟鎹潈闄愮郴缁�</div>
- <div>2.[鍗囩骇]閮ㄩ棬绠$悊涓烘満鏋勭鐞嗭紝澧炲姞鏈烘瀯绫诲瀷</div>
- <div>3.[鏂板]瑙e喅mybatis-plus鎺掑簭瀛楁鐨剆ql娉ㄥ叆闂</div>
- <div>4.[鏂板]create_dept缁熶竴涓氬姟瀛楁</div>
- <div>5.[鏂板]swagger ui椤甸潰璁剧疆Authorize 榛樿鍏ㄥ眬鍙傛暟</div>
- <div>6.[鏂板]jsonutil澧炲姞灏佽鏂规硶,鍘绘帀devtools渚濊禆</div>
- <div>7.[鏂板]鏁版嵁搴撹繛鎺ラ�傞厤mysql8</div>
- <div>8.[鏂板]docker-compose鑴氭湰澧炲姞鏃跺尯</div>
- <div>9.[鏂板]oauth鐢宠token鍙敮鎸佽嚜瀹氫箟琛�</div>
- <div>10.[淇]浠g爜鐢熸垚sql缂哄け涓婚敭鐨勯棶</div>
- <div>11.[鏂板]boot鐗堟湰閲嶆瀯鐧诲綍閫昏緫锛屽寮哄彲鎷撳睍鎬�</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.3.RELEASE鍙戝竷锛屼紭鍖栧绉熸埛oss绯荤粺锛屼紭鍖栦笟鍔℃灦鏋�" name="3">
- <div>1.[鏂板]gateway澧炲姞鍔ㄦ�佹枃妗i厤缃紝鍙�氳繃閰嶇疆nacos鍔ㄦ�佸埛鏂�</div>
- <div>2.[浼樺寲]淇blade_menu浠g爜鐢熸垚妯″潡鍒犻櫎api鐨勫湴鍧�</div>
- <div>3.[浼樺寲]mysql渚濊禆</div>
- <div>4.[鏂板]LauncherService澧炲姞鎺掑簭鍔熻兘</div>
- <div>5.[浼樺寲]hystrixfeign鍔犺浇</div>
- <div>6.[浼樺寲]澶氱鎴穙ss绯荤粺閫昏緫锛屼娇涔嬫洿鍔犳槗鐢�</div>
- <div>7.tenant_code瀛楁缁熶竴涓簍enant_id</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.2.RELEASE鍙戝竷锛屽鍔犲绉熸埛oss绠$悊绯荤粺" name="2">
- <div>1.[鏂板]澧炲姞minio灏佽</div>
- <div>2.[鏂板]澧炲姞qiniu灏佽</div>
- <div>3.[鏂板]澧炲姞oss缁熶竴鎺ュ彛</div>
- <div>4.[鏂板]闆嗘垚minio銆乹iniu锛岃繘琛岀粺涓�绠$悊鐨勫绉熸埛oss绯荤粺</div>
- <div>5.[浼樺寲]ubcs-core-cloud閫昏緫</div>
- <div>6.[鏂板]badex-biz澧炲姞涓嶅悓鍖呭悕鐨剆wagger銆乵ybatis閰嶇疆demo</div>
- <div>7.[鏂板]badex-biz澧炲姞nacos鑷畾涔夋敞鍐屾枃浠禿emo</div>
- <div>8.[鏂板]bladex-biz澧炲姞nacos鍙傛暟鍔ㄦ�佸埛鏂癲emo</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.1.RELEASE鍙戝竷锛岀郴缁熶紭鍖栫増鏈�" name="1">
- <div>1.[鏂板]鍏煎jdk11</div>
- <div>2.[鏂板]鏀寔refresh_token鍔熻兘</div>
- <div>3.[鏂板]澧炲姞minio灏佽锛屾敮鎸佸绉熸埛妯″紡鐨刼ss瀵硅薄瀛樺偍</div>
- <div>4.[鏂板]闆嗘垚dubbo鏈�鏂扮増鏈紝鏀寔rpc杩滅▼璋冪敤</div>
- <div>5.[鏂板]瀹氬埗鍩轰簬nacos鐨刧ateway鍔ㄦ�佺綉鍏�</div>
- <div>6.[浼樺寲]鑱氬悎缃戝叧閰嶇疆锛屼娇涔嬫洿鍔犺交宸�</div>
- <div>7.[鏂板]CacheUtil澧炲姞缂撳瓨娓呴櫎鏂规硶</div>
- <div>8.[浼樺寲]鏃ュ織鏂囦欢鏍煎紡</div>
- <div>9.[鏂板]Secure鎷︽埅鍣ㄦ敮鎸佽嚜瀹氫箟鍔犺浇</div>
- </el-collapse-item>
- <el-collapse-item title="2.0.0.RELEASE鍙戝竷锛屽畬缇庡畾鍒剁殑寰湇鍔″紑鍙戝钩鍙�" name="0">
- <div>1.[鏂板]Swagger鎻愪緵list褰㈠紡閰嶇疆鎵弿鍖�</div>
- <div>2.[鏂板]DictCache銆乁serCache銆丼ysCache缂撳瓨宸ュ叿绫�</div>
- <div>3.[鏂板]閲嶆柊璁捐EntityWrapper缁撴瀯锛屼娇涔嬫洿鍔犵畝鍗曟槗鐢�</div>
- <div>4.[鏂板]寮哄寲閮ㄥ垎鏁忔劅鏁版嵁鐨勫垹闄ゆ牎楠�</div>
- <div>5.[鏂板]Condition绫荤殑sql鏉′欢鏋勯�犲櫒</div>
- <div>6.[淇]宸ヤ綔娴佸垎椤礲ug</div>
- <div>7.[浼樺寲]docker閰嶇疆</div>
- <div>8.[浼樺寲]澶氱鎴烽�昏緫</div>
- <div>9.[浼樺寲]request鎵撳嵃鏃ュ織閫昏緫</div>
- <div>10.[淇]getIp鐨刡ug</div>
- <div>11.[浼樺寲]saber浠g爜鐢熸垚妯℃澘</div>
- <div>12.[鏂板]saber鏇存柊鑷砮lement-ui 2.8.2鐗堟湰</div>
- <div>13.[淇]saber鍒嗛〉bug</div>
- <div>14.[鏂板]crud缁勪欢鎻愪氦鎶ラ敊鍚庢仮澶嶆寜閽姸鎬�</div>
- <div>15.[鏂板]瀛楀吀绠$悊琛ㄥ崟璋冩暣</div>
- <div>16.[鍗囩骇]springboot 2.1.5</div>
</el-collapse-item>
</el-collapse>
</basic-container>
@@ -686,21 +114,66 @@
<script>
import {mapGetters} from "vuex";
- import {check} from "@/api/system/user"
- import {updatePassword} from "@/api/system/user.js"
+ import {getUndoTaskList,check,updatePassword} from "@/api/system/user"
import md5 from "js-md5";
import {removeToken} from "@/util/auth";
+ import Statistic from './Statistic.vue';
+ import {validatenull} from "@/util/validate";
+ import {flowCategory,flowRoute} from "@/util/flow";
export default {
name: "wel",
+ components: {Statistic},
data() {
return {
- activeNames: ['1', '2', '3', '5'],
+ loading: false,
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0
+ },
+ // 浠e姙娴佺▼浠诲姟data
+ todoData: [],
+ // 浠e姙娴佺▼浠诲姟option
+ todoOption: {
+ addBtn: false,
+ header: false,
+ align: 'center',
+ index: true,
+ menuWidth: 100,
+ editBtn: false,
+ delBtn: false,
+ column: [{
+ label: '浠诲姟鍚嶇О',
+ prop: 'name',
+ html: true,
+ formatter: (val) => {
+ return '<a name="processname" href="javascript:;" style="color: #66b1ff;">' + val.taskName + '</a>'
+ }
+ },
+ {
+ label: '涓婁竴姝ュ鐞嗘椂闂�',
+ prop: 'createTime'
+ },
+ {
+ label: '鎻忚堪',
+ prop: 'description'
+ },
+ {
+ label: '涓婁竴姝ユ搷浣滀汉',
+ prop: 'creator_name'
+ },
+ {
+ label: '鎵�灞炴祦绋嬫ā鏉�',
+ prop: 'categoryName'
+ }
+ ]
+ },
logActiveNames: ['28'],
- userarr:[],
- userid:'',
- updataArr:[],
- dialogFormVisible:false,
+ userarr: [],
+ userid: '',
+ updataArr: [],
+ dialogFormVisible: false,
form: {
oldPassword: '',
newPassword: '',
@@ -708,25 +181,25 @@
},
rules: {
oldPassword: [
- { required: true, message: '璇疯緭鍏ュ師瀵嗙爜', trigger: 'blur' }
+ {required: true, message: '璇疯緭鍏ュ師瀵嗙爜', trigger: 'blur'}
],
- newPassword:[
- { required: true, message: '璇疯緭鍏ユ柊瀵嗙爜', trigger: 'blur' }
+ newPassword: [
+ {required: true, message: '璇疯緭鍏ユ柊瀵嗙爜', trigger: 'blur'}
],
- newPassword1:[
- { required: true, message: '璇疯緭纭瀵嗙爜', trigger: 'blur' }
+ newPassword1: [
+ {required: true, message: '璇疯緭纭瀵嗙爜', trigger: 'blur'}
]
},
};
},
// 鎷垮埌userid璇锋眰鎺ュ彛
created() {
- this.updataArr=JSON.parse(localStorage.getItem("updataid"))
- this.userid=this.$store.state.user.upadatastatus.user_id
+ this.updataArr = JSON.parse(localStorage.getItem("updataid"))
+ this.userid = this.$store.state.user.upadatastatus.user_id
this.checkhandle()
},
computed: {
- ...mapGetters(["userInfo"]),
+ ...mapGetters(["userInfo", "flowRoutes"]),
},
methods: {
handleChange(val) {
@@ -734,59 +207,80 @@
},
//element缁勪欢鍏抽棴寮圭獥鐨勫欢杩熷洖璋冿紝杩欓噷娌℃湁鐢ㄥ叧闂脊绐楃殑鏂规硶锛屽洜涓哄綋鐢ㄦ埛鐐瑰嚮纭涔熸槸鍏抽棴寮圭獥锛屽鏋滅櫥褰曟垚鍔熷脊绐楀叧闂悗涔熸槸浼氭竻闄oken鍥炲埌鐧诲綍椤�
//Xdelhandle鏄偣鍑籜鍙峰叧闂脊鍞�,delhandle鏄偣鍑诲彇娑堝叧闂脊绐�,鍦ㄨ繖鍒嗕簡涓や釜浜嬩欢
- Xdelhandle(){
+ Xdelhandle() {
removeToken()
this.dialogFormVisible = false
},
// 鍏抽棴寮圭獥鍚庢竻闄oken杩斿洖鍒扮櫥褰曢〉闈�
- delhandle(){
+ delhandle() {
removeToken()
this.dialogFormVisible = false
},
// 淇敼瀵嗙爜鏂规硶
- addok(){
+ addok() {
this.dialogFormVisible = false
- updatePassword(md5(this.form.oldPassword), this.form.newPassword, this.form.newPassword1).then(res=>{
- if(res.data.code==200){
+ updatePassword(md5(this.form.oldPassword), this.form.newPassword, this.form.newPassword1).then(res => {
+ if (res.data.code == 200) {
this.$message({
- type:"success",
- message:"淇敼鎴愬姛锛�"
+ type: "success",
+ message: "淇敼鎴愬姛锛�"
})
}
- }).catch(res=>{
+ }).catch(res => {
console.log(res)
this.checkhandle()
})
},
// 鎻愰啋鏃堕棿璇锋眰锛屼篃闇�瑕佸垽鏂槸鍚︿负瓒呯韬唤锛岃秴绠¤韩浠戒笉鍒ゆ柇
- checkhandle(){
- if(this.updataArr.user_id != '0' && this.updataArr.tenant_id !== '000000'){
- check(this.userid).then(res=>{
- if(res.data.data>0){
+ checkhandle() {
+ if (this.updataArr.user_id != '0' && this.updataArr.tenant_id !== '000000') {
+ check(this.userid).then(res => {
+ if (res.data.data > 0) {
this.$message({
- type:'warning',
- message:`浣犺繕鏈�${res.data.data}澶╁氨瑕佷慨鏀瑰瘑鐮佷簡`
+ type: 'warning',
+ message: `浣犺繕鏈�${res.data.data}澶╁氨瑕佷慨鏀瑰瘑鐮佷簡`
})
- }else if(res.data.data == -1){
+ } else if (res.data.data == -1) {
this.$message({
type: "warning",
message: "瀵嗙爜绛栫暐宸茶淇敼锛岃閲嶆柊淇敼瀵嗙爜锛�"
})
- setTimeout(()=>{
- this.dialogFormVisible=true
- },1500)
- }else if(res.data.data == 0){
+ setTimeout(() => {
+ this.dialogFormVisible = true
+ }, 1500)
+ } else if (res.data.data == 0) {
this.$message({
- type:'success',
- message:"鎿嶄綔鎴愬姛"
+ type: 'success',
+ message: "鎿嶄綔鎴愬姛"
})
}
- }).catch(res=>{
+ }).catch(res => {
console.log(res)
})
}
+ },
+ onLoad(page, params = {}) {
+ this.loading = true;
+ getUndoTaskList(page.currentPage, page.pageSize, Object.assign(params)).then(res => {
+ const data = res.data.data;
+ this.page.total = data.total;
+ this.todoData = data.records;
+ this.loading = false;
+ }).catch(error => {
+ this.$message.error(error);
+ this.loading = false;
+ })
+ },
+ cellHandle(row, column, cell, event) {
+ if (column.property == 'name') {
+ this.gotodo(row)
+ }
+ },
+ gotodo(row, index) {
+ //this.$router.push({ path: `/work/process/${flowRoute(this.flowRoutes, row.category)}/handle/${row.taskId}/${row.processInstanceId}/${row.businessId}` });
+ this.$router.push({ path: `/work/todo` });
}
- },
+ }
};
</script>
--
Gitblit v1.9.3