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
胡园园
yanxuan-qc-change-system
Commits
37e88e7a
Commit
37e88e7a
authored
Nov 23, 2022
by
“zcwang”
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add: 变更提交申请附件及变更行动项替换
parent
597fc9d4
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
73 additions
and
4 deletions
+73
-4
ChangeFlowBiz.java
...om/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
+46
-4
ChangeFileService.java
...se/mail/yanxuan/change/biz/service/ChangeFileService.java
+3
-0
ChangeFlowExecService.java
...ail/yanxuan/change/biz/service/ChangeFlowExecService.java
+3
-0
ChangeFileServiceImpl.java
...anxuan/change/biz/service/impl/ChangeFileServiceImpl.java
+6
-0
ChangeFlowExecServiceImpl.java
...an/change/biz/service/impl/ChangeFlowExecServiceImpl.java
+6
-0
ChangeExecRecordMapper.java
...ail/yanxuan/change/dal/mapper/ChangeExecRecordMapper.java
+4
-0
ChangeFileMapper.java
...ease/mail/yanxuan/change/dal/mapper/ChangeFileMapper.java
+5
-0
No files found.
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/biz/ChangeFlowBiz.java
View file @
37e88e7a
...
...
@@ -197,6 +197,24 @@ public class ChangeFlowBiz {
}).
collect
(
Collectors
.
toList
());
}
private
List
<
ChangeExecRecord
>
buildChangeExecUpdateRecord
(
Long
changeRecordId
,
List
<
ChangeExecProject
>
changeExecProject
)
{
return
changeExecProject
.
stream
().
map
(
c
->
{
ChangeExecRecord
changeExecRecord
=
new
ChangeExecRecord
();
changeExecRecord
.
setChangeRecordId
(
changeRecordId
);
changeExecRecord
.
setChangeExecDepartment
(
c
.
getChangeExecDepartment
());
changeExecRecord
.
setChangeExecUserType
(
c
.
getChangeExecUserType
());
changeExecRecord
.
setChangeExecUser
(
c
.
getChangeExecUser
());
changeExecRecord
.
setChangeRiskDesc
(
c
.
getChangeRiskDesc
());
changeExecRecord
.
setChangeExecProject
(
c
.
getChangeExecProject
());
changeExecRecord
.
setChangeChecking
(
c
.
getChangeChecking
());
changeExecRecord
.
setChangeExecFinishTime
(
c
.
getChangeExecFinishTime
());
changeExecRecord
.
setChangeExecFinishDesc
(
c
.
getChangeExecFinishDesc
());
changeExecRecord
.
setCreateTime
(
DateUtils
.
getCurrentTime
());
changeExecRecord
.
setUpdateTime
(
DateUtils
.
getCurrentTime
());
return
changeExecRecord
;
}).
collect
(
Collectors
.
toList
());
}
private
void
checkSubject
(
ChangeFlowCreateReq
changeFlowCreateReq
)
{
ChangeSubjectEnum
type
=
ChangeSubjectEnum
.
getByType
(
changeFlowCreateReq
.
getChangeSubject
());
Assert
.
notNull
(
type
,
"变更主体不存在"
);
...
...
@@ -360,9 +378,19 @@ public class ChangeFlowBiz {
switch
(
node
)
{
// 变更申请提交节点,可以修改数据,以新的数据为准
case
CHANGE_FLOW_SUBMIT:
// 检验是否需要资料
ChangeConfig
changeConfig
=
changeConfigService
.
getSonChange
(
changeFlowSubmitReq
.
getSonChangeClassId
());
Assert
.
notNull
(
changeConfig
,
"二级变更类型不存在"
);
Integer
needFile
=
changeConfig
.
getNeedFile
();
if
(
NeedFileEnum
.
NEED
.
getStatus
().
equals
(
needFile
))
{
Assert
.
notEmpty
(
changeFlowSubmitReq
.
getFiles
(),
"必须上传资料"
);
}
// 变更行动项不可为空,最多20项
List
<
ChangeExecProject
>
changeExecProjectList
=
changeFlowSubmitReq
.
getChangeExecProjectList
();
Assert
.
isTrue
(
changeExecProjectList
.
size
()
<=
appConfig
.
getChangeExecLimit
(),
"变更行动方案配置数超限"
);
changeRecord
.
setParentChangeClassId
(
changeFlowSubmitReq
.
getParentChangeClassId
());
changeRecord
.
setSonChangeClassId
(
changeFlowSubmitReq
.
getSonChangeClassId
());
List
<
ChangeExecProject
>
changeExecProjectList
=
changeFlowSubmitReq
.
getChangeExecProjectList
();
List
<
String
>
execDepartmentList
=
changeExecProjectList
.
stream
().
map
(
ChangeExecProject:
:
getChangeExecDepartment
)
.
collect
(
Collectors
.
toList
());
changeRecord
.
setParticipateChangeExecDepartment
(
JSON
.
toJSONString
(
execDepartmentList
));
...
...
@@ -376,12 +404,26 @@ public class ChangeFlowBiz {
changeRecord
.
setChangeProfitDesc
(
changeFlowSubmitReq
.
getChangeProfitDesc
());
changeRecord
.
setChangeConfirmResultTime
(
changeFlowSubmitReq
.
getChangeConfirmResultTime
());
changeRecord
.
setUpdateTime
(
DateUtils
.
getCurrentTime
());
// 提交工单
String
submitNode
=
this
.
submitFlow
(
flowId
.
toString
(),
flowDataDTO
,
uid
,
ChangeFlowEnum
.
CHANGE_FLOW_SUBMIT
.
getTopoId
(),
JSON
.
toJSONString
(
content
));
// 更新工单数据
changeRecord
.
setFlowNode
(
submitNode
);
changeRecord
.
setUpdateTime
(
DateUtils
.
getCurrentTime
());
changeFlowService
.
updateRecord
(
changeRecord
);
// 更新行动执行方案,覆盖操作,先删除,后插入
Integer
changeExecCount
=
changeFlowExecService
.
deleteByChangeRecordId
(
changeRecord
.
getId
());
log
.
info
(
"[CHANGE_FLOW_SUBMIT] delete changeExecCount:{}"
,
changeExecCount
);
// 保存变更行动方案记录
List
<
ChangeExecRecord
>
changeExecRecords
=
buildChangeExecUpdateRecord
(
changeRecord
.
getId
(),
changeFlowSubmitReq
.
getChangeExecProjectList
());
changeFlowExecService
.
batchSaveRecord
(
changeExecRecords
);
// 更新附件,覆盖操作,先删除,后插入
List
<
ChangeFlowFile
>
files
=
changeFlowSubmitReq
.
getFiles
();
if
(
CollectionUtils
.
isNotEmpty
(
files
))
{
changeFileService
.
deleteByChangeRecordId
(
changeRecord
.
getId
());
List
<
ChangeFile
>
changeFiles
=
buildChangeFileRecord
(
changeRecord
.
getId
(),
files
);
changeFileService
.
batchSaveRecord
(
changeFiles
);
}
// todo: 发送邮件
return
submitNode
;
...
...
@@ -397,7 +439,7 @@ public class ChangeFlowBiz {
case
FINISH_ALL:
case
FINISH_PART:
List
<
ChangeExecProject
>
execProjectList
=
changeFlowSubmitReq
.
getChangeExecProjectList
();
List
<
ChangeExecRecord
>
changeExecRecord
s
=
execProjectList
.
stream
().
map
(
exec
->
{
List
<
ChangeExecRecord
>
changeExecRecord
List
=
execProjectList
.
stream
().
map
(
exec
->
{
Long
changeExecFinishTime
=
exec
.
getChangeExecFinishTime
();
Assert
.
notNull
(
changeExecFinishTime
,
"行动完成时间不可为空"
+
exec
.
getChangeTemplateId
());
String
changeExecFinishDesc
=
exec
.
getChangeExecFinishDesc
();
...
...
@@ -415,7 +457,7 @@ public class ChangeFlowBiz {
changeRecord
.
setFlowNode
(
confirmNode
);
changeRecord
.
setUpdateTime
(
DateUtils
.
getCurrentTime
());
changeFlowService
.
updateRecord
(
changeRecord
);
changeExecRecord
s
.
forEach
(
exec
->
changeFlowExecService
.
update
(
exec
));
changeExecRecord
List
.
forEach
(
exec
->
changeFlowExecService
.
update
(
exec
));
//todo: 发送邮件
return
confirmNode
;
case
CANCEL:
...
...
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/service/ChangeFileService.java
View file @
37e88e7a
...
...
@@ -25,4 +25,6 @@ public interface ChangeFileService {
List
<
ChangeFlowFile
>
getChangeFileList
(
Long
changeRecordId
);
void
batchSaveRecord
(
List
<
ChangeFile
>
changeFiles
);
Integer
deleteByChangeRecordId
(
Long
changeRecordId
);
}
\ No newline at end of file
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/service/ChangeFlowExecService.java
View file @
37e88e7a
...
...
@@ -32,4 +32,6 @@ public interface ChangeFlowExecService {
void
batchSaveRecord
(
List
<
ChangeExecRecord
>
changeExecRecordList
);
Boolean
update
(
ChangeExecRecord
exec
);
Integer
deleteByChangeRecordId
(
Long
id
);
}
\ No newline at end of file
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/service/impl/ChangeFileServiceImpl.java
View file @
37e88e7a
...
...
@@ -43,4 +43,9 @@ public class ChangeFileServiceImpl implements ChangeFileService {
public
void
batchSaveRecord
(
List
<
ChangeFile
>
changeFiles
)
{
changeFileMapper
.
insertList
(
changeFiles
);
}
@Override
public
Integer
deleteByChangeRecordId
(
Long
changeRecordId
)
{
return
changeFileMapper
.
deleteByBaseId
(
changeRecordId
);
}
}
\ No newline at end of file
yanxuan-qc-change-system-biz/src/main/java/com/netease/mail/yanxuan/change/biz/service/impl/ChangeFlowExecServiceImpl.java
View file @
37e88e7a
...
...
@@ -53,4 +53,9 @@ public class ChangeFlowExecServiceImpl implements ChangeFlowExecService {
public
Boolean
update
(
ChangeExecRecord
changeExecRecord
)
{
return
changeExecRecordMapper
.
updateByPrimaryKeySelective
(
changeExecRecord
)
>
0
;
}
@Override
public
Integer
deleteByChangeRecordId
(
Long
changeRecordId
)
{
return
changeExecRecordMapper
.
deleteByBaseId
(
changeRecordId
);
}
}
\ No newline at end of file
yanxuan-qc-change-system-dal/src/main/java/com/netease/mail/yanxuan/change/dal/mapper/ChangeExecRecordMapper.java
View file @
37e88e7a
...
...
@@ -8,6 +8,7 @@ package com.netease.mail.yanxuan.change.dal.mapper;
import
java.util.List
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Insert
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -32,4 +33,7 @@ public interface ChangeExecRecordMapper extends tk.mybatis.mapper.common.Mapper<
"(#{item.changeRecordId}, #{item.changeExecDepartment}, #{item.changeExecUserType}, #{item.changeExecUser}, #{item.changeRiskDesc}, #{item.changeExecProject}, #{item.changeChecking}, #{item.changeExecFinishTime}, #{item.changeExecFinishDesc}, #{item.createTime}, #{item.updateTime})"
,
"</foreach>"
,
"</script>"
})
void
insertList
(
@Param
(
"list"
)
List
<
ChangeExecRecord
>
changeExecRecordList
);
@Delete
(
"delete from TB_YX_QC_CHANGE_EXEC_RECORD where change_record_id = #{changeRecordId}}"
)
Integer
deleteByBaseId
(
@Param
(
"changeRecordId"
)
Long
changeRecordId
);
}
yanxuan-qc-change-system-dal/src/main/java/com/netease/mail/yanxuan/change/dal/mapper/ChangeFileMapper.java
View file @
37e88e7a
...
...
@@ -8,6 +8,7 @@ package com.netease.mail.yanxuan.change.dal.mapper;
import
java.util.List
;
import
org.apache.ibatis.annotations.Delete
;
import
org.apache.ibatis.annotations.Insert
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -31,4 +32,7 @@ public interface ChangeFileMapper extends tk.mybatis.mapper.common.Mapper<Change
"(#{item.changeRecordId}, #{item.fileType}, #{item.fileName}, #{item.fileUrl}, #{item.createTime}, #{item.updateTime})"
,
"</foreach>"
,
"</script>"
})
void
insertList
(
List
<
ChangeFile
>
changeFiles
);
@Delete
(
"delete from TB_YX_QC_CHANGE_FILE where change_record_id = #{changeRecordId}}"
)
Integer
deleteByBaseId
(
Long
changeRecordId
);
}
\ No newline at end of file
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