Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yanxuan-qc-change-system
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
yx-qc-change-flow
yanxuan-qc-change-system
Commits
5823db58
Commit
5823db58
authored
Nov 25, 2025
by
王志超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 新增“数据可见范围”选项
仅查看我跟进的工单(默认勾选):下方仅展示 “变更申请人/变更负责人/变更审批人=当前用户” 的变更工单
parent
397ca4b3
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
49 additions
and
2 deletions
+49
-2
ChangeFlowBiz.java
...om/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
+13
-0
ChangeRecord.java
.../netease/mail/yanxuan/change/dal/entity/ChangeRecord.java
+6
-0
ChangeSubFlowRecord.java
...e/mail/yanxuan/change/dal/entity/ChangeSubFlowRecord.java
+6
-0
ChangeFlowListQueryReq.java
...uan/change/dal/meta/model/req/ChangeFlowListQueryReq.java
+12
-0
ChangeRecordMapper.xml
.../src/main/resources/mybatis/mapper/ChangeRecordMapper.xml
+9
-1
ChangeFlowController.java
...l/yanxuan/change/web/controller/ChangeFlowController.java
+3
-1
No files found.
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
View file @
5823db58
...
...
@@ -385,10 +385,13 @@ public class ChangeFlowBiz {
String
subNodeId
=
subFlowDataDTO
.
getFlowMeta
().
getCurrNodeDataList
().
get
(
0
).
getNodeId
();
// 创建变更行动工单记录
// 变更行动工单审批人:第一次新建时就是行动人
String
approverJson
=
JSON
.
toJSONString
(
Collections
.
singletonList
(
execUserEmail
));
ChangeSubFlowRecord
subFlowRecord
=
ChangeSubFlowRecord
.
builder
()
.
changeRecordId
(
changeRecord
.
getId
())
.
subFlowId
(
subFlowId
)
.
subFlowNode
(
subNodeId
)
.
approver
(
approverJson
)
.
createTime
(
DateUtils
.
getCurrentTime
())
.
updateTime
(
DateUtils
.
getCurrentTime
())
.
build
();
...
...
@@ -1215,6 +1218,16 @@ public class ChangeFlowBiz {
public
ChangeFlowListVO
query
(
Integer
page
,
Integer
pageSize
,
ChangeFlowListQueryReq
changeFlowListQueryReq
)
{
log
.
info
(
"[query] page:{}, pageSize:{}, changeFlowListQueryReq:{}"
,
page
,
pageSize
,
JSON
.
toJSONString
(
changeFlowListQueryReq
));
// 数据可见范围:仅查看我跟进的工单(默认true)
if
(
changeFlowListQueryReq
.
getOnlyMyFollowed
())
{
String
currentUser
=
RequestLocalBean
.
getUid
();
if
(
StringUtils
.
isNotBlank
(
currentUser
))
{
changeFlowListQueryReq
.
setCurrentUser
(
currentUser
);
log
.
info
(
"[query] 数据可见范围:仅查看我跟进的工单, currentUser:{}"
,
currentUser
);
}
}
if
(
StringUtils
.
isNotBlank
(
changeFlowListQueryReq
.
getChangeExecUser
()))
{
List
<
Long
>
recordIds
=
changeFlowExecService
.
queryByExecUser
(
changeFlowListQueryReq
.
getChangeExecUser
());
changeFlowListQueryReq
.
setChangeRecordIds
(
recordIds
);
...
...
yanxuan-qc-change-system-dal/src/main/java/com/netease/mail/yanxuan/change/dal/entity/ChangeRecord.java
View file @
5823db58
...
...
@@ -168,6 +168,12 @@ public class ChangeRecord {
private
String
creator
;
/**
* 变更审批人(JSON格式,存储当前节点的审批人列表,用于查询过滤)
* 格式:["user1@example.com", "user2@example.com"]
*/
private
String
approver
;
/**
* 待办id
*/
private
Integer
todoId
;
...
...
yanxuan-qc-change-system-dal/src/main/java/com/netease/mail/yanxuan/change/dal/entity/ChangeSubFlowRecord.java
View file @
5823db58
...
...
@@ -52,6 +52,12 @@ public class ChangeSubFlowRecord {
private
String
subFlowNode
;
/**
* 变更行动工单审批人(JSON格式,存储审批人列表,第一次新建时就是行动人)
* 格式:["user1@example.com", "user2@example.com"]
*/
private
String
approver
;
/**
* 创建时间
*/
private
Long
createTime
;
...
...
yanxuan-qc-change-system-dal/src/main/java/com/netease/mail/yanxuan/change/dal/meta/model/req/ChangeFlowListQueryReq.java
View file @
5823db58
...
...
@@ -96,6 +96,18 @@ public class ChangeFlowListQueryReq {
*/
private
Long
flowId
;
/**
* 数据可见范围:仅查看我跟进的工单(默认true)
* true: 仅展示 "变更申请人/变更负责人/变更审批人=当前用户" 的变更工单
* false: 展示所有工单
*/
private
Boolean
onlyMyFollowed
;
/**
* 当前用户邮箱(用于数据可见范围过滤)
*/
private
String
currentUser
;
private
Long
limit
;
private
Long
offset
;
...
...
yanxuan-qc-change-system-dal/src/main/resources/mybatis/mapper/ChangeRecordMapper.xml
View file @
5823db58
...
...
@@ -31,6 +31,7 @@
<result
column=
"change_profit_amount"
jdbcType=
"VARCHAR"
property=
"changeProfitAmount"
/>
<result
column=
"remark"
jdbcType=
"VARCHAR"
property=
"remark"
/>
<result
column=
"creator"
jdbcType=
"VARCHAR"
property=
"creator"
/>
<result
column=
"approver"
jdbcType=
"VARCHAR"
property=
"approver"
/>
<result
column=
"create_time"
jdbcType=
"BIGINT"
property=
"createTime"
/>
<result
column=
"update_time"
jdbcType=
"BIGINT"
property=
"updateTime"
/>
</resultMap>
...
...
@@ -39,7 +40,7 @@
change_level, change_commander, change_department, participate_change_exec_department,
change_item, change_sku, change_supplier, change_reason, change_content, change_risk_desc, change_checking,
change_profit, change_profit_desc, change_confirm_result_time, `state`, cancel_reason,
change_result, create_source, create_supplier, change_result_desc, remark, creator, change_profit_amount,
change_result, create_source, create_supplier, change_result_desc, remark, creator,
approver,
change_profit_amount,
create_time, update_time
</sql>
...
...
@@ -95,6 +96,13 @@
${item}
</foreach>
</if>
<if
test=
"currentUser != null"
>
and (
creator = #{currentUser}
or change_commander = #{currentUser}
or approver like concat('%',#{currentUser},'%')
)
</if>
</where>
order by create_time desc
</select>
...
...
yanxuan-qc-change-system-web/src/main/java/com/netease/mail/yanxuan/change/web/controller/ChangeFlowController.java
View file @
5823db58
...
...
@@ -98,7 +98,8 @@ public class ChangeFlowController {
@RequestParam
(
name
=
"changeExecUser"
,
required
=
false
)
String
changeExecUser
,
@RequestParam
(
name
=
"startTime"
,
required
=
false
)
Long
startTime
,
@RequestParam
(
name
=
"endTime"
,
required
=
false
)
Long
endTime
,
@RequestParam
(
name
=
"flowId"
,
required
=
false
)
Long
flowId
)
{
@RequestParam
(
name
=
"flowId"
,
required
=
false
)
Long
flowId
,
@RequestParam
(
name
=
"onlyMyFollowed"
,
defaultValue
=
"true"
)
Boolean
onlyMyFollowed
)
{
ChangeFlowListQueryReq
changeFlowListQueryReq
=
new
ChangeFlowListQueryReq
();
changeFlowListQueryReq
.
setChangeExecUser
(
changeExecUser
);
changeFlowListQueryReq
.
setItemId
(
itemId
);
...
...
@@ -113,6 +114,7 @@ public class ChangeFlowController {
changeFlowListQueryReq
.
setStartTime
(
startTime
);
changeFlowListQueryReq
.
setEndTime
(
endTime
);
changeFlowListQueryReq
.
setFlowId
(
flowId
);
changeFlowListQueryReq
.
setOnlyMyFollowed
(
onlyMyFollowed
);
// QC端/协同中心可以查看所有,不加入过滤条件
if
(
CreateSourceEnum
.
QC
.
getType
().
equals
(
createSource
)
||
CreateSourceEnum
.
COLLABORATION_CENTER
.
getType
().
equals
(
createSource
))
{
...
...
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