文档拆分条款-复制去除目录关联
This commit is contained in:
+10
@@ -155,6 +155,16 @@ public class FileSplitItemsEOController extends JeroController<SarFileSplitItems
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
@AutoLog(value = "文档拆分条款信息-复制")
|
||||
@ApiOperation(value = "文档拆分条款信息-复制")
|
||||
@GetMapping("/batchCopyItems")
|
||||
public Result<?> batchCopyItems(@RequestParam(value = "ids",required = false) String ids,
|
||||
@RequestParam(value = "menuids",required = false) String menuIds,
|
||||
@RequestParam(value = "infoIds",required = false) String infoIds) {
|
||||
int result = fileSplitItemsEOService.batchCopyItems(ids,menuIds,infoIds);
|
||||
return Result.OK("复制成功", result);
|
||||
}
|
||||
|
||||
@AutoLog(value = "文档拆分条款信息-批量合并")
|
||||
@ApiOperation(value = "文档拆分条款信息-批量合并")
|
||||
@GetMapping("/batchMergeItems")
|
||||
|
||||
+2
@@ -39,6 +39,8 @@ public interface IFileSplitItemsEOService extends IService<SarFileSplitItemsEO>
|
||||
|
||||
Map<String,Object> judgeContainChilds(String ids);
|
||||
|
||||
int batchCopyItems(String ids,String menuIds,String infoId);
|
||||
|
||||
Map<String,Object> selectByPrimaryKey(String id);
|
||||
|
||||
Map<String,Object> batchMergeItems(String ids);
|
||||
|
||||
+99
-56
@@ -457,62 +457,65 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
public int batchDeleteItems(String ids) {
|
||||
String[] itemIds = ids.split(",");
|
||||
List<String> idList = Arrays.asList(itemIds);
|
||||
// 查到对应menu
|
||||
List<Map<String, Object>> getMenuList = dao.queryByItemsIds(idList);
|
||||
List<Map<String, Object>> getAllItemList = new ArrayList<>();
|
||||
List<SarFileSplitMenuEO> getAllMenuList = new ArrayList<>();
|
||||
List<String> menuIdList = new ArrayList<>();
|
||||
List<String> allItemIdList = new ArrayList<>();
|
||||
int result = 0;
|
||||
if (getMenuList != null && !getMenuList.isEmpty()) {
|
||||
for(Map<String, Object> splitItemsMap : getMenuList){
|
||||
String menuId = splitItemsMap.get("menu_id").toString();
|
||||
menuIdList.add(menuId);
|
||||
SarFileSplitMenuEO menuEO = new SarFileSplitMenuEO();
|
||||
menuEO.setId(menuId);
|
||||
//查询当前目录的所有子目录,不包括当前目录
|
||||
List<SarFileSplitMenuEO> menuList = sarFileSplitMenuEOMapper.queryByPidExcpetSelf(menuEO);
|
||||
getAllMenuList.addAll(menuList);
|
||||
//查询子目录下的所有条款,包括当前目录
|
||||
List<Map<String, Object>> rows = dao.queryItemsByMenuId(menuId);
|
||||
getAllItemList.addAll(rows);
|
||||
}
|
||||
if (getAllItemList != null && !getAllItemList.isEmpty()) {
|
||||
//目录下没有子节点时,
|
||||
if ((getAllMenuList == null || getAllMenuList.isEmpty()) && getAllItemList.size() > 1) {
|
||||
// 删除val表数据
|
||||
sarFileSplitItemsValEOMapper.deleteValByitemIds(idList);
|
||||
result = dao.deleteByItemsIdList(idList);
|
||||
return result;
|
||||
}
|
||||
for (Map<String, Object> itemsMap : getAllItemList) {
|
||||
String itemId = itemsMap.get("id").toString();
|
||||
if (allItemIdList != null && !allItemIdList.contains(itemId)) {
|
||||
allItemIdList.add(itemId);
|
||||
} else if (allItemIdList == null || allItemIdList.size() < 1) {
|
||||
allItemIdList.add(itemId);
|
||||
}
|
||||
}
|
||||
if (getAllMenuList != null && !getAllMenuList.isEmpty()) {
|
||||
for(SarFileSplitMenuEO sarFileSplitMenuEO : getAllMenuList){
|
||||
if(!menuIdList.contains(sarFileSplitMenuEO.getId())){
|
||||
menuIdList.add(sarFileSplitMenuEO.getId());
|
||||
}
|
||||
}
|
||||
}
|
||||
// 删除menu表数据
|
||||
sarFileSplitMenuEOMapper.deleteByIdList(menuIdList);
|
||||
// 删除val表数据
|
||||
sarFileSplitItemsValEOMapper.deleteValByitemIds(allItemIdList);
|
||||
result = dao.deleteByItemsIdList(allItemIdList);
|
||||
}else {
|
||||
//要删除的条款menuId均不存在,判定为垃圾数据
|
||||
|
||||
// 删除val表数据
|
||||
sarFileSplitItemsValEOMapper.deleteValByitemIds(idList);
|
||||
result = dao.deleteByItemsIdList(idList);
|
||||
}
|
||||
}
|
||||
// 删除val表数据
|
||||
sarFileSplitItemsValEOMapper.deleteValByitemIds(idList);
|
||||
int result = dao.deleteByItemsIdList(idList);
|
||||
// // 查到对应menu
|
||||
// List<Map<String, Object>> getMenuList = dao.queryByItemsIds(idList);
|
||||
// List<Map<String, Object>> getAllItemList = new ArrayList<>();
|
||||
// List<SarFileSplitMenuEO> getAllMenuList = new ArrayList<>();
|
||||
// List<String> menuIdList = new ArrayList<>();
|
||||
// List<String> allItemIdList = new ArrayList<>();
|
||||
// int result = 0;
|
||||
// if (getMenuList != null && !getMenuList.isEmpty()) {
|
||||
// for(Map<String, Object> splitItemsMap : getMenuList){
|
||||
// String menuId = splitItemsMap.get("menu_id").toString();
|
||||
// menuIdList.add(menuId);
|
||||
// SarFileSplitMenuEO menuEO = new SarFileSplitMenuEO();
|
||||
// menuEO.setId(menuId);
|
||||
// //查询当前目录的所有子目录,不包括当前目录
|
||||
// List<SarFileSplitMenuEO> menuList = sarFileSplitMenuEOMapper.queryByPidExcpetSelf(menuEO);
|
||||
// getAllMenuList.addAll(menuList);
|
||||
// //查询子目录下的所有条款,包括当前目录
|
||||
// List<Map<String, Object>> rows = dao.queryItemsByMenuId(menuId);
|
||||
// getAllItemList.addAll(rows);
|
||||
// }
|
||||
// if (getAllItemList != null && !getAllItemList.isEmpty()) {
|
||||
// //目录下没有子节点时,
|
||||
// if ((getAllMenuList == null || getAllMenuList.isEmpty()) && getAllItemList.size() > 1) {
|
||||
// // 删除val表数据
|
||||
// sarFileSplitItemsValEOMapper.deleteValByitemIds(idList);
|
||||
// result = dao.deleteByItemsIdList(idList);
|
||||
// return result;
|
||||
// }
|
||||
// for (Map<String, Object> itemsMap : getAllItemList) {
|
||||
// String itemId = itemsMap.get("id").toString();
|
||||
// if (allItemIdList != null && !allItemIdList.contains(itemId)) {
|
||||
// allItemIdList.add(itemId);
|
||||
// } else if (allItemIdList == null || allItemIdList.size() < 1) {
|
||||
// allItemIdList.add(itemId);
|
||||
// }
|
||||
// }
|
||||
// if (getAllMenuList != null && !getAllMenuList.isEmpty()) {
|
||||
// for(SarFileSplitMenuEO sarFileSplitMenuEO : getAllMenuList){
|
||||
// if(!menuIdList.contains(sarFileSplitMenuEO.getId())){
|
||||
// menuIdList.add(sarFileSplitMenuEO.getId());
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// // 删除menu表数据
|
||||
// sarFileSplitMenuEOMapper.deleteByIdList(menuIdList);
|
||||
// // 删除val表数据
|
||||
// sarFileSplitItemsValEOMapper.deleteValByitemIds(allItemIdList);
|
||||
// result = dao.deleteByItemsIdList(allItemIdList);
|
||||
// }else {
|
||||
// //要删除的条款menuId均不存在,判定为垃圾数据
|
||||
//
|
||||
// // 删除val表数据
|
||||
// sarFileSplitItemsValEOMapper.deleteValByitemIds(idList);
|
||||
// result = dao.deleteByItemsIdList(idList);
|
||||
// }
|
||||
// }
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -607,6 +610,46 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl<FileSplitItemsEOMap
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int batchCopyItems(String ids, String menuIds, String infoIds) {
|
||||
List<String> oldItemIdList = Arrays.asList(ids.split(","));
|
||||
List<String> menuIdList = Arrays.asList(menuIds.split(","));
|
||||
List<String> infoIdList = Arrays.asList(infoIds.split(","));
|
||||
int result = 0;
|
||||
|
||||
for(int i = 0; i< oldItemIdList.size(); i++) {
|
||||
// 添加条款
|
||||
Map<String, Object> itemsMap = selectByPrimaryKey(oldItemIdList.get(i));
|
||||
String newItemId = UUID.randomUUID().toString().replace("-", "");
|
||||
itemsMap.remove("id");
|
||||
itemsMap.remove("creation_user");
|
||||
itemsMap.remove("creation_time");
|
||||
itemsMap.remove("modify_user");
|
||||
itemsMap.remove("modify_time");
|
||||
itemsMap.remove("sys_org_code");
|
||||
filterMap(itemsMap);
|
||||
result += insertInfo(itemsMap, newItemId);
|
||||
|
||||
// 添加条目
|
||||
List<String> queryItemIdList = new ArrayList<>();
|
||||
queryItemIdList.add(oldItemIdList.get(i));
|
||||
List<SarFileSplitItemsValEO> sarFileSplitItemsValEOList = sarFileSplitItemsValEOMapper.queryItemsValByMenuId(queryItemIdList);
|
||||
for (SarFileSplitItemsValEO sarFileSplitItemsValEO : sarFileSplitItemsValEOList) {
|
||||
String newItemValId = UUID.randomUUID().toString().replace("-", "");
|
||||
sarFileSplitItemsValEO.setId(newItemValId);
|
||||
sarFileSplitItemsValEO.setItemId(newItemId);
|
||||
sarFileSplitItemsValEO.setCreationTime(new Date());
|
||||
sarFileSplitItemsValEO.setModifyTime(new Date());
|
||||
sarFileSplitItemsValEO.setCreationUser(UserUtils.getUserId());
|
||||
sarFileSplitItemsValEO.setModifyUser(UserUtils.getUserId());
|
||||
}
|
||||
if (sarFileSplitItemsValEOList.size() > 0) {
|
||||
sarFileSplitItemsValEOMapper.insertForeach(sarFileSplitItemsValEOList);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> selectByPrimaryKey(String id) {
|
||||
return dao.selectByPrimaryKey(id);
|
||||
|
||||
Reference in New Issue
Block a user