工作组查询优化

This commit is contained in:
yuezhihang
2021-11-11 14:13:11 +08:00
parent 333143549f
commit b714156172
30 changed files with 361 additions and 74 deletions
@@ -18,4 +18,6 @@ import java.util.List;
*/
public interface WgDeptDao extends BaseMapper<WgDept> {
List<WgDeptShow> researchDatas(@Param(value = "data") String data);
List<WgDeptShow> researchAllDatas(@Param(value = "type") String type);
}
@@ -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;
/**
* <p>
* 集团参与情况 服务类
@@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2021-11-04
*/
public interface IWgDeptService extends IService<WgDept> {
List<WgDeptShow> getAllDatas(String type);
}
@@ -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;
/**
* <p>
* 集团参与情况 服务实现类
@@ -17,4 +21,11 @@ import org.springframework.stereotype.Service;
@Service
public class WgDeptServiceImpl extends ServiceImpl<WgDeptDao, WgDept> implements IWgDeptService {
@Autowired
private WgDeptDao wgDeptDao;
@Override
public List<WgDeptShow> getAllDatas(String type) {
return wgDeptDao.researchAllDatas(type);
}
}
@@ -19,4 +19,6 @@ public interface WgMeetingInfoDao extends BaseMapper<WgMeetingInfo> {
List<WgMeetingInfo> researchDatas(@Param(value = "data") String data);
List<WgMeetingInfo> researchAllDatas(@Param(value = "type") String type);
}
@@ -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;
/**
* <p>
* 参会记录及资料 服务类
@@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2021-11-04
*/
public interface IWgMeetingInfoService extends IService<WgMeetingInfo> {
List<WgMeetingInfo> getAllDatas(String type);
}
@@ -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;
/**
* <p>
* 参会记录及资料 服务实现类
@@ -16,5 +19,10 @@ import org.springframework.stereotype.Service;
*/
@Service
public class WgMeetingInfoServiceImpl extends ServiceImpl<WgMeetingInfoDao, WgMeetingInfo> implements IWgMeetingInfoService {
@Autowired
WgMeetingInfoDao wgMeetingInfoDao;
@Override
public List<WgMeetingInfo> getAllDatas(String type) {
return wgMeetingInfoDao.researchAllDatas(type);
}
}
@@ -17,4 +17,6 @@ import java.util.List;
*/
public interface WgMeetingUserRelationDao extends BaseMapper<WgMeetingUserRelation> {
List<WgMeetingUserRelationShow> getMeetingPeoples(@Param("meetId") String meetingId);
List<WgMeetingUserRelationShow> getMeetingAllPeoples(@Param(value = "type") String type);
}
@@ -1,8 +1,11 @@
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;
/**
* <p>
* 服务类
@@ -12,5 +15,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2021-11-09
*/
public interface IWgMeetingUserRelationService extends IService<WgMeetingUserRelation> {
List<WgMeetingUserRelationShow> getMeetingAllPeoples(String type);
}
@@ -2,10 +2,14 @@ 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;
/**
* <p>
* 服务实现类
@@ -17,4 +21,11 @@ import org.springframework.stereotype.Service;
@Service
public class WgMeetingUserRelationServiceImpl extends ServiceImpl<WgMeetingUserRelationDao, WgMeetingUserRelation> implements IWgMeetingUserRelationService {
@Autowired
private WgMeetingUserRelationDao wgMeetingUserRelationDao;
@Override
public List<WgMeetingUserRelationShow> getMeetingAllPeoples(String type) {
return wgMeetingUserRelationDao.getMeetingAllPeoples(type);
}
}
@@ -20,4 +20,6 @@ public interface WgNetInfoDao extends BaseMapper<WgNetInfo> {
List<WgNetInfoDTO> researchDatas(@Param(value = "data") String data);
List<WgNetInfoDTO> researchAllDatas(@Param(value = "type") String type);
}
@@ -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;
/**
* <p>
* 工作组秘书联系方式 服务类
@@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2021-11-04
*/
public interface IWgNetInfoService extends IService<WgNetInfo> {
List<WgNetInfoDTO> getAllDatas(String type);
}
@@ -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;
/**
* <p>
* 工作组秘书联系方式 服务实现类
@@ -16,5 +20,11 @@ import org.springframework.stereotype.Service;
*/
@Service
public class WgNetInfoServiceImpl extends ServiceImpl<WgNetInfoDao, WgNetInfo> implements IWgNetInfoService {
@Autowired
private WgNetInfoDao wgNetInfoDao;
@Override
public List<WgNetInfoDTO> getAllDatas(String type) {
return wgNetInfoDao.researchAllDatas(type);
}
}
@@ -17,4 +17,6 @@ import java.util.List;
*/
public interface WgPayInfoDao extends BaseMapper<WgPayInfo> {
List<WgPayInfo> researchDatas(@Param(value = "data") String data);
List<WgPayInfo> researchAllDatas(@Param(value = "type") String type);
}
@@ -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;
/**
* <p>
* 支付信息 服务类
@@ -13,4 +15,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IWgPayInfoService extends IService<WgPayInfo> {
List<WgPayInfo> getAllDatas(String type);
}
@@ -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;
/**
* <p>
* 支付信息 服务实现类
@@ -17,4 +20,11 @@ import org.springframework.stereotype.Service;
@Service
public class WgPayInfoServiceImpl extends ServiceImpl<WgPayInfoDao, WgPayInfo> implements IWgPayInfoService {
@Autowired
private WgPayInfoDao wgPayInfoDao;
@Override
public List<WgPayInfo> getAllDatas(String type) {
return wgPayInfoDao.researchAllDatas(type);
}
}
@@ -19,4 +19,6 @@ public interface WgStandorpolicyInfoDao extends BaseMapper<WgStandorpolicyInfo>
List<WgStandorpolicyInfo> researchDatas(@Param(value = "data") String data);
List<WgStandorpolicyInfo> researchAllDatas(@Param(value = "type")String type);
}
@@ -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;
/**
* <p>
* 标准/政策 -信息 服务类
@@ -13,4 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface IWgStandorpolicyInfoService extends IService<WgStandorpolicyInfo> {
List<WgStandorpolicyInfo> getAllDatas(String type);
}
@@ -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;
/**
* <p>
* 标准/政策 -信息 服务实现类
@@ -17,4 +20,11 @@ import org.springframework.stereotype.Service;
@Service
public class WgStandorpolicyInfoServiceImpl extends ServiceImpl<WgStandorpolicyInfoDao, WgStandorpolicyInfo> implements IWgStandorpolicyInfoService {
@Autowired
private WgStandorpolicyInfoDao wgStandorpolicyInfoDao;
@Override
public List<WgStandorpolicyInfo> getAllDatas(String type) {
return wgStandorpolicyInfoDao.researchAllDatas(type);
}
}
@@ -42,12 +42,12 @@ public class WgWorkGroupController extends BaseController<WgWorkGroup> {
@ApiOperation("搜索工作组节点数据")
@GetMapping("/researchData")
public ResponseMessage<WgWorkGroupShowDTO> researchData(@RequestParam(value = "type") String type){
return Result.success(wgWorkGroupService.researchData(type));
return Result.success(wgWorkGroupService.researchDataUp(type));
}
@ApiOperation("删除工作组节点数据")
@DeleteMapping("/deleteData")
public ResponseMessage<Object> deleteData(@Param(value = "id") String id, @Param("meetingId")List<String> meetingId){
@PostMapping("/deleteData")
public ResponseMessage<Object> deleteData(@RequestParam(value = "id") String id, @RequestParam(value = "meetingId",required=false)List<String> meetingId){
return wgWorkGroupService.deleteData(id,meetingId);
}
@@ -22,6 +22,8 @@ public interface WgWorkGroupDao extends BaseMapper<WgWorkGroup> {
List<WgWorkGroupShowDTO> researchDownLevel(@Param(value = "data") String data);
List<WgWorkGroupShowDTO> researchAllData(@Param(value = "type")String type);
List<WgWorkGroup> researchDownCheck(@Param(value = "data") String data,@Param(value = "status")String status);
}
@@ -2,6 +2,7 @@ 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;
@@ -10,6 +11,7 @@ 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;
@@ -76,7 +78,7 @@ public class WgWorkGroupShowDTO extends BaseEntity {
List<WgStandorpolicyInfo> wgStandorpolicyInfos;
//集团参与情况
List<WgDept> wgDepts;
List<WgDeptShow> wgDepts;
//秘书联系方式
List<WgNetInfoDTO> wgNetInfos;
@@ -22,6 +22,9 @@ public interface IWgWorkGroupService extends IService<WgWorkGroup> {
WgWorkGroupShowDTO researchData(String type);
//优化查询接口 速度
WgWorkGroupShowDTO researchDataUp(String type);
ResponseMessage<Object> deleteData(String id,List<String> meetingId);
ResponseMessage<Object> updateData(WgWorkGroupShowDTO wgWorkGroupShowDTO);
@@ -2,14 +2,20 @@ 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.wgMeetingUserRelation.service.impl.WgMeetingUserRelationServiceImpl;
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.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;
@@ -56,25 +62,26 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
@Transactional
@Override
public String saveDatas(WgWorkGroupDTO wgWorkGroupDTO) {
WgWorkGroup wgWorkGroup=new WgWorkGroup();
BeanUtils.copyProperties(wgWorkGroupDTO,wgWorkGroup);
WgWorkGroup wgWorkGroup = new WgWorkGroup();
BeanUtils.copyProperties(wgWorkGroupDTO, wgWorkGroup);
//存储集团参与情况
boolean flag=true;
boolean flag = true;
wgWorkGroup.setId(String.valueOf(UUID.randomUUID()));
flag=wgWorkGroupService.save(wgWorkGroup);
if (null!=wgWorkGroupDTO.getWgDepts()) {
wgWorkGroupDTO.getWgDepts().forEach(wgDept -> {wgDept.setWgId(wgWorkGroup.getId());
flag = wgWorkGroupService.save(wgWorkGroup);
if (null != wgWorkGroupDTO.getWgDepts()) {
wgWorkGroupDTO.getWgDepts().forEach(wgDept -> {
wgDept.setWgId(wgWorkGroup.getId());
});
flag=wgDeptService.saveBatch(wgWorkGroupDTO.getWgDepts());
flag = wgDeptService.saveBatch(wgWorkGroupDTO.getWgDepts());
}
//存储会议信息
if (null!=wgWorkGroupDTO.getWgMeetingInfos()) {
if (null != wgWorkGroupDTO.getWgMeetingInfos()) {
List<WgMeetingUserRelation> 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 wgMeetingUserRelation = new WgMeetingUserRelation();
wgMeetingUserRelation.setMeetingId(wgMeetingInfo.getId());
wgMeetingUserRelation.setUserId(s);
wgMeetingUserRelations.add(wgMeetingUserRelation);
@@ -84,24 +91,30 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
flag = wgMeetingInfoService.saveBatch(wgWorkGroupDTO.getWgMeetingInfos());
}
//存储秘书联系方式信息
if (null!=wgWorkGroupDTO.getWgNetInfos()) {
wgWorkGroupDTO.getWgNetInfos().forEach(wgNetInfo -> {wgNetInfo.setWgId(wgWorkGroup.getId());});
if (null != wgWorkGroupDTO.getWgNetInfos()) {
wgWorkGroupDTO.getWgNetInfos().forEach(wgNetInfo -> {
wgNetInfo.setWgId(wgWorkGroup.getId());
});
flag = wgNetInfoService.saveBatch(wgWorkGroupDTO.getWgNetInfos());
}
//支付信息
if (null!=wgWorkGroupDTO.getWgPayInfos()) {
wgWorkGroupDTO.getWgPayInfos().forEach(wgPayInfo -> {wgPayInfo.setWgId(wgWorkGroup.getId());});
if (null != wgWorkGroupDTO.getWgPayInfos()) {
wgWorkGroupDTO.getWgPayInfos().forEach(wgPayInfo -> {
wgPayInfo.setWgId(wgWorkGroup.getId());
});
flag = wgPayInfoService.saveBatch(wgWorkGroupDTO.getWgPayInfos());
}
//标准政策信息
if (null!=wgWorkGroupDTO.getWgStandorpolicyInfos()) {
wgWorkGroupDTO.getWgStandorpolicyInfos().forEach(wgStandorpolicyInfo -> {wgStandorpolicyInfo.setWgId(wgWorkGroup.getId());});
if (null != wgWorkGroupDTO.getWgStandorpolicyInfos()) {
wgWorkGroupDTO.getWgStandorpolicyInfos().forEach(wgStandorpolicyInfo -> {
wgStandorpolicyInfo.setWgId(wgWorkGroup.getId());
});
flag = wgStandorpolicyInfoService.saveBatch(wgWorkGroupDTO.getWgStandorpolicyInfos());
}
//先存储主数据
if (flag ) {
if (flag) {
return "添加成功";
}else {
} else {
return "数据错误,添加失败";
}
}
@@ -109,25 +122,148 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
@Override
public WgWorkGroupShowDTO researchData(String type) {
//构建最初的节点 用来向下搜索
WgWorkGroupShowDTO wgWorkGroupShowDTO=new WgWorkGroupShowDTO();
WgWorkGroupShowDTO wgWorkGroupShowDTO = new WgWorkGroupShowDTO();
wgWorkGroupShowDTO.setId("root");
wgWorkGroupShowDTO.setTypes(type);
List<WgWorkGroupShowDTO> wgWorkGroupShowDTOS=new ArrayList<>();
List<WgWorkGroupShowDTO> wgWorkGroupShowDTOS = new ArrayList<>();
wgWorkGroupShowDTOS.add(wgWorkGroupShowDTO);
return wgWorkGroupDao.researchDatas(wgWorkGroupShowDTOS,type);
return wgWorkGroupDao.researchDatas(wgWorkGroupShowDTOS, type);
}
@Override
public ResponseMessage<Object> deleteData(String id,List<String> ids) {
List<WgWorkGroup> wgWorkGroupShowDTOS=wgWorkGroupDao.researchDownCheck(id,"1");
List<WgWorkGroupShowDTO> wgWorkGroups=wgWorkGroupDao.researchDownLevel(id);
if (null!=wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size()>0 && null!= wgWorkGroups && wgWorkGroups.size()>0){
public WgWorkGroupShowDTO researchDataUp(String type) {
List<WgWorkGroupShowDTO> wgWorkGroupShowDTOS = wgWorkGroupDao.researchAllData(type);
List<WgPayInfo> wgPayInfos = wgPayInfoService.getAllDatas(type);
List<WgStandorpolicyInfo> wgStandorpolicyInfos = wgStandorpolicyInfoService.getAllDatas(type);
List<WgDeptShow> wgDeptShows = wgDeptService.getAllDatas(type);
List<WgNetInfoDTO> wgNetInfoDTOS = wgNetInfoService.getAllDatas(type);
List<WgMeetingInfo> wgMeetingInfos = wgMeetingInfoService.getAllDatas(type);
List<WgMeetingUserRelationShow> wgMeetingUserRelations = wgMeetingUserRelationService.getMeetingAllPeoples(type);
//处理数据
//part1 会议数据组装 提速第一步建造数据的map集合
Map<String,WgWorkGroupShowDTO> wgWorkGroupMap=new HashMap<>();
wgWorkGroupShowDTOS.forEach(wgWorkGroupShowDTO -> {
wgWorkGroupMap.put(wgWorkGroupShowDTO.getId(),wgWorkGroupShowDTO);
});
Map<String, WgMeetingInfo> 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<WgMeetingUserRelationShow> 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<WgDeptShow> 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<WgMeetingInfo> 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<WgNetInfoDTO> 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<WgPayInfo> 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()).getWgStandorpolicyInfos().add(wgStandorpolicyInfo);
}else {
List<WgStandorpolicyInfo> wgStandorpolicyInfos1=new ArrayList<>();
wgStandorpolicyInfos1.add(wgStandorpolicyInfo);
wgWorkGroupMap.get(wgStandorpolicyInfo.getWgId()).setWgStandorpolicyInfos(wgStandorpolicyInfos1);
}
});
}
//数据初步组装完成 开始进行树结构排序
List<Integer> nums=new ArrayList<>();
Map<Integer,List<WgWorkGroupShowDTO>> map=new HashMap<>();
wgWorkGroupShowDTOS.forEach(wgWorkGroupShowDTO -> {
if (null!=map.get(Integer.valueOf(wgWorkGroupShowDTO.getLevel()))){
map.get(Integer.valueOf(wgWorkGroupShowDTO.getLevel())).add(wgWorkGroupShowDTO);
}else {
List<WgWorkGroupShowDTO> 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<WgWorkGroupShowDTO> children = new ArrayList<>();
children.add(wgWorkGroupShowDTO1);
wgWorkGroupShowDTO.setChildren(children);
}
}
});
});
}
return map.get(0).get(0);
}
@Override
public ResponseMessage<Object> deleteData(String id, List<String> ids) {
List<WgWorkGroup> wgWorkGroupShowDTOS = wgWorkGroupDao.researchDownCheck(id, "1");
List<WgWorkGroupShowDTO> 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<String, Object> columnMap = new HashMap<>();
columnMap.put("wg_id", id);
@@ -136,7 +272,7 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
wgNetInfoService.removeByMap(columnMap);
wgMeetingInfoService.removeByMap(columnMap);
wgDeptService.removeByMap(columnMap);
if (null!=ids && ids.size()>0) {
if (null != ids && ids.size() > 0) {
wgMeetingUserRelationService.removeByIds(ids);
}
return Result.success("删除成功");
@@ -145,26 +281,33 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
@Override
public ResponseMessage<Object> updateData(WgWorkGroupShowDTO wgWorkGroupShowDTO) {
List<WgWorkGroup> wgWorkGroupShowDTOS=wgWorkGroupDao.researchDownCheck(wgWorkGroupShowDTO.getId(),"1");
if (null!=wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size()>0){
List<WgWorkGroup> wgWorkGroupShowDTOS = wgWorkGroupDao.researchDownCheck(wgWorkGroupShowDTO.getId(), "1");
if (null != wgWorkGroupShowDTOS && wgWorkGroupShowDTOS.size() > 0) {
return Result.error("工作组处在流程中,无法修改");
}else {
WgWorkGroup wgWorkGroup=new WgWorkGroup();
BeanUtils.copyProperties(wgWorkGroupShowDTO,wgWorkGroup);
} else {
WgWorkGroup wgWorkGroup = new WgWorkGroup();
BeanUtils.copyProperties(wgWorkGroupShowDTO, wgWorkGroup);
boolean flag = false;
flag=wgWorkGroupService.saveOrUpdate(wgWorkGroup);
if (null!=wgWorkGroupShowDTO.getWgDepts() && wgWorkGroupShowDTO.getWgDepts().size()>0) {
flag = wgDeptService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgDepts());
flag = wgWorkGroupService.saveOrUpdate(wgWorkGroup);
if (null != wgWorkGroupShowDTO.getWgDepts() && wgWorkGroupShowDTO.getWgDepts().size() > 0) {
List<WgDept> 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<String> removeMeet=new ArrayList<>();
List<WgMeetingUserRelation> wgMeetingUserRelations=new ArrayList<>();
if (null != wgWorkGroupShowDTO.getWgMeetingInfos() && wgWorkGroupShowDTO.getWgMeetingInfos().size() > 0) {
List<String> removeMeet = new ArrayList<>();
List<WgMeetingUserRelation> 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);
WgMeetingUserRelation wgMeetingUserRelation = new WgMeetingUserRelation();
wgMeetingUserRelation.setUserId(s);
wgMeetingUserRelation.setMeetingId(wgMeetingInfo.getId());
wgMeetingUserRelations.add(wgMeetingUserRelation);
});
removeMeet.add(wgMeetingInfo.getId());
});
@@ -176,32 +319,29 @@ public class WgWorkGroupServiceImpl extends ServiceImpl<WgWorkGroupDao, WgWorkGr
flag = wgMeetingInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgMeetingInfos());
}
if (null!=wgWorkGroupShowDTO.getWgNetInfos() && wgWorkGroupShowDTO.getWgNetInfos().size()>0) {
List<WgNetInfo> wgNetInfos=new ArrayList<>();
wgWorkGroupShowDTO.getWgNetInfos().forEach(wgNetInfoDTO -> {
WgNetInfo wgNetInfo=new WgNetInfo();
BeanUtils.copyProperties(wgNetInfoDTO,wgNetInfo);
wgNetInfos.add(wgNetInfo);
});
if (null != wgWorkGroupShowDTO.getWgNetInfos() && wgWorkGroupShowDTO.getWgNetInfos().size() > 0) {
List<WgNetInfo> 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){
if (null != wgWorkGroupShowDTO.getWgPayInfos() && wgWorkGroupShowDTO.getWgPayInfos().size() > 0) {
flag = wgPayInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgPayInfos());
}
if (null!=wgWorkGroupShowDTO.getWgStandorpolicyInfos() && wgWorkGroupShowDTO.getWgStandorpolicyInfos().size()>0) {
if (null != wgWorkGroupShowDTO.getWgStandorpolicyInfos() && wgWorkGroupShowDTO.getWgStandorpolicyInfos().size() > 0) {
flag = wgStandorpolicyInfoService.saveOrUpdateBatch(wgWorkGroupShowDTO.getWgStandorpolicyInfos());
}
if (flag){
if (flag) {
return Result.success("更新成功");
}else {
} else {
return Result.error("无法更新");
}
}
}
}
@@ -10,4 +10,13 @@
where wg_dept.wg_id =#{data}
</select>
<select id="researchAllDatas" resultType="com.adc.da.slrs.wgDept.entity.WgDeptShow">
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
left join wg_work_group on wg_work_group.id = wg_dept.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -20,4 +20,10 @@
select * from wg_meeting_info where wg_meeting_info.wg_id = #{data}
</select>
<select id="researchAllDatas" resultType="com.adc.da.slrs.wgMeetingInfo.entity.WgMeetingInfo">
select * from wg_meeting_info
left join wg_work_group on wg_work_group.id = wg_meeting_info.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -9,4 +9,13 @@
left join ts_user on ts_user.ACCOUNT = wg_meeting_user_relation.user_id
where wg_meeting_user_relation.meeting_id = #{meetId}
</select>
<select id="getMeetingAllPeoples"
resultType="com.adc.da.slrs.wgMeetingUserRelation.entity.WgMeetingUserRelationShow">
select wg_meeting_user_relation.*,ts_user.UNAME as name from wg_meeting_user_relation
left join ts_user on ts_user.ACCOUNT = wg_meeting_user_relation.user_id
left join wg_meeting_info on wg_meeting_info.id = wg_meeting_user_relation.meeting_id
left join wg_work_group on wg_work_group.id = wg_meeting_info.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -10,4 +10,13 @@
where wg_net_info.wg_id =#{data}
</select>
<select id="researchAllDatas" resultType="com.adc.da.slrs.wgNetInfo.entity.WgNetInfoDTO">
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
left join wg_work_group on wg_work_group.id = wg_net_info.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -7,4 +7,10 @@
select * from wg_pay_info where wg_pay_info.wg_id = #{data}
</select>
<select id="researchAllDatas" resultType="com.adc.da.slrs.wgPayInfo.entity.WgPayInfo">
select * from wg_pay_info
left join wg_work_group on wg_work_group.id=wg_pay_info.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -6,4 +6,10 @@
<select id="researchDatas" resultType="com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo">
select * from wg_standorpolicy_info where wg_standorpolicy_info.wg_id = #{data}
</select>
<select id="researchAllDatas" resultType="com.adc.da.slrs.wgStandorpolicyInfo.entity.WgStandorpolicyInfo">
select * from wg_standorpolicy_info
left join wg_work_group on wg_work_group.id = wg_standorpolicy_info.wg_id
where wg_work_group.type = #{type}
</select>
</mapper>
@@ -14,14 +14,14 @@
<result property="standerArea" column="stander_area"/>
<result property="mark" column="mark"/>
<result property="level" column="level"/>
<association property="wgPayInfos" javaType="java.util.List" column="id"
select="com.adc.da.slrs.wgPayInfo.dao.WgPayInfoDao.researchDatas"/>
<association property="wgStandorpolicyInfos" javaType="java.util.List" column="id"
select="com.adc.da.slrs.wgStandorpolicyInfo.dao.WgStandorpolicyInfoDao.researchDatas"/>
<association property="wgDepts" javaType="java.util.List" column="id"
select="com.adc.da.slrs.wgDept.dao.WgDeptDao.researchDatas"/>
<association property="wgNetInfos" javaType="java.util.List" column="id"
select="com.adc.da.slrs.wgNetInfo.dao.WgNetInfoDao.researchDatas"/>
<!--<association property="wgPayInfos" javaType="java.util.List" column="id"-->
<!--select="com.adc.da.slrs.wgPayInfo.dao.WgPayInfoDao.researchDatas"/>-->
<!--<association property="wgStandorpolicyInfos" javaType="java.util.List" column="id"-->
<!--select="com.adc.da.slrs.wgStandorpolicyInfo.dao.WgStandorpolicyInfoDao.researchDatas"/>-->
<!--<association property="wgDepts" javaType="java.util.List" column="id"-->
<!--select="com.adc.da.slrs.wgDept.dao.WgDeptDao.researchDatas"/>-->
<!--<association property="wgNetInfos" javaType="java.util.List" column="id"-->
<!--select="com.adc.da.slrs.wgNetInfo.dao.WgNetInfoDao.researchDatas"/>-->
<association property="wgMeetingInfos" javaType="java.util.List" column="id"
select="com.adc.da.slrs.wgMeetingInfo.dao.WgMeetingInfoDao.researchDatas"/>
<association property="children" javaType="java.util.List" column="id"
@@ -45,5 +45,9 @@
select * from wg_work_group where wg_work_group.pid = #{data} and wg_work_group.status = #{status}
</select>
<select id="researchAllData" resultType="com.adc.da.slrs.wgWorkGroup.entity.WgWorkGroupShowDTO">
select * from wg_work_group where wg_work_group.type =#{type}
</select>
</mapper>