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
e31e92a8
Commit
e31e92a8
authored
Feb 07, 2021
by
cq990612
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化代码结构
parent
acd39d15
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
579 additions
and
42 deletions
+579
-42
WorkCentreMapper.java
...r/src/main/java/cn/wisenergy/mapper/WorkCentreMapper.java
+3
-0
WorkCollectMapper.java
.../src/main/java/cn/wisenergy/mapper/WorkCollectMapper.java
+18
-0
WorkLevelMapper.java
...er/src/main/java/cn/wisenergy/mapper/WorkLevelMapper.java
+11
-0
WorkProjectMapper.java
.../src/main/java/cn/wisenergy/mapper/WorkProjectMapper.java
+3
-0
WorkRoleLevelMapper.java
...rc/main/java/cn/wisenergy/mapper/WorkRoleLevelMapper.java
+16
-0
WorkRoleMapper.java
...per/src/main/java/cn/wisenergy/mapper/WorkRoleMapper.java
+11
-0
WorkUserRoleMapper.java
...src/main/java/cn/wisenergy/mapper/WorkUserRoleMapper.java
+12
-0
WorkProjectMapper.xml
...gy-mapper/src/main/resources/mapper/WorkProjectMapper.xml
+34
-0
WorkRoleLevelMapper.xml
...-mapper/src/main/resources/mapper/WorkRoleLevelMapper.xml
+21
-0
WorkUserRoleMapper.xml
...y-mapper/src/main/resources/mapper/WorkUserRoleMapper.xml
+11
-0
WorkLevel.java
...model/src/main/java/cn/wisenergy/model/app/WorkLevel.java
+27
-0
WorkRole.java
...-model/src/main/java/cn/wisenergy/model/app/WorkRole.java
+21
-0
WorkRoleLevel.java
...l/src/main/java/cn/wisenergy/model/app/WorkRoleLevel.java
+26
-0
WorkUserRole.java
...el/src/main/java/cn/wisenergy/model/app/WorkUserRole.java
+25
-0
ManagerProjectsDto.java
.../main/java/cn/wisenergy/model/dto/ManagerProjectsDto.java
+4
-2
LevelRankEnum.java
...src/main/java/cn/wisenergy/model/enums/LevelRankEnum.java
+32
-0
GetManagerProjectsVo.java
...main/java/cn/wisenergy/model/vo/GetManagerProjectsVo.java
+2
-2
WorkProjectService.java
...rc/main/java/cn/wisenergy/service/WorkProjectService.java
+21
-8
WorkTimeOrderService.java
.../main/java/cn/wisenergy/service/WorkTimeOrderService.java
+1
-1
WorkHolidayServiceImpl.java
...ava/cn/wisenergy/service/impl/WorkHolidayServiceImpl.java
+1
-1
WorkProjectServiceImpl.java
...ava/cn/wisenergy/service/impl/WorkProjectServiceImpl.java
+94
-10
WorkTimeOrderServiceImpl.java
...a/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
+25
-15
UserRoleLevelUtils.java
...n/java/cn/wisenergy/service/utils/UserRoleLevelUtils.java
+135
-0
WorkProjectController.java
...nergy/web/admin/controller/app/WorkProjectController.java
+25
-2
WorkTimeOrderController.java
...rgy/web/admin/controller/app/WorkTimeOrderController.java
+0
-1
No files found.
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkCentreMapper.java
View file @
e31e92a8
...
...
@@ -7,4 +7,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public
interface
WorkCentreMapper
extends
BaseMapper
<
WorkCollect
>
{
WorkCentre
getByManagerId
(
Integer
userId
);
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkCollectMapper.java
View file @
e31e92a8
...
...
@@ -18,9 +18,27 @@ import java.util.List;
*/
public
interface
WorkCollectMapper
extends
BaseMapper
<
WorkCollect
>
{
/**
* 获取用户当月的填报信息
* @param userId 用户id
* @param workMonth 日期
* @return 自定义dto
*/
List
<
CalendarDto
>
getWorkMonth
(
@Param
(
"userId"
)
Integer
userId
,
@Param
(
"workMonth"
)
Date
workMonth
);
/**
* 插入一条记录
* @param workCollect 实体类
* @return 插入成功的条数
*/
int
insertWorkCollect
(
WorkCollect
workCollect
);
/**
* 根据工单id 修改当日填报状态和工时
* @param id 工单id
* @param status 状态
* @param totalTime 工时
* @return 修改成功的条数
*/
int
updateStatusOrTotalTime
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"status"
)
Integer
status
,
@Param
(
"totalTime"
)
Integer
totalTime
);
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkLevelMapper.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkLevel
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public
interface
WorkLevelMapper
extends
BaseMapper
<
WorkLevel
>
{
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkProjectMapper.java
View file @
e31e92a8
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkProject
;
import
cn.wisenergy.model.dto.ManagerProjectsDto
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -26,4 +27,6 @@ public interface WorkProjectMapper extends BaseMapper<WorkProject> {
List
<
WorkProject
>
getProjectsByIds
(
@Param
(
"ids"
)
List
<
Integer
>
ids
,
@Param
(
"isConclusion"
)
Integer
isConclusion
);
List
<
ManagerProjectsDto
>
getManagerProjectsDto
(
@Param
(
"userId"
)
Integer
userId
,
@Param
(
"type"
)
Integer
type
,
@Param
(
"isConclusion"
)
Integer
isConclusion
,
@Param
(
"deptIds"
)
List
<
Integer
>
deptIds
);
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkRoleLevelMapper.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkRoleLevel
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public
interface
WorkRoleLevelMapper
extends
BaseMapper
<
WorkRoleLevel
>
{
List
<
Integer
>
getLevelIds
(
@Param
(
"roleIds"
)
List
<
Integer
>
roleIds
);
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkRoleMapper.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkRole
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public
interface
WorkRoleMapper
extends
BaseMapper
<
WorkRole
>
{
}
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/WorkUserRoleMapper.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
mapper
;
import
cn.wisenergy.model.app.WorkUserRole
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
java.util.List
;
public
interface
WorkUserRoleMapper
extends
BaseMapper
<
WorkUserRole
>
{
List
<
Integer
>
getRole
(
Integer
userId
);
}
wisenergy-mapper/src/main/resources/mapper/WorkProjectMapper.xml
View file @
e31e92a8
...
...
@@ -72,8 +72,42 @@
AND is_conclusion = #{isConclusion}
</if>
</where>
</select>
<select
id=
"getManagerProjectsDto"
resultType=
"cn.wisenergy.model.dto.ManagerProjectsDto"
>
select p.id,p.oa_project_id,p.project_name,p.type,p.create_time,p.is_conclusion,
GROUP_CONCAT(DISTINCT(u.name)) as 'Participants',p.cost_budget,p.work_time,p.start_time,p.end_time,
SUM(o.work_time)/8 as 'currentLaborCost',SUM(o.work_time) as 'totalCurrentWorkingHours',
if(now() BETWEEN p.start_time and p.end_time,'否','是') as 'isItOverdue',
if(p.create_time = p.modify_time,'否','是') as 'isThereABudgetChange'
from work_project p LEFT JOIN work_time_order o on p.id = o.project_id
LEFT JOIN work_user u on p.manager_id = u.id
<where>
<if
test=
"null != userId"
>
AND p.manager_id = #{userId}
</if>
<if
test=
"null !=type"
>
AND p.type = #{type}
</if>
<if
test=
"null !=isConclusion"
>
AND p.is_conclusion = #{isConclusion}
</if>
<if
test=
"deptIds != null"
>
OR p.dept_id IN
<foreach
collection=
"deptIds"
item=
"deptId"
separator=
","
open=
"("
close=
")"
>
#{deptId}
</foreach>
</if>
</where>
GROUP BY p.id
</select>
</mapper>
wisenergy-mapper/src/main/resources/mapper/WorkRoleLevelMapper.xml
0 → 100644
View file @
e31e92a8
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.mapper.WorkRoleLevelMapper"
>
<select
id=
"getLevelIds"
resultType=
"java.lang.Integer"
>
SELECT level_id
FROM work_role_level
<where>
<if
test=
"roleIds != null"
>
AND role_id IN
<foreach
collection=
"roleIds"
item=
"roleId"
open=
"("
close=
")"
separator=
","
>
#{roleId}
</foreach>
</if>
</where>
</select>
</mapper>
\ No newline at end of file
wisenergy-mapper/src/main/resources/mapper/WorkUserRoleMapper.xml
0 → 100644
View file @
e31e92a8
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.mapper.WorkUserRoleMapper"
>
<select
id=
"getRole"
resultType=
"java.lang.Integer"
>
SELECT role_id
FROM work_user_role
WHERE user_id = #{userId}
</select>
</mapper>
\ No newline at end of file
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkLevel.java
0 → 100644
View file @
e31e92a8
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
=
"WorkLevel"
,
description
=
"权限实体类"
)
public
class
WorkLevel
{
@ApiModelProperty
(
name
=
"id"
,
value
=
"主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
name
=
"name"
,
value
=
"权限名"
)
private
String
name
;
@ApiModelProperty
(
name
=
"rank"
,
value
=
"权限等级->1:项目级 2:部门级 3:中心级"
)
private
Integer
rank
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkRole.java
0 → 100644
View file @
e31e92a8
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
=
"WorkRole"
,
description
=
"角色实体类"
)
public
class
WorkRole
{
@ApiModelProperty
(
name
=
"id"
,
value
=
"主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
name
=
"name"
,
value
=
"角色名"
)
private
String
name
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkRoleLevel.java
0 → 100644
View file @
e31e92a8
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
=
"WorkRoleLevel"
,
description
=
"角色实体类"
)
public
class
WorkRoleLevel
{
@ApiModelProperty
(
name
=
"id"
,
value
=
"主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
name
=
"roleId"
,
value
=
"角色id"
)
private
Integer
roleId
;
@ApiModelProperty
(
name
=
"levelId"
,
value
=
"权限id"
)
private
Integer
levelId
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/app/WorkUserRole.java
0 → 100644
View file @
e31e92a8
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
=
"WorkUserRole"
,
description
=
"用户角色关联类"
)
public
class
WorkUserRole
{
@ApiModelProperty
(
name
=
"id"
,
value
=
"主键"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@ApiModelProperty
(
name
=
"userId"
,
value
=
"用户id"
)
private
Integer
userId
;
@ApiModelProperty
(
name
=
"roleId"
,
value
=
"角色id"
)
private
Integer
roleId
;
}
wisenergy-model/src/main/java/cn/wisenergy/model/dto/ManagerProjectsDto.java
View file @
e31e92a8
...
...
@@ -2,6 +2,7 @@ package cn.wisenergy.model.dto;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -54,15 +55,16 @@ public class ManagerProjectsDto implements Serializable {
@ApiModelProperty
(
name
=
"endTime"
,
value
=
"项目结束时间"
)
private
Date
endTime
;
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
name
=
"createTime"
,
value
=
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
name
=
"modifyTime"
,
value
=
"修改时间"
)
private
Date
modifyTime
;
/
/其他
/
**其他*/
@ApiModelProperty
(
name
=
"Participants"
,
value
=
"参与人员"
)
private
String
P
articipants
;
private
String
p
articipants
;
@ApiModelProperty
(
name
=
"currentLaborCost"
,
value
=
"当前工时成本"
)
private
String
currentLaborCost
;
...
...
wisenergy-model/src/main/java/cn/wisenergy/model/enums/LevelRankEnum.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
model
.
enums
;
/**
* @Authotr:陈奇
* @QQ1799796883
*/
public
enum
LevelRankEnum
{
PROJECT_LEVEL
(
1
,
"项目级"
),
DEPARTMENT_LEVEL
(
2
,
"部门级"
),
CENTRAL_LEVEL
(
3
,
"中心级"
),
;
private
Integer
rank
;
private
String
msg
;
LevelRankEnum
(
Integer
rank
,
String
msg
){
this
.
rank
=
rank
;
this
.
msg
=
msg
;
}
public
Integer
getRank
(){
return
rank
;
}
public
String
getMsg
(){
return
msg
;
}
}
wisenergy-model/src/main/java/cn/wisenergy/model/vo/GetManagerProjectsVo.java
View file @
e31e92a8
...
...
@@ -20,8 +20,8 @@ public class GetManagerProjectsVo {
@ApiModelProperty
(
name
=
"userId"
,
value
=
"用户id"
)
private
Integer
userId
;
@ApiModelProperty
(
name
=
"
projectId"
,
value
=
"项目id
"
)
private
Integer
projectId
;
@ApiModelProperty
(
name
=
"
type"
,
value
=
"类型:1:项目 2:商机
"
)
private
Integer
type
;
@ApiModelProperty
(
name
=
"isConclusion"
,
value
=
"是否结项:0:结项,1:未结束"
)
private
Integer
isConclusion
;
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/WorkProjectService.java
View file @
e31e92a8
...
...
@@ -2,6 +2,8 @@ package cn.wisenergy.service;
import
cn.wisenergy.model.app.WorkProject
;
import
cn.wisenergy.model.dto.ProjectDto
;
import
cn.wisenergy.model.vo.GetManagerProjectsVo
;
import
com.github.pagehelper.PageInfo
;
import
java.util.List
;
...
...
@@ -17,30 +19,41 @@ public interface WorkProjectService {
/**
* 功能:根据项目id获取项目
* @param id
* @return
* @param id
项目id
* @return
项目
*/
WorkProject
getById
(
Integer
id
);
/**
* 根据项目ids获取项目
* @param ids 项目id
* @param isConclusion 是否结项
* @return 项目集合
*/
List
<
WorkProject
>
getNameByIds
(
List
<
Integer
>
ids
,
Integer
isConclusion
);
/**
* 功能: 查询当前用户所管理的项目
* @param id
* @return
* @param id 用户id
* @param isConclusion 是否结项
* @return 项目内容
*/
List
<
ProjectDto
>
getByManagerId
(
Integer
id
,
Integer
isConclusion
);
/**
* 获取用户管理的项目
* @param userId
* @return
* @param userId
用户id
* @return
项目集合
*/
List
<
WorkProject
>
getUserManageProjects
(
Integer
userId
);
/**
* 获取当前用户所管理的项目/商机
* @param gmpv 自定义VO
* @return 分页
*/
PageInfo
getManagerProjects
(
GetManagerProjectsVo
gmpv
);
}
wisenergy-service/src/main/java/cn/wisenergy/service/WorkTimeOrderService.java
View file @
e31e92a8
...
...
@@ -62,7 +62,7 @@ public interface WorkTimeOrderService {
* @param userId 用户id
* @param projectId 项目Id
* @param type 类型
* @return
* @return
小程序Dto
*/
List
<
AppletsPendApprovalDto
>
getExamineApplets
(
Integer
userId
,
Integer
projectId
,
Integer
type
);
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkHolidayServiceImpl.java
View file @
e31e92a8
...
...
@@ -61,7 +61,7 @@ public class WorkHolidayServiceImpl implements WorkHolidayService {
return lDate;
}
*/
/
/ 判断某个时间是否在时间段内
/
** 判断某个时间是否在时间段内*/
private
static
boolean
yearMonthBetween
(
Date
nowDate
,
Date
startDate
,
Date
endDate
)
{
long
nowTime
=
nowDate
.
getTime
();
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkProjectServiceImpl.java
View file @
e31e92a8
...
...
@@ -5,15 +5,18 @@ import cn.wisenergy.common.utils.exception.BaseCustomException;
import
cn.wisenergy.mapper.WorkCentreMapper
;
import
cn.wisenergy.mapper.WorkDeptMapper
;
import
cn.wisenergy.mapper.WorkProjectMapper
;
import
cn.wisenergy.model.app.WorkCentre
;
import
cn.wisenergy.model.app.WorkDept
;
import
cn.wisenergy.model.app.WorkProject
;
import
cn.wisenergy.model.app.WorkUser
;
import
cn.wisenergy.model.app.*
;
import
cn.wisenergy.model.dto.ManagerProjectsDto
;
import
cn.wisenergy.model.dto.ProjectDto
;
import
cn.wisenergy.model.enums.LevelRankEnum
;
import
cn.wisenergy.model.enums.ManagerEnum
;
import
cn.wisenergy.model.vo.GetManagerProjectsVo
;
import
cn.wisenergy.service.WorkProjectService
;
import
cn.wisenergy.service.WorkUserService
;
import
cn.wisenergy.service.utils.UserRoleLevelUtils
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -69,7 +72,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
}
@Override
public
List
<
WorkProject
>
getNameByIds
(
List
<
Integer
>
ids
,
Integer
isConclusion
)
{
public
List
<
WorkProject
>
getNameByIds
(
List
<
Integer
>
ids
,
Integer
isConclusion
)
{
log
.
info
(
"WorkProjectServiceImpl[]getNameById[]input.param.ids:"
+
ids
);
if
(
CollectionUtils
.
isEmpty
(
ids
))
{
return
null
;
...
...
@@ -88,7 +91,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
* @return dto
*/
@Override
public
List
<
ProjectDto
>
getByManagerId
(
Integer
id
,
Integer
isConclusion
)
{
public
List
<
ProjectDto
>
getByManagerId
(
Integer
id
,
Integer
isConclusion
)
{
log
.
info
(
"WorkProjectServiceImpl[]getByManagerId[]input.param.id:"
+
id
);
if
(
null
==
id
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
...
...
@@ -103,7 +106,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
return
null
;
}
/
/ WorkProject转ProjectDto
/
**WorkProject转ProjectDto*/
private
List
<
ProjectDto
>
workProjectToDto
(
List
<
WorkProject
>
workProjects
)
{
List
<
ProjectDto
>
projectDtos
=
new
ArrayList
<>();
...
...
@@ -125,13 +128,13 @@ public class WorkProjectServiceImpl implements WorkProjectService {
}
WorkUser
user
=
workUserService
.
getById
(
userId
);
//普通用户
if
(
user
.
getLevel
().
equals
(
ManagerEnum
.
NOT_MANAGER
))
{
if
(
user
.
getLevel
().
equals
(
ManagerEnum
.
NOT_MANAGER
.
getCode
()
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
//存放项目列表
List
<
WorkProject
>
workProjects
;
//存放查询条件
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>(
10
);
//项目级别查询项目管理员为用户的项目
if
(
user
.
getLevel
().
equals
(
ManagerEnum
.
IS_PROJECT_DIRECTOR
.
getCode
()))
{
map
.
put
(
"managerId"
,
userId
);
...
...
@@ -147,7 +150,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
if
(
workCentre
==
null
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
CENTRE_NOT_FOUND
);
}
map
.
put
(
"centreId"
,
workCentre
.
getId
());
map
.
put
(
"centreId"
,
workCentre
.
getId
());
//获取中心下的部门信息
List
<
WorkDept
>
workDepts
=
workDeptMapper
.
getDeptByCondition
(
map
);
if
(
CollectionUtils
.
isEmpty
(
workDepts
))
{
...
...
@@ -162,4 +165,85 @@ public class WorkProjectServiceImpl implements WorkProjectService {
return
workProjects
;
}
@Override
public
PageInfo
getManagerProjects
(
GetManagerProjectsVo
gmpv
)
{
if
(
null
==
gmpv
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
// 判断user是否是管理
WorkUser
user
=
workUserService
.
getById
(
gmpv
.
getUserId
());
if
(
null
==
user
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
QUERY_USER_INFO_FAIL
);
}
// 判断用户权限
List
<
Integer
>
roles
=
UserRoleLevelUtils
.
getRole
(
gmpv
.
getUserId
());
if
(
roles
.
get
(
0
).
equals
(
ManagerEnum
.
NOT_MANAGER
.
getCode
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
List
<
Integer
>
levelIds
=
UserRoleLevelUtils
.
getlevelIds
(
roles
);
if
(
CollectionUtils
.
isEmpty
(
levelIds
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
LEAVE_JOB_USER
);
}
List
<
WorkLevel
>
workLevels
=
UserRoleLevelUtils
.
getlevelByIds
(
levelIds
);
if
(
CollectionUtils
.
isEmpty
(
workLevels
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
LEAVE_JOB_USER
);
}
for
(
WorkLevel
workLevel
:
workLevels
)
{
System
.
out
.
println
(
"workLevel = "
+
workLevel
);
}
Integer
rank
=
null
;
for
(
WorkLevel
level
:
workLevels
)
{
if
(
"项目/商机管理"
.
equals
(
level
.
getName
()))
{
rank
=
level
.
getRank
();
break
;
}
}
if
(
null
==
rank
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
LEAVE_JOB_USER
);
}
int
page
=
gmpv
.
getPage
()
==
null
?
1
:
gmpv
.
getPage
();
int
pageSize
=
gmpv
.
getPageSize
()
==
null
?
10
:
gmpv
.
getPageSize
();
int
isConclusion
=
gmpv
.
getIsConclusion
()
==
null
?
1
:
gmpv
.
getIsConclusion
();
int
type
=
gmpv
.
getType
()
==
null
?
1
:
gmpv
.
getType
();
PageHelper
.
startPage
(
page
,
pageSize
);
List
<
ManagerProjectsDto
>
managerProjectsDto
;
// 中心负责人
if
(
rank
.
equals
(
LevelRankEnum
.
CENTRAL_LEVEL
.
getRank
()))
{
List
<
Integer
>
deptIds
=
new
ArrayList
<>();
WorkCentre
workCentre
=
workCentreMapper
.
getByManagerId
(
user
.
getId
());
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>(
5
);
map
.
put
(
"centre_id"
,
workCentre
.
getId
());
List
<
WorkDept
>
workDeptList
=
workDeptMapper
.
getDeptByCondition
(
map
);
workDeptList
.
forEach
(
workDept
->
deptIds
.
add
(
workDept
.
getId
()));
managerProjectsDto
=
workProjectMapper
.
getManagerProjectsDto
(
gmpv
.
getUserId
(),
type
,
isConclusion
,
deptIds
);
return
returnPageInfo
(
managerProjectsDto
);
}
// 部门经理
if
(
rank
.
equals
(
LevelRankEnum
.
DEPARTMENT_LEVEL
.
getRank
()))
{
List
<
Integer
>
deptIds
=
new
ArrayList
<>();
deptIds
.
add
(
user
.
getDeptId
());
managerProjectsDto
=
workProjectMapper
.
getManagerProjectsDto
(
gmpv
.
getUserId
(),
type
,
isConclusion
,
deptIds
);
return
returnPageInfo
(
managerProjectsDto
);
}
// 项目经理
if
(
rank
.
equals
(
LevelRankEnum
.
PROJECT_LEVEL
.
getRank
()))
{
managerProjectsDto
=
workProjectMapper
.
getManagerProjectsDto
(
gmpv
.
getUserId
(),
type
,
isConclusion
,
null
);
return
returnPageInfo
(
managerProjectsDto
);
}
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
LEAVE_JOB_USER
);
}
private
PageInfo
returnPageInfo
(
List
<
ManagerProjectsDto
>
managerProjectsDto
)
{
if
(
CollectionUtils
.
isEmpty
(
managerProjectsDto
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
WORK_PROJECT_IS_NULL
);
}
PageInfo
pageInfo
=
new
PageInfo
<>(
managerProjectsDto
);
pageInfo
.
setList
(
managerProjectsDto
);
return
pageInfo
;
}
}
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
View file @
e31e92a8
...
...
@@ -13,6 +13,7 @@ import cn.wisenergy.model.enums.StatusEnum;
import
cn.wisenergy.service.*
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper
;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -208,7 +209,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 1.判断是否重复填报
isRepeat
(
workTimeOrders
);
// 2.每天工时累加不得超过八小时
timeNotEight
(
0
,
workTimeOrders
);
timeNotEight
(
workTimeOrders
);
int
totalTime
=
0
;
List
<
WorkTimeOrder
>
addList
=
new
ArrayList
<>();
for
(
WorkTimeOrderDto
dto
:
workTimeOrders
)
{
...
...
@@ -563,14 +564,14 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
projectManagerDtos
.
add
(
projectManagerDto
);
}
}
List
<
WorkType
>
W
orkTypes
=
workTypeService
.
getByManagerId
(
userId
);
List
<
WorkType
>
w
orkTypes
=
workTypeService
.
getByManagerId
(
userId
);
QueryWrapper
<
WorkTimeOrder
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
in
(
"type"
,
EXTERNAL_BUSINESS
,
INTERNAL_TRAINING
,
OTHER_NON_PROJECTS
);
wrapper
.
eq
(
"dept_id"
,
user
.
getDeptId
());
wrapper
.
in
(
"status"
,
COMPLETED
,
RE_SUBMIT
);
List
<
WorkTimeOrder
>
timeOrders
=
workTimeOrderMapper
.
selectList
(
wrapper
);
ProjectManagerDto
projectManagerDto1
;
for
(
WorkType
workType
:
W
orkTypes
)
{
for
(
WorkType
workType
:
w
orkTypes
)
{
projectManagerDto1
=
new
ProjectManagerDto
();
Integer
pendingApprovalTimes
=
0
;
for
(
WorkTimeOrder
timeOrder
:
timeOrders
)
{
...
...
@@ -628,6 +629,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// workTimeOrder TO WorkTimeOrderDto
@Override
public
List
<
WorkTimeOrderDto
>
wtoToWtod
(
List
<
WorkTimeOrder
>
workTimeOrders
)
{
List
<
WorkTimeOrderDto
>
dtos
=
new
ArrayList
<>();
for
(
WorkTimeOrder
workTimeOrder
:
workTimeOrders
)
{
...
...
@@ -649,21 +651,22 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 判断工单是否合法
private
void
isEmpty
(
WorkTimeOrderDto
dto
)
{
int
size
=
0
;
int
range
=
2
;
if
(
null
==
dto
.
getType
())
{
size
++;
}
if
(
null
==
dto
.
getWorkTime
()
||
0
==
dto
.
getWorkTime
())
{
size
++;
}
if
(
1
==
dto
.
getType
()
||
2
==
dto
.
getType
())
{
if
(
null
==
dto
.
getProjectId
())
if
(
1
==
dto
.
getType
()
||
range
==
dto
.
getType
())
{
if
(
null
==
dto
.
getProjectId
())
{
size
++;
}
}
if
(
null
==
dto
.
getDes
()
||
""
.
equals
(
dto
.
getDes
()))
{
size
++;
}
if
(
size
>=
2
)
{
if
(
size
>=
range
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INCOMPLETE_WORK_ORDER_INFORMATION
);
}
...
...
@@ -688,8 +691,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if
(
CollectionUtils
.
isEmpty
(
workProjects
))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
ItemType_Does_NotMatch
);
}
if
(
null
==
dto
.
getProjectId
())
if
(
null
==
dto
.
getProjectId
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
NO_JOIN_EVERY_PROJECT_PLASE_JION
);
}
}
for
(
ProjectTypeEnum
value
:
ProjectTypeEnum
.
values
())
{
if
(
value
.
getReviewer
()
==
2
)
{
...
...
@@ -704,7 +708,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
}
//3.每天工时累加不得超过八小时
private
void
timeNotEight
(
int
count
,
List
<
WorkTimeOrderDto
>
list
)
{
private
void
timeNotEight
(
List
<
WorkTimeOrderDto
>
list
)
{
int
count
=
0
;
for
(
WorkTimeOrderDto
workOrder
:
list
)
{
isEmpty
(
workOrder
);
count
=
count
+
workOrder
.
getWorkTime
();
...
...
@@ -728,16 +733,18 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
log
.
info
(
"WorkOrderServiceImpl[]pageExamine[]input.param.user:{},projectId:{},type:{},page:{},size:{},status:{}"
+
user
,
projectId
,
type
,
page
,
size
,
status
);
page
=
page
==
null
?
1
:
page
;
size
=
size
==
null
?
10
:
size
;
PageHelper
.
startPage
(
page
,
size
);
if
(
null
==
projectId
&&
null
==
type
)
{
List
<
ProjectManagerDto
>
projectManagerDto
=
getProjectDto
(
user
.
getId
()).
getProjectManagerDto
();
projectId
=
projectManagerDto
.
get
(
0
).
getId
();
type
=
projectManagerDto
.
get
(
0
).
getType
();
}
Page
<
WorkTimeOrderDto
>
pageHelper
=
PageHelper
.
startPage
(
page
,
size
);
List
<
WorkTimeOrder
>
workTimeOrders
=
null
;
Integer
level
=
user
.
getLevel
();
if
(
0
!=
level
)
{
Integer
deptId
=
user
.
getDeptId
();
workTimeOrders
=
workTimeOrderMapper
.
queryByPage
(
status
,
projectId
,
type
,
deptId
);
}
List
<
WorkTimeOrderDto
>
workTimeOrderDtos
=
new
ArrayList
<>();
List
<
WorkUser
>
workUsers
=
workUserMapper
.
selectList
(
new
QueryWrapper
<>());
...
...
@@ -758,7 +765,9 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
workTimeOrderDto
.
setTypeName
(
getTypeName
(
workTimeOrderDto
.
getType
()));
workTimeOrderDtos
.
add
(
workTimeOrderDto
);
}
return
new
PageInfo
<>(
workTimeOrderDtos
);
PageInfo
<
WorkTimeOrderDto
>
pageInfo
=
pageHelper
.
toPageInfo
();
pageInfo
.
setList
(
workTimeOrderDtos
);
return
pageInfo
;
}
...
...
@@ -797,7 +806,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
return
null
;
}
// 判断当天是否全部审批通过
/** 判断当天是否全部审批通过*/
@Override
public
int
statusYes
(
Integer
userId
,
Date
workDay
)
{
int
status
=
PROJECT
;
int
size
=
0
;
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/utils/UserRoleLevelUtils.java
0 → 100644
View file @
e31e92a8
package
cn
.
wisenergy
.
service
.
utils
;
import
cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM
;
import
cn.wisenergy.common.utils.exception.BaseCustomException
;
import
cn.wisenergy.mapper.WorkLevelMapper
;
import
cn.wisenergy.mapper.WorkRoleLevelMapper
;
import
cn.wisenergy.mapper.WorkRoleMapper
;
import
cn.wisenergy.mapper.WorkUserRoleMapper
;
import
cn.wisenergy.model.app.WorkLevel
;
import
cn.wisenergy.model.app.WorkRole
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.CollectionUtils
;
import
javax.annotation.PostConstruct
;
import
java.util.Comparator
;
import
java.util.List
;
@Component
public
class
UserRoleLevelUtils
{
@Autowired
private
WorkRoleMapper
workRoleMapper
;
@Autowired
private
WorkLevelMapper
workLevelMapper
;
@Autowired
private
WorkRoleLevelMapper
workRoleLevelMapper
;
@Autowired
private
WorkUserRoleMapper
workUserRoleMapper
;
public
static
UserRoleLevelUtils
utils
;
@PostConstruct
public
void
init
(){
utils
=
this
;
utils
.
workRoleMapper
=
workRoleMapper
;
utils
.
workLevelMapper
=
workLevelMapper
;
utils
.
workRoleLevelMapper
=
workRoleLevelMapper
;
utils
.
workUserRoleMapper
=
workUserRoleMapper
;
}
/**
* 获取用户的角色
* @param userId 用户id
* @return 角色id
*/
public
static
List
<
Integer
>
getRole
(
Integer
userId
)
{
if
(
null
==
userId
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
List
<
Integer
>
roleIds
=
utils
.
workUserRoleMapper
.
getRole
(
userId
);
for
(
Integer
roleId
:
roleIds
)
{
System
.
out
.
println
(
roleId
);
}
if
(
CollectionUtils
.
isEmpty
(
roleIds
))
{
roleIds
.
add
(
0
);
return
roleIds
;
}
roleIds
.
sort
(
new
Comparator
<
Integer
>()
{
@Override
public
int
compare
(
Integer
o1
,
Integer
o2
)
{
return
o2
-
o1
;
}
});
return
roleIds
;
}
/**
* 获取角色的所有权限
* @param roleIds 角色ids
* @return 权限
*/
public
static
List
<
Integer
>
getlevelIds
(
List
<
Integer
>
roleIds
)
{
if
(
CollectionUtils
.
isEmpty
(
roleIds
))
{
return
null
;
}
List
<
Integer
>
levelIds
=
utils
.
workRoleLevelMapper
.
getLevelIds
(
roleIds
);
if
(
CollectionUtils
.
isEmpty
(
levelIds
))
{
return
null
;
}
return
levelIds
;
}
public
static
List
<
WorkLevel
>
getlevelByIds
(
List
<
Integer
>
ids
)
{
if
(
CollectionUtils
.
isEmpty
(
ids
))
{
return
null
;
}
List
<
WorkLevel
>
workLevels
=
utils
.
workLevelMapper
.
selectBatchIds
(
ids
);
if
(
CollectionUtils
.
isEmpty
(
workLevels
))
{
return
null
;
}
workLevels
.
sort
(
new
Comparator
<
WorkLevel
>()
{
@Override
public
int
compare
(
WorkLevel
o1
,
WorkLevel
o2
)
{
return
o2
.
getId
()-
o1
.
getId
();
}
});
return
workLevels
;
}
/**
* 获取所有的角色
* @return List<WorkRole>
*/
public
static
List
<
WorkRole
>
getAllWorkRole
()
{
List
<
WorkRole
>
workRoles
=
utils
.
workRoleMapper
.
selectList
(
new
QueryWrapper
<>());
if
(
CollectionUtils
.
isEmpty
(
workRoles
))
{
return
null
;
}
return
workRoles
;
}
/**
* 获取所有的权限
* @return List<WorkLevel>
*/
public
static
List
<
WorkLevel
>
getAllWorkLevel
()
{
List
<
WorkLevel
>
workLevels
=
utils
.
workLevelMapper
.
selectList
(
new
QueryWrapper
<>());
if
(
CollectionUtils
.
isEmpty
(
workLevels
))
{
return
null
;
}
return
workLevels
;
}
}
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/WorkProjectController.java
View file @
e31e92a8
package
cn
.
wisenergy
.
web
.
admin
.
controller
.
app
;
import
cn.wisenergy.common.utils.exception.Result
;
import
cn.wisenergy.model.dto.ManagerProjectsDto
;
import
cn.wisenergy.model.vo.GetManagerProjectsVo
;
import
cn.wisenergy.service.WorkProjectService
;
import
cn.wisenergy.web.admin.controller.common.BaseController
;
import
com.github.pagehelper.PageInfo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
...
...
@@ -12,9 +23,21 @@ import org.springframework.web.bind.annotation.RestController;
**/
@RestController
@Api
(
tags
=
"项目模块"
)
@RequestMapping
(
value
=
"/work/project"
)
@Slf4j
public
class
WorkProjectController
{
public
class
WorkProjectController
extends
BaseController
{
@Autowired
private
WorkProjectService
workProjectService
;
@ApiOperation
(
value
=
"项目/商机基础信息"
,
notes
=
"项目/商机基础信息"
,
httpMethod
=
"POST"
)
@ApiImplicitParam
(
name
=
"gmpv"
,
value
=
"获取管理的项目/商机"
,
dataType
=
"GetManagerProjectsVo"
)
@PostMapping
(
value
=
"/getProject"
)
public
Result
<
PageInfo
>
getProject
(
@RequestBody
GetManagerProjectsVo
gmpv
)
{
log
.
info
(
"WorkProjectController[]getProject[]input.param.GetManagerProjectsVo:{}"
+
gmpv
);
PageInfo
<
ManagerProjectsDto
>
managerProjeets
=
workProjectService
.
getManagerProjects
(
gmpv
);
return
getResult
(
managerProjeets
);
}
...
...
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/WorkTimeOrderController.java
View file @
e31e92a8
...
...
@@ -112,7 +112,6 @@ public class WorkTimeOrderController extends BaseController {
throw
new
CustomException
(
RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
String
[]
split
=
ids
.
split
(
"\\,"
);
System
.
out
.
println
(
"我是传进来的数据:"
+
ids
);
Integer
[]
newIds
=
(
Integer
[])
ConvertUtils
.
convert
(
split
,
Integer
.
class
);
List
<
Integer
>
lists
=
new
ArrayList
<>(
Arrays
.
asList
(
newIds
));
System
.
out
.
println
(
lists
);
...
...
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