fix: 修改收藏品文件上传接口。

This commit is contained in:
tianyongbao
2026-02-21 23:23:38 +08:00
parent 03e9bcedbe
commit 2f6a5cefd5
11 changed files with 713 additions and 3 deletions

View File

@@ -0,0 +1,154 @@
package com.intc.collect.controller;
import java.util.HashMap;
import java.util.List;
import java.io.IOException;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import javax.annotation.Resource;
import com.intc.common.core.domain.R;
import com.intc.common.core.utils.DateUtils;
import com.intc.system.api.RemoteFileService;
import com.intc.system.api.domain.SysFile;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.intc.common.log.annotation.Log;
import com.intc.common.log.enums.BusinessType;
import com.intc.common.security.annotation.RequiresPermissions;
import com.intc.collect.domain.CollectFile;
import com.intc.collect.domain.vo.CollectFileVo;
import com.intc.collect.domain.dto.CollectFileDto;
import com.intc.collect.service.ICollectFileService;
import com.intc.common.core.web.controller.BaseController;
import com.intc.common.core.web.domain.AjaxResult;
import com.intc.common.core.utils.poi.ExcelUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.intc.common.core.web.page.TableDataInfo;
import org.springframework.web.multipart.MultipartFile;
/**
* 收藏品文件Controller
*
* @author tianyongbao
* @date 2026-02-21
*/
@Api(tags=" 收藏品文件")
@RestController
@RequestMapping("/collectFile")
public class CollectFileController extends BaseController
{
@Resource
private ICollectFileService collectFileService;
@Autowired
private RemoteFileService remoteFileService;
/**
* 查询收藏品文件列表
*/
@ApiOperation(value="查询收藏品文件列表",response = CollectFileVo.class)
@RequiresPermissions("collect:collectFile:list")
@GetMapping("/list")
public TableDataInfo list(CollectFileDto collectFileDto)
{
startPage();
List<CollectFileVo> list = collectFileService.selectCollectFileList(collectFileDto);
return getDataTable(list);
}
/**
* 导出收藏品文件列表
*/
@ApiOperation(value="导出收藏品文件列表")
@RequiresPermissions("collect:collectFile:export")
@Log(title = "收藏品文件", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, CollectFileDto collectFileDto)
{
List<CollectFileVo> list = collectFileService.selectCollectFileList(collectFileDto);
ExcelUtil<CollectFileVo> util = new ExcelUtil<CollectFileVo>(CollectFileVo.class);
util.exportExcel(response, list, "收藏品文件数据");
}
/**
* 获取收藏品文件详细信息
*/
@ApiOperation(value="获取收藏品文件详细信息")
@RequiresPermissions("collect:collectFile:query")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(collectFileService.selectCollectFileById(id));
}
/**
* 新增收藏品文件
*/
@ApiOperation(value="新增收藏品文件")
@RequiresPermissions("collect:collectFile:add")
@Log(title = "收藏品文件", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody CollectFile collectFile)
{
return toAjax(collectFileService.insertCollectFile(collectFile));
}
/**
* 修改收藏品文件
*/
@ApiOperation(value="修改收藏品文件")
@RequiresPermissions("collect:collectFile:edit")
@Log(title = "收藏品文件", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody CollectFile collectFile)
{
return toAjax(collectFileService.updateCollectFile(collectFile));
}
/**
* 删除收藏品文件
*/
@ApiOperation(value="删除收藏品文件")
@RequiresPermissions("collect:collectFile:remove")
@Log(title = "收藏品文件", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(collectFileService.deleteCollectFileByIds(ids));
}
/**
* 上传收藏品图片
*/
@ApiOperation(value="上传收藏品图片")
@PostMapping("/uploadFile")
public AjaxResult uploadFile(@RequestParam("file") MultipartFile file)
{
R<SysFile> sysFileR = remoteFileService.upload(file);
SysFile sysFile = sysFileR.getData();
Map<String,String> map = new HashMap<>();
map.put("catalog", DateUtils.datePath());
map.put("fileName",file.getOriginalFilename());
map.put("name",sysFile.getName());
map.put("url",sysFile.getUrl());
return AjaxResult.success(map);
}
/**
* 新增配电柜图片
*/
@ApiOperation(value="新增收藏品图片")
@Log(title = "收藏品图片", businessType = BusinessType.INSERT)
@PostMapping("/addFile")
public AjaxResult addFile(@Validated @RequestBody CollectFile collectFile)
{
return toAjax(collectFileService.insertCollectFile(collectFile));
}
}

View File

@@ -0,0 +1,64 @@
package com.intc.collect.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.intc.common.core.annotation.Excel;
import com.intc.common.core.web.domain.BaseEntity;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.validation.constraints.*;
/**
* 收藏品文件对象 col_collect_file
*
* @author tianyongbao
* @date 2026-02-21
*/
@ApiModel("收藏品文件对象")
@Data
public class CollectFile extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键id */
private Long id;
/** 收藏品id */
@ApiModelProperty(value="收藏品id")
@Excel(name = "收藏品id")
private Long collectId;
/** 目录 */
@ApiModelProperty(value="目录")
@Excel(name = "目录")
private String catelog;
/** 源文件名 */
@ApiModelProperty(value="源文件名")
@Excel(name = "源文件名")
private String fileName;
/** 文件名 */
@ApiModelProperty(value="文件名")
@Excel(name = "文件名")
private String name;
/** url */
@ApiModelProperty(value="url")
@Excel(name = "url")
private String url;
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("collectId", getCollectId())
.append("catelog", getCatelog())
.append("fileName", getFileName())
.append("name", getName())
.append("createTime", getCreateTime())
.append("createBy", getCreateBy())
.append("url", getUrl())
.toString();
}
}

View File

@@ -1,6 +1,8 @@
package com.intc.collect.domain;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@@ -77,6 +79,9 @@ public class CommemorativeCoin extends BaseEntity
/** 删除标志0代表存在 1代表删除 */
private String delFlag;
/** 文件信息 */
private List<CollectFile> collectFileList;
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@@ -97,6 +102,7 @@ public class CommemorativeCoin extends BaseEntity
.append("updateTime", getUpdateTime())
.append("delFlag", getDelFlag())
.append("remark", getRemark())
.append("collectFileList", getCollectFileList())
.toString();
}
}

View File

@@ -0,0 +1,39 @@
package com.intc.collect.domain.dto;
import lombok.Data;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* 收藏品文件Dto对象 col_collect_file
*
* @author tianyongbao
* @date 2026-02-21
*/
@ApiModel("收藏品文件Dto对象")
@Data
public class CollectFileDto implements Serializable
{
private static final long serialVersionUID = 1L;
/** 收藏品id */
@ApiModelProperty(value="收藏品id")
private Long collectId;
/** 目录 */
@ApiModelProperty(value="目录")
private String catelog;
/** 源文件名 */
@ApiModelProperty(value="源文件名")
private String fileName;
/** 文件名 */
@ApiModelProperty(value="文件名")
private String name;
/** url */
@ApiModelProperty(value="url")
private String url;
}

View File

@@ -0,0 +1,17 @@
package com.intc.collect.domain.vo;
import com.intc.collect.domain.CollectFile;
import lombok.Data;
import io.swagger.annotations.ApiModel;
/**
* 收藏品文件Vo对象 col_collect_file
*
* @author tianyongbao
* @date 2026-02-21
*/
@ApiModel("收藏品文件Vo对象")
@Data
public class CollectFileVo extends CollectFile
{
}

View File

@@ -0,0 +1,96 @@
package com.intc.collect.mapper;
import java.util.List;
import com.intc.collect.domain.CollectFile;
import com.intc.collect.domain.dto.CollectFileDto;
import com.intc.collect.domain.vo.CollectFileVo;
/**
* 收藏品文件Mapper接口
*
* @author tianyongbao
* @date 2026-02-21
*/
public interface CollectFileMapper
{
/**
* 查询收藏品文件
*
* @param id 收藏品文件主键
* @return 收藏品文件
*/
public CollectFileVo selectCollectFileById(Long id);
/**
* 查询收藏品文件列表
*
* @param collectFileDto 收藏品文件
* @return 收藏品文件集合
*/
public List<CollectFileVo> selectCollectFileList(CollectFileDto collectFileDto);
/**
* 新增收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
public int insertCollectFile(CollectFile collectFile);
/**
* 修改收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
public int updateCollectFile(CollectFile collectFile);
/**
* 删除收藏品文件
*
* @param id 收藏品文件主键
* @return 结果
*/
public int deleteCollectFileById(Long id);
/**
* 批量删除收藏品文件
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteCollectFileByIds(Long[] ids);
/**
* 逻辑删除收藏品文件
*
* @param id 收藏品文件主键
* @return 结果
*/
public int removeCollectFileById(Long id);
/**
* 批量逻辑删除收藏品文件
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int removeCollectFileByIds(Long[] ids);
/**
* 批量新增信息
*
* @param collectFileList 信息列表
* @return 结果
*/
public int batchInsertCollectFile(List<CollectFile> collectFileList);
/**
* 通过主键删除信息
*
* @param id ID
* @return 结果
*/
public int deleteCollectFileByCollectId(Long id);
}

View File

@@ -0,0 +1,63 @@
package com.intc.collect.service;
import java.util.List;
import com.intc.collect.domain.CollectFile;
import com.intc.collect.domain.dto.CollectFileDto;
import com.intc.collect.domain.vo.CollectFileVo;
/**
* 收藏品文件Service接口
*
* @author tianyongbao
* @date 2026-02-21
*/
public interface ICollectFileService
{
/**
* 查询收藏品文件
*
* @param id 收藏品文件主键
* @return 收藏品文件
*/
public CollectFileVo selectCollectFileById(Long id);
/**
* 查询收藏品文件列表
*
* @param collectFileDto 收藏品文件
* @return 收藏品文件集合
*/
public List<CollectFileVo> selectCollectFileList(CollectFileDto collectFileDto);
/**
* 新增收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
public int insertCollectFile(CollectFile collectFile);
/**
* 修改收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
public int updateCollectFile(CollectFile collectFile);
/**
* 批量删除收藏品文件
*
* @param ids 需要删除的收藏品文件主键集合
* @return 结果
*/
public int deleteCollectFileByIds(Long[] ids);
/**
* 删除收藏品文件信息
*
* @param id 收藏品文件主键
* @return 结果
*/
public int deleteCollectFileById(Long id);
}

View File

@@ -0,0 +1,101 @@
package com.intc.collect.service.impl;
import java.util.List;
import com.intc.common.core.utils.DateUtils;
import com.intc.common.security.utils.SecurityUtils;
import com.intc.common.core.utils.IdWorker;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.intc.collect.mapper.CollectFileMapper;
import com.intc.collect.domain.CollectFile;
import com.intc.collect.domain.dto.CollectFileDto;
import com.intc.collect.domain.vo.CollectFileVo;
import com.intc.collect.service.ICollectFileService;
/**
* 收藏品文件Service业务层处理
*
* @author tianyongbao
* @date 2026-02-21
*/
@Service
public class CollectFileServiceImpl implements ICollectFileService
{
@Resource
private CollectFileMapper collectFileMapper;
/**
* 查询收藏品文件
*
* @param id 收藏品文件主键
* @return 收藏品文件
*/
@Override
public CollectFileVo selectCollectFileById(Long id)
{
return collectFileMapper.selectCollectFileById(id);
}
/**
* 查询收藏品文件列表
*
* @param collectFileDto 收藏品文件
* @return 收藏品文件
*/
@Override
public List<CollectFileVo> selectCollectFileList(CollectFileDto collectFileDto)
{
return collectFileMapper.selectCollectFileList(collectFileDto);
}
/**
* 新增收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
@Override
public int insertCollectFile(CollectFile collectFile)
{
collectFile.setId(IdWorker.getId());
collectFile.setCreateTime(DateUtils.getNowDate());
collectFile.setCreateBy(SecurityUtils.getUsername());
return collectFileMapper.insertCollectFile(collectFile);
}
/**
* 修改收藏品文件
*
* @param collectFile 收藏品文件
* @return 结果
*/
@Override
public int updateCollectFile(CollectFile collectFile)
{
return collectFileMapper.updateCollectFile(collectFile);
}
/**
* 批量删除收藏品文件
*
* @param ids 需要删除的收藏品文件主键
* @return 结果
*/
@Override
public int deleteCollectFileByIds(Long[] ids)
{
return collectFileMapper.removeCollectFileByIds(ids);
}
/**
* 删除收藏品文件信息
*
* @param id 收藏品文件主键
* @return 结果
*/
@Override
public int deleteCollectFileById(Long id)
{
return collectFileMapper.removeCollectFileById(id);
}
}

View File

@@ -1,7 +1,12 @@
package com.intc.collect.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.intc.collect.domain.CollectFile;
import com.intc.collect.mapper.CollectFileMapper;
import com.intc.common.core.utils.DateUtils;
import com.intc.common.core.utils.StringUtils;
import com.intc.common.security.utils.SecurityUtils;
import com.intc.common.core.utils.IdWorker;
import javax.annotation.Resource;
@@ -24,6 +29,9 @@ public class CommemorativeCoinServiceImpl implements ICommemorativeCoinService
@Resource
private CommemorativeCoinMapper commemorativeCoinMapper;
@Resource
private CollectFileMapper collectFileMapper;
/**
* 查询流通纪念币
*
@@ -60,7 +68,36 @@ public class CommemorativeCoinServiceImpl implements ICommemorativeCoinService
commemorativeCoin.setId(IdWorker.getId());
commemorativeCoin.setCreateBy(SecurityUtils.getUsername());
commemorativeCoin.setCreateTime(DateUtils.getNowDate());
return commemorativeCoinMapper.insertCommemorativeCoin(commemorativeCoin);
int rows =commemorativeCoinMapper.insertCommemorativeCoin(commemorativeCoin);
insertCollectFile(commemorativeCoin);
return rows;
}
/**
* 新增文件信息
*
* @param commemorativeCoin 对象
*/
public void insertCollectFile(CommemorativeCoin commemorativeCoin)
{
List<CollectFile> collectFileList = commemorativeCoin.getCollectFileList();
Long id = commemorativeCoin.getId();
if (StringUtils.isNotNull(collectFileList))
{
List<CollectFile> list = new ArrayList<CollectFile>();
for (CollectFile collectFile : collectFileList)
{
collectFile.setCollectId(id);
collectFile.setCreateTime(DateUtils.getNowDate());
collectFile.setCreateBy(SecurityUtils.getUsername());
collectFile.setId(IdWorker.getId());
list.add(collectFile);
}
if (list.size() > 0)
{
collectFileMapper.batchInsertCollectFile(list);
}
}
}
/**
@@ -74,6 +111,7 @@ public class CommemorativeCoinServiceImpl implements ICommemorativeCoinService
{
commemorativeCoin.setUpdateBy(SecurityUtils.getUsername());
commemorativeCoin.setUpdateTime(DateUtils.getNowDate());
insertCollectFile(commemorativeCoin);;
return commemorativeCoinMapper.updateCommemorativeCoin(commemorativeCoin);
}