标准拆解单

This commit is contained in:
liyawei
2022-03-30 19:59:03 +08:00
parent 146e77a740
commit 599e9a0fbb
5 changed files with 86 additions and 33 deletions
@@ -1,5 +1,6 @@
package com.jero.modules.document.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@@ -12,11 +13,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.common.constant.CommonConstant;
import com.jero.common.constant.WebsocketConst;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.constant.enums.IsMustEnum;
import com.jero.common.constant.enums.MessageTypeEnum;
import com.jero.common.constant.enums.ModuleEnum;
import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.constant.enums.*;
import com.jero.common.es.JeroElasticsearchTemplate;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.vo.LoginUser;
@@ -40,13 +37,11 @@ import com.jero.modules.message.websocket.WebSocket;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.split.common.FileUnZip;
import com.jero.modules.split.entity.SarFileSplitInfoEO;
import com.jero.modules.split.service.ISarFileSplitInfoService;
import com.jero.modules.subscribe.entity.OnlCgformSubscribe;
import com.jero.modules.subscribe.service.IOnlCgformSubscribeService;
import com.jero.modules.system.entity.SysAnnouncement;
import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysCategoryTreeVO;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.entity.*;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.ISysAnnouncementService;
import com.jero.modules.system.service.ISysDepartService;
@@ -59,20 +54,8 @@ import lombok.SneakyThrows;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.shiro.SecurityUtils;
@@ -87,11 +70,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.*;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@@ -138,6 +117,8 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
private ISysDepartService sysDepartService;
@Autowired
private JeroElasticsearchTemplate jeroElasticsearchTemplate;
@Autowired
private ISarFileSplitInfoService sarFileSplitInfoService;
@Resource
private WebSocket webSocket;
@Resource
@@ -916,13 +897,29 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
mapNew.put("count", fileInfos.size());
// TODO 添加标准分解单跳转
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
i++;
} else {
Map<String, Object> mapNew = new HashMap<>();
mapNew.put("value", fileInfo);
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfo.getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
}
}
@@ -933,6 +930,14 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
mapNew.put("count", fileInfos.size());
mapNew.put("value", fileInfos.get(0));
mapPut(cut, mapNew, "field_show_type", onlCgformField.getFieldShowType(), "dict_field", onlCgformField.getDictField(), "db_field_name", onlCgformField.getDbFieldName(), "db_field_txt", onlCgformField.getDbFieldTxt(), "db_field_en_name", onlCgformField.getDbFieldEnName(), "area", areaName, null);
// 添加标准分解单跳转
List<SarFileSplitInfoEO> infoEOList = sarFileSplitInfoService.queryByFileId(fileInfos.get(0).getId());
if (CollectionUtil.isNotEmpty(infoEOList)) {
mapNew.put("splitFlag", 1);
mapNew.put("splitInfoId", infoEOList.get(0).getId());
} else{
mapNew.put("splitFlag", 0);
}
resultTemp.add(mapNew);
}
} else {
@@ -2124,10 +2129,10 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
String type = parameter.get("type").toString();
if ("pdf".equals(type)) {
//查询条件
conditionSb.append("and of.file_name like '%.pdf%'");
conditionSb.append(" and of.file_name like '%.pdf%'");
} else if ("doc".equals(type)) {
//查询条件
conditionSb.append("and of.file_name like '%.doc%'");
conditionSb.append(" and of.file_name like '%.doc%'");
}
@@ -68,6 +68,19 @@ public class SarFileSplitInfoController extends JeroController<SarFileSplitInfoE
return Result.OK(list);
}
@AutoLog(value = "文档拆分表-回传至文档库")
@ApiOperation(value="文档拆分表-回传至文档库", notes="文档拆分表-回传至文档库")
@GetMapping(value = "/bindToDocumentLibrary")
public Result<?> bindToDocumentLibrary(String id, String connectId, String fileName) {
// 设置fileId
boolean bindState = sarFileSplitInfoService.bindToDocumentLibrary(id, connectId, fileName);
if(bindState){
return Result.OK("回传成功");
} else {
return Result.error("回传失败");
}
}
/**
* 添加
*
@@ -118,7 +118,7 @@ public class SarFileSplitMenuEOController extends JeroController<SarFileSplitMen
}
@ApiOperation(value = "文档拆分条款目录-批量复制节点不包括子节点Y")
@PostMapping("/copyMenuNotChildrenall")
@GetMapping("/copyMenuNotChildrenall")
public Result<List<Map<String, Object>>> copyMenuNotChildrenall(@RequestParam(value = "ids",required = false) String ids,
@RequestParam(value = "menuids",required = false) String menuids,
@RequestParam(value = "infoIds",required = false) String infoIds) throws Exception {
@@ -59,4 +59,8 @@ public interface ISarFileSplitInfoService extends IService<SarFileSplitInfoEO> {
* @return
*/
List<SarFileSplitInfoEO> queryList();
List<SarFileSplitInfoEO> queryByFileId(String fileId);
boolean bindToDocumentLibrary(String id, String connectId, String fileName);
}
@@ -1,6 +1,10 @@
package com.jero.modules.split.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.split.entity.SarFileSplitInfoEO;
import com.jero.modules.split.entity.SarFileSplitMenuEO;
import com.jero.modules.split.mapper.SarFileSplitInfoMapper;
@@ -12,6 +16,7 @@ import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
/**
* @Description: 文档拆分表
@@ -24,6 +29,10 @@ public class SarFileSplitInfoServiceImpl extends ServiceImpl<SarFileSplitInfoMap
@Autowired
private SarFileSplitMenuEOMapper sarFileSplitMenuEOMapper;
@Autowired
private IOSSFileService ossFileService;
/**
* 保存
*
@@ -102,4 +111,26 @@ public class SarFileSplitInfoServiceImpl extends ServiceImpl<SarFileSplitInfoMap
public List<SarFileSplitInfoEO> queryList() {
return list();
}
@Override
public List<SarFileSplitInfoEO> queryByFileId(String fileId) {
LambdaQueryWrapper<SarFileSplitInfoEO> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SarFileSplitInfoEO::getFileId, fileId);
return this.list(queryWrapper);
}
@Override
public boolean bindToDocumentLibrary(String id, String connectId, String fileName) {
List<OSSFile> ossFileList = ossFileService.getFileInfosByConnectId(connectId);
List<OSSFile> fileOfSplit = ossFileList.stream().filter(e->"fileName".equals(e.getFileName())).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(fileOfSplit)) {
String fileId = fileOfSplit.get(0).getId();
SarFileSplitInfoEO infoEO = new SarFileSplitInfoEO();
infoEO.setId(id);
infoEO.setFileId(fileId);
this.updateById(infoEO);
return true;
}
return false;
}
}