package com.vci.web.controller;
|
|
import com.vci.constant.FrameWorkLangCodeConstant;
|
import com.vci.dto.PLIconDTO;
|
import com.vci.pagemodel.PLIconGroupVO;
|
import com.vci.pagemodel.PLIconVO;
|
import com.vci.starter.web.annotation.controller.VciUnCheckRight;
|
import com.vci.starter.web.annotation.log.VciBusinessLog;
|
import com.vci.starter.web.exception.VciBaseException;
|
import com.vci.starter.web.pagemodel.BaseQueryObject;
|
import com.vci.starter.web.pagemodel.BaseResult;
|
import com.vci.starter.web.pagemodel.DataGrid;
|
import com.vci.starter.web.util.LocalFileUtil;
|
import com.vci.starter.web.util.VciBaseUtil;
|
import com.vci.web.service.WebIconserviceI;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.annotation.Resource;
|
import java.io.File;
|
import java.util.List;
|
|
/**
|
* @Description 图标控制器
|
* @Author dangsn
|
* @Date 2024/12/20 10:24
|
*/
|
@VciBusinessLog(modelName="图标控制器",notStore=true)
|
@RestController
|
@RequestMapping("/webIconController")
|
public class WebIconController {
|
|
/**
|
* 日志
|
*/
|
private Logger logger = LoggerFactory.getLogger(getClass());
|
|
/**
|
* 图标服务
|
*/
|
@Resource
|
private WebIconserviceI iconserviceI;
|
|
/**
|
* 导入图标
|
* @param file 图标文件
|
*/
|
@PostMapping("/importIcon")
|
@VciBusinessLog(operateName = "导入图标库", description = "导入图标库")
|
public BaseResult importIcon(String type, String groups, MultipartFile file){
|
String fileName = LocalFileUtil.getDefaultTempFolder() + File.separator + LocalFileUtil.getFileNameForIE(file.getOriginalFilename());
|
File iconFile = new File(fileName);
|
try {
|
file.transferTo(iconFile);
|
if (iconFile != null) {
|
iconserviceI.importIcon(type, groups, iconFile);
|
return BaseResult.successMsg("导入成功!");
|
} else {
|
return BaseResult.fail(FrameWorkLangCodeConstant.IMPORT_FAIL, new String[]{"无导入的文件"});
|
}
|
}catch (Throwable e) {
|
throw new VciBaseException(VciBaseUtil.getExceptionMessage(e),new String[0],e);
|
}finally {
|
iconFile.delete();
|
}
|
}
|
|
/**
|
* 新增图标
|
* @param iconDTO 图标传输对象
|
* @return 执行结果
|
*/
|
@PostMapping("/addIcon")
|
@VciBusinessLog(operateName = "新增图标", description = "新增图标")
|
public BaseResult addIcon(@RequestBody PLIconDTO iconDTO){
|
try {
|
iconserviceI.addIcon(iconDTO);
|
return BaseResult.successMsg("新增图标成功!");
|
}catch (Exception e) {
|
e.printStackTrace();
|
String exceptionMessage = "新增图标出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return BaseResult.fail(exceptionMessage);
|
}
|
}
|
|
/**
|
* 修改图标
|
* @param iconDTO 图标传输对象
|
* @return 执行结果
|
*/
|
@PutMapping("/editIcon")
|
@VciBusinessLog(operateName = "修改图标", description = "修改图标")
|
public BaseResult editIcon(@RequestBody PLIconDTO iconDTO){
|
try {
|
iconserviceI.editIcon(iconDTO);
|
return BaseResult.successMsg("修改图标成功!");
|
}catch (Exception e) {
|
e.printStackTrace();
|
String exceptionMessage = "修改图标出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return BaseResult.fail(exceptionMessage);
|
}
|
}
|
|
/**
|
* 删除图标
|
* @param iconDTO 图标传输对象
|
* @return 执行结果
|
*/
|
@DeleteMapping("/delIcon")
|
@VciBusinessLog(operateName = "删除图标", description = "删除图标")
|
public BaseResult delIcon(PLIconDTO iconDTO){
|
try {
|
iconserviceI.delIcon(iconDTO);
|
return BaseResult.successMsg("删除图标成功!");
|
}catch (Exception e) {
|
e.printStackTrace();
|
String exceptionMessage = "删除图标出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return BaseResult.fail(exceptionMessage);
|
}
|
}
|
|
/**
|
* 获取图标名称
|
* @return 图标名称
|
*/
|
@VciBusinessLog(operateName = "获取图标名称", description = "获取图标名称")
|
@GetMapping("/getIconName")
|
public BaseResult<String> getIconName(){
|
try{
|
List<String> iconNameList = iconserviceI.getIconName();
|
BaseResult baseResult = BaseResult.success();
|
baseResult.setData(iconNameList);
|
return baseResult;
|
}catch (Exception e){
|
e.printStackTrace();
|
String exceptionMessage = "获取图标名称出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return BaseResult.fail(exceptionMessage);
|
}
|
}
|
|
/**
|
* 获取所有图标信息
|
* @param baseQueryObject 查询对象
|
* @return 图标信息
|
*/
|
@VciUnCheckRight
|
@VciBusinessLog(operateName = "获取所有图标", description = "获取所有图标")
|
@GetMapping("/getAllIcon")
|
public BaseResult<PLIconGroupVO> getAllIcon(BaseQueryObject baseQueryObject){
|
try{
|
List<PLIconGroupVO> iconList = iconserviceI.getAllIcon(baseQueryObject);
|
BaseResult baseResult = BaseResult.success();
|
baseResult.setData(iconList);
|
return baseResult;
|
}catch (Exception e){
|
e.printStackTrace();
|
String exceptionMessage = "获取图标出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return BaseResult.fail(exceptionMessage);
|
}
|
}
|
|
/**
|
* 获取图标信息,分页
|
* @param baseQueryObject 查询对象
|
* @return 图标信息
|
*/
|
@VciBusinessLog(operateName = "获取图标", description = "获取图标表格数据")
|
@GetMapping("/getGrid")
|
public DataGrid<PLIconVO> getGrid(BaseQueryObject baseQueryObject){
|
try{
|
return iconserviceI.getGrid(baseQueryObject);
|
}catch (Exception e){
|
e.printStackTrace();
|
String exceptionMessage = "获取图标出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
|
logger.error(exceptionMessage);
|
return new DataGrid<>(exceptionMessage);
|
}
|
}
|
}
|