From 27aba2ad1fc776299146222d00c7946129063fad Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Sun, 9 Apr 2023 20:40:35 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=8E=9F=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarBussStandAttrInfo/dao/SarBussStandAttrInfoDao.java | 2 ++ .../service/ISarBussStandAttrInfoService.java | 2 ++ .../service/impl/SarBussStandAttrInfoServiceImpl.java | 5 +++++ .../controller/SarBussionessStandController.java | 6 ++++++ .../service/ISarBussionessStandService.java | 2 ++ .../service/impl/SarBussionessStandServiceImpl.java | 6 ++++++ .../sarBussStandAttrInfo/SarBussStandAttrInfoMapper.xml | 7 +++++++ 7 files changed, 30 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/dao/SarBussStandAttrInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/dao/SarBussStandAttrInfoDao.java index ebc32d5e..ac92a4fe 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/dao/SarBussStandAttrInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/dao/SarBussStandAttrInfoDao.java @@ -47,4 +47,6 @@ public interface SarBussStandAttrInfoDao extends BaseMapper queryByPage(SarBussStandAttrInfoEOPage page); int insertSelective(SarBussStandAttrInfo sarBussStandAttrInfo); + + SarBussStandAttrInfo selectByIdAtt(String id); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/service/impl/SarBussStandAttrInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/service/impl/SarBussStandAttrInfoServiceImpl.java index 7cb547d0..be765ef5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/service/impl/SarBussStandAttrInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/service/impl/SarBussStandAttrInfoServiceImpl.java @@ -52,4 +52,9 @@ public class SarBussStandAttrInfoServiceImpl extends ServiceImpl ResponseMessage selectMaxStandnSn(); ResponseMessage selectById(String id,String type); + + ResponseMessage selectByIdAtt(String id); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index 2b413869..bbe40c0f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -4430,6 +4430,12 @@ public class SarBussionessStandServiceImpl extends ServiceImpl asList,String standId,String attfId) { //重复的集合 List chongfu = new ArrayList<>(); diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussStandAttrInfo/SarBussStandAttrInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussStandAttrInfo/SarBussStandAttrInfoMapper.xml index 5cd9c06a..bbe8816a 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussStandAttrInfo/SarBussStandAttrInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussStandAttrInfo/SarBussStandAttrInfoMapper.xml @@ -174,4 +174,11 @@ WHERE valid_flag=0 and stand_id = #{standId} + + + From 4e8bba5acbdfdc458799b6a4cb619da817a7514d Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Mon, 10 Apr 2023 13:53:59 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=9B=9E=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sarBussStandAttrInfo/entity/SarBussStandAttrInfo.java | 2 ++ .../service/impl/SarBussionessStandServiceImpl.java | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfo.java index a8be5802..798cd575 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussStandAttrInfo/entity/SarBussStandAttrInfo.java @@ -75,6 +75,8 @@ public class SarBussStandAttrInfo extends BaseEntity { @ApiModelProperty(value = "原文件") @TableField("FBGBUSS") private String fbgbuss; + + private String fbgbussNmae; // // @TableField("SVPPS") // private String svpps; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index bbe40c0f..ddf01dd5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -274,6 +274,8 @@ public class SarBussionessStandServiceImpl extends ServiceImpl Date: Mon, 10 Apr 2023 14:06:05 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarBussionessStandServiceImpl.java | 2 +- .../controller/SarStandItemsController.java | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index ddf01dd5..ff260176 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -4435,7 +4435,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl * 前端控制器 @@ -36,6 +54,12 @@ public class SarStandItemsController extends BaseController { @Autowired private SarStandItemsServiceImpl ServiceImpl; + @Autowired + private SarFileSplitItemsEOService sarFileSplitItemsEOService; + + @Value("${file.path}") + private String filePath; + @ApiOperation(value = "分解单查询") @GetMapping("/findAllItems") public ResponseMessage findAllItems( @RequestParam("type") String type,@RequestParam("ids") String ids){ @@ -152,4 +176,6 @@ public class SarStandItemsController extends BaseController { List ItemDto = ServiceImpl.findTermsConditions(idList); return Result.success("200",ItemDto); } + + } From f06df78deffd65f22e6c3c7cd94ee22943bb9e28 Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Mon, 10 Apr 2023 14:32:01 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E5=8D=95=E4=B8=AA=E6=8B=86=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarFileSplitItemsEOController.java | 131 +++++++++- .../service/SarFileSplitItemsEOService.java | 3 + .../impl/SarFileSplitItemsEOServiceImpl.java | 229 ++++++++++++++++++ 3 files changed, 362 insertions(+), 1 deletion(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java index d605b272..c22a637a 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/controller/SarFileSplitItemsEOController.java @@ -85,7 +85,7 @@ public class SarFileSplitItemsEOController extends BaseController> page(SarFileSplitItemsEOPage page) throws Exception { //6-18 端哥已做修改 - sarFileSplitItemsEOService.selectByName(page.getItemsName()); + //sarFileSplitItemsEOService.selectByName(page.getItemsName()); Map map = sarFileSplitItemsEOService.getByPage(page); page.getPager().setRowCount((Integer) map.get("count")); return Result.success(getPageInfo(page.getPager(), (List) map.get("list"))); @@ -509,6 +509,7 @@ public class SarFileSplitItemsEOController extends BaseController importSplitItemsZip(@RequestParam(value = "file", required = false) MultipartFile file, @@ -694,4 +695,132 @@ public class SarFileSplitItemsEOController extends BaseController importSplitItemsInfoZip(@RequestParam(value = "file", required = false) MultipartFile file, + SarFileSplitInfoEO sarFileSplitInfoEO) throws Exception { + //验证文件名是否合格 + /* 截取后缀名 */ + sarFileSplitInfoEO.setFileName(file.getOriginalFilename()); + int pos = file.getOriginalFilename().lastIndexOf("."); + String str = file.getOriginalFilename().substring(pos+1).toLowerCase(); + String filenameorg = file.getOriginalFilename().substring(0,pos); + //判断上传文件必须是zip + if (!str.equals("zip")) { + return com.adc.da.util.http.Result.error("fail", "请上传zip文件"); + } + String path = filePath + "/modal/"+filenameorg; + File saveDirectory = new File(path); + if(!saveDirectory.isDirectory()){ + saveDirectory.mkdir(); + } + FileUtils.copyInputStreamToFile(file.getInputStream(), new File(path +"/"+ file.getOriginalFilename())); + try{ + //解压缩 + String zipEntryName = FileUnZip.unZipFiles(path +"/"+ file.getOriginalFilename(),path); + // 数据相关处理, + // 1.获取其中的Excel, + List excelfilelist = FileUnZip.readExcelFile(zipEntryName); + if(excelfilelist.size()<1){ + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "压缩包内没有上传Excel数据"); + } else if (excelfilelist.size()>1) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "压缩包内有多个Excel数据源"); + } + File excelfile = excelfilelist.get(0); + // 导入参数设置,默认即可 + ImportParams params = new ImportParams(); + try { + String fields[] = {"条款号", "条款名称","条款内容"}; + params.setImportFields(fields); + // params.setReadSingleCell(false); + List result = new ArrayList<>(); + result = ExcelImportUtil.importExcel(excelfile, SarFileSplitItemsImportDto.class, params); + Long getExcelInfo = System.currentTimeMillis(); + //excel读取到的数据 + List datas = result; + if(datas!=null &&!datas.isEmpty()){ + try { + //获取全部sheet页中表格 + Workbook workbook = WorkbookFactory.create(new FileInputStream(excelfile)); + //XSSFWorkbook workbook=new XSSFWorkbook(new FileInputStream(excelfile)); + Sheet sheet=null; + List getSheetTableList = new ArrayList(); + for (int i = 1; i < workbook.getNumberOfSheets(); i++) {//获取每个Sheet表 + sheet = workbook.getSheetAt(i); + SplitTableInfo splitTableInfo = new SplitTableInfo(); + splitTableInfo.setTableName(sheet.getSheetName()); + String tableHtml = POIReadExcelToHtml.readExcelToHtml(workbook,i,false); + splitTableInfo.setTableHtml(tableHtml); + getSheetTableList.add(splitTableInfo); + } + int i = 0 ; + List datasUpdate = new ArrayList<>(); + //2019.05.14 当读取exceL出现空行过多时,空行数为20以上时中断读取,将数据清洗为新的list + for(SarFileSplitItemsImportDto sarStandImportDto :datas){ + if(i>20){ + break; + } + //判断此行数据是否全部为空 + if(checkObjAllFieldsIsNull(sarStandImportDto)){ + i++; + //是则不读取 + continue; + } + //判断此行数据是否全部为空 + if(org.apache.commons.lang.StringUtils.isNotBlank(sarStandImportDto.getItemsNum())) { + if (sarStandImportDto.getItemsNum().contains("模板说明")) { + i++; + //是则不读取 + continue; + } + } + //添加换行 +// if(StringUtils.isBlank(sarStandImportDto.getItemsNum()) && StringUtils.isBlank(sarStandImportDto.getItemsName())) { +// if(StringUtils.isNotBlank(sarStandImportDto.getItermsConditions())){ +// sarStandImportDto.setItermsConditions("

"+sarStandImportDto.getItermsConditions()); +// } +// } + i = 0; + + datasUpdate.add(sarStandImportDto); + } + String unzipfilepath = zipEntryName; + com.adc.da.util.http.ResponseMessage message = sarFileSplitItemsEOService.importSplitItemsInfo + (datasUpdate,unzipfilepath,sarFileSplitInfoEO,getSheetTableList); + workbook.close(); + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return message; + } catch (Exception e) { + e.printStackTrace(); + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", e.getMessage()); + } + }else{ + + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "没有可导入的数据,请检查!"); + } + } catch (NoSuchElementException e){ + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "没有可导入的数据,请检查!"); + } catch (Exception e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "读取失败,请严格按照模板文件导入数据"); + } + } catch (Exception e) { + //删除原上传文件 + FileUnZip.deleteDir(saveDirectory); + return com.adc.da.util.http.Result.error("fail", "读取失败,请严格按照模板文件导入数据"); + } + + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/SarFileSplitItemsEOService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/SarFileSplitItemsEOService.java index aa3a9f2d..b19e2cac 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/SarFileSplitItemsEOService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/SarFileSplitItemsEOService.java @@ -50,4 +50,7 @@ public interface SarFileSplitItemsEOService { List queryByList2(SarFileSplitItemsEOPage page); void selectByName(String itemsName); + + ResponseMessage importSplitItemsInfo(List datasUpdate, String unzipfilepath, SarFileSplitInfoEO sarFileSplitInfoEO, List getSheetTableList); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/impl/SarFileSplitItemsEOServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/impl/SarFileSplitItemsEOServiceImpl.java index a135ef0f..0a39ea43 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/impl/SarFileSplitItemsEOServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/standardSplit/service/impl/SarFileSplitItemsEOServiceImpl.java @@ -6,6 +6,8 @@ import com.adc.da.att.vo.AttFileVo; import com.adc.da.common.FileUnZip; import com.adc.da.common.SplitTableInfo; import com.adc.da.login.util.UserUtils; +import com.adc.da.slrs.sarStandItems.dao.SarStandItemsDao; +import com.adc.da.slrs.sarStandItems.entity.SarStandItems; import com.adc.da.slrs.standardSplit.dao.*; import com.adc.da.slrs.standardSplit.dto.*; import com.adc.da.slrs.standardSplit.entity.*; @@ -76,6 +78,9 @@ public class SarFileSplitItemsEOServiceImpl implements SarFileSplitItemsEOServic @Value("${elasticsearch.img}") private String elasticsearchImg;//图片拆分自调地址 + @Autowired + private SarStandItemsDao sarStandItemsDao; + @Override public Map getByPage(SarFileSplitItemsEOPage page) { @@ -872,6 +877,230 @@ public class SarFileSplitItemsEOServiceImpl implements SarFileSplitItemsEOServic sarFileSplitItemsEODao.selectByName(itemsName); } + @Override + @Transactional + public ResponseMessage importSplitItemsInfo(List list, String filepath, + SarFileSplitInfoEO sarFileSplitInfoEO, List getSheetTableList) { + //此处需要做各种验证,数据库操作 + try { + String infoId = null; + if (StringUtils.isNotBlank(sarFileSplitInfoEO.getInfoId())){ + infoId = sarFileSplitInfoEO.getInfoId(); + sarFileSplitInfoEO.setInfoId(null); + }else { + infoId = UUIDUtils.randomUUID20(); + } + Map map = validateImportDatas(list,filepath); + boolean isOk = (boolean) map.get("result"); + if (!isOk) { + //验证没有通过 + String message = (String) map.get("message"); + return Result.error("fail", message); + } + //将导入数据循环合并整理后 新增至相应表 + list = (List) map.get("resultList"); + int countSuccess = 0; + // 最终添加的数据 + List addItemsEOList = new ArrayList<>(); + int itemNum = 0; + String firstId = UUIDUtils.randomUUID20(); + String menuid = sarFileSplitInfoEO.getMenuId(); + if (null == menuid) { + SarFileSplitItemsEO firstItem = new SarFileSplitItemsEO(); + firstItem.setId(firstId); + firstItem.setItemsNum("总目录"); + firstItem.setValidFlag(0); + firstItem.setCreationTime(new Date()); + firstItem.setModifyTime(new Date()); + addItemsEOList.add(firstItem); //新的总目录家在了添加的list中 当前仅一条 + } + + for (SarFileSplitItemsImportDto importDto : list) { //遍历传入的值 + //判断此行数据是否全部为空,是则不读取 + if(checkObjAllFieldsIsNull(importDto)){ + continue; + } + SarFileSplitItemsEO sarFileSplitItemsEO = new SarFileSplitItemsEO(); + BeanUtils.copyProperties(importDto, sarFileSplitItemsEO); + sarFileSplitItemsEO.setInfoId(infoId); + List addItemValList = new ArrayList<>(); + if (addItemsEOList != null && !addItemsEOList.isEmpty()) { + SarFileSplitItemsEO oldItems = addItemsEOList.get(addItemsEOList.size()-1); + if (itemNum > 0 && sarFileSplitItemsEO.getItemsNum().equals(oldItems.getItemsNum()) + && sarFileSplitItemsEO.getItemsName().equals(oldItems.getItemsName())) { + addItemValList = oldItems.getItemValEOList(); + String itemContent = oldItems.getItermsConditions()+sarFileSplitItemsEO.getItermsConditions(); + oldItems.setItermsConditions(itemContent); + if(StringUtils.isBlank(sarFileSplitItemsEO.getItermsConditions())){ + continue; + } + String[] valArr = sarFileSplitItemsEO.getItermsConditions().split("\n"); + if (valArr != null && valArr.length > 0) { + for (int i=0;i nowfilelist = FileUnZip.readFileByFilename(filepath, valArr[i]); + if (nowfilelist != null && !nowfilelist.isEmpty()) { + AttFileVo attFileVo = attFileEOService.saveFileInfo(nowfilelist.get(0)); + if (attFileVo != null) { + isText = false; + //String path = "E:/data/slrs/file" + attFileVo.getFilePath()+attFileVo.getOldFileName(); + String pathSrc = elasticsearchImg + "/api/att/attFile/getFileInfo?fileId=" + attFileVo.getId(); + String imgCon = ""; + valEO.setType("IMG"); + valEO.setItemContent("

"+imgCon+"

"); + } + } + if (isText) { + valEO.setType("TEXT"); + valEO.setItemContent(valArr[i]); + } + addItemValList.add(valEO); + } + } + oldItems.setItemValEOList(addItemValList); + }else { + String[] valArr = sarFileSplitItemsEO.getItermsConditions().split("\n"); + if (valArr != null && valArr.length > 0) { + for (int i=0;i nowfilelist = FileUnZip.readFileByFilename(filepath, valArr[i]); + if (nowfilelist != null && !nowfilelist.isEmpty()) { + AttFileVo attFileVo = attFileEOService.saveFileInfo(nowfilelist.get(0)); + if (attFileVo != null) { + isText = false; + //String path = "E:/data/slrs/file" + attFileVo.getFilePath()+attFileVo.getOldFileName(); + String pathSrc = elasticsearchImg + "/api/att/attFile/getFileInfo?fileId=" + attFileVo.getId(); + String imgCon = ""; + valEO.setType("IMG"); + valEO.setItemContent("

"+imgCon+"

"); + } + } + if (isText) { + valEO.setType("TEXT"); + valEO.setItemContent(valArr[i]); + } + addItemValList.add(valEO); + } + } + sarFileSplitItemsEO.setItemValEOList(addItemValList); + addItemsEOList.add(sarFileSplitItemsEO); + } + } else { + String[] valArr = sarFileSplitItemsEO.getItermsConditions().split("\n"); + if (valArr != null && valArr.length > 0) { + for (int i=0;i nowfilelist = FileUnZip.readFileByFilename(filepath, valArr[i]); + if (nowfilelist != null && !nowfilelist.isEmpty()) { + AttFileVo attFileVo = attFileEOService.saveFileInfo(nowfilelist.get(0)); + if (attFileVo != null) { + isText = false; + //String path = "E:/data/slrs/file" + attFileVo.getFilePath()+attFileVo.getOldFileName(); + String pathSrc = elasticsearchImg + "/api/att/attFile/getFileInfo?fileId=" + attFileVo.getId(); + String imgCon = ""; + valEO.setType("IMG"); + valEO.setItemContent("

"+imgCon+"

"); + } + } + if (isText) { + valEO.setType("TEXT"); + valEO.setItemContent(valArr[i]); + } + addItemValList.add(valEO); + } + } + sarFileSplitItemsEO.setItemValEOList(addItemValList); + addItemsEOList.add(sarFileSplitItemsEO); + } + itemNum++; + } + + //导入拆分结果前首先新增拆分条目 + if (StringUtils.isBlank(menuid)) { + sarFileSplitInfoEO.setCreationTime(new Date()); + sarFileSplitInfoEO.setModifyTime(new Date()); + sarFileSplitInfoEO.setId(infoId); + sarFileSplitInfoEO.setValidFlag(0); + sarFileSplitInfoEO.setResult("1"); + sarFileSplitInfoEO.setModifyUser(LoginUserUtil.getUserId()); + sarFileSplitInfoEO.setStandId(sarFileSplitInfoEO.getStandId()); + sarFileSplitInfoEOService.insertSelective(sarFileSplitInfoEO); + } + + Map menuPidMap = new HashMap<>(); + //默认为总目录了 + if (StringUtils.isBlank(menuid)) { + menuPidMap.put("总目录", firstId); + }else{ + menuPidMap.put("总目录",menuid ); + } + for (SarFileSplitItemsEO itemsEO : addItemsEOList) { + List itemValEOList = itemsEO.getItemValEOList(); + if(itemValEOList!=null){ + String tupian = ""; + for (SarFileSplitItemsValEO data : itemValEOList){ + tupian = tupian+data.getItemContent(); + } + itemsEO.setItermsConditions(tupian); + } + String menuIdT = createItemsInfo(itemsEO,infoId,countSuccess,menuPidMap); + menuPidMap.put(itemsEO.getItemsNum(),menuIdT); + countSuccess++; + } + //加入的里面 + for (SarFileSplitItemsEO itemsEO : addItemsEOList){ + if(itemsEO.getItemsNum().equals("总目录")) { + continue; + } + SarStandItems sarStandItems = new SarStandItems(); + sarStandItems.setFileType(sarFileSplitInfoEO.getFileType()); + sarStandItems.setStandId(sarFileSplitInfoEO.getStandId()); + sarStandItems.setItemsNum(itemsEO.getItemsNum()); + sarStandItems.setItemsName(itemsEO.getItemsName()); + sarStandItems.setTermsConditions(itemsEO.getItermsConditions()); + sarStandItems.setDutyEngineer(itemsEO.getDutyEngineer()); + sarStandItems.setId(UUIDUtils.randomUUID20()); + sarStandItemsDao.insert(sarStandItems); + } + //统计成功结果需要去掉总目录这条数据 + String msg = "成功导入" + (countSuccess-1) + "条"; + return Result.success("0", msg, null); + } catch (Exception e) { + logger.error(e.getMessage(),e); + return Result.error("导入失败"); + } + } + public void changeInfos (StringBuilder resultContent,String reaultItemId,List delMenuIds,List delIds,List resultValList) { //1.更新最终合并的条款内容 if (resultContent != null) { From 983fa9a1f2bbd0f9d99acee673e9c41d47c97b60 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Mon, 10 Apr 2023 16:48:26 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E9=97=AE=E7=AD=94=E4=B8=AD=E5=BF=83?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A0=A1=E9=AA=8C=EF=BC=8C=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E6=98=AF=E6=8F=90=E9=97=AE=E4=BA=BA=E6=88=96=E5=9B=9E=E7=AD=94?= =?UTF-8?q?=E4=BA=BA=E5=8F=AF=E7=9C=8B=E5=85=A8=E9=83=A8=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E5=A6=82=E4=B8=8D=E6=98=AF=E5=8F=AA=E8=83=BD=E7=9C=8B?= =?UTF-8?q?=E5=BD=92=E6=A1=A3=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AskQuestionsController.java | 4 +-- .../slrs/StandardQA/dao/AskQuestionsDao.java | 6 ++++ .../service/AskQuestionsService.java | 2 +- .../askQuestions/AskQuestionsMapper.xml | 36 +++++++++++++++++++ 4 files changed, 45 insertions(+), 3 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java index fe674d1e..1cef6c15 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/AskQuestionsController.java @@ -157,8 +157,8 @@ public class AskQuestionsController extends BaseController { * @return */ @GetMapping("/getAskQuestionsByakId") - public ResponseMessage getAskQuestionsByakId(String id,String state){ - List askQuestionsList = askQuestionsService.getAskQuestionsByakId(id,state); + public ResponseMessage getAskQuestionsByakId(String id,String state,String userId){ + List askQuestionsList = askQuestionsService.getAskQuestionsByakId(id,state,userId); return Result.success(askQuestionsList); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java index 2d20fa48..274b3687 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/dao/AskQuestionsDao.java @@ -39,4 +39,10 @@ public interface AskQuestionsDao extends BaseMapper { List getAskQuestionsByakId (@Param("id") String id,@Param("state") String state); List getUId(); + + String selectByRId(@Param("id") String id); + + String selectBYAQId(@Param("id") String id); + + List getAskQuestionsById(@Param("id") String id); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java index 36cf94ba..1b349281 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/AskQuestionsService.java @@ -29,7 +29,7 @@ public interface AskQuestionsService extends IService { List getAskQuestionsByStandardId(String standardId); List getArchiveAskQuestions(String id); - List getAskQuestionsByakId(String id,String state); + List getAskQuestionsByakId(String id,String state,String userId); } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml index 88e63b05..291e2576 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml @@ -266,5 +266,41 @@ order by QUESTION_TIME desc + + + + + + From c32f8c6cf4a3a826928a145bce6f9f606138c107 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Mon, 10 Apr 2023 20:22:35 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E9=97=AE=E7=AD=94=E4=B8=AD=E5=BF=83?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A0=A1=E9=AA=8C=EF=BC=8C=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E6=98=AF=E6=8F=90=E9=97=AE=E4=BA=BA=E6=88=96=E5=9B=9E=E7=AD=94?= =?UTF-8?q?=E4=BA=BA=E5=8F=AF=E7=9C=8B=E5=85=A8=E9=83=A8=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=EF=BC=8C=E5=A6=82=E4=B8=8D=E6=98=AF=E5=8F=AA=E8=83=BD=E7=9C=8B?= =?UTF-8?q?=E5=BD=92=E6=A1=A3=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StandardQA/controller/ReplyController.java | 1 + .../com/adc/da/slrs/StandardQA/entity/Reply.java | 2 ++ .../service/impl/AskQuestionsServiceImpl.java | 14 ++++++++++++-- .../mapper/askQuestions/AskQuestionsMapper.xml | 6 ++++-- 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java index 0b5e2100..c559a1e0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/controller/ReplyController.java @@ -84,6 +84,7 @@ public class ReplyController extends BaseController { return Result.error("-1","编辑失败",null); } for(Reply reply: replyList){ + reply.setAnswerer(reply.getAnswererId()); reply.setState("yes"); } replyService.updateBatchById(replyList); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java index d89d86f0..14093faa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/entity/Reply.java @@ -71,4 +71,6 @@ public class Reply extends BaseEntity { @TableField(exist = false) private String taskId; + @TableField(exist = false) + private String answererId; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java index 3960bf9e..3318b90e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/StandardQA/service/impl/AskQuestionsServiceImpl.java @@ -8,6 +8,8 @@ import com.adc.da.slrs.StandardQA.entity.AskQuestionsPage; import com.adc.da.slrs.StandardQA.entity.AskQuestionsReplyVO; import com.adc.da.slrs.StandardQA.entity.Reply; import com.adc.da.slrs.StandardQA.service.AskQuestionsService; +import com.adc.da.slrs.sarUser.entity.UpDTO; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.util.http.ResponseMessage; import com.adc.da.util.http.Result; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -39,6 +41,9 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestions(AskQuestions askQuestions) { return askQuestionsDao.getAskQuestions(askQuestions); @@ -113,8 +118,13 @@ public class AskQuestionsServiceImpl extends ServiceImpl getAskQuestionsByakId(String id,String state) { - return askQuestionsDao.getAskQuestionsByakId(id,state); + public List getAskQuestionsByakId(String id,String state,String userId) { + String questioner = askQuestionsDao.selectBYAQId(id); + String answerer = askQuestionsDao.selectByRId(id); + if (userId.equals(questioner)||userId.equals(answerer)){ + return askQuestionsDao.getAskQuestionsByakId(id,state); + } + return askQuestionsDao.getAskQuestionsById(id); } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml index 291e2576..e22df6f4 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/askQuestions/AskQuestionsMapper.xml @@ -74,7 +74,7 @@ @@ -286,6 +287,7 @@ AND reply.ASK_ID = #{id} + limit 1 @@ -297,7 +299,7 @@ AND reply.ASK_ID = #{id} - AND reply.state = '1' + AND reply.state = 'yes' order by reply.REPLY_TIME