|
|
|
package com.ruoyi.tc.controller;
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
import com.ruoyi.common.core.controller.BaseController;
|
|
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
|
|
import com.ruoyi.common.exception.ServiceException;
|
|
|
|
import com.ruoyi.common.utils.SecurityUtils;
|
|
|
|
import com.ruoyi.common.utils.poi.ExcelUtil;
|
|
|
|
import com.ruoyi.tc.entity.*;
|
|
|
|
import com.ruoyi.tc.entity.po.*;
|
|
|
|
import com.ruoyi.tc.entity.request.Acomma;
|
|
|
|
import com.ruoyi.tc.entity.request.AssetAuditPageRequest;
|
|
|
|
import com.ruoyi.tc.entity.request.AssetAuditRequest;
|
|
|
|
import com.ruoyi.tc.entity.request.AssetCurrentPageRequest;
|
|
|
|
import com.ruoyi.tc.service.*;
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import javax.validation.Valid;
|
|
|
|
import java.io.Serializable;
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.Arrays;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.Objects;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 现有资产表(AssetCurrent)表控制层
|
|
|
|
*
|
|
|
|
* @author makejava
|
|
|
|
* @since 2024-11-15 10:03:56
|
|
|
|
*/
|
|
|
|
@Api(tags = "现有资产表")
|
|
|
|
@RestController
|
|
|
|
@RequestMapping("/tc/assetCurrent")
|
|
|
|
public class AssetCurrentController extends BaseController {
|
|
|
|
/**
|
|
|
|
* 服务对象
|
|
|
|
*/
|
|
|
|
@Resource
|
|
|
|
private AssetCurrentService assetCurrentService;
|
|
|
|
@Resource
|
|
|
|
private AssetSupplyChainService assetSupplyChainService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBasicNetworkService assetBasicNetworkService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBusinessFormService assetBusinessFormService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private UnitOtherConcatService unitOtherConcatService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetTaskService assetTaskService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetCurrentCpService assetCurrentCpService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBusinessFormCpService assetBusinessFormCpService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetSupplyChainCpService assetSupplyChainCpService;
|
|
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBasicNetworkCpService assetBasicNetworkCpService;
|
|
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private UnitOtherConcatCpService unitOtherConcatCpService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private UnitService unitService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetCurrentJyService assetCurrentJyService;
|
|
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBusinessFormJyService assetBusinessFormJyService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetSupplyChainJyService assetSupplyChainJyService;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private UnitOtherConcatJyservice unitOtherConcatJyservice;
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
private AssetBasicNetworkJyService assetBasicNetworkJyService;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 分页查询所有数据
|
|
|
|
*
|
|
|
|
* @param as 查询实体
|
|
|
|
* @return 所有数据
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "分页查询所有数据", response = AssetCurrent.class)
|
|
|
|
@GetMapping
|
|
|
|
public AjaxResult selectAll(AssetCurrentPageRequest as) {
|
|
|
|
Page<AssetCurrent> page = new Page<>();
|
|
|
|
page.setSize(as.getSize());
|
|
|
|
page.setCurrent(as.getCurrent());
|
|
|
|
try {
|
|
|
|
if (!SecurityUtils.getLoginUser().getUser().isAdmin() && !SecurityUtils.hasRole("common")) {
|
|
|
|
as.setDwmc(SecurityUtils.getLoginUser().getUser().getNickName());
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
throw new ServiceException("获取用户信息异常");
|
|
|
|
}
|
|
|
|
return success(assetCurrentService.page(page, as));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 通过主键查询单条数据
|
|
|
|
*
|
|
|
|
* @param id 主键
|
|
|
|
* @return 单条数据
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "通过主键查询单条数据", response = AssetCurrent.class)
|
|
|
|
@GetMapping("{id}")
|
|
|
|
public AjaxResult selectOne(@PathVariable Serializable id) {
|
|
|
|
return success(assetCurrentService.selectOne(id));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 新增数据
|
|
|
|
*
|
|
|
|
* @param assetCurrent 实体对象
|
|
|
|
* @return 新增结果
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "新增数据")
|
|
|
|
@PostMapping
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('admin,common')")
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
public AjaxResult insert(@RequestBody @Valid AssetCurrent assetCurrent) {
|
|
|
|
StringBuilder a = new StringBuilder();
|
|
|
|
if (assetCurrent.getGlymList() != null) {
|
|
|
|
assetCurrent.getGlymList().forEach(x -> {
|
|
|
|
if (!Objects.equals(x.getKey(), "") && x.getKey() != null) {
|
|
|
|
a.append(x.getKey());
|
|
|
|
a.append(",");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
assetCurrent.setGlym(a.toString());
|
|
|
|
StringBuilder b = new StringBuilder();
|
|
|
|
if (assetCurrent.getGlIpList() != null) {
|
|
|
|
assetCurrent.getGlIpList().forEach(x -> {
|
|
|
|
if (!Objects.equals(x.getKey(), "") && x.getKey() != null) {
|
|
|
|
b.append(x.getKey());
|
|
|
|
b.append(",");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
assetCurrent.setGlIp(b.toString());
|
|
|
|
assetCurrentService.save(assetCurrent);
|
|
|
|
//新增新监管业务形态
|
|
|
|
if (assetCurrent.getXjgywxt() != null) {
|
|
|
|
assetCurrent.getXjgywxt().setAssetId(assetCurrent.getId());
|
|
|
|
assetBusinessFormService.save(assetCurrent.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChain items : assetCurrent.getGylxxList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainService.saveBatch(assetCurrent.getGylxxList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetwork items : assetCurrent.getJcwlList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkService.saveBatch(assetCurrent.getJcwlList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcat items : assetCurrent.getOtherConcat()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatService.saveBatch(assetCurrent.getOtherConcat());
|
|
|
|
}
|
|
|
|
|
|
|
|
// 单位有进行中的任务时,管理端新增该单位下的资产则需同步至当前进行中的任务中。
|
|
|
|
//获取新增资产id
|
|
|
|
Long id = assetCurrent.getId();
|
|
|
|
Integer i = unitService.selectTaskId(assetCurrent.getDwmc(), "0");
|
|
|
|
if (i != null) {
|
|
|
|
//新增资产复制主表
|
|
|
|
AssetCurrentCpPo assetCurrentCpPo = new AssetCurrentCpPo();
|
|
|
|
BeanUtil.copyProperties(assetCurrent, assetCurrentCpPo);
|
|
|
|
assetCurrentCpPo.setTaskId(i);
|
|
|
|
assetCurrentCpService.save(assetCurrentCpPo);
|
|
|
|
//新增新监管业务形态
|
|
|
|
//根据资产id查询新监管业务形态主表id
|
|
|
|
if (assetCurrent.getXjgywxt() != null) {
|
|
|
|
assetCurrentCpPo.getXjgywxt().setAssetId(id);
|
|
|
|
assetCurrentCpPo.getXjgywxt().setTaskId(i);
|
|
|
|
assetBusinessFormCpService.save(assetCurrentCpPo.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChainCpPo items : assetCurrentCpPo.getGylxxList()) {
|
|
|
|
items.setAssetId(id);
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainCpService.saveBatch(assetCurrentCpPo.getGylxxList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetworkCpPo items : assetCurrentCpPo.getJcwlList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkCpService.saveBatch(assetCurrentCpPo.getJcwlList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcatCpPo items : assetCurrentCpPo.getOtherConcat()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatCpService.saveBatch(assetCurrentCpPo.getOtherConcat());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return
|
|
|
|
|
|
|
|
success();
|
|
|
|
|
|
|
|
}
|
|
|
|
//=================================================
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 单位自编辑进行校验
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "单位自编辑进行校验")
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('unit')")
|
|
|
|
@PostMapping("/unitEdit")
|
|
|
|
public AjaxResult unitEdit(@RequestBody @Valid AssetCurrentJyPo assetCurrentJyPo) {
|
|
|
|
AssetCurrentJyPo one = assetCurrentJyService.lambdaQuery().eq(AssetCurrentJyPo::getXtmc, assetCurrentJyPo.getXtmc())
|
|
|
|
.eq(AssetCurrentJyPo::getDwmc, assetCurrentJyPo.getDwmc()).isNull(AssetCurrentJyPo::getTaskId).one();
|
|
|
|
assetCurrentJyPo.setAuditState("1");
|
|
|
|
assetCurrentJyPo.setAuditYy(null);
|
|
|
|
if (one != null) {
|
|
|
|
assetCurrentJyPo.setCurrentId(one.getCurrentId());
|
|
|
|
assetCurrentJyService.updateById(assetCurrentJyPo);
|
|
|
|
|
|
|
|
QueryWrapper<AssetSupplyChainJyPo> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
queryWrapper2.eq("asset_id", assetCurrentJyPo.getId());
|
|
|
|
assetSupplyChainJyService.remove(queryWrapper2);
|
|
|
|
QueryWrapper<AssetBasicNetworkJyPo> queryWrapper3 = new QueryWrapper<>();
|
|
|
|
queryWrapper3.eq("asset_id", assetCurrentJyPo.getId());
|
|
|
|
assetBasicNetworkJyService.remove(queryWrapper3);
|
|
|
|
QueryWrapper<AssetBusinessFormJyPo> queryWrapper4 = new QueryWrapper<>();
|
|
|
|
queryWrapper4.eq("asset_id", assetCurrentJyPo.getId());
|
|
|
|
assetBusinessFormJyService.remove(queryWrapper4);
|
|
|
|
QueryWrapper<UnitOtherConcatJyPo> queryWrapper5 = new QueryWrapper<>();
|
|
|
|
queryWrapper5.eq("asset_id", assetCurrentJyPo.getId());
|
|
|
|
unitOtherConcatJyservice.remove(queryWrapper5);
|
|
|
|
if (assetCurrentJyPo.getXjgywxt() != null) {
|
|
|
|
assetCurrentJyPo.getXjgywxt().setAssetId(assetCurrentJyPo.getId());
|
|
|
|
assetBusinessFormJyService.save(assetCurrentJyPo.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (assetCurrentJyPo.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChainJyPo items : assetCurrentJyPo.getGylxxList()) {
|
|
|
|
items.setAssetId(assetCurrentJyPo.getId());
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainJyService.saveBatch(assetCurrentJyPo.getGylxxList());
|
|
|
|
}
|
|
|
|
if (assetCurrentJyPo.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetworkJyPo items : assetCurrentJyPo.getJcwlList()) {
|
|
|
|
items.setAssetId(assetCurrentJyPo.getId());
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkJyService.saveBatch(assetCurrentJyPo.getJcwlList());
|
|
|
|
}
|
|
|
|
if (assetCurrentJyPo.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcatJyPo items : assetCurrentJyPo.getOtherConcat()) {
|
|
|
|
items.setAssetId(assetCurrentJyPo.getId());
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatJyservice.saveBatch(assetCurrentJyPo.getOtherConcat());
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
AssetCurrentCpPo acc = new AssetCurrentCpPo();
|
|
|
|
BeanUtil.copyProperties(assetCurrentJyPo, acc);
|
|
|
|
assetCurrentCpService.save(acc);
|
|
|
|
if (acc.getXjgywxt() != null) {
|
|
|
|
acc.getXjgywxt().setAssetId(acc.getId());
|
|
|
|
assetBusinessFormCpService.save(acc.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (acc.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChainCpPo items : acc.getGylxxList()) {
|
|
|
|
items.setAssetId(acc.getId());
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainCpService.saveBatch(acc.getGylxxList());
|
|
|
|
}
|
|
|
|
if (acc.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetworkCpPo items : acc.getJcwlList()) {
|
|
|
|
items.setAssetId(acc.getId());
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkCpService.saveBatch(acc.getJcwlList());
|
|
|
|
}
|
|
|
|
if (acc.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcatCpPo items : acc.getOtherConcat()) {
|
|
|
|
items.setAssetId(acc.getId());
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatCpService.saveBatch(acc.getOtherConcat());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return success();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 分页查询管理端或者单位端审核列表
|
|
|
|
*
|
|
|
|
* @param as 查询实体
|
|
|
|
* @return 所有数据
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "分页查询管理端或者单位端审核列表", response = AssetCurrentCpPo.class)
|
|
|
|
@GetMapping("/getAuditList")
|
|
|
|
public AjaxResult getAuditList(AssetAuditPageRequest as) {
|
|
|
|
Page<AssetCurrentJyPo> page = new Page<>();
|
|
|
|
page.setSize(as.getSize());
|
|
|
|
page.setCurrent(as.getCurrent());
|
|
|
|
try {
|
|
|
|
if (!SecurityUtils.getLoginUser().getUser().isAdmin() && !SecurityUtils.hasRole("common")) {
|
|
|
|
as.setDwmc(SecurityUtils.getLoginUser().getUser().getNickName());
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
throw new ServiceException("获取用户信息异常");
|
|
|
|
}
|
|
|
|
return success(assetCurrentJyService.getAuditList(page, as));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 查看中间数据详情
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "单位端查看中间数据详情", response = AssetCurrentCpPo.class)
|
|
|
|
@GetMapping("/lookInfo/{id}")
|
|
|
|
public AjaxResult lookInfo(@PathVariable Long id) {
|
|
|
|
AssetCurrentCpPo byId = assetCurrentCpService.getById(id);
|
|
|
|
byId.setGylxxList(assetSupplyChainCpService.lambdaQuery().eq(AssetSupplyChainCpPo::getAssetId, byId.getId()).isNull(AssetSupplyChainCpPo::getTaskId).list());
|
|
|
|
byId.setJcwlList(assetBasicNetworkCpService.lambdaQuery().eq(AssetBasicNetworkCpPo::getAssetId, byId.getId()).isNull(AssetBasicNetworkCpPo::getTaskId).list());
|
|
|
|
byId.setXjgywxt(assetBusinessFormCpService.lambdaQuery().eq(AssetBusinessFormCpPo::getAssetId, byId.getId()).isNull(AssetBusinessFormCpPo::getTaskId).one());
|
|
|
|
byId.setOtherConcat(unitOtherConcatCpService.lambdaQuery().eq(UnitOtherConcatCpPo::getAssetId, byId.getId()).isNull(UnitOtherConcatCpPo::getTaskId).list());
|
|
|
|
List<Acomma> a1 = new ArrayList<>();
|
|
|
|
if (byId.getGlym() != null) {
|
|
|
|
Arrays.asList(byId.getGlym().split(",")).forEach(x -> {
|
|
|
|
Acomma acomma = new Acomma();
|
|
|
|
acomma.setKey(x);
|
|
|
|
a1.add(acomma);
|
|
|
|
});
|
|
|
|
byId.setGlymList(a1);
|
|
|
|
}
|
|
|
|
List<Acomma> a2 = new ArrayList<>();
|
|
|
|
if (byId.getGlIp() != null) {
|
|
|
|
Arrays.asList(byId.getGlIp().split(",")).forEach(x -> {
|
|
|
|
Acomma acomma = new Acomma();
|
|
|
|
acomma.setKey(x);
|
|
|
|
a2.add(acomma);
|
|
|
|
});
|
|
|
|
byId.setGlIpList(a2);
|
|
|
|
}
|
|
|
|
return success(byId);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 管理端审核
|
|
|
|
*
|
|
|
|
* @param as 查询实体
|
|
|
|
* @return 所有数据
|
|
|
|
*/
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('admin,common')")
|
|
|
|
@ApiOperation(value = "管理端审核")
|
|
|
|
@PostMapping("/audit")
|
|
|
|
public AjaxResult audit(@Valid @RequestBody AssetAuditRequest as) {
|
|
|
|
AssetCurrentCpPo ass = new AssetCurrentCpPo();
|
|
|
|
BeanUtil.copyProperties(as, ass);
|
|
|
|
assetCurrentCpService.updateById(ass);
|
|
|
|
//通过数据同步
|
|
|
|
if ("2".equals(as.getAuditState())) {
|
|
|
|
AssetCurrentCpPo byId = assetCurrentCpService.getById(as.getCurrentId());
|
|
|
|
AssetCurrent assetCurrent = new AssetCurrent();
|
|
|
|
BeanUtil.copyProperties(byId, assetCurrent);
|
|
|
|
//修改主表
|
|
|
|
assetCurrentService.updateById(assetCurrent);
|
|
|
|
//删除副表数据然后再添加
|
|
|
|
assetSupplyChainService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
assetBasicNetworkService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
assetBusinessFormService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
unitOtherConcatService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
|
|
|
|
List<AssetSupplyChainCpPo> list = assetSupplyChainCpService.lambdaQuery().eq(AssetSupplyChainCpPo::getAssetId, byId.getId()).isNull(AssetSupplyChainCpPo::getTaskId).list();
|
|
|
|
list.forEach(x -> {
|
|
|
|
AssetSupplyChain a1 = new AssetSupplyChain();
|
|
|
|
BeanUtil.copyProperties(x, a1);
|
|
|
|
assetSupplyChainService.save(a1);
|
|
|
|
});
|
|
|
|
|
|
|
|
List<AssetBasicNetworkCpPo> list1 = assetBasicNetworkCpService.lambdaQuery().eq(AssetBasicNetworkCpPo::getAssetId, byId.getId()).isNull(AssetBasicNetworkCpPo::getTaskId).list();
|
|
|
|
list1.forEach(x -> {
|
|
|
|
AssetBasicNetwork a2 = new AssetBasicNetwork();
|
|
|
|
BeanUtil.copyProperties(x, a2);
|
|
|
|
assetBasicNetworkService.save(a2);
|
|
|
|
});
|
|
|
|
|
|
|
|
List<AssetBusinessFormCpPo> list2 = assetBusinessFormCpService.lambdaQuery().eq(AssetBusinessFormCpPo::getAssetId, byId.getId()).isNull(AssetBusinessFormCpPo::getTaskId).list();
|
|
|
|
list2.forEach(x -> {
|
|
|
|
AssetBusinessForm a3 = new AssetBusinessForm();
|
|
|
|
BeanUtil.copyProperties(x, a3);
|
|
|
|
assetBusinessFormService.save(a3);
|
|
|
|
});
|
|
|
|
|
|
|
|
List<UnitOtherConcatCpPo> list3 = unitOtherConcatCpService.lambdaQuery().eq(UnitOtherConcatCpPo::getAssetId, byId.getId()).isNull(UnitOtherConcatCpPo::getTaskId).list();
|
|
|
|
list3.forEach(x -> {
|
|
|
|
UnitOtherConcat a4 = new UnitOtherConcat();
|
|
|
|
BeanUtil.copyProperties(x, a4);
|
|
|
|
unitOtherConcatService.save(a4);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
return success();
|
|
|
|
}
|
|
|
|
//=================================================
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 修改数据
|
|
|
|
*
|
|
|
|
* @param assetCurrent 实体对象
|
|
|
|
* @return 修改结果
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "修改数据")
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('admin,common')")
|
|
|
|
@PutMapping
|
|
|
|
public AjaxResult update(@RequestBody @Valid AssetCurrent assetCurrent) {
|
|
|
|
StringBuilder a = new StringBuilder();
|
|
|
|
if (assetCurrent.getGlymList() != null) {
|
|
|
|
assetCurrent.getGlymList().forEach(x -> {
|
|
|
|
if (!Objects.equals(x.getKey(), "") && x.getKey() != null) {
|
|
|
|
a.append(x.getKey());
|
|
|
|
a.append(",");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
assetCurrent.setGlym(a.toString());
|
|
|
|
StringBuilder b = new StringBuilder();
|
|
|
|
if (assetCurrent.getGlIpList() != null) {
|
|
|
|
assetCurrent.getGlIpList().forEach(x -> {
|
|
|
|
if (!Objects.equals(x.getKey(), "") && x.getKey() != null) {
|
|
|
|
b.append(x.getKey());
|
|
|
|
b.append(",");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
|
|
|
assetCurrent.setGlIp(b.toString());
|
|
|
|
assetCurrentService.updateById(assetCurrent);
|
|
|
|
assetSupplyChainService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
assetBasicNetworkService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
assetBusinessFormService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
unitOtherConcatService.deleteByAssetIds(assetCurrent.getId());
|
|
|
|
if (assetCurrent.getXjgywxt() != null) {
|
|
|
|
assetCurrent.getXjgywxt().setAssetId(assetCurrent.getId());
|
|
|
|
assetCurrent.getXjgywxt().setId(null);
|
|
|
|
assetBusinessFormService.save(assetCurrent.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChain items : assetCurrent.getGylxxList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setId(null);
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainService.saveBatch(assetCurrent.getGylxxList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetwork items : assetCurrent.getJcwlList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setId(null);
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkService.saveBatch(assetCurrent.getJcwlList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcat items : assetCurrent.getOtherConcat()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setConcatId(null);
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatService.saveBatch(assetCurrent.getOtherConcat());
|
|
|
|
}
|
|
|
|
//================================
|
|
|
|
|
|
|
|
QueryWrapper<AssetCurrentCpPo> queryWrapper1 = new QueryWrapper<>();
|
|
|
|
queryWrapper1.eq("id", assetCurrent.getId());
|
|
|
|
assetCurrentCpService.remove(queryWrapper1);
|
|
|
|
|
|
|
|
Integer i = unitService.selectTaskId(assetCurrent.getDwmc(), "0");
|
|
|
|
AssetCurrentCpPo assetCurrentCpPo = new AssetCurrentCpPo();
|
|
|
|
BeanUtil.copyProperties(assetCurrent, assetCurrentCpPo);
|
|
|
|
assetCurrentCpPo.setTaskId(i);
|
|
|
|
assetCurrentCpService.save(assetCurrentCpPo);
|
|
|
|
|
|
|
|
QueryWrapper<AssetSupplyChainCpPo> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
queryWrapper2.eq("asset_id", assetCurrent.getId());
|
|
|
|
assetSupplyChainCpService.remove(queryWrapper2);
|
|
|
|
QueryWrapper<AssetBasicNetworkCpPo> queryWrapper3 = new QueryWrapper<>();
|
|
|
|
queryWrapper3.eq("asset_id", assetCurrent.getId());
|
|
|
|
assetBasicNetworkCpService.remove(queryWrapper3);
|
|
|
|
QueryWrapper<AssetBusinessFormCpPo> queryWrapper4 = new QueryWrapper<>();
|
|
|
|
queryWrapper4.eq("asset_id", assetCurrent.getId());
|
|
|
|
assetBusinessFormCpService.remove(queryWrapper4);
|
|
|
|
QueryWrapper<UnitOtherConcatCpPo> queryWrapper5 = new QueryWrapper<>();
|
|
|
|
queryWrapper5.eq("asset_id", assetCurrent.getId());
|
|
|
|
unitOtherConcatCpService.remove(queryWrapper5);
|
|
|
|
|
|
|
|
if (assetCurrent.getXjgywxt() != null) {
|
|
|
|
assetCurrentCpPo.getXjgywxt().setAssetId(assetCurrent.getId());
|
|
|
|
assetCurrentCpPo.getXjgywxt().setTaskId(i);
|
|
|
|
assetBusinessFormCpService.save(assetCurrentCpPo.getXjgywxt());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getGylxxList() != null) {
|
|
|
|
for (AssetSupplyChainCpPo items : assetCurrentCpPo.getGylxxList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增供应链
|
|
|
|
assetSupplyChainCpService.saveBatch(assetCurrentCpPo.getGylxxList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getJcwlList() != null) {
|
|
|
|
for (AssetBasicNetworkCpPo items : assetCurrentCpPo.getJcwlList()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增基础网络
|
|
|
|
assetBasicNetworkCpService.saveBatch(assetCurrentCpPo.getJcwlList());
|
|
|
|
}
|
|
|
|
if (assetCurrent.getOtherConcat() != null) {
|
|
|
|
for (UnitOtherConcatCpPo items : assetCurrentCpPo.getOtherConcat()) {
|
|
|
|
items.setAssetId(assetCurrent.getId());
|
|
|
|
items.setTaskId(i);
|
|
|
|
}
|
|
|
|
//新增其他联系人
|
|
|
|
unitOtherConcatCpService.saveBatch(assetCurrentCpPo.getOtherConcat());
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return success();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 删除数据
|
|
|
|
*
|
|
|
|
* @param id 主键
|
|
|
|
* @return 删除结果
|
|
|
|
*/
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('admin,common')")
|
|
|
|
@ApiOperation(value = "删除数据")
|
|
|
|
@DeleteMapping("/{id}")
|
|
|
|
public AjaxResult delete(@PathVariable Long id) {
|
|
|
|
assetSupplyChainService.deleteByAssetIds(id);
|
|
|
|
assetBasicNetworkService.deleteByAssetIds(id);
|
|
|
|
assetBusinessFormService.deleteByAssetIds(id);
|
|
|
|
unitOtherConcatService.deleteByAssetIds(id);
|
|
|
|
assetCurrentService.deleteByUnitIds(id);
|
|
|
|
|
|
|
|
QueryWrapper<AssetCurrentCpPo> queryWrapper1 = new QueryWrapper<>();
|
|
|
|
queryWrapper1.eq("id", id);
|
|
|
|
assetCurrentCpService.remove(queryWrapper1);
|
|
|
|
QueryWrapper<AssetSupplyChainCpPo> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
queryWrapper2.eq("asset_id", id);
|
|
|
|
assetSupplyChainCpService.remove(queryWrapper2);
|
|
|
|
QueryWrapper<AssetBasicNetworkCpPo> queryWrapper3 = new QueryWrapper<>();
|
|
|
|
queryWrapper3.eq("asset_id", id);
|
|
|
|
assetBasicNetworkCpService.remove(queryWrapper3);
|
|
|
|
QueryWrapper<AssetBusinessFormCpPo> queryWrapper4 = new QueryWrapper<>();
|
|
|
|
queryWrapper4.eq("asset_id", id);
|
|
|
|
assetBusinessFormCpService.remove(queryWrapper4);
|
|
|
|
QueryWrapper<UnitOtherConcatCpPo> queryWrapper5 = new QueryWrapper<>();
|
|
|
|
queryWrapper5.eq("asset_id", id);
|
|
|
|
unitOtherConcatCpService.remove(queryWrapper5);
|
|
|
|
|
|
|
|
|
|
|
|
return success();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 下载资产导入模板
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "下载资产导入模板")
|
|
|
|
@PostMapping("/importTemplate")
|
|
|
|
public void importTemplate(HttpServletResponse response) {
|
|
|
|
ExcelUtil<AssetExport> util = new ExcelUtil<>(AssetExport.class);
|
|
|
|
util.importTemplateExcel(response, "资产导入模板");
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 导出现有资产
|
|
|
|
*/
|
|
|
|
@ApiOperation(value = "导出现有资产")
|
|
|
|
@PostMapping("/export")
|
|
|
|
public void exportProject(HttpServletResponse response, AssetCurrentPageRequest as) {
|
|
|
|
try {
|
|
|
|
if (!SecurityUtils.getLoginUser().getUser().isAdmin() && !SecurityUtils.hasRole("common")) {
|
|
|
|
as.setDwmc(SecurityUtils.getLoginUser().getUser().getNickName());
|
|
|
|
}
|
|
|
|
} catch (Exception e) {
|
|
|
|
throw new ServiceException("获取用户信息异常");
|
|
|
|
}
|
|
|
|
List<AssetExport> list = assetCurrentService.page1(as);
|
|
|
|
ExcelUtil<AssetExport> util = new ExcelUtil<>(AssetExport.class);
|
|
|
|
util.exportExcel(response, list, "现有资产记录");
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 导入现有资产
|
|
|
|
*/
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
@PreAuthorize("@ss.hasAnyRoles('admin,common')")
|
|
|
|
@ApiOperation(value = "导入现有资产")
|
|
|
|
@PostMapping(value = "/import", consumes = "multipart/form-data")
|
|
|
|
public AjaxResult export(@RequestPart("file") MultipartFile file) throws Exception {
|
|
|
|
//读取所有的字段
|
|
|
|
ExcelUtil<AssetExport> util = new ExcelUtil<>(AssetExport.class);
|
|
|
|
List<AssetExport> proList = util.importExcel(file.getInputStream());
|
|
|
|
for (AssetExport items : proList) {
|
|
|
|
AssetCurrent as = new AssetCurrent();
|
|
|
|
//copy新增到新的现有资产表里面
|
|
|
|
BeanUtil.copyProperties(items, as);
|
|
|
|
AssetCurrent one = assetCurrentService.lambdaQuery().eq(AssetCurrent::getXtmc, as.getXtmc())
|
|
|
|
.eq(AssetCurrent::getDwmc, as.getDwmc()).one();
|
|
|
|
if (one != null) {
|
|
|
|
as.setId(one.getId());
|
|
|
|
assetCurrentService.updateById(as);
|
|
|
|
List<Long> a1 = new ArrayList<>();
|
|
|
|
a1.add(one.getId());
|
|
|
|
assetSupplyChainService.deleteIdList(a1);
|
|
|
|
assetBasicNetworkService.deleteIdList(a1);
|
|
|
|
} else {
|
|
|
|
assetCurrentService.save(as);
|
|
|
|
}
|
|
|
|
|
|
|
|
//新增系统建设单位
|
|
|
|
AssetSupplyChain s1 = new AssetSupplyChain();
|
|
|
|
BeanUtil.copyProperties(items, s1);
|
|
|
|
s1.setType(5);
|
|
|
|
s1.setAssetId(as.getId());
|
|
|
|
assetSupplyChainService.save(s1);
|
|
|
|
//新增系统运营单位
|
|
|
|
AssetSupplyChain b6 = new AssetSupplyChain();
|
|
|
|
b6.setGyszcdz(items.getGyszcdz1());
|
|
|
|
b6.setLxr(items.getLxr1());
|
|
|
|
b6.setLxdh(items.getLxdh1());
|
|
|
|
b6.setSfwtc(items.getSfwtc1());
|
|
|
|
b6.setName(items.getName1());
|
|
|
|
b6.setTyshxydm(items.getTyshxydm1());
|
|
|
|
b6.setType(7);
|
|
|
|
b6.setAssetId(as.getId());
|
|
|
|
assetSupplyChainService.save(b6);
|
|
|
|
//新增服务器信息
|
|
|
|
AssetBasicNetwork a1 = new AssetBasicNetwork();
|
|
|
|
BeanUtil.copyProperties(items, a1);
|
|
|
|
a1.setType(1);
|
|
|
|
a1.setAssetId(as.getId());
|
|
|
|
assetBasicNetworkService.save(a1);
|
|
|
|
//新增网络设备
|
|
|
|
AssetBasicNetwork a2 = new AssetBasicNetwork();
|
|
|
|
a2.setSblx(items.getWlsblx());
|
|
|
|
a2.setPp(items.getWlpp());
|
|
|
|
a2.setSbIp(items.getWlsbIp());
|
|
|
|
a2.setYjxh(items.getWlyjxh());
|
|
|
|
a2.setYjxlh(items.getWlyjxlh());
|
|
|
|
a2.setYjbbxx(items.getWlyjbbxx());
|
|
|
|
a2.setYjyt(items.getWlyjyt());
|
|
|
|
a2.setYjbsxx(items.getWlyjbsxx());
|
|
|
|
a2.setType(2);
|
|
|
|
a2.setAssetId(as.getId());
|
|
|
|
assetBasicNetworkService.save(a2);
|
|
|
|
//新增安全设备
|
|
|
|
AssetBasicNetwork a3 = new AssetBasicNetwork();
|
|
|
|
a3.setSblx(items.getAqwlsblx());
|
|
|
|
a3.setPp(items.getAqwlpp());
|
|
|
|
a3.setSbIp(items.getAqwlsbIp());
|
|
|
|
|
|
|
|
a3.setYjxh(items.getAqyjxh());
|
|
|
|
a3.setYjxlh(items.getAqyjxlh());
|
|
|
|
a3.setYjbbxx(items.getAqyjbbxx());
|
|
|
|
a3.setYjyt(items.getAqyjyt());
|
|
|
|
a3.setYjbsxx(items.getAqyjbswz());
|
|
|
|
|
|
|
|
|
|
|
|
a3.setType(3);
|
|
|
|
a3.setAssetId(as.getId());
|
|
|
|
assetBasicNetworkService.save(a3);
|
|
|
|
|
|
|
|
//=============
|
|
|
|
Long id = as.getId();
|
|
|
|
Integer i = unitService.selectTaskId(as.getDwmc(), "0");
|
|
|
|
if (i != null) {
|
|
|
|
//新增资产复制主表
|
|
|
|
AssetCurrentCpPo assetCurrentCpPo = new AssetCurrentCpPo();
|
|
|
|
BeanUtil.copyProperties(as, assetCurrentCpPo);
|
|
|
|
assetCurrentCpPo.setTaskId(i);
|
|
|
|
assetCurrentCpPo.setStatus(0);
|
|
|
|
AssetCurrentCpPo two = assetCurrentCpService.lambdaQuery().eq(AssetCurrentCpPo::getXtmc, as.getXtmc())
|
|
|
|
.eq(AssetCurrentCpPo::getDwmc, as.getDwmc()).isNotNull(AssetCurrentCpPo::getTaskId).one();
|
|
|
|
if (two != null) {
|
|
|
|
assetCurrentCpPo.setId(two.getId());
|
|
|
|
assetCurrentCpService.updateById(assetCurrentCpPo);
|
|
|
|
assetSupplyChainCpService.deletByAssetIdandTaskId(id, i);
|
|
|
|
assetBasicNetworkCpService.deletByAssetIdandTaskId(id, i);
|
|
|
|
} else {
|
|
|
|
assetCurrentCpService.save(assetCurrentCpPo);
|
|
|
|
}
|
|
|
|
//新增系统建设单位
|
|
|
|
AssetSupplyChainCpPo co1 = new AssetSupplyChainCpPo();
|
|
|
|
BeanUtil.copyProperties(items, co1);
|
|
|
|
co1.setType(5);
|
|
|
|
co1.setAssetId(id);
|
|
|
|
co1.setTaskId(i);
|
|
|
|
assetSupplyChainCpService.save(co1);
|
|
|
|
|
|
|
|
//新增系统运营单位
|
|
|
|
AssetSupplyChainCpPo co2 = new AssetSupplyChainCpPo();
|
|
|
|
co2.setGyszcdz(items.getGyszcdz1());
|
|
|
|
co2.setLxr(items.getLxr1());
|
|
|
|
co2.setLxdh(items.getLxdh1());
|
|
|
|
co2.setSfwtc(items.getSfwtc1());
|
|
|
|
co2.setName(items.getName1());
|
|
|
|
co2.setTyshxydm(items.getTyshxydm1());
|
|
|
|
co2.setType(7);
|
|
|
|
co2.setAssetId(as.getId());
|
|
|
|
co2.setTaskId(i);
|
|
|
|
assetSupplyChainCpService.save(co2);
|
|
|
|
|
|
|
|
//新增服务器信息
|
|
|
|
AssetBasicNetworkCpPo co3 = new AssetBasicNetworkCpPo();
|
|
|
|
BeanUtil.copyProperties(items, co3);
|
|
|
|
co3.setType(1);
|
|
|
|
co3.setAssetId(id);
|
|
|
|
co3.setTaskId(i);
|
|
|
|
assetBasicNetworkCpService.save(co3);
|
|
|
|
|
|
|
|
//新增网络设备
|
|
|
|
AssetBasicNetworkCpPo co4 = new AssetBasicNetworkCpPo();
|
|
|
|
co4.setSblx(items.getWlsblx());
|
|
|
|
co4.setPp(items.getWlpp());
|
|
|
|
co4.setSbIp(items.getWlsbIp());
|
|
|
|
co4.setYjxh(items.getWlyjxh());
|
|
|
|
co4.setYjxlh(items.getWlyjxlh());
|
|
|
|
co4.setYjbbxx(items.getWlyjbbxx());
|
|
|
|
co4.setYjyt(items.getWlyjyt());
|
|
|
|
co4.setYjbsxx(items.getWlyjbsxx());
|
|
|
|
co4.setType(2);
|
|
|
|
co4.setAssetId(id);
|
|
|
|
co4.setTaskId(i);
|
|
|
|
assetBasicNetworkCpService.save(co4);
|
|
|
|
//新增安全设备
|
|
|
|
AssetBasicNetworkCpPo co5 = new AssetBasicNetworkCpPo();
|
|
|
|
co5.setYjxh(items.getAqyjxh());
|
|
|
|
co5.setYjxlh(items.getAqyjxlh());
|
|
|
|
co5.setYjbbxx(items.getAqyjbbxx());
|
|
|
|
co5.setYjyt(items.getAqyjyt());
|
|
|
|
co5.setYjbsxx(items.getAqyjbswz());
|
|
|
|
co5.setSblx(items.getAqwlsblx());
|
|
|
|
co5.setPp(items.getAqwlpp());
|
|
|
|
co5.setSbIp(items.getAqwlsbIp());
|
|
|
|
co5.setType(3);
|
|
|
|
co5.setAssetId(id);
|
|
|
|
co5.setTaskId(i);
|
|
|
|
assetBasicNetworkCpService.save(co5);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return AjaxResult.success();
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|