| | |
| | | |
| | | @Override |
| | | public int updateDocumentMaterials(DocumentMaterials documentMaterials) { |
| | | boolean result = false; |
| | | try { |
| | | |
| | | boolean result = updateById(documentMaterials); |
| | | //修改页号成功之后,要重新生成文件材料序号,页次 |
| | | //根据pageNumber拿到title,然后计算pageOrder |
| | | LambdaQueryWrapper<DocumentMaterials> lqw = new LambdaQueryWrapper<>(); |
| | | lqw.eq(documentMaterials.getRecordId()!=null, DocumentMaterials::getRecordId, documentMaterials.getRecordId()); |
| | | lqw.eq(documentMaterials.getPageNumber()!=null, DocumentMaterials::getPageNumber, documentMaterials.getPageNumber()); |
| | | List<DocumentMaterials> records = list(lqw); |
| | | |
| | | |
| | | |
| | | //计算pageOrder |
| | | Long pageOrder = 1L; |
| | | if(documentMaterials.getPageNumber().equals(1)) |
| | | pageOrder = 1L; |
| | | else { |
| | | Long maxPOrder = this.baseMapper.getMaxPageOrder(records.get(0).getTitle(), documentMaterials.getPageNumber(), records.get(0).getStage(), documentMaterials.getRecordId()); |
| | | if (maxPOrder != null) |
| | | pageOrder = maxPOrder + 1; |
| | | } |
| | | //设置pageOrder |
| | | documentMaterials.setPageOrder(pageOrder); |
| | | //计算fileNumber |
| | | Long fileNumber = this.getFiNum(documentMaterials.getPageNumber(), documentMaterials.getRecordId()); |
| | | documentMaterials.setFileNumber(fileNumber); |
| | | //修改页号 |
| | | result = updateById(documentMaterials); |
| | | //把剩下所有的的fileNumber和pageOrder都更新一遍 |
| | | LambdaQueryWrapper<DocumentMaterials> lqw1 = new LambdaQueryWrapper<>(); |
| | | lqw.eq(documentMaterials.getRecordId()!=null, DocumentMaterials::getRecordId, documentMaterials.getRecordId()); |
| | | // lqw.eq(documentMaterials.getPageNumber()!=null, DocumentMaterials::getPageNumber, documentMaterials.getPageNumber()); |
| | | List<DocumentMaterials> recordss = list(lqw1); |
| | | for(DocumentMaterials dt: recordss) |
| | | { |
| | | //计算pageOrder |
| | | Long pageOrder1 = 1L; |
| | | if(dt.getPageNumber().equals(1)) |
| | | pageOrder1 = 1L; |
| | | else { |
| | | Long maxPOrder1 = this.baseMapper.getMaxPageOrder(dt.getTitle(), dt.getPageNumber(), dt.getStage(), dt.getRecordId()); |
| | | if (maxPOrder1 != null) |
| | | pageOrder1 = maxPOrder1 + 1; |
| | | } |
| | | //设置pageOrder |
| | | dt.setPageOrder(pageOrder1); |
| | | //计算fileNumber |
| | | Long fileNumber1 = this.getFiNum(dt.getPageNumber(), dt.getRecordId()); |
| | | dt.setFileNumber(fileNumber1); |
| | | //修改页号 |
| | | updateById(dt); |
| | | } |
| | | |
| | | |
| | | } catch (Exception e) { |
| | | System.out.println(e); |
| | | throw new ErrorcodeExceptionextends(500, "同一个案卷内,不允许页码重复!"); |
| | | } |
| | | if(result) |
| | | return 1; |
| | | else |
| | |
| | | public int updateByPageNumber(Long pageNumber, String sizeType, Long fileNumber, int width, int height, int horizontalResolution, int verticalResolution, double fileSize, String url, String format, Long recordId) { |
| | | //根据pageNumber拿到title,然后计算pageOrder |
| | | LambdaQueryWrapper<DocumentMaterials> lqw = new LambdaQueryWrapper<>(); |
| | | lqw.eq(recordId!=null, DocumentMaterials::getRecordId, recordId); |
| | | lqw.eq(pageNumber!=null, DocumentMaterials::getPageNumber, pageNumber); |
| | | List<DocumentMaterials> records = list(lqw); |
| | | |
| | | |
| | | //计算pageOrder |
| | | Long pageOrder = 1L; |
| | | if(pageNumber.equals(1)) |
| | | pageOrder = 1L; |