Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
YeeAmosFireAutoSysRoot
Project
Project
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
station
YeeAmosFireAutoSysRoot
Commits
8d48f7ae
Commit
8d48f7ae
authored
Dec 30, 2020
by
suhuiguang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.同步
parent
8570ff18
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
78 additions
and
60 deletions
+78
-60
BasicEntity.java
...ain/java/com/yeejoin/amos/fas/dao/entity/BasicEntity.java
+5
-13
RiskSourceSynBo.java
...ava/com/yeejoin/amos/fas/business/bo/RiskSourceSynBo.java
+29
-0
RiskSourceController.java
...in/amos/fas/business/controller/RiskSourceController.java
+3
-2
RiskSourceServiceImpl.java
...amos/fas/business/service/impl/RiskSourceServiceImpl.java
+37
-17
IRiskSourceService.java
...n/amos/fas/business/service/intfc/IRiskSourceService.java
+4
-3
ManulInsertGenerator.java
...ava/com/yeejoin/amos/fas/config/ManulInsertGenerator.java
+0
-25
No files found.
YeeAmosFireAutoSysCommon/src/main/java/com/yeejoin/amos/fas/dao/entity/BasicEntity.java
View file @
8d48f7ae
package
com
.
yeejoin
.
amos
.
fas
.
dao
.
entity
;
import
java.io.Serializable
;
import
java.util.Date
;
import
javax.persistence.Column
;
import
javax.persistence.EntityListeners
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
import
javax.persistence.MappedSuperclass
;
import
org.hibernate.annotations.GenericGenerator
;
import
org.springframework.data.annotation.CreatedDate
;
import
org.springframework.data.jpa.domain.support.AuditingEntityListener
;
import
javax.persistence.*
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* <pre>
...
...
@@ -39,8 +32,7 @@ public class BasicEntity /*extends Resource*/ implements Serializable{
private
Date
createDate
=
new
Date
();
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
AUTO
,
generator
=
"myid"
)
@GenericGenerator
(
name
=
"myid"
,
strategy
=
"com.yeejoin.amos.fas.config.ManulInsertGenerator"
)
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
@Column
(
name
=
"ID"
,
nullable
=
false
,
unique
=
true
)
public
long
getId
()
{
return
id
;
...
...
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/bo/RiskSourceSynBo.java
0 → 100644
View file @
8d48f7ae
package
com
.
yeejoin
.
amos
.
fas
.
business
.
bo
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
RiskSourceSynBo
{
/**
* 源id
*/
private
Long
id
;
/**
* 编号
*/
private
String
code
;
/**
* 名称
*/
private
String
name
;
/**
* 上级id
*/
private
Long
parentId
;
/**
* 子节点
*/
List
<
RiskSourceSynBo
>
children
;
}
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/controller/RiskSourceController.java
View file @
8d48f7ae
...
...
@@ -3,6 +3,7 @@ package com.yeejoin.amos.fas.business.controller;
import
com.alibaba.fastjson.JSONObject
;
import
com.yeejoin.amos.fas.business.action.model.FireEquimentDataRo
;
import
com.yeejoin.amos.fas.business.action.model.ProtalDataRo
;
import
com.yeejoin.amos.fas.business.bo.RiskSourceSynBo
;
import
com.yeejoin.amos.fas.business.param.AlarmParam
;
import
com.yeejoin.amos.fas.business.param.FmeaBindParam
;
import
com.yeejoin.amos.fas.business.service.intfc.IRiskFactorService
;
...
...
@@ -726,10 +727,10 @@ public class RiskSourceController extends BaseController {
@Permission
@ApiOperation
(
value
=
"同步风险区域"
,
notes
=
"创建或者更新,对站调用"
)
@PostMapping
(
"/syn/region"
)
public
CommonResponse
synRegion
(
@RequestBody
List
<
RiskSource
>
list
){
public
CommonResponse
synRegion
(
@RequestBody
RiskSourceSynBo
synBo
){
ReginParams
reginParams
=
getSelectedOrgInfo
();
String
compCode
=
getOrgCode
(
reginParams
);
return
CommonResponseUtil
.
success
(
riskSourceService
.
synRegion
(
getUserId
(),
compCode
,
list
));
return
CommonResponseUtil
.
success
(
riskSourceService
.
synRegion
(
getUserId
(),
compCode
,
synBo
));
}
@Permission
...
...
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/service/impl/RiskSourceServiceImpl.java
View file @
8d48f7ae
...
...
@@ -61,6 +61,7 @@ import org.springframework.util.StringUtils;
import
org.typroject.tyboot.component.cache.Redis
;
import
org.typroject.tyboot.component.cache.enumeration.CacheType
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
import
javax.annotation.PostConstruct
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -324,27 +325,46 @@ public class RiskSourceServiceImpl implements IRiskSourceService {
}
@Override
public
List
<
RiskSource
>
synRegion
(
String
userId
,
String
compCode
,
List
<
RiskSource
>
list
)
{
List
<
RiskSource
>
entrys
=
new
ArrayList
<>();
list
.
forEach
(
r
->{
r
.
setOrgCode
(
compCode
);
r
.
setIsRegion
(
RiskSourceRegionEum
.
TRUE
.
getCode
());
Optional
<
RiskSource
>
op
=
iRiskSourceDao
.
findBySourceId
(
r
.
getId
());
@Transactional
public
RiskSource
synRegion
(
String
userId
,
String
orgCode
,
RiskSourceSynBo
synBo
)
{
Optional
<
RiskSource
>
op
=
iRiskSourceDao
.
findBySourceId
(
synBo
.
getId
());
RiskSource
riskSource
;
//1.同步上级
if
(
op
.
isPresent
()){
//有就更新,业务只能调整上级
RiskSource
riskSource
=
op
.
get
();
riskSource
.
setParentId
(
r
.
getParentId
());
entrys
.
add
(
riskSource
);
riskSource
=
op
.
get
();
riskSource
.
setParentId
(
synBo
.
getParentId
());
riskSource
=
iRiskSourceDao
.
save
(
riskSource
);
}
else
{
//无则插入,TODO 注意:id使用了调用接口方的id,这样代码修改量较小
r
.
setCreateDate
(
new
Date
());
r
.
setIsIndoor
(
Boolean
.
FALSE
);
r
.
setSourceId
(
r
.
getId
());
r
.
setCreateBy
(
userId
);
entrys
.
add
(
r
);
//无则插入
riskSource
=
new
RiskSource
();
Bean
.
copyExistPropertis
(
synBo
,
riskSource
);
fillBasicParams
(
userId
,
orgCode
,
synBo
.
getId
(),
riskSource
);
riskSource
=
iRiskSourceDao
.
save
(
riskSource
);
}
//2.同步下级(只有一级)
if
(!
CollectionUtils
.
isEmpty
(
synBo
.
getChildren
())){
RiskSource
finalRiskSource
=
riskSource
;
List
<
RiskSource
>
children
=
synBo
.
getChildren
().
stream
().
map
(
s
->{
RiskSource
t
=
new
RiskSource
();
Bean
.
copyExistPropertis
(
s
,
t
);
fillBasicParams
(
userId
,
orgCode
,
s
.
getId
(),
t
);
t
.
setParentId
(
finalRiskSource
.
getId
());
return
t
;
}).
collect
(
Collectors
.
toList
());
iRiskSourceDao
.
saveAll
(
children
);
}
});
return
iRiskSourceDao
.
saveAll
(
entrys
);
return
riskSource
;
}
private
void
fillBasicParams
(
String
userId
,
String
orgCode
,
Long
sourceId
,
RiskSource
riskSource
)
{
riskSource
.
setCreateDate
(
new
Date
());
riskSource
.
setCreateBy
(
userId
);
riskSource
.
setOrgCode
(
orgCode
);
riskSource
.
setIsRegion
(
RiskSourceRegionEum
.
TRUE
.
getCode
());
riskSource
.
setStatus
(
"NORMAL"
);
riskSource
.
setIsIndoor
(
Boolean
.
FALSE
);
riskSource
.
setSourceId
(
sourceId
);
}
@Override
...
...
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/business/service/intfc/IRiskSourceService.java
View file @
8d48f7ae
...
...
@@ -5,6 +5,7 @@ import com.yeejoin.amos.fas.business.action.model.FireEquimentDataRo;
import
com.yeejoin.amos.fas.business.action.model.ProtalDataRo
;
import
com.yeejoin.amos.fas.business.bo.BindRegionBo
;
import
com.yeejoin.amos.fas.business.bo.JpushMsgBo
;
import
com.yeejoin.amos.fas.business.bo.RiskSourceSynBo
;
import
com.yeejoin.amos.fas.business.param.AlarmParam
;
import
com.yeejoin.amos.fas.business.param.CommonPageInfoParam
;
import
com.yeejoin.amos.fas.business.param.FmeaBindParam
;
...
...
@@ -199,10 +200,10 @@ public interface IRiskSourceService {
* 同步创建/更新区域
* @param code userId
* @param compCode 公司编号
* @param
list 同步数据支持多个
* @return
List<RiskSource>
* @param
synBo 同步数据支持树结构同步
* @return
RiskSource
*/
List
<
RiskSource
>
synRegion
(
String
code
,
String
compCode
,
List
<
RiskSource
>
list
);
RiskSource
synRegion
(
String
code
,
String
compCode
,
RiskSourceSynBo
synBo
);
/**
* 解除绑定关系
...
...
YeeAmosFireAutoSysService/src/main/java/com/yeejoin/amos/fas/config/ManulInsertGenerator.java
deleted
100644 → 0
View file @
8570ff18
package
com
.
yeejoin
.
amos
.
fas
.
config
;
import
org.hibernate.HibernateException
;
import
org.hibernate.engine.spi.SharedSessionContractImplementor
;
import
org.hibernate.id.IdentityGenerator
;
import
java.io.Serializable
;
/**
* 自定义的主键生成策略,如果填写了主键id,如果数据库中没有这条记录,则新增指定id的记录;否则更新记录
*
* 如果不填写主键id,则利用数据库本身的自增策略指定id
*/
public
class
ManulInsertGenerator
extends
IdentityGenerator
{
@Override
public
Serializable
generate
(
SharedSessionContractImplementor
s
,
Object
obj
)
throws
HibernateException
{
Serializable
id
=
s
.
getEntityPersister
(
null
,
obj
).
getClassMetadata
().
getIdentifier
(
obj
,
s
);
if
(
id
!=
null
&&
Long
.
parseLong
(
id
.
toString
())
>
0
)
{
return
id
;
}
else
{
return
super
.
generate
(
s
,
obj
);
}
}
}
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