k94314517
2024-04-10 45a8fb5db1b0aa6d5cd39198ffc30dba5ec8b2d9
server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -783,23 +783,26 @@
        company.setIsdeleted(Constants.ZERO);
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(Constants.equalsInteger(company.getType(),Constants.ONE)){
        }else {
            //如果查询企业数据
            if(company.getQueryFlag() == 0){
                //只能看权限范围内
                if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){
                    wrapper.lambda().eq(Company::getId,-1);//设置无效访问
                }else {
                    wrapper.lambda().in(Company::getId, user.getCompanyIdList());
//                return new ArrayList<>();
        }else  {
            if(Constants.equalsInteger(user.getType(),Constants.TWO)){
                //如果是商户
                wrapper.lambda().exists("select c.id from company_solution c where c.isdeleted=0 and c.shop_id=company.id");//设置无效访问
            }else{
                //如果查询企业数据
                if(company.getQueryFlag() == 0){
                    //只能看权限范围内
                    if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){
                        wrapper.lambda().eq(Company::getId,-1);//设置无效访问
                    }else {
                        wrapper.lambda().in(Company::getId, user.getCompanyIdList());
                    }
                } else if (company.getQueryFlag() == 1 && company.getUserId()!=null) {
                    //查詢是否有查看權限
                    wrapper.select("*,(select count(1) from company_permission b where b.user_id="+company.getUserId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission");
                }
            } else if (company.getQueryFlag() == 1 && company.getUserId()!=null) {
                //查詢是否有查看權限
                wrapper.select("*,(select count(1) from company_permission b where b.user_id="+company.getUserId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission");
            }
        }
        return companyMapper.selectList(wrapper);
    }
@@ -813,20 +816,27 @@
        if(Constants.formatIntegerNum(pageWrap.getModel().getType()) == Constants.ONE) {
        }else{
            //如果查询企业数据,只能看权限范围内
            if(pageWrap.getModel().getQueryFlag() == 0){
                //只能看权限范围内
                if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){
                    queryWrapper.lambda().eq(Company::getId,-1);//设置无效访问
                }else {
                    queryWrapper.lambda().in(Company::getId, user.getCompanyIdList());
                }
            if(Constants.equalsInteger(user.getType(),Constants.TWO)){
                //如果是商户
                queryWrapper.lambda().exists("select c.id from company_solution c where c.isdeleted=0 and c.shop_id=company.id");//设置无效访问
            }else{
                //如果查询企业数据,只能看权限范围内
                if(pageWrap.getModel().getQueryFlag() == 0){
                    //只能看权限范围内
                    if(user.getCompanyIdList() == null || user.getCompanyIdList().size() == 0){
                        queryWrapper.lambda().eq(Company::getId,-1);//设置无效访问
                    }else {
                        queryWrapper.lambda().in(Company::getId, user.getCompanyIdList());
                    }
//            queryWrapper.exists("select b.id from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id");
            } else if (pageWrap.getModel().getQueryFlag() == 1) {
                //查詢是否有查看權限
                queryWrapper.select("*,(select count(1) from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission");
                } else if (pageWrap.getModel().getQueryFlag() == 1) {
                    //查詢是否有查看權限
                    queryWrapper.select("*,(select count(1) from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission");
                }
            }
        }
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(Company::getId, pageWrap.getModel().getId());
        }