REQ-2299 数据对象删除

This commit is contained in:
yangheng 2024-04-23 10:08:53 +08:00
parent d8788fc476
commit 69943f37ed
9 changed files with 35 additions and 18 deletions

View File

@ -29,5 +29,5 @@ public interface DataObjectApi {
ApiResult<Void> editDataObject(@RequestBody @Valid EditDataObjectReq req);
@PostMapping("/api/dataObject/delete")
ApiResult<Void> deleteDataObject(@RequestParam Long dataObjectId);
ApiResult<Void> deleteDataObject(@RequestParam Long dataObjectId, @RequestParam(required = false) Long updateBy);
}

View File

@ -32,8 +32,8 @@ public class DataObjectController implements DataObjectApi {
}
@Override
public ApiResult<Void> deleteDataObject(Long dataObjectId) {
dataObjectService.deleteDataObject(dataObjectId);
public ApiResult<Void> deleteDataObject(Long dataObjectId, Long updateBy) {
dataObjectService.deleteDataObject(dataObjectId, updateBy);
return ApiResult.ok();
}

View File

@ -2,18 +2,22 @@ package cn.axzo.tyr.server.repository.dao;
import cn.axzo.basics.common.constant.enums.DeleteEnum;
import cn.axzo.tyr.server.repository.entity.DataObjectAttr;
import cn.axzo.tyr.server.repository.entity.DataObjectRule;
import cn.axzo.tyr.server.repository.mapper.DataObjectAttrMapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Objects;
@Repository
public class DataObjectAttrDao extends ServiceImpl<DataObjectAttrMapper, DataObjectAttr> {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList) {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList, Long updateBy) {
lambdaUpdate()
.eq(DataObjectAttr::getIsDelete, DeleteEnum.NORMAL.getValue())
.in(DataObjectAttr::getDataObjectId, dataObjectIdList)
.set(Objects.nonNull(updateBy), DataObjectAttr::getUpdateBy, updateBy)
.set(DataObjectAttr::getIsDelete, DeleteEnum.DELETE.getValue())
.update();
}

View File

@ -9,21 +9,26 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Objects;
@Repository
public class DataObjectDao extends ServiceImpl<DataObjectMapper, DataObject> {
public List<DataObject> duplicateListByBO(DataObjectQueryBO bo) {
return lambdaQuery()
.eq(DataObject::getIsDelete, DeleteEnum.NORMAL.getValue())
.eq(StringUtils.isNotEmpty(bo.getDataObjectCode()), DataObject::getDataObjectCode, bo.getDataObjectCode())
.or(StringUtils.isNotEmpty(bo.getDataObjectCode()))
.eq(StringUtils.isNotEmpty(bo.getDataObjectName()), DataObject::getDataObjectName, bo.getDataObjectName())
.list();
}
public void deleteByIdList(List<Long> idList) {
public void deleteByIdList(List<Long> idList, Long updateBy) {
lambdaUpdate()
.eq(DataObject::getIsDelete, DeleteEnum.NORMAL.getValue())
.in(DataObject::getId, idList)
.set(DataObject::getIsDelete, DeleteEnum.DELETE.getValue());
.set(Objects.nonNull(updateBy), DataObject::getUpdateBy, updateBy)
.set(DataObject::getIsDelete, DeleteEnum.DELETE.getValue())
.update();
}
}

View File

@ -8,12 +8,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Objects;
@Repository
public class DataObjectRuleAttrDao extends ServiceImpl<DataObjectRuleAttrMapper, DataObjectRuleAttr> {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList) {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList, Long updateBy) {
lambdaUpdate()
.eq(DataObjectRuleAttr::getIsDelete, DeleteEnum.NORMAL.getValue())
.in(DataObjectRuleAttr::getDataObjectId, dataObjectIdList)
.set(Objects.nonNull(updateBy), DataObjectRuleAttr::getUpdateBy, updateBy)
.set(DataObjectRuleAttr::getIsDelete, DeleteEnum.DELETE.getValue())
.update();
}

View File

@ -2,6 +2,7 @@ package cn.axzo.tyr.server.repository.dao;
import cn.axzo.basics.common.constant.enums.DeleteEnum;
import cn.axzo.tyr.client.model.data.object.DataObjectRuleQueryBO;
import cn.axzo.tyr.server.repository.entity.DataObject;
import cn.axzo.tyr.server.repository.entity.DataObjectRule;
import cn.axzo.tyr.server.repository.mapper.DataObjectRuleMapper;
import cn.hutool.core.collection.CollUtil;
@ -16,14 +17,17 @@ public class DataObjectRuleDao extends ServiceImpl<DataObjectRuleMapper, DataObj
public List<DataObjectRule> listByBO(DataObjectRuleQueryBO bo) {
return lambdaQuery()
.eq(DataObjectRule::getIsDelete, DeleteEnum.NORMAL.getValue())
.eq(Objects.nonNull(bo.getDataObjectId()), DataObjectRule::getDataObjectId, bo.getDataObjectId())
.in(CollUtil.isNotEmpty(bo.getDataObjectRuleNameList()), DataObjectRule::getName, bo.getDataObjectRuleNameList())
.list();
}
public void deleteByDataObjectIdList(List<Long> dataObjectIdList) {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList, Long updateBy) {
lambdaUpdate()
.eq(DataObjectRule::getIsDelete, DeleteEnum.NORMAL.getValue())
.in(DataObjectRule::getDataObjectId, dataObjectIdList)
.set(Objects.nonNull(updateBy), DataObjectRule::getUpdateBy, updateBy)
.set(DataObjectRule::getIsDelete, DeleteEnum.DELETE.getValue())
.update();
}

View File

@ -8,12 +8,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Objects;
@Repository
public class DataObjectRuleScopeDao extends ServiceImpl<DataObjectRuleScopeMapper, DataObjectRuleScope> {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList) {
public void deleteByDataObjectIdList(List<Long> dataObjectIdList, Long updateBy) {
lambdaUpdate()
.eq(DataObjectRuleScope::getIsDelete, DeleteEnum.NORMAL.getValue())
.in(DataObjectRuleScope::getDataObjectId, dataObjectIdList)
.set(Objects.nonNull(updateBy), DataObjectRuleScope::getUpdateBy, updateBy)
.set(DataObjectRuleScope::getIsDelete, DeleteEnum.DELETE.getValue())
.update();
}

View File

@ -8,5 +8,5 @@ public interface DataObjectService {
void editDataObject(EditDataObjectReq req);
void deleteDataObject(Long dataObjectId);
void deleteDataObject(Long dataObjectId, Long updateBy);
}

View File

@ -4,10 +4,8 @@ import cn.axzo.basics.common.exception.ServiceException;
import cn.axzo.tyr.client.common.enums.ReturnCodeEnum;
import cn.axzo.tyr.client.common.enums.YesNoEnum;
import cn.axzo.tyr.client.model.data.object.AttributeBO;
import cn.axzo.tyr.client.model.data.object.DataObjectAttrQueryBO;
import cn.axzo.tyr.client.model.data.object.DataObjectQueryBO;
import cn.axzo.tyr.client.model.data.object.DataObjectRuleBO;
import cn.axzo.tyr.client.model.data.object.DataObjectRuleQueryBO;
import cn.axzo.tyr.client.model.req.CreateDataObjectReq;
import cn.axzo.tyr.client.model.req.EditDataObjectReq;
import cn.axzo.tyr.server.repository.dao.DataObjectAttrDao;
@ -150,14 +148,14 @@ public class DataObjectServiceImpl implements DataObjectService {
}
@Override
public void deleteDataObject(Long dataObjectId) {
public void deleteDataObject(Long dataObjectId, Long updateBy) {
List<Long> idList = Collections.singletonList(dataObjectId);
transactionTemplate.executeWithoutResult(status -> {
dataObjectDao.deleteByIdList(idList);
dataObjectRuleDao.deleteByDataObjectIdList(idList);
dataObjectAttrDao.deleteByDataObjectIdList(idList);
dataObjectRuleAttrDao.deleteByDataObjectIdList(idList);
dataObjectRuleScopeDao.deleteByDataObjectIdList(idList);
dataObjectDao.deleteByIdList(idList, updateBy);
dataObjectRuleDao.deleteByDataObjectIdList(idList, updateBy);
dataObjectAttrDao.deleteByDataObjectIdList(idList, updateBy);
dataObjectRuleAttrDao.deleteByDataObjectIdList(idList, updateBy);
dataObjectRuleScopeDao.deleteByDataObjectIdList(idList, updateBy);
});
}