Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
fuyue82
o2oa
提交
cfd71a77
o2oa
项目概览
fuyue82
/
o2oa
与 Fork 源项目一致
Fork自
浙江兰德纵横网络技术股份有限公司 / o2oa
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
o2oa
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
cfd71a77
编写于
4月 08, 2021
作者:
U
unknown
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
考勤语言包整理
上级
0f1d48bf
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
207 addition
and
144 deletion
+207
-144
o2web/source/x_component_Attendance/MyIndex.js
o2web/source/x_component_Attendance/MyIndex.js
+16
-11
o2web/source/x_component_Attendance/PeopleDetail.js
o2web/source/x_component_Attendance/PeopleDetail.js
+18
-16
o2web/source/x_component_Attendance/PeopleDingdingDetail.js
o2web/source/x_component_Attendance/PeopleDingdingDetail.js
+15
-13
o2web/source/x_component_Attendance/PermissionExplorer.js
o2web/source/x_component_Attendance/PermissionExplorer.js
+1
-1
o2web/source/x_component_Attendance/PersonSetting.js
o2web/source/x_component_Attendance/PersonSetting.js
+8
-8
o2web/source/x_component_Attendance/SelfHoliday.js
o2web/source/x_component_Attendance/SelfHoliday.js
+20
-18
o2web/source/x_component_Attendance/StatisticsCycle.js
o2web/source/x_component_Attendance/StatisticsCycle.js
+29
-27
o2web/source/x_component_Attendance/TopUnitDetail.js
o2web/source/x_component_Attendance/TopUnitDetail.js
+16
-14
o2web/source/x_component_Attendance/UnitDetail.js
o2web/source/x_component_Attendance/UnitDetail.js
+18
-16
o2web/source/x_component_Attendance/UnitDingdingDetail.js
o2web/source/x_component_Attendance/UnitDingdingDetail.js
+15
-13
o2web/source/x_component_Attendance/WeekendSetting.js
o2web/source/x_component_Attendance/WeekendSetting.js
+6
-5
o2web/source/x_component_Attendance/lp/zh-cn.js
o2web/source/x_component_Attendance/lp/zh-cn.js
+45
-2
未找到文件。
o2web/source/x_component_Attendance/MyIndex.js
浏览文件 @
cfd71a77
...
...
@@ -87,7 +87,7 @@ MWF.xApplication.Attendance.MyIndex = new Class({
// "styles" : this.css.titleRightArrowNode
//}).inject(this.titleNode);
var
cycleText
=
"
考勤周期:
"
+
this
.
cycleStartDateString
+
"
至
"
+
this
.
cycleEndDateString
;
var
cycleText
=
this
.
app
.
lp
.
cyclText
.
replace
(
"
{start}
"
,
this
.
cycleStartDateString
).
replace
(
"
{end}
"
,
this
.
cycleEndDateString
)
;
this
.
titleCycleTextNode
=
new
Element
(
"
div
"
,{
"
styles
"
:
this
.
css
.
titleCycleTextNode
,
"
text
"
:
cycleText
...
...
@@ -412,7 +412,7 @@ MWF.xApplication.Attendance.MyIndex = new Class({
this
.
calendarCurrentMonthNode
=
new
Element
(
"
div
"
,{
"
styles
"
:
this
.
css
.
calendarCurrentMonthNode
,
"
text
"
:
(
this
.
calendarDate
.
getMonth
()
+
1
)
+
"
月
"
"
text
"
:
(
this
.
calendarDate
.
getMonth
()
+
1
)
+
this
.
app
.
lp
.
month
}).
inject
(
this
.
canlendarToolbar
);
this
.
calendarLeftArrowNode
=
new
Element
(
"
div
"
,{
...
...
@@ -482,14 +482,14 @@ MWF.xApplication.Attendance.MyIndex = new Class({
if
(
this
.
calendarLeftDisable
)
return
;
jQuery
(
this
.
calendarNode
).
fullCalendar
(
'
prev
'
);
this
.
calendarDate
.
decrement
(
"
month
"
,
1
);
this
.
calendarCurrentMonthNode
.
set
(
"
text
"
,(
this
.
calendarDate
.
getMonth
()
+
1
)
+
"
月
"
);
this
.
calendarCurrentMonthNode
.
set
(
"
text
"
,(
this
.
calendarDate
.
getMonth
()
+
1
)
+
this
.
app
.
lp
.
month
);
this
.
switchCalendarArrow
(
this
.
calendarDate
);
},
changeCalendarMonthNext
:
function
(){
if
(
this
.
calendarRightDisable
)
return
;
jQuery
(
this
.
calendarNode
).
fullCalendar
(
'
next
'
);
this
.
calendarDate
.
increment
(
"
month
"
,
1
);
this
.
calendarCurrentMonthNode
.
set
(
"
text
"
,(
this
.
calendarDate
.
getMonth
()
+
1
)
+
"
月
"
);
this
.
calendarCurrentMonthNode
.
set
(
"
text
"
,(
this
.
calendarDate
.
getMonth
()
+
1
)
+
this
.
app
.
lp
.
month
);
this
.
switchCalendarArrow
(
this
.
calendarDate
);
//this.date.increment("month", 1);
...
...
@@ -618,7 +618,7 @@ MWF.xApplication.Attendance.MyIndex = new Class({
}).
inject
(
this
.
statusColorTable
);
var
td
=
new
Element
(
"
td
"
,{
"
styles
"
:
this
.
css
.
statusTextTd
,
"
text
"
:
this
.
lp
[
status
]
+
this
.
totalData
[
status
]
+
"
天
"
+
(
this
.
rateData
[
status
]
?
"
(
"
+
this
.
rateData
[
status
]
+
"
)
"
:
""
)
"
text
"
:
this
.
lp
[
status
]
+
this
.
totalData
[
status
]
+
this
.
app
.
lp
.
day
+
(
this
.
rateData
[
status
]
?
"
(
"
+
this
.
rateData
[
status
]
+
"
)
"
:
""
)
}).
inject
(
tr
)
}
},
...
...
@@ -799,16 +799,20 @@ MWF.xApplication.Attendance.MyIndex = new Class({
},
isAskForLevel
:
function
(
d
,
ap
){
if
(
ap
==
"
am
"
){
return
d
.
isGetSelfHolidays
&&
(
d
.
selfHolidayDayTime
==
"
全天
"
||
d
.
selfHolidayDayTime
==
"
上午
"
)
//d.selfHolidayDayTime == "全天" || d.selfHolidayDayTime == "上午"
return
d
.
isGetSelfHolidays
&&
(
[
"
全天
"
,
"
上午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
am
].
contains
(
d
.
selfHolidayDayTime
)
)
}
else
{
return
d
.
isGetSelfHolidays
&&
(
d
.
selfHolidayDayTime
==
"
全天
"
||
d
.
selfHolidayDayTime
==
"
下午
"
)
// return d.isGetSelfHolidays && ( d.selfHolidayDayTime == "全天" || d.selfHolidayDayTime == "下午" )
return
d
.
isGetSelfHolidays
&&
(
[
"
全天
"
,
"
下午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
pm
].
contains
(
d
.
selfHolidayDayTime
)
)
}
},
isAbsent
:
function
(
d
,
ap
){
if
(
ap
==
"
am
"
){
return
d
.
isAbsent
&&
(
d
.
absentDayTime
==
"
全天
"
||
d
.
absentDayTime
==
"
上午
"
)
// return d.isAbsent && ( d.absentDayTime == "全天" || d.absentDayTime == "上午" )
return
d
.
isAbsent
&&
[
"
全天
"
,
"
上午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
am
].
contains
(
d
.
absentDayTime
);
}
else
{
return
d
.
isAbsent
&&
(
d
.
absentDayTime
==
"
全天
"
||
d
.
absentDayTime
==
"
下午
"
)
// return d.isAbsent && ( d.absentDayTime == "全天" || d.absentDayTime == "下午" )
return
d
.
isAbsent
&&
[
"
全天
"
,
"
下午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
pm
].
contains
(
d
.
absentDayTime
);
}
},
isLate
:
function
(
d
,
ap
){
...
...
@@ -825,9 +829,10 @@ MWF.xApplication.Attendance.MyIndex = new Class({
},
isAbnormalDuty
:
function
(
d
,
ap
){
if
(
ap
==
"
am
"
){
return
d
.
isAbnormalDuty
&&
(
d
.
abnormalDutyDayTime
==
"
全天
"
||
d
.
abnormalDutyDayTime
==
"
上午
"
)
// return d.isAbnormalDuty && ( d.abnormalDutyDayTime == "全天" || d.abnormalDutyDayTime == "上午" )
return
d
.
isAbnormalDuty
&&
[
"
全天
"
,
"
上午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
am
].
contains
(
d
.
abnormalDutyDayTime
)
}
else
{
return
d
.
isAbnormalDuty
&&
(
d
.
abnormalDutyDayTime
==
"
全天
"
||
d
.
abnormalDutyDayTime
==
"
下午
"
)
return
d
.
isAbnormalDuty
&&
[
"
全天
"
,
"
下午
"
,
this
.
app
.
lp
.
wholeDay
,
this
.
app
.
lp
.
pm
].
contains
(
d
.
abnormalDutyDayTime
);
}
},
isHoliday
:
function
(
d
,
ap
){
...
...
o2web/source/x_component_Attendance/PeopleDetail.js
浏览文件 @
cfd71a77
...
...
@@ -33,7 +33,7 @@ MWF.xApplication.Attendance.PeopleDetail = new Class({
this
.
tabs
=
new
MWF
.
widget
.
Tab
(
this
.
tabNode
,
{
"
style
"
:
"
attendance
"
});
this
.
tabs
.
load
();
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
"
个人出勤明细
"
,
false
);
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
this
.
app
.
lp
.
personAttendanceDetail
,
false
);
this
.
detailPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailPage
"
);
this
.
detailPage
.
addEvent
(
"
show
"
,
function
(){
if
(
!
this
.
detailExplorer
){
...
...
@@ -51,7 +51,7 @@ MWF.xApplication.Attendance.PeopleDetail = new Class({
// }
//}.bind(this))
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
"
个人出勤率统计
"
,
false
);
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
this
.
app
.
lp
.
personAttendanceStatic
,
false
);
this
.
detailStaticPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailStaticPage
"
);
this
.
detailStaticPage
.
addEvent
(
"
show
"
,
function
(){
if
(
!
this
.
detailStaticExplorer
){
...
...
@@ -105,6 +105,7 @@ MWF.xApplication.Attendance.PeopleDetail.Explorer = new Class({
this
.
setNodeScroll
();
},
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -135,9 +136,9 @@ MWF.xApplication.Attendance.PeopleDetail.Explorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_empName
:
{
text
:
"
人员
"
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
q_empName
:
{
text
:
lp
.
person
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -155,7 +156,7 @@ MWF.xApplication.Attendance.PeopleDetail.Explorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -169,11 +170,11 @@ MWF.xApplication.Attendance.PeopleDetail.Explorer = new Class({
}.
bind
(
this
)
}
},
date
:
{
text
:
"
日期
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
"
缺勤
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
缺勤
"
,
"
未缺勤
"
]
},
isLate
:
{
text
:
"
迟到
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
迟到
"
,
"
未迟到
"
]
},
isLackOfTime
:
{
text
:
"
工时不足
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
是
"
,
"
否
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
date
:
{
text
:
lp
.
date
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
lp
.
absent
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
absendSelectText
},
isLate
:
{
text
:
lp
.
late
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
lateSelectText
},
isLackOfTime
:
{
text
:
lp
.
lackOfTime
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
truefalseSelectText
},
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -187,7 +188,7 @@ MWF.xApplication.Attendance.PeopleDetail.Explorer = new Class({
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -477,6 +478,7 @@ MWF.xApplication.Attendance.PeopleDetail.SelfHoliday = new Class({
MWF
.
xApplication
.
Attendance
.
PeopleDetail
.
DetailStaticExplorer
=
new
Class
({
Extends
:
MWF
.
xApplication
.
Attendance
.
PeopleDetail
.
Explorer
,
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -499,9 +501,9 @@ MWF.xApplication.Attendance.PeopleDetail.DetailStaticExplorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_empName
:
{
text
:
"
人员
"
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
q_empName
:
{
text
:
lp
.
person
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -513,7 +515,7 @@ MWF.xApplication.Attendance.PeopleDetail.DetailStaticExplorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -521,14 +523,14 @@ MWF.xApplication.Attendance.PeopleDetail.DetailStaticExplorer = new Class({
},
"
selectValue
"
:[
""
,
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
o2web/source/x_component_Attendance/PeopleDingdingDetail.js
浏览文件 @
cfd71a77
...
...
@@ -33,7 +33,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail = new Class({
this
.
tabs
=
new
MWF
.
widget
.
Tab
(
this
.
tabNode
,
{
"
style
"
:
"
attendance
"
});
this
.
tabs
.
load
();
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
"
个人打卡明细
"
,
false
);
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
this
.
app
.
lp
.
personSigninDetail
,
false
);
this
.
detailPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailPage
"
);
this
.
detailPage
.
addEvent
(
"
show
"
,
function
()
{
if
(
!
this
.
detailExplorer
)
{
...
...
@@ -43,7 +43,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail = new Class({
}.
bind
(
this
));
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
"
个人打卡率统计
"
,
false
);
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
this
.
app
.
lp
.
personSigninStatic
,
false
);
this
.
detailStaticPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailStaticPage
"
);
this
.
detailStaticPage
.
addEvent
(
"
show
"
,
function
()
{
if
(
!
this
.
detailStaticExplorer
)
{
...
...
@@ -89,6 +89,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.Explorer = new Class({
this
.
setNodeScroll
();
},
loadFilter
:
function
()
{
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -116,9 +117,9 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.Explorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
person
:
{
text
:
"
人员
"
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
person
:
{
text
:
lp
.
person
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
year
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
()
{
var
years
=
[];
...
...
@@ -136,7 +137,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.Explorer = new Class({
}
},
month
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
()
{
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -150,11 +151,11 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.Explorer = new Class({
}.
bind
(
this
)
}
},
day
:
{
text
:
"
日期
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
checkType
:
{
text
:
"
打卡类型
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
OnDuty
"
,
"
OffDuty
"
],
"
selectText
"
:
[
""
,
"
上班打卡
"
,
"
下班打卡
"
]
},
timeResult
:
{
text
:
"
打卡结果
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
Normal
"
,
"
Early
"
,
"
Late
"
,
"
SeriousLate
"
,
"
Absenteeism
"
,
"
NotSigned
"
],
"
selectText
"
:
[
""
,
"
正常
"
,
"
早退
"
,
"
迟到
"
,
"
严重迟到
"
,
"
旷工迟到
"
,
"
未打卡
"
]
},
day
:
{
text
:
lp
.
date
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
checkType
:
{
text
:
lp
.
signinType
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
OnDuty
"
,
"
OffDuty
"
],
"
selectText
"
:
lp
.
signinTypeSelectText
},
timeResult
:
{
text
:
lp
.
signinResult
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
Normal
"
,
"
Early
"
,
"
Late
"
,
"
SeriousLate
"
,
"
Absenteeism
"
,
"
NotSigned
"
],
"
selectText
"
:
lp
.
signinResultSelectText
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
()
{
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -243,6 +244,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.SelfHoliday = new Class({
MWF
.
xApplication
.
Attendance
.
PeopleDingdingDetail
.
DetailStaticExplorer
=
new
Class
({
Extends
:
MWF
.
xApplication
.
Attendance
.
PeopleDingdingDetail
.
Explorer
,
loadFilter
:
function
()
{
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -264,9 +266,9 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.DetailStaticExplorer = new Clas
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_empName
:
{
text
:
"
人员
"
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
q_empName
:
{
text
:
lp
.
person
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
()
{
var
years
=
[];
...
...
@@ -278,7 +280,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.DetailStaticExplorer = new Clas
}
},
cycleMonth
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
()
{
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -287,7 +289,7 @@ MWF.xApplication.Attendance.PeopleDingdingDetail.DetailStaticExplorer = new Clas
"
selectValue
"
:
[
""
,
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
()
{
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
o2web/source/x_component_Attendance/PermissionExplorer.js
浏览文件 @
cfd71a77
...
...
@@ -92,7 +92,7 @@ MWF.xApplication.Attendance.PermissionExplorer.Permission = new Class({
isEdited
:
this
.
isEdited
||
this
.
isNew
,
itemTemplate
:
{
adminLevel
:
{
text
:
lp
.
role
,
type
:
"
select
"
,
"
selectText
"
:
[
"
公司管理员
"
,
"
部门管理员
"
]
,
"
selectText
"
:
lp
.
roleSelectText
,
"
selectValue
"
:
[
"
COMPANY
"
,
"
DEPT
"
]
},
unitName
:
{
text
:
lp
.
unit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
...
...
o2web/source/x_component_Attendance/PersonSetting.js
浏览文件 @
cfd71a77
...
...
@@ -83,9 +83,9 @@ MWF.xApplication.Attendance.PersonSetting.Form = new Class({
"
closeAction
"
:
true
},
_createTableContent
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
html
=
"
<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
考勤人员设置
</td></tr>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
"
+
lp
.
personSetting
+
"
</td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='configType'></td>
"
+
"
<td styles='formTableValue' item='configType'></td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='topUnitName'></td>
"
+
...
...
@@ -105,10 +105,10 @@ MWF.xApplication.Attendance.PersonSetting.Form = new Class({
this
.
form
=
new
MForm
(
this
.
formTableArea
,
this
.
data
,
{
isEdited
:
this
.
isEdited
||
this
.
isNew
,
itemTemplate
:
{
configType
:
{
text
:
"
配置类型
"
,
type
:
"
select
"
,
selectText
:
[
"
需要考勤
"
,
"
不需要考勤
"
]
,
selectValue
:
[
"
REQUIRED
"
,
"
NOTREQUIRED
"
]
},
topUnitName
:
{
text
:
"
公司名称
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
unitName
:
{
text
:
"
部门名称
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
employeeName
:
{
text
:
"
员工姓名
"
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
"
event
"
:
{
configType
:
{
text
:
lp
.
configType
,
type
:
"
select
"
,
selectText
:
lp
.
configTypeSelectText
,
selectValue
:
[
"
REQUIRED
"
,
"
NOTREQUIRED
"
]
},
topUnitName
:
{
text
:
lp
.
topUnitName
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
unitName
:
{
text
:
lp
.
unitName
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
employeeName
:
{
text
:
lp
.
employeeName
,
type
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
,
"
event
"
:
{
change
:
function
(
item
,
ev
){
if
(
typeOf
(
item
.
orgObject
)
==
"
array
"
&&
item
.
orgObject
.
length
>
0
){
var
data
=
item
.
orgObject
[
0
].
data
;
...
...
@@ -118,8 +118,8 @@ MWF.xApplication.Attendance.PersonSetting.Form = new Class({
}
}
}
},
employeeNumber
:
{
text
:
"
员工编号
"
,
notEmpty
:
true
},
empInTopUnitTime
:
{
text
:
"
入职日期
"
,
tType
:
"
date
"
}
employeeNumber
:
{
text
:
lp
.
employeeNumber
,
notEmpty
:
true
},
empInTopUnitTime
:
{
text
:
lp
.
joininDate
,
tType
:
"
date
"
}
}
},
this
.
app
);
this
.
form
.
load
();
...
...
o2web/source/x_component_Attendance/SelfHoliday.js
浏览文件 @
cfd71a77
...
...
@@ -39,6 +39,7 @@ MWF.xApplication.Attendance.SelfHoliday = new Class({
exportForm
.
edit
();
},
_loadFilterContent
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
_self
=
this
;
var
html
=
"
<table bordr='0' cellpadding='5' cellspacing='0' styles='formTable' width='1350'>
"
+
"
<tr>
"
+
...
...
@@ -62,14 +63,14 @@ MWF.xApplication.Attendance.SelfHoliday = new Class({
style
:
"
filter
"
,
isEdited
:
true
,
itemTemplate
:
{
q_topUnitName
:
{
"
text
"
:
"
选择公司
"
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
unit
"
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_unitName
:
{
"
text
"
:
"
选择部门
"
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
unit
"
,
style
:
{
"
min-width
"
:
"
250px
"
}
},
q_empName
:
{
"
text
"
:
"
选择人员
"
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
person
"
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
startdateString
:
{
"
text
"
:
"
开始日期
"
,
"
tType
"
:
"
date
"
,
style
:
{
"
border
"
:
"
1px solid rgb(153, 153, 153)
"
,
"
background
"
:
'
url("../x_component_Template/$MForm/default/icon/calendar.png") 98% center no-repeat
'
,
"
border-radius
"
:
"
3px
"
,
"
box-shadow
"
:
"
rgb(204, 204, 204) 0px 0px 6px
"
,
"
height
"
:
"
26px
"
,
"
width
"
:
"
100px
"
}
},
enddateString
:
{
"
text
"
:
"
结束日期
"
,
"
tType
"
:
"
date
"
,
style
:
{
"
border
"
:
"
1px solid rgb(153, 153, 153)
"
,
"
background
"
:
'
url("../x_component_Template/$MForm/default/icon/calendar.png") 98% center no-repeat
'
,
"
border-radius
"
:
"
3px
"
,
"
box-shadow
"
:
"
rgb(204, 204, 204) 0px 0px 6px
"
,
"
height
"
:
"
26px
"
,
"
width
"
:
"
100px
"
}},
q_topUnitName
:
{
"
text
"
:
lp
.
selectCompany
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
unit
"
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_unitName
:
{
"
text
"
:
lp
.
selectDepartment
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
unit
"
,
style
:
{
"
min-width
"
:
"
250px
"
}
},
q_empName
:
{
"
text
"
:
lp
.
selectPerson
,
"
type
"
:
"
org
"
,
"
orgType
"
:
"
person
"
,
style
:
{
"
min-width
"
:
"
100px
"
}
},
startdateString
:
{
"
text
"
:
lp
.
startTime
,
"
tType
"
:
"
date
"
,
style
:
{
"
border
"
:
"
1px solid rgb(153, 153, 153)
"
,
"
background
"
:
'
url("../x_component_Template/$MForm/default/icon/calendar.png") 98% center no-repeat
'
,
"
border-radius
"
:
"
3px
"
,
"
box-shadow
"
:
"
rgb(204, 204, 204) 0px 0px 6px
"
,
"
height
"
:
"
26px
"
,
"
width
"
:
"
100px
"
}
},
enddateString
:
{
"
text
"
:
lp
.
endTime
,
"
tType
"
:
"
date
"
,
style
:
{
"
border
"
:
"
1px solid rgb(153, 153, 153)
"
,
"
background
"
:
'
url("../x_component_Template/$MForm/default/icon/calendar.png") 98% center no-repeat
'
,
"
border-radius
"
:
"
3px
"
,
"
box-shadow
"
:
"
rgb(204, 204, 204) 0px 0px 6px
"
,
"
height
"
:
"
26px
"
,
"
width
"
:
"
100px
"
}},
action
:
{
"
type
"
:
"
button
"
,
"
value
"
:
"
查询
"
,
"
value
"
:
lp
.
query
,
"
event
"
:
{
"
click
"
:
function
(){
var
filterData
=
_self
.
filter
.
getResult
(
true
,
"
,
"
,
true
,
true
,
true
);
this
.
loadView
(
filterData
);
...
...
@@ -134,9 +135,10 @@ MWF.xApplication.Attendance.SelfHoliday.Document = new Class({
MWF
.
xApplication
.
Attendance
.
SelfHoliday
.
ExportExcelForm
=
new
Class
({
Extends
:
MWF
.
xApplication
.
Attendance
.
Explorer
.
PopupForm
,
_createTableContent
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
html
=
"
<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
导出员工休假记录
</td></tr>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
"
+
lp
.
exportEmployeeHolidayRecord
+
"
</td></tr>
"
+
"
<tr>
"
+
"
<td styles='formTableTitle' lable='startDate'></td>
"
+
"
<td styles='formTableValue' item='startDate'></td>
"
+
...
...
@@ -153,8 +155,8 @@ MWF.xApplication.Attendance.SelfHoliday.ExportExcelForm = new Class({
this
.
form
=
new
MForm
(
this
.
formTableArea
,
{
q_empName
:
layout
.
desktop
.
session
.
user
.
distinguishedName
},
{
isEdited
:
true
,
itemTemplate
:
{
startDate
:
{
"
text
"
:
"
开始日期
"
,
"
tType
"
:
"
date
"
},
endDate
:
{
"
text
"
:
"
结束日期
"
,
"
tType
"
:
"
date
"
}
startDate
:
{
"
text
"
:
lp
.
startTime
,
"
tType
"
:
"
date
"
},
endDate
:
{
"
text
"
:
lp
.
endTime
,
"
tType
"
:
"
date
"
}
}
},
this
.
app
);
this
.
form
.
load
();
...
...
@@ -181,9 +183,9 @@ MWF.xApplication.Attendance.SelfHoliday.Form = new Class({
"
closeAction
"
:
true
},
_createTableContent
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
html
=
"
<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
员工休假记录
</td></tr>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
"
+
lp
.
employeeHolidayRecord
+
"
</td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='unitName'></td>
"
+
"
<td styles='formTableValue' item='unitName'></td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='employeeName'></td>
"
+
...
...
@@ -203,21 +205,21 @@ MWF.xApplication.Attendance.SelfHoliday.Form = new Class({
this
.
form
=
new
MForm
(
this
.
formTableArea
,
this
.
data
,
{
isEdited
:
this
.
isEdited
||
this
.
isNew
,
itemTemplate
:
{
unitName
:
{
text
:
"
部门
"
,
"
type
"
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
employeeName
:
{
text
:
"
员工姓名
"
,
"
type
"
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
},
unitName
:
{
text
:
lp
.
unit
,
"
type
"
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
},
employeeName
:
{
text
:
lp
.
employeeName
,
"
type
"
:
"
org
"
,
orgType
:
"
person
"
,
notEmpty
:
true
},
leaveType
:
{
text
:
"
休假类型
"
,
text
:
lp
.
leaveType1
,
"
type
"
:
"
select
"
,
notEmpty
:
true
,
"
selectValue
"
:
"
带薪年休假,带薪病假,带薪福利假,扣薪事假,其他
"
.
split
(
"
,
"
)
"
selectValue
"
:
lp
.
leaveTypeSelectText1
},
startTime
:
{
text
:
"
开始时间
"
,
tType
:
"
datetime
"
,
notEmpty
:
true
text
:
lp
.
startTime
,
tType
:
"
datetime
"
,
notEmpty
:
true
},
endTime
:
{
text
:
"
结束时间
"
,
tType
:
"
datetime
"
,
notEmpty
:
true
text
:
lp
.
endTime
,
tType
:
"
datetime
"
,
notEmpty
:
true
},
leaveDayNumber
:
{
text
:
"
休假天数
"
,
tType
:
"
number
"
,
notEmpty
:
true
text
:
lp
.
leaveDayCount
,
tType
:
"
number
"
,
notEmpty
:
true
}
}
},
this
.
app
);
...
...
o2web/source/x_component_Attendance/StatisticsCycle.js
浏览文件 @
cfd71a77
...
...
@@ -74,19 +74,19 @@ MWF.xApplication.Attendance.StatisticsCycle.Form = new Class({
"
closeAction
"
:
true
},
_createTableContent
:
function
(){
var
lp
=
this
.
app
.
lp
.
schedule
;
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
html
=
"
<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
统计周期设置
</td></tr>
"
+
"
<tr><td colspan='2' styles='formTableHead'>
"
+
lp
.
statisticsPeriodSetting
+
"
</td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='topUnitName'></td>
"
+
"
<td styles='formTableValue'>
"
+
"
<div item='topUnitName'></div>
"
+
"
<div style='font-size: 12px;color: #999;'>
双击选择,填写'*'匹配所有公司
</div>
"
+
"
<div style='font-size: 12px;color: #999;'>
"
+
lp
.
selectCompanyNotice
+
"
</div>
"
+
"
</td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='unitName'></td>
"
+
"
<td styles='formTableValue'>
"
+
"
<div item='unitName'></div>
"
+
"
<div style='font-size: 12px;color: #999;'>
双击选择,填写'*'匹配所有部门
</div>
"
+
"
<div style='font-size: 12px;color: #999;'>
"
+
lp
.
selectDepartmentNotice
+
"
</div>
"
+
"
</td></tr>
"
+
"
<tr><td styles='formTabelTitle' lable='cycleYear'></td>
"
+
"
<td styles='formTableValue' item='cycleYear'></td></tr>
"
+
...
...
@@ -105,9 +105,9 @@ MWF.xApplication.Attendance.StatisticsCycle.Form = new Class({
this
.
form
=
new
MForm
(
this
.
formTableArea
,
this
.
data
,
{
isEdited
:
this
.
isEdited
||
this
.
isNew
,
itemTemplate
:
{
topUnitName
:
{
text
:
"
统计公司
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
},
unitName
:
{
text
:
"
统计部门
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
},
cycleYear
:
{
text
:
"
统计周期年份
"
,
type
:
"
select
"
,
notEmpty
:
true
,
defaultValue
:
new
Date
().
getFullYear
(),
selectValue
:
function
(){
topUnitName
:
{
text
:
lp
.
statisticsCompany
,
type
:
"
org
"
,
orgType
:
"
unit
"
},
unitName
:
{
text
:
lp
.
statisticsUnit
,
type
:
"
org
"
,
orgType
:
"
unit
"
},
cycleYear
:
{
text
:
lp
.
cycleYear
,
type
:
"
select
"
,
notEmpty
:
true
,
defaultValue
:
new
Date
().
getFullYear
(),
selectValue
:
function
(){
var
years
=
[];
var
year
=
new
Date
().
getFullYear
()
+
5
;
for
(
var
i
=
0
;
i
<
10
;
i
++
)
{
...
...
@@ -115,10 +115,10 @@ MWF.xApplication.Attendance.StatisticsCycle.Form = new Class({
}
return
years
;
}},
cycleMonth
:
{
text
:
"
统计周期月份
"
,
type
:
"
select
"
,
notEmpty
:
true
,
selectValue
:
[
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
cycleStartDateString
:
{
text
:
"
开始日期
"
,
tType
:
"
date
"
},
cycleEndDateString
:
{
text
:
"
结束日期
"
,
tType
:
"
date
"
},
description
:
{
text
:
"
说明备注
"
,
type
:
"
textarea
"
}
cycleMonth
:
{
text
:
lp
.
cycleMonth
,
type
:
"
select
"
,
notEmpty
:
true
,
selectValue
:
[
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
cycleStartDateString
:
{
text
:
lp
.
startDate
,
tType
:
"
date
"
},
cycleEndDateString
:
{
text
:
lp
.
endData
,
tType
:
"
date
"
},
description
:
{
text
:
lp
.
description
,
type
:
"
textarea
"
}
}
},
this
.
app
);
this
.
form
.
load
();
...
...
@@ -186,6 +186,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
},
createNode
:
function
(){
var
_self
=
this
;
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
createNode
=
new
Element
(
"
div
"
,
{
"
styles
"
:
this
.
css
.
createNode
...
...
@@ -215,10 +216,10 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
var
d
=
this
.
data
;
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableHead
,
"
colspan
"
:
"
4
"
,
"
text
"
:
"
统计周期设置
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableHead
,
"
colspan
"
:
"
4
"
,
"
text
"
:
lp
.
statisticsPeriodSetting
}).
inject
(
tr
);
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
公司名称
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
topUnitName
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
if
(
!
this
.
isNew
&&
!
this
.
isEdited
){
td
.
set
(
"
text
"
,
d
.
topUnitName
)
...
...
@@ -232,11 +233,11 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}
},
true
,
this
.
app
);
this
.
topUnitName
.
load
();
new
Element
(
"
div
"
,
{
"
text
"
:
"
双击选择,填写'*'匹配所有公司
"
,
"
styles
"
:
{
"
color
"
:
"
#ccc
"
}}).
inject
(
td
)
new
Element
(
"
div
"
,
{
"
text
"
:
lp
.
selectCompanyNotice
,
"
styles
"
:
{
"
color
"
:
"
#ccc
"
}}).
inject
(
td
)
}
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
部门名称
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
unitName
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
if
(
!
this
.
isNew
&&
!
this
.
isEdited
){
td
.
set
(
"
text
"
,
d
.
unitName
)
...
...
@@ -250,11 +251,11 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}
},
true
,
this
.
app
);
this
.
unitName
.
load
();
new
Element
(
"
div
"
,
{
"
text
"
:
"
双击选择,填写'*'匹配所有部门
"
,
"
styles
"
:
{
"
color
"
:
"
#ccc
"
}
}).
inject
(
td
)
new
Element
(
"
div
"
,
{
"
text
"
:
lp
.
selectDepartmentNotice
,
"
styles
"
:
{
"
color
"
:
"
#ccc
"
}
}).
inject
(
td
)
}
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
统计周期年份
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
cycleYear
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
if
(
!
this
.
isNew
&&
!
this
.
isEdited
){
td
.
set
(
"
text
"
,
d
.
cycleYear
||
""
)
...
...
@@ -276,7 +277,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
统计周期月份
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
cycleMonth
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
if
(
!
this
.
isNew
&&
!
this
.
isEdited
){
td
.
set
(
"
text
"
,
d
.
cycleMonth
||
""
)
...
...
@@ -291,7 +292,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
开始日期
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
startDate
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
this
.
cycleStartDateString
=
new
MDomItem
(
td
,
{
"
name
"
:
"
cycleStartDateString
"
,
...
...
@@ -307,7 +308,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
this
.
cycleStartDateString
.
load
();
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
结束日期
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
endData
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
this
.
cycleEndDateString
=
new
MDomItem
(
td
,
{
"
name
"
:
"
cycleEndDateString
"
,
...
...
@@ -323,7 +324,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
this
.
cycleEndDateString
.
load
();
var
tr
=
new
Element
(
"
tr
"
).
inject
(
table
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
"
说明备注
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableTitle
,
"
text
"
:
lp
.
description
+
"
:
"
}).
inject
(
tr
);
var
td
=
new
Element
(
"
td
"
,
{
"
styles
"
:
this
.
css
.
editTableValue
}).
inject
(
tr
);
this
.
description
=
new
MDomItem
(
td
,
{
"
type
"
:
"
textarea
"
,
...
...
@@ -336,7 +337,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
this
.
cancelActionNode
=
new
Element
(
"
div
"
,
{
"
styles
"
:
this
.
css
.
createCancelActionNode
,
"
text
"
:
"
取消
"
"
text
"
:
lp
.
cancel
}).
inject
(
this
.
createFormNode
);
...
...
@@ -347,7 +348,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
if
(
this
.
isNew
||
this
.
isEdited
){
this
.
createOkActionNode
=
new
Element
(
"
div
"
,
{
"
styles
"
:
this
.
css
.
createOkActionNode
,
"
text
"
:
"
确定
"
"
text
"
:
lp
.
ok
}).
inject
(
this
.
createFormNode
);
this
.
createOkActionNode
.
addEvent
(
"
click
"
,
function
(
e
){
...
...
@@ -452,7 +453,7 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}
else
{
// this.adminName.setStyle("border-color", "red");
//this.adminName.focus();
this
.
app
.
notice
(
"
请选择开始日期和结束日期
"
,
"
error
"
);
this
.
app
.
notice
(
this
.
app
.
lp
.
selectStartEndEndDataNotice
,
"
error
"
);
}
},
selectDateTime
:
function
(
el
,
timeOnly
,
isTme
,
baseDate
){
...
...
@@ -469,13 +470,14 @@ MWF.xApplication.Attendance.StatisticsCycle.StatisticsCycle2 = new Class({
}.
bind
(
this
));
},
selectPeople
:
function
(
el
,
type
,
value
){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
title
;
if
(
type
==
"
unit
"
){
title
=
"
选择部门
"
title
=
lp
.
selectDepartment
}
else
if
(
type
==
"
topUnit
"
){
title
=
"
选择公司
"
title
=
lp
.
selectCompany
}
else
{
title
=
"
选择个人
"
title
=
lp
.
selectPerson
}
var
options
=
{
"
type
"
:
type
,
...
...
o2web/source/x_component_Attendance/TopUnitDetail.js
浏览文件 @
cfd71a77
...
...
@@ -90,6 +90,7 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
this
.
setNodeScroll
();
},
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -120,9 +121,9 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_topUnitName
:
{
text
:
"
公司
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_topUnitName
:
{
text
:
lp
.
topUnit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -140,7 +141,7 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -154,11 +155,11 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
}.
bind
(
this
)
}
},
date
:
{
text
:
"
日期
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
"
缺勤
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
缺勤
"
,
"
未缺勤
"
]
},
isLate
:
{
text
:
"
迟到
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
迟到
"
,
"
未迟到
"
]
},
isLackOfTime
:
{
text
:
"
工时不足
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
是
"
,
"
否
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
date
:
{
text
:
lp
.
date
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
lp
.
absent
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
absendSelectText
},
isLate
:
{
text
:
lp
.
late
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
lateSelectText
},
isLackOfTime
:
{
text
:
lp
.
lackOfTime
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
truefalseSelectText
},
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -172,7 +173,7 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -471,6 +472,7 @@ MWF.xApplication.Attendance.TopUnitDetail.Explorer = new Class({
MWF
.
xApplication
.
Attendance
.
TopUnitDetail
.
DetailStaticExplorer
=
new
Class
({
Extends
:
MWF
.
xApplication
.
Attendance
.
TopUnitDetail
.
Explorer
,
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -493,9 +495,9 @@ MWF.xApplication.Attendance.TopUnitDetail.DetailStaticExplorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_topUnitName
:
{
text
:
"
公司
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_topUnitName
:
{
text
:
lp
.
topUnit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -507,7 +509,7 @@ MWF.xApplication.Attendance.TopUnitDetail.DetailStaticExplorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
notEmpty
:
true
,
text
:
lp
.
months
,
notEmpty
:
true
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -515,14 +517,14 @@ MWF.xApplication.Attendance.TopUnitDetail.DetailStaticExplorer = new Class({
},
"
selectValue
"
:[
""
,
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
o2web/source/x_component_Attendance/UnitDetail.js
浏览文件 @
cfd71a77
...
...
@@ -33,7 +33,7 @@ MWF.xApplication.Attendance.UnitDetail = new Class({
this
.
tabs
=
new
MWF
.
widget
.
Tab
(
this
.
tabNode
,
{
"
style
"
:
"
attendance
"
});
this
.
tabs
.
load
();
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
"
部门出勤明细
"
,
false
);
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
this
.
app
.
lp
.
unitAttendanceDetail
,
false
);
this
.
detailPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailPage
"
);
this
.
detailPage
.
addEvent
(
"
show
"
,
function
(){
if
(
!
this
.
detailExplorer
){
...
...
@@ -43,7 +43,7 @@ MWF.xApplication.Attendance.UnitDetail = new Class({
}.
bind
(
this
));
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
"
部门出勤率统计
"
,
false
);
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
this
.
app
.
lp
.
unitAttendanceStatic
,
false
);
this
.
detailStaticPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailStaticPage
"
);
this
.
detailStaticPage
.
addEvent
(
"
show
"
,
function
(){
if
(
!
this
.
detailStaticExplorer
){
...
...
@@ -88,6 +88,7 @@ MWF.xApplication.Attendance.UnitDetail.Explorer = new Class({
this
.
setNodeScroll
();
},
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -118,9 +119,9 @@ MWF.xApplication.Attendance.UnitDetail.Explorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_unitName
:
{
text
:
"
部门
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_unitName
:
{
text
:
lp
.
unit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -138,7 +139,7 @@ MWF.xApplication.Attendance.UnitDetail.Explorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -152,11 +153,11 @@ MWF.xApplication.Attendance.UnitDetail.Explorer = new Class({
}.
bind
(
this
)
}
},
date
:
{
text
:
"
日期
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
"
缺勤
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
缺勤
"
,
"
未缺勤
"
]
},
isLate
:
{
text
:
"
迟到
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
迟到
"
,
"
未迟到
"
]
},
isLackOfTime
:
{
text
:
"
工时不足
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
[
""
,
"
是
"
,
"
否
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
date
:
{
text
:
lp
.
date
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
isAbsent
:
{
text
:
lp
.
absent
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
absendSelectText
},
isLate
:
{
text
:
lp
.
late
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
lateSelectText
},
isLackOfTime
:
{
text
:
lp
.
lackOfTime
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
true
"
,
"
false
"
],
"
selectText
"
:
lp
.
truefalseSelectText
},
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -170,7 +171,7 @@ MWF.xApplication.Attendance.UnitDetail.Explorer = new Class({
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -470,6 +471,7 @@ MWF.xApplication.Attendance.UnitDetail.DetailStaticExplorer = new Class({
Extends
:
MWF
.
xApplication
.
Attendance
.
UnitDetail
.
Explorer
,
loadFilter
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -492,9 +494,9 @@ MWF.xApplication.Attendance.UnitDetail.DetailStaticExplorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_unitName
:
{
text
:
"
部门
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_unitName
:
{
text
:
lp
.
unit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
(){
var
years
=
[];
...
...
@@ -506,7 +508,7 @@ MWF.xApplication.Attendance.UnitDetail.DetailStaticExplorer = new Class({
}
},
cycleMonth
:
{
text
:
"
月份
"
,
notEmpty
:
true
,
text
:
lp
.
months
,
notEmpty
:
true
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
(){
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -514,14 +516,14 @@ MWF.xApplication.Attendance.UnitDetail.DetailStaticExplorer = new Class({
},
"
selectValue
"
:[
""
,
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
action
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
this
.
loadView
(
result
);
}.
bind
(
this
)
}},
export
:
{
"
value
"
:
"
导出
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
export
:
{
"
value
"
:
lp
.
export
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
(){
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
o2web/source/x_component_Attendance/UnitDingdingDetail.js
浏览文件 @
cfd71a77
...
...
@@ -33,7 +33,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail = new Class({
this
.
tabs
=
new
MWF
.
widget
.
Tab
(
this
.
tabNode
,
{
"
style
"
:
"
attendance
"
});
this
.
tabs
.
load
();
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
"
部门打卡明细
"
,
false
);
this
.
detailPage
=
this
.
tabs
.
addTab
(
this
.
detailArea
,
this
.
app
.
lp
.
unitSigninDetail
,
false
);
this
.
detailPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailPage
"
);
this
.
detailPage
.
addEvent
(
"
show
"
,
function
()
{
if
(
!
this
.
detailExplorer
)
{
...
...
@@ -43,7 +43,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail = new Class({
}.
bind
(
this
));
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
"
部门打卡率统计
"
,
false
);
this
.
detailStaticPage
=
this
.
tabs
.
addTab
(
this
.
detailStaticArea
,
this
.
app
.
lp
.
unitSigninStatic
,
false
);
this
.
detailStaticPage
.
contentNodeArea
.
set
(
"
class
"
,
"
detailStaticPage
"
);
this
.
detailStaticPage
.
addEvent
(
"
show
"
,
function
()
{
if
(
!
this
.
detailStaticExplorer
)
{
...
...
@@ -88,6 +88,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail.Explorer = new Class({
this
.
setNodeScroll
();
},
loadFilter
:
function
()
{
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -115,9 +116,9 @@ MWF.xApplication.Attendance.UnitDingdingDetail.Explorer = new Class({
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
unit
:
{
text
:
"
部门
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
unit
:
{
text
:
lp
.
unit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
year
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
()
{
var
years
=
[];
...
...
@@ -135,7 +136,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail.Explorer = new Class({
}
},
month
:
{
text
:
"
月份
"
,
text
:
lp
.
months
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
()
{
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -149,11 +150,11 @@ MWF.xApplication.Attendance.UnitDingdingDetail.Explorer = new Class({
}.
bind
(
this
)
}
},
day
:
{
text
:
"
日期
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
checkType
:
{
text
:
"
打卡类型
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
OnDuty
"
,
"
OffDuty
"
],
"
selectText
"
:
[
""
,
"
上班打卡
"
,
"
下班打卡
"
]
},
timeResult
:
{
text
:
"
打卡结果
"
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
Normal
"
,
"
Early
"
,
"
Late
"
,
"
SeriousLate
"
,
"
Absenteeism
"
,
"
NotSigned
"
],
"
selectText
"
:
[
""
,
"
正常
"
,
"
早退
"
,
"
迟到
"
,
"
严重迟到
"
,
"
旷工迟到
"
,
"
未打卡
"
]
},
day
:
{
text
:
lp
.
date
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
this
.
getDateSelectValue
.
bind
(
this
)
},
checkType
:
{
text
:
lp
.
signinType
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
OnDuty
"
,
"
OffDuty
"
],
"
selectText
"
:
lp
.
signinTypeSelectText
},
timeResult
:
{
text
:
lp
.
signinResult
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
[
""
,
"
Normal
"
,
"
Early
"
,
"
Late
"
,
"
SeriousLate
"
,
"
Absenteeism
"
,
"
NotSigned
"
],
"
selectText
"
:
lp
.
signinResultSelectText
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
()
{
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
@@ -230,6 +231,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail.DetailStaticExplorer = new Class(
Extends
:
MWF
.
xApplication
.
Attendance
.
UnitDingdingDetail
.
Explorer
,
loadFilter
:
function
()
{
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
this
.
fileterNode
=
new
Element
(
"
div.fileterNode
"
,
{
"
styles
"
:
this
.
css
.
fileterNode
}).
inject
(
this
.
node
);
...
...
@@ -251,9 +253,9 @@ MWF.xApplication.Attendance.UnitDingdingDetail.DetailStaticExplorer = new Class(
this
.
form
=
new
MForm
(
this
.
fileterNode
,
{},
{
isEdited
:
true
,
itemTemplate
:
{
q_unitName
:
{
text
:
"
部门
"
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
q_unitName
:
{
text
:
lp
.
unit
,
type
:
"
org
"
,
orgType
:
"
unit
"
,
notEmpty
:
true
,
style
:
{
"
min-width
"
:
"
200px
"
}
},
cycleYear
:
{
text
:
"
年度
"
,
text
:
lp
.
annuaal
,
"
type
"
:
"
select
"
,
"
selectValue
"
:
function
()
{
var
years
=
[];
...
...
@@ -265,7 +267,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail.DetailStaticExplorer = new Class(
}
},
cycleMonth
:
{
text
:
"
月份
"
,
notEmpty
:
true
,
text
:
lp
.
months
,
notEmpty
:
true
,
"
type
"
:
"
select
"
,
"
defaultValue
"
:
function
()
{
var
month
=
(
new
Date
().
getMonth
()
+
1
).
toString
();
...
...
@@ -274,7 +276,7 @@ MWF.xApplication.Attendance.UnitDingdingDetail.DetailStaticExplorer = new Class(
"
selectValue
"
:
[
""
,
"
01
"
,
"
02
"
,
"
03
"
,
"
04
"
,
"
05
"
,
"
06
"
,
"
07
"
,
"
08
"
,
"
09
"
,
"
10
"
,
"
11
"
,
"
12
"
]
},
action
:
{
"
value
"
:
"
查询
"
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
"
value
"
:
lp
.
query
,
type
:
"
button
"
,
className
:
"
filterButton
"
,
event
:
{
click
:
function
()
{
var
result
=
this
.
form
.
getResult
(
true
,
"
,
"
,
true
,
true
,
false
);
if
(
!
result
)
return
;
...
...
o2web/source/x_component_Attendance/WeekendSetting.js
浏览文件 @
cfd71a77
...
...
@@ -101,6 +101,7 @@ MWF.xApplication.Attendance.WeekendSetting = new Class({
this
.
addEvent
(
"
resize
"
,
this
.
setCreateNodeSizeFun
);
},
createNode
:
function
(){
var
lp
=
MWF
.
xApplication
.
Attendance
.
LP
;
var
_self
=
this
;
this
.
createNode
=
new
Element
(
"
div
"
,
{
...
...
@@ -142,14 +143,14 @@ MWF.xApplication.Attendance.WeekendSetting = new Class({
var
html
=
"
<table width='100%' bordr='0' cellpadding='5' cellspacing='0' styles='formTable'>
"
+
"
<tr><td colspan='4' styles='formTableHead'>
周末设置
</td></tr>
"
+
"
<tr><td colspan='4' styles='formTableHead'>
"
+
lp
.
weekendSetting
+
"
</td></tr>
"
+
"
<tr><td styles='formTableTitle' lable='ATTENDANCE_WEEKEND'></td>
"
+
"
<td styles='formTableValue' item='ATTENDANCE_WEEKEND'></td>
"
+
"
</table>
"
;
html
=
html
+
"
<span style='font-size:12px'>
"
+
this
.
dataJson
.
ATTENDANCE_WEEKEND
.
description
+
"
</span>
"
this
.
createTableArea
.
set
(
"
html
"
,
html
);
this
.
itemTemplate
=
{
ATTENDANCE_WEEKEND
:
{
text
:
"
周末选择
"
,
ATTENDANCE_WEEKEND
:
{
text
:
lp
.
selectWeekend
,
type
:
"
select
"
,
value
:
d
.
ATTENDANCE_WEEKEND
,
selectValue
:
this
.
dataJson
.
ATTENDANCE_WEEKEND
.
selectContent
.
split
(
"
|
"
)
,
//["周六","周日"]
...
...
@@ -169,7 +170,7 @@ MWF.xApplication.Attendance.WeekendSetting = new Class({
this
.
cancelActionNode
=
new
Element
(
"
div
"
,
{
"
styles
"
:
this
.
css
.
createCancelActionNode
,
"
text
"
:
"
取消
"
"
text
"
:
lp
.
cancel
}).
inject
(
this
.
createFormNode
);
...
...
@@ -180,7 +181,7 @@ MWF.xApplication.Attendance.WeekendSetting = new Class({
if
(
this
.
isNew
||
this
.
isEdited
){
this
.
createOkActionNode
=
new
Element
(
"
div
"
,
{
"
styles
"
:
this
.
css
.
createOkActionNode
,
"
text
"
:
"
确定
"
"
text
"
:
lp
.
ok
}).
inject
(
this
.
createFormNode
);
this
.
createOkActionNode
.
addEvent
(
"
click
"
,
function
(
e
){
...
...
@@ -244,7 +245,7 @@ MWF.xApplication.Attendance.WeekendSetting = new Class({
if
(
flag
){
this
.
createMarkNode
.
destroy
();
this
.
createAreaNode
.
destroy
();
this
.
app
.
notice
(
"
保存成功
"
,
"
success
"
);
this
.
app
.
notice
(
MWF
.
xApplication
.
Attendance
.
LP
.
saveSuccess
,
"
success
"
);
}
}
});
o2web/source/x_component_Attendance/lp/zh-cn.js
浏览文件 @
cfd71a77
...
...
@@ -61,6 +61,14 @@ MWF.xApplication.Attendance.LP = {
"
topUnitAttendanceDetail
"
:
"
公司出勤明细
"
,
"
topUnitAttendanceStatic
"
:
"
公司出勤率统计
"
,
"
unitAttendanceDetail
"
:
"
部门出勤明细
"
,
"
unitAttendanceStatic
"
:
"
部门出勤率统计
"
,
"
personAttendanceDetail
"
:
"
个人出勤明细
"
,
"
personAttendanceStatic
"
:
"
个人出勤率统计
"
,
"
unitSigninDetail
"
:
"
部门打卡明细
"
,
"
unitSigninStatic
"
:
"
部门打卡率统计
"
,
"
personSigninDetail
"
:
"
个人打卡明细
"
,
"
personSigninStatic
"
:
"
个人打卡率统计
"
,
"
staticByDay
"
:
"
按日统计
"
,
"
staticByMonth
"
:
"
按月统计
"
,
"
type
"
:
"
类型
"
,
...
...
@@ -156,7 +164,8 @@ MWF.xApplication.Attendance.LP = {
"
setAttendancer
"
:
"
考勤员设置
"
,
"
role
"
:
"
角色
"
,
"
personName
"
:
"
人员
"
,
"
unit
"
:
"
单位
"
"
unit
"
:
"
单位
"
,
"
roleSelectText
"
:
[
"
公司管理员
"
,
"
部门管理员
"
]
},
"
selfHoliday
"
:
{
"
inputValid
"
:
"
部门、员工姓名、休假类型、开始时间、结束时间、休假天数必填,请填写!
"
...
...
@@ -212,6 +221,10 @@ MWF.xApplication.Attendance.LP = {
"
inputIdeaNotice
"
:
"
请填写意见
"
,
"
processSuccess
"
:
"
处理成功
"
,
"
noDepartment
"
:
"
未找到您所在的部门,请联系管理员!
"
,
"
signinType
"
:
"
打卡类型
"
,
"
signinTypeSelectText
"
:
[
""
,
"
上班打卡
"
,
"
下班打卡
"
],
"
signinResult
"
:
"
打卡结果
"
,
"
signinResultSelectText
"
:
[
""
,
"
正常
"
,
"
早退
"
,
"
迟到
"
,
"
严重迟到
"
,
"
旷工迟到
"
,
"
未打卡
"
],
"
systemSetting
"
:
"
系统设置
"
,
"
reportTo
"
:
"
汇报对象
"
,
...
...
@@ -284,7 +297,37 @@ MWF.xApplication.Attendance.LP = {
"
importFailContent
"
:
"
共有数据{total}条 出错: {errorCount}条 耗时: {timeStr} 请修改后重新导入
"
,
"
myDetail
"
:
"
我的出勤明细
"
,
"
myDetailStatic
"
:
"
我的出勤率统计
"
"
myDetailStatic
"
:
"
我的出勤率统计
"
,
"
cyclText
"
:
"
考勤周期:{start}至{end}
"
,
"
personSetting
"
:
"
考勤人员设置
"
,
"
configType
"
:
"
配置类型
"
,
"
configTypeSelectText
"
:
[
"
需要考勤
"
,
"
不需要考勤
"
],
"
topUnitName
"
:
"
公司名称
"
,
"
unitName
"
:
"
部门名称
"
,
"
employeeNumber
"
:
"
员工编号
"
,
"
joininDate
"
:
"
入职日期
"
,
"
exportEmployeeHolidayRecord
"
:
"
导出员工休假记录
"
,
"
employeeHolidayRecord
"
:
"
员工休假记录
"
,
"
leaveType1
"
:
"
休假类型
"
,
"
leaveTypeSelectText1
"
:
[
"
带薪年休假
"
,
"
带薪病假
"
,
"
带薪福利假
"
,
"
扣薪事假
"
,
"
其他
"
],
"
leaveDayCount
"
:
"
休假天数
"
,
"
statisticsPeriodSetting
"
:
"
统计周期设置
"
,
"
selectCompanyNotice
"
:
"
双击选择,填写'*'匹配所有公司
"
,
"
selectDepartmentNotice
"
:
"
双击选择,填写'*'匹配所有部门
"
,
"
statisticsCompany
"
:
"
统计公司
"
,
"
statisticsUnit
"
:
"
统计部门
"
,
"
cycleYear
"
:
"
统计周期年份
"
,
"
cycleMonth
"
:
"
统计周期月份
"
,
"
startDate
"
:
"
开始日期
"
,
"
endData
"
:
"
结束日期
"
,
"
selectStartEndEndDataNotice
"
:
"
请选择开始日期和结束日期
"
,
"
weekendSetting
"
:
"
周末设置
"
,
"
selectWeekend
"
:
"
周末选择
"
};
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录