fix(文档拆分): ;79531
This commit is contained in:
+14
-4
@@ -4,11 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.modules.laws.documenttool.entity.DocumentSplitInfo;
|
import com.jero.modules.laws.documenttool.entity.*;
|
||||||
import com.jero.modules.laws.documenttool.entity.SarFileSplitItemsVal;
|
|
||||||
import com.jero.modules.laws.documenttool.entity.SarFileSplitMenu;
|
|
||||||
import com.jero.modules.laws.documenttool.entity.SplitFileInfo;
|
|
||||||
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
||||||
|
import com.jero.modules.split.entity.SarFileSplitItemsEO;
|
||||||
import com.jero.modules.split.entity.SarFileSplitItemsValEO;
|
import com.jero.modules.split.entity.SarFileSplitItemsValEO;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
@@ -193,4 +191,16 @@ public interface DocumentSplitMapper {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
IPage<SplitFileInfo> querySplitFileInfoByPage(@Param(Constants.WRAPPER) QueryWrapper<SplitFileInfo> queryWrapper, IPage<SplitFileInfo> page);
|
IPage<SplitFileInfo> querySplitFileInfoByPage(@Param(Constants.WRAPPER) QueryWrapper<SplitFileInfo> queryWrapper, IPage<SplitFileInfo> page);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 条文表-根据id集合查询
|
||||||
|
* @param listMapIdList
|
||||||
|
*/
|
||||||
|
List<SarFileSplitItemsEO> querySarFileSplitItemsByIds(@Param("idList") List<String> listMapIdList);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 文档拆分详情通过idList范围查询
|
||||||
|
* @param idList
|
||||||
|
*/
|
||||||
|
List<LawsDocumentSplit> queryLawsDocumentSplitInIds(List<String> idList);
|
||||||
}
|
}
|
||||||
|
|||||||
+30
@@ -227,6 +227,36 @@
|
|||||||
${ew.customSqlSegment}
|
${ew.customSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="querySarFileSplitItemsByIds" resultType="com.jero.modules.split.entity.SarFileSplitItemsEO">
|
||||||
|
SELECT id,
|
||||||
|
creation_user,
|
||||||
|
creation_time,
|
||||||
|
modify_user,
|
||||||
|
modify_time,
|
||||||
|
sys_org_code,
|
||||||
|
info_id,
|
||||||
|
items_num,
|
||||||
|
items_name,
|
||||||
|
iterms_conditions,
|
||||||
|
menu_id
|
||||||
|
FROM sar_file_split_items
|
||||||
|
WHERE id IN
|
||||||
|
<foreach collection="idList" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="queryLawsDocumentSplitInIds"
|
||||||
|
resultType="com.jero.modules.laws.documenttool.entity.LawsDocumentSplit">
|
||||||
|
select *
|
||||||
|
from laws_document_split
|
||||||
|
where id in
|
||||||
|
<foreach collection="idList" item="item" separator="," open="(" close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
<update id="editDocumentSplitDetail">
|
<update id="editDocumentSplitDetail">
|
||||||
UPDATE laws_document_split
|
UPDATE laws_document_split
|
||||||
SET ${updateSet}
|
SET ${updateSet}
|
||||||
|
|||||||
+13
-2
@@ -482,6 +482,8 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void editDocumentSplitDetail(Map<String, Object> parameter) {
|
public void editDocumentSplitDetail(Map<String, Object> parameter) {
|
||||||
|
// 水平越权
|
||||||
|
isHorizontalOverstep(INFO_ID);
|
||||||
// 处理map参数null值转为“”
|
// 处理map参数null值转为“”
|
||||||
mapValueNullToString(parameter);
|
mapValueNullToString(parameter);
|
||||||
// 查询全部字段列表
|
// 查询全部字段列表
|
||||||
@@ -621,6 +623,10 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void editBatchDocumentSplitDetail(Map<String, Object> parameter) {
|
public void editBatchDocumentSplitDetail(Map<String, Object> parameter) {
|
||||||
|
// 水平越权
|
||||||
|
List<LawsDocumentSplit> lawsDocumentSplitList = documentSplitMapper.queryLawsDocumentSplitInIds(Arrays.asList(((String) parameter.get("ids")).split(",")));
|
||||||
|
isHorizontalOverstep(lawsDocumentSplitList.get(0).getInfoId());
|
||||||
|
|
||||||
mapValueNullToString(parameter);
|
mapValueNullToString(parameter);
|
||||||
// 查询全部字段列表
|
// 查询全部字段列表
|
||||||
List<LawsTag> fieldList = lawsCommonMapper.getFieldList(TableNameEnum.DOCUMENT_SPLIT.getTableName());
|
List<LawsTag> fieldList = lawsCommonMapper.getFieldList(TableNameEnum.DOCUMENT_SPLIT.getTableName());
|
||||||
@@ -688,9 +694,12 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
StringBuilder strSelectCondition = new StringBuilder(selectCondition);
|
StringBuilder strSelectCondition = new StringBuilder(selectCondition);
|
||||||
// 查询数据
|
// 查询数据
|
||||||
List<Map<String, Object>> listMap = documentSplitMapper.queryDocumentSplitDetail(selectColumn, strSelectCondition.toString());
|
List<Map<String, Object>> listMap = documentSplitMapper.queryDocumentSplitDetail(selectColumn, strSelectCondition.toString());
|
||||||
|
|
||||||
// 水平越权
|
// 水平越权
|
||||||
String infoIds = listMap.stream().map(v -> v.get(INFO_ID).toString()).collect(Collectors.joining(","));
|
List<String> listMapIdList = listMap.stream().map(v -> v.get(ID).toString()).collect(Collectors.toList());
|
||||||
isHorizontalOverstep(infoIds);
|
List<LawsDocumentSplit> lawsDocumentSplitList = documentSplitMapper.queryLawsDocumentSplitInIds(listMapIdList);
|
||||||
|
isHorizontalOverstep(lawsDocumentSplitList.get(0).getInfoId());
|
||||||
|
|
||||||
// 排序(根据条文号)
|
// 排序(根据条文号)
|
||||||
listMap.sort(new DirectoryComparator());
|
listMap.sort(new DirectoryComparator());
|
||||||
// 第一条数据
|
// 第一条数据
|
||||||
@@ -951,6 +960,8 @@ public class DocumentSplitServiceImpl implements IDocumentSplitService {
|
|||||||
public LawsDocumentSplitView queryView(Map<String, Object> parameter) {
|
public LawsDocumentSplitView queryView(Map<String, Object> parameter) {
|
||||||
LawsDocumentSplitView lawsDocumentSplitView = new LawsDocumentSplitView();
|
LawsDocumentSplitView lawsDocumentSplitView = new LawsDocumentSplitView();
|
||||||
String id = (String) parameter.get(ID);
|
String id = (String) parameter.get(ID);
|
||||||
|
// 水平越权
|
||||||
|
isHorizontalOverstep(id);
|
||||||
// 文档拆分信息
|
// 文档拆分信息
|
||||||
DocumentSplitInfo documentSplitInfo = new DocumentSplitInfo();
|
DocumentSplitInfo documentSplitInfo = new DocumentSplitInfo();
|
||||||
documentSplitInfo.setId(id);
|
documentSplitInfo.setId(id);
|
||||||
|
|||||||
+2
@@ -135,6 +135,8 @@ public class FileSplitItemsEOController extends JeroController<SarFileSplitItems
|
|||||||
try {
|
try {
|
||||||
Map<String, Object> parameterMap = JSONObject.parseObject(parameter);
|
Map<String, Object> parameterMap = JSONObject.parseObject(parameter);
|
||||||
fileSplitItemsEOService.exportSplitInfo(cut, idList, parameterMap, exportName, response, request);
|
fileSplitItemsEOService.exportSplitInfo(cut, idList, parameterMap, exportName, response, request);
|
||||||
|
}catch (JeroBootException e){
|
||||||
|
throw new JeroBootException(e.getMessage());
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.ERROR));
|
throw new JeroBootException(MessageUtils.getMessage(ResultCommon.ERROR));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,4 +70,5 @@ public interface SarFileSplitMenuEOMapper extends BaseMapper<SarFileSplitMenuEO>
|
|||||||
|
|
||||||
List<SarFileSplitMenuEO> selectBatchIds(@Param("idList") List<String> idList);
|
List<SarFileSplitMenuEO> selectBatchIds(@Param("idList") List<String> idList);
|
||||||
|
|
||||||
|
SarFileSplitMenuEO findById(String id);
|
||||||
}
|
}
|
||||||
|
|||||||
+5
@@ -355,4 +355,9 @@
|
|||||||
where info_id = #{infoId} and parent_id is null
|
where info_id = #{infoId} and parent_id is null
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="findById" resultType="com.jero.modules.split.entity.SarFileSplitMenuEO">
|
||||||
|
select * from SAR_FILE_SPLIT_MENU
|
||||||
|
where id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
+6
@@ -1522,6 +1522,9 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result<?> importSplitItems(MultipartFile file, String cut, String menuId, String infoId) throws IOException {
|
public Result<?> importSplitItems(MultipartFile file, String cut, String menuId, String infoId) throws IOException {
|
||||||
|
// 水平越权
|
||||||
|
documentSplitService.isHorizontalOverstep(infoId);
|
||||||
|
|
||||||
//验证文件名是否合格
|
//验证文件名是否合格
|
||||||
/* 截取后缀名 */
|
/* 截取后缀名 */
|
||||||
int pos = file.getOriginalFilename().lastIndexOf(".");
|
int pos = file.getOriginalFilename().lastIndexOf(".");
|
||||||
@@ -3454,6 +3457,9 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void exportSplitInfo(String cut, String idList, Map<String, Object> parameter,String exportName, HttpServletResponse response, HttpServletRequest request) {
|
public void exportSplitInfo(String cut, String idList, Map<String, Object> parameter,String exportName, HttpServletResponse response, HttpServletRequest request) {
|
||||||
|
// 水平越权
|
||||||
|
documentSplitService.isHorizontalOverstep(request.getParameter("infoId"));
|
||||||
|
|
||||||
OutputStream os = null;
|
OutputStream os = null;
|
||||||
OutputStream excelOS = null;
|
OutputStream excelOS = null;
|
||||||
HSSFWorkbook workbook = new HSSFWorkbook();
|
HSSFWorkbook workbook = new HSSFWorkbook();
|
||||||
|
|||||||
+14
@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
|
import com.jero.modules.laws.documenttool.service.IDocumentSplitService;
|
||||||
import com.jero.modules.split.entity.SarFileSplitMenuEO;
|
import com.jero.modules.split.entity.SarFileSplitMenuEO;
|
||||||
import com.jero.modules.split.mapper.SarFileSplitItemsValEOMapper;
|
import com.jero.modules.split.mapper.SarFileSplitItemsValEOMapper;
|
||||||
import com.jero.modules.split.mapper.SarFileSplitMenuEOMapper;
|
import com.jero.modules.split.mapper.SarFileSplitMenuEOMapper;
|
||||||
@@ -46,12 +47,17 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
@Autowired
|
@Autowired
|
||||||
private IFileSplitItemsEOService fileSplitItemsEOService;
|
private IFileSplitItemsEOService fileSplitItemsEOService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IDocumentSplitService documentSplitService;
|
||||||
|
|
||||||
// 通过ID查询该结点及结点下所有的节点排序的最大值
|
// 通过ID查询该结点及结点下所有的节点排序的最大值
|
||||||
public int getMaxDisplayByid(String menuID) {
|
public int getMaxDisplayByid(String menuID) {
|
||||||
return dao.getMaxDisplayByid(menuID);
|
return dao.getMaxDisplayByid(menuID);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int addMenu(SarFileSplitMenuEO sarFileSplitMenuEO){
|
public int addMenu(SarFileSplitMenuEO sarFileSplitMenuEO){
|
||||||
|
// 水平越权
|
||||||
|
documentSplitService.isHorizontalOverstep(sarFileSplitMenuEO.getInfoId());
|
||||||
sarFileSplitMenuEO.setId(UUID.randomUUID().toString().replace("-", ""));
|
sarFileSplitMenuEO.setId(UUID.randomUUID().toString().replace("-", ""));
|
||||||
sarFileSplitMenuEO.setValidFlag(0);
|
sarFileSplitMenuEO.setValidFlag(0);
|
||||||
sarFileSplitMenuEO.setCreationTime(new Date());
|
sarFileSplitMenuEO.setCreationTime(new Date());
|
||||||
@@ -118,6 +124,10 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void deleteMenu(String id){
|
public void deleteMenu(String id){
|
||||||
|
// 水平越权
|
||||||
|
SarFileSplitMenuEO sarFileSplitMenuEO = dao.findById(id);
|
||||||
|
documentSplitService.isHorizontalOverstep(sarFileSplitMenuEO.getInfoId());
|
||||||
|
|
||||||
List<String> menuIds = new ArrayList<>();
|
List<String> menuIds = new ArrayList<>();
|
||||||
SarFileSplitMenuEO sarMenuEO = new SarFileSplitMenuEO();
|
SarFileSplitMenuEO sarMenuEO = new SarFileSplitMenuEO();
|
||||||
sarMenuEO.setId(id);
|
sarMenuEO.setId(id);
|
||||||
@@ -154,6 +164,8 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int updateByPrimaryKeySelective(SarFileSplitMenuEO sarFileSplitMenuEO) {
|
public int updateByPrimaryKeySelective(SarFileSplitMenuEO sarFileSplitMenuEO) {
|
||||||
|
// 水平越权
|
||||||
|
documentSplitService.isHorizontalOverstep(sarFileSplitMenuEO.getInfoId());
|
||||||
return dao.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
return dao.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -259,6 +271,8 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
Long displaySeq = sarFileSplitMenuEO.getDisplaySeq();
|
Long displaySeq = sarFileSplitMenuEO.getDisplaySeq();
|
||||||
String moveFlag = json.getString("moveFlag");
|
String moveFlag = json.getString("moveFlag");
|
||||||
String infoId = json.getString("infoId");
|
String infoId = json.getString("infoId");
|
||||||
|
// 水平越权
|
||||||
|
documentSplitService.isHorizontalOverstep(infoId);
|
||||||
|
|
||||||
SarFileSplitMenuEOPage page = new SarFileSplitMenuEOPage();
|
SarFileSplitMenuEOPage page = new SarFileSplitMenuEOPage();
|
||||||
page.setInfoId(infoId);
|
page.setInfoId(infoId);
|
||||||
|
|||||||
Reference in New Issue
Block a user