|
@@ -8,6 +8,7 @@ import java.util.Objects;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.ruoyi.common.exception.user.OnlyOneMainCompanyAllowedException;
|
|
|
import com.ruoyi.common.utils.DateUtils;
|
|
|
import com.ruoyi.equity.domain.vo.ShareholderDownPicVO;
|
|
|
import com.ruoyi.equity.domain.vo.ShareholderInfoVO;
|
|
@@ -112,36 +113,40 @@ public class ShareholderInfoServiceImpl extends ServiceImpl<ShareholderInfoMappe
|
|
|
|
|
|
@Override
|
|
|
public ShareholderPicVO getShareholderPic() {
|
|
|
- //获取主体公司,如果未获取到,则直接提示
|
|
|
- ShareholderInfo info = shareholderInfoMapper.getSubjectCompany();
|
|
|
- if (Objects.isNull(info)){
|
|
|
- return null;
|
|
|
- }
|
|
|
- //封装返回值
|
|
|
- ShareholderPicVO vo =ShareholderPicVO.builder()
|
|
|
- .id(info.getShareholderId())
|
|
|
- .name(info.getShareholderName())
|
|
|
- .companyValuation(info.getCompanyValuation())
|
|
|
- .shareholdingRatio(info.getShareholdingRatio())
|
|
|
- .build();
|
|
|
- //获取主体上层的所有节点
|
|
|
- List<ShareholderUpPicVO> upNodes = shareholderInfoMapper.getAllUpNode();
|
|
|
- List<ShareholderUpPicVO> ups = ForestNodeMerger2.merge(upNodes);
|
|
|
- if (!ups.isEmpty()){
|
|
|
- List<ShareholderUpPicVO> parents = ups.get(0).getParents();
|
|
|
- //如果公司存在估值,则递归生成股份估值信息
|
|
|
- if (Objects.nonNull(info.getCompanyValuation())){
|
|
|
- setShareholdingRatio(parents,info.getCompanyValuation());
|
|
|
+ try {
|
|
|
+ //获取主体公司,如果未获取到,则直接提示
|
|
|
+ ShareholderInfo info = shareholderInfoMapper.getSubjectCompany();
|
|
|
+ if (Objects.isNull(info)){
|
|
|
+ return null;
|
|
|
}
|
|
|
- vo.setParents(parents);
|
|
|
- }
|
|
|
- //获取主体下层的所有节点
|
|
|
- List<ShareholderDownPicVO> downNodes = shareholderInfoMapper.getAllDownNode();
|
|
|
- List<ShareholderDownPicVO> downs = ForestNodeMerger.merge(downNodes);
|
|
|
- if (!downs.isEmpty()){
|
|
|
- vo.setChildren(downs.get(0).getChildren());
|
|
|
+ //封装返回值
|
|
|
+ ShareholderPicVO vo =ShareholderPicVO.builder()
|
|
|
+ .id(info.getShareholderId())
|
|
|
+ .name(info.getShareholderName())
|
|
|
+ .companyValuation(info.getCompanyValuation())
|
|
|
+ .shareholdingRatio(info.getShareholdingRatio())
|
|
|
+ .build();
|
|
|
+ //获取主体上层的所有节点
|
|
|
+ List<ShareholderUpPicVO> upNodes = shareholderInfoMapper.getAllUpNode();
|
|
|
+ List<ShareholderUpPicVO> ups = ForestNodeMerger2.merge(upNodes);
|
|
|
+ if (!ups.isEmpty()){
|
|
|
+ List<ShareholderUpPicVO> parents = ups.get(0).getParents();
|
|
|
+ //如果公司存在估值,则递归生成股份估值信息
|
|
|
+ if (Objects.nonNull(info.getCompanyValuation())){
|
|
|
+ setShareholdingRatio(parents,info.getCompanyValuation());
|
|
|
+ }
|
|
|
+ vo.setParents(parents);
|
|
|
+ }
|
|
|
+ //获取主体下层的所有节点
|
|
|
+ List<ShareholderDownPicVO> downNodes = shareholderInfoMapper.getAllDownNode();
|
|
|
+ List<ShareholderDownPicVO> downs = ForestNodeMerger.merge(downNodes);
|
|
|
+ if (!downs.isEmpty()){
|
|
|
+ vo.setChildren(downs.get(0).getChildren());
|
|
|
+ }
|
|
|
+ return vo;
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new OnlyOneMainCompanyAllowedException();
|
|
|
}
|
|
|
- return vo;
|
|
|
}
|
|
|
|
|
|
@Override
|