Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
iBiz人力资源
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz企业套件
iBiz人力资源
提交
23642e72
提交
23642e72
编写于
8月 11, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
jackwang 部署微服务应用
上级
daf92d51
变更
23
隐藏空白字符变更
内嵌
并排
正在显示
23 个修改的文件
包含
1285 行增加
和
609 行删除
+1285
-609
en-US.ts
app_PIM/src/locale/lang/en-US.ts
+2
-2
zh-CN.ts
app_PIM/src/locale/lang/zh-CN.ts
+2
-2
hrcontract_en_US.ts
...src/locale/lanres/entities/hrcontract/hrcontract_en_US.ts
+37
-37
hrcontract_zh_CN.ts
...src/locale/lanres/entities/hrcontract/hrcontract_zh_CN.ts
+37
-37
hremployee_en_US.ts
...src/locale/lanres/entities/hremployee/hremployee_en_US.ts
+19
-42
hremployee_zh_CN.ts
...src/locale/lanres/entities/hremployee/hremployee_zh_CN.ts
+19
-42
pim-appmenu.ts
app_PIM/src/mock/app/pim-appmenu/pim-appmenu.ts
+4
-4
hremployee-v-007-base.tsx
...human-resource/hremployee-v-007/hremployee-v-007-base.tsx
+0
-381
hremployee-v-007.html
...ges/human-resource/hremployee-v-007/hremployee-v-007.html
+0
-2
hremployee-v-007.vue
...ages/human-resource/hremployee-v-007/hremployee-v-007.vue
+1
-1
state.ts
app_PIM/src/store/modules/view-action/state.ts
+1
-0
hremployee-ui-service-base.ts
...IM/src/uiservice/hremployee/hremployee-ui-service-base.ts
+53
-0
pim-appmenu-model.ts
app_PIM/src/widgets/app/pim-appmenu/pim-appmenu-model.ts
+4
-4
tab-exp-viewtabexppanel-tabexppanel-base.tsx
...-tabexppanel/tab-exp-viewtabexppanel-tabexppanel-base.tsx
+5
-5
tab-exp-viewtabexppanel-tabexppanel.html
...anel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel.html
+36
-36
tab-exp-viewtabexppanel-tabexppanel.vue
...panel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel.vue
+6
-6
grid-001-grid-base.tsx
...c/widgets/hremployee/grid-001-grid/grid-001-grid-base.tsx
+317
-0
grid-001-grid-model.ts
...c/widgets/hremployee/grid-001-grid/grid-001-grid-model.ts
+149
-0
grid-001-grid-service.ts
...widgets/hremployee/grid-001-grid/grid-001-grid-service.ts
+345
-0
grid-001-grid.html
...M/src/widgets/hremployee/grid-001-grid/grid-001-grid.html
+218
-0
grid-001-grid.vue
...IM/src/widgets/hremployee/grid-001-grid/grid-001-grid.vue
+22
-0
h2_table.xml
humanresource-core/src/main/resources/liquibase/h2_table.xml
+7
-7
systemResource.json
...ce-core/src/main/resources/permission/systemResource.json
+1
-1
未找到文件。
app_PIM/src/locale/lang/en-US.ts
浏览文件 @
23642e72
...
...
@@ -157,8 +157,8 @@ export default {
menuitem1
:
"-"
,
left_exp
:
"左侧菜单"
,
menuitem5
:
"人员"
,
menuitem15
:
"员工
信息
"
,
menuitem8
:
"合同
信息
"
,
menuitem15
:
"员工"
,
menuitem8
:
"合同"
,
menuitem2
:
"组织"
,
menuitem4
:
"法人"
,
menuitem6
:
"运营单位"
,
...
...
app_PIM/src/locale/lang/zh-CN.ts
浏览文件 @
23642e72
...
...
@@ -157,8 +157,8 @@ export default {
menuitem1
:
"-"
,
left_exp
:
"左侧菜单"
,
menuitem5
:
"人员"
,
menuitem15
:
"员工
信息
"
,
menuitem8
:
"合同
信息
"
,
menuitem15
:
"员工"
,
menuitem8
:
"合同"
,
menuitem2
:
"组织"
,
menuitem4
:
"法人"
,
menuitem6
:
"运营单位"
,
...
...
app_PIM/src/locale/lanres/entities/hrcontract/hrcontract_en_US.ts
浏览文件 @
23642e72
...
...
@@ -113,40 +113,6 @@ export default {
uiactions
:
{
},
},
v_001toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
},
tbitem4
:
{
caption
:
"Edit"
,
tip
:
"Edit {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"
,
...
...
@@ -193,6 +159,40 @@ export default {
tip
:
"Help"
,
},
},
v_001toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
},
tbitem4
:
{
caption
:
"Edit"
,
tip
:
"Edit {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"
,
},
},
gridviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
...
...
@@ -227,7 +227,7 @@ export default {
tip
:
"Filter"
,
},
},
v_00
3
toolbar_toolbar
:
{
v_00
2
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
...
...
@@ -261,7 +261,7 @@ export default {
tip
:
"Filter"
,
},
},
v_00
4
toolbar_toolbar
:
{
v_00
3
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
...
...
@@ -295,7 +295,7 @@ export default {
tip
:
"Filter"
,
},
},
v_00
2
toolbar_toolbar
:
{
v_00
4
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"New"
,
tip
:
"New"
,
...
...
app_PIM/src/locale/lanres/entities/hrcontract/hrcontract_zh_CN.ts
浏览文件 @
23642e72
...
...
@@ -112,40 +112,6 @@ export default {
uiactions
:
{
},
},
v_001toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem4
:
{
caption
:
"编辑"
,
tip
:
"编辑"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"删除"
,
tip
:
"删除"
,
},
tbitem9
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem13
:
{
caption
:
"导出"
,
tip
:
"导出"
,
},
tbitem10
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem19
:
{
caption
:
"过滤"
,
tip
:
"过滤"
,
},
},
editviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"保存"
,
...
...
@@ -192,6 +158,40 @@ export default {
tip
:
"帮助"
,
},
},
v_001toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem4
:
{
caption
:
"编辑"
,
tip
:
"编辑"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"删除"
,
tip
:
"删除"
,
},
tbitem9
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem13
:
{
caption
:
"导出"
,
tip
:
"导出"
,
},
tbitem10
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem19
:
{
caption
:
"过滤"
,
tip
:
"过滤"
,
},
},
gridviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
...
...
@@ -226,7 +226,7 @@ export default {
tip
:
"过滤"
,
},
},
v_00
3
toolbar_toolbar
:
{
v_00
2
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
...
...
@@ -260,7 +260,7 @@ export default {
tip
:
"过滤"
,
},
},
v_00
4
toolbar_toolbar
:
{
v_00
3
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
...
...
@@ -294,7 +294,7 @@ export default {
tip
:
"过滤"
,
},
},
v_00
2
toolbar_toolbar
:
{
v_00
4
toolbar_toolbar
:
{
tbitem3
:
{
caption
:
"新建"
,
tip
:
"新建"
,
...
...
app_PIM/src/locale/lanres/entities/hremployee/hremployee_en_US.ts
浏览文件 @
23642e72
...
...
@@ -234,6 +234,25 @@ export default {
uiactions
:
{
},
},
grid_001_grid
:
{
columns
:
{
employeecode
:
"员工编号"
,
employeename
:
"员工姓名"
,
organizationname
:
"单位"
,
hrdutyname
:
"职务"
,
hrpostname
:
"职位"
,
certnum
:
"证件号码"
,
birthday
:
"出生日期"
,
age
:
"年龄"
,
mobile
:
"移动电话"
,
email
:
"电子邮箱"
,
empstate
:
"员工状态"
,
uagridcolumn1
:
"操作"
,
},
uiactions
:
{
hremployee_signcontract
:
"新签"
,
},
},
main_grid
:
{
columns
:
{
employeecode
:
"员工编号"
,
...
...
@@ -294,48 +313,6 @@ export default {
tip
:
"关闭"
,
},
},
v_007toolbar_toolbar
:
{
tbitem1_ff_002
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem2
:
{
caption
:
"-"
,
tip
:
""
,
},
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"
,
},
},
v_006toolbar_toolbar
:
{
tbitem1_ff_002
:
{
caption
:
"新建"
,
...
...
app_PIM/src/locale/lanres/entities/hremployee/hremployee_zh_CN.ts
浏览文件 @
23642e72
...
...
@@ -233,6 +233,25 @@ export default {
uiactions
:
{
},
},
grid_001_grid
:
{
columns
:
{
employeecode
:
"员工编号"
,
employeename
:
"员工姓名"
,
organizationname
:
"单位"
,
hrdutyname
:
"职务"
,
hrpostname
:
"职位"
,
certnum
:
"证件号码"
,
birthday
:
"出生日期"
,
age
:
"年龄"
,
mobile
:
"移动电话"
,
email
:
"电子邮箱"
,
empstate
:
"员工状态"
,
uagridcolumn1
:
"操作"
,
},
uiactions
:
{
hremployee_signcontract
:
"新签"
,
},
},
main_grid
:
{
columns
:
{
employeecode
:
"员工编号"
,
...
...
@@ -293,48 +312,6 @@ export default {
tip
:
"关闭"
,
},
},
v_007toolbar_toolbar
:
{
tbitem1_ff_002
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem2
:
{
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
:
"过滤"
,
},
},
v_006toolbar_toolbar
:
{
tbitem1_ff_002
:
{
caption
:
"新建"
,
...
...
app_PIM/src/mock/app/pim-appmenu/pim-appmenu.ts
浏览文件 @
23642e72
...
...
@@ -125,10 +125,10 @@ mock.onGet('v7/pimappmenu').reply((config: any) => {
{
id
:
'4b24bf3dc681c591cb1663ce8853cc32'
,
name
:
'menuitem15'
,
text
:
'员工
信息
'
,
text
:
'员工'
,
type
:
'MENUITEM'
,
counterid
:
''
,
tooltip
:
'员工
信息
'
,
tooltip
:
'员工'
,
expanded
:
false
,
separator
:
false
,
hidden
:
false
,
...
...
@@ -143,10 +143,10 @@ mock.onGet('v7/pimappmenu').reply((config: any) => {
{
id
:
'9EAF638F-4BD3-41E5-95D9-D0BB5A0F8375'
,
name
:
'menuitem8'
,
text
:
'合同
信息
'
,
text
:
'合同'
,
type
:
'MENUITEM'
,
counterid
:
''
,
tooltip
:
'合同
信息
'
,
tooltip
:
'合同'
,
expanded
:
false
,
separator
:
false
,
hidden
:
false
,
...
...
app_PIM/src/pages/human-resource/hremployee-v-007/hremployee-v-007-base.tsx
浏览文件 @
23642e72
...
...
@@ -91,37 +91,10 @@ export class HREmployeeV_007Base extends GridViewBase {
* @memberof HREmployeeV_007Base
*/
protected
containerModel
:
any
=
{
view_toolbar
:
{
name
:
'toolbar'
,
type
:
'TOOLBAR'
},
view_grid
:
{
name
:
'grid'
,
type
:
'GRID'
},
view_searchform
:
{
name
:
'searchform'
,
type
:
'SEARCHFORM'
},
};
/**
* 工具栏模型
*
* @type {*}
* @memberof HREmployeeV_007
*/
public
toolBarModels
:
any
=
{
tbitem1_ff_002
:
{
name
:
'tbitem1_ff_002'
,
caption
:
'新建'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'新建'
,
iconcls
:
'fa fa-user-plus'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'FF_002'
,
target
:
'NONE'
,
class
:
''
}
},
tbitem2
:
{
name
:
'tbitem2'
,
type
:
'SEPERATOR'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
}
},
tbitem4
:
{
name
:
'tbitem4'
,
caption
:
'编辑'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'编辑'
,
iconcls
:
'fa fa-edit'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Edit'
,
target
:
'SINGLEKEY'
,
class
:
''
}
},
tbitem6
:
{
name
:
'tbitem6'
,
caption
:
'拷贝'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'拷贝'
,
iconcls
:
'fa fa-copy'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Copy'
,
target
:
'SINGLEKEY'
,
class
:
''
}
},
tbitem7
:
{
name
:
'tbitem7'
,
type
:
'SEPERATOR'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
}
},
tbitem8
:
{
name
:
'tbitem8'
,
caption
:
'删除'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'删除'
,
iconcls
:
'fa fa-remove'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'Remove'
,
target
:
'MULTIKEY'
,
class
:
''
}
},
tbitem9
:
{
name
:
'tbitem9'
,
type
:
'SEPERATOR'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
}
},
tbitem13
:
{
name
:
'tbitem13'
,
caption
:
'导出'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'导出'
,
iconcls
:
'fa fa-file-excel-o'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'ExportExcel'
,
target
:
''
},
MaxRowCount
:
1000
,
class
:
''
},
tbitem10
:
{
name
:
'tbitem10'
,
type
:
'SEPERATOR'
,
visabled
:
true
,
dataaccaction
:
''
,
uiaction
:
{
}
},
tbitem19
:
{
name
:
'tbitem19'
,
caption
:
'过滤'
,
'isShowCaption'
:
true
,
'isShowIcon'
:
true
,
tooltip
:
'过滤'
,
iconcls
:
'fa fa-filter'
,
icon
:
''
,
disabled
:
false
,
type
:
'DEUIACTION'
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
uiaction
:
{
tag
:
'ToggleFilter'
,
target
:
''
,
class
:
''
}
},
};
/**
* 视图唯一标识
...
...
@@ -165,37 +138,6 @@ export class HREmployeeV_007Base extends GridViewBase {
});
}
/**
* toolbar 部件 click 事件
*
* @param {*} [args={}]
* @param {*} $event
* @memberof HREmployeeV_007Base
*/
public
toolbar_click
(
$event
:
any
,
$event2
?:
any
):
void
{
if
(
Object
.
is
(
$event
.
tag
,
'tbitem1_ff_002'
))
{
this
.
toolbar_tbitem1_ff_002_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem4'
))
{
this
.
toolbar_tbitem4_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem6'
))
{
this
.
toolbar_tbitem6_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem8'
))
{
this
.
toolbar_tbitem8_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem13'
))
{
this
.
toolbar_tbitem13_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem11'
))
{
this
.
toolbar_tbitem11_click
(
null
,
''
,
$event2
);
}
if
(
Object
.
is
(
$event
.
tag
,
'tbitem19'
))
{
this
.
toolbar_tbitem19_click
(
null
,
''
,
$event2
);
}
}
/**
* grid 部件 selectionchange 事件
*
...
...
@@ -284,203 +226,6 @@ export class HREmployeeV_007Base extends GridViewBase {
this
.
engine
.
onCtrlEvent
(
'searchform'
,
'load'
,
$event
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem1_ff_002_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
const
curUIService
:
HREmployeeUIService
=
new
HREmployeeUIService
();
curUIService
.
HREmployee_FF_002
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem4_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
Edit
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem6_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
Copy
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem8_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
Remove
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem13_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
ExportExcel
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem11_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
Print
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
toolbar_tbitem19_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 参数
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
.
$refs
.
grid
;
if
(
xData
.
getDatas
&&
xData
.
getDatas
instanceof
Function
)
{
datas
=
[...
xData
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
this
.
ToggleFilter
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 打开新建数据视图
*
...
...
@@ -563,130 +308,4 @@ export class HREmployeeV_007Base extends GridViewBase {
}
/**
* 编辑
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
Edit
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
if
(
args
.
length
===
0
)
{
return
;
}
const
_this
:
any
=
this
;
if
(
_this
.
opendata
&&
_this
.
opendata
instanceof
Function
)
{
const
data
:
any
=
{
};
if
(
args
.
length
>
0
)
{
Object
.
assign
(
data
,
{
hremployee
:
args
[
0
].
hremployee
})
}
_this
.
opendata
([{
...
data
}],
params
,
$event
,
xData
);
}
else
{
_this
.
$Notice
.
error
({
title
:
'错误'
,
desc
:
'opendata 视图处理逻辑不存在,请添加!'
});
}
}
/**
* 拷贝
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
Copy
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
if
(
args
.
length
===
0
)
{
return
;
}
const
_this
:
any
=
this
;
if
(
_this
.
opendata
&&
_this
.
opendata
instanceof
Function
)
{
const
data
:
any
=
{
};
if
(
args
.
length
>
0
)
{
Object
.
assign
(
data
,
{
hremployee
:
args
[
0
].
hremployee
});
}
if
(
!
params
)
params
=
{};
Object
.
assign
(
params
,{
copymode
:
true
});
_this
.
opendata
([{
...
data
}],
params
,
$event
,
xData
);
}
else
{
Object
.
assign
(
this
.
viewparams
,{
copymode
:
true
});
}
}
/**
* 删除
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
Remove
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
if
(
!
xData
||
!
(
xData
.
remove
instanceof
Function
))
{
return
;
}
xData
.
remove
(
args
);
}
/**
* 导出
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
ExportExcel
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
if
(
!
xData
||
!
(
xData
.
exportExcel
instanceof
Function
)
||
!
$event
)
{
return
;
}
xData
.
exportExcel
(
$event
.
exportparms
);
}
/**
* 打印
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
Print
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
let
_this
:
any
=
this
;
if
(
!
xData
||
!
(
xData
.
print
instanceof
Function
)
||
!
$event
)
{
return
;
}
xData
.
print
();
}
/**
* 过滤
*
* @param {any[]} args 当前数据
* @param {any} contextJO 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @memberof HREmployeeV_007Base
*/
public
ToggleFilter
(
args
:
any
[],
contextJO
?:
any
,
params
?:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
const
_this
:
any
=
this
;
if
(
_this
.
hasOwnProperty
(
'isExpandSearchForm'
))
{
_this
.
isExpandSearchForm
=
!
_this
.
isExpandSearchForm
;
}
}
}
\ No newline at end of file
app_PIM/src/pages/human-resource/hremployee-v-007/hremployee-v-007.html
浏览文件 @
23642e72
<studio-view-style2
viewName=
"hremployeev_007"
viewTitle=
"员工"
class=
'degridview hremployee-v-007'
>
<i-input
slot=
"quickSearch"
v-show=
"!isExpandSearchForm"
v-model=
"query"
placeholder=
"员工姓名"
search
@
on-search=
"onSearch($event)"
/>
<template
slot=
"toolbar"
>
<view-toolbar
mode=
"STYLE2"
:model=
"toolBarModels"
@
item-click=
"toolbar_click.apply(_self, arguments)"
/>
</template>
<template
slot=
"searchForm"
>
<view
_searchform
:viewState=
"viewState"
...
...
app_PIM/src/pages/human-resource/hremployee-v-007/hremployee-v-007.vue
浏览文件 @
23642e72
...
...
@@ -3,7 +3,7 @@
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { HREmployeeV_007Base } from './hremployee-v-007-base';
import view_grid from '@widgets/hremployee/
main-grid/main
-grid.vue';
import view_grid from '@widgets/hremployee/
grid-001-grid/grid-001
-grid.vue';
import view_searchform from '@widgets/hremployee/default-searchform/default-searchform.vue';
/**
...
...
app_PIM/src/store/modules/view-action/state.ts
浏览文件 @
23642e72
...
...
@@ -11,6 +11,7 @@ export const viewstate: any = {
viewdatachange
:
false
,
refviews
:
[
'ba512ad6a392dc170b1959cebd038fb8'
,
'a03a955d89ac96b26f80ca2caf2cc023'
,
'1fda62030d6149cb5ee6f088bc4f0aa7'
,
],
},
...
...
app_PIM/src/uiservice/hremployee/hremployee-ui-service-base.ts
浏览文件 @
23642e72
...
...
@@ -122,6 +122,59 @@ export default class HREmployeeUIServiceBase extends UIService {
public
initDeMainStateOPPrivsMap
(){
}
/**
* 新签
*
* @param {any[]} args 当前数据
* @param {any} context 行为附加上下文
* @param {*} [params] 附加参数
* @param {*} [$event] 事件源
* @param {*} [xData] 执行行为所需当前部件
* @param {*} [actionContext] 执行行为上下文
* @param {*} [srfParentDeName] 父实体名称
* @returns {Promise<any>}
*/
public
async
HREmployee_SignContract
(
args
:
any
[],
context
:
any
=
{}
,
params
:
any
=
{},
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
)
{
let
data
:
any
=
{};
let
parentContext
:
any
=
{};
let
parentViewParam
:
any
=
{};
const
_this
:
any
=
actionContext
;
const
_args
:
any
[]
=
Util
.
deepCopy
(
args
);
const
actionTarget
:
string
|
null
=
'SINGLEKEY'
;
Object
.
assign
(
context
,
{
hremployee
:
'%hremployee%'
});
Object
.
assign
(
params
,
{
employeeid
:
'%hremployee%'
});
Object
.
assign
(
params
,
{
employeename
:
'%employeename%'
});
if
(
_this
.
context
){
parentContext
=
_this
.
context
;
}
if
(
_this
.
viewparams
){
parentViewParam
=
_this
.
viewparams
;
}
context
=
UIActionTool
.
handleContextParam
(
actionTarget
,
_args
,
parentContext
,
parentViewParam
,
context
);
data
=
UIActionTool
.
handleActionParam
(
actionTarget
,
_args
,
parentContext
,
parentViewParam
,
params
);
context
=
Object
.
assign
({},
actionContext
.
context
,
context
);
let
parentObj
:
any
=
{
srfparentdename
:
srfParentDeName
?
srfParentDeName
:
null
,
srfparentkey
:
srfParentDeName
?
context
[
srfParentDeName
.
toLowerCase
()]:
null
};
Object
.
assign
(
data
,
parentObj
);
Object
.
assign
(
context
,
parentObj
);
let
deResParameters
:
any
[]
=
[];
if
(
context
.
hremployee
&&
true
){
deResParameters
=
[
{
pathName
:
'hremployees'
,
parameterName
:
'hremployee'
},
]
}
const
parameters
:
any
[]
=
[
{
pathName
:
'hrcontracts'
,
parameterName
:
'hrcontract'
},
{
pathName
:
'editview'
,
parameterName
:
'editview'
},
];
const
openIndexViewTab
=
(
data
:
any
)
=>
{
const
routePath
=
actionContext
.
$viewTool
.
buildUpRoutePath
(
actionContext
.
$route
,
context
,
deResParameters
,
parameters
,
_args
,
data
);
actionContext
.
$router
.
push
(
routePath
);
return
null
;
}
openIndexViewTab
(
data
);
}
/**
* 删除并关闭
*
...
...
app_PIM/src/widgets/app/pim-appmenu/pim-appmenu-model.ts
浏览文件 @
23642e72
...
...
@@ -135,10 +135,10 @@ export default class PIMModel {
{
id
:
'4b24bf3dc681c591cb1663ce8853cc32'
,
name
:
'menuitem15'
,
text
:
'员工
信息
'
,
text
:
'员工'
,
type
:
'MENUITEM'
,
counterid
:
''
,
tooltip
:
'员工
信息
'
,
tooltip
:
'员工'
,
expanded
:
false
,
separator
:
false
,
hidden
:
false
,
...
...
@@ -156,10 +156,10 @@ export default class PIMModel {
{
id
:
'9EAF638F-4BD3-41E5-95D9-D0BB5A0F8375'
,
name
:
'menuitem8'
,
text
:
'合同
信息
'
,
text
:
'合同'
,
type
:
'MENUITEM'
,
counterid
:
''
,
tooltip
:
'合同
信息
'
,
tooltip
:
'合同'
,
expanded
:
false
,
separator
:
false
,
hidden
:
false
,
...
...
app_PIM/src/widgets/hrcontract/tab-exp-viewtabexppanel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel-base.tsx
浏览文件 @
23642e72
...
...
@@ -65,11 +65,11 @@ export class TabExpViewtabexppanelTabexppanelBase extends TabExpPanelControlBase
* @memberof TabExpViewtabexppanel
*/
protected
isInit
:
any
=
{
tabviewpanel5
:
true
,
tabviewpanel4
:
false
,
tabviewpanel3
:
false
,
tabviewpanel
:
false
,
tabviewpanel
:
true
,
tabviewpanel2
:
false
,
tabviewpanel3
:
false
,
tabviewpanel4
:
false
,
tabviewpanel5
:
false
,
}
/**
...
...
@@ -79,7 +79,7 @@ export class TabExpViewtabexppanelTabexppanelBase extends TabExpPanelControlBase
* @type {string}
* @memberof TabExpViewtabexppanel
*/
protected
activatedTabViewPanel
:
string
=
'tabviewpanel
5
'
;
protected
activatedTabViewPanel
:
string
=
'tabviewpanel'
;
/**
* 组件创建完毕
...
...
app_PIM/src/widgets/hrcontract/tab-exp-viewtabexppanel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel.html
浏览文件 @
23642e72
<div
class=
'tabviewpanel'
>
<tabs
:value=
"activatedTabViewPanel"
:animated=
"false"
class=
'tabexppanel'
name=
'tabexpviewtabexppanel'
@
on-click=
"tabPanelClick($event)"
>
<tab-pane
:index=
"0"
name=
'tabviewpanel
5
'
tab=
'tabexpviewtabexppanel'
class=
''
<tab-pane
:index=
"0"
name=
'tabviewpanel'
tab=
'tabexpviewtabexppanel'
class=
''
:label=
"(h) =>{
return h('div', [
h('i',{
class:'fa fa-
lis
t',
class:'fa fa-
edi
t',
style:{
'margin-right' : '2px'
}
}),
h('span', '
全部合同
'),
h('span', '
待新签
'),
h('Badge', {
props: {
count: undefined,
...
...
@@ -18,28 +18,28 @@
})
])
}"
>
<view
_tabviewpanel
5
<view
_tabviewpanel
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
v-if=
"isInit.tabviewpanel
5
"
name=
"tabviewpanel
5
"
ref=
'tabviewpanel
5
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
5
'"
v-if=
"isInit.tabviewpanel"
name=
"tabviewpanel"
ref=
'tabviewpanel'
:expActive=
"activatedTabViewPanel === 'tabviewpanel'"
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel
5
>
</view
_tabviewpanel
>
</tab-pane>
<tab-pane
:index=
"1"
name=
'tabviewpanel
4
'
tab=
'tabexpviewtabexppanel'
class=
''
<tab-pane
:index=
"1"
name=
'tabviewpanel
2
'
tab=
'tabexpviewtabexppanel'
class=
''
:label=
"(h) =>{
return h('div', [
h('i',{
class:'fa fa-
check-square-o
',
class:'fa fa-
pencil
',
style:{
'margin-right' : '2px'
}
}),
h('span', '
执行中
'),
h('span', '
待续签
'),
h('Badge', {
props: {
count: undefined,
...
...
@@ -48,17 +48,17 @@
})
])
}"
>
<view
_tabviewpanel
4
<view
_tabviewpanel
2
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
v-if=
"isInit.tabviewpanel
4
"
name=
"tabviewpanel
4
"
ref=
'tabviewpanel
4
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
4
'"
v-if=
"isInit.tabviewpanel
2
"
name=
"tabviewpanel
2
"
ref=
'tabviewpanel
2
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
2
'"
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel
4
>
</view
_tabviewpanel
2
>
</tab-pane>
<tab-pane
:index=
"2"
name=
'tabviewpanel3'
tab=
'tabexpviewtabexppanel'
class=
''
:label=
"(h) =>{
...
...
@@ -90,16 +90,16 @@
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel3
>
</tab-pane>
<tab-pane
:index=
"3"
name=
'tabviewpanel'
tab=
'tabexpviewtabexppanel'
class=
''
<tab-pane
:index=
"3"
name=
'tabviewpanel
4
'
tab=
'tabexpviewtabexppanel'
class=
''
:label=
"(h) =>{
return h('div', [
h('i',{
class:'fa fa-
edit
',
class:'fa fa-
check-square-o
',
style:{
'margin-right' : '2px'
}
}),
h('span', '
待新签
'),
h('span', '
执行中
'),
h('Badge', {
props: {
count: undefined,
...
...
@@ -108,28 +108,28 @@
})
])
}"
>
<view
_tabviewpanel
<view
_tabviewpanel
4
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
v-if=
"isInit.tabviewpanel"
name=
"tabviewpanel"
ref=
'tabviewpanel'
:expActive=
"activatedTabViewPanel === 'tabviewpanel'"
v-if=
"isInit.tabviewpanel
4
"
name=
"tabviewpanel
4
"
ref=
'tabviewpanel
4
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
4
'"
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel
>
</view
_tabviewpanel
4
>
</tab-pane>
<tab-pane
:index=
"4"
name=
'tabviewpanel
2
'
tab=
'tabexpviewtabexppanel'
class=
''
<tab-pane
:index=
"4"
name=
'tabviewpanel
5
'
tab=
'tabexpviewtabexppanel'
class=
''
:label=
"(h) =>{
return h('div', [
h('i',{
class:'fa fa-
pencil
',
class:'fa fa-
list
',
style:{
'margin-right' : '2px'
}
}),
h('span', '
待续签
'),
h('span', '
全部合同
'),
h('Badge', {
props: {
count: undefined,
...
...
@@ -138,17 +138,17 @@
})
])
}"
>
<view
_tabviewpanel
2
<view
_tabviewpanel
5
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
v-if=
"isInit.tabviewpanel
2
"
name=
"tabviewpanel
2
"
ref=
'tabviewpanel
2
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
2
'"
v-if=
"isInit.tabviewpanel
5
"
name=
"tabviewpanel
5
"
ref=
'tabviewpanel
5
'
:expActive=
"activatedTabViewPanel === 'tabviewpanel
5
'"
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel
2
>
</view
_tabviewpanel
5
>
</tab-pane>
</tabs>
</div>
\ No newline at end of file
app_PIM/src/widgets/hrcontract/tab-exp-viewtabexppanel-tabexppanel/tab-exp-viewtabexppanel-tabexppanel.vue
浏览文件 @
23642e72
...
...
@@ -3,11 +3,11 @@
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { TabExpViewtabexppanelTabexppanelBase } from './tab-exp-viewtabexppanel-tabexppanel-base';
import view_tabviewpanel5 from '@widgets/hrcontract/tab-exp-viewtabviewpanel5-tabviewpanel/tab-exp-viewtabviewpanel5-tabviewpanel.vue';
import view_tabviewpanel4 from '@widgets/hrcontract/tab-exp-viewtabviewpanel4-tabviewpanel/tab-exp-viewtabviewpanel4-tabviewpanel.vue';
import view_tabviewpanel3 from '@widgets/hrcontract/tab-exp-viewtabviewpanel3-tabviewpanel/tab-exp-viewtabviewpanel3-tabviewpanel.vue';
import view_tabviewpanel from '@widgets/hrcontract/tab-exp-viewtabviewpanel-tabviewpanel/tab-exp-viewtabviewpanel-tabviewpanel.vue';
import view_tabviewpanel2 from '@widgets/hrcontract/tab-exp-viewtabviewpanel2-tabviewpanel/tab-exp-viewtabviewpanel2-tabviewpanel.vue';
import view_tabviewpanel3 from '@widgets/hrcontract/tab-exp-viewtabviewpanel3-tabviewpanel/tab-exp-viewtabviewpanel3-tabviewpanel.vue';
import view_tabviewpanel4 from '@widgets/hrcontract/tab-exp-viewtabviewpanel4-tabviewpanel/tab-exp-viewtabviewpanel4-tabviewpanel.vue';
import view_tabviewpanel5 from '@widgets/hrcontract/tab-exp-viewtabviewpanel5-tabviewpanel/tab-exp-viewtabviewpanel5-tabviewpanel.vue';
/**
...
...
@@ -19,11 +19,11 @@ import view_tabviewpanel2 from '@widgets/hrcontract/tab-exp-viewtabviewpanel2-ta
*/
@Component({
components: {
view_tabviewpanel5,
view_tabviewpanel4,
view_tabviewpanel3,
view_tabviewpanel,
view_tabviewpanel2,
view_tabviewpanel3,
view_tabviewpanel4,
view_tabviewpanel5,
}
})
...
...
app_PIM/src/widgets/hremployee/grid-001-grid/grid-001-grid-base.tsx
0 → 100644
浏览文件 @
23642e72
import
{
Prop
,
Provide
,
Emit
,
Model
}
from
'vue-property-decorator'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
Watch
,
GridControlBase
}
from
'@/studio-core'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
GRID_001Service
from
'./grid-001-grid-service'
;
import
HREmployeeUIService
from
'@/uiservice/hremployee/hremployee-ui-service'
;
import
{
FormItemModel
}
from
'@/model/form-detail'
;
/**
* grid部件基类
*
* @export
* @class GridControlBase
* @extends {GRID_001GridBase}
*/
export
class
GRID_001GridBase
extends
GridControlBase
{
/**
* 获取部件类型
*
* @protected
* @type {string}
* @memberof GRID_001GridBase
*/
protected
controlType
:
string
=
'GRID'
;
/**
* 建构部件服务对象
*
* @type {GRID_001Service}
* @memberof GRID_001GridBase
*/
public
service
:
GRID_001Service
=
new
GRID_001Service
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {HREmployeeService}
* @memberof GRID_001GridBase
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
$store
});
/**
* 应用实体名称
*
* @protected
* @type {string}
* @memberof GRID_001GridBase
*/
protected
appDeName
:
string
=
'hremployee'
;
/**
* 应用实体中文名称
*
* @protected
* @type {string}
* @memberof GRID_001GridBase
*/
protected
appDeLogicName
:
string
=
'员工'
;
/**
* 逻辑事件
*
* @param {*} [params={}]
* @param {*} [tag]
* @param {*} [$event]
* @memberof
*/
public
grid_uagridcolumn1_u2abac3f_click
(
params
:
any
=
{},
tag
?:
any
,
$event
?:
any
)
{
// 取数
let
datas
:
any
[]
=
[];
let
xData
:
any
=
null
;
// _this 指向容器对象
const
_this
:
any
=
this
;
let
paramJO
:
any
=
{};
let
contextJO
:
any
=
{};
xData
=
this
;
if
(
_this
.
getDatas
&&
_this
.
getDatas
instanceof
Function
)
{
datas
=
[...
_this
.
getDatas
()];
}
if
(
params
){
datas
=
[
params
];
}
// 界面行为
const
curUIService
:
HREmployeeUIService
=
new
HREmployeeUIService
();
curUIService
.
HREmployee_SignContract
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
"HREmployee"
);
}
/**
* 界面UI服务对象
*
* @type {HREmployeeUIService}
* @memberof GRID_001Base
*/
public
appUIService
:
HREmployeeUIService
=
new
HREmployeeUIService
(
this
.
$store
);
/**
* 界面行为模型
*
* @type {*}
* @memberof GRID_001Base
*/
public
ActionModel
:
any
=
{
SignContract
:
{
name
:
'SignContract'
,
disabled
:
false
,
visabled
:
true
,
noprivdisplaymode
:
2
,
dataaccaction
:
''
,
target
:
'SINGLEKEY'
}
};
/**
* 本地缓存标识
*
* @protected
* @type {string}
* @memberof GRID_001Base
*/
protected
localStorageTag
:
string
=
'hremployee_grid_001_grid'
;
/**
* 所有列成员
*
* @type {any[]}
* @memberof GRID_001GridBase
*/
public
allColumns
:
any
[]
=
[
{
name
:
'employeecode'
,
label
:
'员工编号'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.employeecode'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'employeename'
,
label
:
'员工姓名'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.employeename'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'organizationname'
,
label
:
'单位'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.organizationname'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'hrdutyname'
,
label
:
'职务'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.hrdutyname'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'hrpostname'
,
label
:
'职位'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.hrpostname'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'certnum'
,
label
:
'证件号码'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.certnum'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'birthday'
,
label
:
'出生日期'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.birthday'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'age'
,
label
:
'年龄'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.age'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'mobile'
,
label
:
'移动电话'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.mobile'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'email'
,
label
:
'电子邮箱'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.email'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'empstate'
,
label
:
'员工状态'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.empstate'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
{
name
:
'uagridcolumn1'
,
label
:
'操作'
,
langtag
:
'entities.hremployee.grid_001_grid.columns.uagridcolumn1'
,
show
:
true
,
util
:
'PX'
,
isEnableRowEdit
:
false
,
},
]
/**
* 获取表格行模型
*
* @type {*}
* @memberof GRID_001GridBase
*/
public
getGridRowModel
(){
return
{
srfkey
:
new
FormItemModel
(),
}
}
/**
* 属性值规则
*
* @type {*}
* @memberof GRID_001GridBase
*/
public
rules
:
any
=
{
srfkey
:
[
{
required
:
false
,
validator
:
(
rule
:
any
,
value
:
any
,
callback
:
any
)
=>
{
return
(
rule
.
required
&&
(
value
===
null
||
value
===
undefined
||
value
===
""
))
?
false
:
true
;},
message
:
'员工标识 值不能为空'
,
trigger
:
'change'
},
{
required
:
false
,
validator
:
(
rule
:
any
,
value
:
any
,
callback
:
any
)
=>
{
return
(
rule
.
required
&&
(
value
===
null
||
value
===
undefined
||
value
===
""
))
?
false
:
true
;},
message
:
'员工标识 值不能为空'
,
trigger
:
'blur'
},
],
}
/**
* 获取对应列class
*
* @type {*}
* @memberof GRID_001Base
*/
public
hasRowEdit
:
any
=
{
'employeecode'
:
false
,
'employeename'
:
false
,
'organizationname'
:
false
,
'hrdutyname'
:
false
,
'hrpostname'
:
false
,
'certnum'
:
false
,
'birthday'
:
false
,
'age'
:
false
,
'mobile'
:
false
,
'email'
:
false
,
'empstate'
:
false
,
'uagridcolumn1'
:
false
,
};
/**
* 获取对应列class
*
* @param {*} $args row 行数据,column 列数据,rowIndex 行索引,列索引
* @returns {void}
* @memberof GRID_001Base
*/
public
getCellClassName
(
args
:
{
row
:
any
,
column
:
any
,
rowIndex
:
number
,
columnIndex
:
number
}):
any
{
return
(
this
.
hasRowEdit
[
args
.
column
.
property
]
&&
this
.
actualIsOpenEdit
)
?
"edit-cell"
:
"info-cell"
;
}
/**
* 导出数据格式化
*
* @param {*} filterVal
* @param {*} jsonData
* @param {any[]} [codelistColumns=[]]
* @returns {Promise<any>}
* @memberof GRID_001GridBase
*/
public
async
formatExcelData
(
filterVal
:
any
,
jsonData
:
any
,
codelistColumns
?:
any
[]):
Promise
<
any
>
{
return
super
.
formatExcelData
(
filterVal
,
jsonData
,
[
{
name
:
'empstate'
,
srfkey
:
'CL_HR_0016'
,
codelistType
:
'DYNAMIC'
,
renderMode
:
'other'
,
textSeparator
:
'、'
,
valueSeparator
:
','
,
},
]);
}
/**
* 界面行为
*
* @param {*} row
* @param {*} tag
* @param {*} $event
* @memberof GRID_001GridBase
*/
public
uiAction
(
row
:
any
,
tag
:
any
,
$event
:
any
):
void
{
$event
.
stopPropagation
();
if
(
Object
.
is
(
'SignContract'
,
tag
))
{
this
.
grid_uagridcolumn1_u2abac3f_click
(
row
,
tag
,
$event
);
}
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/grid-001-grid/grid-001-grid-model.ts
0 → 100644
浏览文件 @
23642e72
/**
* GRID_001 部件模型
*
* @export
* @class GRID_001Model
*/
export
default
class
GRID_001Model
{
/**
* 是否是实体数据导出
*
* @returns {any[]}
* @memberof GRID_001GridMode
*/
public
isDEExport
:
boolean
=
false
;
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof GRID_001GridMode
*/
public
getDataItems
():
any
[]
{
if
(
this
.
isDEExport
){
return
[
]
}
else
{
return
[
{
name
:
'organizationname'
,
prop
:
'organizationname'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'hrpostid'
,
prop
:
'hrpostid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'birthday'
,
prop
:
'birthday'
,
dataType
:
'DATE'
,
},
{
name
:
'empstate'
,
prop
:
'empstate'
,
dataType
:
'PICKUP'
,
},
{
name
:
'hrdutyname'
,
prop
:
'hrdutyname'
,
dataType
:
'PICKUPDATA'
,
},
{
name
:
'hrpostname'
,
prop
:
'hrpostname'
,
dataType
:
'PICKUPTEXT'
,
},
{
name
:
'employeename'
,
prop
:
'employeename'
,
dataType
:
'TEXT'
,
},
{
name
:
'employeecode'
,
prop
:
'employeecode'
,
dataType
:
'TEXT'
,
},
{
name
:
'srfmajortext'
,
prop
:
'employeename'
,
dataType
:
'TEXT'
,
},
{
name
:
'srfdataaccaction'
,
prop
:
'employeeid'
,
dataType
:
'GUID'
,
},
{
name
:
'srfkey'
,
prop
:
'employeeid'
,
dataType
:
'GUID'
,
isEditable
:
true
},
{
name
:
'organizationid'
,
prop
:
'organizationid'
,
dataType
:
'PICKUP'
,
},
{
name
:
'email'
,
prop
:
'email'
,
dataType
:
'TEXT'
,
},
{
name
:
'age'
,
prop
:
'age'
,
dataType
:
'TEXT'
,
},
{
name
:
'certnum'
,
prop
:
'certnum'
,
dataType
:
'TEXT'
,
},
{
name
:
'mobile'
,
prop
:
'mobile'
,
dataType
:
'TEXT'
,
},
{
name
:
'hremployee'
,
prop
:
'employeeid'
,
},
{
name
:
'size'
,
prop
:
'size'
},
{
name
:
'query'
,
prop
:
'query'
},
{
name
:
'filter'
,
prop
:
'filter'
},
{
name
:
'page'
,
prop
:
'page'
},
{
name
:
'sort'
,
prop
:
'sort'
},
{
name
:
'srfparentdata'
,
prop
:
'srfparentdata'
},
// 前端新增修改标识,新增为"0",修改为"1"或未设值
{
name
:
'srffrontuf'
,
prop
:
'srffrontuf'
,
dataType
:
'TEXT'
,
},
]
}
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/grid-001-grid/grid-001-grid-service.ts
0 → 100644
浏览文件 @
23642e72
import
{
Http
,
Util
,
Errorlog
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
import
HREmployeeService
from
'@/service/hremployee/hremployee-service'
;
import
GRID_001Model
from
'./grid-001-grid-model'
;
/**
* GRID_001 部件服务对象
*
* @export
* @class GRID_001Service
*/
export
default
class
GRID_001Service
extends
ControlService
{
/**
* 员工服务对象
*
* @type {HREmployeeService}
* @memberof GRID_001Service
*/
public
appEntityService
:
HREmployeeService
=
new
HREmployeeService
({
$store
:
this
.
getStore
()
});
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof GRID_001Service
*/
public
setTempMode
(){
this
.
isTempMode
=
false
;
}
/**
* Creates an instance of GRID_001Service.
*
* @param {*} [opts={}]
* @memberof GRID_001Service
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
model
=
new
GRID_001Model
();
}
/**
* 处理数据
*
* @public
* @param {Promise<any>} promise
* @returns {Promise<any>}
* @memberof GRID_001Service
*/
public
doItems
(
promise
:
Promise
<
any
>
,
deKeyField
:
string
,
deName
:
string
):
Promise
<
any
>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
promise
.
then
((
response
:
any
)
=>
{
if
(
response
&&
response
.
status
===
200
)
{
const
data
=
response
.
data
;
data
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
item
[
deName
]
=
item
[
deKeyField
];
data
[
index
]
=
item
;
});
resolve
(
data
);
}
else
{
reject
([])
}
}).
catch
((
response
:
any
)
=>
{
reject
([])
});
});
}
/**
* 获取跨实体数据集合
*
* @param {string} serviceName 服务名称
* @param {string} interfaceName 接口名称
* @param {*} data
* @param {boolean} [isloading]
* @returns {Promise<any[]>}
* @memberof GRID_001Service
*/
@
Errorlog
public
getItems
(
serviceName
:
string
,
interfaceName
:
string
,
context
:
any
=
{},
data
:
any
,
isloading
?:
boolean
):
Promise
<
any
[]
>
{
data
.
page
=
data
.
page
?
data
.
page
:
0
;
data
.
size
=
data
.
size
?
data
.
size
:
1000
;
return
Promise
.
reject
([])
}
/**
* 添加数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof GRID_001Service
*/
@
Errorlog
public
add
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestDataWithUpdate
(
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 GRID_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
)
=>
{
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 修改数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof GRID_001Service
*/
@
Errorlog
public
update
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
const
{
data
:
Data
,
context
:
Context
}
=
this
.
handleRequestDataWithUpdate
(
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
);
});
});
}
/**
* 获取数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof GRID_001Service
*/
@
Errorlog
public
get
(
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
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
this
.
appEntityService
.
Get
(
Context
,
Data
,
isloading
);
}
result
.
then
((
response
)
=>
{
//处理返回数据,补充判断标识
if
(
response
.
data
){
Object
.
assign
(
response
.
data
,{
srfuf
:
0
});
}
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 查询数据
*
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof GRID_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
((
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 GRID_001Service
*/
@
Errorlog
public
loadDraft
(
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
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
result
=
this
.
appEntityService
.
GetDraft
(
Context
,
Data
,
isloading
);
}
result
.
then
((
response
)
=>
{
//处理返回数据,补充判断标识
if
(
response
.
data
){
Object
.
assign
(
response
.
data
,{
srfuf
:
'0'
});
//仿真主键数据
response
.
data
.
employeeid
=
Util
.
createUUID
();
}
this
.
handleResponse
(
action
,
response
,
true
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
});
}
/**
* 前台逻辑
* @param {string} action
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof GRID_001Service
*/
@
Errorlog
public
frontLogic
(
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
)
=>
{
let
result
:
Promise
<
any
>
;
const
_appEntityService
:
any
=
this
.
appEntityService
;
if
(
_appEntityService
[
action
]
&&
_appEntityService
[
action
]
instanceof
Function
)
{
result
=
_appEntityService
[
action
](
Context
,
Data
,
isloading
);
}
else
{
return
Promise
.
reject
({
status
:
500
,
data
:
{
title
:
'失败'
,
message
:
'系统异常'
}
});
}
result
.
then
((
response
)
=>
{
this
.
handleResponse
(
action
,
response
);
resolve
(
response
);
}).
catch
(
response
=>
{
reject
(
response
);
});
})
}
/**
* 处理请求数据(修改或增加数据)
*
* @param action 行为
* @param data 数据
* @memberof GRID_001Service
*/
public
handleRequestDataWithUpdate
(
action
:
string
,
context
:
any
=
{},
data
:
any
=
{},
isMerge
:
boolean
=
false
){
let
model
:
any
=
this
.
getMode
();
if
(
!
model
&&
model
.
getDataItems
instanceof
Function
)
{
return
data
;
}
let
dataItems
:
any
[]
=
model
.
getDataItems
();
let
requestData
:
any
=
{};
if
(
isMerge
&&
(
data
&&
data
.
viewparams
)){
Object
.
assign
(
requestData
,
data
.
viewparams
);
}
dataItems
.
forEach
((
item
:
any
)
=>
{
if
(
item
&&
item
.
dataType
&&
Object
.
is
(
item
.
dataType
,
'FONTKEY'
)){
if
(
item
&&
item
.
prop
&&
item
.
name
){
requestData
[
item
.
prop
]
=
context
[
item
.
name
];
}
}
else
{
if
(
item
&&
item
.
isEditable
&&
item
.
prop
&&
item
.
name
&&
(
data
[
item
.
name
]
||
Object
.
is
(
data
[
item
.
name
],
0
))
){
requestData
[
item
.
prop
]
=
data
[
item
.
name
];
}
}
});
let
tempContext
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
context
));
if
(
tempContext
&&
tempContext
.
srfsessionid
){
tempContext
.
srfsessionkey
=
tempContext
.
srfsessionid
;
delete
tempContext
.
srfsessionid
;
}
return
{
context
:
tempContext
,
data
:
requestData
};
}
}
\ No newline at end of file
app_PIM/src/widgets/hremployee/grid-001-grid/grid-001-grid.html
0 → 100644
浏览文件 @
23642e72
<div
:class=
"{ 'grid': true, 'show-paging-bar': isEnablePagingBar, 'hidden-paging-bar': !isEnablePagingBar }"
>
<i-form>
<el-table
v-if=
"isDisplay === true"
:default-sort=
"{ prop: minorSortPSDEF, order: Object.is(minorSortDir, 'ASC') ? 'ascending' : Object.is(minorSortDir, 'DESC') ? 'descending' : '' }"
@
sort-change=
"onSortChange($event)"
:border=
"isDragendCol"
:highlight-current-row =
"isSingleSelect"
:row-class-name=
"getRowClassName.bind(_self)"
:cell-class-name=
"getCellClassName.bind(_self)"
size=
"mini"
stripe
@
row-click=
"rowClick($event)"
@
select-all=
"selectAll($event)"
@
select=
"select($event)"
@
row-class-name=
"onRowClassName($event)"
@
row-dblclick=
"rowDBLClick($event)"
ref=
'multipleTable'
:data=
"items"
:show-header=
"!isHideHeader"
>
<template
slot=
"empty"
>
无数据
<span
class=
"quick-toolbar"
>
</span>
</template>
<template
v-if=
"!isSingleSelect"
>
<el-table-column
align=
"center"
type=
'selection'
:width=
"checkboxColWidth"
></el-table-column>
</template>
<template
v-if=
"getColumnState('employeecode')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'employeecode'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.employeecode')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.employeecode')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.employeecode}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('employeename')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'employeename'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.employeename')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.employeename')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.employeename}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('organizationname')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'organizationname'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.organizationname')"
:width=
"250"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.organizationname')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.organizationname}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('hrdutyname')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'hrdutyname'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.hrdutyname')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.hrdutyname')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.hrdutyname}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('hrpostname')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'hrpostname'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.hrpostname')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.hrpostname')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.hrpostname}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('certnum')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'certnum'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.certnum')"
:width=
"150"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.certnum')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.certnum}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('birthday')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'birthday'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.birthday')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.birthday')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<app-format-data
format=
"YYYY-MM-DD"
:data=
"row.birthday"
></app-format-data>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('age')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'age'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.age')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.age')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.age}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('mobile')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'mobile'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.mobile')"
:width=
"120"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.mobile')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.mobile}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('email')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'email'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.email')"
:width=
"150"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.email')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<span>
{{row.email}}
</span>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('empstate')"
>
<el-table-column
show-overflow-tooltip
:prop=
"'empstate'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.empstate')"
:width=
"100"
:align=
"'left'"
:sortable=
"'custom'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
{{$t('entities.hremployee.grid_001_grid.columns.empstate')}}
</span>
</template>
<template
v-slot=
"{row,column,$index}"
>
<template
>
<codelist
:value=
"row.empstate"
tag=
'CL_HR_0016'
codelistType=
'DYNAMIC'
></codelist>
</template>
</template>
</el-table-column>
</template>
<template
v-if=
"getColumnState('uagridcolumn1')"
>
<el-table-column
:column-key=
"'uagridcolumn1'"
:label=
"$t('entities.hremployee.grid_001_grid.columns.uagridcolumn1')"
:width=
"100"
:align=
"'right'"
>
<template
v-slot:header=
"{column}"
>
<span
class=
"column-header "
>
<i
class=
'fa fa-pencil'
></i>
{{$t('entities.hremployee.grid_001_grid.columns.uagridcolumn1')}}
</span>
</template>
<template
slot-scope=
"scope"
>
<div
style=
"text-align: center;"
>
<a
v-show=
"scope.row.SignContract.visabled"
:disabled=
"scope.row.SignContract.disabled"
@
click=
"uiAction(scope.row, 'SignContract', $event)"
:title=
"$t('entities.hremployee.grid_001_grid.uiactions.hremployee_signcontract')"
>
<i
class=
''
></i>
{{$t('entities.hremployee.grid_001_grid.uiactions.hremployee_signcontract')}}
</a>
</div>
</template>
</el-table-column>
</template>
<template
v-if=
"adaptiveState"
>
<el-table-column></el-table-column>
</template>
</el-table>
<row
class=
'grid-pagination'
v-show=
"items.length > 0"
>
<page
class=
'pull-right'
@
on-change=
"pageOnChange($event)"
@
on-page-size-change=
"onPageSizeChange($event)"
:transfer=
"true"
:total=
"totalRecord"
show-sizer
:current=
"curPage"
:page-size=
"limit"
:page-size-opts=
"[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]"
show-elevator
show-total
>
<span>
<span
class=
"page-column"
>
<poptip
transfer
placement=
"top-start"
>
<i-button
icon=
"md-menu"
>
{{$t('app.gridpage.choicecolumns')}}
</i-button>
<div
slot=
"content"
>
<template
v-for=
"col in allColumns"
>
<div
:key=
"col.name"
><el-checkbox
v-model=
"col.show"
@
change=
"onColChange()"
>
{{$t(col.langtag)}}
</el-checkbox></div>
</template>
</div>
</poptip>
</span>
<span
v-if=
"selections.length > 0"
class=
"batch-toolbar"
>
</span>
<span
class=
"page-button"
><i-button
icon=
"md-refresh"
:title=
"$t('app.gridpage.refresh')"
@
click=
"pageRefresh()"
></i-button></span>
<span>
{{$t('app.gridpage.show')}}
<span>
<template
v-if=
"items.length === 1"
>
1
</template>
<template
v-else
>
<span>
{{(curPage - 1) * limit + 1}}
-
{{totalRecord > curPage * limit ? curPage * limit : totalRecord}}
</span>
</template>
</span>
{{$t('app.gridpage.records')}},{{$t('app.gridpage.totle')}}
{{totalRecord}}
{{$t('app.gridpage.records')}}
</span>
</span>
</page>
</row>
</i-form>
</div>
\ No newline at end of file
app_PIM/src/widgets/hremployee/grid-001-grid/grid-001-grid.vue
0 → 100644
浏览文件 @
23642e72
<
template
src=
"./grid-001-grid.html"
/>
<script
lang=
'tsx'
>
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { GRID_001GridBase } from './grid-001-grid-base';
/**
* grid部件
*
* @export
* @class GRID_001Grid
* @extends {GRID_001GridBase}
*/
@Component({
components: {
}
})
@VueLifeCycleProcessing()
export default class GRID_001Grid extends GRID_001GridBase { }
</script>
humanresource-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
23642e72
...
...
@@ -86,7 +86,7 @@
<!--输出实体[HRCONTRACT]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hrcontract-6
0
-4"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hrcontract-6
1
-4"
>
<createTable
tableName=
"T_HRCONTRACT"
>
<column
name=
"CREATEMAN"
remarks=
""
type=
"VARCHAR(60)"
>
</column>
...
...
@@ -338,7 +338,7 @@
<!--输出实体[HREMPLOYEE]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hremployee-2
74
-12"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-hremployee-2
80
-12"
>
<createTable
tableName=
"EMPLOYEE"
>
<column
name=
"EMPLOYEENAME"
remarks=
""
type=
"VARCHAR(200)"
>
</column>
...
...
@@ -1087,10 +1087,10 @@
<addForeignKeyConstraint
baseColumnNames=
"REGISTERORGANIZATIONID"
baseTableName=
"T_HRCERTIFICATE"
constraintName=
"DER1N_HRCERTIFICATE_HRORGANIZA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ORGANIZATIONID"
referencedTableName=
"ORGANIZATION"
validate=
"true"
/>
</changeSet>
<!--输出实体[HRCONTRACT]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hrcontract-6
0
-38"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hrcontract-6
1
-38"
>
<addForeignKeyConstraint
baseColumnNames=
"HREMPLOYEEID"
baseTableName=
"T_HRCONTRACT"
constraintName=
"DER1N_HRCONTRACT_HREMPLOYEE_HR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"EMPLOYEEID"
referencedTableName=
"EMPLOYEE"
validate=
"true"
/>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hrcontract-6
0
-39"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hrcontract-6
1
-39"
>
<addForeignKeyConstraint
baseColumnNames=
"MGRORGANIZATIONID"
baseTableName=
"T_HRCONTRACT"
constraintName=
"DER1N_HRCONTRACT_HRORGANIZATIO"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ORGANIZATIONID"
referencedTableName=
"ORGANIZATION"
validate=
"true"
/>
</changeSet>
<!--输出实体[HRDISTRIBUTION]外键关系 -->
...
...
@@ -1119,13 +1119,13 @@
</changeSet>
<!--输出实体[HREMPSTATE]外键关系 -->
<!--输出实体[HREMPLOYEE]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-2
74
-47"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-2
80
-47"
>
<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-2
74
-48"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-2
80
-48"
>
<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>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-2
74
-49"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-hremployee-2
80
-49"
>
<addForeignKeyConstraint
baseColumnNames=
"HRPOSTID"
baseTableName=
"EMPLOYEE"
constraintName=
"DER1N_HREMPLOYEE_HRPOST_HRPOST"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"HRPOSTID"
referencedTableName=
"T_HRPOST"
validate=
"true"
/>
</changeSet>
<!--输出实体[HRFAMILY]外键关系 -->
...
...
humanresource-core/src/main/resources/permission/systemResource.json
浏览文件 @
23642e72
...
...
@@ -265,7 +265,7 @@
{
"appid"
:
"PIM"
,
"appname"
:
"基础管理"
,
"appmenu"
:[{
"menuid"
:
"PIM"
,
"menuname"
:
"PIM"
,
"menuitem"
:[{
"id"
:
"user_menus"
,
"name"
:
"用户菜单"
,
"items"
:[{
"id"
:
"menuitem3"
,
"name"
:
"设置"
}]},{
"id"
:
"top_menus"
,
"name"
:
"顶部菜单"
,
"items"
:[{
"id"
:
"menuitem1"
,
"name"
:
"-"
}]},{
"id"
:
"left_exp"
,
"name"
:
"左侧菜单"
,
"items"
:[{
"id"
:
"menuitem5"
,
"name"
:
"人员"
,
"items"
:[{
"id"
:
"menuitem15"
,
"name"
:
"员工
信息"
},{
"id"
:
"menuitem8"
,
"name"
:
"合同信息
"
}]},{
"id"
:
"menuitem2"
,
"name"
:
"组织"
,
"items"
:[{
"id"
:
"menuitem4"
,
"name"
:
"法人"
},{
"id"
:
"menuitem6"
,
"name"
:
"运营单位"
},{
"id"
:
"menuitem7"
,
"name"
:
"组织层次结构"
},{
"id"
:
"menuitem9"
,
"name"
:
"所有组织"
}]},{
"id"
:
"menuitem10"
,
"name"
:
"职位"
,
"items"
:[{
"id"
:
"menuitem11"
,
"name"
:
"职位"
},{
"id"
:
"menuitem12"
,
"name"
:
"职务"
}]}]},{
"id"
:
"bottom_exp"
,
"name"
:
"底部内容"
},{
"id"
:
"footer_left"
,
"name"
:
"底部左侧"
},{
"id"
:
"footer_center"
,
"name"
:
"底部中间"
},{
"id"
:
"footer_right"
,
"name"
:
"底部右侧"
}]
}]
"appmenu"
:[{
"menuid"
:
"PIM"
,
"menuname"
:
"PIM"
,
"menuitem"
:[{
"id"
:
"user_menus"
,
"name"
:
"用户菜单"
,
"items"
:[{
"id"
:
"menuitem3"
,
"name"
:
"设置"
}]},{
"id"
:
"top_menus"
,
"name"
:
"顶部菜单"
,
"items"
:[{
"id"
:
"menuitem1"
,
"name"
:
"-"
}]},{
"id"
:
"left_exp"
,
"name"
:
"左侧菜单"
,
"items"
:[{
"id"
:
"menuitem5"
,
"name"
:
"人员"
,
"items"
:[{
"id"
:
"menuitem15"
,
"name"
:
"员工
"
},{
"id"
:
"menuitem8"
,
"name"
:
"合同
"
}]},{
"id"
:
"menuitem2"
,
"name"
:
"组织"
,
"items"
:[{
"id"
:
"menuitem4"
,
"name"
:
"法人"
},{
"id"
:
"menuitem6"
,
"name"
:
"运营单位"
},{
"id"
:
"menuitem7"
,
"name"
:
"组织层次结构"
},{
"id"
:
"menuitem9"
,
"name"
:
"所有组织"
}]},{
"id"
:
"menuitem10"
,
"name"
:
"职位"
,
"items"
:[{
"id"
:
"menuitem11"
,
"name"
:
"职位"
},{
"id"
:
"menuitem12"
,
"name"
:
"职务"
}]}]},{
"id"
:
"bottom_exp"
,
"name"
:
"底部内容"
},{
"id"
:
"footer_left"
,
"name"
:
"底部左侧"
},{
"id"
:
"footer_center"
,
"name"
:
"底部中间"
},{
"id"
:
"footer_right"
,
"name"
:
"底部右侧"
}]
}]
}
]
}
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录