添加参数清单一键引用接口

This commit is contained in:
gaosong
2023-12-27 10:28:53 +08:00
parent 8ac3595c47
commit fb0e38dc67
4 changed files with 55 additions and 2 deletions
@@ -475,6 +475,21 @@ public class ParamsCollectManifestEOController extends JeroController<ParamsColl
return Result.OK(configLableList);
}
/**
* 参数项收集清单-引用参数(全清单)
*/
@AutoLog(value = "参数项收集清单-引用参数(全清单)")
@ApiOperation(value = "参数项收集清单-引用参数(全清单)", notes = "参数项收集清单-引用参数(全清单)")
@PostMapping(value = "/referParamsAll")
public Result<?> referParamsAll(String paramsManifestId, String sourceConfigId, String targetConfigId) {
boolean isSuccess = paramsCollectManifestEOService.referParamsAll(paramsManifestId, sourceConfigId, targetConfigId);
if (isSuccess) {
return Result.OK("引用参数成功!");
} else {
return Result.error("引用参数失败!");
}
}
/**
* 引用参数
*
@@ -155,7 +155,8 @@ public interface IParamsCollectManifestEOService extends IService<ParamsCollectM
// 冻结配置
boolean lockConfigColumn(ParamsCollectManifestVO paramsCollectManifestVO);
// 引用参数(全清单)
boolean referParamsAll(String paramsManifestId, String sourceConfigId, String targetConfigId);
// 引用参数
boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO);
@@ -3738,6 +3738,40 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
return paramsConfigEOService.updateBatchById(updateConfigEOList);
}
@Override
public boolean referParamsAll(String paramsManifestId, String sourceConfigId, String targetConfigId) {
LambdaQueryWrapper<ParamsCollectManifestEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsCollectManifestEO::getParamsManifestId, paramsManifestId)
.notIn(ParamsCollectManifestEO::getControlType, ControlTypeEnum.Title.getValue())
.orderByDesc(ParamsCollectManifestEO::getUpdateTime); // 按修改时间降序
List<ParamsCollectManifestEO> paramsCollectManifestList = list(queryWrapper);
List<ParamsConfigDataEO> addConfigDataEOList = new ArrayList<>();
for (ParamsCollectManifestEO paramsCollectManifest : paramsCollectManifestList) {
List<ParamsConfigDataEO> sourceConfigDataEOList = this.paramsConfigDataEOService.queryListByConfigIdAndCollectManifestId(sourceConfigId, paramsCollectManifest.getId());
if (CollectionUtils.isNotEmpty(sourceConfigDataEOList)) {
for (ParamsConfigDataEO sourceConfigDataEO : sourceConfigDataEOList) {
if (ObjectUtil.isNotEmpty(sourceConfigDataEO)) {
// 根据配置id参数清单id将被引用参数列的数据删掉重新加
QueryWrapper<ParamsConfigDataEO> targetConfigDataRemoveWrap = new QueryWrapper<>();
targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsConfigId, targetConfigId);
targetConfigDataRemoveWrap.lambda().eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifest.getId());
this.paramsConfigDataEOService.remove(targetConfigDataRemoveWrap);
ParamsConfigDataEO targetConfigDataEO = new ParamsConfigDataEO();
BeanUtils.copyProperties(sourceConfigDataEO, targetConfigDataEO);
targetConfigDataEO.setId(null);
targetConfigDataEO.setParamsConfigId(targetConfigId);
targetConfigDataEO.setParamsCollectManifestId(paramsCollectManifest.getId());
addConfigDataEOList.add(targetConfigDataEO);
}
}
}
}
paramsConfigDataEOService.saveBatch(addConfigDataEOList);
return true;
}
@Override
public boolean referParams(ParamsCollectManifestVO paramsCollectManifestVO) {
if (StringUtils.isEmpty(paramsCollectManifestVO.getIds())
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.cert.collect.entity.ParamsConfigDataEO;
import com.jero.modules.cert.collect.mapper.ParamsConfigDataEOMapper;
import com.jero.modules.cert.collect.service.IParamsConfigDataEOService;
import com.jero.modules.system.util.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@@ -109,7 +110,9 @@ public class ParamsConfigDataEOServiceImpl extends ServiceImpl<ParamsConfigDataE
public List<ParamsConfigDataEO> queryListByConfigIdAndCollectManifestId(String paramsConfigId, String paramsCollectManifestId) {
LambdaQueryWrapper<ParamsConfigDataEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ParamsConfigDataEO::getParamsConfigId, paramsConfigId);
queryWrapper.eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestId);
if(StringUtils.isNotBlank(paramsCollectManifestId)){
queryWrapper.eq(ParamsConfigDataEO::getParamsCollectManifestId, paramsCollectManifestId);
}
queryWrapper.orderByAsc(ParamsConfigDataEO::getOrderNum);
return this.list(queryWrapper);
}