Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Administrator
/
framework-tools
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit f8c8a3fd
authored
Jul 12, 2024
by
renrui
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add]架构资产关系
1 parent
14d1e54c
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
617 additions
and
0 deletions
framework-asset/src/main/java/org/arch/overall/controller/ArchiAssetRelationController.java
framework-asset/src/main/java/org/arch/overall/mapper/ArchiAssetEleRelaMapper.java
framework-asset/src/main/java/org/arch/overall/service/ArchiAssetEleRelaService.java
framework-asset/src/main/java/org/arch/overall/service/impl/ArchiAssetEleRelaServiceImpl.java
framework-asset/src/main/resources/mapper/ArchiAssetEleRelaMapper.xml
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/dto/ArchiSatePostDTO.java
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/dto/ElementDTO.java
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/entity/ArchiAssetEleRela.java
framework-asset/src/main/java/org/arch/overall/controller/ArchiAssetRelationController.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
overall
.
controller
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
import
org.arch.base.Result
;
import
org.arch.common.modules.archoverall.dto.ArchiRelaSatePostDTO
;
import
org.arch.common.modules.archoverall.dto.ArchiSatePostDTO
;
import
org.arch.common.modules.archoverall.dto.BatchRemoveDTO
;
import
org.arch.common.modules.archoverall.dto.ElementDTO
;
import
org.arch.common.modules.archoverall.dto.asset.ArchiAssetsRelationDTO
;
import
org.arch.common.modules.archoverall.dto.asset.ArchiAssetsRelationQueryDTO
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaAddAndUpdateDTO
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaQueryDTO
;
import
org.arch.log.annotation.OperLog
;
import
org.arch.log.logenum.LogOperTypeEnum
;
import
org.arch.log.logenum.LogTypeEnum
;
import
org.arch.overall.service.ArchiAssetEleRelaService
;
import
org.arch.overall.service.ArchiAssetService
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* <p>
* 架构资产关系
* </p>
*
* @author author
* @since 2024-01-09
*/
@Api
(
value
=
"/arc-ast-rela"
,
tags
=
{
"架构资产关系"
})
@RestController
@RequestMapping
(
"/archi-asset-relation"
)
@RequiredArgsConstructor
public
class
ArchiAssetRelationController
{
private
final
ArchiAssetService
service
;
private
final
ArchiAssetEleRelaService
eleRelaService
;
//----------------------------------资产关系----------------------------------
@ApiOperation
(
value
=
"根据元素查询对应的资产"
)
@PostMapping
(
value
=
"/queryAssetByEle"
)
//@AutoLog(value = LogEventTypeEnum.SEARCH, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.LOW)
@OperLog
(
value
=
LogOperTypeEnum
.
QUERY
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"根据元素查询对应的资产"
,
moduleName
=
"架构资产关系"
)
public
Result
queryAssetByEle
(
@RequestBody
ElementDTO
params
)
{
return
Result
.
success
(
service
.
findAssertByElementId
(
params
.
getElementId
()));
}
@ApiOperation
(
value
=
"资产关系-添加"
)
@PostMapping
(
value
=
"/cAssetRelation"
)
// @AutoLog(value = LogEventTypeEnum.INSERT, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
ADD
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-添加"
,
moduleName
=
"架构资产关系"
)
public
Result
addAssetRelation
(
@RequestBody
@Validated
ArchiAssetsRelationDTO
params
)
{
return
Result
.
success
(
service
.
addAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"资产关系-发布/停用"
)
@PostMapping
(
value
=
"/pAssetRelation"
)
//@AutoLog(value = LogEventTypeEnum.UPDATE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
UPDATE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-发布/停用"
,
moduleName
=
"架构资产关系"
)
public
Result
pAssetRelation
(
@RequestBody
ArchiRelaSatePostDTO
dto
)
{
return
Result
.
success
(
service
.
post
(
dto
));
}
@ApiOperation
(
value
=
"资产关系-删除"
)
@PostMapping
(
value
=
"/rAssetRelation"
)
//@AutoLog(value = LogEventTypeEnum.DELETE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
DELETE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-删除"
,
moduleName
=
"架构资产关系"
)
public
Result
deleteAssetRelation
(
@RequestBody
@Validated
BatchRemoveDTO
params
)
{
return
service
.
del
(
params
)
?
Result
.
success
(
"删除成功"
)
:
Result
.
error
(
"删除失败"
);
}
@ApiOperation
(
value
=
"资产关系-修改"
)
@PostMapping
(
value
=
"/uAssetRelation"
)
//@AutoLog(value = LogEventTypeEnum.UPDATE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
UPDATE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-修改"
,
moduleName
=
"架构资产关系"
)
public
Result
updateAssetRelation
(
@RequestBody
@Validated
ArchiAssetsRelationDTO
params
)
{
return
Result
.
success
(
service
.
updateAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"资产关系-查询"
)
@PostMapping
(
value
=
"/qAssetRelation"
)
// @AutoLog(value = LogEventTypeEnum.SEARCH, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.LOW)
@OperLog
(
value
=
LogOperTypeEnum
.
QUERY
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-查询"
,
moduleName
=
"架构资产关系"
)
public
Result
queryAssetRelation
(
@RequestBody
ArchiAssetsRelationQueryDTO
params
)
{
return
Result
.
success
(
service
.
queryAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"资产关系-查询详情"
)
@PostMapping
(
value
=
"/dAssetRelation"
)
//@AutoLog(value = LogEventTypeEnum.SEARCH, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.LOW)
@OperLog
(
value
=
LogOperTypeEnum
.
QUERY
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"资产关系-查询"
,
moduleName
=
"架构资产关系"
)
public
Result
queryAssetRelationDetail
(
@RequestBody
ArchiAssetsRelationQueryDTO
params
)
{
return
Result
.
success
(
service
.
queryAssetRelationDetail
(
params
));
}
//----------------------------------元素关系----------------------------------
@ApiOperation
(
value
=
"元素关系-添加"
)
@PostMapping
(
value
=
"/cEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.INSERT, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
ADD
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-添加"
,
moduleName
=
"架构资产关系"
)
public
Result
cEleRelation
(
@RequestBody
@Validated
ArchiAssetEleRelaAddAndUpdateDTO
params
)
{
return
Result
.
success
(
eleRelaService
.
addAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"元素关系-发布/停用"
)
@PostMapping
(
value
=
"/pEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.UPDATE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
UPDATE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-发布/停用"
,
moduleName
=
"架构资产关系"
)
public
Result
post
(
@RequestBody
ArchiSatePostDTO
dto
)
{
return
Result
.
success
(
eleRelaService
.
post
(
dto
));
}
@ApiOperation
(
value
=
"元素关系-删除"
)
@PostMapping
(
value
=
"/rEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.DELETE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
DELETE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-删除"
,
moduleName
=
"架构资产关系"
)
public
Result
rEleRelation
(
@RequestBody
@Validated
BatchRemoveDTO
params
)
{
return
eleRelaService
.
del
(
params
)
?
Result
.
success
(
"删除成功"
)
:
Result
.
error
(
"删除失败"
);
}
@ApiOperation
(
value
=
"元素关系-修改"
)
@PostMapping
(
value
=
"/uEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.UPDATE, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.MIDDLE)
@OperLog
(
value
=
LogOperTypeEnum
.
UPDATE
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-修改"
,
moduleName
=
"架构资产关系"
)
public
Result
uEleRelation
(
@RequestBody
@Validated
ArchiAssetEleRelaAddAndUpdateDTO
params
)
{
return
Result
.
success
(
eleRelaService
.
updateAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"元素关系-查询"
)
@PostMapping
(
value
=
"/qEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.SEARCH, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.LOW)
@OperLog
(
value
=
LogOperTypeEnum
.
QUERY
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-查询"
,
moduleName
=
"架构资产关系"
)
public
Result
qEleRelation
(
@RequestBody
ArchiAssetEleRelaQueryDTO
params
)
{
return
Result
.
success
(
eleRelaService
.
queryAssetRelation
(
params
));
}
@ApiOperation
(
value
=
"元素关系-查询详情"
)
@PostMapping
(
value
=
"/dEleRelation"
)
//@AutoLog(value = LogEventTypeEnum.SEARCH, LogTypeValue = LogTypeEnum.BUSI_LOG, LogLevValue = LogLevEnum.LOW)
@OperLog
(
value
=
LogOperTypeEnum
.
QUERY
,
logTypeValue
=
LogTypeEnum
.
BUSI_LOG
,
operDes
=
"元素关系-查询详情"
,
moduleName
=
"架构资产关系"
)
public
Result
dEleRelation
(
@RequestBody
ArchiAssetEleRelaQueryDTO
params
)
{
return
Result
.
success
(
eleRelaService
.
queryAssetRelationDetail
(
params
));
}
}
framework-asset/src/main/java/org/arch/overall/mapper/ArchiAssetEleRelaMapper.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
overall
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
org.apache.ibatis.annotations.Param
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaQueryDTO
;
import
org.arch.common.modules.archoverall.entity.ArchiAssetEleRela
;
import
org.arch.common.modules.archoverall.vo.ArchiAssetEleRelaVO
;
public
interface
ArchiAssetEleRelaMapper
extends
BaseMapper
<
ArchiAssetEleRela
>
{
/**
* 查询元素关系
*
* @param params 参数
* @return {@link IPage }<{@link ArchiAssetEleRelaVO }>
*/
IPage
<
ArchiAssetEleRelaVO
>
queryAssetRelation
(
@Param
(
"params"
)
ArchiAssetEleRelaQueryDTO
params
,
@Param
(
"page"
)
IPage
<
ArchiAssetEleRelaQueryDTO
>
page
);
/**
* 查询元素关系详情
*
* @param params 参数
* @return {@link ArchiAssetEleRelaVO }
*/
ArchiAssetEleRelaVO
queryAssetRelation
(
@Param
(
"params"
)
ArchiAssetEleRelaQueryDTO
params
);
}
\ No newline at end of file
framework-asset/src/main/java/org/arch/overall/service/ArchiAssetEleRelaService.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
overall
.
service
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
org.arch.common.modules.archoverall.dto.ArchiSatePostDTO
;
import
org.arch.common.modules.archoverall.dto.BatchRemoveDTO
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaAddAndUpdateDTO
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaQueryDTO
;
import
org.arch.common.modules.archoverall.entity.ArchiAssetEleRela
;
import
org.arch.common.modules.archoverall.vo.ArchiAssetEleRelaVO
;
import
java.util.List
;
public
interface
ArchiAssetEleRelaService
extends
IService
<
ArchiAssetEleRela
>
{
/**
* 添加元素关系
*
* @param params 参数
* @return {@link Boolean }
*/
Boolean
addAssetRelation
(
ArchiAssetEleRelaAddAndUpdateDTO
params
);
/**
* 修改元素
*
* @param params 参数
* @return {@link Boolean }
*/
Boolean
updateAssetRelation
(
ArchiAssetEleRelaAddAndUpdateDTO
params
);
/**
* 删除元素关系
*
* @param dto DTO
* @return {@link Boolean }
*/
Boolean
del
(
BatchRemoveDTO
dto
);
/**
* 发布/停用
*
* @param dto DTO
* @return {@link Boolean }
*/
Boolean
post
(
ArchiSatePostDTO
dto
);
/**
* 查询元素关系
*
* @param params 参数
* @return {@link IPage }<{@link ArchiAssetEleRelaVO }>
*/
IPage
<
ArchiAssetEleRelaVO
>
queryAssetRelation
(
ArchiAssetEleRelaQueryDTO
params
);
/**
* 查询元素关系详情
*
* @param params 参数
* @return {@link List}<{@link ArchiAssetEleRelaVO}>
*/
ArchiAssetEleRelaVO
queryAssetRelationDetail
(
ArchiAssetEleRelaQueryDTO
params
);
}
framework-asset/src/main/java/org/arch/overall/service/impl/ArchiAssetEleRelaServiceImpl.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
overall
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.lang.Assert
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
org.arch.common.modules.archoverall.dto.ArchiSatePostDTO
;
import
org.arch.common.modules.archoverall.dto.BatchRemoveDTO
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.arch.base.enums.ArchiStateEnum
;
import
org.arch.base.exception.CommonException
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaAddAndUpdateDTO
;
import
org.arch.common.modules.archoverall.dto.ele.ArchiAssetEleRelaQueryDTO
;
import
org.arch.common.modules.archoverall.entity.ArchiAssetEleRela
;
import
org.arch.common.modules.archoverall.entity.ArchiElement
;
import
org.arch.common.modules.archoverall.vo.ArchiAssetEleRelaVO
;
import
org.arch.overall.mapper.ArchiAbilityAssetsRelationMapper
;
import
org.arch.overall.mapper.ArchiAssetEleRelaMapper
;
import
lombok.RequiredArgsConstructor
;
import
org.arch.overall.mapper.ArchiElementMapper
;
import
org.arch.overall.service.ArchiAssetEleRelaService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
@Service
@RequiredArgsConstructor
public
class
ArchiAssetEleRelaServiceImpl
extends
ServiceImpl
<
ArchiAssetEleRelaMapper
,
ArchiAssetEleRela
>
implements
ArchiAssetEleRelaService
{
private
final
ArchiElementMapper
archiElementMapper
;
private
final
ArchiAbilityAssetsRelationMapper
archiAbilityAssetsRelationMapper
;
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
addAssetRelation
(
ArchiAssetEleRelaAddAndUpdateDTO
params
)
{
ArchiAssetEleRela
relation
=
new
ArchiAssetEleRela
();
BeanUtil
.
copyProperties
(
params
,
relation
,
"assetRelaId"
);
// 移除主键
ArchiElement
archiElement
=
archiElementMapper
.
selectById
(
params
.
getEleId
());
Assert
.
notNull
(
archiElement
,
"元素不存在"
);
ArchiElement
relaArchiElement
=
archiElementMapper
.
selectById
(
params
.
getRelaEleId
());
Assert
.
notNull
(
relaArchiElement
,
"关联元素不存在"
);
// Assert.isFalse(Objects.equals(params.getEleId(), params.getEleRelaId()), "元素不能关联自己");
Assert
.
isFalse
(
baseMapper
.
selectCount
(
Wrappers
.<
ArchiAssetEleRela
>
lambdaQuery
()
.
eq
(
ArchiAssetEleRela:
:
getEleId
,
params
.
getEleId
())
.
eq
(
ArchiAssetEleRela:
:
getRelaEleId
,
params
.
getRelaEleId
())
.
eq
(
ArchiAssetEleRela:
:
getRsName
,
params
.
getRsName
()))
>
0
,
"元素之间,资产名称不能重复"
);
relation
.
setState
(
ArchiStateEnum
.
TEMPORARY
.
getCode
());
relation
.
setEleCode
(
archiElement
.
getElementCode
());
relation
.
setEleName
(
archiElement
.
getElementName
());
relation
.
setRelaEleCode
(
relaArchiElement
.
getElementCode
());
relation
.
setRelaEleName
(
relaArchiElement
.
getElementName
());
return
baseMapper
.
insert
(
relation
)
>
0
;
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
updateAssetRelation
(
ArchiAssetEleRelaAddAndUpdateDTO
params
)
{
ArchiAssetEleRela
relation
=
new
ArchiAssetEleRela
();
Long
assetRelaId
=
params
.
getAssetRelaId
();
Assert
.
notNull
(
assetRelaId
,
"主键不能为空"
);
ArchiAssetEleRela
oldRelation
=
baseMapper
.
selectById
(
assetRelaId
);
Assert
.
notNull
(
oldRelation
,
"元素关系不存在"
);
if
(
ArchiStateEnum
.
PUBLISHED
.
getCode
()
==
oldRelation
.
getState
())
{
throw
new
CommonException
(
"已发布的数据不可修改"
);
}
ArchiElement
archiElement
=
archiElementMapper
.
selectById
(
params
.
getEleId
());
Assert
.
notNull
(
archiElement
,
"元素不存在"
);
ArchiElement
relaArchiElement
=
archiElementMapper
.
selectById
(
params
.
getRelaEleId
());
Assert
.
notNull
(
relaArchiElement
,
"关联元素不存在"
);
// Assert.isFalse(Objects.equals(params.getEleId(), params.getEleRelaId()), "元素不能关联自己");
Assert
.
isFalse
(
baseMapper
.
selectCount
(
Wrappers
.<
ArchiAssetEleRela
>
lambdaQuery
()
.
eq
(
ArchiAssetEleRela:
:
getEleId
,
params
.
getEleId
())
.
eq
(
ArchiAssetEleRela:
:
getRelaEleId
,
params
.
getRelaEleId
())
.
eq
(
ArchiAssetEleRela:
:
getRsName
,
params
.
getRsName
())
.
notIn
(
ArchiAssetEleRela:
:
getAssetRelaId
,
assetRelaId
))
>
0
,
"元素之间,资产名称不能重复"
);
relation
.
setAssetRelaId
(
assetRelaId
);
relation
.
setEleId
(
params
.
getEleId
());
relation
.
setEleCode
(
archiElement
.
getElementCode
());
relation
.
setEleName
(
archiElement
.
getElementName
());
relation
.
setRelaEleId
(
params
.
getRelaEleId
());
relation
.
setRelaEleCode
(
relaArchiElement
.
getElementCode
());
relation
.
setRelaEleName
(
relaArchiElement
.
getElementName
());
relation
.
setRsName
(
params
.
getRsName
());
relation
.
setEleRelaId
(
params
.
getEleRelaId
());
relation
.
setIconId
(
params
.
getIconId
());
relation
.
setAcross
(
params
.
getAcross
());
return
baseMapper
.
updateById
(
relation
)
>
0
;
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
del
(
BatchRemoveDTO
dto
)
{
List
<
Long
>
ids
=
dto
.
getIds
();
List
<
ArchiAssetEleRela
>
list
=
baseMapper
.
selectList
(
Wrappers
.<
ArchiAssetEleRela
>
lambdaQuery
().
in
(
ArchiAssetEleRela:
:
getAssetRelaId
,
ids
));
for
(
ArchiAssetEleRela
eleRela
:
list
)
{
Long
assetRelaId
=
eleRela
.
getAssetRelaId
();
Assert
.
isFalse
(
archiAbilityAssetsRelationMapper
.
queryAssetRelationCountByTypeId
(
assetRelaId
)
>
0
,
"关联关系已被引用,不能删除"
);
Assert
.
isFalse
(
ArchiStateEnum
.
PUBLISHED
.
getCode
()
==
eleRela
.
getState
()
,
"已发布的数据不可删除"
);
}
return
removeBatchByIds
(
dto
.
getIds
());
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
post
(
ArchiSatePostDTO
dto
)
{
Long
id
=
dto
.
getAssetRelaId
();
Byte
state
=
dto
.
getState
();
// 发布
if
(
ArchiStateEnum
.
PUBLISHED
.
getCode
()
==
state
)
{
LambdaUpdateWrapper
<
ArchiAssetEleRela
>
wrapper
=
Wrappers
.
lambdaUpdate
();
wrapper
.
set
(
ArchiAssetEleRela:
:
getState
,
dto
.
getState
());
wrapper
.
eq
(
ArchiAssetEleRela:
:
getAssetRelaId
,
id
);
return
update
(
wrapper
);
}
// 停用
if
(
ArchiStateEnum
.
DISABLED
.
getCode
()
==
state
)
{
LambdaUpdateWrapper
<
ArchiAssetEleRela
>
wrapper
=
Wrappers
.
lambdaUpdate
();
wrapper
.
set
(
ArchiAssetEleRela:
:
getState
,
state
);
wrapper
.
eq
(
ArchiAssetEleRela:
:
getAssetRelaId
,
id
);
return
update
(
wrapper
);
}
return
Boolean
.
FALSE
;
}
@Override
public
IPage
<
ArchiAssetEleRelaVO
>
queryAssetRelation
(
ArchiAssetEleRelaQueryDTO
params
)
{
return
baseMapper
.
queryAssetRelation
(
params
,
PageDTO
.
of
(
params
.
getCurrent
(),
params
.
getPageSize
()));
}
@Override
public
ArchiAssetEleRelaVO
queryAssetRelationDetail
(
ArchiAssetEleRelaQueryDTO
params
)
{
Assert
.
notNull
(
params
.
getAssetRelaId
(),
"元素关系ID不能为空"
);
return
baseMapper
.
queryAssetRelation
(
params
);
}
}
framework-asset/src/main/resources/mapper/ArchiAssetEleRelaMapper.xml
0 → 100644
View file @
f8c8a3f
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.arch.overall.mapper.ArchiAssetEleRelaMapper"
>
<resultMap
id=
"BaseResultMap"
type=
"org.arch.common.modules.archoverall.entity.ArchiAssetEleRela"
>
<!--@mbg.generated-->
<!--@Table archi_asset_ele_rela-->
<id
column=
"asset_rela_id"
jdbcType=
"BIGINT"
property=
"assetRelaId"
/>
<result
column=
"rs_name"
jdbcType=
"VARCHAR"
property=
"rsName"
/>
<result
column=
"ele_id"
jdbcType=
"BIGINT"
property=
"eleId"
/>
<result
column=
"ele_code"
jdbcType=
"VARCHAR"
property=
"eleCode"
/>
<result
column=
"ele_name"
jdbcType=
"VARCHAR"
property=
"eleName"
/>
<result
column=
"rela_ele_id"
jdbcType=
"BIGINT"
property=
"relaEleId"
/>
<result
column=
"rela_ele_code"
jdbcType=
"VARCHAR"
property=
"relaEleCode"
/>
<result
column=
"rela_ele_name"
jdbcType=
"VARCHAR"
property=
"relaEleName"
/>
<result
column=
"across"
jdbcType=
"TINYINT"
property=
"across"
/>
<result
column=
"icon_id"
jdbcType=
"VARCHAR"
property=
"iconId"
/>
<result
column=
"ele_rela_id"
jdbcType=
"BIGINT"
property=
"eleRelaId"
/>
<result
column=
"create_man"
jdbcType=
"BIGINT"
property=
"createMan"
/>
<result
column=
"create_time"
jdbcType=
"TIMESTAMP"
property=
"createTime"
/>
<result
column=
"last_update_time"
jdbcType=
"TIMESTAMP"
property=
"lastUpdateTime"
/>
<result
column=
"last_update_man"
jdbcType=
"BIGINT"
property=
"lastUpdateMan"
/>
<result
column=
"del_flag"
jdbcType=
"TINYINT"
property=
"delFlag"
/>
<result
column=
"state"
property=
"state"
/>
<result
column=
"version"
property=
"version"
/>
</resultMap>
<!--元素关系-->
<select
id=
"queryAssetRelation"
resultType=
"org.arch.common.modules.archoverall.vo.ArchiAssetEleRelaVO"
>
select aaer.asset_rela_id,
aaer.rs_name,
aaer.ele_id,
aaer.ele_code,
aaer.ele_name,
aaer.rela_ele_id,
aaer.rela_ele_code,
aaer.rela_ele_name,
aaer.across,
aaer.icon_id,
aaer.ele_rela_id,
aeer.rs_name as ele_rela_name,
aaer.create_man,
aaer.create_time,
aaer.last_update_time,
aaer.last_update_man,
aaer.del_flag
from archi_asset_ele_rela aaer
left join archi_ele_rela aeer on aaer.ele_rela_id = aeer.ele_rela_id
<where>
<if
test=
"params.rsName != null and params.rsName != ''"
>
and aaer.rs_name = #{params.rsName}
</if>
<if
test=
"params.assetRelaId != null"
>
and aaer.asset_rela_id = #{params.assetRelaId}
</if>
and aaer.del_flag = 0
</where>
order by aaer.create_time desc
</select>
</mapper>
\ No newline at end of file
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/dto/ArchiSatePostDTO.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
common
.
modules
.
archoverall
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotNull
;
/**
* <p>
* 元素关系 发布/停用
* </p>
*
* @author admin
* @date 2024/02/22
* @since 2024-02-22
*/
@Getter
@Setter
@Accessors
(
chain
=
true
)
@ApiModel
(
value
=
"元素关系"
,
description
=
"元素关系"
)
public
class
ArchiSatePostDTO
{
/**
* 主键
*/
@ApiModelProperty
(
value
=
"主键"
)
@NotNull
(
message
=
"主键不能为空"
)
private
Long
assetRelaId
;
@ApiModelProperty
(
value
=
"字典状态 0:已停用 1:已发布 2:暂存"
)
@NotNull
(
message
=
"状态不能为空"
)
private
Byte
state
;
}
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/dto/ElementDTO.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
common
.
modules
.
archoverall
.
dto
;
import
lombok.Data
;
@Data
public
class
ElementDTO
{
private
Long
elementId
;
}
framework-clouds/common/src/main/java/org/arch/common/modules/archoverall/entity/ArchiAssetEleRela.java
0 → 100644
View file @
f8c8a3f
package
org
.
arch
.
common
.
modules
.
archoverall
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
org.arch.common.BaseEntity
;
/**
* 架构资产关系
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
description
=
"架构资产关系"
)
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName
(
value
=
"archi_asset_ele_rela"
)
public
class
ArchiAssetEleRela
extends
BaseEntity
{
/**
* 主键
*/
@TableId
(
value
=
"asset_rela_id"
,
type
=
IdType
.
AUTO
)
@ApiModelProperty
(
value
=
"主键"
)
private
Long
assetRelaId
;
/**
* 资产关系名称
*/
@TableField
(
value
=
"rs_name"
)
@ApiModelProperty
(
value
=
"资产关系名称"
)
private
String
rsName
;
/**
* 元素 ID
*/
@TableField
(
value
=
"ele_id"
)
@ApiModelProperty
(
value
=
"元素 ID"
)
private
Long
eleId
;
/**
* 元素编码
*/
@TableField
(
value
=
"ele_code"
)
@ApiModelProperty
(
value
=
"元素编码"
)
private
String
eleCode
;
/**
* 元素名称
*/
@TableField
(
value
=
"ele_name"
)
@ApiModelProperty
(
value
=
"元素名称"
)
private
String
eleName
;
/**
* 关联元素 ID
*/
@TableField
(
value
=
"rela_ele_id"
)
@ApiModelProperty
(
value
=
"关联元素 ID"
)
private
Long
relaEleId
;
/**
* 关联元素编码
*/
@TableField
(
value
=
"rela_ele_code"
)
@ApiModelProperty
(
value
=
"关联元素编码"
)
private
String
relaEleCode
;
/**
* 关联元素名称
*/
@TableField
(
value
=
"rela_ele_name"
)
@ApiModelProperty
(
value
=
"关联元素名称"
)
private
String
relaEleName
;
/**
* 是否跨架构(1:是 0:否)
*/
@TableField
(
value
=
"across"
)
@ApiModelProperty
(
value
=
"是否跨架构(1:是 0:否)"
)
private
Byte
across
;
/**
* 图标ID
*/
@TableField
(
value
=
"icon_id"
)
@ApiModelProperty
(
value
=
"图标ID"
)
private
String
iconId
;
/**
* 遵从元素关系,元素关系 ID
*/
@TableField
(
value
=
"ele_rela_id"
)
@ApiModelProperty
(
value
=
"遵从元素关系,元素关系 ID"
)
private
Long
eleRelaId
;
@ApiModelProperty
(
value
=
"版本"
)
private
String
version
;
@ApiModelProperty
(
value
=
"状态 0:已停用 1:已发布 2:暂存"
)
private
Integer
state
;
}
\ No newline at end of file
Write
Preview
Markdown
is supported
Attach a file
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 post a comment