|
|
|
@ -8,6 +8,7 @@ import com.huatek.busi.entity.GlobalSettingItem;
|
|
|
|
|
import com.huatek.busi.entity.WiringDiagram;
|
|
|
|
|
import com.huatek.busi.service.*;
|
|
|
|
|
import com.huatek.busi.where.*;
|
|
|
|
|
import com.huatek.torch.frame.exception.OwlException;
|
|
|
|
|
import com.huatek.torch.frame.tools.ConstantUtil;
|
|
|
|
|
import com.huatek.torch.frame.tools.ResultUtil;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
@ -18,10 +19,7 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
import java.io.File;
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.util.Base64;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.Objects;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
|
|
|
|
|
@Api(tags={"一次接线图管理接口"})
|
|
|
|
|
@RestController
|
|
|
|
@ -61,7 +59,28 @@ public class WiringDiagramController {
|
|
|
|
|
if(globalSettingItem == null || (globalSettingItem.getFileUploadNumber() == null && globalSettingItem.getFileUploadNumber() <= 0)){
|
|
|
|
|
return ResultUtil.put(ConstantUtil.REQUEST_FAIL, "BUSINESS.UPLOAD.ANNEX.NUM", "");
|
|
|
|
|
}
|
|
|
|
|
// 检查文件是否为空
|
|
|
|
|
if (file.isEmpty()) {
|
|
|
|
|
throw new OwlException("文件不能为空");
|
|
|
|
|
}
|
|
|
|
|
// 获取原始文件名并校验
|
|
|
|
|
String fileNamenew = file.getOriginalFilename();
|
|
|
|
|
if (fileNamenew == null || fileNamenew.isEmpty()) {
|
|
|
|
|
throw new OwlException("无效的文件名");
|
|
|
|
|
}
|
|
|
|
|
// 提取文件后缀(处理包含多个"."的情况)
|
|
|
|
|
int lastDotIndex = fileNamenew.lastIndexOf('.');
|
|
|
|
|
if (lastDotIndex == -1) {
|
|
|
|
|
throw new OwlException("文件缺少扩展名");
|
|
|
|
|
}
|
|
|
|
|
String suffix = fileNamenew.substring(lastDotIndex + 1).toLowerCase();
|
|
|
|
|
// 定义允许的后缀列表(可从配置读取)
|
|
|
|
|
List<String> allowedSuffixes = Arrays.asList("jpg", "png", "pdf", "docx", "doc", "xlsx", "xls");
|
|
|
|
|
// 校验后缀合法性
|
|
|
|
|
if (!allowedSuffixes.contains(suffix)) {
|
|
|
|
|
throw new OwlException("不支持的文件类型");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 上传根目录
|
|
|
|
|
String rootPath = globalSettingItem.getRootPath();
|
|
|
|
|
return iWiringDiagramService.importFile(file.getBytes(), token, "0", fileNamenew, rootPath,type,fileName);
|
|
|
|
|