import { encrypt } from '@/utils/rsaEncrypt'
-import { ldapStatus, oidcStatus, getPublicKey, pluginLoaded, defaultLoginType, wecomStatus, dingtalkStatus, larkStatus } from '@/api/user'
+import { ldapStatus, oidcStatus, getPublicKey, pluginLoaded, defaultLoginType, wecomStatus, dingtalkStatus, larkStatus, larksuiteStatus, casStatus, casLoginPage } from '@/api/user'
import { getSysUI } from '@/utils/auth'
import { changeFavicon } from '@/utils/index'
import { initTheme } from '@/utils/ThemeUtil'
@@ -248,10 +259,10 @@ export default {
return this.$store.state.user.loginMsg
},
qrTypes() {
- return this.loginTypes && this.loginTypes.filter(item => item > 3) || []
+ return this.loginTypes && this.loginTypes.filter(item => item > 3 && item < 7) || []
},
radioTypes() {
- return this.loginTypes && this.loginTypes.filter(item => item < 4) || []
+ return this.loginTypes && this.loginTypes.filter(item => item < 4 || item > 6) || []
}
},
watch: {
@@ -271,6 +282,12 @@ export default {
this.contentShow = true
})
+ casStatus().then(res => {
+ if (res.success && res.data) {
+ this.loginTypes.push(3)
+ }
+ })
+
ldapStatus().then(res => {
if (res.success && res.data) {
this.loginTypes.push(1)
@@ -312,6 +329,13 @@ export default {
this.setDefaultType()
})
+ larksuiteStatus().then(res => {
+ if (res.success && res.data) {
+ this.loginTypes.push(7)
+ }
+ this.setDefaultType()
+ })
+
getPublicKey().then(res => {
if (res.success && res.data) {
// 保存公钥
@@ -322,6 +346,12 @@ export default {
if (res && res.success) {
this.defaultType = res.data
}
+ if (this.loginTypes.includes(3) && this.defaultType === 3) {
+ casLoginPage().then(res => {
+ debugger
+ window.location.href = res.data
+ })
+ }
this.setDefaultType()
})
},
@@ -361,6 +391,11 @@ export default {
this.switchCodeIndex(6)
}
this.clearLarkMsg()
+
+ if (Cookies.get('LarksuiteError')) {
+ this.$error(Cookies.get('LarksuiteError'))
+ }
+ this.clearLarksuiteMsg()
},
methods: {
@@ -391,6 +426,9 @@ export default {
clearLarkMsg() {
Cookies.remove('LarkError')
},
+ clearLarksuiteMsg() {
+ Cookies.remove('LarksuiteError')
+ },
showLoginImage(uiInfo) {
this.uiInfo = getSysUI()
if (!this.uiInfo || Object.keys(this.uiInfo).length === 0) {
@@ -427,6 +465,7 @@ export default {
this.clearWecomMsg()
this.clearDingtalkMsg()
this.clearLarkMsg()
+ this.clearLarksuiteMsg()
this.$refs.loginForm.validate(valid => {
if (valid) {
this.loading = true
@@ -447,8 +486,9 @@ export default {
})
},
changeLoginType(val) {
- if (val !== 2) return
+ if (val !== 2 && val !== 7) return
this.clearOidcMsg()
+ this.clearLarksuiteMsg()
this.$nextTick(() => {
})
diff --git a/frontend/src/views/msg/all.vue b/frontend/src/views/msg/all.vue
index b687d6608d..8f256bf095 100644
--- a/frontend/src/views/msg/all.vue
+++ b/frontend/src/views/msg/all.vue
@@ -6,6 +6,7 @@
{
- this.data = res.data
+ this.treeData = res.data
if (this.msgPanelIds && this.msgPanelIds.length > 0) {
this.expandMsgNode(this.msgPanelIds)
}
@@ -188,7 +188,7 @@ export default {
})
},
getMsgNodes(panelIds) {
- this.data.forEach(item => {
+ this.treeData.forEach(item => {
if (item.children && item.children.length > 0) {
item.children.forEach(node => {
if (panelIds.includes(node.id)) {
diff --git a/frontend/src/views/panel/LinkJumpSet/index.vue b/frontend/src/views/panel/LinkJumpSet/index.vue
index d42104e1a9..0ecd09a6e5 100644
--- a/frontend/src/views/panel/LinkJumpSet/index.vue
+++ b/frontend/src/views/panel/LinkJumpSet/index.vue
@@ -407,6 +407,7 @@ import 'codemirror/addon/hint/show-hint'
import { imgUrlTrans } from '@/components/canvas/utils/utils'
export default {
+ name: 'LinkJumpSet',
components: { codemirror, draggable },
props: {
viewId: {
diff --git a/frontend/src/views/panel/appTemplate/AppTemplateContent.vue b/frontend/src/views/panel/appTemplate/AppTemplateContent.vue
new file mode 100644
index 0000000000..72875f60ce
--- /dev/null
+++ b/frontend/src/views/panel/appTemplate/AppTemplateContent.vue
@@ -0,0 +1,534 @@
+
+
+
+
+
+
+
+
+
+ {{ currentTemplateLabel }} ({{
+ currentTemplateShowList.length
+ }})
+
+ {{ $t('app_template.app_upload') }}
+
+
+
+
+ handleCommand(key, item)"
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/views/panel/appTemplate/component/AppTemplateApply.vue b/frontend/src/views/panel/appTemplate/component/AppTemplateApply.vue
new file mode 100644
index 0000000000..b3cf4cffac
--- /dev/null
+++ b/frontend/src/views/panel/appTemplate/component/AppTemplateApply.vue
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/views/panel/appTemplate/component/TemplateItem.vue b/frontend/src/views/panel/appTemplate/component/TemplateItem.vue
index b86fbee65c..d6674d4172 100644
--- a/frontend/src/views/panel/appTemplate/component/TemplateItem.vue
+++ b/frontend/src/views/panel/appTemplate/component/TemplateItem.vue
@@ -12,7 +12,10 @@
alt=""
>
-
+
- {{ $t("commons.update") }}
+ {{ $t('commons.update') }}
- {{ $t("commons.uninstall") }}
+ {{ $t('commons.uninstall') }}
+
+
+
+
+
+ {{ model.name }}
+
+
+
+ {{ $t('panel.preview') }}
+
+ {{ $t('panel.apply') }}
+
+
+
+
-
diff --git a/frontend/src/views/panel/appTemplateMarket/component/AppMarketPreview.vue b/frontend/src/views/panel/appTemplateMarket/component/AppMarketPreview.vue
new file mode 100644
index 0000000000..6b66c30e74
--- /dev/null
+++ b/frontend/src/views/panel/appTemplateMarket/component/AppMarketPreview.vue
@@ -0,0 +1,125 @@
+
+
+
+
+
+
+ {{ templateInfo.name }}
+
+
+
+ {{ $t('panel.apply') }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/views/panel/appTemplateMarket/index.vue b/frontend/src/views/panel/appTemplateMarket/index.vue
index d259e822d7..de50d714fd 100644
--- a/frontend/src/views/panel/appTemplateMarket/index.vue
+++ b/frontend/src/views/panel/appTemplateMarket/index.vue
@@ -1,12 +1,11 @@
-
-
-
-
-
-
-
-
-
-
- {{ $t('commons.no_result') }}
-
-
+
@@ -123,15 +96,23 @@
{{ $t('commons.cancel') }}
+ >{{ $t('commons.cancel') }}
+
{{ $t('commons.confirm') }}
+ >{{ $t('commons.confirm') }}
+
+
+