sgj
2026-03-27 1eddf64a7104dcd06065e8ac309eebc42c24fb05
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreCompanyService.java
@@ -1,13 +1,17 @@
package com.fzzy.igds.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.domain.Company;
import com.fzzy.igds.domain.PledgeContract;
import com.fzzy.igds.mapper.CoreCompanyMapper;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -22,6 +26,52 @@
    @Resource
    private CoreCompanyMapper coreCompanyMapper;
    /**
     * 根据用户类型获取对应公司列表信息
     * @return
     */
    public List<Company> getCompanyByUserType() {
        //获取当前登录人
        SysUser user = ContextUtil.getLoginUser();
        if (Constant.USER_TYPE_10.equals(user.getUserType())) {
            //监管用户,直接查询组织下所有公司
            return this.listCompany(null,user.getCompanyId(),null);
        }
        if (Constant.USER_TYPE_20.equals(user.getUserType())) {
            //银行用户,根据合同查询银行下所有库区
            return this.getCompanyByContract(user.getUserData());
        }
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            //库区用户
            List<Company> companies = new ArrayList<>();
            if (user.getDeptId() != null && StringUtils.isNotBlank(user.getDeptId().toString())) {
                String substring = user.getDeptId().toString().substring(0, user.getDeptId().toString().length() - 3);
                companies = this.listCompany(substring, null, null);
            }
            return companies;
        }
        return this.listCompany(null,user.getCompanyId(),null);
    }
    /**
     * 根据银行id,关联合同表查询公司列表
     * @param bankId
     * @return
     */
    public List<Company> getCompanyByContract(String bankId) {
        if (StringUtils.isBlank(bankId)){
            return null;
        }
        QueryWrapper<PledgeContract> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("c.pledge_bank", bankId);
        return coreCompanyMapper.selectCompanyByBankId(queryWrapper);
    }
    /**
     * 根据条件查询公司信息
     * @param id