Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
W
work_service
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
licc
work_service
Commits
b3cd19af
Commit
b3cd19af
authored
Jan 22, 2021
by
cq990612
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改一些bug
parent
5da3619d
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
162 additions
and
235 deletions
+162
-235
BASE_RESP_CODE_ENUM.java
...wisenergy/common/utils/exception/BASE_RESP_CODE_ENUM.java
+2
-2
WorkCollectMapper.java
.../src/main/java/cn/wisenergy/mapper/WorkCollectMapper.java
+1
-1
WorkCollectMapper.xml
...gy-mapper/src/main/resources/mapper/WorkCollectMapper.xml
+1
-1
WorkSubmitAdoptService.java
...ain/java/cn/wisenergy/service/WorkSubmitAdoptService.java
+2
-2
WorkTimeOrderService.java
.../main/java/cn/wisenergy/service/WorkTimeOrderService.java
+30
-25
WorkCollectServiceImpl.java
...ava/cn/wisenergy/service/impl/WorkCollectServiceImpl.java
+5
-4
WorkTimeOrderServiceImpl.java
...a/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
+115
-112
WorkTimeOrderController.java
...rgy/web/admin/controller/app/WorkTimeOrderController.java
+4
-4
Examin.java
...in/src/main/java/cn/wisenergy/web/config/auto/Examin.java
+0
-82
application-dev.yml
wisenergy-web-admin/src/main/resources/application-dev.yml
+2
-2
No files found.
wisenergy-common/src/main/java/cn/wisenergy/common/utils/exception/BASE_RESP_CODE_ENUM.java
View file @
b3cd19af
...
...
@@ -52,8 +52,8 @@ public enum BASE_RESP_CODE_ENUM {
WORK_ORDER_END
(
"630"
,
"该项目的工单已经全部审批"
),
DEPT_IS_NULL
(
"631"
,
"该部门不存在"
),
MANAGER_NOT_PROJECT
(
"632"
,
"该管理没有可管理的项目"
),
DEPT_NOT_FOUND
(
"633"
,
"部门信息未找到"
)
;
DEPT_NOT_FOUND
(
"633"
,
"部门信息未找到"
)
,
DATE_IS_ERROR
(
"634"
,
"时间不匹配"
);
/**
* 错误编码
*/
...
...
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkCollectMapper.java
View file @
b3cd19af
...
...
@@ -21,5 +21,5 @@ public interface WorkCollectMapper extends BaseMapper<WorkCollect> {
int
inserWorkCollect
(
WorkCollect
workCollect
);
int
updateStatusOrTotal
t
ime
(
Integer
id
,
Integer
status
,
Integer
totalTime
);
int
updateStatusOrTotal
T
ime
(
Integer
id
,
Integer
status
,
Integer
totalTime
);
}
wisenergy-mapper/src/main/resources/mapper/WorkCollectMapper.xml
View file @
b3cd19af
...
...
@@ -40,7 +40,7 @@
<include
refid=
"vals"
/>
)
</insert>
<update
id=
"updateStatusOrTotal
t
ime"
>
<update
id=
"updateStatusOrTotal
T
ime"
>
UPDATE
<include
refid=
"table"
/>
<set>
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/WorkSubmitAdoptService.java
View file @
b3cd19af
...
...
@@ -14,8 +14,8 @@ public interface WorkSubmitAdoptService {
/**
* 功能: 获取自动审批和默认填报限制
* @param id
* @return
* @param id
用户id
* @return
WorkSubmitAdopt
*/
WorkSubmitAdopt
getById
(
Integer
id
);
}
wisenergy-service/src/main/java/cn/wisenergy/service/WorkTimeOrderService.java
View file @
b3cd19af
...
...
@@ -20,55 +20,58 @@ public interface WorkTimeOrderService {
/**
* 功能; 获取某日
填报信息
* 功能; 获取某日
被驳回说明
*
* @param userId
* @param workDay
* @return
* @param userId
用户id
* @param workDay
某日
* @return
工单集合
*/
List
<
WorkTimeOrder
>
getByDay
(
Integer
userId
,
Date
workDay
);
/**
* 功能:获取某日填报小计
*
* @param userId
* @param workDay
* @return
* @param userId
用户id
* @param workDay
某日
* @return
填报小计
*/
SubtotalDto
getSubtotalReport
(
Integer
userId
,
Date
workDay
);
/**
* 功能; 获取某日填报信息
*
* @param userId
* @param workDay
* @return
DTO
* @param userId
用户id
* @param workDay
工作日
* @return
dto
*/
List
<
WorkTimeOrderDto
>
getByDayToDto
(
Integer
userId
,
Date
workDay
);
/**
* 功能:工时填报
*
* @param
createWorkOrderDto
* @return
* @param
dto 自定义填报类
* @return
dto
*/
List
<
WorkTimeOrderDto
>
add
(
CreateWorkOrderDto
createWorkOrderD
to
);
List
<
WorkTimeOrderDto
>
add
(
CreateWorkOrderDto
d
to
);
/**
* 功能: 驳回重新填报
*
* @param
createWorkOrderDto
* @return
* @param
dto 自定义DTO
* @return
填报信息
*/
List
<
WorkTimeOrderDto
>
update
(
CreateWorkOrderDto
createWorkOrderD
to
);
List
<
WorkTimeOrderDto
>
update
(
CreateWorkOrderDto
d
to
);
/**
* 功能:获取待审批数据
*
* @param userId
* @return
* @param userId 用户id
* @param projectId 项目id
* @param type 项目类型
* @param status 状态
* @return 自定义dto
*/
List
<
ExamineGroupbyProjectDto
>
getExamine
(
Integer
userId
,
Integer
projectId
,
Integer
type
,
Integer
page
,
Integer
size
,
Integer
status
);
...
...
@@ -76,25 +79,27 @@ public interface WorkTimeOrderService {
/**
* 功能:批量审批
*
* @param ids
* @return
* @param reviewerId 审批人
* @param ids 工单
* @return 是否成功
*/
Boolean
examinsByIds
(
Integer
reviewerId
,
List
<
Integer
>
ids
);
/**
* 功能: 驳回
*
* @param id
* @param reason
* @return
* @param reviewerId 审核人id
* @param id 工单id
* @param reason 驳回理由
* @return 是否成功
*/
Boolean
rejectById
(
Integer
reviewerId
,
Integer
id
,
String
reason
);
/**
* 功能:查询驳回未提交的
*
* @param userId
* @return
* @param userId
用户id
* @return
dto
*/
List
<
WorkTimeOrderDto
>
rejectNotSubmit
(
Integer
userId
);
}
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkCollectServiceImpl.java
View file @
b3cd19af
...
...
@@ -35,6 +35,7 @@ import java.util.List;
@Service
@Slf4j
public
class
WorkCollectServiceImpl
implements
WorkCollectService
{
@Autowired
private
WorkCollectMapper
workCollectMapper
;
...
...
@@ -99,9 +100,9 @@ public class WorkCollectServiceImpl implements WorkCollectService {
/**
* 功能:判断当日是否已经填报
*
* @param userId
* @param workDay
* @return
* @param userId
用户名
* @param workDay
某日
* @return
当日填报情况
*/
@Override
public
WorkCollect
getByUserIdAndWorkDay
(
Integer
userId
,
Date
workDay
)
{
...
...
@@ -126,7 +127,7 @@ public class WorkCollectServiceImpl implements WorkCollectService {
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
Integer
id
=
getByUserIdAndWorkDay
(
workCollect
.
getUserId
(),
workCollect
.
getWorkDay
()).
getId
();
int
updateRow
=
workCollectMapper
.
updateStatusOrTotal
t
ime
(
id
,
workCollect
.
getStatus
(),
workCollect
.
getTotalTime
());
int
updateRow
=
workCollectMapper
.
updateStatusOrTotal
T
ime
(
id
,
workCollect
.
getStatus
(),
workCollect
.
getTotalTime
());
if
(
updateRow
==
0
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
UPDATE_DATA_FAIL
);
}
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
View file @
b3cd19af
package
cn
.
wisenergy
.
service
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.wisenergy.common.utils.DateUtil
;
import
cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM
;
import
cn.wisenergy.common.utils.exception.BaseCustomException
;
import
cn.wisenergy.mapper.WorkTimeOrderMapper
;
import
cn.wisenergy.model.app.*
;
import
cn.wisenergy.model.dto.*
;
import
cn.wisenergy.model.enums.ManagerEnum
;
import
cn.wisenergy.model.enums.ProjectTypeEnum
;
import
cn.wisenergy.model.enums.WorkOrderStatus
;
import
cn.wisenergy.model.enums.WorkOrderType
;
import
cn.wisenergy.model.dto.CreateWorkOrderDto
;
import
cn.wisenergy.model.dto.ExamineGroupbyProjectDto
;
import
cn.wisenergy.model.dto.SubtotalDto
;
import
cn.wisenergy.model.dto.WorkTimeOrderDto
;
import
cn.wisenergy.service.*
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.github.pagehelper.PageHelper
;
...
...
@@ -22,7 +20,10 @@ import org.springframework.transaction.annotation.Transactional;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.StringUtils
;
import
java.util.*
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
/**
* <p>
...
...
@@ -66,13 +67,12 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/**
* 功能; 获取某日被驳回说明
*
* @param userId
* @param workDay
* @return
* @param userId
用户id
* @param workDay
某日
* @return
工单集合
*/
@Override
public
List
<
WorkTimeOrder
>
getByDay
(
Integer
userId
,
Date
workDay
)
{
...
...
@@ -90,9 +90,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/**
* 功能:获取某日填报小计
*
* @param userId
* @param workDay
* @return
* @param userId
用户id
* @param workDay
某日
* @return
填报小计
*/
@Override
public
SubtotalDto
getSubtotalReport
(
Integer
userId
,
Date
workDay
)
{
...
...
@@ -129,30 +129,25 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/**
* 功能; 获取某日填报信息
*
* @param userId
* @param workDay
* @return
DTO
* @param userId
用户id
* @param workDay
工作日
* @return
dto
*/
@Override
public
List
<
WorkTimeOrderDto
>
getByDayToDto
(
Integer
userId
,
Date
workDay
)
{
log
.
info
(
"WorkTimeOrderServiceImpl[]getByDayToDto[]input.param.userId:{},workDay:{}"
+
userId
,
workDay
);
List
<
WorkTimeOrder
>
wtos
=
getByDay
(
userId
,
workDay
);
List
<
WorkTimeOrderDto
>
dtos
=
new
ArrayList
<>();
WorkProject
workProject
=
new
WorkProject
();
for
(
WorkTimeOrder
wto
:
wtos
)
{
WorkTimeOrderDto
dto
=
new
WorkTimeOrderDto
();
BeanUtils
.
copyProperties
(
wto
,
dto
);
dto
.
setProjectManagerName
(
getManagerNameByOrder
(
wto
));
dtos
.
add
(
dto
);
if
(
CollectionUtils
.
isEmpty
(
wtos
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_ORDER_INFO_IS_NULL
);
}
return
dtos
;
return
wtoToWtod
(
wtos
)
;
}
/**
* 功能:工时填报
*
* @param dto
* @return
* @param dto
自定义填报类
* @return
dto
*/
@Transactional
@Override
...
...
@@ -174,8 +169,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/**
* 功能: 驳回重新填报
*
* @param dto
* @return
* @param dto
自定义DTO
* @return
填报信息
*/
@Transactional
@Override
...
...
@@ -184,32 +179,45 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if
(
null
==
dto
||
CollectionUtils
.
isEmpty
(
dto
.
getWorkTimeOrders
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
WorkSubmitAdopt
workSbumitAdopt
=
workSbumitAdoptService
.
getById
(
1
);
Integer
submitTime
=
workSbumitAdopt
.
getSubmitTime
();
for
(
WorkTimeOrderDto
workTimeOrderDto
:
dto
.
getWorkTimeOrders
())
{
List
<
WorkTimeOrderDto
>
workTimeOrders
=
dto
.
getWorkTimeOrders
();
// 判断是否超过8小时
int
count
=
0
;
List
<
WorkTimeOrderDto
>
byDayToDto
=
getByDayToDto
(
workTimeOrders
.
get
(
0
).
getUserId
(),
workTimeOrders
.
get
(
0
).
getWorkDay
());
for
(
WorkTimeOrderDto
orderDto
:
byDayToDto
)
{
if
(
2
==
orderDto
.
getStatus
()
||
5
==
orderDto
.
getStatus
())
count
+=
orderDto
.
getWorkTime
();
}
timeNotEight
(
count
,
workTimeOrders
);
WorkSubmitAdopt
workSubmitAdopt
=
workSbumitAdoptService
.
getById
(
1
);
Integer
submitTime
=
workSubmitAdopt
.
getSubmitTime
();
for
(
WorkTimeOrderDto
workTimeOrderDto
:
workTimeOrders
)
{
if
(
null
==
workTimeOrderDto
.
getDes
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
DES_NOT_NULL
);
}
Date
modifyTime
=
workTimeOrderMapper
.
selectById
(
workTimeOrderDto
.
getWorkId
()).
getModifyTime
();
WorkTimeOrder
order
=
workTimeOrderMapper
.
selectById
(
workTimeOrderDto
.
getWorkId
());
if
(
order
.
getWorkDay
().
compareTo
(
workTimeOrderDto
.
getWorkDay
())
!=
0
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
DATE_IS_ERROR
);
}
Date
modifyTime
=
order
.
getModifyTime
();
// 判断是否已经驳回三天
if
(
new
Date
().
getTime
()
-
DateUtil
.
getStartOfDay
(
modifyTime
).
getTime
()
>
submitTime
*
24
*
60
*
60
*
1000
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_DAY_THAN_DATE
);
}
WorkTimeOrder
workTimeOrder
=
new
WorkTimeOrder
();
BeanUtils
.
copyProperties
(
workTimeOrderDto
,
workTimeOrder
);
workTimeOrder
.
setStatus
(
4
);
// 获取用户名
workTimeOrder
.
setUserName
(
workUserService
.
getById
(
workTimeOrder
.
getUserId
()).
getName
());
// 获取项目名
if
(
1
==
workTimeOrder
.
getType
()
||
2
==
workTimeOrder
.
getType
())
{
workTimeOrder
.
setProjectName
(
workProjectService
.
getById
(
workTimeOrder
.
getProjectId
()).
getProjectName
());
}
// 获取部门id
workTimeOrder
.
setDeptId
(
workUserDeptService
.
getDeptIdByUserId
(
workTimeOrder
.
getUserId
())
);
Integer
deptIdByUserId
=
workUserDeptService
.
getDeptIdByUserId
(
workTimeOrder
.
getUserId
());
workTimeOrder
.
setDeptId
(
deptIdByUserId
);
Date
workDay
=
workTimeOrder
.
getWorkDay
();
// 默认正常工时
workTimeOrder
.
setIsOvertime
(
0
);
if
(
workHolidayService
.
isHoliday
(
workDay
))
{
workTimeOrder
.
setIsOvertime
(
1
);
}
...
...
@@ -220,29 +228,27 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
WorkCollect
workCollect
=
new
WorkCollect
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
workCollect
);
workCollect
.
setStatus
(
1
);
workCollect
.
setTotalTime
(
workTimeOrderDto
.
getWorkTime
());
workCollectService
.
update
(
workCollect
);
}
return
dto
.
getWorkTimeOrders
();
}
/**
* 功能:获取待审批数据
*
* @param userId
* @return
* @param userId 用户id
* @param projectId 项目id
* @param type 项目类型
* @param status 状态
* @return 自定义dto
*/
@Override
public
List
<
ExamineGroupbyProjectDto
>
getExamine
(
Integer
userId
,
Integer
projectId
,
Integer
type
,
Integer
page
,
Integer
size
,
Integer
status
)
{
log
.
info
(
"WorkOrderServiceImpl[]getExamine[]input.param.userId:{},projectId:{},type:{},page:{},size:{},status:{}"
+
userId
,
projectId
,
type
,
page
,
size
,
status
);
if
(
null
==
userId
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
// 判断当前用户是否为管理
// 判断当前用户是否是管理员
isManager
(
userId
);
WorkUser
user
=
workUserService
.
getById
(
userId
);
if
(
0
==
user
.
getLevel
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
// PC端
if
(
null
!=
page
&&
null
!=
size
)
{
return
pageExamine
(
user
,
projectId
,
type
,
page
,
size
,
status
);
...
...
@@ -257,30 +263,21 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
wrapper
.
in
(
"status"
,
1
,
4
);
wrapper
.
eq
(
"type"
,
type
);
List
<
WorkTimeOrder
>
workTimeOrders
=
workTimeOrderMapper
.
selectList
(
wrapper
);
if
(
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_ORDER_END
);
}
List
<
ExamineGroupbyProjectDto
>
egpds
=
new
ArrayList
<>();
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
ExamineGroupbyProjectDto
dto
=
new
ExamineGroupbyProjectDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
dto
);
egpds
.
add
(
dto
);
}
return
egpds
;
return
WorkTimeOrderTOEGPD
(
workTimeOrders
);
}
// 项目经理审核
if
(
null
==
projectId
)
{
projectId
=
workUserProjectService
.
getProjectIdByUserId
(
userId
).
get
(
0
);
return
getExamineGroupbyProjectDto
(
userId
,
projectId
);
}
return
getExamineGroup
byProjectDto
(
userId
,
projectId
);
return
getExamineGroup
ByProjectDto
(
projectId
);
}
/**
* 功能:批量审批
*
* @param ids
* @return
* @param reviewerId 审批人
* @param ids 工单
* @return 是否成功
*/
@Transactional
@Override
...
...
@@ -301,8 +298,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
List
<
WorkTimeOrder
>
workTimeOrders
=
workTimeOrderMapper
.
selectBatchIds
(
ids
);
Integer
userId
=
null
;
Date
workDay
=
null
;
Integer
userId
;
Date
workDay
;
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
userId
=
workTimeOrder
.
getUserId
();
workDay
=
workTimeOrder
.
getWorkDay
();
...
...
@@ -321,9 +318,10 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
/**
* 功能: 驳回
*
* @param id
* @param reason
* @return
* @param reviewerId 审核人id
* @param id 工单id
* @param reason 驳回理由
* @return 是否成功
*/
@Transactional
@Override
...
...
@@ -350,27 +348,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
workCollect
.
setStatus
(
3
);
workCollect
.
setTotalTime
(
0
);
Boolean
aBoolean
=
workCollectService
.
update
(
workCollect
);
return
aBoolean
;
return
workCollectService
.
update
(
workCollect
);
}
/**
* 功能:查询驳回未提交的
*
* @param userId
* @return
* @param userId
用户id
* @return
dto
*/
@Transactional
@Override
public
List
<
WorkTimeOrderDto
>
rejectNotSubmit
(
Integer
userId
)
{
log
.
info
(
"WorkOrderServiceImpl[]rejectById[]input.param.id:{}"
+
userId
);
if
(
null
==
userId
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
WorkUser
user
=
workUserService
.
getById
(
userId
);
if
(
0
==
user
.
getLevel
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
isManager
(
userId
);
QueryWrapper
<
WorkTimeOrder
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
"reviewer_id"
,
userId
);
wrapper
.
eq
(
"status"
,
3
);
...
...
@@ -378,7 +369,12 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if
(
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_ORDER_INFO_IS_NULL
);
}
ArrayList
<
WorkTimeOrderDto
>
dtos
=
new
ArrayList
<>();
return
wtoToWtod
(
workTimeOrders
);
}
// workTimeOrder TO WorkTimeOrderDto
private
List
<
WorkTimeOrderDto
>
wtoToWtod
(
List
<
WorkTimeOrder
>
workTimeOrders
)
{
List
<
WorkTimeOrderDto
>
dtos
=
new
ArrayList
<>();
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
WorkTimeOrderDto
dto
=
new
WorkTimeOrderDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
dto
);
...
...
@@ -388,28 +384,30 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
return
dtos
;
}
p
ublic
List
<
ExamineGroupbyProjectDto
>
getExamineGroupbyProjectDto
(
Integer
userId
,
Integer
projectId
)
{
p
rivate
List
<
ExamineGroupbyProjectDto
>
getExamineGroupByProjectDto
(
Integer
projectId
)
{
QueryWrapper
<
WorkTimeOrder
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
"project_id"
,
projectId
);
wrapper
.
in
(
"status"
,
1
,
4
);
wrapper
.
orderByDesc
(
"work_day"
);
List
<
WorkTimeOrder
>
workTimeOrders
=
workTimeOrderMapper
.
selectList
(
wrapper
);
return
WorkTimeOrderTOEGPD
(
workTimeOrders
);
}
private
List
<
ExamineGroupbyProjectDto
>
WorkTimeOrderTOEGPD
(
List
<
WorkTimeOrder
>
workTimeOrders
)
{
if
(
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_ORDER_END
);
}
String
projectName
=
workTimeOrders
.
get
(
0
).
getProjectName
();
List
<
ExamineGroupbyProjectDto
>
egpds
=
new
ArrayList
<>();
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
ExamineGroupbyProjectDto
dto
=
new
ExamineGroupbyProjectDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
dto
);
egpds
.
add
(
dto
);
}
return
egpds
;
}
p
ublic
void
checkWorkOrderInfo
(
List
<
WorkTimeOrderDto
>
list
)
{
p
rivate
void
checkWorkOrderInfo
(
List
<
WorkTimeOrderDto
>
list
)
{
log
.
info
(
"WorkOrderServiceImpl[]checkWorkOrderInfo[]input.method"
);
// 1、工单时间不能大于当前天
Date
date
=
new
Date
();
...
...
@@ -428,7 +426,12 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
}
//3.每天工时累加不得超过八小时
int
count
=
0
;
timeNotEight
(
0
,
list
);
}
//3.每天工时累加不得超过八小时
private
void
timeNotEight
(
int
count
,
List
<
WorkTimeOrderDto
>
list
)
{
for
(
WorkTimeOrderDto
workOrder
:
list
)
{
count
=
count
+
workOrder
.
getWorkTime
();
if
(
count
>
8
)
{
...
...
@@ -438,17 +441,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
//判断填报是否超过今天
p
ublic
boolean
thanDate
(
Date
date
)
{
p
rivate
boolean
thanDate
(
Date
date
)
{
Date
date1
=
new
Date
();
int
i
=
0
;
int
i
;
i
=
date1
.
compareTo
(
date
);
if
(
i
==
-
1
)
{
return
true
;
}
return
false
;
return
-
1
==
i
;
}
p
ublic
List
<
WorkTimeOrderDto
>
saveWorkOrderInfo
(
List
<
WorkTimeOrderDto
>
list
)
{
p
rivate
List
<
WorkTimeOrderDto
>
saveWorkOrderInfo
(
List
<
WorkTimeOrderDto
>
list
)
{
log
.
info
(
"WorkOrderServiceImpl[]saveWorkOrderInfo[]input.method"
);
int
totalTime
=
0
;
int
status
=
1
;
...
...
@@ -485,8 +485,6 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
workTimeOrder
.
setProjectId
(
null
);
}
workTimeOrder
.
setStatus
(
status
);
int
saveRow
=
workTimeOrderMapper
.
save
(
workTimeOrder
);
if
(
0
==
saveRow
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INSERT_DATA_IS_FAIL
);
...
...
@@ -503,7 +501,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
return
list
;
}
p
ublic
String
getTypeName
(
Integer
type
)
{
p
rivate
String
getTypeName
(
Integer
type
)
{
if
(
type
==
5
)
{
return
"外部商务、技术交流"
;
}
...
...
@@ -517,45 +515,50 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
// 审批分页
p
ublic
List
<
ExamineGroupbyProjectDto
>
pageExamine
(
WorkUser
user
,
Integer
projectId
,
Integer
type
,
Integer
page
,
Integer
size
,
Integer
status
)
{
p
rivate
List
<
ExamineGroupbyProjectDto
>
pageExamine
(
WorkUser
user
,
Integer
projectId
,
Integer
type
,
Integer
page
,
Integer
size
,
Integer
status
)
{
log
.
info
(
"WorkOrderServiceImpl[]pageExamine[]input.param.user:{},projectId:{},type:{},page:{},size:{},status:{}"
+
user
,
projectId
,
type
,
page
,
size
,
status
);
PageHelper
.
startPage
(
page
,
size
);
List
<
ExamineGroupbyProjectDto
>
egpds
=
new
ArrayList
<>()
;
List
<
WorkTimeOrder
>
workTimeOrders
=
null
;
List
<
WorkTimeOrder
>
workTimeOrders
;
workTimeOrders
=
null
;
Integer
level
=
user
.
getLevel
();
List
<
Integer
>
types
=
new
ArrayList
<>()
;
List
<
Integer
>
types
;
// 项目经理
if
(
1
==
level
)
{
types
=
type
==
null
?
Arrays
.
asList
(
1
,
2
,
3
,
4
)
:
Arrays
.
asList
(
type
);
types
=
type
==
null
?
Arrays
.
asList
(
1
,
2
,
3
,
4
)
:
new
ArrayList
<>(
type
);
workTimeOrders
=
workTimeOrderMapper
.
queryByPage
(
status
,
projectId
,
types
);
}
// 部门经理
if
(
2
==
level
)
{
types
=
type
==
null
?
Arrays
.
asList
(
3
,
4
,
5
,
6
)
:
Arrays
.
asList
(
type
);
types
=
type
==
null
?
Arrays
.
asList
(
3
,
4
,
5
,
6
)
:
new
ArrayList
<>
(
type
);
workTimeOrders
=
workTimeOrderMapper
.
queryByPage
(
status
,
null
,
types
);
}
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
ExamineGroupbyProjectDto
egpd
=
new
ExamineGroupbyProjectDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
egpd
);
egpds
.
add
(
egpd
);
}
return
egpds
;
return
WorkTimeOrderTOEGPD
(
workTimeOrders
);
}
// 根据工单获取管理员
p
ublic
String
getManagerNameByOrder
(
WorkTimeOrder
wto
)
{
p
rivate
String
getManagerNameByOrder
(
WorkTimeOrder
wto
)
{
if
(
1
==
wto
.
getType
()
||
2
==
wto
.
getType
())
{
WorkProject
workProject
=
workProjectService
.
getById
(
wto
.
getProjectId
());
return
workProject
!=
null
?
workProject
.
getManagerName
()
:
""
;
}
if
(
1
!=
wto
.
getType
()
||
2
!=
wto
.
getType
())
{
String
ManagerName
=
workUserService
.
getById
(
return
workUserService
.
getById
(
workDeptService
.
getById
(
wto
.
getDeptId
()).
getDeptManagerId
())
.
getName
();
return
ManagerName
;
}
return
null
;
}
// 判断当前用户是否是管理员
private
void
isManager
(
Integer
userId
)
{
if
(
null
==
userId
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
// 判断当前用户是否为管理
WorkUser
user
=
workUserService
.
getById
(
userId
);
if
(
0
==
user
.
getLevel
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
}
}
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/WorkTimeOrderController.java
View file @
b3cd19af
...
...
@@ -118,15 +118,15 @@ public class WorkTimeOrderController extends BaseController {
Integer
deptId
=
workUserDeptService
.
getDeptIdByUserId
(
userId
);
List
<
Integer
>
idsByDeptId
=
workUserDeptService
.
getUserIdsByDeptId
(
deptId
);
WorkUser
workUser
=
workUserService
.
getDeptManagerByIds
(
idsByDeptId
);
list
.
stream
().
forEach
(
index
->
index
.
setDeptManagerName
(
workUser
.
getName
()));
list
.
forEach
(
index
->
index
.
setDeptManagerName
(
workUser
.
getName
()));
return
getResult
(
list
);
}
@ApiOperation
(
value
=
"单个或批量审批"
,
notes
=
"单个或批量审批"
,
httpMethod
=
"GET"
)
// @ApiImplicitParam(name = "ids", value = "工单id", dataType = "list", required = true)
@ApiImplicitParam
(
name
=
"reviewerId"
,
value
=
"审核人id"
,
dataType
=
"int"
,
required
=
true
)
@ApiImplicitParams
({
//@ApiImplicitParam(name = "ids", value = "工单id", dataType = "list", required = true),
@ApiImplicitParam
(
name
=
"reviewerId"
,
value
=
"审核人id"
,
dataType
=
"int"
,
required
=
true
)}
)
@GetMapping
(
value
=
"/examins"
)
public
Result
<
Boolean
>
examinsByIds
(
Integer
reviewerId
,
@RequestParam
List
<
Integer
>
ids
)
{
public
Result
<
Boolean
>
examinsByIds
(
Integer
reviewerId
,
@RequestParam
List
<
Integer
>
ids
)
{
log
.
info
(
"WorkTimeOrderController[]examinsByIds[]input.param.reviewerId:{},ids:{}"
+
reviewerId
,
ids
);
if
(
null
==
reviewerId
||
CollectionUtils
.
isEmpty
(
ids
))
{
throw
new
CustomException
(
RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
...
...
wisenergy-web-admin/src/main/java/cn/wisenergy/web/config/auto/Examin.java
deleted
100644 → 0
View file @
5da3619d
package
cn
.
wisenergy
.
web
.
config
.
auto
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
import
cn.wisenergy.common.utils.DateUtil
;
import
cn.wisenergy.mapper.WorkCollectMapper
;
import
cn.wisenergy.mapper.WorkSubmitAdoptMapper
;
import
cn.wisenergy.mapper.WorkTimeOrderMapper
;
import
cn.wisenergy.model.app.WorkCollect
;
import
cn.wisenergy.model.app.WorkSubmitAdopt
;
import
cn.wisenergy.model.app.WorkTimeOrder
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.scheduling.annotation.EnableScheduling
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
java.text.SimpleDateFormat
;
import
java.util.Calendar
;
import
java.util.Date
;
/**
* 自动审批定时器
*/
@Slf4j
@Configuration
//1.主要用于标记配置类,兼备Component的效果。
@EnableScheduling
// 2.开启定时任务
public
class
Examin
{
@Autowired
private
WorkTimeOrderMapper
workTimeOrderMapper
;
@Autowired
private
WorkCollectMapper
workCollectMapper
;
@Autowired
private
WorkSubmitAdoptMapper
workSubmitAdoptMapper
;
@Scheduled
(
cron
=
"0 0 0 * * ?"
)
public
void
autoExamin
()
{
log
.
info
(
"admin[]config[]auto[]Examin[]autoExamin"
);
WorkSubmitAdopt
workSbumitAdopt
=
workSubmitAdoptMapper
.
selectById
(
1
);
Integer
autoAdopt
=
workSbumitAdopt
.
getAutoAdopt
();
Date
yesterdayDate
=
getAutoExaminDay
(
autoAdopt
);
Date
now
=
DateUtil
.
getToday
();
UpdateWrapper
<
WorkTimeOrder
>
WTOwrapper
=
new
UpdateWrapper
<>();
WTOwrapper
.
eq
(
"status"
,
1
);
WTOwrapper
.
le
(
"work_day"
,
yesterdayDate
);
WorkTimeOrder
workTimeOrder
=
new
WorkTimeOrder
();
workTimeOrder
.
setStatus
(
5
);
workTimeOrder
.
setModifyTime
(
now
);
int
wtoRow
=
workTimeOrderMapper
.
update
(
workTimeOrder
,
WTOwrapper
);
System
.
out
.
println
(
"一共审核:"
+
wtoRow
+
"条工单"
);
WorkCollect
workCollect
=
new
WorkCollect
();
UpdateWrapper
<
WorkCollect
>
wcw
=
new
UpdateWrapper
<>();
wcw
.
eq
(
"status"
,
1
);
wcw
.
le
(
"work_day"
,
yesterdayDate
);
workCollect
.
setStatus
(
2
);
workCollect
.
setModifyTime
(
now
);
int
wcRow
=
workCollectMapper
.
update
(
workCollect
,
wcw
);
System
.
out
.
println
(
"一共审核:"
+
wcRow
+
"条工单"
);
}
public
static
Date
getAutoExaminDay
(
Integer
day
)
{
day
=
-(
day
+
1
);
SimpleDateFormat
format
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
Calendar
c
=
Calendar
.
getInstance
();
c
.
setTime
(
new
Date
());
c
.
add
(
Calendar
.
DATE
,
-
2
);
Date
start
=
c
.
getTime
();
String
qyt
=
format
.
format
(
start
);
System
.
out
.
println
(
qyt
);
Date
date
=
DateUtil
.
convertStrToDate
(
qyt
,
"yyyy-MM-dd"
);
return
date
;
}
}
wisenergy-web-admin/src/main/resources/application-dev.yml
View file @
b3cd19af
...
...
@@ -3,9 +3,9 @@ spring:
type
:
com.alibaba.druid.pool.DruidDataSource
druid
:
driver-class-name
:
com.mysql.cj.jdbc.Driver
url
:
jdbc:mysql://localhost:3306/work
ing
_hours?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT%2B8
url
:
jdbc:mysql://localhost:3306/work_hours?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT%2B8
username
:
root
password
:
admin
password
:
123456
initial-size
:
10
max-active
:
100
min-idle
:
10
...
...
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