Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-zx-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
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
Jobs
Commits
Open sidebar
项目统一框架
一体化_户用光伏项目代码
amos-boot-zx-biz
Commits
53ed0d81
Commit
53ed0d81
authored
Jul 05, 2024
by
wujiang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'developer' of
http://36.40.66.175:5000/moa/jxdj_zx/amos-boot-zx-biz
into developer
parents
d6676438
ae1a6b9d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
79 additions
and
66 deletions
+79
-66
FinancingInfoServiceImpl.java
...odule/hygf/biz/service/impl/FinancingInfoServiceImpl.java
+79
-66
No files found.
amos-boot-system-jxiop/amos-boot-module-hygf-biz/src/main/java/com/yeejoin/amos/boot/module/hygf/biz/service/impl/FinancingInfoServiceImpl.java
View file @
53ed0d81
...
...
@@ -30,11 +30,13 @@ import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingRectificationOrder;
import
com.yeejoin.amos.boot.module.hygf.api.entity.StdUserEmpower
;
import
com.yeejoin.amos.boot.module.hygf.api.mapper.FinancingInfoMapper
;
import
com.yeejoin.amos.boot.module.hygf.api.service.IFinancingInfoService
;
import
com.yeejoin.amos.boot.module.hygf.api.util.RedisLockUtil
;
import
com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO
;
import
com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO
;
import
com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO
;
import
com.yeejoin.amos.feign.workflow.model.TaskResultDTO
;
import
io.seata.spring.annotation.GlobalTransactional
;
import
org.apache.commons.lang3.BooleanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -42,6 +44,7 @@ import org.springframework.transaction.annotation.Transactional;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
javax.annotation.Resource
;
import
java.util.*
;
/**
...
...
@@ -71,6 +74,9 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
@Autowired
private
CommonServiceImpl
commonService
;
@Resource
(
type
=
RedisLockUtil
.
class
)
private
RedisLockUtil
redisLockUtil
;
@UserLimits
public
Page
<
Map
<
String
,
Object
>>
queryForFinancingInfoPage
(
Page
<
Map
<
String
,
Object
>>
page
,
String
type
,
String
status
,
String
regionalCompaniesCode
,
String
ownersName
)
{
StdUserEmpower
orgCode
=
(
StdUserEmpower
)
redisUtils
.
get
(
"Emp_"
+
RedisKey
.
buildReginKey
(
RequestContext
.
getExeUserId
(),
RequestContext
.
getToken
()));
...
...
@@ -115,76 +121,83 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
}
public
FinancingInfoDto
saveModel
(
FinancingInfoDto
model
)
{
List
<
String
>
ids
;
if
(
model
.
getPeasantHouseholdIds
().
contains
(
","
))
{
ids
=
Arrays
.
asList
(
model
.
getPeasantHouseholdIds
().
split
(
","
));
}
else
{
ids
=
Arrays
.
asList
(
new
String
[]{
model
.
getPeasantHouseholdIds
()});
}
Map
<
String
,
Object
>
orgInfo
=
this
.
getBaseMapper
().
selectRZOrgInfo
(
model
.
getFinancingCompaniesSeq
());
model
.
setFinancingCompaniesCode
(
orgInfo
.
getOrDefault
(
"ORG_CODE"
,
""
).
toString
());
model
.
setFinancingCompaniesName
(
orgInfo
.
getOrDefault
(
"COMPANY_NAME"
,
""
).
toString
());
ids
.
stream
().
forEach
(
e
->
{
LambdaQueryWrapper
<
FinancingInfo
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
FinancingInfo:
:
getPeasantHouseholdId
,
Long
.
valueOf
(
e
));
FinancingInfo
financingInfos
=
this
.
getBaseMapper
().
selectOne
(
queryWrapper
);
if
(
ObjectUtils
.
isEmpty
(
financingInfos
))
{
model
.
setStatus
(
FinancingAuditEnum
.
待融资审核
.
getName
());
model
.
setPeasantHouseholdId
(
Long
.
valueOf
(
e
));
FinancingInfoDto
financingInfoDto
=
new
FinancingInfoDto
();
BeanUtils
.
copyProperties
(
model
,
financingInfoDto
);
financingInfoDto
.
setSequenceNbr
(
null
);
this
.
createWithModel
(
financingInfoDto
);
//开启工作流 并执行一步
ActWorkflowBatchDTO
actWorkflowBatchDTO
=
new
ActWorkflowBatchDTO
();
List
<
ActWorkflowStartDTO
>
list
=
new
ArrayList
<>();
ActWorkflowStartDTO
dto
=
new
ActWorkflowStartDTO
();
dto
.
setProcessDefinitionKey
(
PROCESSKEY
);
Date
date
=
new
Date
();
dto
.
setBusinessKey
(
String
.
valueOf
(
date
.
getTime
()));
dto
.
setCompleteFirstTask
(
true
);
//工作流程图第一步执行后存在互斥网关 isFlag为表达式 默认为1执行到融资审核
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"isFlag"
,
"0"
);
dto
.
setVariables
(
map
);
list
.
add
(
dto
);
actWorkflowBatchDTO
.
setProcess
(
list
);
List
<
ProcessTaskDTO
>
processTaskDTOS
=
workFlowService
.
startBatch
(
actWorkflowBatchDTO
);
List
<
WorkflowResultDto
>
workflowResultDtos
=
workFlowService
.
buildWorkFlowInfo
(
processTaskDTOS
);
WorkflowResultDto
workflowResultDto
=
workflowResultDtos
.
get
(
0
);
FinancingAuditingDto
financingAuditingDto
=
new
FinancingAuditingDto
();
BeanUtils
.
copyProperties
(
workflowResultDto
,
financingAuditingDto
);
financingAuditingDto
.
setPeasantHouseholdId
(
Long
.
valueOf
(
e
));
financingAuditingDto
.
setPromoter
(
RequestContext
.
getExeUserId
());
financingAuditingService
.
createWithModel
(
financingAuditingDto
);
String
lockName
=
String
.
format
(
"LockName:powerStationExamine"
);
try
{
Boolean
isLocked
=
redisLockUtil
.
tryLock
(
lockName
,
lockName
,
10
,
1
);
if
(
BooleanUtils
.
isNotTrue
(
isLocked
))
{
throw
new
com
.
yeejoin
.
amos
.
component
.
robot
.
BadRequest
(
"其他用户正在操作,请刷新后再试!"
);
}
//批量 兼容审核不通过及整改待推送
else
if
(
financingInfos
.
getStatus
().
equals
(
FinancingAuditEnum
.
审核不通过
.
getName
())
||
financingInfos
.
getStatus
().
equals
(
FinancingAuditEnum
.
整改待推送
.
getName
())
){
financingInfos
.
setStatus
(
FinancingAuditEnum
.
待融资审核
.
getName
());
Map
<
String
,
Object
>
orgInfo1
=
this
.
getBaseMapper
().
selectRZOrgInfo
(
model
.
getFinancingCompaniesSeq
());
//业务表中无工作流id 需要补充
LambdaQueryWrapper
<
FinancingAuditing
>
queryWrapper1
=
new
LambdaQueryWrapper
<>();
queryWrapper1
.
eq
(
FinancingAuditing:
:
getPeasantHouseholdId
,
Long
.
valueOf
(
e
));
queryWrapper1
.
orderByDesc
(
BaseEntity:
:
getRecDate
);
queryWrapper1
.
last
(
"limit 1"
);
FinancingAuditing
financingInfos1
=
financingAuditingService
.
getBaseMapper
().
selectOne
(
queryWrapper1
);
financingInfos
.
setFinancingCompaniesCode
(
orgInfo1
.
getOrDefault
(
"ORG_CODE"
,
""
).
toString
());
financingInfos
.
setFinancingCompaniesName
(
orgInfo1
.
getOrDefault
(
"COMPANY_NAME"
,
""
).
toString
());
this
.
updateById
(
financingInfos
);
Map
<
String
,
Object
>
map
=
BeanUtil
.
beanToMap
(
financingInfos
);
map
.
put
(
"isFlag"
,
"0"
);
map
.
put
(
"instanceId"
,
financingInfos1
.
getInstanceId
());
this
.
execueFlow
(
map
);
List
<
String
>
ids
;
if
(
model
.
getPeasantHouseholdIds
().
contains
(
","
))
{
ids
=
Arrays
.
asList
(
model
.
getPeasantHouseholdIds
().
split
(
","
));
}
else
{
ids
=
Arrays
.
asList
(
new
String
[]{
model
.
getPeasantHouseholdIds
()});
}
//发起待办
Map
<
String
,
Object
>
orgInfo
=
this
.
getBaseMapper
().
selectRZOrgInfo
(
model
.
getFinancingCompaniesSeq
());
model
.
setFinancingCompaniesCode
(
orgInfo
.
getOrDefault
(
"ORG_CODE"
,
""
).
toString
());
model
.
setFinancingCompaniesName
(
orgInfo
.
getOrDefault
(
"COMPANY_NAME"
,
""
).
toString
());
ids
.
stream
().
forEach
(
e
->
{
LambdaQueryWrapper
<
FinancingInfo
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
FinancingInfo:
:
getPeasantHouseholdId
,
Long
.
valueOf
(
e
));
FinancingInfo
financingInfos
=
this
.
getBaseMapper
().
selectOne
(
queryWrapper
);
if
(
ObjectUtils
.
isEmpty
(
financingInfos
))
{
model
.
setStatus
(
FinancingAuditEnum
.
待融资审核
.
getName
());
model
.
setPeasantHouseholdId
(
Long
.
valueOf
(
e
));
FinancingInfoDto
financingInfoDto
=
new
FinancingInfoDto
();
BeanUtils
.
copyProperties
(
model
,
financingInfoDto
);
financingInfoDto
.
setSequenceNbr
(
null
);
this
.
createWithModel
(
financingInfoDto
);
//开启工作流 并执行一步
ActWorkflowBatchDTO
actWorkflowBatchDTO
=
new
ActWorkflowBatchDTO
();
List
<
ActWorkflowStartDTO
>
list
=
new
ArrayList
<>();
ActWorkflowStartDTO
dto
=
new
ActWorkflowStartDTO
();
dto
.
setProcessDefinitionKey
(
PROCESSKEY
);
Date
date
=
new
Date
();
dto
.
setBusinessKey
(
String
.
valueOf
(
date
.
getTime
()));
dto
.
setCompleteFirstTask
(
true
);
//工作流程图第一步执行后存在互斥网关 isFlag为表达式 默认为1执行到融资审核
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"isFlag"
,
"0"
);
dto
.
setVariables
(
map
);
list
.
add
(
dto
);
actWorkflowBatchDTO
.
setProcess
(
list
);
List
<
ProcessTaskDTO
>
processTaskDTOS
=
workFlowService
.
startBatch
(
actWorkflowBatchDTO
);
List
<
WorkflowResultDto
>
workflowResultDtos
=
workFlowService
.
buildWorkFlowInfo
(
processTaskDTOS
);
WorkflowResultDto
workflowResultDto
=
workflowResultDtos
.
get
(
0
);
FinancingAuditingDto
financingAuditingDto
=
new
FinancingAuditingDto
();
BeanUtils
.
copyProperties
(
workflowResultDto
,
financingAuditingDto
);
financingAuditingDto
.
setPeasantHouseholdId
(
Long
.
valueOf
(
e
));
financingAuditingDto
.
setPromoter
(
RequestContext
.
getExeUserId
());
financingAuditingService
.
createWithModel
(
financingAuditingDto
);
}
//批量 兼容审核不通过及整改待推送
else
if
(
financingInfos
.
getStatus
().
equals
(
FinancingAuditEnum
.
审核不通过
.
getName
())
||
financingInfos
.
getStatus
().
equals
(
FinancingAuditEnum
.
整改待推送
.
getName
())
){
financingInfos
.
setStatus
(
FinancingAuditEnum
.
待融资审核
.
getName
());
Map
<
String
,
Object
>
orgInfo1
=
this
.
getBaseMapper
().
selectRZOrgInfo
(
model
.
getFinancingCompaniesSeq
());
//业务表中无工作流id 需要补充
LambdaQueryWrapper
<
FinancingAuditing
>
queryWrapper1
=
new
LambdaQueryWrapper
<>();
queryWrapper1
.
eq
(
FinancingAuditing:
:
getPeasantHouseholdId
,
Long
.
valueOf
(
e
));
queryWrapper1
.
orderByDesc
(
BaseEntity:
:
getRecDate
);
queryWrapper1
.
last
(
"limit 1"
);
FinancingAuditing
financingInfos1
=
financingAuditingService
.
getBaseMapper
().
selectOne
(
queryWrapper1
);
financingInfos
.
setFinancingCompaniesCode
(
orgInfo1
.
getOrDefault
(
"ORG_CODE"
,
""
).
toString
());
financingInfos
.
setFinancingCompaniesName
(
orgInfo1
.
getOrDefault
(
"COMPANY_NAME"
,
""
).
toString
());
this
.
updateById
(
financingInfos
);
Map
<
String
,
Object
>
map
=
BeanUtil
.
beanToMap
(
financingInfos
);
map
.
put
(
"isFlag"
,
"0"
);
map
.
put
(
"instanceId"
,
financingInfos1
.
getInstanceId
());
this
.
execueFlow
(
map
);
}
//发起待办
// commonService.buildTaskModel(buildDZTRZTaskModel(model, workflowResultDto, date));
});
});
}
finally
{
redisLockUtil
.
releaseLock
(
lockName
);
}
return
model
;
}
...
...
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