提交 f2f6aee0 编写于 作者: ibizdev's avatar ibizdev

ibiz4j 部署微服务应用

上级 c4657c70
......@@ -53,6 +53,53 @@
}
]
},
{
"srfkey": "OpenAccessType",
"emptytext": "未定义",
"codelisttype":"static",
"items": [
{
"id": "aliyun",
"label": "阿里云",
"text": "阿里云",
"data":"",
"codename":"Aliyun",
"value": "aliyun",
"disabled": false
}
, {
"id": "webchart",
"label": "微信开放平台",
"text": "微信开放平台",
"data":"",
"codename":"Webchart",
"value": "webchart",
"disabled": false
}
, {
"id": "qq",
"label": "QQ互联",
"text": "QQ互联",
"data":"",
"codename":"Qq",
"value": "qq",
"disabled": false
}
, {
"id": "dingtalk",
"label": "钉钉开放平台",
"text": "钉钉开放平台",
"data":"",
"codename":"Dingtalk",
"value": "dingtalk",
"disabled": false
}
]
},
{
"srfkey": "CLAuthCode",
"emptytext": "未定义",
......
......@@ -15,6 +15,14 @@
"viewname": "Index",
"viewtag": "045e3ba6825a802770d6eca089a6484d"
},
"sysopenaccessgridview": {
"title": "第三方认证平台",
"caption": "第三方认证平台",
"viewtype": "DEGRIDVIEW",
"viewmodule": "uaa",
"viewname": "SysOpenAccessGridView",
"viewtag": "08a1b3f1982aeed0d7ace10329315343"
},
"sys_user_roleredirectview": {
"title": "用户角色关系表数据重定向视图",
"caption": "用户角色关系",
......@@ -103,6 +111,14 @@
"viewname": "SysRolePermissionRedirectView",
"viewtag": "47fb02384b5797f4b095e247619515f4"
},
"sysopenaccesseditview": {
"title": "第三方认证平台",
"caption": "第三方认证平台",
"viewtype": "DEEDITVIEW",
"viewmodule": "uaa",
"viewname": "SysOpenAccessEditView",
"viewtag": "502f094c8574dc383709aca00a4b5093"
},
"sysrolepermissiongridview": {
"title": "角色权限关系表表格视图",
"caption": "角色权限关系",
......
......@@ -39,7 +39,8 @@ export class AuthServiceRegister {
* @memberof AuthServiceRegister
*/
protected init(): void {
this.allAuthService.set('sysauthlog', () => import('@/authservice/sys-auth-log/sys-auth-log-auth-service'));
this.allAuthService.set('sysopenaccess', () => import('@/authservice/sys-open-access/sys-open-access-auth-service'));
this.allAuthService.set('sysauthlog', () => import('@/authservice/sys-auth-log/sys-auth-log-auth-service'));
this.allAuthService.set('sysapp', () => import('@/authservice/sys-app/sys-app-auth-service'));
this.allAuthService.set('sysrolepermission', () => import('@/authservice/sys-role-permission/sys-role-permission-auth-service'));
this.allAuthService.set('syspermission', () => import('@/authservice/sys-permission/sys-permission-auth-service'));
......
import AuthService from '../auth-service';
/**
* 第三方认证平台权限服务对象基类
*
* @export
* @class SysOpenAccessAuthServiceBase
* @extends {AuthService}
*/
export default class SysOpenAccessAuthServiceBase extends AuthService {
/**
* Creates an instance of SysOpenAccessAuthServiceBase.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessAuthServiceBase
*/
constructor(opts: any = {}) {
super(opts);
}
/**
* 根据当前数据获取实体操作标识
*
* @param {*} mainSateOPPrivs 传入数据操作标识
* @returns {any}
* @memberof SysOpenAccessAuthServiceBase
*/
public getOPPrivs(mainSateOPPrivs:any):any{
let curDefaultOPPrivs:any = JSON.parse(JSON.stringify(this.defaultOPPrivs));
if(mainSateOPPrivs){
Object.assign(curDefaultOPPrivs,mainSateOPPrivs);
}
return curDefaultOPPrivs;
}
}
\ No newline at end of file
import SysOpenAccessAuthServiceBase from './sys-open-access-auth-service-base';
/**
* 第三方认证平台权限服务对象
*
* @export
* @class SysOpenAccessAuthService
* @extends {SysOpenAccessAuthServiceBase}
*/
export default class SysOpenAccessAuthService extends SysOpenAccessAuthServiceBase {
/**
* Creates an instance of SysOpenAccessAuthService.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessAuthService
*/
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
import sysopenaccess_en_US from '@locale/lanres/entities/sys-open-access/sys-open-access_en_US';
import sysauthlog_en_US from '@locale/lanres/entities/sys-auth-log/sys-auth-log_en_US';
import sysapp_en_US from '@locale/lanres/entities/sys-app/sys-app_en_US';
import sysrolepermission_en_US from '@locale/lanres/entities/sys-role-permission/sys-role-permission_en_US';
......@@ -130,6 +131,7 @@ export default {
menuitem6: "角色",
menuitem1: "认证日志",
menuitem2: "接入应用",
menuitem4: "第三方认证",
},
},
formpage:{
......@@ -222,6 +224,7 @@ export default {
},
},
entities: {
sysopenaccess: sysopenaccess_en_US,
sysauthlog: sysauthlog_en_US,
sysapp: sysapp_en_US,
sysrolepermission: sysrolepermission_en_US,
......
import sysopenaccess_zh_CN from '@locale/lanres/entities/sys-open-access/sys-open-access_zh_CN';
import sysauthlog_zh_CN from '@locale/lanres/entities/sys-auth-log/sys-auth-log_zh_CN';
import sysapp_zh_CN from '@locale/lanres/entities/sys-app/sys-app_zh_CN';
import sysrolepermission_zh_CN from '@locale/lanres/entities/sys-role-permission/sys-role-permission_zh_CN';
......@@ -130,6 +131,7 @@ export default {
menuitem6: "角色",
menuitem1: "认证日志",
menuitem2: "接入应用",
menuitem4: "第三方认证",
},
},
formpage:{
......@@ -221,6 +223,7 @@ export default {
},
},
entities: {
sysopenaccess: sysopenaccess_zh_CN,
sysauthlog: sysauthlog_zh_CN,
sysapp: sysapp_zh_CN,
sysrolepermission: sysrolepermission_zh_CN,
......
......@@ -9,6 +9,13 @@ export default {
"THIRD-PARTY": "第三方应用",
"empty": ""
},
OpenAccessType: {
"aliyun": "阿里云",
"webchart": "微信开放平台",
"qq": "QQ互联",
"dingtalk": "钉钉开放平台",
"empty": ""
},
CLAuthCode: {
"200": "成功",
"400": "用户不存在",
......
......@@ -9,6 +9,13 @@ export default {
"THIRD-PARTY": "第三方应用",
"empty": "",
},
OpenAccessType: {
"aliyun": "阿里云",
"webchart": "微信开放平台",
"qq": "QQ互联",
"dingtalk": "钉钉开放平台",
"empty": "",
},
CLAuthCode: {
"200": "成功",
"400": "用户不存在",
......
export default {
fields: {
id: "开放平台接入标识",
name: "开放平台",
open_type: "开放平台类型",
access_key: "AccessKey(AppId)",
secret_key: "SecretKey(AppSecret)",
region_id: "RegionId",
access_token: "管理账号token",
expires_time: "管理账号token过期时间",
disabled: "是否禁用",
redirect_uri: "RedirectURI",
},
views: {
gridview: {
caption: "第三方认证平台",
title: "第三方认证平台",
},
editview: {
caption: "第三方认证平台",
title: "第三方认证平台",
},
},
main_form: {
details: {
group1: "第三方认证平台基本信息",
formpage1: "基本信息",
srforikey: "",
srfkey: "开放平台接入标识",
srfmajortext: "开放平台",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
accessname: "开放平台",
open_type: "开放平台类型",
access_key: "AccessKey(AppId)",
secret_key: "SecretKey(AppSecret)",
redirect_uri: "RedirectURI",
region_id: "RegionId",
disabled: "是否禁用",
accessid: "开放平台接入标识",
},
uiactions: {
},
},
main_grid: {
columns: {
accessid: "开放平台接入标识",
open_type: "开放平台类型",
accessname: "开放平台",
access_key: "AccessKey(AppId)",
disabled: "是否禁用",
region_id: "RegionId",
redirect_uri: "RedirectURI",
},
uiactions: {
},
},
default_searchform: {
details: {
formpage1: "常规条件",
n_accessname_like: "开放平台(文本包含(%))",
n_open_type_eq: "开放平台类型(等于(=))",
},
uiactions: {
},
},
gridviewtoolbar_toolbar: {
tbitem3: {
caption: "New",
tip: "New",
},
tbitem4: {
caption: "Edit",
tip: "Edit {0}",
},
tbitem6: {
caption: "Copy",
tip: "Copy {0}",
},
tbitem7: {
caption: "-",
tip: "",
},
tbitem8: {
caption: "Remove",
tip: "Remove {0}",
},
tbitem9: {
caption: "-",
tip: "",
},
tbitem13: {
caption: "Export",
tip: "Export {0} Data To Excel",
},
tbitem10: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "Filter",
tip: "Filter",
},
},
editviewtoolbar_toolbar: {
tbitem3: {
caption: "Save",
tip: "Save",
},
tbitem5: {
caption: "Save And Close",
tip: "Save And Close Window",
},
tbitem6: {
caption: "-",
tip: "",
},
tbitem12: {
caption: "New",
tip: "New",
},
tbitem13: {
caption: "-",
tip: "",
},
tbitem14: {
caption: "Copy",
tip: "Copy {0}",
},
},
};
\ No newline at end of file
export default {
fields: {
id: "开放平台接入标识",
name: "开放平台",
open_type: "开放平台类型",
access_key: "AccessKey(AppId)",
secret_key: "SecretKey(AppSecret)",
region_id: "RegionId",
access_token: "管理账号token",
expires_time: "管理账号token过期时间",
disabled: "是否禁用",
redirect_uri: "RedirectURI",
},
views: {
gridview: {
caption: "第三方认证平台",
title: "第三方认证平台",
},
editview: {
caption: "第三方认证平台",
title: "第三方认证平台",
},
},
main_form: {
details: {
group1: "第三方认证平台基本信息",
formpage1: "基本信息",
srforikey: "",
srfkey: "开放平台接入标识",
srfmajortext: "开放平台",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
accessname: "开放平台",
open_type: "开放平台类型",
access_key: "AccessKey(AppId)",
secret_key: "SecretKey(AppSecret)",
redirect_uri: "RedirectURI",
region_id: "RegionId",
disabled: "是否禁用",
accessid: "开放平台接入标识",
},
uiactions: {
},
},
main_grid: {
columns: {
accessid: "开放平台接入标识",
open_type: "开放平台类型",
accessname: "开放平台",
access_key: "AccessKey(AppId)",
disabled: "是否禁用",
region_id: "RegionId",
redirect_uri: "RedirectURI",
},
uiactions: {
},
},
default_searchform: {
details: {
formpage1: "常规条件",
n_accessname_like: "开放平台(文本包含(%))",
n_open_type_eq: "开放平台类型(等于(=))",
},
uiactions: {
},
},
gridviewtoolbar_toolbar: {
tbitem3: {
caption: "新建",
tip: "新建",
},
tbitem4: {
caption: "编辑",
tip: "编辑",
},
tbitem6: {
caption: "拷贝",
tip: "拷贝",
},
tbitem7: {
caption: "-",
tip: "",
},
tbitem8: {
caption: "删除",
tip: "删除",
},
tbitem9: {
caption: "-",
tip: "",
},
tbitem13: {
caption: "导出",
tip: "导出",
},
tbitem10: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "过滤",
tip: "过滤",
},
},
editviewtoolbar_toolbar: {
tbitem3: {
caption: "保存",
tip: "保存",
},
tbitem5: {
caption: "保存并关闭",
tip: "保存并关闭",
},
tbitem6: {
caption: "-",
tip: "",
},
tbitem12: {
caption: "新建",
tip: "新建",
},
tbitem13: {
caption: "-",
tip: "",
},
tbitem14: {
caption: "拷贝",
tip: "拷贝",
},
},
};
\ No newline at end of file
......@@ -81,6 +81,24 @@ mock.onGet('v7/mainappmenu').reply((config: any) => {
textcls: '',
appfunctag: 'Auto12',
resourcetag: '',
},
{
id: 'A045832E-C0C7-4E66-A0E0-E9286DC96A8C',
name: 'menuitem4',
text: '第三方认证',
type: 'MENUITEM',
counterid: '',
tooltip: '第三方认证',
expanded: false,
separator: false,
hidden: false,
hidesidebar: false,
opendefault: false,
iconcls: 'fa fa-slack',
icon: '',
textcls: '',
appfunctag: '_2',
resourcetag: '',
},
],
}];
......
......@@ -61,6 +61,53 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
},
]
},
{
srfkey: "OpenAccessType",
emptytext: "未定义",
"codelisttype":"static",
items: [
{
id: "aliyun",
label: "阿里云",
text: "阿里云",
"data":"",
"codename":"Aliyun",
value: "aliyun",
disabled: false,
},
{
id: "webchart",
label: "微信开放平台",
text: "微信开放平台",
"data":"",
"codename":"Webchart",
value: "webchart",
disabled: false,
},
{
id: "qq",
label: "QQ互联",
text: "QQ互联",
"data":"",
"codename":"Qq",
value: "qq",
disabled: false,
},
{
id: "dingtalk",
label: "钉钉开放平台",
text: "钉钉开放平台",
"data":"",
"codename":"Dingtalk",
value: "dingtalk",
disabled: false,
},
]
},
{
srfkey: "CLAuthCode",
emptytext: "未定义",
......
......@@ -7,6 +7,7 @@ import './login/login';
import './upload/upload';
// 实体级接口对象
import './entity/sys-open-accesss/sys-open-accesss';
import './entity/sys-auth-logs/sys-auth-logs';
import './entity/sys-apps/sys-apps';
import './entity/sys-role-permissions/sys-role-permissions';
......
......@@ -23,6 +23,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "Index",
"viewtag": "045e3ba6825a802770d6eca089a6484d"
},
"sysopenaccessgridview": {
"title": "第三方认证平台",
"caption": "第三方认证平台",
"viewtype": "DEGRIDVIEW",
"viewmodule": "uaa",
"viewname": "SysOpenAccessGridView",
"viewtag": "08a1b3f1982aeed0d7ace10329315343"
},
"sys_user_roleredirectview": {
"title": "用户角色关系表数据重定向视图",
"caption": "用户角色关系",
......@@ -111,6 +119,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "SysRolePermissionRedirectView",
"viewtag": "47fb02384b5797f4b095e247619515f4"
},
"sysopenaccesseditview": {
"title": "第三方认证平台",
"caption": "第三方认证平台",
"viewtype": "DEEDITVIEW",
"viewmodule": "uaa",
"viewname": "SysOpenAccessEditView",
"viewtag": "502f094c8574dc383709aca00a4b5093"
},
"sysrolepermissiongridview": {
"title": "角色权限关系表表格视图",
"caption": "角色权限关系",
......
export const PageComponents = {
install(Vue: any, opt: any) {
Vue.component('sys-app-grid-view', () => import('@pages/uaa/sys-app-grid-view/sys-app-grid-view.vue'));
Vue.component('sys-open-access-edit-view', () => import('@pages/uaa/sys-open-access-edit-view/sys-open-access-edit-view.vue'));
Vue.component('sys-app-grid-view', () => import('@pages/uaa/sys-app-grid-view/sys-app-grid-view.vue'));
Vue.component('sys-app-edit-view', () => import('@pages/uaa/sys-app-edit-view/sys-app-edit-view.vue'));
Vue.component('sys-rolepickup-view', () => import('@pages/uaa/sys-rolepickup-view/sys-rolepickup-view.vue'));
Vue.component('sys-usermpickup-view', () => import('@pages/uaa/sys-usermpickup-view/sys-usermpickup-view.vue'));
Vue.component('sys-role-permission-custom-view', () => import('@pages/uaa/sys-role-permission-custom-view/sys-role-permission-custom-view.vue'));
Vue.component('sys-userpickup-grid-view', () => import('@pages/uaa/sys-userpickup-grid-view/sys-userpickup-grid-view.vue'));
Vue.component('sys-role-edit-view', () => import('@pages/uaa/sys-role-edit-view/sys-role-edit-view.vue'));
Vue.component('sys-user-role-edit-view', () => import('@pages/uaa/sys-user-role-edit-view/sys-user-role-edit-view.vue'));
Vue.component('sys-role-edit-view', () => import('@pages/uaa/sys-role-edit-view/sys-role-edit-view.vue'));
Vue.component('sys-rolempickup-view', () => import('@pages/uaa/sys-rolempickup-view/sys-rolempickup-view.vue'));
Vue.component('sys-auth-log-grid-view', () => import('@pages/uaa/sys-auth-log-grid-view/sys-auth-log-grid-view.vue'));
Vue.component('sys-open-access-grid-view', () => import('@pages/uaa/sys-open-access-grid-view/sys-open-access-grid-view.vue'));
Vue.component('sys-userpickup-view', () => import('@pages/uaa/sys-userpickup-view/sys-userpickup-view.vue'));
Vue.component('sys-role-grid-view', () => import('@pages/uaa/sys-role-grid-view/sys-role-grid-view.vue'));
Vue.component('sys-user-edit-view', () => import('@pages/uaa/sys-user-edit-view/sys-user-edit-view.vue'));
......
......@@ -35,6 +35,20 @@ const router = new Router({
},
component: () => import('@pages/uaa/index/index.vue'),
children: [
{
path: 'sysopenaccesses/:sysopenaccess?/editview/:editview?',
meta: {
caption: 'entities.sysopenaccess.views.editview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'editview', parameterName: 'editview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-open-access-edit-view/sys-open-access-edit-view.vue'),
},
{
path: 'sysapps/:sysapp?/gridview/:gridview?',
meta: {
......@@ -150,27 +164,28 @@ const router = new Router({
component: () => import('@pages/uaa/sys-userpickup-grid-view/sys-userpickup-grid-view.vue'),
},
{
path: 'sysroles/:sysrole?/editview/:editview?',
path: 'sysusers/:sysuser?/sysuserroles/:sysuserrole?/editview/:editview?',
meta: {
caption: 'entities.sysrole.views.editview.title',
caption: 'entities.sysuserrole.views.editview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysroles', parameterName: 'sysrole' },
{ pathName: 'sysusers', parameterName: 'sysuser' },
{ pathName: 'sysuserroles', parameterName: 'sysuserrole' },
{ pathName: 'editview', parameterName: 'editview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-role-edit-view/sys-role-edit-view.vue'),
component: () => import('@pages/uaa/sys-user-role-edit-view/sys-user-role-edit-view.vue'),
},
{
path: 'sysusers/:sysuser?/sysuserroles/:sysuserrole?/editview/:editview?',
path: 'sysroles/:sysrole?/sysuserroles/:sysuserrole?/editview/:editview?',
meta: {
caption: 'entities.sysuserrole.views.editview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysusers', parameterName: 'sysuser' },
{ pathName: 'sysroles', parameterName: 'sysrole' },
{ pathName: 'sysuserroles', parameterName: 'sysuserrole' },
{ pathName: 'editview', parameterName: 'editview' },
],
......@@ -179,13 +194,12 @@ const router = new Router({
component: () => import('@pages/uaa/sys-user-role-edit-view/sys-user-role-edit-view.vue'),
},
{
path: 'sysroles/:sysrole?/sysuserroles/:sysuserrole?/editview/:editview?',
path: 'sysuserroles/:sysuserrole?/editview/:editview?',
meta: {
caption: 'entities.sysuserrole.views.editview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysroles', parameterName: 'sysrole' },
{ pathName: 'sysuserroles', parameterName: 'sysuserrole' },
{ pathName: 'editview', parameterName: 'editview' },
],
......@@ -194,18 +208,18 @@ const router = new Router({
component: () => import('@pages/uaa/sys-user-role-edit-view/sys-user-role-edit-view.vue'),
},
{
path: 'sysuserroles/:sysuserrole?/editview/:editview?',
path: 'sysroles/:sysrole?/editview/:editview?',
meta: {
caption: 'entities.sysuserrole.views.editview.title',
caption: 'entities.sysrole.views.editview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysuserroles', parameterName: 'sysuserrole' },
{ pathName: 'sysroles', parameterName: 'sysrole' },
{ pathName: 'editview', parameterName: 'editview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-user-role-edit-view/sys-user-role-edit-view.vue'),
component: () => import('@pages/uaa/sys-role-edit-view/sys-role-edit-view.vue'),
},
{
path: 'sysroles/:sysrole?/mpickupview/:mpickupview?',
......@@ -235,6 +249,20 @@ const router = new Router({
},
component: () => import('@pages/uaa/sys-auth-log-grid-view/sys-auth-log-grid-view.vue'),
},
{
path: 'sysopenaccesses/:sysopenaccess?/gridview/:gridview?',
meta: {
caption: 'entities.sysopenaccess.views.gridview.title',
info:'',
parameters: [
{ pathName: 'index', parameterName: 'index' },
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'gridview', parameterName: 'gridview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-open-access-grid-view/sys-open-access-grid-view.vue'),
},
{
path: 'sysusers/:sysuser?/pickupview/:pickupview?',
meta: {
......@@ -425,6 +453,19 @@ const router = new Router({
},
component: () => import('@pages/uaa/sys-auth-log-grid-view/sys-auth-log-grid-view.vue'),
},
{
path: '/sysopenaccesses/:sysopenaccess?/gridview/:gridview?',
meta: {
caption: 'entities.sysopenaccess.views.gridview.title',
info:'',
parameters: [
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'gridview', parameterName: 'gridview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-open-access-grid-view/sys-open-access-grid-view.vue'),
},
{
path: '/sysapps/:sysapp?/editview/:editview?',
meta: {
......@@ -505,6 +546,19 @@ const router = new Router({
},
component: () => import('@pages/uaa/sys-usermpickup-view/sys-usermpickup-view.vue'),
},
{
path: '/sysopenaccesses/:sysopenaccess?/editview/:editview?',
meta: {
caption: 'entities.sysopenaccess.views.editview.title',
info:'',
parameters: [
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'editview', parameterName: 'editview' },
],
requireAuth: true,
},
component: () => import('@pages/uaa/sys-open-access-edit-view/sys-open-access-edit-view.vue'),
},
{
path: '/sysroles/:sysrole?/editview/:editview?',
meta: {
......
.view-card {
>.ivu-card-extra {
top: 5px;
right: 0px;
}
}
.sys-open-access-edit-view{
position: relative;
}
.toolbar-container {
button {
margin: 6px 0px 4px 4px;
.caption {
margin-left: 4px;
}
}
.seperator {
color: #dcdee2;
margin: 0 0px 0 4px;
}
}
// this is less
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import SysOpenAccessEditViewBase from './sys-open-access-edit-view-base.vue';
import view_form from '@widgets/sys-open-access/main-form/main-form.vue';
@Component({
components: {
view_form,
},
beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => {
if(!Object.is(vm.navModel,"route")){
vm.initNavDataWithTab(vm.viewCacheData);
}
vm.$store.commit('addCurPageViewtag', { fullPath: to.fullPath, viewtag: vm.viewtag });
});
},
})
export default class SysOpenAccessEditView extends SysOpenAccessEditViewBase {
}
</script>
\ No newline at end of file
.sys-open-access-grid-view{
position: relative;
}
.toolbar-container {
button {
margin: 6px 0px 4px 4px;
.caption {
margin-left: 4px;
}
}
.seperator {
color: #dcdee2;
margin: 0 0px 0 4px;
}
}
// this is less
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import SysOpenAccessGridViewBase from './sys-open-access-grid-view-base.vue';
import view_grid from '@widgets/sys-open-access/main-grid/main-grid.vue';
import view_searchform from '@widgets/sys-open-access/default-searchform/default-searchform.vue';
@Component({
components: {
view_grid,
view_searchform,
},
beforeRouteEnter: (to: any, from: any, next: any) => {
next((vm: any) => {
if(!Object.is(vm.navModel,"route")){
vm.initNavDataWithTab(vm.viewCacheData);
}
vm.$store.commit('addCurPageViewtag', { fullPath: to.fullPath, viewtag: vm.viewtag });
});
},
})
export default class SysOpenAccessGridView extends SysOpenAccessGridViewBase {
}
</script>
\ No newline at end of file
......@@ -39,7 +39,8 @@ export class EntityServiceRegister {
* @memberof EntityServiceRegister
*/
protected init(): void {
this.allEntityService.set('sysauthlog', () => import('@/service/sys-auth-log/sys-auth-log-service'));
this.allEntityService.set('sysopenaccess', () => import('@/service/sys-open-access/sys-open-access-service'));
this.allEntityService.set('sysauthlog', () => import('@/service/sys-auth-log/sys-auth-log-service'));
this.allEntityService.set('sysapp', () => import('@/service/sys-app/sys-app-service'));
this.allEntityService.set('sysrolepermission', () => import('@/service/sys-role-permission/sys-role-permission-service'));
this.allEntityService.set('syspermission', () => import('@/service/sys-permission/sys-permission-service'));
......
import { Http,Util } from '@/utils';
import EntityService from '../entity-service';
/**
* 第三方认证平台服务对象基类
*
* @export
* @class SysOpenAccessServiceBase
* @extends {EntityServie}
*/
export default class SysOpenAccessServiceBase extends EntityService {
/**
* Creates an instance of SysOpenAccessServiceBase.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessServiceBase
*/
constructor(opts: any = {}) {
super(opts);
}
/**
* 初始化基础数据
*
* @memberof SysOpenAccessServiceBase
*/
public initBasicData(){
this.APPLYDEKEY ='sysopenaccess';
this.APPDEKEY = 'id';
this.APPDENAME = 'sysopenaccesses';
this.APPDETEXT = 'name';
this.APPNAME = 'web';
this.SYSTEMNAME = 'ibzuaa';
}
// 实体接口
/**
* Select接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Select(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = Http.getInstance().get(`/sysopenaccesses/${context.sysopenaccess}/select`,isloading);
return res;
}
/**
* Create接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Create(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
if(!data.srffrontuf || data.srffrontuf !== "1"){
data[this.APPDEKEY] = null;
}
if(data.srffrontuf){
delete data.srffrontuf;
}
let tempContext:any = JSON.parse(JSON.stringify(context));
let res:any = await Http.getInstance().post(`/sysopenaccesses`,data,isloading);
return res;
}
/**
* Update接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Update(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
let res:any = await Http.getInstance().put(`/sysopenaccesses/${context.sysopenaccess}`,data,isloading);
return res;
}
/**
* Remove接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Remove(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = Http.getInstance().delete(`/sysopenaccesses/${context.sysopenaccess}`,isloading);
return res;
}
/**
* Get接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Get(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = await Http.getInstance().get(`/sysopenaccesses/${context.sysopenaccess}`,isloading);
return res;
}
/**
* GetDraft接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async GetDraft(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = await Http.getInstance().get(`/sysopenaccesses/getdraft`,isloading);
res.data.sysopenaccess = data.sysopenaccess;
return res;
}
/**
* CheckKey接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async CheckKey(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let res:any = Http.getInstance().post(`/sysopenaccesses/${context.sysopenaccess}/checkkey`,data,isloading);
return res;
}
/**
* Save接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async Save(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let masterData:any = {};
Object.assign(data,masterData);
let res:any = await Http.getInstance().post(`/sysopenaccesses/${context.sysopenaccess}/save`,data,isloading);
return res;
}
/**
* FetchDefault接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof SysOpenAccessServiceBase
*/
public async FetchDefault(context: any = {},data: any = {}, isloading?: boolean): Promise<any> {
let tempData:any = JSON.parse(JSON.stringify(data));
let res:any = Http.getInstance().get(`/sysopenaccesses/fetchdefault`,tempData,isloading);
return res;
}
}
\ No newline at end of file
import { Http,Util } from '@/utils';
import SysOpenAccessServiceBase from './sys-open-access-service-base';
/**
* 第三方认证平台服务对象
*
* @export
* @class SysOpenAccessService
* @extends {SysOpenAccessServiceBase}
*/
export default class SysOpenAccessService extends SysOpenAccessServiceBase {
/**
* Creates an instance of SysOpenAccessService.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessService
*/
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
......@@ -19,12 +19,23 @@ export const viewstate: any = {
viewaction: '',
viewdatachange: false,
refviews: [
'08a1b3f1982aeed0d7ace10329315343',
'9e9a67908b3c85516085fe19e3dd4113',
'bb58e4db8024f089e1d808f0ede81302',
'0134ebf9391cb5f988839332c1352cd9',
'cb64b5009e70f225a91046314f40977a',
],
},
{
viewtag: '08a1b3f1982aeed0d7ace10329315343',
viewmodule: 'uaa',
viewname: 'SysOpenAccessGridView',
viewaction: '',
viewdatachange: false,
refviews: [
'502f094c8574dc383709aca00a4b5093',
],
},
{
viewtag: '12f53853382743f095a6af867669d8c1',
viewmodule: 'uaa',
......@@ -135,6 +146,15 @@ export const viewstate: any = {
'812d0052dbbf9be1d9db9117d0988de5',
],
},
{
viewtag: '502f094c8574dc383709aca00a4b5093',
viewmodule: 'uaa',
viewname: 'SysOpenAccessEditView',
viewaction: '',
viewdatachange: false,
refviews: [
],
},
{
viewtag: '61a949e3c23ebdda724888662ded1478',
viewmodule: 'uaa',
......
import { Environment } from '@/environments/environment';
import { UIActionTool,Util } from '@/utils';
import UIService from '../ui-service';
import { Subject } from 'rxjs';
import SysOpenAccessService from '@/service/sys-open-access/sys-open-access-service';
import SysOpenAccessAuthService from '@/authservice/sys-open-access/sys-open-access-auth-service';
/**
* 第三方认证平台UI服务对象基类
*
* @export
* @class SysOpenAccessUIServiceBase
*/
export default class SysOpenAccessUIServiceBase extends UIService {
/**
* 是否支持工作流
*
* @memberof SysOpenAccessUIServiceBase
*/
public isEnableWorkflow:boolean = false;
/**
* 当前UI服务对应的数据服务对象
*
* @memberof SysOpenAccessUIServiceBase
*/
public dataService:SysOpenAccessService = new SysOpenAccessService();
/**
* 所有关联视图
*
* @memberof SysOpenAccessUIServiceBase
*/
public allViewMap: Map<string, Object> = new Map();
/**
* 状态值
*
* @memberof SysOpenAccessUIServiceBase
*/
public stateValue: number = 0;
/**
* 状态属性
*
* @memberof SysOpenAccessUIServiceBase
*/
public stateField: string = "";
/**
* 主状态属性集合
*
* @memberof SysOpenAccessUIServiceBase
*/
public mainStateFields:Array<any> = [];
/**
* 主状态集合Map
*
* @memberof SysOpenAccessUIServiceBase
*/
public allDeMainStateMap:Map<string,string> = new Map();
/**
* 主状态操作标识Map
*
* @memberof SysOpenAccessUIServiceBase
*/
public allDeMainStateOPPrivsMap:Map<string,any> = new Map();
/**
* Creates an instance of SysOpenAccessUIServiceBase.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessUIServiceBase
*/
constructor(opts: any = {}) {
super(opts);
this.authService = new SysOpenAccessAuthService(opts);
this.initViewMap();
this.initDeMainStateMap();
this.initDeMainStateOPPrivsMap();
}
/**
* 初始化视图Map
*
* @memberof SysOpenAccessUIServiceBase
*/
public initViewMap(){
this.allViewMap.set('MDATAVIEW:',{viewname:'gridview',srfappde:'sysopenaccesses'});
this.allViewMap.set('EDITVIEW:',{viewname:'editview',srfappde:'sysopenaccesses'});
}
/**
* 初始化主状态集合
*
* @memberof SysOpenAccessUIServiceBase
*/
public initDeMainStateMap(){
}
/**
* 初始化主状态操作标识
*
* @memberof SysOpenAccessUIServiceBase
*/
public initDeMainStateOPPrivsMap(){
}
/**
* 获取指定数据的重定向页面
*
* @param srfkey 数据主键
* @param isEnableWorkflow 重定向视图是否需要处理流程中的数据
* @memberof SysOpenAccessUIServiceBase
*/
public async getRDAppView(srfkey:string,isEnableWorkflow:boolean){
this.isEnableWorkflow = isEnableWorkflow;
// 进行数据查询
let result:any = await this.dataService.Get({sysopenaccess:srfkey});
const curData:any = result.data;
//判断当前数据模式,默认为true,todo
const iRealDEModel:boolean = true;
let bDataInWF:boolean = false;
let bWFMode:any = false;
// 计算数据模式
if (this.isEnableWorkflow) {
bDataInWF = await this.dataService.testDataInWF({stateValue:this.stateValue,stateField:this.stateField},curData);
if (bDataInWF) {
bDataInWF = true;
bWFMode = await this.dataService.testUserExistWorklist(null,curData);
}
}
let strPDTViewParam:string = await this.getDESDDEViewPDTParam(curData, bDataInWF, bWFMode);
//若不是当前数据模式,处理strPDTViewParam,todo
//查找视图
//返回视图
return this.allViewMap.get(strPDTViewParam);
}
/**
* 获取实际的数据类型
*
* @memberof SysOpenAccessUIServiceBase
*/
public getRealDEType(entity:any){
}
/**
* 获取实体单数据实体视图预定义参数
*
* @param curData 当前数据
* @param bDataInWF 是否有数据在工作流中
* @param bWFMode 是否工作流模式
* @memberof SysOpenAccessUIServiceBase
*/
public async getDESDDEViewPDTParam(curData:any, bDataInWF:boolean, bWFMode:boolean){
let strPDTParam:string = '';
if (bDataInWF) {
// 判断数据是否在流程中
}
//多表单,todo
const isEnableMultiForm:boolean = false;
const multiFormDEField:string|null =null;
if (isEnableMultiForm && multiFormDEField) {
const objFormValue:string = curData[multiFormDEField];
if(!Environment.isAppMode){
return 'MOBEDITVIEW'+objFormValue;
}
return 'EDITVIEW'+objFormValue;
}
if(!Environment.isAppMode){
if(this.getDEMainStateTag(curData)){
return `MOBEDITVIEW:MSTAG:${ this.getDEMainStateTag(curData)}`;
}
return 'MOBEDITVIEW:';
}
if(this.getDEMainStateTag(curData)){
return `EDITVIEW:MSTAG:${ this.getDEMainStateTag(curData)}`;
}
return 'EDITVIEW:';
}
/**
* 获取数据对象的主状态标识
*
* @param curData 当前数据
* @memberof SysOpenAccessUIServiceBase
*/
public getDEMainStateTag(curData:any){
if(this.mainStateFields.length === 0) return null;
this.mainStateFields.forEach((singleMainField:any) =>{
if(!(singleMainField in curData)){
console.warn(`当前数据对象不包含属性${singleMainField},可能会发生错误`);
}
})
for (let i = 0; i <= 1; i++) {
let strTag:string = (curData[this.mainStateFields[0]])?(i == 0) ? curData[this.mainStateFields[0]] : "":"";
if (this.mainStateFields.length >= 2) {
for (let j = 0; j <= 1; j++) {
let strTag2:string = (curData[this.mainStateFields[1]])?`${strTag}__${(j == 0) ? curData[this.mainStateFields[1]] : ""}`:strTag;
if (this.mainStateFields.length >= 3) {
for (let k = 0; k <= 1; k++) {
let strTag3:string = (curData[this.mainStateFields[2]])?`${strTag2}__${(k == 0) ? curData[this.mainStateFields[2]] : ""}`:strTag2;
// 判断是否存在
return this.allDeMainStateMap.get(strTag3);
}
}else{
return this.allDeMainStateMap.get(strTag2);
}
}
}else{
return this.allDeMainStateMap.get(strTag);
}
}
return null;
}
/**
* 获取数据对象当前操作标识
*
* @param data 当前数据
* @memberof SysOpenAccessUIServiceBase
*/
public getDEMainStateOPPrivs(data:any){
if(this.getDEMainStateTag(data)){
return this.allDeMainStateOPPrivsMap.get((this.getDEMainStateTag(data) as string));
}else{
return null;
}
}
/**
* 获取数据对象所有的操作标识
*
* @param data 当前数据
* @memberof SysOpenAccessUIServiceBase
*/
public getAllOPPrivs(data:any){
return this.authService.getOPPrivs(this.getDEMainStateOPPrivs(data));
}
}
\ No newline at end of file
import SysOpenAccessUIServiceBase from './sys-open-access-ui-service-base';
/**
* 第三方认证平台UI服务对象
*
* @export
* @class SysOpenAccessUIService
*/
export default class SysOpenAccessUIService extends SysOpenAccessUIServiceBase {
/**
* Creates an instance of SysOpenAccessUIService.
*
* @param {*} [opts={}]
* @memberof SysOpenAccessUIService
*/
constructor(opts: any = {}) {
super(opts);
}
}
\ No newline at end of file
......@@ -39,7 +39,8 @@ export class UIServiceRegister {
* @memberof UIServiceRegister
*/
protected init(): void {
this.allUIService.set('sysauthlog', () => import('@/uiservice/sys-auth-log/sys-auth-log-ui-service'));
this.allUIService.set('sysopenaccess', () => import('@/uiservice/sys-open-access/sys-open-access-ui-service'));
this.allUIService.set('sysauthlog', () => import('@/uiservice/sys-auth-log/sys-auth-log-ui-service'));
this.allUIService.set('sysapp', () => import('@/uiservice/sys-app/sys-app-ui-service'));
this.allUIService.set('sysrolepermission', () => import('@/uiservice/sys-role-permission/sys-role-permission-ui-service'));
this.allUIService.set('syspermission', () => import('@/uiservice/sys-permission/sys-permission-ui-service'));
......
......@@ -582,6 +582,9 @@ export default class MainBase extends Vue implements ControlInterface {
navDataService.removeNavData(this.viewtag);
}
switch (item.appfunctag) {
case '_2':
this.click_2(item);
return;
case 'Auto10':
this.clickAuto10(item);
return;
......@@ -601,6 +604,29 @@ export default class MainBase extends Vue implements ControlInterface {
}
/**
* 第三方认证平台
*
* @param {*} [item={}]
* @memberof Main
*/
public click_2(item: any = {}) {
const viewparam: any = {};
Object.assign(viewparam, {});
const deResParameters: any[] = [];
const parameters: any[] = [
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'gridview', parameterName: 'gridview' },
];
const path: string = this.$viewTool.buildUpRoutePath(this.$route, {}, deResParameters, parameters, [], viewparam);
if(Object.is(this.$route.fullPath,path)){
return;
}
this.$nextTick(function(){
this.$router.push(path);
})
}
/**
* 角色
*
......
......@@ -89,6 +89,25 @@ export default class MainModel {
appfunctag: 'Auto12',
resourcetag: '',
authtag:'web-Main-menuitem2',
},
{
id: 'A045832E-C0C7-4E66-A0E0-E9286DC96A8C',
name: 'menuitem4',
text: '第三方认证',
type: 'MENUITEM',
counterid: '',
tooltip: '第三方认证',
expanded: false,
separator: false,
hidden: false,
hidesidebar: false,
opendefault: false,
iconcls: 'fa fa-slack',
icon: '',
textcls: '',
appfunctag: '_2',
resourcetag: '',
authtag:'web-Main-menuitem4',
},
];
......@@ -100,6 +119,18 @@ export default class MainModel {
* @memberof MainModel
*/
public funcs: any[] = [
{
appfunctag: '_2',
appfuncyype: 'APPVIEW',
openmode: '',
codename: 'sysopenaccessgridview',
deResParameters: [],
routepath: '/index/:index?/sysopenaccesses/:sysopenaccess?/gridview/:gridview?',
parameters: [
{ pathName: 'sysopenaccesses', parameterName: 'sysopenaccess' },
{ pathName: 'gridview', parameterName: 'gridview' },
],
},
{
appfunctag: 'Auto10',
appfuncyype: 'APPVIEW',
......
/**
* Default 部件模型
*
* @export
* @class DefaultModel
*/
export default class DefaultModel {
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof DefaultModel
*/
public getDataItems(): any[] {
return [
{
name: 'srfwfmemo',
prop: 'srfwfmemo',
dataType: 'TEXT',
},
// 前端新增修改标识,新增为"0",修改为"1"或未设值
{
name: 'srffrontuf',
prop: 'srffrontuf',
dataType: 'TEXT',
},
{
name: 'n_accessname_like',
prop: 'name',
dataType: 'TEXT',
},
{
name: 'n_open_type_eq',
prop: 'open_type',
dataType: 'SSCODELIST',
},
]
}
}
\ No newline at end of file
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import DefaultBase from './default-searchform-base.vue';
@Component({
components: {
}
})
export default class Default extends DefaultBase {
}
</script>
\ No newline at end of file
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import MainBase from './main-form-base.vue';
@Component({
components: {
}
})
export default class Main extends MainBase {
}
</script>
\ No newline at end of file
此差异已折叠。
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册