Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
governWorkOrder
Overview
Overview
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
xieshaohua
governWorkOrder
Commits
188cb5db
Commit
188cb5db
authored
Sep 23, 2025
by
xieshaohua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[修改]流程环节修改
parent
2e5ed1a1
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
118 additions
and
7 deletions
+118
-7
WorkOrderStageVO.java
...keymobile/governworkorder/common/bo/WorkOrderStageVO.java
+55
-0
OrderProcessStageTypeEnum.java
...overnworkorder/common/type/OrderProcessStageTypeEnum.java
+4
-2
WorkOrderApi.java
.../com/keymobile/governworkorder/core/api/WorkOrderApi.java
+7
-1
WorkOrderService.java
...mobile/governworkorder/core/service/WorkOrderService.java
+3
-0
WorkOrderServiceImpl.java
...vernworkorder/core/service/impl/WorkOrderServiceImpl.java
+49
-4
No files found.
common/src/main/java/com/keymobile/governworkorder/common/bo/WorkOrderStageVO.java
0 → 100644
View file @
188cb5db
package
com
.
keymobile
.
governworkorder
.
common
.
bo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
/**
* @author xiesh
* @version 1.0.0
* @date 2025/8/14
* @desc 流程审批信息
*/
@Data
@Schema
(
description
=
"流程"
)
public
class
WorkOrderStageVO
{
@Schema
(
description
=
"id"
)
private
String
name
;
/**
* 处理人账号
*/
@Schema
(
description
=
"处理人账号"
)
private
String
userName
;
/**
* 处理人展示名
*/
@Schema
(
description
=
"处理人展示名"
)
private
String
userDname
;
/**
* 创建时间
*/
@Schema
(
description
=
"createTime"
)
private
String
createTime
;
/**
* 是否当前流程
*/
@Schema
(
description
=
"是否当前流程"
)
private
boolean
isCurrent
;
/**
* 是否已经处理
*/
@Schema
(
description
=
"是否已经处理"
)
private
boolean
isHandle
;
}
common/src/main/java/com/keymobile/governworkorder/common/type/OrderProcessStageTypeEnum.java
View file @
188cb5db
...
@@ -11,8 +11,8 @@ public enum OrderProcessStageTypeEnum {
...
@@ -11,8 +11,8 @@ public enum OrderProcessStageTypeEnum {
PROCESS_CREATE
(
"发起"
),
PROCESS_CREATE
(
"发起"
),
PROCESS_HANDLER
(
"处理"
),
PROCESS_HANDLER
(
"处理"
),
PROCESS_APPROVER
(
"审批"
),
PROCESS_APPROVER
(
"审批"
),
PROCESS_DONE
(
"关闭"
)
,
PROCESS_DONE
(
"关闭"
)
;
PROCESS_INVALIDATE
(
"失效"
);
//
PROCESS_INVALIDATE("失效");
public
String
getName
()
{
public
String
getName
()
{
return
name
;
return
name
;
...
@@ -32,4 +32,6 @@ public enum OrderProcessStageTypeEnum {
...
@@ -32,4 +32,6 @@ public enum OrderProcessStageTypeEnum {
this
.
name
=
name
;
this
.
name
=
name
;
}
}
}
}
core/src/main/java/com/keymobile/governworkorder/core/api/WorkOrderApi.java
View file @
188cb5db
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.api;
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.api;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderStageVO
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
import
com.keymobile.governworkorder.core.remote.user.User
;
import
com.keymobile.governworkorder.core.remote.user.User
;
...
@@ -10,7 +11,6 @@ import com.keymobile.governworkorder.core.service.WorkOrderService;
...
@@ -10,7 +11,6 @@ import com.keymobile.governworkorder.core.service.WorkOrderService;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.Page
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
...
@@ -112,4 +112,10 @@ public class WorkOrderApi {
...
@@ -112,4 +112,10 @@ public class WorkOrderApi {
return
workOrderService
.
findUser
(
types
,
dataRoleIds
,
match
,
userGroupIds
);
return
workOrderService
.
findUser
(
types
,
dataRoleIds
,
match
,
userGroupIds
);
}
}
@GetMapping
(
value
=
"/stages"
)
@Operation
(
summary
=
"流程流转"
,
description
=
""
)
List
<
WorkOrderStageVO
>
stages
(
@RequestParam
String
workOrderId
){
return
workOrderService
.
stages
(
workOrderId
);
}
}
}
core/src/main/java/com/keymobile/governworkorder/core/service/WorkOrderService.java
View file @
188cb5db
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.service;
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.service;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderStageVO
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
import
com.keymobile.governworkorder.core.remote.user.User
;
import
com.keymobile.governworkorder.core.remote.user.User
;
...
@@ -41,4 +42,6 @@ public interface WorkOrderService {
...
@@ -41,4 +42,6 @@ public interface WorkOrderService {
List
<
User
>
findUser
(
String
[]
types
,
Long
[]
dataRoleIds
,
String
match
,
Long
[]
userGroupIds
);
List
<
User
>
findUser
(
String
[]
types
,
Long
[]
dataRoleIds
,
String
match
,
Long
[]
userGroupIds
);
List
<
WorkOrderStageVO
>
stages
(
String
workOrderId
);
}
}
core/src/main/java/com/keymobile/governworkorder/core/service/impl/WorkOrderServiceImpl.java
View file @
188cb5db
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.service.impl;
...
@@ -3,6 +3,7 @@ package com.keymobile.governworkorder.core.service.impl;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderDataVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderInfoVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderProcessVO
;
import
com.keymobile.governworkorder.common.bo.WorkOrderStageVO
;
import
com.keymobile.governworkorder.common.type.*
;
import
com.keymobile.governworkorder.common.type.*
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrdeQueryDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
import
com.keymobile.governworkorder.core.dto.WorkOrderConfirmDataDto
;
...
@@ -24,6 +25,7 @@ import org.springframework.beans.factory.annotation.Value;
...
@@ -24,6 +25,7 @@ import org.springframework.beans.factory.annotation.Value;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.domain.Sort
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.core.query.Query
;
...
@@ -34,9 +36,7 @@ import org.springframework.util.CollectionUtils;
...
@@ -34,9 +36,7 @@ import org.springframework.util.CollectionUtils;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.ZoneId
;
import
java.time.ZoneId
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.regex.Pattern
;
import
java.util.regex.Pattern
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -401,11 +401,12 @@ public class WorkOrderServiceImpl implements WorkOrderService {
...
@@ -401,11 +401,12 @@ public class WorkOrderServiceImpl implements WorkOrderService {
mongoTemplate
.
save
(
process
);
mongoTemplate
.
save
(
process
);
mongoTemplate
.
save
(
workOrder
);
mongoTemplate
.
save
(
workOrder
);
}
else
{
}
else
{
//驳回 工单完成,但是发失效消息
process
.
setNextUserName
(
null
);
process
.
setNextUserName
(
null
);
process
.
setNextUserDname
(
null
);
process
.
setNextUserDname
(
null
);
workOrder
.
setNextUserName
(
null
);
workOrder
.
setNextUserName
(
null
);
workOrder
.
setNextUserDname
(
null
);
workOrder
.
setNextUserDname
(
null
);
workOrder
.
setStage
(
OrderProcessStageTypeEnum
.
PROCESS_
INVALIDAT
E
.
getName
());
workOrder
.
setStage
(
OrderProcessStageTypeEnum
.
PROCESS_
DON
E
.
getName
());
workOrder
.
setStatus
(
OrderStatusTypeEnum
.
STATUS_INVALIDATE
.
getName
());
workOrder
.
setStatus
(
OrderStatusTypeEnum
.
STATUS_INVALIDATE
.
getName
());
mongoTemplate
.
save
(
process
);
mongoTemplate
.
save
(
process
);
mongoTemplate
.
save
(
workOrder
);
mongoTemplate
.
save
(
workOrder
);
...
@@ -453,6 +454,50 @@ public class WorkOrderServiceImpl implements WorkOrderService {
...
@@ -453,6 +454,50 @@ public class WorkOrderServiceImpl implements WorkOrderService {
}
}
@Override
public
List
<
WorkOrderStageVO
>
stages
(
String
workOrderId
)
{
List
<
WorkOrderStageVO
>
result
=
new
ArrayList
<>();
WorkOrderInfo
workOrder
=
mongoTemplate
.
findById
(
workOrderId
,
WorkOrderInfo
.
class
);
Assert
.
notNull
(
workOrder
,
"找不到对应工单"
);
String
stage
=
workOrder
.
getStage
();
Query
query
=
Query
.
query
(
Criteria
.
where
(
"workOrderId"
).
is
(
workOrderId
));
query
.
with
(
Sort
.
by
(
Sort
.
Direction
.
DESC
,
"createTime"
));
List
<
WorkOrderProcess
>
processList
=
mongoTemplate
.
find
(
query
,
WorkOrderProcess
.
class
);
boolean
handle
=
true
;
for
(
OrderProcessStageTypeEnum
item
:
OrderProcessStageTypeEnum
.
values
())
{
WorkOrderStageVO
vo
=
new
WorkOrderStageVO
();
String
itemName
=
item
.
getName
();
vo
.
setName
(
itemName
);
if
(
StringUtils
.
equals
(
stage
,
itemName
))
{
vo
.
setUserName
(
workOrder
.
getNextUserName
());
vo
.
setUserDname
(
workOrder
.
getNextUserDname
());
vo
.
setCurrent
(
true
);
vo
.
setHandle
(
false
);
handle
=
false
;
}
else
if
(
handle
)
{
vo
.
setCurrent
(
false
);
vo
.
setHandle
(
handle
);
if
(!
CollectionUtils
.
isEmpty
(
processList
))
{
WorkOrderProcess
process
=
processList
.
stream
().
filter
(
e
->
StringUtils
.
equals
(
e
.
getStage
(),
itemName
))
.
findFirst
().
orElse
(
null
);
if
(
process
!=
null
)
{
vo
.
setUserName
(
process
.
getUserName
());
vo
.
setUserDname
(
process
.
getUserDname
());
vo
.
setCreateTime
(
process
.
getCreateTime
());
}
}
}
else
{
vo
.
setCurrent
(
false
);
vo
.
setHandle
(
handle
);
}
result
.
add
(
vo
);
}
return
result
;
}
private
void
validateAndFillWorkOrder
(
WorkOrderInfo
workOrder
)
{
private
void
validateAndFillWorkOrder
(
WorkOrderInfo
workOrder
)
{
if
(
StringUtils
.
isBlank
(
workOrder
.
getHandleUserName
()))
{
if
(
StringUtils
.
isBlank
(
workOrder
.
getHandleUserName
()))
{
...
...
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