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
37b687d3
Commit
37b687d3
authored
Dec 02, 2025
by
王志超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 组装主工单商品信息
parent
6ae3cc04
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
71 additions
and
65 deletions
+71
-65
ChangeFlowBiz.java
...om/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
+71
-65
No files found.
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
View file @
37b687d3
...
...
@@ -1022,16 +1022,85 @@ public class ChangeFlowBiz {
// 获取附件
List
<
ChangeFlowFile
>
changeFileList
=
changeFileService
.
getChangeFileList
(
changeRecord
.
getId
());
changeFlowVO
.
setFiles
(
changeFileList
);
this
.
buildItemBasicInfoList
(
changeRecord
,
changeFlowVO
);
changeFlowVO
.
setChangeState
(
changeRecord
.
getState
());
changeFlowVO
.
setChangeStateDesc
(
ChangeStatusEnum
.
getDescByStatus
(
changeRecord
.
getState
()));
changeFlowVO
.
setChangeCreator
(
changeRecord
.
getCreator
());
List
<
ChangeFlowExecVO
>
changeFlowExecRecord
=
changeFlowExecService
.
getChangeFlowExecRecord
(
changeRecord
.
getId
());
try
{
Set
<
String
>
userEmail
=
changeFlowExecRecord
.
stream
().
map
(
ChangeFlowExecVO:
:
getChangeExecUserEmail
).
collect
(
Collectors
.
toSet
());
AjaxResponse
<
List
<
IusUserInfoRsp
>>
userListInfo
=
iusRpcService
.
queryUserListInfo
(
UserQueryDTO
.
builder
().
uids
(
new
ArrayList
<>(
userEmail
)).
build
());
List
<
IusUserInfoRsp
>
data
=
userListInfo
.
getData
();
changeFlowExecRecord
.
forEach
(
i
->
{
Optional
<
IusUserInfoRsp
>
anyExeUser
=
data
.
stream
().
filter
(
u
->
u
.
getUid
().
equals
(
i
.
getChangeExecUserEmail
())).
findAny
();
if
(
anyExeUser
.
isPresent
())
{
i
.
setChangeExecUserName
(
anyExeUser
.
get
().
getName
());
}
else
{
// 批量查询没查到的人名,通过全量查询单独再查一次
IusUserInfoRsp
user
=
iusService
.
queryUserInfo
(
i
.
getChangeExecUserEmail
());
if
(
user
!=
null
&&
StringUtils
.
isNotBlank
(
user
.
getName
()))
{
i
.
setChangeExecUserName
(
user
.
getName
());
}
}
});
}
catch
(
Exception
ex
)
{
log
.
error
(
"query user info has ex"
,
ex
);
}
changeFlowVO
.
setChangeExecProjectList
(
changeFlowExecRecord
);
changeFlowVO
.
setTopoId
(
ChangeFlowEnum
.
NEW_CHANGE_FLOW
.
getTopoId
());
try
{
Set
<
String
>
commanderList
=
new
HashSet
<>();
commanderList
.
add
(
changeRecord
.
getChangeCommander
());
commanderList
.
add
(
changeRecord
.
getCreator
());
IusDepartmentReq
iusDepartmentReq
=
new
IusDepartmentReq
();
iusDepartmentReq
.
setUids
(
new
ArrayList
<>(
commanderList
));
iusDepartmentReq
.
setIcac
(
true
);
HashMap
<
String
,
List
<
SecondaryDepartments
>>
orgMap
=
iusService
.
queryDepartment
(
iusDepartmentReq
);
List
<
SecondaryDepartments
>
commander
=
orgMap
.
get
(
changeRecord
.
getChangeCommander
());
List
<
SecondaryDepartments
>
creator
=
orgMap
.
get
(
changeRecord
.
getCreator
());
if
(!
CollectionUtils
.
isEmpty
(
commander
))
{
Optional
<
SecondaryDepartments
>
anyOrg
=
commander
.
stream
().
filter
(
o
->
o
.
getOrgPosLevel
()
==
97
).
findAny
();
String
orgName
=
"无三级部门"
;
if
(
anyOrg
.
isPresent
())
{
orgName
=
anyOrg
.
get
().
getOrgPosName
();
}
changeFlowVO
.
setChangeCommanderView
(
commander
.
get
(
0
).
getUserName
()
+
"("
+
orgName
+
")"
);
}
// 非同舟端展示人名及三级部门名称
if
(!
CreateSourceEnum
.
TONG_ZHOU
.
getType
().
equals
(
changeRecord
.
getCreateSource
())
&&
!
CollectionUtils
.
isEmpty
(
creator
))
{
Optional
<
SecondaryDepartments
>
anyOrg
=
creator
.
stream
().
filter
(
o
->
o
.
getOrgPosLevel
()
==
97
).
findAny
();
String
orgName
=
"无三级部门"
;
if
(
anyOrg
.
isPresent
())
{
orgName
=
anyOrg
.
get
().
getOrgPosName
();
}
changeFlowVO
.
setChangeCreatorView
(
creator
.
get
(
0
).
getUserName
()
+
"("
+
orgName
+
")"
);
}
// 同舟端发起变更,发起人展示供应商id
if
(
CreateSourceEnum
.
TONG_ZHOU
.
getType
().
equals
(
changeRecord
.
getCreateSource
()))
{
changeFlowVO
.
setChangeCreatorView
(
changeRecord
.
getCreateSupplier
());
}
}
catch
(
Exception
ex
)
{
log
.
error
(
"add org has ex"
,
ex
);
}
return
changeFlowVO
;
}
private
void
buildItemBasicInfoList
(
ChangeRecord
changeRecord
,
ChangeFlowVO
changeFlowVO
)
{
String
itemJsonStr
=
changeRecord
.
getChangeItem
();
if
(
StringUtils
.
isBlank
(
itemJsonStr
))
{
changeFlowVO
.
setItemBasicInfoList
(
null
);
}
else
{
String
changeSkuJson
=
changeRecord
.
getChangeSku
();
if
(
StringUtils
.
isNotBlank
(
itemJsonStr
))
{
List
<
ItemVO
>
itemList
=
JSON
.
parseArray
(
itemJsonStr
,
ItemVO
.
class
);
List
<
ItemSkuVO
>
itemSkuVOS
=
new
ArrayList
<>();
if
(
StringUtils
.
isNotBlank
(
changeSkuJson
))
{
itemSkuVOS
.
addAll
(
JSON
.
parseArray
(
changeSkuJson
,
ItemSkuVO
.
class
));
}
itemList
.
forEach
(
i
->
{
Optional
<
ItemSkuVO
>
anySkuInfo
=
itemSkuVOS
.
stream
().
filter
(
s
->
s
.
getItemId
().
equals
(
i
.
getItemId
())).
findAny
();
Optional
<
ItemSkuVO
>
anySkuInfo
=
itemSkuVOS
.
stream
().
filter
(
s
->
s
.
getItemId
().
equals
(
i
.
getItemId
()))
.
findAny
();
if
(
anySkuInfo
.
isPresent
())
{
i
.
setSkuIds
(
anySkuInfo
.
get
().
getSkuId
());
}
...
...
@@ -1107,70 +1176,7 @@ public class ChangeFlowBiz {
}).
collect
(
Collectors
.
toList
());
changeFlowVO
.
setItemBasicInfoList
(
itemBasicInfoVOS
);
}
}
else
{
changeFlowVO
.
setItemBasicInfoList
(
null
);
}
changeFlowVO
.
setChangeState
(
changeRecord
.
getState
());
changeFlowVO
.
setChangeStateDesc
(
ChangeStatusEnum
.
getDescByStatus
(
changeRecord
.
getState
()));
changeFlowVO
.
setChangeCreator
(
changeRecord
.
getCreator
());
List
<
ChangeFlowExecVO
>
changeFlowExecRecord
=
changeFlowExecService
.
getChangeFlowExecRecord
(
changeRecord
.
getId
());
try
{
Set
<
String
>
userEmail
=
changeFlowExecRecord
.
stream
().
map
(
ChangeFlowExecVO:
:
getChangeExecUserEmail
).
collect
(
Collectors
.
toSet
());
AjaxResponse
<
List
<
IusUserInfoRsp
>>
userListInfo
=
iusRpcService
.
queryUserListInfo
(
UserQueryDTO
.
builder
().
uids
(
new
ArrayList
<>(
userEmail
)).
build
());
List
<
IusUserInfoRsp
>
data
=
userListInfo
.
getData
();
changeFlowExecRecord
.
forEach
(
i
->
{
Optional
<
IusUserInfoRsp
>
anyExeUser
=
data
.
stream
().
filter
(
u
->
u
.
getUid
().
equals
(
i
.
getChangeExecUserEmail
())).
findAny
();
if
(
anyExeUser
.
isPresent
())
{
i
.
setChangeExecUserName
(
anyExeUser
.
get
().
getName
());
}
else
{
// 批量查询没查到的人名,通过全量查询单独再查一次
IusUserInfoRsp
user
=
iusService
.
queryUserInfo
(
i
.
getChangeExecUserEmail
());
if
(
user
!=
null
&&
StringUtils
.
isNotBlank
(
user
.
getName
()))
{
i
.
setChangeExecUserName
(
user
.
getName
());
}
}
});
}
catch
(
Exception
ex
)
{
log
.
error
(
"query user info has ex"
,
ex
);
}
changeFlowVO
.
setChangeExecProjectList
(
changeFlowExecRecord
);
changeFlowVO
.
setTopoId
(
ChangeFlowEnum
.
NEW_CHANGE_FLOW
.
getTopoId
());
try
{
Set
<
String
>
commanderList
=
new
HashSet
<>();
commanderList
.
add
(
changeRecord
.
getChangeCommander
());
commanderList
.
add
(
changeRecord
.
getCreator
());
IusDepartmentReq
iusDepartmentReq
=
new
IusDepartmentReq
();
iusDepartmentReq
.
setUids
(
new
ArrayList
<>(
commanderList
));
iusDepartmentReq
.
setIcac
(
true
);
HashMap
<
String
,
List
<
SecondaryDepartments
>>
orgMap
=
iusService
.
queryDepartment
(
iusDepartmentReq
);
List
<
SecondaryDepartments
>
commander
=
orgMap
.
get
(
changeRecord
.
getChangeCommander
());
List
<
SecondaryDepartments
>
creator
=
orgMap
.
get
(
changeRecord
.
getCreator
());
if
(!
CollectionUtils
.
isEmpty
(
commander
))
{
Optional
<
SecondaryDepartments
>
anyOrg
=
commander
.
stream
().
filter
(
o
->
o
.
getOrgPosLevel
()
==
97
).
findAny
();
String
orgName
=
"无三级部门"
;
if
(
anyOrg
.
isPresent
())
{
orgName
=
anyOrg
.
get
().
getOrgPosName
();
}
changeFlowVO
.
setChangeCommanderView
(
commander
.
get
(
0
).
getUserName
()
+
"("
+
orgName
+
")"
);
}
// 非同舟端展示人名及三级部门名称
if
(!
CreateSourceEnum
.
TONG_ZHOU
.
getType
().
equals
(
changeRecord
.
getCreateSource
())
&&
!
CollectionUtils
.
isEmpty
(
creator
))
{
Optional
<
SecondaryDepartments
>
anyOrg
=
creator
.
stream
().
filter
(
o
->
o
.
getOrgPosLevel
()
==
97
).
findAny
();
String
orgName
=
"无三级部门"
;
if
(
anyOrg
.
isPresent
())
{
orgName
=
anyOrg
.
get
().
getOrgPosName
();
}
changeFlowVO
.
setChangeCreatorView
(
creator
.
get
(
0
).
getUserName
()
+
"("
+
orgName
+
")"
);
}
// 同舟端发起变更,发起人展示供应商id
if
(
CreateSourceEnum
.
TONG_ZHOU
.
getType
().
equals
(
changeRecord
.
getCreateSource
()))
{
changeFlowVO
.
setChangeCreatorView
(
changeRecord
.
getCreateSupplier
());
}
}
catch
(
Exception
ex
)
{
log
.
error
(
"add org has ex"
,
ex
);
}
return
changeFlowVO
;
}
public
ChangeFlowListVO
query
(
Integer
page
,
Integer
pageSize
,
ChangeFlowListQueryReq
changeFlowListQueryReq
)
{
...
...
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