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
c85b3042
Commit
c85b3042
authored
Mar 26, 2021
by
cq990612
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化代码结构
parent
c5d914e4
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
64 additions
and
27 deletions
+64
-27
WorkOrderChangeMapper.xml
...apper/src/main/resources/mapper/WorkOrderChangeMapper.xml
+4
-3
WorkTimeOrderMapper.xml
...-mapper/src/main/resources/mapper/WorkTimeOrderMapper.xml
+5
-5
OrderChangePageDto.java
.../main/java/cn/wisenergy/model/dto/OrderChangePageDto.java
+3
-0
WorkOrderChangeLogDto.java
...in/java/cn/wisenergy/model/dto/WorkOrderChangeLogDto.java
+3
-0
WorkOrderChangeImpl.java
...n/java/cn/wisenergy/service/impl/WorkOrderChangeImpl.java
+1
-1
WorkTimeOrderServiceImpl.java
...a/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
+47
-17
WorkTimeOrderController.java
...rgy/web/admin/controller/app/WorkTimeOrderController.java
+1
-1
No files found.
wisenergy-mapper/src/main/resources/mapper/WorkOrderChangeMapper.xml
View file @
c85b3042
...
...
@@ -13,6 +13,7 @@
LEFT JOIN (SELECT id,name FROM work_user ) u1 ON u1.id =oc.operator_id
LEFT JOIN (SELECT id,name FROM work_user ) u2 ON u2.id =oc.user_id
<where>
<if
test=
"projectIds !=null and projectIds.size()>0"
>
<if
test=
"startDate !=null"
>
AND oc.change_date >= #{startDate}
</if>
...
...
@@ -23,20 +24,20 @@
AND (u2.name like concat('%',#{userName},'%')
OR u1.name like concat('%',#{userName},'%'))
</if>
<if
test=
"projectIds !=null and projectIds.size>0"
>
AND oc.project_id IN
<foreach
collection=
"projectIds"
item=
"projectId"
separator=
","
open=
"("
close=
")"
>
#{projectId}
</foreach>
</if>
<if
test=
"types !=null and types.size>0"
>
<if
test=
"types !=null and types.size
()
>0"
>
OR (oc.type IN
<foreach
collection=
"types"
item=
"type"
separator=
","
open=
"("
close=
")"
>
#{type}
</foreach>
<if
test=
"deptIds !=null and deptIds.size>0"
>
<if
test=
"deptIds !=null and deptIds.size
()
>0"
>
AND oc.dept_id IN
<foreach
collection=
"deptIds"
item=
"deptId"
separator=
","
open=
"("
close=
")"
>
#{deptId}
...
...
wisenergy-mapper/src/main/resources/mapper/WorkTimeOrderMapper.xml
View file @
c85b3042
...
...
@@ -465,7 +465,7 @@
</select>
<select
id=
"getOrderChangePage"
resultType=
"cn.wisenergy.model.dto.OrderChangePageDto"
>
select o.project_id,p.project_name,u.name 'user_name',o.work_day,
select o.
work_id,o.
project_id,p.project_name,u.name 'user_name',o.work_day,
o.work_time,t.name 'type_name',o.des,o.status
from work_time_order o LEFT JOIN work_type t on o.type = t.id
LEFT JOIN work_user u on o.user_id = u.id
...
...
@@ -474,11 +474,11 @@
<if
test=
"projectId !=null"
>
AND o.project_id = #{projectId}
</if>
<if
test=
"type !=null "
>
<if
test=
"type !=null
and type>2
"
>
AND o.type = #{type}
</if
>
<if
test=
"deptId !=null"
>
AND o.dept_id = #{deptId}
<if
test=
"deptId !=null"
>
AND o.dept_id = #{deptId}
</if>
</if>
<if
test=
"startDate !=null"
>
AND o.work_day >= #{startDate}
...
...
wisenergy-model/src/main/java/cn/wisenergy/model/dto/OrderChangePageDto.java
View file @
c85b3042
...
...
@@ -12,6 +12,9 @@ import java.util.Date;
@Data
public
class
OrderChangePageDto
{
private
Integer
workId
;
private
Integer
projectId
;
private
String
projectName
;
...
...
wisenergy-model/src/main/java/cn/wisenergy/model/dto/WorkOrderChangeLogDto.java
View file @
c85b3042
...
...
@@ -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.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -18,6 +19,7 @@ public class WorkOrderChangeLogDto {
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
name
=
"changeDate"
,
value
=
"变更日期"
)
private
Date
changeDate
;
...
...
@@ -36,6 +38,7 @@ public class WorkOrderChangeLogDto {
@ApiModelProperty
(
name
=
"type"
,
value
=
"工时类型"
)
private
Integer
type
;
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
name
=
"workDay"
,
value
=
"工单日期"
)
private
Date
workDay
;
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkOrderChangeImpl.java
View file @
c85b3042
...
...
@@ -93,7 +93,7 @@ public class WorkOrderChangeImpl implements WorkOrderChangeService {
deptIds
.
add
(
vo
.
getDeptId
());
}
}
BeanUtils
.
copyProperties
(
mapperDto
,
v
o
);
BeanUtils
.
copyProperties
(
vo
,
mapperDt
o
);
mapperDto
.
setProjectIds
(
projectIds
);
mapperDto
.
setDeptIds
(
new
ArrayList
<>(
deptIds
));
mapperDto
.
setTypes
(
new
ArrayList
<>(
types
));
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/impl/WorkTimeOrderServiceImpl.java
View file @
c85b3042
...
...
@@ -4,10 +4,7 @@ import cn.wisenergy.common.utils.DateUtil;
import
cn.wisenergy.common.utils.DateUtils
;
import
cn.wisenergy.common.utils.exception.BASE_RESP_CODE_ENUM
;
import
cn.wisenergy.common.utils.exception.BaseCustomException
;
import
cn.wisenergy.mapper.WorkOrderChangeMapper
;
import
cn.wisenergy.mapper.WorkProjectMapper
;
import
cn.wisenergy.mapper.WorkTimeOrderMapper
;
import
cn.wisenergy.mapper.WorkUserMapper
;
import
cn.wisenergy.mapper.*
;
import
cn.wisenergy.model.app.*
;
import
cn.wisenergy.model.dto.*
;
import
cn.wisenergy.model.enums.LevelEnum
;
...
...
@@ -1146,14 +1143,20 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
log
.
info
(
"WorkTimeOrderServiceImpl[]updateOrderChange[]input.param.OrderChangeVo:{}"
+
vo
);
// 1.判断参数是否为空
OrderChangeVoIsNull
(
vo
,
true
);
List
<
WorkTimeOrder
>
workTimeOrders
=
getByDay
(
vo
.
getUserId
(),
vo
.
getWorkDay
());
// 2.判断是否超过8小时
// 2.获取原工单
WorkTimeOrder
workTimeOrderOld
=
workTimeOrderMapper
.
selectById
(
vo
.
getWorkId
());
List
<
WorkTimeOrder
>
workTimeOrders
=
getByDay
(
workTimeOrderOld
.
getUserId
(),
vo
.
getWorkDay
());
vo
.
setUserId
(
workTimeOrderOld
.
getUserId
());
vo
.
setProjectId
(
workTimeOrderOld
.
getProjectId
());
vo
.
setType
(
workTimeOrderOld
.
getType
());
// 3.判断是否超过8小时
int
totalTime
=
vo
.
getWorkTime
();
if
(!
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
workTimeOrders
.
removeIf
(
workTimeOrder
->
workTimeOrder
.
getWorkId
().
equals
(
vo
.
getWorkId
()));
}
totalTime
=
timeNotEight
(
totalTime
,
workTimeOrders
);
// 3.判断工时类型是否重复
System
.
out
.
println
(
"3333333333"
);
// 4.判断工时类型是否重复
List
<
WorkTimeOrder
>
workTimeOrderList
=
new
ArrayList
<>(
8
);
if
(!
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
workTimeOrderList
.
addAll
(
workTimeOrders
);
...
...
@@ -1162,10 +1165,8 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
BeanUtils
.
copyProperties
(
vo
,
workTimeOrder
);
workTimeOrderList
.
add
(
workTimeOrder
);
isRepeat
(
workTimeOrderList
);
// 4.获取原工单
WorkTimeOrder
workTimeOrderOld
=
workTimeOrderMapper
.
selectById
(
vo
.
getWorkId
());
System
.
out
.
println
(
workTimeOrderOld
);
System
.
out
.
println
(
"4444444444"
);
// 5.修改workTimeOrder工单
WorkTimeOrder
timeOrder
=
getOrderChangeWorkTimeOrder
(
vo
,
workTimeOrder
);
int
i
=
workTimeOrderMapper
.
updateById
(
timeOrder
);
...
...
@@ -1205,14 +1206,39 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
if
(!
UserRoleLevelUtils
.
isManagerLevel
(
operator
,
LevelEnum
.
WORKORDER_CHANGEMANAGEMENT
.
getLevelName
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
// 查询原工单
WorkTimeOrder
workTimeOrder
=
workTimeOrderMapper
.
selectById
(
workId
);
// 原工单当天的
List
<
WorkTimeOrder
>
workTimeOrders
=
getByDay
(
workTimeOrder
.
getUserId
(),
workTimeOrder
.
getWorkDay
());
workTimeOrders
.
removeIf
(
workTimeOrder1
->
workTimeOrder1
.
getWorkId
().
equals
(
workTimeOrder
.
getWorkId
()));
OrderChangeVo
vo
=
new
OrderChangeVo
();
BeanUtils
.
copyProperties
(
vo
,
workTimeOrder
);
BeanUtils
.
copyProperties
(
workTimeOrder
,
vo
);
vo
.
setOperatorId
(
operator
);
// 删除记录
workTimeOrderMapper
.
deleteById
(
workId
);
if
(!
CollectionUtils
.
isEmpty
(
workTimeOrders
))
{
int
i
=
statusYes
(
workTimeOrder
.
getUserId
(),
workTimeOrder
.
getWorkDay
());
int
totalTime
=
0
;
for
(
WorkTimeOrder
timeOrder
:
workTimeOrders
)
{
totalTime
+=
timeOrder
.
getWorkTime
();
}
WorkCollect
workCollect
=
new
WorkCollect
();
workCollect
.
setUserId
(
workTimeOrder
.
getUserId
()).
setWorkDay
(
workTimeOrder
.
getWorkDay
()).
setStatus
(
i
).
setTotalTime
(
totalTime
);
Boolean
update
=
workCollectService
.
update
(
workCollect
);
if
(!
update
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
UPDATE_DATA_FAIL
);
}
}
else
{
Boolean
aBoolean
=
workCollectService
.
deleteByUserIdAndWorkDay
(
workTimeOrder
.
getUserId
(),
workTimeOrder
.
getWorkDay
());
if
(!
aBoolean
)
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
FAILEDTO_DELETE_DATA
);
}
}
// 增加记录
addWorkOrderChange
(
OrderChangeEnum
.
CREATE
.
getContent
(),
vo
);
...
...
@@ -1283,18 +1309,22 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
// 判断新增的工单变更是否为空
private
void
OrderChangeVoIsNull
(
OrderChangeVo
vo
,
Boolean
workIdIsNeed
)
{
if
(
null
==
vo
||
null
==
vo
.
getUserId
()
||
(
null
==
vo
.
getProjectId
()
&&
null
==
vo
.
getType
())
||
null
==
vo
.
getWorkDay
()
||
null
==
vo
.
getWorkTime
()
||
StringUtils
.
isBlank
(
vo
.
getDes
())
||
StringUtils
.
isBlank
(
vo
.
getChangeReason
()))
{
System
.
out
.
println
(
vo
);
if
(
null
==
vo
||
null
==
vo
.
getOperatorId
()
||
null
==
vo
.
getWorkDay
()
||
null
==
vo
.
getWorkTime
()
||
StringUtils
.
isBlank
(
vo
.
getDes
())
||
StringUtils
.
isBlank
(
vo
.
getChangeReason
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
if
(!
UserRoleLevelUtils
.
isManagerLevel
(
vo
.
getOperatorId
(),
LevelEnum
.
WORKORDER_CHANGEMANAGEMENT
.
getLevelName
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN
);
}
if
(
workIdIsNeed
&&
null
==
vo
.
getWorkId
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
else
if
(
null
==
vo
.
getUserId
())
{
System
.
out
.
println
(
"1111111"
);
if
(
workIdIsNeed
)
{
if
(
null
==
vo
.
getWorkId
())
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
}
else
if
(
null
==
vo
.
getUserId
()
||(
null
==
vo
.
getProjectId
()
&&
null
==
vo
.
getType
()))
{
throw
new
BaseCustomException
(
BASE_RESP_CODE_ENUM
.
INPUT_PARAM_IS_NULL
);
}
System
.
out
.
println
(
"22222222"
);
Date
workDay
=
vo
.
getWorkDay
();
Date
date
=
new
Date
();
if
(
workDay
.
compareTo
(
date
)
>
0
)
{
...
...
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/WorkTimeOrderController.java
View file @
c85b3042
...
...
@@ -175,7 +175,7 @@ public class WorkTimeOrderController extends BaseController {
}
@ApiOperation
(
value
=
"工单变更分页"
,
notes
=
"工单变更分页"
,
httpMethod
=
"POST"
)
@ApiOperation
(
value
=
"工单变更
管理
分页"
,
notes
=
"工单变更分页"
,
httpMethod
=
"POST"
)
@ApiImplicitParam
(
name
=
"vo"
,
value
=
"工单变更分页条件Vo"
,
dataType
=
"OrderChangeManagerVo"
)
@PostMapping
(
"/orderChangePage"
)
public
Result
orderChangePage
(
@RequestBody
OrderChangeManagerVo
vo
)
{
...
...
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