Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
iBiz人力资源
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz企业套件
iBiz人力资源
提交
2b27c1a2
提交
2b27c1a2
编写于
8月 08, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
jackwang 部署微服务应用
上级
2efe24c0
变更
22
展开全部
隐藏空白字符变更
内嵌
并排
正在显示
22 个修改的文件
包含
1650 行增加
和
12 行删除
+1650
-12
hremployee_en_US.ts
...src/locale/lanres/entities/hremployee/hremployee_en_US.ts
+18
-0
hremployee_zh_CN.ts
...src/locale/lanres/entities/hremployee/hremployee_zh_CN.ts
+18
-0
hremployee-grid-view-base.tsx
...source/hremployee-grid-view/hremployee-grid-view-base.tsx
+1
-1
hremployee-list-exp-view-base.tsx
...remployee-list-exp-view/hremployee-list-exp-view-base.tsx
+679
-0
hremployee-list-exp-view.html
...ce/hremployee-list-exp-view/hremployee-list-exp-view.html
+22
-0
hremployee-list-exp-view.vue
...rce/hremployee-list-exp-view/hremployee-list-exp-view.vue
+22
-0
page-register.ts
app_PIM/src/pages/ungroup/pim/page-register.ts
+1
-0
router.ts
app_PIM/src/pages/ungroup/pim/router.ts
+14
-0
state.ts
app_PIM/src/store/modules/view-action/state.ts
+10
-0
interceptor.ts
app_PIM/src/utils/interceptor/interceptor.ts
+7
-8
list-001-list-base.tsx
...c/widgets/hremployee/list-001-list/list-001-list-base.tsx
+76
-0
list-001-list-model.ts
...c/widgets/hremployee/list-001-list/list-001-list-model.ts
+67
-0
list-001-list-service.ts
...widgets/hremployee/list-001-list/list-001-list-service.ts
+163
-0
list-001-list.html
...M/src/widgets/hremployee/list-001-list/list-001-list.html
+10
-0
list-001-list.vue
...IM/src/widgets/hremployee/list-001-list/list-001-list.vue
+22
-0
list-exp-viewlistexpbar-listexpbar-base.tsx
...ar-listexpbar/list-exp-viewlistexpbar-listexpbar-base.tsx
+386
-0
list-exp-viewlistexpbar-listexpbar-model.ts
...ar-listexpbar/list-exp-viewlistexpbar-listexpbar-model.ts
+21
-0
list-exp-viewlistexpbar-listexpbar-service.ts
...-listexpbar/list-exp-viewlistexpbar-listexpbar-service.ts
+44
-0
list-exp-viewlistexpbar-listexpbar.html
...expbar-listexpbar/list-exp-viewlistexpbar-listexpbar.html
+39
-0
list-exp-viewlistexpbar-listexpbar.less
...expbar-listexpbar/list-exp-viewlistexpbar-listexpbar.less
+3
-0
list-exp-viewlistexpbar-listexpbar.vue
...texpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.vue
+24
-0
h2_table.xml
humanresource-core/src/main/resources/liquibase/h2_table.xml
+3
-3
未找到文件。
app_PIM/src/locale/lanres/entities/hremployee/hremployee_en_US.ts
浏览文件 @
2b27c1a2
...
...
@@ -212,4 +212,22 @@ export default {
tip
:
"Help"
,
},
},
listexpviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
},
tbitem4
:
{
caption
:
"Edit"
,
tip
:
"Edit {0}"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"Remove"
,
tip
:
"Remove {0}"
,
},
},
};
\ No newline at end of file
app_PIM/src/locale/lanres/entities/hremployee/hremployee_zh_CN.ts
浏览文件 @
2b27c1a2
...
...
@@ -211,4 +211,22 @@ export default {
tip
:
"帮助"
,
},
},
listexpviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem4
:
{
caption
:
"编辑"
,
tip
:
"编辑"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"删除"
,
tip
:
"删除"
,
},
},
};
\ No newline at end of file
app_PIM/src/pages/human-resource/hremployee-grid-view/hremployee-grid-view-base.tsx
浏览文件 @
2b27c1a2
...
...
@@ -598,7 +598,7 @@ export class HREmployeeGridViewBase extends GridViewBase {
const
deResParameters
:
any
[]
=
[];
const
parameters
:
any
[]
=
[
{
pathName
:
'hremployees'
,
parameterName
:
'hremployee'
},
{
pathName
:
'
editview'
,
parameterName
:
'edit
view'
},
{
pathName
:
'
listexpview'
,
parameterName
:
'listexp
view'
},
];
const
_this
:
any
=
this
;
const
openIndexViewTab
=
(
data
:
any
)
=>
{
...
...
app_PIM/src/pages/human-resource/hremployee-list-exp-view/hremployee-list-exp-view-base.tsx
0 → 100644
浏览文件 @
2b27c1a2
此差异已折叠。
点击以展开。
app_PIM/src/pages/human-resource/hremployee-list-exp-view/hremployee-list-exp-view.html
0 → 100644
浏览文件 @
2b27c1a2
<studio-view-style2
viewName=
"hremployeelistexpview"
viewTitle=
"员工信息"
class=
'delistexpview hremployee-list-exp-view'
>
<template
slot=
'title'
>
<span
class=
'caption-info'
>
{{$t(model.srfTitle)}}
</span>
</template>
<template
slot=
"toolbar"
>
<view-toolbar
mode=
"STYLE2"
:model=
"toolBarModels"
@
item-click=
"toolbar_click.apply(_self, arguments)"
/>
</template>
<view
_listexpbar
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:showBusyIndicator=
"true"
:viewUID=
"viewUID"
:newdata=
"newdata"
:opendata=
"opendata"
name=
"listexpbar"
ref=
'listexpbar'
@
selectionchange=
"listexpbar_selectionchange($event)"
@
activated=
"listexpbar_activated($event)"
@
load=
"listexpbar_load($event)"
@
closeview=
"closeView($event)"
>
</view
_listexpbar
>
</studio-view-style2>
\ No newline at end of file
app_PIM/src/pages/human-resource/hremployee-list-exp-view/hremployee-list-exp-view.vue
0 → 100644
浏览文件 @
2b27c1a2
<
template
src=
"./hremployee-list-exp-view.html"
/>
<script
lang=
'tsx'
>
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HREmployeeListExpViewBase } from './hremployee-list-exp-view-base';
import view_listexpbar from '@widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.vue';
/**
* 员工信息视图
*
* @export
* @class HREmployeeListExpView
* @extends {HREmployeeListExpViewBase}
*/
@Component({
components: {
view_listexpbar,
}
})
@VueLifeCycleProcessing()
export default class HREmployeeListExpView extends HREmployeeListExpViewBase { }
</script>
app_PIM/src/pages/ungroup/pim/page-register.ts
浏览文件 @
2b27c1a2
...
...
@@ -39,6 +39,7 @@ export const PageComponents = {
Vue
.
component
(
'hrlegal-v-001'
,
()
=>
import
(
'@pages/base/hrlegal-v-001/hrlegal-v-001.vue'
));
Vue
.
component
(
'hrpost-pickup-grid-view'
,
()
=>
import
(
'@pages/human-resource/hrpost-pickup-grid-view/hrpost-pickup-grid-view.vue'
));
Vue
.
component
(
'hrduty-skill-grid-view'
,
()
=>
import
(
'@pages/human-resource/hrduty-skill-grid-view/hrduty-skill-grid-view.vue'
));
Vue
.
component
(
'hremployee-list-exp-view'
,
()
=>
import
(
'@pages/human-resource/hremployee-list-exp-view/hremployee-list-exp-view.vue'
));
Vue
.
component
(
'hrduty-edu-v-001'
,
()
=>
import
(
'@pages/human-resource/hrduty-edu-v-001/hrduty-edu-v-001.vue'
));
Vue
.
component
(
'hrpost-dashboard-view'
,
()
=>
import
(
'@pages/human-resource/hrpost-dashboard-view/hrpost-dashboard-view.vue'
));
Vue
.
component
(
'hrorg-address-edit-view'
,
()
=>
import
(
'@pages/base/hrorg-address-edit-view/hrorg-address-edit-view.vue'
));
...
...
app_PIM/src/pages/ungroup/pim/router.ts
浏览文件 @
2b27c1a2
...
...
@@ -859,6 +859,20 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/human-resource/hrduty-skill-grid-view/hrduty-skill-grid-view.vue'
),
},
{
path
:
'hremployees/:hremployee?/listexpview/:listexpview?'
,
meta
:
{
caption
:
'entities.hremployee.views.listexpview.title'
,
info
:
''
,
parameters
:
[
{
pathName
:
'pim'
,
parameterName
:
'pim'
},
{
pathName
:
'hremployees'
,
parameterName
:
'hremployee'
},
{
pathName
:
'listexpview'
,
parameterName
:
'listexpview'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/human-resource/hremployee-list-exp-view/hremployee-list-exp-view.vue'
),
},
{
path
:
'hrduties/:hrduty?/hrdutyedus/:hrdutyedu?/v_001/:v_001?'
,
meta
:
{
...
...
app_PIM/src/store/modules/view-action/state.ts
浏览文件 @
2b27c1a2
...
...
@@ -465,6 +465,15 @@ export const viewstate: any = {
refviews
:
[
],
},
{
viewtag
:
'92826c47e3d2b905845fe1ad5c30be62'
,
viewmodule
:
'HumanResource'
,
viewname
:
'HREmployeeListExpView'
,
viewaction
:
''
,
viewdatachange
:
false
,
refviews
:
[
],
},
{
viewtag
:
'9420eeffff765c2a6e4ac27dfae7fb2d'
,
viewmodule
:
'Base'
,
...
...
@@ -484,6 +493,7 @@ export const viewstate: any = {
viewdatachange
:
false
,
refviews
:
[
'b932c0eb66409c638c29ee27ba4fda37'
,
'92826c47e3d2b905845fe1ad5c30be62'
,
],
},
{
...
...
app_PIM/src/utils/interceptor/interceptor.ts
浏览文件 @
2b27c1a2
...
...
@@ -145,27 +145,26 @@ export class Interceptors {
if
(
localStorage
.
getItem
(
'token'
)){
localStorage
.
removeItem
(
'token'
);
}
le
t
leftTime
=
new
Date
();
cons
t
leftTime
=
new
Date
();
leftTime
.
setTime
(
leftTime
.
getSeconds
()
-
1
);
document
.
cookie
=
"ibzuaa-token=;expires="
+
leftTime
.
toUTCString
();
if
(
data
.
loginurl
&&
!
Object
.
is
(
data
.
loginurl
,
''
)
&&
data
.
originurl
&&
!
Object
.
is
(
data
.
originurl
,
''
))
{
let
_url
=
encodeURIComponent
(
encodeURIComponent
(
window
.
location
.
href
));
let
login
u
rl
:
string
=
data
.
loginurl
;
const
origin
u
rl
:
string
=
data
.
originurl
;
let
login
U
rl
:
string
=
data
.
loginurl
;
const
origin
U
rl
:
string
=
data
.
originurl
;
if
(
origin
u
rl
.
indexOf
(
'?'
)
===
-
1
)
{
if
(
origin
U
rl
.
indexOf
(
'?'
)
===
-
1
)
{
_url
=
`
${
encodeURIComponent
(
'?RU='
)}${
_url
}
`
;
}
else
{
_url
=
`
${
encodeURIComponent
(
'&RU='
)}${
_url
}
`
;
}
loginurl
=
`
${
loginurl
}${
_url
}
`
;
window
.
location
.
href
=
loginurl
;
loginUrl
=
`
${
loginUrl
}${
_url
}
`
;
window
.
location
.
href
=
loginUrl
;
}
else
{
if
(
Object
.
is
(
this
.
router
.
currentRoute
.
name
,
'login'
))
{
return
;
}
this
.
router
.
push
({
name
:
'login'
,
query
:
{
redirect
:
this
.
router
.
currentRoute
.
fullPath
}
});
this
.
router
.
push
({
name
:
'login'
,
query
:
{
redirect
:
encodeURIComponent
(
location
.
href
)
}
});
}
}
...
...
app_PIM/src/widgets/hremployee/list-001-list/list-001-list-base.tsx
0 → 100644
浏览文件 @
2b27c1a2
import
{
Prop
,
Provide
,
Emit
,
Model
}
from
'vue-property-decorator'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
Watch
,
ListControlBase
}
from
'@/studio-core'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
List_001Service
from
'./list-001-list-service'
;
import
HREmployeeUIService
from
'@/uiservice/hremployee/hremployee-ui-service'
;
/**
* listexpbar_list部件基类
*
* @export
* @class ListControlBase
* @extends {List_001ListBase}
*/
export
class
List_001ListBase
extends
ListControlBase
{
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof List_001ListBase
*/
protected
controlType
:
string
=
'LIST'
;
/**
* 建构部件服务对象
*
* @type {List_001Service}
* @memberof List_001ListBase
*/
public
service
:
List_001Service
=
new
List_001Service
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {HREmployeeService}
* @memberof List_001ListBase
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
$store
});
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof List_001ListBase
*/
protected
appDeName
:
string
=
'hremployee'
;
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof List_001ListBase
*/
protected
appDeLogicName
:
string
=
'员工'
;
/**
* 分页条数
*
* @type {number}
* @memberof List_001ListBase
*/
public
limit
:
number
=
1000
;
/**
* 排序方向
*
* @type {string}
* @memberof List_001ListBase
*/
public
minorSortDir
:
string
=
''
;
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-001-list/list-001-list-model.ts
0 → 100644
浏览文件 @
2b27c1a2
/**
* List_001 部件模型
*
* @export
* @class List_001Model
*/
export
default
class
List_001Model
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof List_001Listexpbar_listMode
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'srfkey'
,
prop
:
'employeeid'
,
dataType
:
'GUID'
,
},
{
name
:
'srfmajortext'
,
prop
:
'employeename'
,
dataType
:
'TEXT'
,
},
{
name
:
'organizationid'
,
prop
:
'organizationid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'empstate'
,
prop
:
'empstate'
,
dataType
:
'PICKUP'
,
},
{
name
:
'hremployee'
,
prop
:
'employeeid'
,
dataType
:
'FONTKEY'
,
},
{
name
:
'size'
,
prop
:
'size'
},
{
name
:
'query'
,
prop
:
'query'
},
{
name
:
'sort'
,
prop
:
'sort'
},
{
name
:
'page'
,
prop
:
'page'
},
// 前端新增修改标识,新增为"0",修改为"1"或未设值
{
name
:
'srffrontuf'
,
prop
:
'srffrontuf'
,
dataType
:
'TEXT'
,
},
]
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-001-list/list-001-list-service.ts
0 → 100644
浏览文件 @
2b27c1a2
import
{
Http
,
Util
,
Errorlog
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
List_001Model
from
'./list-001-list-model'
;
/**
* List_001 部件服务对象
*
* @export
* @class List_001Service
*/
export
default
class
List_001Service
extends
ControlService
{
/**
* 员工服务对象
*
* @type {HREmployeeService}
* @memberof List_001Service
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
getStore
()
});
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof List_001Service
*/
public
setTempMode
(){
this
.
isTempMode
=
false
;
}
/**
* Creates an instance of List_001Service.
*
* @param {*} [opts={}]
* @memberof List_001Service
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
model
=
new
List_001Model
();
}
/**
* 查询数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof List_001Service
*/
@
Errorlog
public
search
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestData
(
action
,
context
,
data
,
true
);
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
const
_appEntityService
:
any
=
this
.
appEntityService
;
let
result
:
Promise
<
any
>
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
_appEntityService
.
FetchDefault
(
Context
,
Data
,
isloading
);
}
result
.
then
(
async
(
response
)
=>
{
await
this
.
handleResponse
(
action
,
response
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 删除数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof List_001Service
*/
@
Errorlog
public
delete
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestData
(
action
,
context
,
data
,
true
);
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
const
_appEntityService
:
any
=
this
.
appEntityService
;
let
result
:
Promise
<
any
>
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
_appEntityService
.
remove
(
Context
,
Data
,
isloading
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 添加数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof List_001Service
*/
@
Errorlog
public
add
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestData
(
action
,
context
,
data
,
true
);
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
const
_appEntityService
:
any
=
this
.
appEntityService
;
let
result
:
Promise
<
any
>
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
_appEntityService
.
Create
(
Context
,
Data
,
isloading
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 修改数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof List_001Service
*/
@
Errorlog
public
update
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestData
(
action
,
context
,
data
,
true
);
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
const
_appEntityService
:
any
=
this
.
appEntityService
;
let
result
:
Promise
<
any
>
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
_appEntityService
.
Update
(
Context
,
Data
,
isloading
);
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-001-list/list-001-list.html
0 → 100644
浏览文件 @
2b27c1a2
<div
:class=
"['app-list', this.items.length > 0 ? '' : 'app-list-empty' ]"
>
<div
v-if=
"items.length > 0"
style=
"height:100%;"
>
<div
v-for =
"item in items"
:key=
"item.srfkey"
:class=
"['app-list-item', {'isSelect': item.isselected === true ? true : false}]"
@
click=
"handleClick(item)"
@
dblclick=
"handleDblClick(item)"
>
{{item.srfmajortext}}
</div>
</div>
<div
v-else
>
{{ $t('app.commonWords.noData') }}
</div>
</div>
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-001-list/list-001-list.vue
0 → 100644
浏览文件 @
2b27c1a2
<
template
src=
"./list-001-list.html"
/>
<script
lang=
'tsx'
>
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { List_001ListBase } from './list-001-list-base';
/**
* listexpbar_list部件
*
* @export
* @class List_001List
* @extends {List_001ListBase}
*/
@Component({
components: {
}
})
@VueLifeCycleProcessing()
export default class List_001List extends List_001ListBase { }
</script>
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar-base.tsx
0 → 100644
浏览文件 @
2b27c1a2
import
{
Prop
,
Provide
,
Emit
,
Model
}
from
'vue-property-decorator'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
Watch
,
MainControlBase
}
from
'@/studio-core'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
ListExpViewlistexpbarService
from
'./list-exp-viewlistexpbar-listexpbar-service'
;
import
HREmployeeUIService
from
'@/uiservice/hremployee/hremployee-ui-service'
;
/**
* listexpbar部件基类
*
* @export
* @class MainControlBase
* @extends {ListExpViewlistexpbarListexpbarBase}
*/
export
class
ListExpViewlistexpbarListexpbarBase
extends
MainControlBase
{
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof ListExpViewlistexpbarListexpbarBase
*/
protected
controlType
:
string
=
'LISTEXPBAR'
;
/**
* 建构部件服务对象
*
* @type {ListExpViewlistexpbarService}
* @memberof ListExpViewlistexpbarListexpbarBase
*/
public
service
:
ListExpViewlistexpbarService
=
new
ListExpViewlistexpbarService
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {HREmployeeService}
* @memberof ListExpViewlistexpbarListexpbarBase
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
$store
});
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof ListExpViewlistexpbarListexpbarBase
*/
protected
appDeName
:
string
=
'hremployee'
;
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof ListExpViewlistexpbarListexpbarBase
*/
protected
appDeLogicName
:
string
=
'员工'
;
/**
* listexpbar_list 部件 selectionchange 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof ListExpViewlistexpbarListexpbarBase
*/
public
listexpbar_list_selectionchange
(
$event
:
any
,
$event2
?:
any
)
{
this
.
listexpbar_selectionchange
(
$event
,
'listexpbar_list'
,
$event2
);
}
/**
* listexpbar_list 部件 load 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof ListExpViewlistexpbarListexpbarBase
*/
public
listexpbar_list_load
(
$event
:
any
,
$event2
?:
any
)
{
this
.
listexpbar_load
(
$event
,
'listexpbar_list'
,
$event2
);
}
/**
* 打开新建数据视图
*
* @type {any}
* @memberof ListExpViewlistexpbarBase
*/
@
Prop
()
public
newdata
:
any
;
/**
* 打开编辑数据视图
*
* @type {any}
* @memberof ListExpViewlistexpbarBase
*/
@
Prop
()
public
opendata
:
any
;
/**
* 视图唯一标识
*
* @type {boolean}
* @memberof ListExpViewlistexpbarBase
*/
@
Prop
()
public
viewUID
!
:
string
;
/**
* 是否单选
*
* @public
* @type {(boolean)}
* @memberof ListExpViewlistexpbarBase
*/
public
isSingleSelect
:
boolean
=
true
;
/**
* 呈现模式,可选值:horizontal或者vertical
*
* @public
* @type {(string)}
* @memberof ListExpViewlistexpbarBase
*/
public
showMode
:
string
=
"horizontal"
;
/**
* 控件宽度
*
* @type {number}
* @memberof ListExpViewlistexpbarBase
*/
public
ctrlWidth
:
number
=
0
;
/**
* 控件高度
*
* @type {number}
* @memberof ListExpViewlistexpbarBase
*/
public
ctrlHeight
:
number
=
0
;
/**
* 搜素值
*
* @public
* @type {(string)}
* @memberof ListExpViewlistexpbarBase
*/
public
searchText
:
string
=
""
;
/**
* 分割宽度
*
* @type {number}
* @memberof ListExpViewlistexpbarBase
*/
public
split
:
number
=
0.2
;
/**
* 导航视图名称
*
* @type {string}
* @memberof ListExpViewlistexpbarBase
*/
public
navViewName
:
string
=
""
;
/**
* 导航视图参数
*
* @type {string}
* @memberof ListExpViewlistexpbarBase
*/
public
navViewParam
:
string
=
'{}'
;
/**
* 导航过滤项
*
* @type {string}
* @memberof ListExpViewlistexpbarBase
*/
public
navFilter
:
string
=
""
;
/**
* 导航关系
*
* @type {string}
* @memberof ListExpViewlistexpbarBase
*/
public
navPSDer
:
string
=
""
;
/**
* 导航上下文参数
*
* @type {*}
* @memberof ListExpViewlistexpbarBase
*/
public
navigateContext
:
any
=
null
;
/**
* 导航视图参数
*
* @type {*}
* @memberof ListExpViewlistexpbarBase
*/
public
navigateParams
:
any
=
null
;
/**
* 显示处理提示
*
* @type {boolean}
* @memberof ListExpViewlistexpbarBase
*/
@
Prop
({
default
:
true
})
public
showBusyIndicator
!
:
boolean
;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof ListExpViewlistexpbarBase
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof ListExpViewlistexpbarBase
*/
public
getData
():
any
{
return
null
;
}
/**
* 选中数据
*
* @type {*}
* @memberof ListExpViewlistexpbarBase
*/
public
selection
:
any
=
{};
/**
* split值变化事件
*
* @memberof ListExpViewlistexpbarBase
*/
public
onSplitChange
()
{
if
(
this
.
split
){
this
.
$store
.
commit
(
"setViewSplit"
,{
viewUID
:
this
.
viewUID
,
viewSplit
:
this
.
split
});
}
}
/**
* Vue声明周期(组件初始化完毕)
*
* @memberof ListExpViewlistexpbarBase
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof ListExpViewlistexpbarBase
*/
public
afterCreated
(){
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
!
Object
.
is
(
tag
,
this
.
name
))
{
return
;
}
this
.
viewState
.
next
({
tag
:
'listexpbar_list'
,
action
:
action
,
data
:
data
});
});
}
}
/**
* 执行mounted后的逻辑
*
* @memberof ListExpViewlistexpbarBase
*/
public
afterMounted
(){
if
(
this
.
$store
.
getters
.
getViewSplit
(
this
.
viewUID
)){
this
.
split
=
this
.
$store
.
getters
.
getViewSplit
(
this
.
viewUID
);
}
else
{
let
containerWidth
:
number
=
(
document
.
getElementById
(
"listexpviewlistexpbar"
)
as
any
).
offsetWidth
;
let
containerHeight
:
number
=
(
document
.
getElementById
(
"listexpviewlistexpbar"
)
as
any
).
offsetHeight
;
if
(
Object
.
is
(
this
.
showMode
,
'horizontal'
)){
if
(
this
.
ctrlWidth
){
this
.
split
=
this
.
ctrlWidth
/
containerWidth
;
}
}
else
{
if
(
this
.
ctrlHeight
){
this
.
split
=
this
.
ctrlHeight
/
containerHeight
;
}
}
this
.
$store
.
commit
(
"setViewSplit"
,{
viewUID
:
this
.
viewUID
,
viewSplit
:
this
.
split
});
}
}
/**
* Vue声明周期(组件渲染完毕)
*
* @memberof ListExpViewlistexpbarBase
*/
public
mounted
()
{
this
.
afterMounted
();
}
/**
* vue 生命周期
*
* @memberof ListExpViewlistexpbarBase
*/
public
destroyed
()
{
this
.
afterDestroy
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof ListExpViewlistexpbarBase
*/
public
afterDestroy
()
{
if
(
this
.
viewStateEvent
)
{
this
.
viewStateEvent
.
unsubscribe
();
}
}
/**
* listexpbar的选中数据事件
*
* @memberof ListExpViewlistexpbarBase
*/
public
listexpbar_selectionchange
(
args
:
any
[],
tag
?:
string
,
$event2
?:
any
):
void
{
let
tempContext
:
any
=
{};
let
tempViewParam
:
any
=
{};
if
(
args
.
length
===
0
)
{
return
;
}
const
arg
:
any
=
args
[
0
];
if
(
this
.
context
){
Object
.
assign
(
tempContext
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)));
}
Object
.
assign
(
tempContext
,{
'hremployee'
:
arg
[
'hremployee'
]});
Object
.
assign
(
tempContext
,{
srfparentdename
:
'HREmployee'
,
srfparentkey
:
arg
[
'hremployee'
]});
if
(
this
.
navFilter
&&
!
Object
.
is
(
this
.
navFilter
,
""
)){
Object
.
assign
(
tempViewParam
,{[
this
.
navFilter
]:
arg
[
'hremployee'
]});
}
if
(
this
.
navPSDer
&&
!
Object
.
is
(
this
.
navPSDer
,
""
)){
Object
.
assign
(
tempViewParam
,{[
this
.
navPSDer
]:
arg
[
'hremployee'
]});
}
if
(
this
.
navigateContext
&&
Object
.
keys
(
this
.
navigateContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
arg
,
tempContext
,
tempViewParam
,
this
.
navigateContext
);
Object
.
assign
(
tempContext
,
_context
);
}
if
(
this
.
navigateParams
&&
Object
.
keys
(
this
.
navigateParams
).
length
>
0
){
let
_params
:
any
=
this
.
$util
.
computedNavData
(
arg
,
tempContext
,
tempViewParam
,
this
.
navigateParams
);
Object
.
assign
(
tempViewParam
,
_params
);
}
this
.
selection
=
{};
Object
.
assign
(
this
.
selection
,
{
view
:
{
viewname
:
this
.
navViewName
},
context
:
tempContext
,
viewparam
:
tempViewParam
});
this
.
$forceUpdate
();
}
/**
* listexpbar的load完成事件
*
* @memberof ListExpViewlistexpbarBase
*/
public
listexpbar_load
(
args
:
any
,
tag
?:
string
,
$event2
?:
any
){
this
.
$emit
(
'load'
,
args
);
}
/**
* 执行搜索
*
* @memberof ListExpViewlistexpbarBase
*/
public
onSearch
(
$event
:
any
)
{
this
.
viewState
.
next
({
tag
:
'listexpbar_list'
,
action
:
"load"
,
data
:
{
query
:
this
.
searchText
}});
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar-model.ts
0 → 100644
浏览文件 @
2b27c1a2
/**
* ListExpViewlistexpbar 部件模型
*
* @export
* @class ListExpViewlistexpbarModel
*/
export
default
class
ListExpViewlistexpbarModel
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof ListExpViewlistexpbarListexpbarMode
*/
public
getDataItems
():
any
[]
{
return
[
]
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar-service.ts
0 → 100644
浏览文件 @
2b27c1a2
import
{
Http
,
Util
,
Errorlog
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
ListExpViewlistexpbarModel
from
'./list-exp-viewlistexpbar-listexpbar-model'
;
/**
* ListExpViewlistexpbar 部件服务对象
*
* @export
* @class ListExpViewlistexpbarService
*/
export
default
class
ListExpViewlistexpbarService
extends
ControlService
{
/**
* 员工服务对象
*
* @type {HREmployeeService}
* @memberof ListExpViewlistexpbarService
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
getStore
()
});
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof ListExpViewlistexpbarService
*/
public
setTempMode
(){
this
.
isTempMode
=
false
;
}
/**
* Creates an instance of ListExpViewlistexpbarService.
*
* @param {*} [opts={}]
* @memberof ListExpViewlistexpbarService
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
model
=
new
ListExpViewlistexpbarModel
();
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.html
0 → 100644
浏览文件 @
2b27c1a2
<split
id=
"listexpviewlistexpbar"
class=
"app-list-exp-bar show-title-bar"
v-model=
"split"
mode=
"horizontal"
@
on-move-end=
"onSplitChange.apply(_self, arguments)"
>
<template
slot=
'left'
>
<div
class=
'list-exp-bar-header'
>
{{$t('app.listExpBar.title')}}
</div>
<div
class=
"container-header"
>
</div>
<div
class=
'list-exp-bar-content'
>
<view
_listexpbar_list
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
createAction=
"Create"
removeAction=
"Remove"
updateAction=
"Update"
fetchAction=
"FetchDefault"
:showBusyIndicator=
"true"
:isSelectFirstDefault=
"true"
:newdata=
"newdata"
:opendata=
"opendata"
name=
"listexpbar_list"
ref=
'listexpbar_list'
@
selectionchange=
"listexpbar_list_selectionchange($event)"
@
load=
"listexpbar_list_load($event)"
@
closeview=
"closeView($event)"
>
</view
_listexpbar_list
>
</div>
</template>
<template
slot=
'right'
>
<component
v-if=
"selection.view && !Object.is(this.selection.view.viewname, '')"
:is=
"selection.view.viewname"
class=
"viewcontainer2"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(selection.context)"
:viewparam=
"JSON.stringify(selection.viewparam)"
>
</component>
</template>
</split>
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.less
0 → 100644
浏览文件 @
2b27c1a2
.app-list-exp-bar {
--app-list-exp-bar: 0px;
}
app_PIM/src/widgets/hremployee/list-exp-viewlistexpbar-listexpbar/list-exp-viewlistexpbar-listexpbar.vue
0 → 100644
浏览文件 @
2b27c1a2
<
template
src=
"./list-exp-viewlistexpbar-listexpbar.html"
/>
<script
lang=
'tsx'
>
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { ListExpViewlistexpbarListexpbarBase } from './list-exp-viewlistexpbar-listexpbar-base';
import view_listexpbar_list from '@widgets/hremployee/list-001-list/list-001-list.vue';
/**
* listexpbar部件
*
* @export
* @class ListExpViewlistexpbarListexpbar
* @extends {ListExpViewlistexpbarListexpbarBase}
*/
@Component({
components: {
view_listexpbar_list,
}
})
@VueLifeCycleProcessing()
export default class ListExpViewlistexpbarListexpbar extends ListExpViewlistexpbarListexpbarBase { }
</script>
humanresource-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
2b27c1a2
...
...
@@ -178,7 +178,7 @@
<!--输出实体[HREMPLOYEE]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hremployee-
93
-8"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hremployee-
105
-8"
>
<createTable
tableName=
"EMPLOYEE"
>
<column
name=
"EMPLOYEENAME"
remarks=
""
type=
"VARCHAR(200)"
>
</column>
...
...
@@ -593,10 +593,10 @@
</changeSet>
<!--输出实体[HREMPSTATE]外键关系 -->
<!--输出实体[HREMPLOYEE]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-
93
-26"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-
105
-26"
>
<addForeignKeyConstraint
baseColumnNames=
"ORGANIZATIONID"
baseTableName=
"EMPLOYEE"
constraintName=
"DER1N_EMPLOYEE_ORGANIZATION_OR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ORGANIZATIONID"
referencedTableName=
"ORGANIZATION"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-
93
-27"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-
105
-27"
>
<addForeignKeyConstraint
baseColumnNames=
"EMPSTATE"
baseTableName=
"EMPLOYEE"
constraintName=
"DER1N_HREMPLOYEE_HREMPSTATE_EM"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"HREMPSTATEID"
referencedTableName=
"T_HREMPSTATE"
validate=
"true"
/>
</changeSet>
<!--输出实体[HRLEAVE]外键关系 -->
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录