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
01f4ef8f
Commit
01f4ef8f
authored
Jan 27, 2021
by
cq990612
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化代码结构
parent
0b7107d6
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
394 additions
and
76 deletions
+394
-76
BASE_RESP_CODE_ENUM.java
...wisenergy/common/utils/exception/BASE_RESP_CODE_ENUM.java
+1
-0
WorkTimeOrderMapper.java
...rc/main/java/cn/wisenergy/mapper/WorkTimeOrderMapper.java
+7
-0
WorkTypeMapper.java
...per/src/main/java/cn/wisenergy/mapper/WorkTypeMapper.java
+9
-0
WorkCollectMapper.xml
...gy-mapper/src/main/resources/mapper/WorkCollectMapper.xml
+1
-1
WorkTimeOrderMapper.xml
...-mapper/src/main/resources/mapper/WorkTimeOrderMapper.xml
+7
-0
WorkTimeOrder.java
...l/src/main/java/cn/wisenergy/model/app/WorkTimeOrder.java
+18
-18
WorkType.java
...-model/src/main/java/cn/wisenergy/model/app/WorkType.java
+33
-0
ProjectInfoDto.java
.../src/main/java/cn/wisenergy/model/dto/ProjectInfoDto.java
+2
-2
WorkTimeOrderDto.java
...rc/main/java/cn/wisenergy/model/dto/WorkTimeOrderDto.java
+1
-1
WorkTimeOrderService.java
.../main/java/cn/wisenergy/service/WorkTimeOrderService.java
+9
-0
WorkTypeService.java
...e/src/main/java/cn/wisenergy/service/WorkTypeService.java
+39
-0
WorkTimeOrderServiceImpl.java
...a/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
+165
-47
WorkTypeServiceImpl.java
...n/java/cn/wisenergy/service/impl/WorkTypeServiceImpl.java
+82
-0
WorkUserProjectServiceImpl.java
...cn/wisenergy/service/impl/WorkUserProjectServiceImpl.java
+7
-7
WorkTimeOrderController.java
...rgy/web/admin/controller/app/WorkTimeOrderController.java
+13
-0
No files found.
wisenergy-common/src/main/java/cn/wisenergy/common/utils/exception/BASE_RESP_CODE_ENUM.java
View file @
01f4ef8f
...
...
@@ -58,6 +58,7 @@ public enum BASE_RESP_CODE_ENUM {
TIME_NOT_IS_NULL
(
"636"
,
"工时不能为0"
),
WORKDAY_NOT_NULL
(
"637"
,
"工时日期不能为空"
),
PROJECT_NOT_NULL
(
"638"
,
"项目类型不能为空"
),
NOT_MANAGER_TYPE
(
"642"
,
"没有可以管理的类型项目"
),
;
...
...
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkTimeOrderMapper.java
View file @
01f4ef8f
...
...
@@ -65,4 +65,11 @@ public interface WorkTimeOrderMapper extends BaseMapper<WorkTimeOrder> {
* @return
*/
List
<
Date
>
getDaysByDateAndStatus
(
@Param
(
"firstDayOfMonth"
)
Date
firstDayOfMonth
,
@Param
(
"userId"
)
Integer
userId
);
/**
* 清空某条数据
* @param workId
* @return
*/
int
updateToNull
(
Integer
workId
);
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkTypeMapper.java
0 → 100644
View file @
01f4ef8f
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkType
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
public
interface
WorkTypeMapper
extends
BaseMapper
<
WorkType
>
{
}
wisenergy-mapper/src/main/resources/mapper/WorkCollectMapper.xml
View file @
01f4ef8f
...
...
@@ -49,7 +49,7 @@
status=#{status},
</if>
<if
test=
"null !=totalTime"
>
total_time =
total_time +
#{totalTime},
total_time = #{totalTime},
</if>
modify_time = now()
</set>
...
...
wisenergy-mapper/src/main/resources/mapper/WorkTimeOrderMapper.xml
View file @
01f4ef8f
...
...
@@ -86,6 +86,13 @@
SET status = 3,reason = #{reason},reviewer_id = #{reviewerId},modify_time=now()
WHERE work_id = #{id}
</update>
<update
id=
"updateToNull"
>
UPDATE
<include
refid=
"table"
/>
SET project_id=null,dept_id=null,des=null,reason=null,reviewer_id=null,modify_time=now()
WHERE work_id = #{workId}
</update>
<select
id=
"getByDay"
resultType=
"cn.wisenergy.model.app.WorkTimeOrder"
>
...
...
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkTimeOrder.java
View file @
01f4ef8f
...
...
@@ -20,52 +20,52 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@ApiModel
(
value
=
"WorkTimeOrder"
,
description
=
"工时单实体类"
)
@ApiModel
(
value
=
"WorkTimeOrder"
,
description
=
"工时单实体类"
)
public
class
WorkTimeOrder
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
name
=
"workId"
,
value
=
"主键id"
)
@ApiModelProperty
(
name
=
"workId"
,
value
=
"主键id"
)
@TableId
(
value
=
"work_id"
,
type
=
IdType
.
AUTO
)
private
Integer
workId
;
@ApiModelProperty
(
name
=
"userId"
,
value
=
"用户id"
)
@ApiModelProperty
(
name
=
"userId"
,
value
=
"用户id"
)
private
Integer
userId
;
@ApiModelProperty
(
name
=
"projectId"
,
value
=
"项目id"
)
@ApiModelProperty
(
name
=
"projectId"
,
value
=
"项目id"
)
private
Integer
projectId
;
@ApiModelProperty
(
name
=
"deptId"
,
value
=
"用户部门主键"
)
@ApiModelProperty
(
name
=
"deptId"
,
value
=
"用户部门主键"
)
private
Integer
deptId
;
@ApiModelProperty
(
name
=
"workTime"
,
value
=
"工时(整数)"
)
@ApiModelProperty
(
name
=
"workTime"
,
value
=
"工时(整数)"
)
private
Integer
workTime
;
@ApiModelProperty
(
name
=
"workDay"
,
value
=
"工单日期"
)
@ApiModelProperty
(
name
=
"workDay"
,
value
=
"工单日期"
)
private
Date
workDay
;
@ApiModelProperty
(
name
=
"status"
,
value
=
"工单审核状态 1:已填报,2:已审批,3:被驳回 4:重新提交 5:自动审核"
)
@ApiModelProperty
(
name
=
"status"
,
value
=
"工单审核状态 1:已填报,2:已审批,3:被驳回 4:重新提交 5:自动审核"
)
private
Integer
status
;
@ApiModelProperty
(
name
=
"reviewerId"
,
value
=
"审核人userId"
)
@ApiModelProperty
(
name
=
"reviewerId"
,
value
=
"审核人userId"
)
private
Integer
reviewerId
;
@ApiModelProperty
(
name
=
"des"
,
value
=
"工作简述"
)
@ApiModelProperty
(
name
=
"des"
,
value
=
"工作简述"
)
private
String
des
;
@ApiModelProperty
(
name
=
"reason"
,
value
=
"审核理由"
)
@ApiModelProperty
(
name
=
"reason"
,
value
=
"审核理由"
)
private
String
reason
;
@ApiModelProperty
(
name
=
"type"
,
value
=
"1:项目,2:商机,3:请假,4:调休,5:外部商务、技术交流 6:内部培训、技术准备、管理 7:其他非项目/商机工作"
)
@ApiModelProperty
(
name
=
"type"
,
value
=
"1:项目,2:商机,3:请假,4:调休,5:外部商务、技术交流 6:内部培训、技术准备、管理 7:其他非项目/商机工作"
)
private
Integer
type
;
@ApiModelProperty
(
name
=
"isOvertime"
,
value
=
"0:正常工时,1:加班"
)
@ApiModelProperty
(
name
=
"isOvertime"
,
value
=
"0:正常工时,1:加班"
)
private
Integer
isOvertime
;
@ApiModelProperty
(
name
=
"createTime"
,
value
=
"工单创建时间"
)
@ApiModelProperty
(
name
=
"createTime"
,
value
=
"工单创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
name
=
"modifyTime"
,
value
=
"工单修改时间"
)
@ApiModelProperty
(
name
=
"modifyTime"
,
value
=
"工单修改时间"
)
private
Date
modifyTime
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkType.java
0 → 100644
View file @
01f4ef8f
package
cn
.
wisenergy
.
model
.
app
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@ApiModel
(
value
=
"WorkType"
,
description
=
"其他项目类型类"
)
public
class
WorkType
{
@ApiModelProperty
(
name
=
"id"
,
value
=
"主键id"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
name
=
"name"
,
value
=
"类型名"
)
private
String
name
;
@ApiModelProperty
(
name
=
"deptId"
,
value
=
"部门id"
)
private
Integer
deptId
;
@ApiModelProperty
(
name
=
"managerId"
,
value
=
"manager_id"
)
private
Integer
managerId
;
@ApiModelProperty
(
name
=
"type"
,
value
=
"5:外部商务、技术交流 6:内部培训、技术准备、管理 7:其他非项目/商机工作"
)
private
Integer
type
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/dto/ProjectInfoDto.java
View file @
01f4ef8f
...
...
@@ -24,8 +24,8 @@ public class ProjectInfoDto {
@ApiModelProperty
(
name
=
"typeName"
,
value
=
"类型名称"
)
private
String
typeName
;
@ApiModelProperty
(
name
=
"
deptM
anagerName"
,
value
=
"部门经理姓名"
)
private
String
deptM
anagerName
;
@ApiModelProperty
(
name
=
"
m
anagerName"
,
value
=
"部门经理姓名"
)
private
String
m
anagerName
;
private
List
<
ProjectDto
>
projectDto
;
...
...
wisenergy-model/src/main/java/cn/wisenergy/model/dto/WorkTimeOrderDto.java
View file @
01f4ef8f
...
...
@@ -40,7 +40,7 @@ public class WorkTimeOrderDto {
private
String
projectName
;
@ApiModelProperty
(
name
=
"projectManagerName"
,
value
=
"项目经理"
)
private
String
projectM
anagerName
;
private
String
m
anagerName
;
@ApiModelProperty
(
name
=
"workTime"
,
value
=
"工时(整数)"
)
private
Integer
workTime
;
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/WorkTimeOrderService.java
View file @
01f4ef8f
...
...
@@ -119,4 +119,13 @@ public interface WorkTimeOrderService {
List
<
WorkTimeOrderDto
>
wtoToWtod
(
List
<
WorkTimeOrder
>
workTimeOrders
);
/**
* 功能:测试添加
* @param createWorkOrderDto
* @return
*/
List
<
WorkTimeOrderDto
>
addTest
(
CreateWorkOrderDto
createWorkOrderDto
);
}
wisenergy-service/src/main/java/cn/wisenergy/service/WorkTypeService.java
0 → 100644
View file @
01f4ef8f
package
cn
.
wisenergy
.
service
;
import
cn.wisenergy.model.app.WorkType
;
import
java.util.List
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public
interface
WorkTypeService
{
/**
* 功能:根据审核人id获取
* @param userId
* @return
*/
List
<
WorkType
>
getByManagerId
(
Integer
userId
);
/**
* 功能:根据部门id获取
* @param deptId
* @return
*/
List
<
WorkType
>
getByDeptId
(
Integer
deptId
);
/**
* 功能: 根据类型获取
* @param type
* @return
*/
List
<
WorkType
>
getByType
(
Integer
type
);
/**
* 功能:查看有哪些其他Type
* @return
*/
List
<
WorkType
>
getType
();
}
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
View file @
01f4ef8f
...
...
@@ -19,10 +19,7 @@ import org.springframework.util.CollectionUtils;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.*
;
/**
* <p>
...
...
@@ -63,6 +60,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
@Autowired
private
WorkUserProjectService
workUserProjectService
;
@Autowired
private
WorkTypeService
workTypeService
;
/**
* 功能; 获取某日填报情况
...
...
@@ -169,6 +169,104 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
/**
* 功能:测试添加
*
* @param createWorkOrderDto
* @return
*/
@Transactional
@Override
public
List
<
WorkTimeOrderDto
>
addTest
(
CreateWorkOrderDto
createWorkOrderDto
)
{
log
.
info
(
"WorkTimeOderServiceImpl[]addTest[]input.param.creatWorkOrderDto"
+
createWorkOrderDto
);
List
<
WorkTimeOrderDto
>
workTimeOrders
=
createWorkOrderDto
.
getWorkTimeOrders
();
Date
date
=
new
Date
();
WorkSubmitAdopt
workSubmitAdopt
=
workSubmitAdoptService
.
getById
(
1
);
Integer
submitTime
=
workSubmitAdopt
.
getSubmitTime
();
// 检查工单
// 1.判断是否重复填报
isRepeat
(
workTimeOrders
);
// 2.每天工时累加不得超过八小时
timeNotEight
(
0
,
workTimeOrders
);
int
totalTime
=
0
;
int
size
=
0
;
List
<
Integer
>
typeList
=
new
ArrayList
<>();
for
(
WorkTimeOrderDto
dto
:
workTimeOrders
)
{
// 3.判断工单是否合法
isEmpty
(
dto
);
// 4、默认设置超过系统默认3天(包括驳回3天)未填报的工时将不能填报
System
.
out
.
println
(
"判断是否超过三天"
);
if
(
date
.
getTime
()
-
dto
.
getWorkDay
().
getTime
()
>
submitTime
*
24
*
60
*
60
*
1000
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_DAY_THAN_DATE
);
}
// 获取某些数据
Integer
type
=
dto
.
getType
();
dto
.
setUserName
(
workUserService
.
getById
(
dto
.
getUserId
()).
getName
());
dto
.
setTypeName
(
getTypeName
(
type
));
if
(
1
==
type
||
2
==
type
)
{
dto
.
setProjectName
(
workProjectService
.
getById
(
dto
.
getProjectId
()).
getProjectName
());
dto
.
setManagerName
(
workUserService
.
getById
(
workProjectService
.
getById
(
dto
.
getProjectId
()).
getManagerId
()).
getName
());
}
if
(
1
!=
type
&&
2
!=
type
)
{
dto
.
setManagerName
(
workUserService
.
getById
(
workTypeService
.
getByDeptId
(
workUserService
.
getById
(
dto
.
getUserId
()).
getDeptId
()).
get
(
0
).
getManagerId
()).
getName
());
}
dto
.
setStatus
(
1
);
if
(
3
==
type
||
4
==
type
)
{
size
++;
dto
.
setStatus
(
2
);
}
dto
.
setIsOvertime
(
0
);
if
(
workHolidayService
.
isHoliday
(
dto
.
getWorkDay
()))
{
dto
.
setIsOvertime
(
1
);
}
WorkTimeOrder
workTimeOrder
=
new
WorkTimeOrder
();
workTimeOrder
.
setDeptId
(
workUserDeptService
.
getDeptIdByUserId
(
dto
.
getUserId
()));
BeanUtils
.
copyProperties
(
dto
,
workTimeOrder
);
// 修改
if
(
null
!=
dto
.
getWorkId
())
{
workTimeOrderMapper
.
updateToNull
(
dto
.
getWorkId
());
workTimeOrderMapper
.
updateById
(
workTimeOrder
);
}
// 插入
if
(
null
==
dto
.
getWorkId
()
||
0
==
dto
.
getWorkId
())
{
workTimeOrderMapper
.
save
(
workTimeOrder
);
dto
.
setWorkId
(
workTimeOrder
.
getWorkId
());
}
typeList
.
add
(
type
);
totalTime
+=
dto
.
getWorkTime
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
dto
);
}
int
status
=
1
;
if
(
size
==
typeList
.
size
())
{
status
=
2
;
}
WorkCollect
workCollect
=
workCollectService
.
getByUserIdAndWorkDay
(
workTimeOrders
.
get
(
0
).
getUserId
(),
workTimeOrders
.
get
(
0
).
getWorkDay
());
if
(
null
==
workCollect
)
{
workCollect
=
new
WorkCollect
();
BeanUtils
.
copyProperties
(
workTimeOrders
.
get
(
0
),
workCollect
);
workCollect
.
setTotalTime
(
totalTime
);
workCollect
.
setStatus
(
status
);
workCollectService
.
insertCollect
(
workCollect
);
}
if
(
null
!=
workCollect
)
{
workCollect
=
new
WorkCollect
();
BeanUtils
.
copyProperties
(
workTimeOrders
.
get
(
0
),
workCollect
);
workCollect
.
setTotalTime
(
totalTime
);
workCollect
.
setStatus
(
status
);
workCollectService
.
update
(
workCollect
);
}
return
workTimeOrders
;
}
/**
* 功能: 驳回重新填报
*
...
...
@@ -321,9 +419,10 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
WorkTimeOrderDto
workTimeOrderDto
=
new
WorkTimeOrderDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
workTimeOrderDto
);
workTimeOrderDto
.
setUserName
(
workUserService
.
getById
(
workTimeOrderDto
.
getUserId
()).
getName
());
workTimeOrderDto
.
setManagerName
(
workUserService
.
getById
(
workTypeService
.
getByDeptId
(
workTimeOrder
.
getDeptId
()).
get
(
0
).
getManagerId
()).
getName
());
if
(
1
==
workTimeOrder
.
getType
()
||
2
==
workTimeOrder
.
getType
())
{
workTimeOrderDto
.
setProjectName
(
workProjectService
.
getById
(
workTimeOrderDto
.
getProjectId
()).
getProjectName
());
workTimeOrderDto
.
set
Project
ManagerName
(
workUserService
.
getById
(
workProjectService
.
getById
(
workTimeOrderDto
.
getProjectId
()).
getManagerId
()).
getName
());
workTimeOrderDto
.
setManagerName
(
workUserService
.
getById
(
workProjectService
.
getById
(
workTimeOrderDto
.
getProjectId
()).
getManagerId
()).
getName
());
}
workTimeOrderDto
.
setTypeName
(
getTypeName
(
workTimeOrderDto
.
getType
()));
workTimeOrderList
.
add
(
workTimeOrderDto
);
...
...
@@ -442,8 +541,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 1.获取可填报的项目
projectsDto
.
setProjectInfoDto
(
getProjectInfoDto
(
userId
));
// 2.获取可审批的项目
if
(
0
!=
user
.
getLevel
())
{
List
<
ProjectManagerDto
>
projectManagerDtos
=
new
ArrayList
<>();
if
(
1
==
user
.
getLevel
())
{
List
<
ProjectDto
>
projectDtos
=
workProjectService
.
getByManagerId
(
userId
);
ProjectManagerDto
projectManagerDto
;
for
(
ProjectDto
projectDto
:
projectDtos
)
{
...
...
@@ -451,16 +550,18 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
BeanUtils
.
copyProperties
(
projectDto
,
projectManagerDto
);
projectManagerDtos
.
add
(
projectManagerDto
);
}
}
if
(
2
==
user
.
getLevel
())
{
ProjectManagerDto
projectManagerDto
=
new
ProjectManagerDto
();
for
(
int
i
=
5
;
i
<
8
;
i
++)
{
projectManagerDto
.
setType
(
i
).
setTypeName
(
getTypeName
(
i
));
projectManagerDtos
.
add
(
projectManagerDto
);
}
List
<
WorkType
>
WorkTypes
=
workTypeService
.
getByManagerId
(
userId
);
ProjectManagerDto
projectManagerDto1
;
for
(
WorkType
workType
:
WorkTypes
)
{
projectManagerDto1
=
new
ProjectManagerDto
();
projectManagerDto1
.
setType
(
workType
.
getType
()).
setTypeName
(
workType
.
getName
());
projectManagerDtos
.
add
(
projectManagerDto1
);
}
projectsDto
.
setProjectManagerDto
(
projectManagerDtos
);
}
return
projectsDto
;
...
...
@@ -471,11 +572,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
List
<
Integer
>
projectIds
=
workUserProjectService
.
getProjectIdByUserId
(
userId
);
// 1.获取当前用户的部门管理
String
deptManagerName
=
workUserService
.
getById
(
workDeptService
.
getById
(
workUserService
.
getById
(
userId
).
getDeptId
()).
getDeptManagerId
()).
getName
();
Integer
deptId
=
workUserService
.
getById
(
userId
).
getDeptId
();
String
deptManagerName
=
workUserService
.
getById
(
workDeptService
.
getById
(
deptId
).
getDeptManagerId
()).
getName
();
// 2.获取可填报的类型
List
<
ProjectInfoDto
>
projectList
=
new
ArrayList
<>();
ProjectInfoDto
projectInfoDto1
=
new
ProjectInfoDto
().
setType
(
1
).
setTypeName
(
getTypeName
(
1
)).
setDeptManagerName
(
deptManagerName
);
ProjectInfoDto
projectInfoDto2
=
new
ProjectInfoDto
().
setType
(
2
).
setTypeName
(
getTypeName
(
2
)).
setDeptManagerName
(
deptManagerName
);
ProjectInfoDto
projectInfoDto1
=
new
ProjectInfoDto
().
setType
(
1
).
setTypeName
(
getTypeName
(
1
)).
setManagerName
(
deptManagerName
);
ProjectInfoDto
projectInfoDto2
=
new
ProjectInfoDto
().
setType
(
2
).
setTypeName
(
getTypeName
(
2
)).
setManagerName
(
deptManagerName
);
if
(!
CollectionUtils
.
isEmpty
(
projectIds
))
{
List
<
ProjectDto
>
projectDto1
=
new
ArrayList
<>();
List
<
ProjectDto
>
projectDto2
=
new
ArrayList
<>();
WorkProject
workProject
;
...
...
@@ -488,15 +592,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
projectDto2
.
add
(
projectToProjectDto
(
workProject
));
}
}
if
(!
CollectionUtils
.
isEmpty
(
projectDto1
))
projectInfoDto1
.
setProjectDto
(
projectDto1
);
if
(!
CollectionUtils
.
isEmpty
(
projectDto2
))
projectInfoDto2
.
setProjectDto
(
projectDto2
);
}
projectList
.
add
(
projectInfoDto1
);
projectList
.
add
(
projectInfoDto2
);
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
3
).
setTypeName
(
getTypeName
(
3
)).
setDeptManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
4
).
setTypeName
(
getTypeName
(
4
)).
setDeptManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
5
).
setTypeName
(
getTypeName
(
5
)).
setDeptManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
6
).
setTypeName
(
getTypeName
(
6
)).
setDeptManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
7
).
setTypeName
(
getTypeName
(
7
)).
setDeptManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
3
).
setTypeName
(
getTypeName
(
3
)).
setManagerName
(
deptManagerName
));
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
4
).
setTypeName
(
getTypeName
(
4
)).
setManagerName
(
deptManagerName
));
List
<
WorkType
>
workTypes
=
workTypeService
.
getByDeptId
(
deptId
);
for
(
WorkType
workType
:
workTypes
)
{
projectList
.
add
(
new
ProjectInfoDto
().
setType
(
workType
.
getType
()).
setTypeName
(
workType
.
getName
()).
setManagerName
(
workUserService
.
getById
(
workType
.
getManagerId
()).
getName
()));
}
return
projectList
;
}
...
...
@@ -516,17 +625,18 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
WorkTimeOrderDto
dto
=
new
WorkTimeOrderDto
();
BeanUtils
.
copyProperties
(
workTimeOrder
,
dto
);
dto
.
setUserName
(
workUserService
.
getById
(
workTimeOrder
.
getUserId
()).
getName
());
dto
.
setManagerName
(
workUserService
.
getById
(
workTypeService
.
getByDeptId
(
workTimeOrder
.
getDeptId
()).
get
(
0
).
getManagerId
()).
getName
());
if
(
1
==
workTimeOrder
.
getType
()
||
2
==
workTimeOrder
.
getType
())
{
dto
.
setProjectName
(
workProjectService
.
getById
(
workTimeOrder
.
getProjectId
()).
getProjectName
());
dto
.
set
Project
ManagerName
(
getManagerNameByOrder
(
workTimeOrder
));
dto
.
setManagerName
(
getManagerNameByOrder
(
workTimeOrder
));
}
dto
.
setTypeName
(
getTypeName
(
dto
.
getType
()));
dtos
.
add
(
dto
);
}
return
dtos
;
}
private
List
<
ExamineGroupbyProjectDto
>
getExamineGroupByProjectDto
(
Integer
projectId
)
{
QueryWrapper
<
WorkTimeOrder
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
"project_id"
,
projectId
);
...
...
@@ -557,9 +667,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
WorkSubmitAdopt
workSubmitAdopt
=
workSubmitAdoptService
.
getById
(
1
);
Integer
submitTime
=
workSubmitAdopt
.
getSubmitTime
();
for
(
WorkTimeOrderDto
dto
:
list
)
{
isEmpty
(
dto
);
// 2、默认设置超过系统默认3天(包括驳回3天)未填报的工时将不能填报
if
(
date
.
getTime
()
-
dto
.
getWorkDay
().
getTime
()
>
submitTime
*
24
*
60
*
60
*
1000
)
{
...
...
@@ -689,7 +797,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
dto
.
setProjectName
(
null
!=
dto
.
getProjectId
()
?
workProjectService
.
getById
(
dto
.
getProjectId
()).
getProjectName
()
:
getTypeName
(
dto
.
getType
()));
// 获取项目经理
if
(
null
!=
dto
.
getProjectId
())
dto
.
set
Project
ManagerName
(
workUserService
.
getById
(
workProjectService
.
getById
(
dto
.
getProjectId
()).
getManagerId
()).
getName
());
dto
.
setManagerName
(
workUserService
.
getById
(
workProjectService
.
getById
(
dto
.
getProjectId
()).
getManagerId
()).
getName
());
// 获取类型名
dto
.
setTypeName
(
getTypeName
(
dto
.
getType
()));
...
...
@@ -738,12 +846,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
List
<
Integer
>
types
;
// 项目经理
if
(
1
==
level
)
{
types
=
type
==
null
?
Arrays
.
asList
(
1
,
2
)
:
new
ArrayList
<>(
type
);
types
=
type
==
null
?
Arrays
.
asList
(
1
,
2
)
:
new
ArrayList
<>(
Collections
.
singletonList
(
type
)
);
workTimeOrders
=
workTimeOrderMapper
.
queryByPage
(
status
,
projectId
,
types
);
}
// 部门经理
if
(
2
==
level
)
{
types
=
type
==
null
?
Arrays
.
asList
(
5
,
6
,
7
)
:
new
ArrayList
<>(
type
);
System
.
out
.
println
(
type
);
types
=
type
==
null
?
Arrays
.
asList
(
5
,
6
,
7
)
:
new
ArrayList
<>(
Collections
.
singletonList
(
type
));
System
.
out
.
println
(
types
);
workTimeOrders
=
workTimeOrderMapper
.
queryByPage
(
status
,
null
,
types
);
}
List
<
WorkTimeOrderDto
>
workTimeOrderDtos
=
new
ArrayList
<>();
...
...
@@ -769,7 +879,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
WorkProject
workProject
=
workProjectService
.
getById
(
wto
.
getProjectId
());
return
workProject
!=
null
?
workUserService
.
getById
(
workProject
.
getManagerId
()).
getName
()
:
""
;
}
if
(
1
!=
wto
.
getType
()
||
2
!=
wto
.
getType
())
{
if
(
1
!=
wto
.
getType
()
&&
2
!=
wto
.
getType
())
{
return
workUserService
.
getById
(
workDeptService
.
getById
(
wto
.
getDeptId
()).
getDeptManagerId
())
.
getName
();
...
...
@@ -790,8 +900,16 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
private
String
getTypeName
(
Integer
type
)
{
String
[]
str
=
{
"项目"
,
"商机"
,
"请假"
,
"调休"
,
"外部商务、技术交流"
,
"内部培训、技术准备、管理"
,
"其他非项目/商机工作"
};
return
str
[--
type
];
List
<
WorkType
>
types
=
workTypeService
.
getType
();
String
[]
str
=
{
""
,
"项目"
,
"商机"
,
"请假"
,
"调休"
};
Map
<
Integer
,
String
>
map
=
new
HashMap
<>();
for
(
int
i
=
1
;
i
<
str
.
length
;
i
++)
{
map
.
put
(
i
,
str
[
i
]);
}
for
(
WorkType
workType
:
types
)
{
map
.
put
(
workType
.
getType
(),
workType
.
getName
());
}
return
map
.
get
(
type
);
}
}
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkTypeServiceImpl.java
0 → 100644
View file @
01f4ef8f
package
cn
.
wisenergy
.
service
.
impl
;
import
cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM
;
import
cn.wisenergy.common.utils.exception.BaseCustomException
;
import
cn.wisenergy.mapper.WorkTypeMapper
;
import
cn.wisenergy.model.app.WorkType
;
import
cn.wisenergy.service.WorkTypeService
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Slf4j
@Service
public
class
WorkTypeServiceImpl
implements
WorkTypeService
{
@Autowired
private
WorkTypeMapper
workTypeMapper
;
/**
* 功能:根据审核人id获取
*
* @param userId
* @return
*/
@Override
public
List
<
WorkType
>
getByManagerId
(
Integer
userId
)
{
log
.
info
(
"WorkTypeServiceImpl[]getByManagerId[]input.param.userId:{}"
+
userId
);
return
getWorkTypes
(
userId
,
"manager_id"
);
}
/**
* 功能:根据部门id获取
*
* @param deptId
* @return
*/
@Override
public
List
<
WorkType
>
getByDeptId
(
Integer
deptId
)
{
log
.
info
(
"WorkTypeServiceImpl[]getByDeptId[]input.param.deptId:{}"
+
deptId
);
return
getWorkTypes
(
deptId
,
"dept_id"
);
}
/**
* 功能: 根据类型获取
*
* @param type
* @return
*/
@Override
public
List
<
WorkType
>
getByType
(
Integer
type
)
{
log
.
info
(
"WorkTypeServiceImpl[]getByType[]input.param.type:{}"
+
type
);
return
getWorkTypes
(
type
,
"type"
);
}
/**
* 功能:查看有哪些其他Type
*
* @return
*/
@Override
public
List
<
WorkType
>
getType
()
{
log
.
info
(
"WorkTypeServiceImpl[]getType"
);
QueryWrapper
<
WorkType
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
groupBy
(
"type"
);
wrapper
.
orderByAsc
(
"type"
);
return
workTypeMapper
.
selectList
(
wrapper
);
}
private
List
<
WorkType
>
getWorkTypes
(
Integer
userId
,
String
column
)
{
if
(
null
==
userId
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
QueryWrapper
<
WorkType
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
column
,
userId
);
List
<
WorkType
>
workTypes
=
workTypeMapper
.
selectList
(
wrapper
);
return
workTypes
;
}
}
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkUserProjectServiceImpl.java
View file @
01f4ef8f
...
...
@@ -55,15 +55,15 @@ public class WorkUserProjectServiceImpl implements WorkUserProjectService {
QueryWrapper
<
WorkUserProject
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
eq
(
"user_id"
,
userId
);
List
<
WorkUserProject
>
workUserProjects
=
workUserProjectMapper
.
selectList
(
wrapper
);
if
(
CollectionUtils
.
isEmpty
(
workUserProjects
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_PROJECT_IS_NULL
);
}
if
(!
CollectionUtils
.
isEmpty
(
workUserProjects
))
{
ArrayList
<
Integer
>
list
=
new
ArrayList
<>();
for
(
WorkUserProject
project
:
workUserProjects
)
{
list
.
add
(
project
.
getProjectId
());
}
return
list
;
}
return
null
;
}
@Override
...
...
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/WorkTimeOrderController.java
View file @
01f4ef8f
...
...
@@ -169,4 +169,17 @@ public class WorkTimeOrderController extends BaseController {
return
getResult
(
workTimeOrderDtos
);
}
@ApiOperation
(
value
=
"工时填报(测试)"
,
notes
=
"工时填报(测试)"
,
httpMethod
=
"POST"
)
@ApiImplicitParam
(
name
=
"dto"
,
value
=
"创建工单dto"
,
dataType
=
"CreateWorkOrderDto"
)
@PostMapping
(
value
=
"/addtest"
)
public
Result
<
List
<
WorkTimeOrderDto
>>
addTest
(
@RequestBody
CreateWorkOrderDto
dto
)
{
log
.
info
(
"WorkTimeOrderController[]addTest[]input.param"
+
dto
);
if
(
CollectionUtils
.
isEmpty
(
dto
.
getWorkTimeOrders
()))
{
throw
new
CustomException
(
RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
List
<
WorkTimeOrderDto
>
workTimeOrderDtos
=
workTimeOrderService
.
addTest
(
dto
);
return
getResult
(
workTimeOrderDtos
);
}
}
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