Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
attendance-performance-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
attendance-performance-platform
Commits
efd210fe
Commit
efd210fe
authored
Oct 09, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加假日数据
parent
5fae7a1d
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
2438 additions
and
1 deletion
+2438
-1
attendance-performance-manager-ui/admin/src/router.js
attendance-performance-manager-ui/admin/src/router.js
+1
-0
attendance-performance-manager-ui/admin/src/views/holiday/dialogshow.vue
...ormance-manager-ui/admin/src/views/holiday/dialogshow.vue
+110
-0
attendance-performance-manager-ui/admin/src/views/holiday/list.vue
...e-performance-manager-ui/admin/src/views/holiday/list.vue
+69
-0
attendance-performance-manager-ui/admin/src/views/holiday/view.vue
...e-performance-manager-ui/admin/src/views/holiday/view.vue
+76
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncHolidayTaskImpl.java
...java/com/mortals/xhx/daemon/task/SyncHolidayTaskImpl.java
+99
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/dao/HolidayDao.java
...n/java/com/mortals/xhx/module/holiday/dao/HolidayDao.java
+16
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/dao/ibatis/HolidayDaoImpl.java
...mortals/xhx/module/holiday/dao/ibatis/HolidayDaoImpl.java
+20
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/HolidayEntity.java
...a/com/mortals/xhx/module/holiday/model/HolidayEntity.java
+215
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/HolidayQuery.java
...va/com/mortals/xhx/module/holiday/model/HolidayQuery.java
+924
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/vo/HolidayVo.java
...va/com/mortals/xhx/module/holiday/model/vo/HolidayVo.java
+14
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/service/HolidayService.java
...om/mortals/xhx/module/holiday/service/HolidayService.java
+14
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/service/impl/HolidayServiceImpl.java
...s/xhx/module/holiday/service/impl/HolidayServiceImpl.java
+18
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/web/HolidayController.java
...com/mortals/xhx/module/holiday/web/HolidayController.java
+37
-0
attendance-performance-manager/src/main/resources/sqlmap/module/holiday/HolidayMapper.xml
...rc/main/resources/sqlmap/module/holiday/HolidayMapper.xml
+640
-0
common-lib/src/main/java/com/mortals/xhx/common/pdu/holiday/HolidayPdu.java
...n/java/com/mortals/xhx/common/pdu/holiday/HolidayPdu.java
+61
-0
common-lib/src/main/java/com/mortals/xhx/feign/holiday/IHolidayFeign.java
...ain/java/com/mortals/xhx/feign/holiday/IHolidayFeign.java
+99
-0
db/add.sql
db/add.sql
+25
-1
No files found.
attendance-performance-manager-ui/admin/src/router.js
View file @
efd210fe
...
@@ -39,6 +39,7 @@ const router = new Router({
...
@@ -39,6 +39,7 @@ const router = new Router({
...
restBuilder
(
"
task
"
,
"
system/task
"
),
// 系统管理--任务管理
...
restBuilder
(
"
task
"
,
"
system/task
"
),
// 系统管理--任务管理
// 绩效负责人
// 绩效负责人
...
restBuilder
(
"
workman
"
,
"
workman
"
),
...
restBuilder
(
"
workman
"
,
"
workman
"
),
...
restBuilder
(
"
holiday
"
,
"
holiday
"
),
//部门
//部门
...
restBuilder
(
"
dept
"
,
"
dept
"
),
//部门
...
restBuilder
(
"
dept
"
,
"
dept
"
),
//部门
...
...
attendance-performance-manager-ui/admin/src/views/holiday/dialogshow.vue
0 → 100644
View file @
efd210fe
<
template
>
<!-- 弹出框表单 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"90%"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-row>
<Field
label=
"站点ID"
prop=
"siteId"
v-model=
"form.siteId"
placeholder=
"请输入站点ID"
/>
<Field
label=
"节日名称"
prop=
"name"
v-model=
"form.name"
placeholder=
"请输入节日名称"
/>
<Field
label=
"备注"
prop=
"summary"
v-model=
"form.summary"
type=
"textarea"
placeholder=
"请输入备注"
/>
<Field
label=
"年份"
prop=
"year"
v-model=
"form.year"
placeholder=
"请输入年份"
/>
<Field
label=
"开始时间"
prop=
"startTime"
v-model=
"form.startTime"
type=
"date"
/>
<Field
label=
"结束时间"
prop=
"endTime"
v-model=
"form.endTime"
type=
"date"
/>
<Field
label=
"是否工作日"
prop=
"workorholiday"
v-model=
"form.workorholiday"
type=
"select"
:enumData=
"dict.workorholiday"
placeholder=
"请选择是否工作日"
/>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
v-if=
"pageInfo.type !== 'view'"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
form
from
"
@/assets/mixins/formdialog
"
;
import
dialogShow
from
"
./dialogshow
"
;
export
default
{
mixins
:
[
form
],
components
:
{
dialogShow
,
},
data
()
{
return
{
// 遮罩层
loading
:
true
,
// 弹出层标题
title
:
"
节假日
"
,
// 是否显示弹出层
open
:
false
,
toString
:[
"
workorholiday
"
,
],
// 表单校验
rules
:
{
}
};
},
methods
:
{
/** 编辑 */
edit
(
row
)
{
this
.
reset
()
this
.
query
=
{
id
:
row
.
id
};
this
.
urls
.
currUrl
=
"
holiday/edit
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
edit
"
this
.
title
=
"
修改节假日
"
;
},
/** 新增 */
add
(
row
)
{
this
.
reset
()
this
.
urls
.
currUrl
=
"
holiday/add
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
add
"
this
.
title
=
"
新增节假日
"
;
},
/** 查看*/
view
(
row
)
{
this
.
reset
()
this
.
query
=
{
id
:
row
.
id
};
this
.
urls
.
currUrl
=
"
holiday/view
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
view
"
this
.
title
=
"
节假日详细
"
;
},
/**取消按钮 */
cancel
()
{
this
.
open
=
false
;
},
/**获取数据后弹框 */
afterRender
(
data
)
{
this
.
open
=
true
;
},
afterSubmit
(
data
)
{
this
.
open
=
false
;
this
.
$emit
(
"
ok
"
);
},
// 表单重置
reset
()
{
this
.
form
=
{
siteId
:
null
,
name
:
""
,
summary
:
""
,
year
:
null
,
startTime
:
null
,
endTime
:
null
,
workorholiday
:
0
,
};
this
.
resetForm
(
"
form
"
);
},
resetForm
(
refName
)
{
if
(
this
.
$refs
[
refName
])
{
this
.
$refs
[
refName
].
resetFields
();
}
},
},
};
</
script
>
attendance-performance-manager-ui/admin/src/views/holiday/list.vue
0 → 100644
View file @
efd210fe
<
template
>
<div
class=
"page"
>
<LayoutTable
notAdd
notDel
:data=
"tableData"
:config=
"tableConfig"
>
</LayoutTable>
<dialog-show
ref=
"dialogform"
@
ok=
"getData"
/>
</div>
</
template
>
<
script
>
/** 表单弹出框模式需引入 */
import
dialogShow
from
"
./dialogshow
"
;
import
table
from
"
@/assets/mixins/table
"
;
export
default
{
name
:
"
HolidayList
"
,
components
:
{
dialogShow
},
mixins
:
[
table
],
created
()
{
},
methods
:
{
/** 重写新增方法 */
toAdd
(
row
)
{
this
.
$refs
.
dialogform
.
add
(
row
);
},
/** 重写编辑方法 */
toEdit
(
row
)
{
this
.
$refs
.
dialogform
.
edit
(
row
);
},
/** 重写查看方法 */
toView
(
row
)
{
this
.
$refs
.
dialogform
.
view
(
row
);
},
},
data
()
{
return
{
config
:
{
search
:
[
],
columns
:
[
{
type
:
"
index
"
,
label
:
"
序号
"
,
width
:
50
},
{
label
:
"
节日名称
"
,
prop
:
"
name
"
},
{
label
:
"
备注
"
,
prop
:
"
summary
"
},
{
label
:
"
年份
"
,
prop
:
"
year
"
,
formatter
:
this
.
formatter
},
{
label
:
"
开始时间
"
,
prop
:
"
startTime
"
,
formatter
:
this
.
formatterDateOnly
},
{
label
:
"
工作日
"
,
prop
:
"
workorholiday
"
,
formatter
:
this
.
formatter
},
{
label
:
"
操作
"
,
width
:
240
,
formatter
:
row
=>
{
return
(
<
table
-
buttons
noAdd
row
=
{
row
}
noDel
onEdit
=
{
this
.
toEdit
}
onView
=
{
this
.
toView
}
onDel
=
{
this
.
toDel
}
/
>
);
}
}
]
}
};
}
};
</
script
>
\ No newline at end of file
attendance-performance-manager-ui/admin/src/views/holiday/view.vue
0 → 100644
View file @
efd210fe
<
template
>
<layout-view>
<el-descriptions
:title=
"title"
:column=
"column"
:size=
"size"
:colon=
"false"
border
>
<template
slot=
"title"
>
<i
class=
"el-icon-tickets"
></i>
基本详细信息
</
template
>
<
template
slot=
"extra"
>
<el-button
type=
"primary"
@
click=
"$router.go(-1)"
size=
"small"
>
返回
</el-button>
</
template
>
<el-descriptions-item
label=
"站点ID"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.siteId}}
</el-descriptions-item>
<el-descriptions-item
label=
"节日名称"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.name}}
</el-descriptions-item>
<el-descriptions-item
label=
"备注"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.summary}}
</el-descriptions-item>
<el-descriptions-item
label=
"年份"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.year}}
</el-descriptions-item>
<el-descriptions-item
label=
"开始时间"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatterDate(form.startTime)}}
</el-descriptions-item>
<el-descriptions-item
label=
"结束时间"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatterDate(form.endTime)}}
</el-descriptions-item>
<el-descriptions-item
label=
"是否工作日"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatters("workorholiday", form.workorholiday) }}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<
script
>
import
view
from
"
@/assets/mixins/view
"
;
export
default
{
mixins
:
[
view
],
components
:
{
},
methods
:
{
},
data
()
{
return
{
size
:
"
small
"
,
column
:
2
,
toString
:[
"
workorholiday
"
,
],
toArrays
:
[
],
toDate
:
[
]
}
}
}
</
script
>
<
style
lang=
"less"
>
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</
style
>
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/daemon/task/SyncHolidayTaskImpl.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.daemon.task
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.service.ITask
;
import
com.mortals.framework.service.ITaskExcuteService
;
import
com.mortals.xhx.common.code.AuditStatusEnum
;
import
com.mortals.xhx.common.code.StaffSatusEnum
;
import
com.mortals.xhx.common.code.YesNoEnum
;
import
com.mortals.xhx.common.pdu.RespData
;
import
com.mortals.xhx.common.pdu.holiday.HolidayPdu
;
import
com.mortals.xhx.common.utils.BeanUtil
;
import
com.mortals.xhx.feign.holiday.IHolidayFeign
;
import
com.mortals.xhx.module.attendance.model.AttendanceStatEntity
;
import
com.mortals.xhx.module.attendance.model.AttendanceVacationBalanceEntity
;
import
com.mortals.xhx.module.attendance.service.AttendanceStatService
;
import
com.mortals.xhx.module.attendance.service.AttendanceVacationBalanceService
;
import
com.mortals.xhx.module.dept.model.DeptEntity
;
import
com.mortals.xhx.module.dept.model.DeptQuery
;
import
com.mortals.xhx.module.dept.service.DeptService
;
import
com.mortals.xhx.module.hik.person.model.req.org.OrgListReq
;
import
com.mortals.xhx.module.hik.person.model.req.person.PersonReq
;
import
com.mortals.xhx.module.hik.person.model.rsp.org.OrgDataInfo
;
import
com.mortals.xhx.module.hik.person.model.rsp.org.OrgInfo
;
import
com.mortals.xhx.module.hik.person.model.rsp.person.PersonDataInfo
;
import
com.mortals.xhx.module.hik.person.model.rsp.person.PersonInfo
;
import
com.mortals.xhx.module.hik.person.service.IHikPersonService
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
import
com.mortals.xhx.module.holiday.model.HolidayQuery
;
import
com.mortals.xhx.module.holiday.service.HolidayService
;
import
com.mortals.xhx.module.staff.model.StaffEntity
;
import
com.mortals.xhx.module.staff.model.StaffLeaveEntity
;
import
com.mortals.xhx.module.staff.model.StaffQuery
;
import
com.mortals.xhx.module.staff.service.StaffLeaveService
;
import
com.mortals.xhx.module.staff.service.StaffService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.checkerframework.checker.units.qual.A
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 同步节假日
*/
@Slf4j
@Service
(
"SyncHolidayTask"
)
public
class
SyncHolidayTaskImpl
implements
ITaskExcuteService
{
@Autowired
private
IHolidayFeign
holidayFeign
;
@Autowired
private
HolidayService
holidayService
;
@Override
public
void
excuteTask
(
ITask
task
)
throws
AppException
{
HolidayPdu
holidayPdu
=
new
HolidayPdu
();
holidayPdu
.
setYear
(
DateUtil
.
year
(
new
Date
()));
holidayPdu
.
setSize
(-
1
);
Rest
<
RespData
<
List
<
HolidayPdu
>>>
respDataRest
=
holidayFeign
.
list
(
holidayPdu
);
if
(
respDataRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
List
<
HolidayPdu
>
holidayPduList
=
respDataRest
.
getData
().
getData
();
for
(
HolidayPdu
pdu
:
holidayPduList
)
{
//判断当前日期的节假日是否存在
HolidayQuery
holidayQuery
=
new
HolidayQuery
();
holidayQuery
.
setStartTimeStart
(
DateUtil
.
formatDate
(
pdu
.
getStartTime
()));
holidayQuery
.
setStartTimeEnd
(
DateUtil
.
formatDate
(
pdu
.
getStartTime
()));
HolidayEntity
holidayEntity
=
holidayService
.
selectOne
(
holidayQuery
);
if
(
ObjectUtils
.
isEmpty
(
holidayEntity
))
{
//新增
holidayEntity
=
new
HolidayEntity
();
holidayEntity
.
initAttrValue
();
BeanUtils
.
copyProperties
(
pdu
,
holidayEntity
,
BeanUtil
.
getNullPropertyNames
(
pdu
));
holidayEntity
.
setCreateTime
(
new
Date
());
holidayEntity
.
setCreateUserId
(
1L
);
holidayService
.
save
(
holidayEntity
);
}
}
}
}
@Override
public
void
stopTask
(
ITask
task
)
throws
AppException
{
}
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/dao/HolidayDao.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.dao
;
import
com.mortals.framework.dao.ICRUDDao
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
/**
* 节假日Dao
* 节假日 DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
public
interface
HolidayDao
extends
ICRUDDao
<
HolidayEntity
,
Long
>{
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/dao/ibatis/HolidayDaoImpl.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.dao.ibatis
;
import
com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis
;
import
com.mortals.xhx.module.holiday.dao.HolidayDao
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
import
org.springframework.stereotype.Repository
;
/**
* 节假日DaoImpl DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
@Repository
(
"holidayDao"
)
public
class
HolidayDaoImpl
extends
BaseCRUDDaoMybatis
<
HolidayEntity
,
Long
>
implements
HolidayDao
{
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/HolidayEntity.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.model
;
import
com.mortals.xhx.module.holiday.model.vo.HolidayVo
;
import
java.util.Date
;
/**
* 节假日实体对象
*
* @author zxfei
* @date 2022-01-12
*/
public
class
HolidayEntity
extends
HolidayVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 站点ID
*/
private
Long
siteId
;
/**
* 站点名称
*/
private
String
siteName
;
/**
* 节日名称
*/
private
String
name
;
/**
* 备注
*/
private
String
summary
;
/**
* 年份
*/
private
Integer
year
;
/**
* 开始时间
*/
private
Date
startTime
;
/**
* 结束时间
*/
private
Date
endTime
;
/**
* 是否工作日(0.节假日,1.工作日)
*/
private
Integer
workorholiday
;
public
HolidayEntity
(){}
/**
* 获取 站点ID
* @return Long
*/
public
Long
getSiteId
(){
return
siteId
;
}
/**
* 设置 站点ID
* @param siteId
*/
public
void
setSiteId
(
Long
siteId
){
this
.
siteId
=
siteId
;
}
/**
* 获取 站点名称
* @return String
*/
public
String
getSiteName
(){
return
siteName
;
}
/**
* 设置 站点名称
* @param siteName
*/
public
void
setSiteName
(
String
siteName
){
this
.
siteName
=
siteName
;
}
/**
* 获取 节日名称
* @return String
*/
public
String
getName
(){
return
name
;
}
/**
* 设置 节日名称
* @param name
*/
public
void
setName
(
String
name
){
this
.
name
=
name
;
}
/**
* 获取 备注
* @return String
*/
public
String
getSummary
(){
return
summary
;
}
/**
* 设置 备注
* @param summary
*/
public
void
setSummary
(
String
summary
){
this
.
summary
=
summary
;
}
/**
* 获取 年份
* @return Integer
*/
public
Integer
getYear
(){
return
year
;
}
/**
* 设置 年份
* @param year
*/
public
void
setYear
(
Integer
year
){
this
.
year
=
year
;
}
/**
* 获取 开始时间
* @return Date
*/
public
Date
getStartTime
(){
return
startTime
;
}
/**
* 设置 开始时间
* @param startTime
*/
public
void
setStartTime
(
Date
startTime
){
this
.
startTime
=
startTime
;
}
/**
* 获取 结束时间
* @return Date
*/
public
Date
getEndTime
(){
return
endTime
;
}
/**
* 设置 结束时间
* @param endTime
*/
public
void
setEndTime
(
Date
endTime
){
this
.
endTime
=
endTime
;
}
/**
* 获取 是否工作日(0.节假日,1.工作日)
* @return Integer
*/
public
Integer
getWorkorholiday
(){
return
workorholiday
;
}
/**
* 设置 是否工作日(0.节假日,1.工作日)
* @param workorholiday
*/
public
void
setWorkorholiday
(
Integer
workorholiday
){
this
.
workorholiday
=
workorholiday
;
}
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
HolidayEntity
)
{
HolidayEntity
tmp
=
(
HolidayEntity
)
obj
;
if
(
this
.
getId
()
==
tmp
.
getId
())
{
return
true
;
}
}
return
false
;
}
public
String
toString
(){
StringBuilder
sb
=
new
StringBuilder
(
""
);
sb
.
append
(
",siteId:"
).
append
(
getSiteId
());
sb
.
append
(
",siteName:"
).
append
(
getSiteName
());
sb
.
append
(
",name:"
).
append
(
getName
());
sb
.
append
(
",summary:"
).
append
(
getSummary
());
sb
.
append
(
",year:"
).
append
(
getYear
());
sb
.
append
(
",startTime:"
).
append
(
getStartTime
());
sb
.
append
(
",endTime:"
).
append
(
getEndTime
());
sb
.
append
(
",workorholiday:"
).
append
(
getWorkorholiday
());
return
sb
.
toString
();
}
public
void
initAttrValue
(){
this
.
siteId
=
null
;
this
.
siteName
=
null
;
this
.
name
=
null
;
this
.
summary
=
null
;
this
.
year
=
null
;
this
.
startTime
=
null
;
this
.
endTime
=
null
;
this
.
workorholiday
=
0
;
}
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/HolidayQuery.java
0 → 100644
View file @
efd210fe
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/model/vo/HolidayVo.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.model.vo
;
import
com.mortals.framework.model.BaseEntityLong
;
import
lombok.Data
;
/**
* 节假日视图对象
*
* @author zxfei
* @date 2022-01-12
*/
@Data
public
class
HolidayVo
extends
BaseEntityLong
{
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/service/HolidayService.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.service
;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
/**
* HolidayService
*
* 节假日 service接口
*
* @author zxfei
* @date 2022-01-12
*/
public
interface
HolidayService
extends
ICRUDService
<
HolidayEntity
,
Long
>{
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/service/impl/HolidayServiceImpl.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.service.impl
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.xhx.module.holiday.dao.HolidayDao
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
import
com.mortals.xhx.module.holiday.service.HolidayService
;
import
org.springframework.stereotype.Service
;
/**
* HolidayService
* 节假日 service实现
*
* @author zxfei
* @date 2022-01-12
*/
@Service
(
"holidayService"
)
public
class
HolidayServiceImpl
extends
AbstractCRUDServiceImpl
<
HolidayDao
,
HolidayEntity
,
Long
>
implements
HolidayService
{
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/holiday/web/HolidayController.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.module.holiday.web
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.web.BaseCRUDJsonBodyMappingController
;
import
com.mortals.xhx.base.system.param.service.ParamService
;
import
com.mortals.xhx.module.holiday.model.HolidayEntity
;
import
com.mortals.xhx.module.holiday.service.HolidayService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.Map
;
/**
* 节假日
*
* @author zxfei
* @date 2022-01-20
*/
@RestController
@RequestMapping
(
"holiday"
)
public
class
HolidayController
extends
BaseCRUDJsonBodyMappingController
<
HolidayService
,
HolidayEntity
,
Long
>
{
@Autowired
private
ParamService
paramService
;
public
HolidayController
()
{
super
.
setModuleDesc
(
"节假日"
);
}
@Override
protected
void
init
(
Map
<
String
,
Object
>
model
,
Context
context
)
{
this
.
addDict
(
model
,
"workorholiday"
,
paramService
.
getParamBySecondOrganize
(
"Holiday"
,
"workorholiday"
));
super
.
init
(
model
,
context
);
}
}
\ No newline at end of file
attendance-performance-manager/src/main/resources/sqlmap/module/holiday/HolidayMapper.xml
0 → 100644
View file @
efd210fe
This diff is collapsed.
Click to expand it.
common-lib/src/main/java/com/mortals/xhx/common/pdu/holiday/HolidayPdu.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.common.pdu.holiday
;
import
java.util.Date
;
import
java.util.List
;
import
com.mortals.framework.model.BaseEntityLong
;
import
lombok.Data
;
/**
* 节假日Pdu对象
*
* @author zxfei
* @date 2023-10-09
*/
@Data
public
class
HolidayPdu
extends
BaseEntityLong
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 站点ID
*/
private
Long
siteId
;
/**
* 节日名称
*/
private
String
name
;
/**
* 备注
*/
private
String
summary
;
/**
* 年份
*/
private
Integer
year
;
/**
* 开始时间
*/
private
Date
startTime
;
/**
* 结束时间
*/
private
Date
endTime
;
/**
* 是否工作日(0.节假日,1.工作日)
*/
private
Integer
workorholiday
;
public
void
initAttrValue
(){
this
.
siteId
=
null
;
this
.
name
=
""
;
this
.
summary
=
""
;
this
.
year
=
null
;
this
.
startTime
=
null
;
this
.
endTime
=
null
;
this
.
workorholiday
=
0
;
}
}
\ No newline at end of file
common-lib/src/main/java/com/mortals/xhx/feign/holiday/IHolidayFeign.java
0 → 100644
View file @
efd210fe
package
com.mortals.xhx.feign.holiday
;
import
com.mortals.xhx.common.pdu.RespData
;
import
com.mortals.xhx.common.pdu.holiday.HolidayPdu
;
import
com.alibaba.fastjson.JSON
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.xhx.feign.IFeign
;
import
feign.hystrix.FallbackFactory
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
/**
* 节假日 Feign接口
* @author zxfei
* @date 2023-10-09
*/
@FeignClient
(
name
=
"base-manager"
,
path
=
"/base"
,
fallbackFactory
=
HolidayFeignFallbackFactory
.
class
)
public
interface
IHolidayFeign
extends
IFeign
{
/**
* 查看节假日列表
*
* @param holidayPdu
* @return
*/
@PostMapping
(
value
=
"/holiday/list"
)
Rest
<
RespData
<
List
<
HolidayPdu
>>>
list
(
@RequestBody
HolidayPdu
holidayPdu
);
/**
* 查看节假日
*
* @param id
* @return
*/
@GetMapping
(
value
=
"/holiday/info"
)
Rest
<
HolidayPdu
>
info
(
@RequestParam
(
value
=
"id"
)
Long
id
);
/**
* 删除节假日
*
* @param ids
* @return
*/
@GetMapping
(
value
=
"/holiday/delete"
)
Rest
<
Void
>
delete
(
Long
[]
ids
,
@RequestHeader
(
"Authorization"
)
String
authorization
);
/**
* 节假日保存更新
*
* @param holidayPdu
* @return
*/
@PostMapping
(
value
=
"/holiday/save"
)
Rest
<
RespData
<
HolidayPdu
>>
save
(
@RequestBody
HolidayPdu
holidayPdu
,
@RequestHeader
(
"Authorization"
)
String
authorization
);
}
@Slf4j
@Component
class
HolidayFeignFallbackFactory
implements
FallbackFactory
<
IHolidayFeign
>
{
@Override
public
IHolidayFeign
create
(
Throwable
t
)
{
return
new
IHolidayFeign
()
{
@Override
public
Rest
<
RespData
<
List
<
HolidayPdu
>>>
list
(
HolidayPdu
holidayPdu
)
{
return
Rest
.
fail
(
"暂时无法获取节假日列表,请稍后再试!"
);
}
@Override
public
Rest
<
HolidayPdu
>
info
(
Long
id
)
{
return
Rest
.
fail
(
"暂时无法获取节假日详细,请稍后再试!"
);
}
@Override
public
Rest
<
Void
>
delete
(
Long
[]
ids
,
String
authorization
)
{
return
Rest
.
fail
(
"暂时无法删除节假日,请稍后再试!"
);
}
@Override
public
Rest
<
RespData
<
HolidayPdu
>>
save
(
HolidayPdu
holidayPdu
,
String
authorization
)
{
return
Rest
.
fail
(
"暂时无法保存节假日,请稍后再试!"
);
}
};
}
}
db/add.sql
View file @
efd210fe
...
@@ -853,6 +853,30 @@ CREATE TABLE mortals_xhx_attendance_record(
...
@@ -853,6 +853,30 @@ CREATE TABLE mortals_xhx_attendance_record(
PRIMARY
KEY
(
`id`
)
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
COMMENT
=
'考勤打卡记录信息'
;
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
COMMENT
=
'考勤打卡记录信息'
;
ALTER
TABLE
mortals_xhx_attendance_leave_record
ADD
COLUMN
`sourceDingTime`
varchar
(
64
)
DEFAULT
''
COMMENT
'钉钉原始请假时间记录'
;
ALTER
TABLE
mortals_xhx_attendance_leave_record
ADD
COLUMN
`sourceDingTime`
varchar
(
64
)
DEFAULT
''
COMMENT
'钉钉原始请假时间记录'
;
-- ----------------------------
2023
-
10
-
09
-- ----------------------------
-- ----------------------------
-- 节假日
-- ----------------------------
DROP
TABLE
IF
EXISTS
`mortals_sys_holiday`
;
CREATE
TABLE
`mortals_sys_holiday`
(
`id`
bigint
(
20
)
NOT
NULL
AUTO_INCREMENT
COMMENT
'序号,主键,自增长'
,
`siteId`
bigint
(
20
)
DEFAULT
NULL
COMMENT
'站点ID'
,
`siteName`
varchar
(
255
)
DEFAULT
NULL
COMMENT
'站点名称'
,
`name`
varchar
(
64
)
DEFAULT
NULL
COMMENT
'节日名称'
,
`summary`
varchar
(
256
)
DEFAULT
NULL
COMMENT
'备注'
,
`year`
int
(
4
)
DEFAULT
NULL
COMMENT
'年份'
,
`startTime`
datetime
DEFAULT
NULL
ON
UPDATE
CURRENT_TIMESTAMP
COMMENT
'开始时间'
,
`endTime`
datetime
DEFAULT
NULL
ON
UPDATE
CURRENT_TIMESTAMP
COMMENT
'结束时间'
,
`workorholiday`
tinyint
(
2
)
DEFAULT
'0'
COMMENT
'是否工作日(0.节假日,1.工作日)'
,
`createTime`
datetime
DEFAULT
NULL
ON
UPDATE
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`createUserId`
bigint
(
20
)
DEFAULT
NULL
COMMENT
'创建用户'
,
`updateTime`
datetime
DEFAULT
NULL
ON
UPDATE
CURRENT_TIMESTAMP
COMMENT
'修改时间'
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
CHARACTER
SET
=
utf8
COLLATE
=
utf8_general_ci
COMMENT
=
'节假日表'
ROW_FORMAT
=
Dynamic
;
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment