diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java index e559943a..5a30aed5 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java @@ -402,4 +402,7 @@ public interface workFlowFeignClient { @RequestMapping(value = "/bat-wkflow/datas/bus-process-new/everyDayTenOlock",method = RequestMethod.GET) List everyDayTenOlock(); + + @RequestMapping(value = "/bat-wkflow/datas/bus-process-new/everyDayTenOlockSAM",method = RequestMethod.GET) + List everyDayTenOlockSAM(); } diff --git a/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java b/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java index cdf348f1..f37f251e 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java +++ b/adc-da-activiti/src/main/java/com/adc/da/Timer/ProcessTimer.java @@ -11,6 +11,7 @@ import com.adc.da.sys.entity.UserEO; import com.adc.da.sys.service.IUserEOService; import com.adc.da.workFlow.controller.WorkFlowController; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -185,10 +186,39 @@ public class ProcessTimer { } } + @Scheduled(cron = "0 0 10 * * ? ")//每天十点执行 +// @Scheduled(cron = "*/40 * * * * ? ")//20s + public void everyDayTenOlockScanSAM() { + List busProcessNews=new ArrayList<>(); + busProcessNews=workFlowFeignClient.everyDayTenOlockSAM(); + if (!busProcessNews.isEmpty()){ + for (BusProcessNew bus:busProcessNews) { + JSONObject jsonObject= JSON.parseObject(bus.getMesg()); + String taskInfo = bus.getTaskInfo(); + String result = jsonObject.getJSONObject("roleList").getString("dockUser"); + result = result.split(",")[0]; + jsonObject.put("member",result); + if(taskInfo.equals("标准化活动参会流程-流程结束")){ + jsonObject.put("auto","1"); + ResponseMessage responseMessage = workFlowController.startProcessNew("22",result,null); + BusMes busMes=new BusMes(); + busMes.setTaskIds(String.valueOf(responseMessage.getData())); + busMes.setJson(jsonObject.toJSONString()); + busMes.setUserId(result); + + Wrapper wrapper=workFlowFeignClient.completeTaskByUserId(busMes); + System.out.println("标准化活动会后流程自动发起"); + } + + } + } + } + public static void main(String[]args){ ProcessTimer processTimer = new ProcessTimer(); processTimer.everyDayTenOlockScan(); + processTimer.everyDayTenOlockScanSAM(); } } diff --git a/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java b/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java index 50e95ab8..d7ee90bb 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java +++ b/adc-da-activiti/src/main/java/com/adc/da/common/ActDefineStartMap.java @@ -28,6 +28,9 @@ public class ActDefineStartMap { // 政策入库 map.put("laws1","lawsLibraryWkflow"); + //政策征求意见, 认证重点法规/政策 流程 + map.put("laws2","PolicyCommentProcessWorkFlow"); + map.put("laws3","KCSTPReviewProcessWorkFlow"); //张超然 map.put("20","StandardApplyMeetProcess"); diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/common/ExportExcel.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/common/ExportExcel.java new file mode 100644 index 00000000..0460891c --- /dev/null +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/common/ExportExcel.java @@ -0,0 +1,99 @@ +package com.adc.da.workFlow.common; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import org.apache.commons.lang.StringUtils; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import sun.awt.SunHints; + + +import java.util.List; +import java.util.Map; + +public class ExportExcel { + + private String header; + + private static String[] property; + Workbook workbook=new XSSFWorkbook(); + + public void setProperty(String property){ + this.property=property.split(","); + } + + public void setHeader(String header){ + this.header=header; + } + + public Workbook getWorkBook(T dataJson) throws Exception { + JSONArray dataArray = JSONObject.parseArray(dataJson.toString()); + + CellStyle cellStyle = workbook.createCellStyle();//初始化单元格格式对象 + cellStyle.setAlignment(HorizontalAlignment.CENTER); + + + Sheet sheet = workbook.createSheet(); + sheet.setDefaultColumnWidth(25); + + createHeader(sheet,header); + + createData(sheet,dataArray); + + return workbook; + } + + + public static void createHeader(Sheet sheet, String header){ + + Row rowHeader = sheet.createRow(0);//开始创建标题行 + if (StringUtils.isNotBlank(header)) { + String[] headerArr = header.split(","); + for (int i=0;i < headerArr.length; i++) { + + rowHeader.createCell(i).setCellValue(headerArr[i]); + + } + } + } + + + + public static void createData(Sheet sheet, List data) throws Exception{ + + if (data != null && !data.isEmpty()) { + for (int i=0;i < data.size(); i++) { + + Row row = sheet.createRow(i+1); + + int sheetNum = 0; + + JSONObject datumJson =(JSONObject)data.get(i); + /** + * 遍历jsonObject值填入一行的单元格中 + */ + for (String s : property) { + String value = datumJson.getString(s); + row.createCell(sheetNum).setCellValue(value); + sheetNum++; + } +// Class cls = importDto.getClass(); +// Field[] fields = cls.getDeclaredFields(); +// for (Field field : fields) { +// field.setAccessible(true); +// if (field.get(importDto)!=null){ +// String value = field.get(importDto).toString(); +// row.createCell(sheetNum).setCellValue(value); +// }else { +// row.createCell(sheetNum).setCellValue(""); +// } +// sheetNum++; +// } + } + } + } + + + + +} diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/PolicyWorkFlowController.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/PolicyWorkFlowController.java new file mode 100644 index 00000000..4b39a04b --- /dev/null +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/PolicyWorkFlowController.java @@ -0,0 +1,69 @@ +package com.adc.da.workFlow.controller; + +import com.adc.da.common.ReadExcel; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.workFlow.common.ExportExcel; +import com.adc.da.workFlow.service.PolicyWorkFlowService; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +@RestController +@RequestMapping("/${restPath}/policy/activiti") +@Api(tags = "政策征求意见和重点法规或政策认证流程") +public class PolicyWorkFlowController { + + + /** + * 政策征求意见导出 + */ + @PostMapping("/exportExcel") + @ApiOperation("导出政策征求意见为excel") + public void exportExcel(@RequestBody String dataJson, HttpServletResponse response, HttpServletRequest request) throws Exception { + JSONObject data = JSONObject.parseObject(dataJson); + JSONArray info = data.getJSONArray("dataList"); + + + ExportExcel exportExcel = new ExportExcel(); + exportExcel.setHeader("章节编号,章节名称,修改前,修改后,修改理由,原因,提出部门,提出人"); + exportExcel.setProperty("chapterNumber,chapterName,oldText,newText,changeReason,reason,department,responUserName"); + Workbook workbook=exportExcel.getWorkBook(info); + + + response.setContentType("application/vnd.ms-excel"); + response.setHeader("Content-Disposition", + "attachment; filename=" + ReadExcel.encodeFileName("政策征求意见"+".xlsx",request)); +// response.setContentType("application/force-download"); + ServletOutputStream outputStream = response.getOutputStream(); + workbook.write(outputStream); + outputStream.flush(); + + } + + + + @Autowired + private PolicyWorkFlowService policyWorkFlowService; + + /** + * 政策征求意见导出 + */ + @PostMapping("/enterIssue") + @ApiOperation("纳入重点问题管控") + public ResponseMessage enterIssue(@RequestBody String json){ + boolean result = policyWorkFlowService.enterIssue(json); + + return Result.success(result); + } + +} diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java index 2dd91c46..36a98550 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java @@ -524,13 +524,22 @@ public class WorkFlowController { map.put("flag","未完成"); } if(map.get("comment")!=null && !map.get("comment").toString().equals("")){ - if(map.get("comment").toString().equals("0")){ - map.put("comment","同意"); - }else if(map.get("comment").toString().equals("1")){ - map.put("comment","不同意"); - }else{ - map.put("comment",map.get("commentText").toString()); + String comment = map.get("comment").toString(); + switch (comment){ + case "0": + map.put("comment","同意"); + break; + case "1": + map.put("comment","不同意"); + break; + default: + String commentText=""; + map.put("comment",comment+map.get("commentText")); } + + }else if (map.get("commentText")!=null && !"".equals(map.get("commentText"))){ + map.put("comment",map.get("commentText").toString()); + } ProcessDetailExport user = JSON.parseObject(JSON.toJSONString(map), ProcessDetailExport.class); exportDatas.add(user); diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/service/PolicyWorkFlowService.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/service/PolicyWorkFlowService.java new file mode 100644 index 00000000..e5db9b02 --- /dev/null +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/service/PolicyWorkFlowService.java @@ -0,0 +1,45 @@ +package com.adc.da.workFlow.service; + +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.service.IBusinessDeptIssueService; +import com.adc.da.util.UUIDUtils; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class PolicyWorkFlowService { + + @Autowired + private IBusinessDeptIssueService businessDeptIssueService; + + + public boolean enterIssue(String json){ + boolean count=false; //是否成功 + JSONObject dataJsonObj = JSONObject.parseObject(json); + + if ("1".equals(dataJsonObj.getString("department"))) { + JSONArray dataList = dataJsonObj.getJSONArray("dataList"); + + /** + * 把json对象转换未实体对象 + */ + List data = dataList + .stream() + .map(jsonObj -> { + + BusinessDeptIssue businessDeptIssue = JSONObject.parseObject(jsonObj.toString(), BusinessDeptIssue.class); + businessDeptIssue.setId(UUIDUtils.randomUUID20()); + return businessDeptIssue; + }).collect(Collectors.toList()); + count=businessDeptIssueService.saveBatch(data); + + } + + return count; + } +} diff --git a/adc-da-base/src/main/java/com/adc/da/util/WaterMarkUtil.java b/adc-da-base/src/main/java/com/adc/da/util/WaterMarkUtil.java index bbadfc57..5c5bd8cb 100644 --- a/adc-da-base/src/main/java/com/adc/da/util/WaterMarkUtil.java +++ b/adc-da-base/src/main/java/com/adc/da/util/WaterMarkUtil.java @@ -49,18 +49,19 @@ public class WaterMarkUtil { // set Transparency PdfGState gs = new PdfGState(); // 设置透明度为0.2 - gs.setFillOpacity(0.5f); + gs.setFillOpacity(0.4f); under.setGState(gs); under.restoreState(); under.beginText(); - under.setFontAndSize(base, 25); + under.setFontAndSize(base, 56); under.setTextMatrix(30, 30); under.setColorFill(BaseColor.LIGHT_GRAY); for (int y = 0; y < 10; y++) { for (int x = 0; x < 8; x++) { // 水印文字成45度角倾斜 under.showTextAligned(Element.ALIGN_LEFT - , waterMarkName, 100 + 300 * x, 300 * y, 45); } + , waterMarkName, 100 + 300 * x, 300 * y, 40); + } } // 添加水印文字 diff --git a/adc-da-convert/pom.xml b/adc-da-convert/pom.xml index 3394f4a2..00069d91 100644 --- a/adc-da-convert/pom.xml +++ b/adc-da-convert/pom.xml @@ -22,6 +22,42 @@ adc-da-sys 3.0.0 + + + + com.artofsolving + jodconverter + system + 2.2.2 + ${basedir}/src/main/lib/jodconverter-2.2.2.jar + + + com.aspose + aspose-words + 15.8.0 + system + ${basedir}/src/main/lib/aspose-words-15.8.0-jdk16.jar + + + com.aspose + aspose-cells + 8.5.2 + system + ${basedir}/src/main/lib/aspose-cells-8.5.2.jar + + + com.aspose + aspose-slides + 16.7.0 + system + ${basedir}/src/main/lib/aspose.slides-16.7.0.jar + + + + com.itextpdf + itextpdf + 5.5.13 + @@ -46,7 +82,7 @@ jodconverter-local 4.3.0 - + org.openoffice juh diff --git a/adc-da-convert/src/main/java/com/adc/da/convert/common/AsposeOfficeConvertUtils.java b/adc-da-convert/src/main/java/com/adc/da/convert/common/AsposeOfficeConvertUtils.java new file mode 100644 index 00000000..7fb1ee8a --- /dev/null +++ b/adc-da-convert/src/main/java/com/adc/da/convert/common/AsposeOfficeConvertUtils.java @@ -0,0 +1,37 @@ +package com.adc.da.convert.common; + +import org.apache.commons.lang.StringUtils; + +public class AsposeOfficeConvertUtils { + + public static void convertOfficeFileToPDF(String fileType,String attFilePath,String savePdfPath) throws Exception { + if(StringUtils.isNotBlank(fileType)){ + //去掉文件类型中的点 + fileType = fileType.replace(".",""); + fileType = fileType.toUpperCase(); + switch (fileType){ + case "DOC": + WordTPdfUtils.doc2pdf(attFilePath,savePdfPath); + break; + case "DOCX": + WordTPdfUtils.doc2pdf(attFilePath,savePdfPath); + break; + case "PPT": + SlidesTPdfUtils.ppt2pdf(attFilePath,savePdfPath); + break; + case "PPTX": + SlidesTPdfUtils.ppt2pdf(attFilePath,savePdfPath); + break; + case "XLS": + ExcelTPdfUtils.excel2pdf(attFilePath,savePdfPath); + break; + case "XLSX": + ExcelTPdfUtils.excel2pdf(attFilePath,savePdfPath); + break; + } + } + + } + + +} diff --git a/adc-da-convert/src/main/java/com/adc/da/convert/common/ExcelTPdfUtils.java b/adc-da-convert/src/main/java/com/adc/da/convert/common/ExcelTPdfUtils.java new file mode 100644 index 00000000..9d5bbfe7 --- /dev/null +++ b/adc-da-convert/src/main/java/com/adc/da/convert/common/ExcelTPdfUtils.java @@ -0,0 +1,122 @@ +package com.adc.da.convert.common; + +import com.aspose.cells.PdfSaveOptions; +import com.aspose.cells.Workbook; +import com.aspose.cells.License; +import com.aspose.slides.Presentation; +import com.aspose.slides.SaveFormat; +import org.aspectj.weaver.ast.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.*; + +public class ExcelTPdfUtils { + + private static final Logger logger = LoggerFactory.getLogger(WordTPdfUtils.class); + private static final String myLicense = "Aspose.Total for JavaAspose.Words for JavaEnterprise20991231209912318bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU="; + + /** + * 获取license 去除水印 + * @return + */ + public static boolean getLicense() { + boolean result = false; + try { + ByteArrayInputStream is = new ByteArrayInputStream(myLicense.getBytes()); + License aposeLic = new License(); + aposeLic.setLicense(is); + result = true; + } catch (Exception e) { + logger.error(e.getMessage(),e); + } + return result; + } + + /** + * excel 转为pdf 输出。 + * + * @param sourceFilePath excel文件 + * @param desFilePathd pad 输出文件目录 + */ + public static void excel2pdf(String sourceFilePath, String desFilePathd ) throws Exception { + if (!getLicense()) { // 验证License 若不验证则转化出的pdf文档会有水印产生 + return; + } + File file = new File(desFilePathd); // 新建一个空白pdf文档 + FileOutputStream fileOS = null; + try { + fileOS = new FileOutputStream(desFilePathd); + long old = System.currentTimeMillis(); + Workbook wb = new Workbook(sourceFilePath);// 原始excel路径 + PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); + pdfSaveOptions.setOnePagePerSheet(true); + int[] autoDrawSheets={3}; + //当excel中对应的sheet页宽度太大时,在PDF中会拆断并分页。此处等比缩放。 +// autoDraw(wb,autoDrawSheets); + int[] showSheets={0}; + //隐藏workbook中不需要的sheet页。 + printSheetPage(wb,showSheets); + wb.save(fileOS, pdfSaveOptions); + fileOS.flush(); + fileOS.close(); + long now = System.currentTimeMillis(); + logger.info("转换文档:"+sourceFilePath+" "+"共耗时:" + ((now - old) / 1000.0) + "秒"); + } catch (Exception e) { + if(fileOS!=null){ + fileOS.flush(); + fileOS.close(); + } + file.delete(); + logger.error("Document Convert Error:"+sourceFilePath); + logger.error(e.getMessage(),e); + throw new Exception("Document Convert Error:"+sourceFilePath); + } + } + + + /** + * 设置打印的sheet 自动拉伸比例 + * @param wb + * @param page 自动拉伸的页的sheet数组 + */ + public static void autoDraw(Workbook wb,int[] page){ + if(null!=page&&page.length>0){ + for (int i = 0; i < page.length; i++) { + wb.getWorksheets().get(i).getHorizontalPageBreaks().clear(); + wb.getWorksheets().get(i).getVerticalPageBreaks().clear(); + } + } + } + + + /** + * 隐藏workbook中不需要的sheet页。 + * @param wb + * @param page 显示页的sheet数组 + */ + public static void printSheetPage(Workbook wb,int[] page){ + for (int i= 1; i < wb.getWorksheets().getCount(); i++) { + wb.getWorksheets().get(i).setVisible(false); + } + if(null==page||page.length==0){ + wb.getWorksheets().get(0).setVisible(true); + }else{ + for (int i = 0; i < page.length; i++) { + wb.getWorksheets().get(i).setVisible(true); + } + } + } + + public static void main(String[] args) { + String sourceFilePath="E:\\EXCELTEXT\\一阶段问题清单426.xlsx"; + String desFilePath="E:\\EXCELTEXT\\一阶段问题清单426.pdf"; + try { + excel2pdf(sourceFilePath, desFilePath); + } catch (Exception e) { + logger.error(e.getMessage(),e); + } + } + + +} diff --git a/adc-da-convert/src/main/java/com/adc/da/convert/common/SlidesTPdfUtils.java b/adc-da-convert/src/main/java/com/adc/da/convert/common/SlidesTPdfUtils.java new file mode 100644 index 00000000..8b38b699 --- /dev/null +++ b/adc-da-convert/src/main/java/com/adc/da/convert/common/SlidesTPdfUtils.java @@ -0,0 +1,72 @@ +package com.adc.da.convert.common; + +import com.aspose.slides.Presentation; +import com.aspose.slides.License; +import com.aspose.slides.SaveFormat; +import org.aspectj.weaver.ast.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.InputStream; + +/** + * 采用破解版的Aspire插件转换文件 + */ +public class SlidesTPdfUtils { + + private static final Logger logger = LoggerFactory.getLogger(SlidesTPdfUtils.class); + private static final String myLicense = "Aspose.Total for JavaAspose.Words for JavaEnterprise20991231209912318bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU="; + + public static boolean getLicense() { + boolean result = false; + try { + ByteArrayInputStream is = new ByteArrayInputStream(myLicense.getBytes()); + License aposeLic = new License(); + aposeLic.setLicense(is); + result = true; + } catch (Exception e) { + logger.error(e.getMessage(),e); + } + return result; + } + + + public static void ppt2pdf(String inPath, String outPath) throws Exception{ + if (!getLicense()) { // 验证License 若不验证则转化出的pdf文档会有水印产生 + return; + } + File file = new File(outPath); // 新建一个空白pdf文档 + FileOutputStream os =null; + try { + long old = System.currentTimeMillis(); + os = new FileOutputStream(file); + Presentation pres = new Presentation(inPath); + pres.save(os, SaveFormat.Pdf); + os.flush(); + os.close(); + // EPUB, XPS, SWF 相互转换 + long now = System.currentTimeMillis(); + logger.info("转换文档:"+inPath+" "+"共耗时:" + ((now - old) / 1000.0) + "秒"); + } catch (Exception e) { + if(os!=null){ + os.flush(); + os.close(); + } + file.delete(); + logger.error("Document Convert Error:"+inPath); + logger.error(e.getMessage(),e); + throw new Exception("Document Convert Error:"+inPath); + } + } + + public static void main(String[] args) throws Exception { + String sourceFilePath="E:\\PPTTEXT\\2.pptx"; + String desFilePath="E:\\PPTTEXT\\2.pdf"; + ppt2pdf(sourceFilePath, desFilePath); + } + + +} \ No newline at end of file diff --git a/adc-da-convert/src/main/java/com/adc/da/convert/common/WordTPdfUtils.java b/adc-da-convert/src/main/java/com/adc/da/convert/common/WordTPdfUtils.java new file mode 100644 index 00000000..c8c8a08f --- /dev/null +++ b/adc-da-convert/src/main/java/com/adc/da/convert/common/WordTPdfUtils.java @@ -0,0 +1,65 @@ +package com.adc.da.convert.common; +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.FileOutputStream; +import java.io.InputStream; + +import com.adc.da.util.exception.AdcDaBaseException; +import com.aspose.words.Document; +import org.aspectj.weaver.ast.Test; +import com.aspose.words.License; +import com.aspose.words.SaveFormat; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * 采用破解版的Aspire插件转换文件 + */ +public class WordTPdfUtils { + + private static final Logger logger = LoggerFactory.getLogger(WordTPdfUtils.class); + + private static final String myLicense = "Aspose.Total for JavaAspose.Words for JavaEnterprise20991231209912318bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU="; + + public static boolean getLicense() { + boolean result = false; + try { + ByteArrayInputStream is = new ByteArrayInputStream(myLicense.getBytes()); + License aposeLic = new License(); + aposeLic.setLicense(is); + result = true; + } catch (Exception e) { + logger.error(e.getMessage(),e); + } + return result; + } + + + public static void doc2pdf(String inPath, String outPath) throws Exception{ + if (!getLicense()) { // 验证License 若不验证则转化出的pdf文档会有水印产生 + return; + } + File file = new File(outPath); // 新建一个空白pdf文档 + FileOutputStream os = new FileOutputStream(file); + try { + long old = System.currentTimeMillis(); + Document doc = new Document(inPath); // Address是将要被转化的word文档 + doc.save(os, SaveFormat.PDF);// 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, + os.flush(); + os.close(); + // EPUB, XPS, SWF 相互转换 + long now = System.currentTimeMillis(); + logger.info("转换文档:"+inPath+" "+"共耗时:" + ((now - old) / 1000.0) + "秒"); + } catch (Exception e) { + if(os!=null){ + os.flush(); + os.close(); + } + file.delete(); + logger.error("Document Convert Error:"+inPath); + logger.error(e.getMessage(),e); + throw new Exception("Document Convert Error:"+inPath); + } + } + +} \ No newline at end of file diff --git a/adc-da-convert/src/main/java/com/adc/da/convert/mq/SendConvertMQService.java b/adc-da-convert/src/main/java/com/adc/da/convert/mq/SendConvertMQService.java index 712aa318..dd32104f 100644 --- a/adc-da-convert/src/main/java/com/adc/da/convert/mq/SendConvertMQService.java +++ b/adc-da-convert/src/main/java/com/adc/da/convert/mq/SendConvertMQService.java @@ -4,12 +4,15 @@ import com.adc.da.att.entity.AttFileEO; import com.adc.da.att.service.IAttFileEOService; import com.adc.da.common.SarTypeEnum; import com.adc.da.common.UseModuleEnum; +import com.adc.da.convert.common.AsposeOfficeConvertUtils; import com.adc.da.convert.common.DocConverterPdf; import com.adc.da.mq.CreateMQService; import com.adc.da.slrs.otConvertMq.entity.OtConvertMq; import com.adc.da.slrs.otConvertMq.service.IOtConvertMqService; import com.adc.da.slrs.sarBussStandFile.dao.SarBussStandFileDao; import com.adc.da.slrs.sarBussStandFile.entity.SarBussStandFile; +import com.adc.da.slrs.sarLawsFile.dao.SarLawsFileDao; +import com.adc.da.slrs.sarLawsFile.entity.SarLawsFile; import com.adc.da.slrs.sarStandFile.dao.SarStandFileDao; import com.adc.da.slrs.sarStandFile.entity.SarStandFile; import com.adc.da.sys.util.LoginUserUtil; @@ -62,6 +65,9 @@ public class SendConvertMQService { @Autowired private SarBussStandFileDao sarBussStandFileEODao; + @Autowired + private SarLawsFileDao sarLawsFileDao; + private static final Logger logger = LoggerFactory.getLogger(SendConvertMQService.class); @RabbitListener(bindings = @QueueBinding( @@ -152,6 +158,7 @@ public class SendConvertMQService { public ResponseMessage docUploadConvert(OtConvertMq convertMqEO) throws Exception{ //保存在数据库中的ID String path = localFilePath + convertMqEO.getFilePath(); + path = path.replace("//","/"); String convertId = convertMqEO.getId(); try { //进入转换方法中,修改OT_CONVERT表中状态为转换中 @@ -164,24 +171,28 @@ public class SendConvertMQService { String converfilename = path.replaceAll("\\\\", "/"); logger.info("*****上传路径:*******"+localFilePath); logger.info("************文件路径:**********" + convertMqEO.getFilePath()); - logger.info("************接口:**********" + port); +// logger.info("************接口:**********" + port); logger.info("*****上传路径替换,加入文件名*******"+converfilename); //截取文件类型 int index = converfilename.lastIndexOf("."); String fileType = converfilename.substring(index,converfilename.length()); String fileOriName = converfilename.substring(0,index); - //调用转换类DocConverter,并将需要转换的文件传递给该类的构造方法 - DocConverterPdf d = new DocConverterPdf(converfilename,fileType); - d.setConvertHost(convertHost); - //调用conver方法开始转换,先执行doc2pdf()将office文件转换为pdf;再执行pdf2swf()将pdf转换为swf; - File getPdf = d.conver(fileType); - //调用getswfPath()方法,打印转换后的swf文件路径 - String dPath = d.getpdfPath(); - logger.info("*****转换后的pdf文件路径*******"+dPath); +// //调用转换类DocConverter,并将需要转换的文件传递给该类的构造方法 +// DocConverterPdf d = new DocConverterPdf(converfilename,fileType); +// d.setConvertHost(convertHost); +// //调用conver方法开始转换,先执行doc2pdf()将office文件转换为pdf;再执行pdf2swf()将pdf转换为swf; +// File getPdf = d.conver(fileType); +// //调用getswfPath()方法,打印转换后的swf文件路径 +// String dPath = d.getpdfPath(); + String savePdfFileName = converfilename.substring(0, converfilename.lastIndexOf(".")); + String savePdfPath = savePdfFileName+".pdf"; + AsposeOfficeConvertUtils.convertOfficeFileToPDF(fileType,converfilename,savePdfPath); + File pdfFile = new File(savePdfPath); + logger.info("*****转换后的pdf文件路径*******"+savePdfPath); //判断是否转换成功,修改数据状态 - if(!dPath.isEmpty() && getPdf.length()>0){ + if(!savePdfPath.isEmpty() && pdfFile.length()>0){ // 上传转换后文件 - String pdfId = attFileEOService.saveFileAttId(getPdf); + String pdfId = attFileEOService.saveFileAttId(pdfFile); logger.info("////////转换后文件id"+pdfId); int count = 0; if("0".equals(convertMqEO.getAddOrUp())){ @@ -212,11 +223,11 @@ public class SendConvertMQService { convertMqEO.setModifyTime(new Date()); convertMqEO.setMqState(2); convertMqEOService.updateById(convertMqEO); - if(convertMqEO.getAgainNum()<=5){ - throw new Exception("转换失败"); - } +// if(convertMqEO.getAgainNum()<=5){ +// throw new Exception("转换失败"); +// } } - return Result.success(dPath); + return Result.success(savePdfPath); } else { logger.error("转换时未获取到文件路径!"); return Result.error("文件存储失败,请重试"); @@ -228,7 +239,7 @@ public class SendConvertMQService { convertMqEO.setId(convertId); convertMqEO.setMqState(2); convertMqEOService.updateById(convertMqEO); - this.restartUploadConvert(convertMqEO); +// this.restartUploadConvert(convertMqEO); return Result.error("r0072", "文件转换失败,请重试"); } } @@ -270,14 +281,14 @@ public class SendConvertMQService { lawsFile.setModifyTime(new Date()); lawsFile.setUseModel(UseModuleEnum.WEB_FILE.getValue()); countSuccess = sarStandFileEODao.updateByPrimaryKeySelective(lawsFile); - } else if (SarTypeEnum.LAWS.getValue().equals(convertMq.getConvertType())) { -// SarLawsFile lawsFile = new SarLawsFile(); -// lawsFile.setId(convertMq.getPdfId()); -// lawsFile.setAttId(pdfId); -// lawsFile.setOriAttId(convertMq.getOriAttId()); -// lawsFile.setUseModel(UseModuleEnum.WEB_FILE.getValue()); -// lawsFile.setModifyTime(new Date()); -// countSuccess = sarLawsFileEODao.updateByPrimaryKeySelective(lawsFile); + } else if (SarTypeEnum.LAWS_STAND.getValue().equals(convertMq.getConvertType())) { + SarLawsFile lawsFile = new SarLawsFile(); + lawsFile.setId(convertMq.getPdfId()); + lawsFile.setAttId(pdfId); + lawsFile.setOriAttId(convertMq.getOriAttId()); + lawsFile.setUseModel(UseModuleEnum.WEB_FILE.getValue()); + lawsFile.setModifyTime(new Date()); + countSuccess = sarLawsFileDao.updateByPrimaryKeySelective(lawsFile); } else if (SarTypeEnum.BUSINESS.getValue().equals(convertMq.getConvertType())) { SarBussStandFile lawsFile = new SarBussStandFile(); lawsFile.setId(convertMq.getPdfId()); @@ -336,21 +347,21 @@ public class SendConvertMQService { lawsFile.setFileName(fileOriName+".pdf"); lawsFile.setFileSuffix("pdf"); countSuccess = sarStandFileEODao.insertSelective(lawsFile); - } else if (SarTypeEnum.LAWS.getValue().equals(convertMq.getConvertType())) { -// SarLawsFile lawsFile = new SarLawsFile(); -// lawsFile.setId(UUID.randomUUID(20)); -// lawsFile.setLawsId(convertMq.getLawsId()); -// lawsFile.setResId(convertMq.getResId()); -// lawsFile.setAttId(pdfId); -// lawsFile.setOriAttId(convertMq.getOriAttId()); -// lawsFile.setUseModel(UseModuleEnum.WEB_FILE.getValue()); -// lawsFile.setValidFlag("0"); -// lawsFile.setCreationTime(new Date()); -// lawsFile.setModifyTime(new Date()); -// lawsFile.setLawsFileClassify(convertMq.getLawsFileClassify()); -// lawsFile.setFileName(fileOriName+".pdf"); -// lawsFile.setFileSuffix("pdf"); -// countSuccess = sarLawsFileEODao.insertSelective(lawsFile); + } else if (SarTypeEnum.LAWS_STAND.getValue().equals(convertMq.getConvertType())) { + SarLawsFile lawsFile = new SarLawsFile(); + lawsFile.setId(UUID.randomUUID(20)); + lawsFile.setLawsId(convertMq.getLawsId()); + lawsFile.setResId(convertMq.getResId()); + lawsFile.setAttId(pdfId); + lawsFile.setOriAttId(convertMq.getOriAttId()); + lawsFile.setUseModel(UseModuleEnum.WEB_FILE.getValue()); + lawsFile.setValidFlag(0); + lawsFile.setCreationTime(new Date()); + lawsFile.setModifyTime(new Date()); + lawsFile.setLawsFileClassify(convertMq.getLawsFileClassify()); + lawsFile.setFileName(fileOriName+".pdf"); + lawsFile.setFileSuffix("pdf"); + countSuccess = sarLawsFileDao.insertSelective(lawsFile); } else if (SarTypeEnum.BUSINESS.getValue().equals(convertMq.getConvertType())) { SarBussStandFile lawsFile = new SarBussStandFile(); lawsFile.setId(UUID.randomUUID(20)); diff --git a/adc-da-convert/src/main/lib/aspose-cells-8.5.2.jar b/adc-da-convert/src/main/lib/aspose-cells-8.5.2.jar new file mode 100644 index 00000000..d0e1aca3 Binary files /dev/null and b/adc-da-convert/src/main/lib/aspose-cells-8.5.2.jar differ diff --git a/adc-da-convert/src/main/lib/aspose-words-15.8.0-jdk16.jar b/adc-da-convert/src/main/lib/aspose-words-15.8.0-jdk16.jar new file mode 100644 index 00000000..c0e699fc Binary files /dev/null and b/adc-da-convert/src/main/lib/aspose-words-15.8.0-jdk16.jar differ diff --git a/adc-da-convert/src/main/lib/aspose.slides-16.7.0.jar b/adc-da-convert/src/main/lib/aspose.slides-16.7.0.jar new file mode 100644 index 00000000..492ffa72 Binary files /dev/null and b/adc-da-convert/src/main/lib/aspose.slides-16.7.0.jar differ diff --git a/adc-da-convert/src/main/resources/license.xml b/adc-da-convert/src/main/resources/license.xml new file mode 100644 index 00000000..244a16d7 --- /dev/null +++ b/adc-da-convert/src/main/resources/license.xml @@ -0,0 +1,14 @@ + + + + Aspose.Total for Java + Aspose.Words for Java + + Enterprise + 20991231 + 20991231 + 8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7 + + sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU= + + \ No newline at end of file diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java index 16b25f82..7b241288 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/security/WebMvcConfig.java @@ -40,6 +40,7 @@ public class WebMvcConfig implements WebMvcConfigurer { addInterceptor.excludePathPatterns("/api/person/userInfo/getByUserInfoCode"); addInterceptor.excludePathPatterns("/api/att/attFile/upload"); addInterceptor.excludePathPatterns("/api/sarStandardsInfo/sar-standards-info/exportStandardsInfoExcel"); + addInterceptor.excludePathPatterns("/api/lawss/sarLawsInfo/exportStandardsInfoExcel"); //pcms项目数据下发开放接口 addInterceptor.excludePathPatterns("/api/sarStandProjectLibrary/save"); addInterceptor.excludePathPatterns("/api/sar-stand-project-team/save"); @@ -72,6 +73,11 @@ public class WebMvcConfig implements WebMvcConfigurer { //OCR回调存储文件 addInterceptor.excludePathPatterns("/api/ocr/OCRRestful/OcrHandleResult"); + addInterceptor.excludePathPatterns("/api/sarStandProjectLibrary/exportStandAttrInfoExcel"); + + // 拆分查看页,导出程序异常 + addInterceptor.excludePathPatterns("/api/lawss/sarFileSplitItems/exportSplitInfoZip"); + // //测试接口使用 // addInterceptor.excludePathPatterns("/api/**"); diff --git a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/IDMUtil.java b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/IDMUtil.java index 735c958b..73394161 100644 --- a/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/IDMUtil.java +++ b/adc-da-jwtLogin/src/main/java/com/adc/da/login/util/IDMUtil.java @@ -21,7 +21,7 @@ public class IDMUtil { private final String app_secret = "Fxi5LHbI5yGbQQDpVp86GcCdXeC5Bjfe"; private final String access_url = "http://sso.foton.com.cn/oauth2.0/accessTokenByJson"; private final String profile_ur = "http://sso.foton.com.cn/oauth2.0/profileByJson"; - private final String redirect_url = "https://slrs.foton.com.cn"; + private final String redirect_url = "https://srms.foton.com.cn"; public String idmLogin(String code){ try{ diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 3a1561dc..485a213d 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test2?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test2?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false #spring.datasource.url = jdbc:mysql://10.96.10.54/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java index 949a77e0..b0dd13fa 100644 --- a/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java +++ b/adc-da-search/src/main/java/com/adc/da/search/service/impl/SearchCenterServiceImpl.java @@ -285,8 +285,12 @@ public class SearchCenterServiceImpl implements SearchCenterService { if (StringUtils.isNotBlank(searchInfoEO.getType())) { boolQueryShould.must(QueryBuilders.wildcardQuery("type.keyword", "*"+searchInfoEO.getType()+"*")); } - if (StringUtils.isNotBlank(searchInfoEO.getStandType())) { - boolQueryBuilder.must(QueryBuilders.wildcardQuery("standType.keyword", "*"+searchInfoEO.getStandType()+"*")); + if (StringUtils.isNotBlank(searchInfoEO.getStandType()) && StringUtils.isNotBlank(searchInfoEO.getSelectIndex())) { + if(searchInfoEO.getSelectIndex().equals("bussstand")){ + boolQueryShould.must(QueryBuilders.wildcardQuery("type.keyword", "*"+searchInfoEO.getStandType()+"*")); + }else { + boolQueryBuilder.must(QueryBuilders.wildcardQuery("standType.keyword", "*"+searchInfoEO.getStandType()+"*")); + } } if (StringUtils.isNotBlank(searchInfoEO.getStandSort())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery("numbershow.keyword", "*"+searchInfoEO.getStandSort()+" "+"*")); @@ -403,6 +407,9 @@ public class SearchCenterServiceImpl implements SearchCenterService { // 关键字查询属性字段 String keyWordField = field + ".keyword"; String keyWordField2 = field + "Name.keyword"; + if(field.equals("NYLX")){ + field = field+"CLASS"; + } if(collectAttrMap.containsKey(field)){ List fields = new ArrayList<>(); Object json= new JSONTokener(collectAttrMap.get(field).toString()).nextValue(); @@ -480,19 +487,32 @@ public class SearchCenterServiceImpl implements SearchCenterService { private List getStringField(SeniorSearchInfoEO searchInfoEO) { String fieldInfo = InitStandAttrSearchUtil.queryField; + List fieldTimeInfo = InitStandAttrSearchUtil.timeFieldList; String fieldLawsInfo = InitStandAttrSearchUtil.queryFieldLaws; + List fieldLawsTimeInfo = InitStandAttrSearchUtil.timeFieldListLaws; String fieldBussInfo = InitStandAttrSearchUtil.queryFieldBuss; + List fieldBussTimeInfo = InitStandAttrSearchUtil.timeFieldListBuss; + if(!fieldBussTimeInfo.isEmpty()){ + fieldBussTimeInfo.add("FSRQBUSS"); + } List fieldInfoList = Arrays.asList(fieldInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); List fieldLawsInfoList = Arrays.asList(fieldLawsInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); List fieldBussInfoList = Arrays.asList(fieldBussInfo .split(",")).stream().map(s -> (s.trim())).collect(Collectors.toList()); List fieldList = new ArrayList<>(); if(StringUtils.isNotBlank(searchInfoEO.getSelectIndex())){ + fieldInfoList = fieldInfoList.stream().filter(s -> !fieldTimeInfo.contains(s)).collect(Collectors.toList()); + fieldLawsInfoList = fieldLawsInfoList.stream().filter(s -> !fieldLawsTimeInfo.contains(s)).collect(Collectors.toList()); + fieldBussInfoList = fieldBussInfoList.stream().filter(s -> !fieldBussTimeInfo.contains(s)).collect(Collectors.toList()); if(searchInfoEO.getSelectIndex().equals("stand")){ fieldList.addAll(fieldInfoList); }else if(searchInfoEO.getSelectIndex().equals("bussstand")){ fieldList.addAll(fieldBussInfoList); }else if(searchInfoEO.getSelectIndex().equals("laws")){ fieldList.addAll(fieldLawsInfoList); + }else if(searchInfoEO.getSelectIndex().equals("fulltextserch")){ + fieldList.addAll(fieldInfoList); + fieldList.addAll(fieldBussInfoList); + fieldList.addAll(fieldLawsInfoList); } } return fieldList; @@ -679,7 +699,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { // 高级搜索项,只针对标准 if (StringUtils.isNotBlank(searchInfoEO.getStandSort())) { - boolQueryBuilder.must(QueryBuilders.wildcardQuery("standSort.keyword", "*"+searchInfoEO.getStandSort()+"*")); + boolQueryBuilder.must(QueryBuilders.wildcardQuery("numbershow.keyword", "*"+searchInfoEO.getStandSort()+"*")); } if (StringUtils.isNotBlank(searchInfoEO.getStandCode())) { boolQueryBuilder.must(QueryBuilders.wildcardQuery("standNumber.keyword", "*"+searchInfoEO.getStandCode()+"*")); @@ -732,9 +752,9 @@ public class SearchCenterServiceImpl implements SearchCenterService { List fieldList = getStringField(searchInfoEO); List fieldNameList = new ArrayList<>(); String[] standStr = {"content","standSort","standNumber","standYear","stand_name","standEnName","standNatureName", - "textStatusName","isRelateAccessName","numbershow","standSystem"}; + "textStatusName","isRelateAccessName","numbershow","standSystem","NYLXCLASS","CLLX"}; String[] lawsStr = {"content","lawsType","lawsNumber","lawsName","lawsEnName","lawsNo","issueCompany","lawsTextState","lawsSyqy","lawsSycx","isRelateAccess","lawsYear","lawsNotisyncNum","lawsBulletin","lawsLabel","lawsRemark"}; - String[] bussstandStr = {"content","standSort","stand_code","standYear","stand_name","standEnName","nameshow","standstateshow","numbershow","textStatusBuss"}; + String[] bussstandStr = {"content","standSort","stand_code","standYear","stand_name","standEnName","nameshow","standstateshow","numbershow","textStatusBuss","NYLXCLASS","CLLX"}; for (String field : fieldList) { // 关键字查询属性字段 String keyWordField2 = field + "Name"; @@ -791,7 +811,7 @@ public class SearchCenterServiceImpl implements SearchCenterService { String[] seniortypeLaws = {"lawsSyqy","lawsSycx","CYSDLAWS"}; seniortype = seniortypeLaws.clone(); } else if ("bussstand".equals(searchInfoEO.getSelectIndex())) { - String[] seniortypeBuss = {"standSort", "numbershow", "statecode","CYSD","ZRLX","CLLX","CBCD","textStatus","textStatusName","NYLXCLASS"}; + String[] seniortypeBuss = {"standSort", "numbershow", "statecode","CLLX","textStatus","textStatusName","NYLXCLASS"}; seniortype = seniortypeBuss.clone(); } else { String[] seniortypeMsg = {"module"}; @@ -803,13 +823,6 @@ public class SearchCenterServiceImpl implements SearchCenterService { "JASO","JIS","GSO","GOST","ΓOCT","TP","SASO","UAE","CONTRAN","DENATRAN","ABNT NBR","NBR","INMETRO","CONAMA","Normative Instruction","ADR"}; String[] bussStandVerify = {"Q/FT A","Q/FT B","Q/FT E","Q/FT F","Q/FT G","Q/FT M","Q/FT Q","Q/FT R","Q/FT S","Q/FT T","Q/FT V","Q/FT X","Q/FT Y","Q/FT Z","Q/QCBFC"}; List list = new ArrayList<>(); - if(standType.equals("INLAND")){ - list = Stream.of(standVerify).collect(Collectors.toList()); - }else if(standType.equals("bussstand")){ - list = Stream.of(bussStandVerify).collect(Collectors.toList()); - }else if(standType.equals("FOREIGN")){ - list = Stream.of(standEnVerify).collect(Collectors.toList()); - } Map map = new HashMap<>(); for (int i = 0; i < seniortype.length; i++) { @@ -822,44 +835,54 @@ public class SearchCenterServiceImpl implements SearchCenterService { result = SearchResponseToList(response); searchInfoEO.getPager().setRowCount((int) response.getHits().getTotalHits().value); Map aggmap = response.getAggregations().asMap(); - if (!result.isEmpty()) { - for (int i = 0; i < seniortype.length; i++) { - //分组后得到的数据整合 - Object results = aggmap.get("by_" + seniortype[i]); - if(results instanceof StringTerms){ - StringTerms stResult = (StringTerms) results; - Map submap = new HashMap<>(); - for (StringTerms.Bucket bucket : stResult.getBuckets()) { - // 多选处理,当前全部允许多选 - String keyName = bucket.getKeyAsString(); - String[] keyNameList = keyName.split(","); - // 对于属性允许多选,此处做出处理 - if(keyNameList.length>0){ - for (String itemKeyName: keyNameList){ - // put 之前判断是否已存在该key ,如果不存在,直接放入值,如果存在,需要进行一个累加 - keyNameFilter(standType, list, submap, bucket, itemKeyName); + + if(StringUtils.isNotBlank(standType)){ + if(standType.equals("INLAND")){ + list = Stream.of(standVerify).collect(Collectors.toList()); + }else if(standType.equals("bussstand")){ + list = Stream.of(bussStandVerify).collect(Collectors.toList()); + }else if(standType.equals("FOREIGN")){ + list = Stream.of(standEnVerify).collect(Collectors.toList()); + } + if (!result.isEmpty()) { + for (int i = 0; i < seniortype.length; i++) { + //分组后得到的数据整合 + Object results = aggmap.get("by_" + seniortype[i]); + if(results instanceof StringTerms){ + StringTerms stResult = (StringTerms) results; + Map submap = new HashMap<>(); + for (StringTerms.Bucket bucket : stResult.getBuckets()) { + // 多选处理,当前全部允许多选 + String keyName = bucket.getKeyAsString(); + String[] keyNameList = keyName.split(","); + // 对于属性允许多选,此处做出处理 + if(keyNameList.length>0){ + for (String itemKeyName: keyNameList){ + // put 之前判断是否已存在该key ,如果不存在,直接放入值,如果存在,需要进行一个累加 + keyNameFilter(standType, list, submap, bucket, itemKeyName); + } + } + else { + keyNameFilter(standType, list, submap, bucket, keyName); } } - else { - keyNameFilter(standType, list, submap, bucket, keyName); - } + map.put(seniortype[i], submap); + } + else{ + Map submap = new HashMap<>(); + map.put(seniortype[i], submap); } - map.put(seniortype[i], submap); - } - else{ - Map submap = new HashMap<>(); - map.put(seniortype[i], submap); - } + } + if(standType.equals("bussstand")){ + map.forEach((s, o) -> { + if(s.equals("numbershow")){ + map.put("standSort",o); + } + }); + } + result.get(0).put("groupdata", map); } - if(standType.equals("bussstand")){ - map.forEach((s, o) -> { - if(s.equals("numbershow")){ - map.put("standSort",o); - } - }); - } - result.get(0).put("groupdata", map); } return result; } @@ -1153,6 +1176,17 @@ public class SearchCenterServiceImpl implements SearchCenterService { QueryBuilder multiQuery = queryInResult(searchInfoEO); boolQueryBuilder.must(multiQuery); } + + if(StringUtils.isNotBlank(searchInfoEO.getNYLXCLASS())){ + boolQueryBuilder.should(QueryBuilders.multiMatchQuery(searchInfoEO.getNYLXCLASS(), + "textContent" + ).minimumShouldMatch("100%").field("title",10f)); + }else if(StringUtils.isNotBlank(searchInfoEO.getCLLX())){ + boolQueryBuilder.should(QueryBuilders.multiMatchQuery(searchInfoEO.getCLLX(), + "textContent" + ).minimumShouldMatch("100%").field("title",10f)); + } + HighlightBuilder hiBuilder=new HighlightBuilder(); HighlightBuilder.Field highlightTitle = new HighlightBuilder.Field("title"); hiBuilder.field(highlightTitle); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Analysis.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Analysis.java new file mode 100644 index 00000000..a9356585 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Analysis.java @@ -0,0 +1,139 @@ +package com.adc.da.slrs.ImportExcelDatas.comment; + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.CellType; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.time.Year; +import java.util.HashSet; +import java.util.List; +import java.util.regex.Pattern; +import java.util.stream.Collectors; + +@Component +public class Analysis { + + private static final Logger logger = LoggerFactory.getLogger(Contrast.class); + + private int sortColumn=0; + + + public void run(MultipartFile file, MultipartFile sort) throws IOException { + + InputStream inputStream = file.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + HashSet sortSet = getSet(sort); + + for (Row row : sheet) { + if (row.getCell(1)!=null){ + //获取表1的标准号 + String value = row.getCell(1).toString(); + Cell sortCell = row.createCell(11); + Cell numberCell = row.createCell(12); + Cell yearCell = row.createCell(13); + + sortCell.setCellType(CellType.STRING); + numberCell.setCellType(CellType.STRING); + yearCell.setCellType(CellType.STRING); + + List collect = sortSet.stream() + .filter(item ->{ + int length = item.length(); + if (value.length()>length){ + return value.substring(0, length).contains(item); + }else return false; + }) + .collect(Collectors.toList()); + + //对比在表2中是否存在 + if (collect.size()==1){ + + String sortStr = collect.get(0); + int length = sortStr.length(); + logger.info("*"); +// Pattern pattern = Pattern.compile("^\\S*\\s\\S*[\\u2014\\u002d\\s]\\d{4}$"); +// pattern.matcher(standId).matches() + if (value.length()>=length+5){ + sortCell.setCellValue(collect.get(0)); + numberCell.setCellValue(value.substring(length,value.length()-5)); + yearCell.setCellValue(value.substring(value.length()-4)); + } + }else if (collect.size()>1){ + String maxLenSort=""; + for (String s : collect) { + if (s.length()>maxLenSort.length()){ + maxLenSort=s; + } + } + + int length = maxLenSort.length(); + + if (value.length()>=length+5){ + logger.info("+"); + + + sortCell.setCellValue(maxLenSort); + numberCell.setCellValue(value.substring(length,value.length()-5)); + yearCell.setCellValue(value.substring(value.length()-4)); + } + + } else { + logger.info("-"); + + sortCell.setCellValue("-"); + numberCell.setCellValue("-"); + yearCell.setCellValue("-"); + } + } + } + File result = new File("C:\\Users\\22501\\Desktop\\foton标准数据\\拆分标准号-企标.xlsx"); + FileOutputStream os = new FileOutputStream(result); + workbook.write(os); +// HashMap map = new HashMap<>(); + + } + + + public void setSortColumn(int sortColumn){ + this.sortColumn=sortColumn; + } + + /** + * 获取标准类别set集合 + * @param file + * @return + * @throws IOException + */ + private HashSet getSet(MultipartFile file) throws IOException { + InputStream inputStream = file.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + +// int lastNum = sheet.getLastRowNum(); + + HashSet stringHashSet= new HashSet<>(); + + for (Row row : sheet) { + if (row.getCell(sortColumn)!=null){ + stringHashSet.add(row.getCell(sortColumn).toString()); + } + } + + return stringHashSet; + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Contrast.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Contrast.java new file mode 100644 index 00000000..9002a91f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/Contrast.java @@ -0,0 +1,77 @@ +package com.adc.da.slrs.ImportExcelDatas.comment; + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.CellType; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.HashMap; +import java.util.HashSet; + +@Component +public class Contrast { + private static final Logger logger = LoggerFactory.getLogger(Contrast.class); + + public void run(MultipartFile file,MultipartFile sort) throws IOException { + + InputStream inputStream = file.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + HashSet set = getSet(sort); + for (Row row : sheet) { + if (row.getCell(0)!=null){ + //获取表1的标准号 + String value = row.getCell(0).toString().trim(); + Cell cell = row.createCell(11); + + //对比在表2中是否存在 + if (set.contains(value.trim())){ + logger.info("*"); + cell.setCellType(CellType.STRING); + cell.setCellValue("1"); + }else { + logger.info("-"); + cell.setCellType(CellType.STRING); + cell.setCellValue("0"); + } + } + } + File result = new File("C:\\Users\\22501\\Desktop\\foton标准数据\\海外对比全数据.xlsx"); + FileOutputStream os = new FileOutputStream(result); + workbook.write(os); +// HashMap map = new HashMap<>(); + + } + + private HashSet getSet(MultipartFile file) throws IOException { + InputStream inputStream = file.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + +// int lastNum = sheet.getLastRowNum(); + + HashSet stringHashSet= new HashSet<>(); + + for (Row row : sheet) { + if (row.getCell(1)!=null){ + stringHashSet.add(row.getCell(1).toString().trim()); + } + } + + return stringHashSet; + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclErrorOut.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclErrorOut.java index 1efb078a..f8a81979 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclErrorOut.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclErrorOut.java @@ -15,7 +15,7 @@ import java.util.List; @Component public class ExclErrorOut { - private static final Logger logger = LoggerFactory.getLogger(BussStandExportUtil.class); + private static final Logger logger = LoggerFactory.getLogger(ExclErrorOut.class); public static Workbook exportDatas (List datas,String header) { Workbook workbook = new XSSFWorkbook(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclExport.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclExport.java index 7fac0233..40b9703e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclExport.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/ExclExport.java @@ -1,17 +1,29 @@ package com.adc.da.slrs.ImportExcelDatas.comment; import com.adc.da.slrs.ImportExcelDatas.entity.ImportDto; -import org.apache.poi.ss.usermodel.Sheet; -import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.usermodel.XSSFRow; +import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import org.springframework.web.multipart.MultipartFile; + + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; + +import java.util.*; +import java.util.stream.Collectors; -import java.util.List; -import java.util.Map; @Component public class ExclExport extends ExclErrorOut { + private static final Logger logger = LoggerFactory.getLogger(ExclErrorOut.class); /** * 导出多个sheet页的excl @@ -23,6 +35,7 @@ public class ExclExport extends ExclErrorOut { for (Map.Entry> entry : dataMap.entrySet()) { List datas = entry.getValue(); Sheet sheet = workbook.createSheet(entry.getKey()); + sheet.setDefaultColumnWidth(25); super.createHeader(workbook,sheet,header); super.createDatas(workbook,sheet,datas); @@ -33,4 +46,71 @@ public class ExclExport extends ExclErrorOut { return workbook; } + + /** + * 比对表格中的数据是否在数据库表中 + * @param sourceFile + * @return + */ + public void contrast(MultipartFile sourceFile, HashSet> set) throws IOException { + + + InputStream inputStream = sourceFile.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + + +// HashMap map = new HashMap<>(); + int lastNum = sheet.getLastRowNum(); + for (int i = 0; i < lastNum; i++) { + + XSSFRow row = sheet.getRow(i); + + + if (row.getCell(1)!=null){ +// String value = row.getCell(1).toString(); + +// map.put(value,String.valueOf(i)); + String value = row.getCell(1).toString(); + Cell cell = row.createCell(11); + Set> collect = set.stream() + .filter(item -> + value.contains(item.get(0).trim()) + && value.contains(item.get(1).trim()) + && value.contains(item.get(2).trim()) + ) + .collect(Collectors.toSet()); + + + if (!collect.isEmpty()){ + logger.info("*"); + cell.setCellType(CellType.STRING); + cell.setCellValue("1"); + }else { + logger.info("-"); + cell.setCellType(CellType.STRING); + cell.setCellValue("0"); + } + } + +// map.strea +// List filterList=map.stre() +// .filter(user -> serviceCodes.contains(user.getOrgId())) +// .collect(Collectors.toList()); + + + + } + + File file = new File("C:\\Users\\22501\\Desktop\\foton标准数据\\ouhuo.xlsx"); + FileOutputStream os = new FileOutputStream(file); + workbook.write(os); + } + + + + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/PathMatcher.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/PathMatcher.java new file mode 100644 index 00000000..a046b6f5 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/PathMatcher.java @@ -0,0 +1,100 @@ +package com.adc.da.slrs.ImportExcelDatas.comment; + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.CellType; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.HashMap; + +public class PathMatcher { + private static final Logger logger = LoggerFactory.getLogger(PathMatcher.class); + + public void run(MultipartFile target,MultipartFile attach) throws IOException { + + InputStream inputStream = target.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + HashMap fileMap = getFileMap(attach); + + + for (Row row : sheet) { + + String latter = row.getCell(1).getStringCellValue().trim();//标准号 + String fileId=""; + if (row.getCell(10)!=null){ + fileId = row.getCell(10).getStringCellValue().trim();//文档id + }else { + logger.info("+"); + continue; + } + + + StringBuilder builder = new StringBuilder(); + builder.append(fileId) + .append(latter); + if (fileMap.containsKey(builder.toString())){ + Cell cell = row.createCell(9); + cell.setCellType(CellType.STRING); + cell.setCellValue(fileMap.get(builder.toString())); + logger.info("*"); + }else { + logger.info("-"); + + } + + } + + File file = new File("C:\\Users\\22501\\Desktop\\foton标准数据\\匹配带入文件路径-国内库.xlsx"); + FileOutputStream os = new FileOutputStream(file); + workbook.write(os); + + + } + + + + private HashMap getFileMap(MultipartFile excel) throws IOException { + + InputStream inputStream = excel.getInputStream(); + + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + HashMap resultMap = new HashMap<>(); + for (Row row : sheet) { + + String value = row.getCell(0).getStringCellValue(); + + String[] strArray = value.split(","); + + StringBuilder builder = new StringBuilder(); + builder.append(strArray[1].trim()) //文档id + .append(strArray[2].trim()); //标准号 + + + String path = strArray[3]; + + resultMap.put(builder.toString(),path); + + } + + return resultMap; + + + } + + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/StandMatcher.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/StandMatcher.java new file mode 100644 index 00000000..041a0c47 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/comment/StandMatcher.java @@ -0,0 +1,186 @@ +package com.adc.da.slrs.ImportExcelDatas.comment; + + +import org.apache.poi.ss.usermodel.Cell; +import org.apache.poi.ss.usermodel.CellType; +import org.apache.poi.ss.usermodel.DateUtil; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +import static org.apache.poi.ss.usermodel.CellType.NUMERIC; + +public class StandMatcher { + + + private static final Logger logger = LoggerFactory.getLogger(StandMatcher.class); + + + public void run(MultipartFile target,MultipartFile attach) throws IOException { + InputStream inputStream = target.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + Map matchSet = getMatchSet(attach); + + for (Row row : sheet) { + + String letter =convertCellValueToString(row.getCell(1));//标准号 + + String publish = convertCellValueToString(row.getCell(3));//发布日期 + + String impl= convertCellValueToString(row.getCell(4));//实施日期 + + String state = convertCellValueToString(row.getCell(2));//状态 + + String replace= convertCellValueToString(row.getCell(5));//代替标准号 + + + + + + StringBuilder strBuilder = new StringBuilder(); + strBuilder.append(letter) + .append(publish) + .append(impl) + .append(state) + .append(replace); + String str = strBuilder.toString(); + + if (matchSet.containsKey(str)){ + Cell cell = row.createCell(10); //再第10列存放文件id + cell.setCellType(CellType.STRING); + cell.setCellValue(matchSet.get(str)); + logger.info("*"); + }else { + logger.info("-"); + + } + + } + + File result = new File("C:\\Users\\22501\\Desktop\\foton标准数据\\匹配带入文件id-国内库.xlsx"); + FileOutputStream os = new FileOutputStream(result); + workbook.write(os); + } + + + + + private Map getMatchSet(MultipartFile excel) throws IOException { + InputStream inputStream = excel.getInputStream(); + XSSFWorkbook workbook = new XSSFWorkbook(inputStream); + + XSSFSheet sheet = workbook.getSheetAt(0); + + Map resultSet = new HashMap<>(); + + + for (Row row : sheet) { + + String letter =convertCellValueToString(row.getCell(0));//标准号 + + String publish = convertCellValueToString(row.getCell(3));//发布日期 + + String impl= convertCellValueToString(row.getCell(4));//实施日期 + + String state = convertCellValueToString(row.getCell(5));//状态 + + String replace= convertCellValueToString(row.getCell(6));//代替标准号 + + + + StringBuilder strBuilder = new StringBuilder(); + strBuilder.append(letter) + .append(publish) + .append(impl) + .append(state) + .append(replace); + + + + if (row.getCell(7).getCellType()== NUMERIC){ + String s = row.getCell(7).toString(); + String fileId =s.substring(0,s.length()-2);//文件id + resultSet.put(strBuilder.toString(),fileId); + + } + + } + + + return resultSet; + } + + + + + + + /** + * 将单元格内容转化为字符串 + */ + private static String convertCellValueToString(Cell cell) { + if (null == cell) { + return ""; + } + String returnValue = ""; + switch (cell.getCellType()) { + case STRING: //字符串 + returnValue = cell.getStringCellValue().trim(); + break; + case NUMERIC: //数字 + + + + if (DateUtil.isCellDateFormatted(cell)) { + Date tempValue = cell.getDateCellValue(); + SimpleDateFormat simpleFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + returnValue = simpleFormat.format(tempValue); + }else { + returnValue = String.valueOf(cell.getNumericCellValue()); + } + + + returnValue=cell.toString().trim(); + + + break; + case BOOLEAN: //布尔 + boolean booleanCellValue = cell.getBooleanCellValue(); + returnValue = Boolean.toString(booleanCellValue).trim(); + break; + case BLANK: //空值 + break; + case FORMULA: //公式 + cell.getCellFormula(); + break; + case ERROR: //故障 + break; + default: + break; + } + return returnValue; + } + /** + * 判断是否为整数,是返回true,否则返回false. + */ + public static boolean isIntegerForDouble(Double num) { + double eqs = 1e-10; //精度范围 + return num - Math.floor(num) < eqs; + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/controller/ImportExcelController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/controller/ImportExcelController.java index 7ba28226..ab6ad83d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/controller/ImportExcelController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/controller/ImportExcelController.java @@ -2,26 +2,16 @@ package com.adc.da.slrs.ImportExcelDatas.controller; import com.adc.da.base.web.BaseController; import com.adc.da.common.ReadExcel; -import com.adc.da.http.ResponseMessage; -import com.adc.da.slrs.ImportExcelDatas.comment.ExclErrorOut; -import com.adc.da.slrs.ImportExcelDatas.comment.ExclExport; +import com.adc.da.slrs.ImportExcelDatas.comment.*; import com.adc.da.slrs.ImportExcelDatas.entity.ImportDto; import com.adc.da.slrs.ImportExcelDatas.service.ImportExcelService; -import com.adc.da.slrs.ImportExcelDatas.service.impl.ImportExcelServiceImpl; -import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand; -import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStar; -import com.adc.da.slrs.sarPersonalCenter.entity.SarUserStarEO; import com.adc.da.util.exception.AdcDaBaseException; import com.adc.da.util.utils.IOUtils; -import com.adc.da.util.utils.StringUtils; -import com.adc.da.utils.util.BussStandExportUtil; -import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; @@ -52,13 +42,15 @@ public class ImportExcelController extends BaseController { /** * 导入系统 */ - List errorList = importExcelService.storageExclData(mapMap); +// List errorList = importExcelService.storageExclData(mapMap); // mapMap.put("导入后的信息",errorList); // List guonei= mapMap.get("GNBZ"); // List haiwai = mapMap.get("HWBZ"); // List qibiao = mapMap.get("QYBZ"); + + /** * 生成错误表格 */ @@ -94,4 +86,89 @@ public class ImportExcelController extends BaseController { } + + @ApiOperation("从excl分解出标准号") + @PostMapping("/analysisExcl") + public void analysisExcl(MultipartFile exclFile,MultipartFile standSort, HttpServletResponse response, HttpServletRequest request) throws IOException { + /** + * 分解数据 + */ + String headStr="标准号,标准类别,内容,标准名称,英文名称,发布时间,实施时间,标准状态,代替标准号,//,//"; + Map> stringListMap = importExcelService.analysisExcl(exclFile,standSort); + + + + /** + * 生成错误表格 + */ + OutputStream os = null; + Workbook workbook = null; + try { + + String exportName="错误表格"; + response.setHeader("Content-Disposition", + "attachment; filename=" + ReadExcel.encodeFileName(exportName+".xlsx",request)); + response.setContentType("application/force-download"); + //导出数据 +// workbook = exclErrorOut.exportDatas(guonei,headStr); + + ExclExport exclExport = new ExclExport(); + workbook = exclExport.exportData(stringListMap, headStr); + + os = response.getOutputStream(); + workbook.write(os); + os.flush(); + } catch (IOException e) { + throw new AdcDaBaseException("下载文件失败,请重试"); + } finally { + IOUtils.closeQuietly(os); + if (workbook != null) { + workbook.close(); + } + } + } + + + + @ApiOperation("excel表中的信息是否在数据库中存在") + @PostMapping("/isExist") + public String isExist(MultipartFile exclFile){ + return importExcelService.isExist(exclFile); + } + + @ApiOperation("对比两个excel表中的标准名称") + @PostMapping("/contrast") + public void contrast(MultipartFile targetExcel,MultipartFile excel) throws IOException { + Contrast contrast = new Contrast(); + contrast.run(targetExcel,excel); + + } + + + @ApiOperation("根据标准从excl中分解出标准号,类别,年份") + @PostMapping("/analysis") + public void analysis(MultipartFile targetExcel,MultipartFile attachExcel) throws IOException { + Analysis analysis = new Analysis(); + analysis.setSortColumn(1); + analysis.run(targetExcel,attachExcel); + } + + + + @ApiOperation("匹配文件id") + @PostMapping("/matching") + public void matching(MultipartFile targetExcel,MultipartFile attachExcel) throws IOException { + StandMatcher standMatcher = new StandMatcher(); + standMatcher.run(targetExcel, attachExcel); + } + + + @ApiOperation("根据文件id和标准匹配文件路径") + @PostMapping("/matchingPath") + public void matchingPath(MultipartFile targetExcel,MultipartFile attachExcel) throws IOException { + + PathMatcher pathMatcher = new PathMatcher(); + pathMatcher.run(targetExcel,attachExcel); + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/entity/ImportDto.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/entity/ImportDto.java index 849680e3..f473618d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/entity/ImportDto.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/entity/ImportDto.java @@ -8,6 +8,10 @@ public class ImportDto extends BaseEntity { // 标准号 private String standId; +//标准类别 + private String standSort; + // + private String standIdExcludeSort; // 标准名称 private String standName; // 英文名称 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/ImportExcelService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/ImportExcelService.java index 61851025..9513517b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/ImportExcelService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/ImportExcelService.java @@ -14,4 +14,8 @@ public interface ImportExcelService extends IService { public List storageExclData(Map> importListMap); + public Map> analysisExcl(MultipartFile exclFile,MultipartFile standSort); + + + public String isExist(MultipartFile exclFile); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/impl/ImportExcelServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/impl/ImportExcelServiceImpl.java index 28a15541..6ff028c3 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/impl/ImportExcelServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/ImportExcelDatas/service/impl/ImportExcelServiceImpl.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.ImportExcelDatas.service.impl; import com.adc.da.att.service.IAttFileEOService; import com.adc.da.att.vo.AttFileVo; +import com.adc.da.slrs.ImportExcelDatas.comment.ExclExport; import com.adc.da.slrs.ImportExcelDatas.dao.ImportExcelDao; import com.adc.da.slrs.ImportExcelDatas.entity.ImportDto; import com.adc.da.slrs.ImportExcelDatas.service.ImportExcelService; @@ -31,6 +32,7 @@ import java.io.InputStream; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.regex.Pattern; +import java.util.stream.Collectors; @Service public class ImportExcelServiceImpl extends ServiceImpl implements ImportExcelService { @@ -51,9 +53,10 @@ public class ImportExcelServiceImpl extends ServiceImpl6){ + + for (String s : sortList) { + int sortLength = s.length();//标准类别长度 + if (s.equals(content.substring(0,sortLength ))){ + importDto.setStandSort(s); + importDto.setStandIdExcludeSort(content.substring(sortLength)); + } + + } + + importDto.setStandId(null != as[0] ? as[0].trim() : ""); importDto.setStandName(null != as[1] ? as[1].trim() : ""); importDto.setStandNameEN(null != as[2] ? as[2].trim() : ""); importDto.setPublishTime(null != as[3] ? as[3].trim() : ""); importDto.setImplementedTime(null != as[4] ? as[4].trim() : ""); importDto.setStandStatus(null != as[5] ? as[5].trim() : ""); - importDto.setReplaceId(null != as[6] ? as[6].trim() : ""); - } else if (as.length == 7) { - importDto.setStandId(null != as[0] ? as[0].trim() : ""); - importDto.setStandName(null != as[1] ? as[1].trim() : ""); - importDto.setStandNameEN(null != as[2] ? as[2].trim() : ""); - importDto.setPublishTime(null != as[3] ? as[3].trim() : ""); - importDto.setImplementedTime(null != as[4] ? as[4].trim() : ""); - importDto.setStandStatus(null != as[5] ? as[5].trim() : ""); - importDto.setReplaceId(""); + if (length==7){ + importDto.setReplaceId(""); + }else if (length==8){ + importDto.setReplaceId(null != as[6] ? as[6].trim() : ""); + } + } + return importDto; } @@ -241,7 +255,6 @@ public class ImportExcelServiceImpl extends ServiceImpl sortList=new LinkedList<>(); + + @Override + public Map> analysisExcl(MultipartFile exclFile,MultipartFile standSort) { + //TODO analy + + if (exclFile == null || exclFile.getSize() == 0) { + log.error("文件上传错误,重新上传"); + } + String filename = exclFile.getOriginalFilename(); + String standSortName=standSort.getOriginalFilename(); + + List datas = new ArrayList<>(); + + + if (filename.endsWith(".xls")) { + datas = isXls(exclFile); + } else { + datas = isXlsx(exclFile); + } + + if (standSortName.endsWith(".xls")){ + sortList = isXls(standSort); + }else { + sortList = isXlsx(standSort); + } + + HashMap> result = new HashMap<>(); + LinkedList exportList = new LinkedList<>(); + HashSet distinct = new HashSet<>(); + datas.forEach(data->{ + System.out.print("#"); + String[] row = data.split("\\,"); + if (row.length>7){ + + if ((!"".equals(row[0].trim()) || !"".equals(row[1].trim()))&&distinct.add(row[0].trim()+row[1].trim())){ + ImportDto importDto = getImportDto(row); + + if(importDto.getStandId()!=null&&importDto.getStandName()!=null){ + exportList.add(importDto); + + } + } + + } + + }); + result.put("标准数据all_new",exportList); + + + + return result; + } + + @Override + public String isExist(MultipartFile exclFile) { + ExclExport exclExport = new ExclExport(); + QueryWrapper standWrapper = new QueryWrapper<>(); + standWrapper.select("STAND_NUMBER,STAND_SORT,STAND_YEAR"); + List> maps = sarStandardsInfoService.listMaps(standWrapper); + + QueryWrapper bussionessWrapper = new QueryWrapper<>(); + bussionessWrapper.select("STAND_CODE AS STAND_NUMBER,STAND_SORT,STAND_YEAR"); + List> maps1 = sarBussionessStandService.listMaps(bussionessWrapper); + + HashSet> nameSet = new HashSet<>(); + maps.addAll(maps1); + maps.forEach(item->{ + List strings = new LinkedList<>(); + strings.add(item.get("STAND_NUMBER").toString().trim()); + strings.add(item.get("STAND_SORT").toString().trim()); + strings.add(item.get("STAND_YEAR").toString().trim()); + + nameSet.add(strings); + }); + + try { + exclExport.contrast(exclFile,nameSet); + return "success"; + }catch (Exception e){ + e.printStackTrace(); + return "failed"; + } + } + /** * 整理为标准信息实体 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/controller/SapMeetingController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/controller/SapMeetingController.java new file mode 100644 index 00000000..3d5997dc --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/controller/SapMeetingController.java @@ -0,0 +1,69 @@ +package com.adc.da.slrs.sapMeetInfo.controller; + + +import com.adc.da.slrs.sapMeetInfo.service.ISapMeetingService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.format.annotation.DateTimeFormat; +import org.springframework.web.bind.annotation.*; +import com.adc.da.slrs.sapMeetInfo.entity.SapMeeting; +import io.swagger.annotations.Api; +import com.adc.da.base.web.BaseController; + +import java.util.Date; +import java.util.List; + +/** +*

+ * 流程通过的 标准化活动会议信息表 +standard_activity_pass + 前端控制器 + *

+* +* @author zcr +* @since 2021-11-09 +*/ +@RestController +@Api(description = "|SapMeeting|") +@RequestMapping("/api/sapMeetInfo") +public class SapMeetingController extends BaseController { + + @Autowired + ISapMeetingService sapMeetingService; + + @ApiOperation(value = "id查询会议信息") + @GetMapping("/getOneById") + public SapMeeting getOneById(String id){ + return sapMeetingService.getMeetingById(id); + } + + @ApiOperation(value = "获取日历显示会议信息") + @GetMapping("/getDateMeeting") + public int getDateMeeting(@DateTimeFormat(pattern = "yyyy-MM-dd") Date date, String id,int type){ + return sapMeetingService.getDateMeeting(date,id,type); + } + + @ApiOperation(value = "获取当月") + @GetMapping("/getMeetingsByMonth") + public List getMeetingsByMonth(@DateTimeFormat(pattern = "yyyy-MM-dd") Date date){ + return sapMeetingService.getMeetingsByMonth(date); + } + + @ApiOperation(value = "获取当月,根据标志位type区分 1标准活动和2政策课题") + @GetMapping("/getMeetingsByMonthType") + public List getMeetingsByMonthType(@DateTimeFormat(pattern = "yyyy-MM-dd") Date date,int type){ + return sapMeetingService.getMeetingsByMonth(date, type); + } + + @ApiOperation(value = "获取当天") + @GetMapping("/getMeetingsByDate") + public List getMeetingsByDate(@DateTimeFormat(pattern = "yyyy-MM-dd") Date date,int type){ + return sapMeetingService.getMeetingsByDate(date,type); + } + + @ApiOperation(value = "插入") + @PostMapping("/addMeeting") + public int addMeeting(@RequestBody SapMeeting sapMeeting){ + return sapMeetingService.addMeeting(sapMeeting); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/dao/SapMeetingDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/dao/SapMeetingDao.java new file mode 100644 index 00000000..f3fd90bb --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/dao/SapMeetingDao.java @@ -0,0 +1,43 @@ +package com.adc.da.slrs.sapMeetInfo.dao; + +import com.adc.da.slrs.sapMeetInfo.entity.SapMeeting; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.springframework.stereotype.Repository; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + *

+ * 流程通过的 标准化活动会议信息表 +standard_activity_pass + Mapper 接口 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Repository +public interface SapMeetingDao extends BaseMapper { + + int insertMeeting(SapMeeting sapMeeting);//参会流程结束--插入 + + List selectMeetingsByDate(Map map);//根据日期查找-当日所有会议(时间正序) + List selectMeetingsByMonth(Date date);//根据年,月查找 + List selectMeetingsByMonthType(Map map);//根据年,月查找,type标志位 1标准化活动 2政策课题组 + + + SapMeeting selectMeetingById(String id); + + + int deleteById(String id); + + int deleteByDate(Date date); + + int updateMeeting(SapMeeting sapMeeting); + + + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/entity/SapMeeting.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/entity/SapMeeting.java new file mode 100644 index 00000000..6b273f94 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/entity/SapMeeting.java @@ -0,0 +1,47 @@ +package com.adc.da.slrs.sapMeetInfo.entity; + +import com.adc.da.base.entity.BaseEntity; +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +/** + *

+ * 流程通过的 标准化活动会议信息表 +standard_activity_pass + + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Data +@Accessors(chain = true) +@ToString +@ApiModel(value="SapMeeting对象", description="流程通过的 标准化活动会议信息表 standard_activity_pass") +public class SapMeeting{ + + private static final long serialVersionUID = 1L; + + private String id;//主键-会议id + + private String title;//会议标题 + + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date date;//会议开始时间 + + private String content;//会议内容大纲 + + private int type;//标志位--1标准化活动会议,0政策组会议 + + private String attend;//参与人 {id,name} json + + private String files;//附件 json + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/ISapMeetingService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/ISapMeetingService.java new file mode 100644 index 00000000..c2b9d42c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/ISapMeetingService.java @@ -0,0 +1,38 @@ +package com.adc.da.slrs.sapMeetInfo.service; + +import com.adc.da.slrs.sapMeetInfo.entity.SapMeeting; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.Date; +import java.util.List; + +/** + *

+ * 流程通过的 标准化活动会议信息表 +standard_activity_pass + 服务类 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +public interface ISapMeetingService extends IService { + + int addMeeting(SapMeeting sapMeeting);//参会流程结束--插入 + + List getMeetingsByDate(Date date,int type);//根据日期查找-当日所有会议(时间正序) + List getMeetingsByMonth(Date date);//根据年,月查找 + List getMeetingsByMonth(Date date,int type);//根据年,月查找 + + int getDateMeeting(Date date,String id,int type); + + + SapMeeting getMeetingById(String id); + + int delById(String id); + + int delByDate(Date date); + + int modMeeting(SapMeeting sapMeeting); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/impl/SapMeetingServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/impl/SapMeetingServiceImpl.java new file mode 100644 index 00000000..7d71da5c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sapMeetInfo/service/impl/SapMeetingServiceImpl.java @@ -0,0 +1,112 @@ +package com.adc.da.slrs.sapMeetInfo.service.impl; + +import com.adc.da.slrs.sapMeetInfo.entity.SapMeeting; +import com.adc.da.slrs.sapMeetInfo.dao.SapMeetingDao; +import com.adc.da.slrs.sapMeetInfo.service.ISapMeetingService; +import com.adc.da.util.UUIDUtils; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + *

+ * 流程通过的 标准化活动会议信息表 +standard_activity_pass + 服务实现类 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Service +public class SapMeetingServiceImpl extends ServiceImpl implements ISapMeetingService { + + @Autowired + SapMeetingDao sapMeetingDao; + + @Override + public int addMeeting(SapMeeting sapMeeting) { + sapMeeting.setId(UUIDUtils.randomUUID(30)); + return sapMeetingDao.insertMeeting(sapMeeting); + } + + @Override + public List getMeetingsByDate(Date date,int type) { + Map map = new HashMap(); + map.put("date",date); + map.put("type",type); + return sapMeetingDao.selectMeetingsByDate(map); + } + + @Override + public List getMeetingsByMonth(Date date) { + List sapMeetings = sapMeetingDao.selectMeetingsByMonth(date); + return sapMeetings; + } + + @Override + public List getMeetingsByMonth(Date date, int type) { + Map map = new HashMap(); + map.put("date",date); + map.put("type",type); + return sapMeetingDao.selectMeetingsByMonthType(map); + } + + @Override + public int getDateMeeting(Date date,String id,int type) { + Map map = new HashMap(); + map.put("type",type); + map.put("date",date); + List sapMeetings = sapMeetingDao.selectMeetingsByDate(map); + int rat = 0;//标志位 0无会议;1有会议;2有会议且有自己参会的会议 + if(sapMeetings.isEmpty()){ + rat = 1; + }else if(hasOwnMeeting(id,sapMeetings)){ + rat = 2; + } + return rat; + } + + @Override + public SapMeeting getMeetingById(String id) { + return sapMeetingDao.selectMeetingById(id); + } + + @Override + public int delById(String id) { + return sapMeetingDao.deleteById(id); + } + + @Override + public int delByDate(Date date) { + return sapMeetingDao.deleteByDate(date); + } + + @Override + public int modMeeting(SapMeeting sapMeeting) { + return sapMeetingDao.updateMeeting(sapMeeting); + } + + boolean hasOwnMeeting(String id,List sapMeetings){ + for(SapMeeting sapMeeting : sapMeetings){ + JSONObject jsonObject = JSONObject.parseObject(sapMeeting.getAttend()); + String a = jsonObject.getString("id"); + if(a.contains("[") && a.contains("]")){ + a.substring(1,a.length()-1); + } + String[] split = a.trim().split(","); + for (String s : split) { + if (s.equals(id)) { + return true; + } + } + } + return false; + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java index fb08f978..3270c493 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java @@ -242,37 +242,42 @@ public class SarBussionessStandController extends BaseController rows = sarBussionessStandEOService.getSarBussionStandPage(page); return Result.success(getPageInfo(page.getPager(), rows)); -// if (StringUtils.isNotBlank(page.getAdvanceSearchVOStr())) { -// List searchList = JSONObject.parseArray(page.getAdvanceSearchVOStr(),SarAdvanceSearchVO.class); -// String advanceStr = SarAdvanceSearchUtil.createSql(searchList); -// if (StringUtils.isNotBlank(advanceStr)) { -// page.setAdvanceSearchStr(advanceStr); -// } else { -// page.setAdvanceSearchStr(null); -// } -// } -// page.setOrderBy("SAR_BUSSIONESS_STAND.issue_time desc nulls last,SAR_BUSSIONESS_STAND.id"); -// List getMenuIdList = tsUserService.getResourceId(new TsResource()); -//// List getMenuIdList = iTsResourceService.queryRoleMenuIdList("BUSINESS_STAND",page.getMenuId()); -// if (getMenuIdList != null && !getMenuIdList.isEmpty()) { -// page.setMenuRoleList(getMenuIdList); -// } else { -// page.setMenuRoleList(null); -// } -// List ids = iTsResourceService.getChildMenuList(page.getMenuId()); -// if (ids != null && !ids.isEmpty()) { -// page.setMenuAllChildrenIdList(ids); -// } -// List rows = sarBussionessStandEOService.getSarBussionStandPage(page); -// return Result.success(getPageInfo(page.getPager(), rows)); + } + + private void nowOrderFunc(SarBussionessStandEOPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("tmp_tb.issue_time");//发布日期 + break; + case 2: + page.setOrderByA("tmp_tb.put_time");//实施日期 + break; + case 3: + page.setOrderByA("tmp_tb.standStatusShow");//文本状态 + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } } 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 f216455c..c68dc1d7 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 @@ -278,11 +278,46 @@ public class SarBussionessStandServiceImpl extends ServiceImpl getList = sarBussionessStandEODao.getSarBussionessStand(page); attrInfoShowExport(getList); return getList; } + private void nowOrderFunc(SarBussionessStandEOPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("tmp_tb.issue_time");//发布日期 + break; + case 2: + page.setOrderByA("tmp_tb.put_time");//实施日期 + break; + case 3: + page.setOrderByA("tmp_tb.standStatusShow");//文本状态 + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } + } + public void attrInfoShow (List sarlist) throws Exception { for(SarBussionessStand row : sarlist){ attrInfoDetails(row); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index 1615a683..b3887516 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -82,8 +82,8 @@ public class TsInstitutionController extends BaseController { @ApiOperation("获得下一级的部门和人员") @GetMapping("/getNext") - public List getNext(String institutionId){ - return tsInstitutionService.getNext(institutionId); + public List getNext(String institutionId,String userName){ + return tsInstitutionService.getNext(institutionId,userName); } @ApiOperation("获得第一级部门目录") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java index 8f7b76a9..bc0b5780 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -27,7 +27,7 @@ public interface TsInstitutionDao extends BaseMapper { * 根据部门id查询此部门的子一级人员 * @return */ - List selectNextUser(String institutionId); + List selectNextUser(@Param("institutionId") String institutionId,@Param("userName") String userName); List selectTreeByIds(@Param("rootIds") List rootIds); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index af1e8996..48d24c8b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -35,7 +35,7 @@ public interface ITsInstitutionService extends IService { * @param institutionId * @return */ - public List getNext(String institutionId); + public List getNext(String institutionId,String userName); /** * 获得第一级的部门 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 0d78c184..ce821462 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -204,9 +204,9 @@ public class TsInstitutionServiceImpl extends ServiceImpl getNext(String institutionId){ + public List getNext(String institutionId,String userName){ List tsInstitutions = tsInstitutionDao.selectNextInstitution(institutionId); - List tsUsers=tsInstitutionDao.selectNextUser(institutionId); + List tsUsers=tsInstitutionDao.selectNextUser(institutionId,userName); for(TsInstitution tsInstitution:tsInstitutions){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/controller/IssueTrackController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/controller/IssueTrackController.java new file mode 100644 index 00000000..d522496f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/controller/IssueTrackController.java @@ -0,0 +1,56 @@ +package com.adc.da.slrs.sarIssueTrack.controller; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrack; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrackVo; +import com.adc.da.slrs.sarIssueTrack.service.IIssueTrackService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; +import java.util.List; + +@Controller +@RestController +@Api(tags = "重点标准跟踪清单") +@RequestMapping("/api/sarIssueTrack/issueTrack") +public class IssueTrackController { + + @Autowired + private IIssueTrackService issueTrackService; + + @PutMapping() + @ApiOperation("新增重点标准跟踪清单项目") + public ResponseMessage addIssueTrack(@RequestBody IssueTrack issueTrack){ + boolean b = issueTrackService.addIssueTrack(issueTrack); + return Result.success(b); + } + + + @DeleteMapping + @ApiOperation("删除重点标准跟踪清单项目") + public ResponseMessage removeIssueTrack(@RequestParam(value="selectedString") String idList){ + + List stringList = Arrays.asList(idList.split(",")); + boolean b = issueTrackService.removeIssueTrack(stringList); + return Result.success(b); + } + + @GetMapping + @ApiOperation("查询重点标准跟踪清单") + public ResponseMessage> getIssueTrack(IssueTrackVo wrapper){ + List issueTrack = issueTrackService.getIssueTrack(wrapper); + return Result.success(issueTrack); + } + + @PostMapping + @ApiOperation("更新重点标准跟踪清单项目") + public ResponseMessage updateIssueTrack(@RequestBody IssueTrack issueTrack){ + boolean b = issueTrackService.updateIssueTrack(issueTrack); + return Result.success(b); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/dao/IssueTrackDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/dao/IssueTrackDao.java new file mode 100644 index 00000000..4794d639 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/dao/IssueTrackDao.java @@ -0,0 +1,7 @@ +package com.adc.da.slrs.sarIssueTrack.dao; + +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrack; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +public interface IssueTrackDao extends BaseMapper { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrack.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrack.java new file mode 100644 index 00000000..026892f5 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrack.java @@ -0,0 +1,41 @@ +package com.adc.da.slrs.sarIssueTrack.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + + +@Data +@TableName("issue_track") +public class IssueTrack { + + @TableField("id") + private String id; + + @TableField("law_id") + private String lawId; + + @TableField("law_name") + private String lawName; + + @TableField("product_type") + private String productType; + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + @TableField("impl_time") + private Date implTime; + + @TableField("impl_require") + private String implRequire; + + @TableLogic(value = "0",delval = "1") + @TableField("del_flag") + private String delFlag; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrackVo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrackVo.java new file mode 100644 index 00000000..eec4bf15 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/entity/IssueTrackVo.java @@ -0,0 +1,7 @@ +package com.adc.da.slrs.sarIssueTrack.entity; + +import lombok.Data; + +@Data +public class IssueTrackVo extends IssueTrack { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/IIssueTrackService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/IIssueTrackService.java new file mode 100644 index 00000000..ffbf0b8c --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/IIssueTrackService.java @@ -0,0 +1,17 @@ +package com.adc.da.slrs.sarIssueTrack.service; + +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrack; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrackVo; + +import java.util.List; + +public interface IIssueTrackService { + + public boolean addIssueTrack(IssueTrack obj); + + public boolean removeIssueTrack(List idList); + + public List getIssueTrack(IssueTrackVo objVo); + + public boolean updateIssueTrack(IssueTrack obj); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/impl/IssueTrackServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/impl/IssueTrackServiceImpl.java new file mode 100644 index 00000000..d9928e54 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarIssueTrack/service/impl/IssueTrackServiceImpl.java @@ -0,0 +1,58 @@ +package com.adc.da.slrs.sarIssueTrack.service.impl; + +import com.adc.da.slrs.sarIssueTrack.dao.IssueTrackDao; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrack; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrackVo; +import com.adc.da.slrs.sarIssueTrack.service.IIssueTrackService; +import com.adc.da.util.UUIDUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +@Service +public class IssueTrackServiceImpl extends ServiceImpl implements IIssueTrackService { + @Override + public boolean addIssueTrack(IssueTrack obj) { + obj.setId(UUIDUtils.randomUUID20()); + obj.setDelFlag("0"); + return this.save(obj); + } + + @Override + public boolean removeIssueTrack(List idList) { + return removeByIds(idList); + } + + @Override + public List getIssueTrack(IssueTrackVo objVo) { + List result=new ArrayList<>(); + if (objVo==null){ + result=this.list(); + }else { + QueryWrapper wrapper = new QueryWrapper<>(); + + if (objVo.getLawId()!=null){ + wrapper.like("law_id",objVo.getLawId()); + } + if (objVo.getLawName()!=null){ + wrapper.like("law_name",objVo.getLawName()); + } + if (objVo.getProductType()!=null){ + wrapper.like("product_type",objVo.getProductType()); + } + + result=list(wrapper); + } + + return result; + } + + @Override + public boolean updateIssueTrack(IssueTrack obj) { + + return this.updateById(obj); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/controller/SarLawsFileController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/controller/SarLawsFileController.java index 1205d921..c4342677 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/controller/SarLawsFileController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/controller/SarLawsFileController.java @@ -1,12 +1,22 @@ package com.adc.da.slrs.sarLawsFile.controller; +import com.adc.da.att.entity.AttFileEO; +import com.adc.da.att.service.IAttFileEOService; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarLawsFile.service.ISarLawsFileService; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import com.adc.da.slrs.sarLawsFile.entity.SarLawsFile; import io.swagger.annotations.Api; import org.springframework.web.bind.annotation.RestController; import com.adc.da.base.web.BaseController; +import java.util.List; + /** *

* 前端控制器 @@ -17,7 +27,31 @@ import com.adc.da.base.web.BaseController; */ @RestController @Api(description = "|SarLawsFile|") -@RequestMapping("/sarLawsFile/sar-laws-file") +@RequestMapping("/${restPath}/lawss/sarLawsFile") public class SarLawsFileController extends BaseController { + @Autowired + private IAttFileEOService attFileEOService; + @Autowired + private ISarLawsFileService iSarLawsFileService; + + @ApiOperation(value = "|SarBussStandFileEO|查询转换后的文档详情") + @GetMapping("/queryConvertAtt") + /*@RequiresPermissions("lawss:sarLawsFile:list")*/ + public ResponseMessage queryConvertAtt(String attId) throws Exception { + List getList = iSarLawsFileService.selectFileByAttId(attId); + SarLawsFile sarBussStandFileEO = new SarLawsFile(); + if(getList != null && !getList.isEmpty()){ + sarBussStandFileEO = getList.get(0); + AttFileEO attFileEO = attFileEOService.getFileInfo(attId); + if(attFileEO != null){ + sarBussStandFileEO.setFileOldName(attFileEO.getOldFileName()); + } +// readStandOrLawsLogService.sendReadSOLLog("BUSS",sarBussStandFileEO); + return Result.success(sarBussStandFileEO); + } else { + return Result.success(null); + } + + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/ISarLawsFileService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/ISarLawsFileService.java index 333c80c8..c8327fbd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/ISarLawsFileService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/ISarLawsFileService.java @@ -3,6 +3,8 @@ package com.adc.da.slrs.sarLawsFile.service; import com.adc.da.slrs.sarLawsFile.entity.SarLawsFile; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 服务类 @@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface ISarLawsFileService extends IService { + List selectFileByAttId(String attId) throws Exception; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/impl/SarLawsFileServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/impl/SarLawsFileServiceImpl.java index 5586e2af..fed799f0 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/impl/SarLawsFileServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsFile/service/impl/SarLawsFileServiceImpl.java @@ -6,6 +6,8 @@ import com.adc.da.slrs.sarLawsFile.service.ISarLawsFileService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 服务实现类 @@ -17,4 +19,8 @@ import org.springframework.stereotype.Service; @Service public class SarLawsFileServiceImpl extends ServiceImpl implements ISarLawsFileService { + @Override + public List selectFileByAttId(String attId) throws Exception{ + return this.baseMapper.selectFileByAttId(attId); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java index d3aefe07..bdb440df 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/controller/SarLawsStandInfoController.java @@ -77,22 +77,13 @@ public class SarLawsStandInfoController extends BaseController if (null != page.getNowOrderBy()) { switch (page.getNowOrderBy()) { case 1: - page.setOrderByA("a.issueTime");//发布日期 + page.setOrderByA("SAR_LAWS_STAND_INFO.ISSUE_TIME");//发布日期 break; case 2: - page.setOrderByA("SAR_LAWS_ATTR_INFO.XCXSSRQLAWS");//新车型实施日期 + page.setOrderByA("XCXSSRQLAWS"); break; case 3: - page.setOrderByA("SAR_LAWS_ATTR_INFO.ZCXSSRQLAWS");//在产车实施日期 - break; - case 4: - page.setOrderByA("a.LAWS_TEXT_STATE");//文本状态 - break; - case 5: - page.setOrderByA("paixu"); - break; - case 6: - page.setOrderByA("SAR_LAWS_ATTR_INFO.SSRQ"); + page.setOrderByA("standStatusShow");//文本状态 break; default: page.setNowOrder(null); @@ -105,6 +96,7 @@ public class SarLawsStandInfoController extends BaseController break; case 2: page.setOrder1("asc"); + break; default: page.setOrder1(null); break; @@ -131,44 +123,10 @@ public class SarLawsStandInfoController extends BaseController @GetMapping("/pageLaws") /*@RequiresPermissions("lawss:sarLawsInfo:page")*/ public ResponseMessage> pageLaws(SarLawsStandInfoPage page) throws Exception { - if (null != page.getNowOrderBy()) { - switch (page.getNowOrderBy()) { - case 1: - page.setOrderByA("a.issueTime");//发布日期 - break; - case 2: - page.setOrderByA("SAR_LAWS_ATTR_INFO.XCXSSRQLAWS");//新车型实施日期 - break; - case 3: - page.setOrderByA("SAR_LAWS_ATTR_INFO.ZCXSSRQLAWS");//在产车实施日期 - break; - case 4: - page.setOrderByA("a.LAWS_TEXT_STATE");//文本状态 - break; - case 5: - page.setOrderByA("paixu"); - break; - case 6: - page.setOrderByA("SAR_LAWS_ATTR_INFO.SSRQ"); - break; - default: - page.setNowOrder(null); - break; - } - if (null != page.getNowOrder()) { - switch (page.getNowOrder()) { - case 1: - page.setOrder1("desc"); - break; - case 2: - page.setOrder1("asc"); - default: - page.setOrder1(null); - break; - } - } - } + if (null != page.getNowOrderBy()) { + nowOrderFunc(page); + } if (com.adc.da.util.utils.StringUtils.isNotBlank(page.getAdvanceSearchVOStr())) { List searchList = JSONObject.parseArray(page.getAdvanceSearchVOStr(),SarAdvanceSearchVO.class); @@ -184,6 +142,36 @@ public class SarLawsStandInfoController extends BaseController return Result.success(getPageInfo(page.getPager(), rows)); } + private void nowOrderFunc(SarLawsStandInfoPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("SAR_LAWS_STAND_INFO.ISSUE_TIME");//发布日期 + break; + case 2: + page.setOrderByA("XCXSSRQLAWS");//实施日期 + break; + case 3: + page.setOrderByA("standStatusShow");//文本状态 + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } + } + @ApiOperation(value = "|SarLawsStandInfo|详情") @GetMapping("/getStandInfoById") //@RequiresPermissions("lawss:sarStandardsInfo:get") diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java index 897dbaad..c75c082d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/entity/SarLawsStandInfoPage.java @@ -268,10 +268,10 @@ public class SarLawsStandInfoPage extends BasePage { @TableField(exist = false) private Integer nowOrderBy; @TableField(exist = false) - private String orderByA = "a.issue_time"; + private String orderByA = ""; @TableField(exist = false) private String orderBy1 = "SAR_LAWS_STAND_INFO.issue_time"; @TableField(exist = false) - private String order1 = "desc"; + private String order1 = ""; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java index 0033955a..72a57edb 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsStandInfo/service/impl/SarLawsStandInfoServiceImpl.java @@ -436,11 +436,46 @@ public class SarLawsStandInfoServiceImpl extends ServiceImpl rows = this.baseMapper.getSarStandardsExportInfo(page); attrInfoShowExport(rows); return rows; } + private void nowOrderFunc(SarLawsStandInfoPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("SAR_LAWS_STAND_INFO.ISSUE_TIME");//发布日期 + break; + case 2: + page.setOrderByA("XCXSSRQLAWS");//实施日期 + break; + case 3: + page.setOrderByA("standStatusShow");//文本状态 + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } + } + public void attrInfoShow (List sarlist) throws Exception { for(SarLawsStandInfo row : sarlist){ attrInfoDetails(row); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java index ff5e8193..59f3f5e2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -61,6 +61,13 @@ public class TsResourceController extends BaseController { return Result.success(tsResources); } + @ApiOperation("查询有权限资源") + @GetMapping("/getListStand") + public ResponseMessage> getListStand(TsResource tsResource){ + List tsResources=tsResourceService.getListStand(tsResource); + return Result.success(tsResources); + } + // @ApiOperation("查询所有资源") // @GetMapping("/getDefault") // public ResponseMessage> getDefault(){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java index 1f20ec11..0f4698c5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -36,6 +36,8 @@ public interface ITsResourceService extends IService { List getList(TsResource tsResource); + List getListStand(TsResource tsResource); + List getDefaultByName(); ResponseMessage addResource(TsResource tsResource); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index eda369a2..b39f1f1f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -17,10 +17,8 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** *

@@ -184,8 +182,15 @@ public class TsResourceServiceImpl extends ServiceImpl TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.like("PARENT_IDS",resource.getId()); + if(StringUtils.isNotBlank(tsResource.getSorDivide())){ + TsResourceQueryWrapper.in("ID",getMenuIdList); + } + TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); + List children=dao.selectList(TsResourceQueryWrapper); + resource.setChildren(recursionGetListChildrenStand((resource),(children))); } } } @@ -193,6 +198,33 @@ public class TsResourceServiceImpl extends ServiceImpl getListStand(TsResource tsResource) { + List TsResources = new ArrayList<>(); + + QueryWrapper queryWrapper =new QueryWrapper<>(); + if(tsResource.getSorDivide()!=null){ + queryWrapper.eq("sor_divide",tsResource.getSorDivide()); + } + queryWrapper.isNull("PARENT_ID"); + queryWrapper.orderByAsc("DISPLAY_SEQ"); + TsResources=dao.selectList(queryWrapper); + + for(TsResource resource:TsResources){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.like("PARENT_IDS",resource.getId()); + TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); + List children=dao.selectList(TsResourceQueryWrapper); + resource.setChildren(recursionGetListChildrenStand((resource),(children))); + } + + return TsResources; + } + @Override public List getDefaultByName() { List menusNames=new ArrayList<>(); @@ -288,23 +320,17 @@ public class TsResourceServiceImpl extends ServiceImpl */ - private List recursionGetListChildren(String sorDivide,TsResource parent,List getMenuIdList){ - QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); - TsResourceQueryWrapper.eq("PARENT_ID",parent.getId()); - if(StringUtils.isNotBlank(sorDivide)){ - if(!sorDivide.equals("INLAND_STAND") && !sorDivide.equals("FOREIGN_STAND")){ - TsResourceQueryWrapper.in("ID",getMenuIdList); - } + private List recursionGetListChildrenStand(TsResource resource,List children){ + List tsResources = children.stream().filter(resource1 -> resource1.getParentId().equals(resource.getId())).collect(Collectors.toList()); + if(!tsResources.isEmpty()){ + tsResources = tsResources.stream().sorted(Comparator.comparing(resource1 -> resource1.getDisplaySeq())).collect(Collectors.toList()); + tsResources.forEach(resource1 -> { + resource1.setChildren(recursionGetListChildrenStand((resource1),(children))); + }); } - TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); - List children=dao.selectList(TsResourceQueryWrapper); - for(TsResource TsResource:children){ - TsResource.setChildren(recursionGetListChildren((sorDivide),(TsResource),(getMenuIdList))); - } - return children; + return tsResources; } /** diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java index 68ec9c77..077f5e0f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/controller/SarStandProjectLibraryController.java @@ -54,6 +54,12 @@ public class SarStandProjectLibraryController extends BaseController ids); void batchInsert(@Param("list") List list); List selectPages(@Param("page")Integer page, @Param("size")Integer size,@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); + List selectPagessolostar(@Param("flag")int flag,@Param("type")String type); Integer selectCount(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); List selectPagesWorkFlow(@Param("page")Integer page, @Param("size")Integer size,@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); + List selectPagesWorkFlowsolostar(@Param("flag")int flag,@Param("type")String type); Integer selectCountWorkFlow(@Param("qu") SarStandProjectLibrary sar,@Param("flag")int flag); List getAllStands(); List getAllStand(); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java index 21feeaa7..ccee2c44 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/SarStandProjectLibraryService.java @@ -6,12 +6,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; public interface SarStandProjectLibraryService { IPage queryMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto); + List queryMaintenanceProjectsolostar(String type); IPage queryMaintenanceProjectWorkFlow(int current, int pageSize, SarStandProjectLibraryDto sarDto); IPage queryMaintenanceProjectConfirm(int current, int pageSize, SarStandProjectLibraryDto sarDto); IPage queryNotMaintenanceProject(int current, int pageSize, SarStandProjectLibraryDto sarDto); + List queryNotMaintenanceProjectsolostar(String type); + Map solostar(); List queryById(String id); IPage queryProjectManager(int current, int pageSize); List queryByProductLine(String productLine); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java index 76b8ad99..2553c394 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandProjectLibrary/service/impl/SarStandProjectLibraryServiceImpl.java @@ -152,6 +152,12 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl queryMaintenanceProjectsolostar(String type) { + int flag=2; + return getSarStandProjectLibraryIPagesolostar(flag,type); + } @Override public IPage queryMaintenanceProjectWorkFlow(int current, int pageSize, SarStandProjectLibraryDto sarDto) { @@ -240,6 +246,12 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl queryNotMaintenanceProjectsolostar(String type) { + int flag=1; + return getSarStandProjectLibraryIPagesolostar(flag,type); + } + @Override public List queryById(String id) { QueryWrapper wrapper = new QueryWrapper<>(); @@ -295,8 +307,8 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl page1 = new Page<>(current, pageSize); IPage userIPage1 = SarStandardsInfoDao.selectPage(page1, wrapper1); @@ -308,8 +320,8 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl page2 = new Page<>(current, pageSize); IPage userIPage2 = sarStandAttrInfoDao.selectPage(page2, wrapper2); @@ -457,4 +469,36 @@ public class SarStandProjectLibraryServiceImpl extends ServiceImpl getSarStandProjectLibraryIPagesolostar(int flag,String type) { + if (3!=flag) { + List sarStandProjectLibraries = sarStandProjectLibraryDao.selectPagessolostar(flag,type); + return sarStandProjectLibraries; + } + else { + flag=2; + List sarStandProjectLibraries = sarStandProjectLibraryDao.selectPagesWorkFlowsolostar(flag,type); + return sarStandProjectLibraries; + } + } + + + @Override + public Map solostar() { + Map map = new HashMap(); + List MaintenanceProjectClassification; + List MaintenanceProjectStatus; + List notMaintenanceProjectClassification; + List notMaintenanceProjectStatus; + MaintenanceProjectClassification = this.queryMaintenanceProjectsolostar("ProjectClassification"); + MaintenanceProjectStatus = this.queryMaintenanceProjectsolostar("ProjectStatus"); + notMaintenanceProjectClassification = this.queryNotMaintenanceProjectsolostar("ProjectClassification"); + notMaintenanceProjectStatus = this.queryMaintenanceProjectsolostar("ProjectStatus"); + map.put("MaintenanceProjectClassification",MaintenanceProjectClassification); + map.put("MaintenanceProjectStatus",MaintenanceProjectStatus); + map.put("notMaintenanceProjectClassification",notMaintenanceProjectClassification); + map.put("notMaintenanceProjectStatus",notMaintenanceProjectStatus); + + return map; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/BusinessDeptIssueController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/BusinessDeptIssueController.java new file mode 100644 index 00000000..b3f491c0 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/BusinessDeptIssueController.java @@ -0,0 +1,122 @@ +package com.adc.da.slrs.sarStandUnqualified.controller; + +import com.adc.da.base.web.BaseController; +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssueVo; +import com.adc.da.slrs.sarStandUnqualified.service.IBusinessDeptIssueService; +import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfoEOPage; +import com.alibaba.excel.EasyExcel; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.net.URLEncoder; +import java.util.Arrays; +import java.util.List; + +@Controller +@RestController +@RequestMapping("/api/sarStandUnqualified/businessDeptIssue") +@Api(tags = "事业部重点问题") +public class BusinessDeptIssueController extends BaseController { + + + @Autowired + private IBusinessDeptIssueService iBusinessDeptIssueService; + + @PutMapping() + @ApiOperation("新增事业部重点问题") + public ResponseMessage addBussDeptIssue(@RequestBody BusinessDeptIssue issue){ + boolean b = iBusinessDeptIssueService.addBusinessDeptIssue(issue); + return Result.success(b); + } + + + @DeleteMapping + @ApiOperation("删除事业部重点问题") + public ResponseMessage removeBussDeptIssue(@RequestParam(value="selectedString") String idList){ + List stringList = Arrays.asList(idList.split(",")); + boolean b = iBusinessDeptIssueService.removeBusinessDeptIssue(stringList); + return Result.success(b); + } + + @GetMapping + @ApiOperation("查询事业部重点问题") + public ResponseMessage> getBussDeptIssue(BusinessDeptIssueVo pageVo){ + IPage page = iBusinessDeptIssueService.getBusinessDeptIssue(pageVo); + + + return Result.success(page); + + } + + @PostMapping + @ApiOperation("更新事业部重点问题") + public ResponseMessage updateBussDeptIssue(@RequestBody BusinessDeptIssue issue){ + boolean b = iBusinessDeptIssueService.updateBusinessDeptIssue(issue); + return Result.success(b); + } + + @PostMapping("/closeIssue") + @ApiOperation("批量关闭事业部重点问题") + public ResponseMessage closeBusinessIssue(@RequestParam(value="ids")String idList){ + List stringList = Arrays.asList(idList.split(",")); + boolean b = iBusinessDeptIssueService.closeBusinessDeptIssue(stringList); + return Result.success(b); + + } + + + @GetMapping("/exportIssue") + @ApiOperation("导出事业部重点问题") + public void exportIssue(HttpServletResponse response,BusinessDeptIssueVo issue) throws IOException { + // 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman + + //TODO + try { + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + + if(issue.getFileName()==null || issue.getFileName()==""){ + issue.setFileName("事业部重点问题信息"); + } + String fileName = URLEncoder.encode(issue.getFileName(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + + + /** + * 重写了get方法,无法使用net.sf.json.JSONObject转换对象 + */ +// net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(issue.getExportContent()); +// BusinessDeptIssueVo businessDeptIssueVo = (BusinessDeptIssueVo) net.sf.json.JSONObject.toBean(jsonObject, BusinessDeptIssueVo.class); + + JSONObject jsonObject = JSONObject.parseObject(issue.getExportContent()); + BusinessDeptIssueVo businessDeptIssueVo = JSONObject.toJavaObject(jsonObject, BusinessDeptIssueVo.class); + IPage page = iBusinessDeptIssueService.getBusinessDeptIssue(businessDeptIssueVo); + + + // 这里需要设置不关闭流 + EasyExcel.write(response.getOutputStream(), BusinessDeptIssue.class).autoCloseStream(Boolean.FALSE).sheet("sheet1") + .doWrite(page.getRecords()); + } catch (Exception e) { + e.printStackTrace(); + // 重置response + response.reset(); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().println(JSONObject.toJSONString(Result.error())); + } + } + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/KeyIssueManagementController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/KeyIssueManagementController.java new file mode 100644 index 00000000..0d0bc370 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/KeyIssueManagementController.java @@ -0,0 +1,8 @@ +package com.adc.da.slrs.sarStandUnqualified.controller; + +import org.springframework.stereotype.Controller; + +@Controller +public class KeyIssueManagementController { + //TODO zky +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/ProductDeptIssueController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/ProductDeptIssueController.java new file mode 100644 index 00000000..68d8d12a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/controller/ProductDeptIssueController.java @@ -0,0 +1,69 @@ +package com.adc.da.slrs.sarStandUnqualified.controller; + +import com.adc.da.http.ResponseMessage; +import com.adc.da.http.Result; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssueVo; +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssueVo; +import com.adc.da.slrs.sarStandUnqualified.service.IBusinessDeptIssueService; +import com.adc.da.slrs.sarStandUnqualified.service.IProductDeptIssueService; +import com.baomidou.mybatisplus.core.metadata.IPage; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; +import java.util.List; + +@Controller +@RequestMapping("/api/sarStandUnqualified/productDeptIssue") +@Api(tags = "产品规划部重点问题项管控") +public class ProductDeptIssueController { + + @Autowired + private IProductDeptIssueService iProductDeptIssueService; + + @PutMapping() + @ApiOperation("新增产品规划部重点问题") + public ResponseMessage addProductDeptIssue(@RequestBody ProductDeptIssue issue){ + boolean b = iProductDeptIssueService.addProductDeptIssue(issue); + return Result.success(b); + } + + + @DeleteMapping + @ApiOperation("删除产品规划部重点问题") + public ResponseMessage removeProductDeptIssue(@RequestParam(value="selectedString") String idList){ + + List stringList = Arrays.asList(idList.split(",")); + boolean b = iProductDeptIssueService.removeProductDeptIssue(stringList); + return Result.success(b); + } + + @GetMapping + @ApiOperation("查询产品规划部重点问题") + public ResponseMessage> getProductDeptIssue(@RequestParam ProductDeptIssueVo wrapper){ + IPage issueList = iProductDeptIssueService.getProductDeptIssue(wrapper); + return Result.success(issueList); + } + + @PostMapping + @ApiOperation("更新产品规划部重点问题") + public ResponseMessage updateProductDeptIssue(@RequestBody ProductDeptIssue issue){ + boolean b = iProductDeptIssueService.updateProductDeptIssue(issue); + return Result.success(b); + } + + + @PostMapping("/closeProductIssue") + @ApiOperation("关闭产品规划部重点问题") + public ResponseMessage closeProductDeptIssue(String idList){ + List stringList = Arrays.asList(idList.split(",")); + boolean b = iProductDeptIssueService.closeProductDeptIssue(stringList); + + return Result.success(b); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/BusinessDeptIssueDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/BusinessDeptIssueDao.java new file mode 100644 index 00000000..7ceffc8f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/BusinessDeptIssueDao.java @@ -0,0 +1,19 @@ +package com.adc.da.slrs.sarStandUnqualified.dao; + + + + +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +@Mapper +public interface BusinessDeptIssueDao extends BaseMapper { + + IPage findPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/ProductDeptIssueDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/ProductDeptIssueDao.java new file mode 100644 index 00000000..ccef897d --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/dao/ProductDeptIssueDao.java @@ -0,0 +1,15 @@ +package com.adc.da.slrs.sarStandUnqualified.dao; + +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssue; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.service.IService; +import org.apache.ibatis.annotations.Param; + +public interface ProductDeptIssueDao extends BaseMapper { + + public IPage findPage(IPage page,@Param(Constants.WRAPPER) QueryWrapper wrapper); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssue.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssue.java new file mode 100644 index 00000000..de432cda --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssue.java @@ -0,0 +1,95 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + + +import com.adc.da.base.page.BasePage; +import com.adc.da.http.PageInfo; +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("business_dept_issue") +public class BusinessDeptIssue { + + + @ExcelIgnore + @TableId + private String id; + + @ExcelIgnore + @TableField("law_id") + private String lawId; + + @ExcelProperty("标准号") + @TableField(exist = false) + private String lawNumber; + + @ExcelProperty("标准名称") + @TableField(exist = false) + private String lawName; + + @ExcelProperty("产品类别") + @TableField("product_type") + private String productType; + + @ExcelProperty("实施实践") + @TableField("impl_time") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + private Date implTime; + + @ExcelProperty("实施要求") + @TableField("impl_require") + private String implRequire; + + @ExcelProperty("资源符合状态") + @TableField("conform_situation") + private String conformSituation; + + @ExcelProperty("开发情况") + @TableField("dev_scheme") + private String devScheme; + + @ExcelProperty("sop时间") + @TableField("sop_time") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + private Date sopTime; + + @ExcelProperty("完成情况") + @TableField("complete_situation") + private String completeSituation; + + @ExcelProperty("超出sop时限后计划") + @TableField("timeout_situation") + private String timeoutSituation; + + @ExcelIgnore + @TableLogic(value = "0",delval = "1") + private String delFlag; + + @ExcelProperty("责任部门") + @TableField("response_dept") + private String responseDept; + + @ExcelProperty("责任人") + @TableField("response_people") + private String responsePeople; + + @ExcelIgnore + @TableField("is_close") + private String isClose; + + @ExcelIgnore + @TableField(exist = false) + private Integer page; + + @ExcelIgnore + @TableField(exist = false) + private Integer pageSize; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssueVo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssueVo.java new file mode 100644 index 00000000..a2f4f90a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/BusinessDeptIssueVo.java @@ -0,0 +1,26 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + +import lombok.Data; + +import java.util.Arrays; +import java.util.List; + +@Data +public class BusinessDeptIssueVo extends BusinessDeptIssue { + + private String numberOrName; + + private String fileName; + + private String idList; + + private String exportContent; + + public List getIdList(){ + if (this.idList!=null){ + return Arrays.asList(this.idList.split(",")); + }else { + return null; + } + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssue.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssue.java new file mode 100644 index 00000000..f68f5d24 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssue.java @@ -0,0 +1,73 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.models.auth.In; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("product_dept_issue") +public class ProductDeptIssue { + + @TableId + private String id; + + @TableField("law_id") + private String lawId; + + @TableField(exist = false) + private String lawsNumber; + + @TableField(exist = false) + private String lawsName; + + @TableField("product_business") + private String productBusiness; + + @TableField("platform") + private String platform; + + @TableField("poj_name") + private String pojName; + + @TableField("poj_description") + private String pojDescription; + + @TableField("current_node") + private String currentNode; + + @TableField("conceptual_state") + private String conceptualState; + + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-mm-dd") + @TableField("scheduled_issuance_time") + private Date scheduledIssuanceTime; + + @TableField("revised_plan") + private String revisedPlan; + + @TableField("explanation") + private String explanation; + + @TableField("response_dept") + private String responseDept; + + @TableLogic(value = "0",delval = "1") + private String delFlag; + + @TableField("is_close") + private String isClose; + + @TableField(exist = false) + private Integer page; + + @TableField(exist = false) + private Integer pageSize; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssueVo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssueVo.java new file mode 100644 index 00000000..b508e813 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/entity/ProductDeptIssueVo.java @@ -0,0 +1,4 @@ +package com.adc.da.slrs.sarStandUnqualified.entity; + +public class ProductDeptIssueVo extends ProductDeptIssue { +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IBusinessDeptIssueService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IBusinessDeptIssueService.java new file mode 100644 index 00000000..2103c61a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IBusinessDeptIssueService.java @@ -0,0 +1,24 @@ +package com.adc.da.slrs.sarStandUnqualified.service; + +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrack; +import com.adc.da.slrs.sarIssueTrack.entity.IssueTrackVo; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssueVo; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +public interface IBusinessDeptIssueService extends IService { + + + public boolean addBusinessDeptIssue(BusinessDeptIssue obj); + + public boolean removeBusinessDeptIssue(List idList); + + public IPage getBusinessDeptIssue(BusinessDeptIssueVo objVo); + + public boolean updateBusinessDeptIssue(BusinessDeptIssue obj); + + public boolean closeBusinessDeptIssue(List idList); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IProductDeptIssueService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IProductDeptIssueService.java new file mode 100644 index 00000000..a9e04a4a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/IProductDeptIssueService.java @@ -0,0 +1,21 @@ +package com.adc.da.slrs.sarStandUnqualified.service; + +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssueVo; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.List; + +public interface IProductDeptIssueService { + + + public boolean addProductDeptIssue(ProductDeptIssue obj); + + public boolean removeProductDeptIssue(List idList); + + public IPage getProductDeptIssue(ProductDeptIssueVo objVo); + + public boolean updateProductDeptIssue(ProductDeptIssue obj); + + public boolean closeProductDeptIssue(List idList); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/BusinessDeptIssueService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/BusinessDeptIssueService.java new file mode 100644 index 00000000..b807d0c6 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/BusinessDeptIssueService.java @@ -0,0 +1,100 @@ +package com.adc.da.slrs.sarStandUnqualified.service.impl; + +import com.adc.da.slrs.sarStandUnqualified.dao.BusinessDeptIssueDao; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssueVo; +import com.adc.da.slrs.sarStandUnqualified.service.IBusinessDeptIssueService; +import com.adc.da.util.UUIDUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class BusinessDeptIssueService extends ServiceImpl implements IBusinessDeptIssueService { + + @Autowired + private BusinessDeptIssueDao businessDeptIssueDao; + + @Override + public boolean addBusinessDeptIssue(BusinessDeptIssue obj) { + obj.setId(UUIDUtils.randomUUID20()); + obj.setDelFlag("0"); + return this.save(obj); + } + + @Override + public boolean removeBusinessDeptIssue(List idList) { + return removeByIds(idList); + } + + @Override + public IPage getBusinessDeptIssue(BusinessDeptIssueVo pageVo) { + + IPage page = new Page<>(); + QueryWrapper wrapper = new QueryWrapper<>(); + //是否分页 + if (pageVo.getPage()!=null && pageVo.getPageSize()!=null){ + page=new Page<>(pageVo.getPage(),pageVo.getPageSize()); + + }else { + Integer count = businessDeptIssueDao.selectCount(wrapper); + page=new Page<>(0,count,false); + } + + + //查询条件 + if (pageVo.getIsClose()!=null){ + wrapper.like("is_close",pageVo.getIsClose()); + } + + if (pageVo.getLawNumber()!=null || pageVo.getLawName()!=null){ + wrapper.like("laws.LAWS_NUMBER",pageVo.getLawNumber()) + .or() + .like("laws.LAWS_NAME",pageVo.getLawName()); + } + + if (pageVo.getProductType()!=null){ + wrapper.like("product_type",pageVo.getProductType()); + } + + if (pageVo.getResponseDept()!=null){ + wrapper.like("response_dept",pageVo.getResponseDept()); + } + + /** + * 导出 + */ + if (pageVo.getIdList()!=null){ + wrapper.in("issue.ID",pageVo.getIdList()); + } + + page = businessDeptIssueDao.findPage(page, wrapper); + + return page; + } + + @Override + public boolean updateBusinessDeptIssue(BusinessDeptIssue obj) { + return this.updateById(obj); + } + + @Override + public boolean closeBusinessDeptIssue(List idList){ + List collect = idList.stream() + .map(item -> { + BusinessDeptIssue businessDeptIssue = new BusinessDeptIssue(); + businessDeptIssue.setId(item); + businessDeptIssue.setIsClose("1"); + return businessDeptIssue; + }).collect(Collectors.toList()); + + return this.updateBatchById(collect); + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/ProductDeptIssueService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/ProductDeptIssueService.java new file mode 100644 index 00000000..ea9ba0c4 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandUnqualified/service/impl/ProductDeptIssueService.java @@ -0,0 +1,82 @@ +package com.adc.da.slrs.sarStandUnqualified.service.impl; + +import com.adc.da.slrs.sarStandUnqualified.dao.ProductDeptIssueDao; +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssue; +import com.adc.da.slrs.sarStandUnqualified.entity.ProductDeptIssueVo; +import com.adc.da.slrs.sarStandUnqualified.service.IProductDeptIssueService; +import com.adc.da.util.UUIDUtils; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class ProductDeptIssueService extends ServiceImpl implements IProductDeptIssueService { + + + @Autowired + private ProductDeptIssueDao productDeptIssueDao; + + @Override + public boolean addProductDeptIssue(ProductDeptIssue obj) { + obj.setId(UUIDUtils.randomUUID20()); + obj.setDelFlag("0"); + return this.save(obj); + } + + @Override + public boolean removeProductDeptIssue(List idList) { + return removeByIds(idList); + } + + @Override + public IPage getProductDeptIssue(ProductDeptIssueVo objVo) { + + IPage page=new Page<>(objVo.getPage(),objVo.getPage()); + + QueryWrapper wrapper = new QueryWrapper<>(); + + if (objVo.getLawsNumber()!=null){ + wrapper.like("laws.LAWS_NAME",objVo.getLawsName()) + .or() + .like("laws.LAWS_NUMBER",objVo.getLawsNumber()); + } + + if (objVo.getPojName()!=null){ + wrapper.like("poj_name",objVo.getPojName()); + } + + if (objVo.getResponseDept()!=null){ + wrapper.like("response_dept",objVo.getResponseDept()); + } + productDeptIssueDao.findPage(page,wrapper); + + return page; + } + + @Override + public boolean updateProductDeptIssue(ProductDeptIssue obj) { + + return this.updateById(obj); + } + + @Override + public boolean closeProductDeptIssue(List idList){ + + List collect = idList.stream() + .map(id -> { + ProductDeptIssue productDeptIssue = new ProductDeptIssue(); + productDeptIssue.setId(id); + productDeptIssue.setIsClose("1"); + return productDeptIssue; + }).collect(Collectors.toList()); + return this.updateBatchById(collect); + + } + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java index 4f8e4179..d6e5d118 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/controller/SarStandardsInfoController.java @@ -92,46 +92,10 @@ public class SarStandardsInfoController extends BaseController @GetMapping("/getSarStandardsInfoPage") //@RequiresPermissions("lawss:sarStandardsInfo:getSarStandardsInfoPage") public ResponseMessage> getSarStandardsInfoPage(SarStandardsInfoEOPage page,@RequestParam(defaultValue = "0") String mark) throws Exception { - int isNull = -1; if (null != page.getNowOrderBy()) { - switch (page.getNowOrderBy()) { - case 1: - page.setOrderByA("issueTime");//发布日期 - break; - case 2: - page.setOrderByA("SAR_STAND_ATTR_INFO.ZCCSSRQ");//新车型实施日期 - break; - case 3: - page.setOrderByA("SAR_STAND_ATTR_INFO.XCXSSRQ");//在产车实施日期 - break; - case 4: - page.setOrderByA("SAR_STANDARDS_INFO.text_status");//文本状态 - break; - case 5: - page.setOrderByA("paixu"); - break; - case 6: - page.setOrderByA("SAR_STAND_ATTR_INFO.SSRQ"); - break; - default: - page.setNowOrder(null); - break; - } - if (null != page.getNowOrder()) { - switch (page.getNowOrder()) { - case 1: - page.setOrder1("desc"); - break; - case 2: - page.setOrder1("asc"); - default: - page.setOrder1(null); - break; - } - } + nowOrderFunc(page); } - if (StringUtils.isNotBlank(page.getAdvanceSearchVOStr())) { List searchList = JSONObject.parseArray(page.getAdvanceSearchVOStr(),SarAdvanceSearchVO.class); String advanceStr = SarAdvanceSearchUtil.createStandSql(searchList); @@ -142,40 +106,6 @@ public class SarStandardsInfoController extends BaseController } } - - - - -// if (StringUtils.isNotBlank(page.getAdvanceSearchVOStr())) { -// List searchList = JSONObject.parseArray(page.getAdvanceSearchVOStr(),SarAdvanceSearchVO.class); -// int i = 0; -// for (SarAdvanceSearchVO sarAdvanceSearchVO:searchList){ -// if ("SVPPS".equals(sarAdvanceSearchVO.getField()) && StringUtils.isBlank(sarAdvanceSearchVO.getValue())){ -// isNull = i; -// } -// i++; -// } -// if (-1 != isNull) { -// searchList.remove(isNull); -// } -// if (isNull == 0 && searchList.size() > 0){ -// searchList.get(0).setConnect(""); -// } -// String advanceStr = SarAdvanceSearchUtil.createSql(searchList); -// if (null != advanceStr) { -// advanceStr = advanceStr.replace("stand_number", "concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-',SAR_STANDARDS_INFO.STAND_YEAR)"); -// } -// if (-1 != isNull && StringUtils.isBlank(advanceStr)){ -// advanceStr = advanceStr + " SVPPS is null"; -// }else if (-1 != isNull && StringUtils.isNotBlank(advanceStr)){ -// advanceStr = advanceStr + " and SVPPS is null"; -// } -// if (StringUtils.isNotBlank(advanceStr)) { -// page.setAdvanceSearchStr(advanceStr); -// } else { -// page.setAdvanceSearchStr(null); -// } -// } if(page.getUserId() == null || page.getUserId().equals("")){ page.setUserId(LoginUserUtil.getUserId()); } @@ -183,6 +113,45 @@ public class SarStandardsInfoController extends BaseController return Result.success(getPageInfo(page.getPager(), rows)); } + private void nowOrderFunc(SarStandardsInfoEOPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("ISSUE_TIME");//发布日期 + break; + case 2: + page.setOrderByA("ZCCSSRQ");//新车型实施日期 + break; + case 3: + page.setOrderByA("XCXSSRQ");//在产车实施日期 + break; + case 4: + page.setOrderByA("standTextStatusShow");//文本状态 + break; + case 5: + page.setOrderByA("paixu"); + break; + case 6: + page.setOrderByA("SSRQ"); + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } + } + @ApiOperation(value = "|SarStandardsInfoEO|自定义分页查询") @GetMapping("/getSarStandardsInfoPageBak") //@RequiresPermissions("lawss:sarStandardsInfo:getSarStandardsInfoPage") @@ -240,7 +209,7 @@ public class SarStandardsInfoController extends BaseController // if(page.getUserId() == null || page.getUserId().equals("")){ // page.setUserId(LoginUserUtil.getUserId()); // } - List rows = sarStandardsInfoEOService.getSarStandardsInfoPageBak(page); + List rows = sarStandardsInfoEOService.getSarStandardsInfoPageBak1(page); return Result.success(getPageInfo(page.getPager(), rows)); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java index 9e07c26a..8d2845a4 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java @@ -21,7 +21,7 @@ import java.util.List; @Repository public interface SarStandardsInfoDao extends BaseMapper { - List getSarStandardsInfoPage(SarStandardsInfoEOPage page); + List getSarStandardsInfoPage(@Param("page") SarStandardsInfoEOPage page,@Param("mark")String mark); int getSarStandardsInfoCount(SarStandardsInfoEOPage page); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarBussionessStandEOPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarBussionessStandEOPage.java index d2fee840..0fc3aec2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarBussionessStandEOPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarBussionessStandEOPage.java @@ -120,6 +120,10 @@ public class SarBussionessStandEOPage extends BasePage { private String paixu; private String shunxu; private String sql; + private Integer nowOrder; + private Integer nowOrderBy; + private String orderByA = ""; + private String order1 = ""; // 新增字段 private String FZRQBUSS; @@ -144,6 +148,38 @@ public class SarBussionessStandEOPage extends BasePage { private String GLWJBUSS; private String XCSJBUSS; + public Integer getNowOrder() { + return nowOrder; + } + + public void setNowOrder(Integer nowOrder) { + this.nowOrder = nowOrder; + } + + public Integer getNowOrderBy() { + return nowOrderBy; + } + + public void setNowOrderBy(Integer nowOrderBy) { + this.nowOrderBy = nowOrderBy; + } + + public String getOrderByA() { + return orderByA; + } + + public void setOrderByA(String orderByA) { + this.orderByA = orderByA; + } + + public String getOrder1() { + return order1; + } + + public void setOrder1(String order1) { + this.order1 = order1; + } + public String getFZRQBUSS() { return FZRQBUSS; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfoEOPage.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfoEOPage.java index 0327acda..6b48976e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfoEOPage.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/entity/SarStandardsInfoEOPage.java @@ -84,9 +84,9 @@ public class SarStandardsInfoEOPage extends BasePage { private String productId; private Integer nowOrder; private Integer nowOrderBy; - private String orderByA = "a.issue_time"; + private String orderByA = ""; private String orderBy1 = "SAR_STANDARDS_INFO.issue_time"; - private String order1 = "desc"; + private String order1 = ""; // zhaokaiyao private String textStatus;//文本状态 diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java index 9fcbf007..aa4617f5 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/ISarStandardsInfoService.java @@ -23,6 +23,8 @@ public interface ISarStandardsInfoService extends IService { List getSarStandardsInfoPageBak(SarStandardsInfoEOPage page) throws Exception; + List getSarStandardsInfoPageBak1(SarStandardsInfoEOPage page) throws Exception; + void createSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception; int updateSarStandardsInfo(SarStandardsInfo sarStandardsInfoEO) throws Exception; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java index 51279907..0e714994 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/service/impl/SarStandardsInfoServiceImpl.java @@ -293,12 +293,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl children = iTsResourceService.list(qw); if(children.isEmpty() && !page.getMenuId().equals("nomenu")){ - List getMenuIdList = tsUserService.getResourceUserId(page.getUserId()); - if (getMenuIdList != null && !getMenuIdList.isEmpty()) { - page.setMenuRoleList(getMenuIdList); - } else { - page.setMenuRoleList(null); - } +// List getMenuIdList = tsUserService.getResourceUserId(page.getUserId()); +// if (getMenuIdList != null && !getMenuIdList.isEmpty()) { +// page.setMenuRoleList(getMenuIdList); +// } else { +// page.setMenuRoleList(null); +// } List ids = iTsResourceService.getChildMenuList(page.getMenuId()); if (ids != null && !ids.isEmpty()) { page.setMenuAllChildrenIdList(ids); @@ -307,7 +307,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarlist = dao.getSarStandardsInfoPage(page); + List sarlist = dao.getSarStandardsInfoPage(page,"0"); attrInfoCollect(sarlist); return sarlist; } @@ -335,7 +335,35 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarlist = dao.getSarStandardsInfoPage(page); + List sarlist = dao.getSarStandardsInfoPage(page,"999"); + attrInfo(sarlist); + return sarlist; + } + + @Override + public List getSarStandardsInfoPageBak1(SarStandardsInfoEOPage page) throws Exception { + //查询当前登录人角色拥有权限的菜单 + if(page.getMenuId() != null && page.getUserId() != null && StringUtils.isNotBlank(page.getUserId())){ + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("ID",page.getMenuId()); + qw.isNull("PARENT_ID"); + List children = iTsResourceService.list(qw); + if(children.isEmpty() && !page.getMenuId().equals("nomenu")){ + List getMenuIdList = tsUserService.getResourceUserId(page.getUserId()); + if (getMenuIdList != null && !getMenuIdList.isEmpty()) { + page.setMenuRoleList(getMenuIdList); + } else { + page.setMenuRoleList(null); + } + List ids = iTsResourceService.getChildMenuList(page.getMenuId()); + if (ids != null && !ids.isEmpty()) { + page.setMenuAllChildrenIdList(ids); + } + } + } + Integer rowCount = dao.getSarStandardsInfoCount(page); + page.getPager().setRowCount(rowCount); + List sarlist = dao.getSarStandardsInfoPage(page,"0"); attrInfo(sarlist); return sarlist; } @@ -1508,7 +1536,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getReplacedStands = dao.getSarStandardsInfoPage(sarStandardsInfoEOPage); + List getReplacedStands = dao.getSarStandardsInfoPage(sarStandardsInfoEOPage,"0"); if (getReplacedStands != null && !getReplacedStands.isEmpty()) { for (SarStandardsInfo stand : getReplacedStands) { SarStandardsInfo newStand = new SarStandardsInfo(); @@ -1558,12 +1586,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl children = iTsResourceService.list(qw); if(children.isEmpty() && !page.getMenuId().equals("nomenu")){ - List getMenuIdList = tsUserService.getResourceUserId(page.getUserId()); - if (getMenuIdList != null && !getMenuIdList.isEmpty()) { - page.setMenuRoleList(getMenuIdList); - } else { - page.setMenuRoleList(null); - } +// List getMenuIdList = tsUserService.getResourceUserId(page.getUserId()); +// if (getMenuIdList != null && !getMenuIdList.isEmpty()) { +// page.setMenuRoleList(getMenuIdList); +// } else { +// page.setMenuRoleList(null); +// } List ids = iTsResourceService.getChildMenuList(page.getMenuId()); if (ids != null && !ids.isEmpty()) { page.setMenuAllChildrenIdList(ids); @@ -1585,11 +1613,53 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl getList = dao.getSarStandardsExportInfo(page); attrInfoShowExport(getList); return getList; } + private void nowOrderFunc(SarStandardsInfoEOPage page) { + switch (page.getNowOrderBy()) { + case 1: + page.setOrderByA("ISSUE_TIME");//发布日期 + break; + case 2: + page.setOrderByA("ZCCSSRQ");//新车型实施日期 + break; + case 3: + page.setOrderByA("XCXSSRQ");//在产车实施日期 + break; + case 4: + page.setOrderByA("text_status");//文本状态 + break; + case 5: + page.setOrderByA("paixu"); + break; + case 6: + page.setOrderByA("SSRQ"); + break; + default: + page.setNowOrder(null); + break; + } + if (null != page.getNowOrder()) { + switch (page.getNowOrder()) { + case 1: + page.setOrder1("desc"); + break; + case 2: + page.setOrder1("asc"); + break; + default: + page.setOrder1(null); + break; + } + } + } + public ResponseMessage importSarStandardsInfoData(List> dataList, String standType, String menuId, String filepath) { //此处需要做各种验证,数据库操作 try { @@ -2739,7 +2809,7 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl sarlist = dao.getSarStandardsInfoPage(page); + List sarlist = dao.getSarStandardsInfoPage(page,"0"); attrInfo(sarlist); return sarlist; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/dao/WgDeptDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/dao/WgDeptDao.java index a8477a26..6216f5d8 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/dao/WgDeptDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/dao/WgDeptDao.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.wgDept.dao; import com.adc.da.slrs.wgDept.entity.WgDept; +import com.adc.da.slrs.wgDept.entity.WgDeptShow; import com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -16,5 +17,7 @@ import java.util.List; * @since 2021-11-04 */ public interface WgDeptDao extends BaseMapper { - List researchDatas(@Param(value = "data") String data); + List researchDatas(@Param(value = "data") String data); + + List researchAllDatas(@Param(value = "type") String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDept.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDept.java index 07b6d5b0..0566b276 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDept.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDept.java @@ -11,6 +11,8 @@ import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import java.util.List; + /** *

* 集团参与情况 @@ -49,8 +51,12 @@ public class WgDept extends BaseEntity { private String identity; @ApiModelProperty(value = "资料") - @TableField("datum") - private String datum; + @TableField("joinfile") + private String joinfile; + + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDeptShow.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDeptShow.java new file mode 100644 index 00000000..db6423e3 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/entity/WgDeptShow.java @@ -0,0 +1,75 @@ +package com.adc.da.slrs.wgDept.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 集团参与情况 + *

+ * + * @author super_liu + * @since 2021-11-04 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="WgDept对象", description="集团参与情况") +public class WgDeptShow extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "id") + @TableId(value = "id",type = IdType.UUID) + private String id; + + @ApiModelProperty(value = "工作组id") + @TableField("wg_id") + private String wgId; + + @ApiModelProperty(value = "我司在工作组排名顺序") + @TableField("dept_order") + private String deptOrder; + + @ApiModelProperty(value = "我司人员") + @TableField("dept_people_id") + private String deptPeopleId; + + @ApiModelProperty(value = "身份") + @TableField("identity") + private String identity; + + @ApiModelProperty(value = "资料") + @TableField("joinfile") + private String joinfile; + + @ApiModelProperty(value = "中文名") + private String name; + + @ApiModelProperty(value = "单位") + private String unit; + + @ApiModelProperty(value = "单位名称") + private String unitName; + + @ApiModelProperty(value = "电话") + private String phone; + + @ApiModelProperty(value = "邮箱") + private String email; + + @ApiModelProperty(value = "部门Id") + private String deptId; + + @ApiModelProperty(value = "部门名称") + private String deptName; + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/IWgDeptService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/IWgDeptService.java index 1974bf96..63ca9aed 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/IWgDeptService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/IWgDeptService.java @@ -1,8 +1,11 @@ package com.adc.da.slrs.wgDept.service; import com.adc.da.slrs.wgDept.entity.WgDept; +import com.adc.da.slrs.wgDept.entity.WgDeptShow; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 集团参与情况 服务类 @@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService; * @since 2021-11-04 */ public interface IWgDeptService extends IService { - + List getAllDatas(String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/impl/WgDeptServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/impl/WgDeptServiceImpl.java index 71a4fb5a..93c7f802 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/impl/WgDeptServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgDept/service/impl/WgDeptServiceImpl.java @@ -2,10 +2,14 @@ package com.adc.da.slrs.wgDept.service.impl; import com.adc.da.slrs.wgDept.entity.WgDept; import com.adc.da.slrs.wgDept.dao.WgDeptDao; +import com.adc.da.slrs.wgDept.entity.WgDeptShow; import com.adc.da.slrs.wgDept.service.IWgDeptService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 集团参与情况 服务实现类 @@ -17,4 +21,11 @@ import org.springframework.stereotype.Service; @Service public class WgDeptServiceImpl extends ServiceImpl implements IWgDeptService { + @Autowired + private WgDeptDao wgDeptDao; + + @Override + public List getAllDatas(String type) { + return wgDeptDao.researchAllDatas(type); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/dao/WgMeetingInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/dao/WgMeetingInfoDao.java index da9b1711..23d41074 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/dao/WgMeetingInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/dao/WgMeetingInfoDao.java @@ -19,4 +19,6 @@ public interface WgMeetingInfoDao extends BaseMapper { List researchDatas(@Param(value = "data") String data); + List researchAllDatas(@Param(value = "type") String type); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/entity/WgMeetingInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/entity/WgMeetingInfo.java index 4fa0854a..5c6d33cd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/entity/WgMeetingInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/entity/WgMeetingInfo.java @@ -2,16 +2,21 @@ package com.adc.da.slrs.wgMeetingInfo.entity; import com.adc.da.base.entity.BaseEntity; import java.time.LocalDateTime; +import java.util.Date; +import java.util.List; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; /** *

@@ -40,27 +45,33 @@ public class WgMeetingInfo extends BaseEntity { @ApiModelProperty(value = "参会时间") @TableField("meeting_time") - private LocalDateTime meetingTime; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date meetingTime; @ApiModelProperty(value = "会议名称") - @TableField("meet_name") + @TableField("meeting_name") private String meetingName; - @ApiModelProperty(value = "会议人员") - @TableField("meeting_people") - private String meetingPeople; - - @ApiModelProperty(value = "会议人员名称") - @TableField("meeting_people_name") - private String meetingPeopleName; @ApiModelProperty(value = "会议报告") @TableField("meeting_report") private String meetingReport; @ApiModelProperty(value = "会议资料") - @TableField("meeting_datum") - private String meetingDatum; + @TableField("joinfile") + private String joinfile; + + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; + + @ApiModelProperty(value = "人员信息") + @TableField(exist = false) + private List meetingPeople; + + @TableField(exist = false) + private List joinMeetingPeopleInfo; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/IWgMeetingInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/IWgMeetingInfoService.java index 2a2e0155..a4949c95 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/IWgMeetingInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/IWgMeetingInfoService.java @@ -3,6 +3,8 @@ package com.adc.da.slrs.wgMeetingInfo.service; import com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 参会记录及资料 服务类 @@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService; * @since 2021-11-04 */ public interface IWgMeetingInfoService extends IService { - + List getAllDatas(String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/impl/WgMeetingInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/impl/WgMeetingInfoServiceImpl.java index 0cc958d0..fcaa210e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/impl/WgMeetingInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingInfo/service/impl/WgMeetingInfoServiceImpl.java @@ -4,8 +4,11 @@ import com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo; import com.adc.da.slrs.wgMeetingInfo.dao.WgMeetingInfoDao; import com.adc.da.slrs.wgMeetingInfo.service.IWgMeetingInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 参会记录及资料 服务实现类 @@ -16,5 +19,10 @@ import org.springframework.stereotype.Service; */ @Service public class WgMeetingInfoServiceImpl extends ServiceImpl implements IWgMeetingInfoService { - + @Autowired + WgMeetingInfoDao wgMeetingInfoDao; + @Override + public List getAllDatas(String type) { + return wgMeetingInfoDao.researchAllDatas(type); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/controller/WgMeetingUserRelationController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/controller/WgMeetingUserRelationController.java new file mode 100644 index 00000000..933b7dc8 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/controller/WgMeetingUserRelationController.java @@ -0,0 +1,23 @@ +package com.adc.da.slrs.wgMeetingUserRelation.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelation; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RestController; +import com.adc.da.base.web.BaseController; + +/** +*

+ * 前端控制器 + *

+* +* @author super_liu +* @since 2021-11-09 +*/ +@RestController +@Api(description = "|WgMeetingUserRelation|") +@RequestMapping("/wgMeetingUserRelation") +public class WgMeetingUserRelationController extends BaseController { + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/dao/WgMeetingUserRelationDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/dao/WgMeetingUserRelationDao.java new file mode 100644 index 00000000..1558d6e8 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/dao/WgMeetingUserRelationDao.java @@ -0,0 +1,22 @@ +package com.adc.da.slrs.wgMeetingUserRelation.dao; + +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelation; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * Mapper 接口 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +public interface WgMeetingUserRelationDao extends BaseMapper { + List getMeetingPeoples(@Param("meetId") String meetingId); + + List getMeetingAllPeoples(@Param(value = "type") String type); +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelation.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelation.java new file mode 100644 index 00000000..b892dd04 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelation.java @@ -0,0 +1,40 @@ +package com.adc.da.slrs.wgMeetingUserRelation.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="WgMeetingUserRelation对象", description="") +@TableName("wg_meeting_user_relation") +public class WgMeetingUserRelation extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "会议id") + @TableId("meeting_id") + private String meetingId; + + @ApiModelProperty(value = "人员id") + @TableField("user_id") + private String userId; + + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelationShow.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelationShow.java new file mode 100644 index 00000000..d30cf59a --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/entity/WgMeetingUserRelationShow.java @@ -0,0 +1,45 @@ +package com.adc.da.slrs.wgMeetingUserRelation.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.adc.da.slrs.sarInstitution.entity.TsUserVO; +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import java.sql.Timestamp; +import java.util.List; + +/** + *

+ * + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="WgMeetingUserRelation对象", description="") +public class WgMeetingUserRelationShow extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "会议id") + private String meetingId; + + @ApiModelProperty(value = "人员id") + private String userId; + + @ApiModelProperty(value = "人员名称") + private String name; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/IWgMeetingUserRelationService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/IWgMeetingUserRelationService.java new file mode 100644 index 00000000..67461b6f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/IWgMeetingUserRelationService.java @@ -0,0 +1,20 @@ +package com.adc.da.slrs.wgMeetingUserRelation.service; + +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelation; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +public interface IWgMeetingUserRelationService extends IService { + List getMeetingAllPeoples(String type); + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/impl/WgMeetingUserRelationServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/impl/WgMeetingUserRelationServiceImpl.java new file mode 100644 index 00000000..3ff8eaf5 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgMeetingUserRelation/service/impl/WgMeetingUserRelationServiceImpl.java @@ -0,0 +1,31 @@ +package com.adc.da.slrs.wgMeetingUserRelation.service.impl; + +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelation; +import com.adc.da.slrs.wgMeetingUserRelation.dao.WgMeetingUserRelationDao; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow; +import com.adc.da.slrs.wgMeetingUserRelation.service.IWgMeetingUserRelationService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author super_liu + * @since 2021-11-09 + */ +@Service +public class WgMeetingUserRelationServiceImpl extends ServiceImpl implements IWgMeetingUserRelationService { + + @Autowired + private WgMeetingUserRelationDao wgMeetingUserRelationDao; + + @Override + public List getMeetingAllPeoples(String type) { + return wgMeetingUserRelationDao.getMeetingAllPeoples(type); + } +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/dao/WgNetInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/dao/WgNetInfoDao.java index cdcaf3d2..e460dc46 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/dao/WgNetInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/dao/WgNetInfoDao.java @@ -1,6 +1,7 @@ package com.adc.da.slrs.wgNetInfo.dao; import com.adc.da.slrs.wgNetInfo.entity.WgNetInfo; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO; import com.adc.da.slrs.wgWorkGroup.entity.WgWorkGroupShowDTO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; @@ -17,6 +18,8 @@ import java.util.List; */ public interface WgNetInfoDao extends BaseMapper { - List researchDatas(@Param(value = "data") String data); + List researchDatas(@Param(value = "data") String data); + + List researchAllDatas(@Param(value = "type") String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfo.java index f36b8e5d..12b1edec 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfo.java @@ -40,5 +40,9 @@ public class WgNetInfo extends BaseEntity { @TableField("net_id") private String netId; + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfoDTO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfoDTO.java new file mode 100644 index 00000000..cdf47254 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/entity/WgNetInfoDTO.java @@ -0,0 +1,64 @@ +package com.adc.da.slrs.wgNetInfo.entity; + +import com.adc.da.base.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 工作组秘书联系方式 + *

+ * + * @author super_liu + * @since 2021-11-04 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@ApiModel(value="WgNetInfo对象", description="工作组秘书联系方式") +@TableName("wg_net_info") +public class WgNetInfoDTO extends BaseEntity { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "id") + @TableId(value = "id",type = IdType.UUID) + private String id; + + @ApiModelProperty(value = "工作组id") + @TableField("wg_id") + private String wgId; + + @ApiModelProperty(value = "人员id") + @TableField("net_id") + private String netId; + + + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; + + @ApiModelProperty(value = "中文名") + private String name; + + @ApiModelProperty(value = "单位") + private String unit; + + @ApiModelProperty(value = "单位名称") + private String unitName; + + @ApiModelProperty(value = "电话") + private String phone; + + @ApiModelProperty(value = "邮箱") + private String email; + + +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/IWgNetInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/IWgNetInfoService.java index 37d60274..03ed7b5f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/IWgNetInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/IWgNetInfoService.java @@ -1,8 +1,11 @@ package com.adc.da.slrs.wgNetInfo.service; import com.adc.da.slrs.wgNetInfo.entity.WgNetInfo; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 工作组秘书联系方式 服务类 @@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService; * @since 2021-11-04 */ public interface IWgNetInfoService extends IService { - + List getAllDatas(String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/impl/WgNetInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/impl/WgNetInfoServiceImpl.java index 2ae5d889..9ebbbdbc 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/impl/WgNetInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgNetInfo/service/impl/WgNetInfoServiceImpl.java @@ -2,10 +2,14 @@ package com.adc.da.slrs.wgNetInfo.service.impl; import com.adc.da.slrs.wgNetInfo.entity.WgNetInfo; import com.adc.da.slrs.wgNetInfo.dao.WgNetInfoDao; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO; import com.adc.da.slrs.wgNetInfo.service.IWgNetInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 工作组秘书联系方式 服务实现类 @@ -16,5 +20,11 @@ import org.springframework.stereotype.Service; */ @Service public class WgNetInfoServiceImpl extends ServiceImpl implements IWgNetInfoService { + @Autowired + private WgNetInfoDao wgNetInfoDao; + @Override + public List getAllDatas(String type) { + return wgNetInfoDao.researchAllDatas(type); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/dao/WgPayInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/dao/WgPayInfoDao.java index c97e3810..90ffa2ad 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/dao/WgPayInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/dao/WgPayInfoDao.java @@ -17,4 +17,6 @@ import java.util.List; */ public interface WgPayInfoDao extends BaseMapper { List researchDatas(@Param(value = "data") String data); + + List researchAllDatas(@Param(value = "type") String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/entity/WgPayInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/entity/WgPayInfo.java index 81876bc2..01a25d53 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/entity/WgPayInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/entity/WgPayInfo.java @@ -59,12 +59,15 @@ public class WgPayInfo extends BaseEntity { private String payWay; @ApiModelProperty(value = "支付资料") - @TableField("pay_datum") - private String payDatum; + @TableField("joinfile") + private String joinfile; @ApiModelProperty(value = "费用列支") @TableField("pay_info") private String payInfo; + @ApiModelProperty(value = "前端id") + @TableField("join_id") + private String joinId; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/IWgPayInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/IWgPayInfoService.java index ff7d8468..1e7458d6 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/IWgPayInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/IWgPayInfoService.java @@ -3,6 +3,8 @@ package com.adc.da.slrs.wgPayInfo.service; import com.adc.da.slrs.wgPayInfo.entity.WgPayInfo; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 支付信息 服务类 @@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IWgPayInfoService extends IService { + List getAllDatas(String type); + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/impl/WgPayInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/impl/WgPayInfoServiceImpl.java index f348bba5..98ae8d74 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/impl/WgPayInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgPayInfo/service/impl/WgPayInfoServiceImpl.java @@ -4,8 +4,11 @@ import com.adc.da.slrs.wgPayInfo.entity.WgPayInfo; import com.adc.da.slrs.wgPayInfo.dao.WgPayInfoDao; import com.adc.da.slrs.wgPayInfo.service.IWgPayInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 支付信息 服务实现类 @@ -17,4 +20,11 @@ import org.springframework.stereotype.Service; @Service public class WgPayInfoServiceImpl extends ServiceImpl implements IWgPayInfoService { + @Autowired + private WgPayInfoDao wgPayInfoDao; + + @Override + public List getAllDatas(String type) { + return wgPayInfoDao.researchAllDatas(type); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/dao/WgStandorpolicyInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/dao/WgStandorpolicyInfoDao.java index 16e7d3dd..5dc28245 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/dao/WgStandorpolicyInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/dao/WgStandorpolicyInfoDao.java @@ -17,6 +17,11 @@ import java.util.List; */ public interface WgStandorpolicyInfoDao extends BaseMapper { - List researchDatas(@Param(value = "data") String data); + //仅用来政策或者标准新增验重不是查全部的接口 + List researchDatas(); + + List researchAllDatas(@Param(value = "type")String type); + + List researchAllDatasPartTwo(@Param(value = "type")String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/entity/WgStandorpolicyInfo.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/entity/WgStandorpolicyInfo.java index cc9ffde9..1190b830 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/entity/WgStandorpolicyInfo.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/entity/WgStandorpolicyInfo.java @@ -2,6 +2,7 @@ package com.adc.da.slrs.wgStandorpolicyInfo.entity; import com.adc.da.base.entity.BaseEntity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; @@ -32,31 +33,50 @@ public class WgStandorpolicyInfo extends BaseEntity { private String id; @ApiModelProperty(value = "工作组id") + @TableField("wg_id") private String wgId; + @ApiModelProperty(value = "关联标准政策id") + @TableField("stand_id") + private String standId; + @ApiModelProperty(value = "政策/标准 类别") + @TableField(exist = false) private String categary; @ApiModelProperty(value = "政策/标准 编号") + @TableField(exist = false) private String number; @ApiModelProperty(value = "政策/标准 年份") + @TableField(exist = false) private String year; @ApiModelProperty(value = "政策标准 名称") + @TableField(exist = false) private String name; @ApiModelProperty(value = "政策/标准 英文名称") + @TableField(exist = false) private String usname; @ApiModelProperty(value = "文本状态") + @TableField(exist = false) private String status; @ApiModelProperty(value = "参与制定情况") + @TableField(exist = false) private String joinDevelop; @ApiModelProperty(value = "相关材料") + @TableField(exist = false) private String netDatum; + @ApiModelProperty(value = "相关材料") + @TableField(exist = false) + private String dataType; + + + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/IWgStandorpolicyInfoService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/IWgStandorpolicyInfoService.java index e03fb8a5..3d029fb9 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/IWgStandorpolicyInfoService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/IWgStandorpolicyInfoService.java @@ -3,6 +3,8 @@ package com.adc.da.slrs.wgStandorpolicyInfo.service; import com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 标准/政策 -信息 服务类 @@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IWgStandorpolicyInfoService extends IService { + List getAllDatas(String type); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/impl/WgStandorpolicyInfoServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/impl/WgStandorpolicyInfoServiceImpl.java index 3ad3244e..26c12980 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/impl/WgStandorpolicyInfoServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgStandorpolicyInfo/service/impl/WgStandorpolicyInfoServiceImpl.java @@ -4,8 +4,11 @@ import com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo; import com.adc.da.slrs.wgStandorpolicyInfo.dao.WgStandorpolicyInfoDao; import com.adc.da.slrs.wgStandorpolicyInfo.service.IWgStandorpolicyInfoService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 标准/政策 -信息 服务实现类 @@ -17,4 +20,18 @@ import org.springframework.stereotype.Service; @Service public class WgStandorpolicyInfoServiceImpl extends ServiceImpl implements IWgStandorpolicyInfoService { + @Autowired + private WgStandorpolicyInfoDao wgStandorpolicyInfoDao; + + @Override + public List getAllDatas(String type) { + List wgStandorpolicyInfos=wgStandorpolicyInfoDao.researchAllDatas(type); + if ("0".equals(type)) { + List wgStandorpolicyInfos1 = wgStandorpolicyInfoDao.researchAllDatasPartTwo(type); + wgStandorpolicyInfos1.forEach(wgStandorpolicyInfo -> wgStandorpolicyInfo.setDataType("3")); + wgStandorpolicyInfos.addAll(wgStandorpolicyInfos1); + } + wgStandorpolicyInfos.removeIf(wgStandorpolicyInfo -> null==wgStandorpolicyInfo.getName()); + return wgStandorpolicyInfos; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/controller/WgWorkGroupController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/controller/WgWorkGroupController.java index 34ce0415..e838fcd2 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/controller/WgWorkGroupController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/controller/WgWorkGroupController.java @@ -38,21 +38,27 @@ public class WgWorkGroupController extends BaseController { return Result.success(wgWorkGroupService.saveDatas(wgWorkGroup)); } + @ApiOperation("添加标准/政策节点数据") + @PostMapping("/addStand") + public ResponseMessage addResourceData(@RequestBody WgWorkGroupDTO wgWorkGroup){ + return Result.success(wgWorkGroupService.saveStandDatas(wgWorkGroup)); + } + @ApiOperation("搜索工作组节点数据") @GetMapping("/researchData") public ResponseMessage researchData(@RequestParam(value = "type") String type){ - return Result.success(wgWorkGroupService.researchData(type)); + return Result.success(wgWorkGroupService.researchDataUp(type)); } @ApiOperation("删除工作组节点数据") - @DeleteMapping("/deleteData") - public ResponseMessage deleteData(@Param(value = "id") String id){ - return wgWorkGroupService.deleteData(id); + @PostMapping("/deleteData") + public ResponseMessage deleteData(@RequestParam(value = "id") String id, @RequestParam(value = "meetingId",required=false)List meetingId){ + return wgWorkGroupService.deleteData(id,meetingId); } @ApiOperation("修改工作组节点数据") - @DeleteMapping("/updateData") + @PostMapping("/updateData") public ResponseMessage updateData(@RequestBody WgWorkGroupShowDTO wgWorkGroupShowDTO){ return wgWorkGroupService.updateData(wgWorkGroupShowDTO); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/dao/WgWorkGroupDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/dao/WgWorkGroupDao.java index 71a92b11..12341a91 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/dao/WgWorkGroupDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/dao/WgWorkGroupDao.java @@ -22,6 +22,8 @@ public interface WgWorkGroupDao extends BaseMapper { List researchDownLevel(@Param(value = "data") String data); + List researchAllData(@Param(value = "type")String type); + List researchDownCheck(@Param(value = "data") String data,@Param(value = "status")String status); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroup.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroup.java index 113ce616..b5f28511 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroup.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroup.java @@ -2,16 +2,19 @@ package com.adc.da.slrs.wgWorkGroup.entity; import com.adc.da.base.entity.BaseEntity; import java.time.LocalDateTime; +import java.util.Date; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; /** *

@@ -25,38 +28,40 @@ import lombok.experimental.Accessors; @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @ApiModel(value="WgWorkGroup对象", description="工作组主表") -@TableName("wgWorkGroup") +@TableName("wg_work_group") public class WgWorkGroup extends BaseEntity { private static final long serialVersionUID = 1L; - @ApiModelProperty(value = "工作组id") + @ApiModelProperty(value = "id") @TableId(value = "id",type = IdType.UUID) private String id; @ApiModelProperty(value = "父级id") - @TableId("pid") + @TableField("pid") private String pid; @ApiModelProperty(value = "编号") - @TableId("number") + @TableField("number") private String number; @ApiModelProperty(value = "名称") - @TableId("name") + @TableField("name") private String name; @ApiModelProperty(value = "性质(0:标委会,1:分标委,2:工作组,3:政策)") - @TableId("nature") + @TableField("nature") private String nature; @ApiModelProperty(value = "状态(0:流程中,1:流程已通过)") - @TableId("status") + @TableField("status") private String status; @ApiModelProperty(value = "换届时间") @TableField("change_time") - private LocalDateTime changeTime; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date changeTime; @ApiModelProperty(value = "标准化工作领域") @TableField("stander_area") @@ -74,5 +79,5 @@ public class WgWorkGroup extends BaseEntity { @TableField("level") private String level; - + //可能缺少性质,状态两个字段 } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupDTO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupDTO.java index 58badaf3..7fbf30bd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupDTO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupDTO.java @@ -10,13 +10,16 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; +import java.util.Date; import java.util.List; /** @@ -54,7 +57,9 @@ public class WgWorkGroupDTO extends BaseEntity { private String status; @ApiModelProperty(value = "换届时间") - private LocalDateTime changeTime; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date changeTime; @ApiModelProperty(value = "标准化工作领域") private String standerArea; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupShowDTO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupShowDTO.java index b66eea02..5e736116 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupShowDTO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/entity/WgWorkGroupShowDTO.java @@ -2,15 +2,20 @@ package com.adc.da.slrs.wgWorkGroup.entity; import com.adc.da.base.entity.BaseEntity; import com.adc.da.slrs.wgDept.entity.WgDept; +import com.adc.da.slrs.wgDept.entity.WgDeptShow; import com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo; import com.adc.da.slrs.wgNetInfo.entity.WgNetInfo; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO; import com.adc.da.slrs.wgPayInfo.entity.WgPayInfo; import com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import jdk.nashorn.internal.objects.annotations.Constructor; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; import java.util.Date; @@ -51,6 +56,8 @@ public class WgWorkGroupShowDTO extends BaseEntity { private String status; @ApiModelProperty(value = "换届时间") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date changeTime; @ApiModelProperty(value = "标准化工作领域") @@ -71,10 +78,10 @@ public class WgWorkGroupShowDTO extends BaseEntity { List wgStandorpolicyInfos; //集团参与情况 - List wgDepts; + List wgDepts; //秘书联系方式 - List wgNetInfos; + List wgNetInfos; //参会记录及资料 List wgMeetingInfos; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/IWgWorkGroupService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/IWgWorkGroupService.java index 2ba8030e..29b3096b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/IWgWorkGroupService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/IWgWorkGroupService.java @@ -20,9 +20,14 @@ public interface IWgWorkGroupService extends IService { String saveDatas(WgWorkGroupDTO wgWorkGroupDTO); + String saveStandDatas(WgWorkGroupDTO wgWorkGroupDTO); + WgWorkGroupShowDTO researchData(String type); - ResponseMessage deleteData(String id); + //优化查询接口 速度 + WgWorkGroupShowDTO researchDataUp(String type); + + ResponseMessage deleteData(String id,List meetingId); ResponseMessage updateData(WgWorkGroupShowDTO wgWorkGroupShowDTO); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/impl/WgWorkGroupServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/impl/WgWorkGroupServiceImpl.java index c5087f22..04e3946f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/impl/WgWorkGroupServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/wgWorkGroup/service/impl/WgWorkGroupServiceImpl.java @@ -2,10 +2,21 @@ package com.adc.da.slrs.wgWorkGroup.service.impl; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.slrs.wgDept.entity.WgDept; +import com.adc.da.slrs.wgDept.entity.WgDeptShow; import com.adc.da.slrs.wgDept.service.IWgDeptService; +import com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo; import com.adc.da.slrs.wgMeetingInfo.service.IWgMeetingInfoService; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelation; +import com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow; +import com.adc.da.slrs.wgMeetingUserRelation.service.IWgMeetingUserRelationService; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfo; +import com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO; import com.adc.da.slrs.wgNetInfo.service.IWgNetInfoService; +import com.adc.da.slrs.wgPayInfo.entity.WgPayInfo; import com.adc.da.slrs.wgPayInfo.service.IWgPayInfoService; +import com.adc.da.slrs.wgStandorpolicyInfo.dao.WgStandorpolicyInfoDao; +import com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo; import com.adc.da.slrs.wgStandorpolicyInfo.service.IWgStandorpolicyInfoService; import com.adc.da.slrs.wgWorkGroup.entity.WgWorkGroup; import com.adc.da.slrs.wgWorkGroup.dao.WgWorkGroupDao; @@ -18,10 +29,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** *

@@ -48,54 +56,253 @@ public class WgWorkGroupServiceImpl extends ServiceImpl { + wgDept.setWgId(wgWorkGroup.getId()); + }); + flag = wgDeptService.saveBatch(wgWorkGroupDTO.getWgDepts()); + } //存储会议信息 - boolean flag2=wgMeetingInfoService.saveBatch(wgWorkGroupDTO.getWgMeetingInfos()); + if (null != wgWorkGroupDTO.getWgMeetingInfos()) { + List wgMeetingUserRelations = new ArrayList<>(); + wgWorkGroupDTO.getWgMeetingInfos().forEach(wgMeetingInfo -> { + wgMeetingInfo.setId(String.valueOf(UUID.randomUUID())); + wgMeetingInfo.setWgId(wgWorkGroup.getId()); + wgMeetingInfo.getMeetingPeople().forEach(s -> { + WgMeetingUserRelation wgMeetingUserRelation = new WgMeetingUserRelation(); + wgMeetingUserRelation.setMeetingId(wgMeetingInfo.getId()); + wgMeetingUserRelation.setUserId(s); + wgMeetingUserRelations.add(wgMeetingUserRelation); + }); + }); + wgMeetingUserRelationService.saveBatch(wgMeetingUserRelations); + flag = wgMeetingInfoService.saveBatch(wgWorkGroupDTO.getWgMeetingInfos()); + } //存储秘书联系方式信息 - boolean flag3=wgNetInfoService.saveBatch(wgWorkGroupDTO.getWgNetInfos()); + if (null != wgWorkGroupDTO.getWgNetInfos()) { + wgWorkGroupDTO.getWgNetInfos().forEach(wgNetInfo -> { + wgNetInfo.setWgId(wgWorkGroup.getId()); + }); + flag = wgNetInfoService.saveBatch(wgWorkGroupDTO.getWgNetInfos()); + } //支付信息 - boolean flag4=wgPayInfoService.saveBatch(wgWorkGroupDTO.getWgPayInfos()); + if (null != wgWorkGroupDTO.getWgPayInfos()) { + wgWorkGroupDTO.getWgPayInfos().forEach(wgPayInfo -> { + wgPayInfo.setWgId(wgWorkGroup.getId()); + }); + flag = wgPayInfoService.saveBatch(wgWorkGroupDTO.getWgPayInfos()); + } //标准政策信息 - boolean flag5=wgStandorpolicyInfoService.saveBatch(wgWorkGroupDTO.getWgStandorpolicyInfos()); + if (null != wgWorkGroupDTO.getWgStandorpolicyInfos()) { + wgWorkGroupDTO.getWgStandorpolicyInfos().forEach(wgStandorpolicyInfo -> { + wgStandorpolicyInfo.setWgId(wgWorkGroup.getId()); + }); + flag = wgStandorpolicyInfoService.saveBatch(wgWorkGroupDTO.getWgStandorpolicyInfos()); + } //先存储主数据 - boolean flag6=wgWorkGroupService.save(wgWorkGroup); - if (flag1 && flag2 && flag3 && flag4 && flag5 && flag6 ) { + if (flag) { return "添加成功"; - }else { + } else { return "数据错误,添加失败"; } } + @Override + public String saveStandDatas(WgWorkGroupDTO wgWorkGroupDTO) { + List wgStandorpolicyInfos= wgStandorpolicyInfoDao.researchDatas(); + Map map=new HashMap<>(); + wgStandorpolicyInfos.forEach(wgStandorpolicyInfo -> { + map.put(wgStandorpolicyInfo.getStandId()+"-"+wgStandorpolicyInfo.getWgId(),wgStandorpolicyInfo); + }); + if (null!=wgWorkGroupDTO.getWgStandorpolicyInfos() && wgWorkGroupDTO.getWgStandorpolicyInfos().size()>0){ + List wgWorkGroups=new ArrayList<>(); + wgWorkGroupDTO.getWgStandorpolicyInfos().forEach(wgStandorpolicyInfo -> { + WgWorkGroup wgWorkGroup=new WgWorkGroup(); + BeanUtils.copyProperties(wgWorkGroupDTO,wgWorkGroup); + wgWorkGroup.setId(String.valueOf(UUID.randomUUID())); + wgStandorpolicyInfo.setWgId(wgWorkGroup.getId()); + if (null==map.get(wgStandorpolicyInfo.getStandId()+"-"+wgWorkGroup.getPid())) { + wgWorkGroups.add(wgWorkGroup); + } + }); + if (wgWorkGroups.size()==0){ + return "政策已存在,请勿重复添加"; + } + boolean flag=wgWorkGroupService.saveOrUpdateBatch(wgWorkGroups); + boolean flag1=wgStandorpolicyInfoService.saveOrUpdateBatch(wgWorkGroupDTO.getWgStandorpolicyInfos()); + if (flag && flag1){ + return "添加成功"; + }else { + return "添加失败"; + } + }else { + return "数据有误,请检查数据"; + } + } + @Override public WgWorkGroupShowDTO researchData(String type) { //构建最初的节点 用来向下搜索 - WgWorkGroupShowDTO wgWorkGroupShowDTO=new WgWorkGroupShowDTO(); + WgWorkGroupShowDTO wgWorkGroupShowDTO = new WgWorkGroupShowDTO(); wgWorkGroupShowDTO.setId("root"); wgWorkGroupShowDTO.setTypes(type); - List wgWorkGroupShowDTOS=new ArrayList<>(); + List wgWorkGroupShowDTOS = new ArrayList<>(); wgWorkGroupShowDTOS.add(wgWorkGroupShowDTO); - return wgWorkGroupDao.researchDatas(wgWorkGroupShowDTOS,type); + return wgWorkGroupDao.researchDatas(wgWorkGroupShowDTOS, type); } @Override - public ResponseMessage deleteData(String id) { - List wgWorkGroupShowDTOS=wgWorkGroupDao.researchDownCheck(id,"1"); - List wgWorkGroups=wgWorkGroupDao.researchDownLevel(id); - if (null!=wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size()>0 && null!= wgWorkGroups && wgWorkGroups.size()>0){ + public WgWorkGroupShowDTO researchDataUp(String type) { + List wgWorkGroupShowDTOS = wgWorkGroupDao.researchAllData(type); + List wgPayInfos = wgPayInfoService.getAllDatas(type); + List wgStandorpolicyInfos = wgStandorpolicyInfoService.getAllDatas(type); + List wgDeptShows = wgDeptService.getAllDatas(type); + List wgNetInfoDTOS = wgNetInfoService.getAllDatas(type); + List wgMeetingInfos = wgMeetingInfoService.getAllDatas(type); + List wgMeetingUserRelations = wgMeetingUserRelationService.getMeetingAllPeoples(type); + //处理数据 + //part1 会议数据组装 提速第一步建造数据的map集合 + Map wgWorkGroupMap=new HashMap<>(); + wgWorkGroupShowDTOS.forEach(wgWorkGroupShowDTO -> { + wgWorkGroupMap.put(wgWorkGroupShowDTO.getId(),wgWorkGroupShowDTO); + }); + + Map meetMap = new HashMap<>(); + if (null!=wgMeetingInfos && wgMeetingInfos.size()>0) { + wgMeetingInfos.forEach(wgMeetingInfo -> { + meetMap.put(wgMeetingInfo.getId(), wgMeetingInfo); + }); + } + //组装会议数据 + if (null!=wgMeetingUserRelations && wgMeetingUserRelations.size()>0) { + wgMeetingUserRelations.forEach(wgMeetingUserRelationShow -> { + if (null!=meetMap.get(wgMeetingUserRelationShow.getMeetingId()).getJoinMeetingPeopleInfo()) { + meetMap.get(wgMeetingUserRelationShow.getMeetingId()).getJoinMeetingPeopleInfo().add(wgMeetingUserRelationShow); + }else { + List wgMeetingUserRelationShows=new ArrayList<>(); + wgMeetingUserRelationShows.add(wgMeetingUserRelationShow); + meetMap.get(wgMeetingUserRelationShow.getMeetingId()).setJoinMeetingPeopleInfo(wgMeetingUserRelationShows); + } + }); + } + //组装总数据 + if (null!=wgDeptShows && wgDeptShows.size()>0) { + wgDeptShows.forEach(wgDeptShow -> { + if (null!=wgWorkGroupMap.get(wgDeptShow.getWgId()).getWgDepts()) { + wgWorkGroupMap.get(wgDeptShow.getWgId()).getWgDepts().add(wgDeptShow); + }else { + List wgDepts = new ArrayList<>(); + wgDepts.add(wgDeptShow); + wgWorkGroupMap.get(wgDeptShow.getWgId()).setWgDepts(wgDepts); + } + }); + } + if (null!=wgMeetingInfos && wgMeetingInfos.size()>0) { + wgMeetingInfos.forEach(wgMeetingInfo -> { + if (null!=wgWorkGroupMap.get(wgMeetingInfo.getWgId()).getWgMeetingInfos()) { + wgWorkGroupMap.get(wgMeetingInfo.getWgId()).getWgMeetingInfos().add(meetMap.get(wgMeetingInfo.getId())); + }else { + List wgMeetingInfos1 = new ArrayList<>(); + wgMeetingInfos1.add(wgMeetingInfo); + wgWorkGroupMap.get(wgMeetingInfo.getWgId()).setWgMeetingInfos(wgMeetingInfos1); + } + }); + } + if (null!=wgNetInfoDTOS && wgNetInfoDTOS.size()>0) { + wgNetInfoDTOS.forEach(wgNetInfoDTO -> { + if (null!=wgWorkGroupMap.get(wgNetInfoDTO.getWgId()).getWgNetInfos()) { + wgWorkGroupMap.get(wgNetInfoDTO.getWgId()).getWgNetInfos().add(wgNetInfoDTO); + }else { + List wgNetInfos=new ArrayList<>(); + wgNetInfos.add(wgNetInfoDTO); + wgWorkGroupMap.get(wgNetInfoDTO.getWgId()).setWgNetInfos(wgNetInfos); + } + }); + } + if (null!=wgPayInfos && wgPayInfos.size()>0) { + wgPayInfos.forEach(wgPayInfo -> { + if (null!=wgWorkGroupMap.get(wgPayInfo.getWgId()).getWgPayInfos()) { + wgWorkGroupMap.get(wgPayInfo.getWgId()).getWgPayInfos().add(wgPayInfo); + }else { + List wgPayInfos1=new ArrayList<>(); + wgPayInfos1.add(wgPayInfo); + wgWorkGroupMap.get(wgPayInfo.getWgId()).setWgPayInfos(wgPayInfos1); + } + }); + } + //处理标准政策数据 + if (null!=wgStandorpolicyInfos && wgStandorpolicyInfos.size()>0) { + wgStandorpolicyInfos.forEach(wgStandorpolicyInfo -> { + if (null!=wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).getWgStandorpolicyInfos()) { + wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).setName(wgStandorpolicyInfo.getName()); + wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).getWgStandorpolicyInfos().add(wgStandorpolicyInfo); + }else { + List wgStandorpolicyInfos1=new ArrayList<>(); + wgStandorpolicyInfos1.add(wgStandorpolicyInfo); + wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).setName(wgStandorpolicyInfo.getName()); + wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).setWgStandorpolicyInfos(wgStandorpolicyInfos1); + } + }); + } + //数据初步组装完成 开始进行树结构排序 + List nums=new ArrayList<>(); + Map> map=new HashMap<>(); + wgWorkGroupShowDTOS.forEach(wgWorkGroupShowDTO -> { + if (null!=map.get(Integer.valueOf(wgWorkGroupShowDTO.getLevel()))){ + map.get(Integer.valueOf(wgWorkGroupShowDTO.getLevel())).add(wgWorkGroupShowDTO); + }else { + List middle = new ArrayList<>(); + middle.add(wgWorkGroupShowDTO); + nums.add(Integer.valueOf(wgWorkGroupShowDTO.getLevel())); + map.put(Integer.valueOf(wgWorkGroupShowDTO.getLevel()),middle); + } + }); + //组装数据 + for (int i=nums.size()-1;i>0;i--){ + int finalI = i; + map.get(i-1).forEach(wgWorkGroupShowDTO -> { + map.get(finalI).forEach(wgWorkGroupShowDTO1 -> { + if (wgWorkGroupShowDTO.getId().equals(wgWorkGroupShowDTO1.getPid())){ + if (null!=wgWorkGroupShowDTO.getChildren()) { + wgWorkGroupShowDTO.getChildren().add(wgWorkGroupShowDTO1); + }else { + List children = new ArrayList<>(); + children.add(wgWorkGroupShowDTO1); + wgWorkGroupShowDTO.setChildren(children); + } + } + }); + }); + } + return map.get(0).get(0); + } + + @Override + public ResponseMessage deleteData(String id, List ids) { + List wgWorkGroupShowDTOS = wgWorkGroupDao.researchDownCheck(id, "1"); + List wgWorkGroups = wgWorkGroupDao.researchDownLevel(id); + if (null != wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size() > 0 && null != wgWorkGroups && wgWorkGroups.size() > 0) { return Result.error("该工作组下存在工作组且处在流程中,无法删除"); - } else if (null!=wgWorkGroups && wgWorkGroups.size()>0) { + } else if (null != wgWorkGroups && wgWorkGroups.size() > 0) { return Result.error("该工作组下存在工作组,无法删除"); - } else if (null!=wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size()>0){ + } else if (null != wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size() > 0) { return Result.error("该工作组处在流程中,无法删除"); - }else { + } else { wgWorkGroupService.removeById(id); Map columnMap = new HashMap<>(); columnMap.put("wg_id", id); @@ -104,34 +311,76 @@ public class WgWorkGroupServiceImpl extends ServiceImpl 0) { + wgMeetingUserRelationService.removeByIds(ids); + } return Result.success("删除成功"); } } @Override public ResponseMessage updateData(WgWorkGroupShowDTO wgWorkGroupShowDTO) { - List wgWorkGroupShowDTOS=wgWorkGroupDao.researchDownCheck(wgWorkGroupShowDTO.getId(),"1"); - if (null!=wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size()>0){ + List wgWorkGroupShowDTOS = wgWorkGroupDao.researchDownCheck(wgWorkGroupShowDTO.getId(), "1"); + if (null != wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size() > 0) { return Result.error("工作组处在流程中,无法修改"); - }else { - WgWorkGroup wgWorkGroup=new WgWorkGroup(); - BeanUtils.copyProperties(wgWorkGroupShowDTO,wgWorkGroup); - boolean flag1=wgWorkGroupService.updateById(wgWorkGroup); - boolean flag2=wgDeptService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgDepts()); - boolean flag3=wgMeetingInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgMeetingInfos()); - boolean flag4=wgNetInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgNetInfos()); - boolean flag5=wgPayInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgPayInfos()); - boolean flag6=wgStandorpolicyInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgStandorpolicyInfos()); - if (flag1 && flag2 && flag3 && flag4 && flag5 && flag6){ + } else { + WgWorkGroup wgWorkGroup = new WgWorkGroup(); + BeanUtils.copyProperties(wgWorkGroupShowDTO, wgWorkGroup); + boolean flag = false; + flag = wgWorkGroupService.saveOrUpdate(wgWorkGroup); + if (null != wgWorkGroupShowDTO.getWgDepts() && wgWorkGroupShowDTO.getWgDepts().size() > 0) { + List wgDepts=new ArrayList<>(); + wgWorkGroupShowDTO.getWgDepts().forEach(wgDeptShow -> { + WgDept wgDept=new WgDept(); + BeanUtils.copyProperties(wgDeptShow,wgDept); + wgDepts.add(wgDept); + }); + + flag = wgDeptService.saveOrUpdateBatch(wgDepts); + } + if (null != wgWorkGroupShowDTO.getWgMeetingInfos() && wgWorkGroupShowDTO.getWgMeetingInfos().size() > 0) { + List removeMeet = new ArrayList<>(); + List wgMeetingUserRelations = new ArrayList<>(); + wgWorkGroupShowDTO.getWgMeetingInfos().forEach(wgMeetingInfo -> { + wgMeetingInfo.getMeetingPeople().forEach(s -> { + WgMeetingUserRelation wgMeetingUserRelation = new WgMeetingUserRelation(); + wgMeetingUserRelation.setUserId(s); + wgMeetingUserRelation.setMeetingId(wgMeetingInfo.getId()); + wgMeetingUserRelations.add(wgMeetingUserRelation); + }); + removeMeet.add(wgMeetingInfo.getId()); + }); + if (!removeMeet.isEmpty()) { + wgMeetingUserRelationService.removeByIds(removeMeet); + wgMeetingUserRelationService.saveBatch(wgMeetingUserRelations); + } + + + flag = wgMeetingInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgMeetingInfos()); + } + if (null != wgWorkGroupShowDTO.getWgNetInfos() && wgWorkGroupShowDTO.getWgNetInfos().size() > 0) { + List wgNetInfos = new ArrayList<>(); + wgWorkGroupShowDTO.getWgNetInfos().forEach(wgNetInfoDTO -> { + WgNetInfo wgNetInfo = new WgNetInfo(); + BeanUtils.copyProperties(wgNetInfoDTO, wgNetInfo); + wgNetInfos.add(wgNetInfo); + }); + flag = wgNetInfoService.saveOrUpdateBatch(wgNetInfos); + } + if (null != wgWorkGroupShowDTO.getWgPayInfos() && wgWorkGroupShowDTO.getWgPayInfos().size() > 0) { + flag = wgPayInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgPayInfos()); + } + if (null != wgWorkGroupShowDTO.getWgStandorpolicyInfos() && wgWorkGroupShowDTO.getWgStandorpolicyInfos().size() > 0) { + flag = wgStandorpolicyInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgStandorpolicyInfos()); + } + + if (flag) { return Result.success("更新成功"); - }else { + } else { return Result.error("无法更新"); } } } - - - } diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/BussStandExportUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/BussStandExportUtil.java index 6002aa1f..d64d8b74 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/BussStandExportUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/BussStandExportUtil.java @@ -91,19 +91,19 @@ public class BussStandExportUtil { Map attrValueMap = sarStandardsInfoEO.getAttrInfoMap(); switch (name) { case "企标类别": - value = sarStandardsInfoEO.getStandSortShow(); + value = verifyBean(sarStandardsInfoEO.getStandSortShow()); break; case "企标编号": - value = sarStandardsInfoEO.getStandCode(); + value = verifyBean(sarStandardsInfoEO.getStandCode()); break; case "中文名称": - value = sarStandardsInfoEO.getStandName(); + value = verifyBean(sarStandardsInfoEO.getStandName()); break; case "英文名称": - value = sarStandardsInfoEO.getStandEnName(); + value = verifyBean(sarStandardsInfoEO.getStandEnName()); break; case "文本状态": - value = sarStandardsInfoEO.getStandStatusShow(); + value = verifyBean(sarStandardsInfoEO.getStandStatusShow()); break; case "标准实施日期": String putTime=""; @@ -116,10 +116,10 @@ public class BussStandExportUtil { value = putTime; break; case "代替企标编号": - value = sarStandardsInfoEO.getReplaceStandNum(); + value = verifyBean(sarStandardsInfoEO.getReplaceStandNum()); break; case "被代替企标编号": - value = sarStandardsInfoEO.getReplacedStandNum(); + value = verifyBean(sarStandardsInfoEO.getReplacedStandNum()); break; case "发布日期": String issueTime=""; @@ -149,4 +149,14 @@ public class BussStandExportUtil { return value; } + private static String verifyBean(String value){ + String val = ""; + if(StringUtils.isNotBlank(value)){ + val =value; + }else { + val = ""; + } + return val; + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java index 27aee726..e7c63cfa 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/LawsStandExportUtil.java @@ -91,19 +91,19 @@ public class LawsStandExportUtil { Map attrValueMap = sarStandardsInfoEO.getAttrInfoMap(); switch (name) { case "政策分类": - value = sarStandardsInfoEO.getLawsType(); + value = verifyBean(sarStandardsInfoEO.getLawsType()); break; case "政策编号": - value = sarStandardsInfoEO.getLawsNumber(); + value = verifyBean(sarStandardsInfoEO.getLawsNumber()); break; case "中文名称": - value = sarStandardsInfoEO.getLawsName(); + value = verifyBean(sarStandardsInfoEO.getLawsName()); break; case "英文名称": - value = sarStandardsInfoEO.getLawsEnName(); + value = verifyBean(sarStandardsInfoEO.getLawsEnName()); break; case "政策文号": - value = sarStandardsInfoEO.getLawsNo(); + value = verifyBean(sarStandardsInfoEO.getLawsNo()); break; case "发文日期": String issueTime=""; @@ -116,7 +116,7 @@ public class LawsStandExportUtil { value = issueTime; break; case "发文单位": - value = sarStandardsInfoEO.getIssueCompany(); + value = verifyBean(sarStandardsInfoEO.getIssueCompany()); break; case "征集意见周期-起始时间": String commentCycleStart=""; @@ -137,31 +137,31 @@ public class LawsStandExportUtil { value = commentCycleEnd; break; case "文本状态": - value = sarStandardsInfoEO.getStandStatusShow(); + value = verifyBean(sarStandardsInfoEO.getStandStatusShow()); break; case "适用区域": - value = sarStandardsInfoEO.getLawsSyqy(); + value = verifyBean(sarStandardsInfoEO.getLawsSyqy()); break; case "适用车型": - value = sarStandardsInfoEO.getLawsSycx(); + value = verifyBean(sarStandardsInfoEO.getLawsSycx()); break; case "是否纳入认证清单": value = sarStandardsInfoEO.getIsRelateAccess() != null ? (sarStandardsInfoEO.getIsRelateAccess().equals("1")?"是":"否"): ""; break; case "年度": - value = sarStandardsInfoEO.getLawsYear(); + value = verifyBean(sarStandardsInfoEO.getLawsYear()); break; case "福田转发通知文号": - value = sarStandardsInfoEO.getLawsNotisyncNum(); + value = verifyBean(sarStandardsInfoEO.getLawsNotisyncNum()); break; case "信息简报": - value = sarStandardsInfoEO.getLawsBulletin(); + value = verifyBean(sarStandardsInfoEO.getLawsBulletin()); break; case "标签": - value = sarStandardsInfoEO.getLawsLabel(); + value = verifyBean(sarStandardsInfoEO.getLawsLabel()); break; case "备注": - value = sarStandardsInfoEO.getLawsRemark(); + value = verifyBean(sarStandardsInfoEO.getLawsRemark()); break; default: String field = attrInfoMap.get(name); @@ -173,4 +173,14 @@ public class LawsStandExportUtil { return value; } + private static String verifyBean(String value){ + String val = ""; + if(StringUtils.isNotBlank(value)){ + val =value; + }else { + val = ""; + } + return val; + } + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/utils/util/StandExportUtil.java b/adc-da-slrs/src/main/java/com/adc/da/utils/util/StandExportUtil.java index 47f597c1..20781939 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/utils/util/StandExportUtil.java +++ b/adc-da-slrs/src/main/java/com/adc/da/utils/util/StandExportUtil.java @@ -101,23 +101,28 @@ public class StandExportUtil { Map attrValueMap = sarStandardsInfoEO.getAttrInfoMap(); switch (name) { case "标准性质": - value = sarStandardsInfoEO.getStandNatureShow(); + value = verifyBean(sarStandardsInfoEO.getStandNatureShow()); break; case "是否纳入认证清单": - switch (sarStandardsInfoEO.getIsRelateAccess()){ - case "0": value="否"; break; - case "1": value="是"; break; - default:value=""; + boolean notBlank = StringUtils.isNotBlank(sarStandardsInfoEO.getIsRelateAccess()); + if (notBlank) { + switch (sarStandardsInfoEO.getIsRelateAccess()){ + case "0": value="否"; break; + case "1": value="是"; break; + default:value=""; + } + }else { + value = ""; } break; case "标准体系": - value = sarStandardsInfoEO.getStandSystem(); + value = verifyBean(sarStandardsInfoEO.getStandSystem()); break; case "适用区域": - value = sarStandardsInfoEO.getCountryShow(); + value = verifyBean(sarStandardsInfoEO.getCountryShow()); break; case "标准类别": - value = sarStandardsInfoEO.getStandSortShow(); + value = verifyBean(sarStandardsInfoEO.getStandSortShow()); break; case "重要度": if (StringUtils.isNotBlank(sarStandardsInfoEO.getIsRelateAccess())) { @@ -130,19 +135,19 @@ public class StandExportUtil { value = sarStandardsInfoEO.getIsRelateAccess(); break; case "标准编号": - value = sarStandardsInfoEO.getStandNumber(); + value = verifyBean(sarStandardsInfoEO.getStandNumber()); break; case "标准年份": - value = sarStandardsInfoEO.getStandYear(); + value = verifyBean(sarStandardsInfoEO.getStandYear()); break; case "中文名称": - value = sarStandardsInfoEO.getStandName(); + value = verifyBean(sarStandardsInfoEO.getStandName()); break; case "英文名称": - value = sarStandardsInfoEO.getStandEnName(); + value = verifyBean(sarStandardsInfoEO.getStandEnName()); break; case "文本状态": - value = sarStandardsInfoEO.getStandTextStatusShow(); + value = verifyBean(sarStandardsInfoEO.getStandTextStatusShow()); break; case "发布日期": if (sarStandardsInfoEO.getIssueTime() != null) { @@ -154,7 +159,7 @@ public class StandExportUtil { } break; case "文本说明": - value = sarStandardsInfoEO.getSynopsis(); + value = verifyBean(sarStandardsInfoEO.getSynopsis()); break; default: String field = attrInfoMap.get(name); @@ -166,4 +171,14 @@ public class StandExportUtil { return value; } + private static String verifyBean(String value){ + String val = ""; + if(StringUtils.isNotBlank(value)){ + val =value; + }else { + val = ""; + } + return val; + } + } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sapMeetInfo/SapMeetingMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sapMeetInfo/SapMeetingMapper.xml new file mode 100644 index 00000000..533cc110 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sapMeetInfo/SapMeetingMapper.xml @@ -0,0 +1,77 @@ + + + + + + id,title,date,content,type,attend,files + + + type = #{type} + + + + insert into sap_meeting + + id, + title, + date, + content, + type, + attend, + files, + + values + + #{id}, + #{title}, + #{date}, + #{content}, + #{type}, + #{attend}, + #{files}, + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussionessStand/SarBussionessStandMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussionessStand/SarBussionessStandMapper.xml index 18b10815..48a8f2af 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussionessStand/SarBussionessStandMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarBussionessStand/SarBussionessStandMapper.xml @@ -54,7 +54,7 @@ stand_status, replaced_stand_num, replace_stand_num,put_time, - issue_time, stand_en_name, stand_name, stand_code, + issue_time, stand_en_name, stand_name, stand_code,standStatusShow, SAR_BUSSIONESS_STAND.id @@ -350,48 +350,51 @@ ORDER BY - CASE tmp_tb.stand_sort - when 'Q/FT A' THEN 0 - when 'Q/FT B' THEN 1 - when 'Q/FT E' THEN 2 - when 'Q/FT F' THEN 3 - when 'Q/FT G' THEN 4 - when 'Q/FT M' THEN 5 - when 'Q/FT Q' THEN 6 - when 'Q/FT R' THEN 7 - when 'Q/FT S' THEN 8 - when 'Q/FT T' THEN 9 - when 'Q/FT V' THEN 10 - when 'Q/FT X' THEN 11 - when 'Q/FT Y' THEN 12 - when 'Q/FT Z' THEN 13 - when 'Q/QCBFC' THEN 14 - when '雷萨企标Q/FL' THEN 15 - when 'Q/QCFLC' THEN 16 + + ${orderByA} ${order1}, + + CASE + when tmp_tb.stand_code like concat('%', 'Q/FT A', '%') THEN 0 + when tmp_tb.stand_code like concat('%', 'Q/FT B', '%') THEN 1 + when tmp_tb.stand_code like concat('%', 'Q/FT E', '%') THEN 2 + when tmp_tb.stand_code like concat('%', 'Q/FT F', '%') THEN 3 + when tmp_tb.stand_code like concat('%', 'Q/FT G', '%') THEN 4 + when tmp_tb.stand_code like concat('%', 'Q/FT M', '%') THEN 5 + when tmp_tb.stand_code like concat('%', 'Q/FT Q', '%') THEN 6 + when tmp_tb.stand_code like concat('%', 'Q/FT R', '%') THEN 7 + when tmp_tb.stand_code like concat('%', 'Q/FT S', '%') THEN 8 + when tmp_tb.stand_code like concat('%', 'Q/FT T', '%') THEN 9 + when tmp_tb.stand_code like concat('%', 'Q/FT V', '%') THEN 10 + when tmp_tb.stand_code like concat('%', 'Q/FT X', '%') THEN 11 + when tmp_tb.stand_code like concat('%', 'Q/FT Y', '%') THEN 12 + when tmp_tb.stand_code like concat('%', 'Q/FT Z', '%') THEN 13 + when tmp_tb.stand_code like concat('%', 'Q/QCBFC', '%') THEN 14 + when tmp_tb.stand_code like concat('%', '雷萨企标Q/FL', '%') THEN 15 + when tmp_tb.stand_code like concat('%', 'Q/QCFLC', '%') THEN 16 ELSE 17 END, tmp_tb.stand_sort ASC ORDER BY - CASE tmp_tb.stand_sort - when 'Q/FT A' THEN 0 - when 'Q/FT B' THEN 1 - when 'Q/FT E' THEN 2 - when 'Q/FT F' THEN 3 - when 'Q/FT G' THEN 4 - when 'Q/FT M' THEN 5 - when 'Q/FT Q' THEN 6 - when 'Q/FT R' THEN 7 - when 'Q/FT S' THEN 8 - when 'Q/FT T' THEN 9 - when 'Q/FT V' THEN 10 - when 'Q/FT X' THEN 11 - when 'Q/FT Y' THEN 12 - when 'Q/FT Z' THEN 13 - when 'Q/QCBFC' THEN 14 - when '雷萨企标Q/FL' THEN 15 - when 'Q/QCFLC' THEN 16 + CASE + when tmp_tb.stand_code like concat('%', 'Q/FT A', '%') THEN 0 + when tmp_tb.stand_code like concat('%', 'Q/FT B', '%') THEN 1 + when tmp_tb.stand_code like concat('%', 'Q/FT E', '%') THEN 2 + when tmp_tb.stand_code like concat('%', 'Q/FT F', '%') THEN 3 + when tmp_tb.stand_code like concat('%', 'Q/FT G', '%') THEN 4 + when tmp_tb.stand_code like concat('%', 'Q/FT M', '%') THEN 5 + when tmp_tb.stand_code like concat('%', 'Q/FT Q', '%') THEN 6 + when tmp_tb.stand_code like concat('%', 'Q/FT R', '%') THEN 7 + when tmp_tb.stand_code like concat('%', 'Q/FT S', '%') THEN 8 + when tmp_tb.stand_code like concat('%', 'Q/FT T', '%') THEN 9 + when tmp_tb.stand_code like concat('%', 'Q/FT V', '%') THEN 10 + when tmp_tb.stand_code like concat('%', 'Q/FT X', '%') THEN 11 + when tmp_tb.stand_code like concat('%', 'Q/FT Y', '%') THEN 12 + when tmp_tb.stand_code like concat('%', 'Q/FT Z', '%') THEN 13 + when tmp_tb.stand_code like concat('%', 'Q/QCBFC', '%') THEN 14 + when tmp_tb.stand_code like concat('%', '雷萨企标Q/FL', '%') THEN 15 + when tmp_tb.stand_code like concat('%', 'Q/QCFLC', '%') THEN 16 ELSE 17 END, tmp_tb.stand_sort ASC, @@ -401,6 +404,11 @@ left join SAR_BUSS_STAND_MENU ON SAR_BUSSIONESS_STAND.id = SAR_BUSS_STAND_MENU.buss_stand_id left join TS_RESOURCE on SAR_BUSS_STAND_MENU.menu_id = TS_RESOURCE.id left join SAR_BUSS_STAND_ATTR_INFO on (SAR_BUSS_STAND_ATTR_INFO.STAND_ID = SAR_BUSSIONESS_STAND.id and SAR_BUSS_STAND_ATTR_INFO.valid_flag=0) + LEFT JOIN TS_DICTYPE dicstandTextStatus ON ( + dicstandTextStatus.dic_type_code = SAR_BUSSIONESS_STAND.text_status_buss + AND dicstandTextStatus.dic_id IS NOT NULL + AND dicstandTextStatus.valid_flag = 0 + ) where 1=1 @@ -624,16 +632,12 @@ - select * from ts_user + select ts_user.EMAIL,ts_user.ACCOUNT,ts_user.CREATION_TIME,ts_user.DISABLE_FLAG,ts_user.EXT_INFO,ts_user.USID, + ts_user.INSTITUTION_ID,ts_user.INSTITUTION_NAME,ts_user.MODIFY_TIME,ts_user.OPER_USER,ts_user.PASSWORD,ts_user.PHONE, + ts_user.POSITION_ID,ts_user.POSITION_NAME,ts_user.SEX,ts_user.SSO_ID,ts_user.STATE,ts_user.UNLOCK_FLAG,ts_user.USER_SOURCE, + ts_user.USER_TYPE,ts_user.VALID_FLAG,ts_user.WORK_NUM,concat(ts_user.UNAME,concat(concat("(",ts_user.ACCOUNT),")")) as uname + from ts_user WHERE institution_id=#{institutionId} + + and ( ts_user.ACCOUNT like concat(concat('%',#{userName}),'%') or ts_user.UNAME like concat(concat('%',#{userName}),'%') ) + - select - a.*, - dicstandTextStatus.DIC_TYPE_NAME AS standStatusShow, - ( - CASE - WHEN SAR_LAWS_ATTR_INFO.XCXSSRQLAWS ='' THEN '9999-01-01' - ELSE SAR_LAWS_ATTR_INFO.XCXSSRQLAWS - END - ) AS XCXSSRQLAWS - from - (select tmp_tb.* from - ( SELECT DISTINCT SAR_LAWS_STAND_INFO.ID, SAR_LAWS_STAND_INFO.LAWS_TYPE, @@ -267,19 +254,27 @@ SAR_LAWS_STAND_INFO.LAWS_LABEL, SAR_LAWS_STAND_INFO.LAWS_REMARK, SAR_LAWS_STAND_INFO.COUNTRY, - SAR_LAWS_STAND_INFO.MODIFY_TIME + SAR_LAWS_STAND_INFO.MODIFY_TIME, + dicstandTextStatus.DIC_TYPE_NAME AS standStatusShow, + ( + CASE + WHEN SAR_LAWS_ATTR_INFO.XCXSSRQLAWS ='' THEN '9999-01-01' + ELSE SAR_LAWS_ATTR_INFO.XCXSSRQLAWS + END + ) AS XCXSSRQLAWS from SAR_LAWS_STAND_INFO - ) tmp_tb limit ${pager.startIndex-1},${pageSize}) a - order by - ${orderByA} ${order1},a.id + + ${orderByA} ${order1}, + + SAR_LAWS_STAND_INFO.id + limit ${pager.startIndex-1},${pageSize} @@ -287,13 +282,35 @@ diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml index e57eafad..51417d7d 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandProjectLibrary/SarStandProjectLibraryMapper.xml @@ -159,6 +159,31 @@ limit ${(page-1)*size},${page*size} + + + + + + SELECT + issue.*,laws.LAWS_NUMBER,laws.LAWS_NAME + FROM + business_dept_issue AS issue + LEFT JOIN sar_laws_stand_info AS laws + ON issue.law_id = laws.ID + ${ew.customSqlSegment} + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandUnqualified/ProductDeptIssuempaaer.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandUnqualified/ProductDeptIssuempaaer.xml new file mode 100644 index 00000000..fca51789 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandUnqualified/ProductDeptIssuempaaer.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml index 8289b0b4..2bc5e145 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml @@ -73,7 +73,28 @@ SAR_STANDARDS_INFO.creation_time, SAR_STANDARDS_INFO.modify_time, SAR_STANDARDS_INFO.STAND_SYSTEM, - SAR_STANDARDS_INFO.IS_RELATE_ACCESS + SAR_STANDARDS_INFO.IS_RELATE_ACCESS, + SAR_STAND_ATTR_INFO.CHJL AS CHJL, + dicstandSort.DIC_TYPE_NAME AS standSortShow, + dicstandTextStatus.DIC_TYPE_NAME AS standTextStatusShow, + ( + CASE + WHEN SAR_STAND_ATTR_INFO.SSRQ ='' THEN '9999-01-01' + ELSE SAR_STAND_ATTR_INFO.SSRQ + END + ) AS SSRQ, + ( + CASE + WHEN SAR_STAND_ATTR_INFO.ZCCSSRQ ='' THEN '9999-01-01' + ELSE SAR_STAND_ATTR_INFO.ZCCSSRQ + END + ) AS ZCCSSRQ, + ( + CASE + WHEN SAR_STAND_ATTR_INFO.XCXSSRQ ='' THEN '9999-01-01' + ELSE SAR_STAND_ATTR_INFO.XCXSSRQ + END + ) AS XCXSSRQ @@ -566,9 +587,12 @@ - - ORDER BY - CASE tmp_tb.stand_sort + ORDER BY + + ${page.orderByA} ${page.order1}, + + + CASE sar_standards_info.stand_sort when 'GB' THEN 0 when 'GB/T' THEN 1 when 'QC/T' THEN 2 @@ -579,11 +603,10 @@ when 'HJ' THEN 7 ELSE 8 END, - tmp_tb.stand_sort ASC + sar_standards_info.stand_sort ASC,sar_standards_info.id - - ORDER BY - CASE tmp_tb.stand_sort + + CASE sar_standards_info.stand_sort when 'ECE' THEN 0 when 'EU' THEN 1 when 'EC' THEN 2 @@ -610,7 +633,7 @@ when 'ADR' THEN 23 ELSE 24 END, - tmp_tb.stand_sort ASC + sar_standards_info.stand_sort ASC,sar_standards_info.id @@ -659,6 +682,193 @@ a.stand_sort ASC, + + + + CASE a.stand_sort + when 'GB' THEN 0 + when 'GB/T' THEN 1 + when 'QC/T' THEN 2 + when 'JT' THEN 3 + when 'JB' THEN 4 + when 'GA' THEN 5 + when 'GJB' THEN 6 + when 'HJ' THEN 7 + ELSE 8 + END, + a.stand_sort ASC, + + + CASE a.stand_sort + when 'ECE' THEN 0 + when 'EU' THEN 1 + when 'EC' THEN 2 + when 'EEC' THEN 3 + when 'ISO' THEN 4 + when 'IEC' THEN 5 + when 'GTR' THEN 6 + when 'CFR' THEN 7 + when 'JASO' THEN 8 + when 'JIS' THEN 9 + when 'GSO' THEN 10 + when 'GOST' THEN 11 + when 'ΓOCT' THEN 12 + when 'TP' THEN 13 + when 'SASO' THEN 14 + when 'UAE' THEN 15 + when 'CONTRAN' THEN 16 + when 'DENATRAN' THEN 17 + when 'ABNT NBR' THEN 18 + when 'NBR' THEN 19 + when 'INMETRO' THEN 20 + when 'CONAMA' THEN 21 + when 'Normative Instruction' THEN 22 + when 'ADR' THEN 23 + ELSE 24 + END, + a.stand_sort ASC, + + + + + left join SAR_STAND_MENU ON SAR_STANDARDS_INFO.id = SAR_STAND_MENU.stand_id + left join TS_DICTYPE dicstandSort on (dicstandSort.dic_type_code = SAR_STANDARDS_INFO.stand_sort and + dicstandSort.dic_id is not null and dicstandSort.valid_flag = 0 and dicstandSort.PARENT_ID is null) + LEFT JOIN TS_DICTYPE dicstandTextStatus ON ( + dicstandTextStatus.dic_type_code = SAR_STANDARDS_INFO.text_status + AND dicstandTextStatus.dic_id IS NOT NULL + AND dicstandTextStatus.valid_flag = 0 + ) + left join SAR_STAND_ATTR_INFO on (SAR_STAND_ATTR_INFO.stand_id = SAR_STANDARDS_INFO.id and SAR_STAND_ATTR_INFO.valid_flag=0) + where 1=1 and SAR_STANDARDS_INFO.valid_flag=0 + + + + and stand_type = #{page.standType} + + + + + and country = #{page.country} + + + + and ( + (concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-', + SAR_STANDARDS_INFO.STAND_YEAR) like concat(concat('%',#{page.standNumber}),'%') and SAR_STANDARDS_INFO.STAND_YEAR != '') + or (concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER) like concat(concat('%',#{page.standNumber}),'%') + and SAR_STANDARDS_INFO.STAND_YEAR = '') + or (stand_name like concat(concat('%',#{page.standNumber}),'%')) + ) + + + + and stand_name like concat(concat('%',#{page.standName}),'%') + or STAND_NUMBER like concat(concat('%',#{page.standName}),'%') + or STAND_YEAR like concat(concat('%',#{page.standName}),'%') + or STAND_SORT like concat(concat('%',#{page.standName}),'%') + + + and stand_en_name like concat(concat('%',#{page.standEnName}),'%') + + + + and stand_state = #{page.standState} + + + + + and stand_nature = #{page.standNature} + + + + and replace_stand_num like concat(concat('%',#{page.replaceStandNum}),'%') + + + + and replaced_stand_num like concat(concat('%',#{page.replacedStandNum}),'%') + + + and is_relate_access = #{page.isRelateAccess} + + + + and SAR_STAND_MENU.MENU_ID in + + #{item} + + + + + + and SAR_STAND_MENU.MENU_ID in + + #{item} + + + + + + + + + + + + and SAR_STANDARDS_INFO.id in + + #{item} + + + + and SAR_STANDARDS_INFO.stand_sort = #{page.standSort} + + + + and SAR_STANDARDS_INFO.STAND_YEAR = #{page.standYear} + + + and DATE_FORMAT(SAR_STANDARDS_INFO.ISSUE_TIME ,'%Y-%m-%d') = #{page.issueTime} + + + + AND dbms_lob.instr(SYNOPSIS, #{page.synopsis} ,1,1) > 0 + + + + + and SAR_STANDARDS_INFO.TEXT_STATUS = #{page.textStatus} + + + + and SAR_STANDARDS_INFO.IS_RELATE_ACCESS = #{page.isRelateAccess} + + + + and SAR_STANDARDS_INFO.id in ( + select COLLECT_RES_ID from TS_PERSON_COLLECT where TS_PERSON_COLLECT.VALID_FLAG=0 + and (collect_type='INLAND_STAND' or collect_type='FOREIGN_STAND') + and TS_PERSON_COLLECT.user_id=#{page.userId} + ) + + + + + and SAR_STAND_ATTR_INFO.GXHBQ is not null + + + and SAR_STAND_ATTR_INFO.GXHBQ like concat(concat('%',#{page.labelMenuId}),'%') + + + + and SAR_STAND_ATTR_INFO.CLLX = #{page.applyArctic} + + + and (${page.advanceSearchStr}) + + + + left join SAR_STAND_MENU ON SAR_STANDARDS_INFO.id = SAR_STAND_MENU.stand_id where 1=1 and SAR_STANDARDS_INFO.valid_flag=0 @@ -674,13 +884,9 @@ - and ( + and (concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-', SAR_STANDARDS_INFO.STAND_YEAR) like concat(concat('%',#{standNumber}),'%') and SAR_STANDARDS_INFO.STAND_YEAR != '') - or (concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER) like concat(concat('%',#{standNumber}),'%') - and SAR_STANDARDS_INFO.STAND_YEAR = '') - or (stand_name like concat(concat('%',#{standNumber}),'%')) - ) @@ -775,73 +981,22 @@ - left join TS_DICTYPE dicstandSort on (dicstandSort.dic_type_code = a.stand_sort and - dicstandSort.dic_id is not null and dicstandSort.valid_flag = 0 and dicstandSort.PARENT_ID is null) - LEFT JOIN TS_DICTYPE dicstandTextStatus ON ( - dicstandTextStatus.dic_type_code = a.text_status - AND dicstandTextStatus.dic_id IS NOT NULL - AND dicstandTextStatus.valid_flag = 0 - ) - left join SAR_STAND_ATTR_INFO on (SAR_STAND_ATTR_INFO.stand_id = a.id and SAR_STAND_ATTR_INFO.valid_flag=0) - where 1=1 - - and SAR_STAND_ATTR_INFO.GXHBQ is not null - - - and SAR_STAND_ATTR_INFO.GXHBQ like concat(concat('%',#{labelMenuId}),'%') - - - - and SAR_STAND_ATTR_INFO.CLLX = #{applyArctic} - - - - and (${advanceSearchStr}) - - + @@ -978,6 +1133,9 @@ GROUP BY ) a order by + + ${orderByA} ${order1}, + a.issue_time is null ,a.issue_time desc,a.id diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapAttendeeMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapAttendeeMapper.xml new file mode 100644 index 00000000..9ffa4968 --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapAttendeeMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapFilesMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapFilesMapper.xml new file mode 100644 index 00000000..e19264db --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapFilesMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapMeetingMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapMeetingMapper.xml new file mode 100644 index 00000000..586270ef --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/spaMeetInfo/SapMeetingMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgDept/WgDeptMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgDept/WgDeptMapper.xml index 619b63a0..0cef7c6d 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wgDept/WgDeptMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgDept/WgDeptMapper.xml @@ -2,8 +2,21 @@ - + select wg_dept.* ,ts_user.UNAME as name ,ts_user.PHONE as phone ,ts_user.EMAIL as email,ts_user.INSTITUTION_ID as deptId + ,ts_user.INSTITUTION_NAME as deptName + from wg_dept + left join ts_user on ts_user.ACCOUNT = wg_dept.dept_people_id + where wg_dept.wg_id =#{data} + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingInfo/WgMeetingInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingInfo/WgMeetingInfoMapper.xml index 986f3f0c..bead41d4 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingInfo/WgMeetingInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingInfo/WgMeetingInfoMapper.xml @@ -2,8 +2,28 @@ - select * from wg_meeting_info where wg_meeting_info.wg_id = #{data} + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingUserRelation/WgMeetingUserRelationMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingUserRelation/WgMeetingUserRelationMapper.xml new file mode 100644 index 00000000..4079378c --- /dev/null +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgMeetingUserRelation/WgMeetingUserRelationMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgNetInfo/WgNetInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgNetInfo/WgNetInfoMapper.xml index f6322188..7ed719b5 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wgNetInfo/WgNetInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgNetInfo/WgNetInfoMapper.xml @@ -2,8 +2,21 @@ - + select wg_net_info.net_id,ts_user.UNAME as name ,ts_user.PHONE as phone, ts_user.EMAIL as email + ,wg_net_info.id,wg_net_info.wg_id , wg_net_info.join_id + from wg_net_info + left join ts_user on ts_user.ACCOUNT = wg_net_info.net_id + where wg_net_info.wg_id =#{data} + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgPayInfo/WgPayInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgPayInfo/WgPayInfoMapper.xml index 18d982b1..7251a1d0 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wgPayInfo/WgPayInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgPayInfo/WgPayInfoMapper.xml @@ -7,4 +7,10 @@ select * from wg_pay_info where wg_pay_info.wg_id = #{data} + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wgStandorpolicyInfo/WgStandorpolicyInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wgStandorpolicyInfo/WgStandorpolicyInfoMapper.xml index 636a0b83..8d5e3ad0 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wgStandorpolicyInfo/WgStandorpolicyInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wgStandorpolicyInfo/WgStandorpolicyInfoMapper.xml @@ -4,6 +4,39 @@ + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/wg_work_group/WgWorkGroupMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/wg_work_group/WgWorkGroupMapper.xml index 9256d02a..fde7c4e7 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/wg_work_group/WgWorkGroupMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/wg_work_group/WgWorkGroupMapper.xml @@ -14,18 +14,18 @@ - - - - - - + + + + + + + + + + + + @@ -45,5 +45,9 @@ select * from wg_work_group where wg_work_group.pid = #{data} and wg_work_group.status = #{status} + + diff --git a/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java b/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java index 6ac813bc..636c2f41 100644 --- a/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java +++ b/adc-da-sys/src/main/java/com/adc/da/att/controller/AttFileEOController.java @@ -275,14 +275,14 @@ public class AttFileEOController { String userMsg = ""; TsUser tsUser = userDao.selectById(userId); if (tsUser != null) { - userMsg = tsUser.getUname() + ","; - if (StringUtils.isNotEmpty(tsUser.getWorkNum())) { - userMsg += tsUser.getWorkNum() + ","; - } + userMsg = tsUser.getUname(); +// if (StringUtils.isNotEmpty(tsUser.getWorkNum())) { +// userMsg += tsUser.getWorkNum() + ","; +// } } SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");//设置日期格式 String date = df.format(new Date()); - String waterContent = userMsg + date; + String waterContent = userMsg; //2020年9月5日 去掉水印处理 //2021年7月25日要求下载生成水印 WaterMarkUtil.waterMark(oldFilePath,waterFilePath,waterContent);