yangys
2024-04-04 ed4a5236bab800094be4a8378f5098eebe3de6ac
smart-man-boot/src/main/java/com/qianwen/smartman/modules/system/controller/TenantController.java
@@ -1,24 +1,20 @@
package com.qianwen.smartman.modules.system.controller;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import java.lang.invoke.SerializedLambda;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.validation.Valid;
import org.smartboot.license.client.LicenseException;
import com.qianwen.smartman.common.cache.RegionCache;
import com.qianwen.smartman.common.utils.Lambda;
import com.qianwen.smartman.common.utils.LicenseUtil;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.qianwen.core.boot.ctrl.BladeController;
import com.qianwen.core.cache.utils.CacheUtil;
import com.qianwen.core.mp.support.Condition;
@@ -31,11 +27,17 @@
import com.qianwen.core.tool.api.R;
import com.qianwen.core.tool.support.Kv;
import com.qianwen.core.tool.utils.Func;
import com.qianwen.smartman.common.cache.RegionCache;
import com.qianwen.smartman.common.utils.Lambda;
import com.qianwen.smartman.common.utils.LicenseUtil;
import com.qianwen.smartman.modules.system.entity.Tenant;
import com.qianwen.smartman.modules.system.service.ITenantService;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import springfox.documentation.annotations.ApiIgnore;
@Api(value = "租户管理", tags = {"租户管理"})
@@ -46,69 +48,7 @@
public class TenantController extends BladeController {
    private final ITenantService tenantService;
    private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) {
        String implMethodName = lambda.getImplMethodName();
        boolean z = true;
        switch (implMethodName.hashCode()) {
            case -1899877813:
                if (implMethodName.equals("getTenantName")) {
                    z = false;
                    break;
                }
                break;
            case 340463286:
                if (implMethodName.equals("getDatasourceId")) {
                    z = true;
                    break;
                }
                break;
            case 771206363:
                if (implMethodName.equals("getTenantId")) {
                    z = true;
                    break;
                }
                break;
        }
        switch (z) {
            case false:
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getTenantName();
                    };
                }
                break;
            case true:
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getTenantId();
                    };
                }
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getTenantId();
                    };
                }
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getTenantId();
                    };
                }
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) {
                    return (v0) -> {
                        return v0.getTenantId();
                    };
                }
                break;
            case true:
                if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/system/entity/Tenant") && lambda.getImplMethodSignature().equals("()Ljava/lang/Long;")) {
                    return (v0) -> {
                        return v0.getDatasourceId();
                    };
                }
                break;
        }
        throw new IllegalArgumentException("Invalid lambda deserialization");
    }
    public TenantController(final ITenantService tenantService) {
        this.tenantService = tenantService;
@@ -127,10 +67,13 @@
    @GetResource({"/list"})
    @ApiOperation(value = "分页", notes = "传入tenant")
    public R<IPage<Tenant>> list(@RequestParam @ApiIgnore Map<String, Object> tenant, Query query, BladeUser bladeUser) {
        Wrapper queryWrapper = Condition.getQueryWrapper(tenant, Tenant.class);
        //Wrapper queryWrapper = Condition.getQueryWrapper(tenant, Tenant.class);
        QueryWrapper<Tenant> queryWrapper = Condition.getQueryWrapper(tenant, Tenant.class);
        IPage<Tenant> pages = this.tenantService.page(Condition.getPage(query), !bladeUser.getTenantId().equals("000000") ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) : queryWrapper);
        /*
        IPage<Tenant> pages = this.tenantService.page(Condition.getPage(query), !bladeUser.getTenantId().equals("000000") ? (Wrapper) queryWrapper.lambda().eq((v0) -> {
            return v0.getTenantId();
        }, bladeUser.getTenantId()) : queryWrapper);
        }, bladeUser.getTenantId()) : queryWrapper);*/
        return R.data(pages);
    }
@@ -138,10 +81,13 @@
    @GetResource({"/select"})
    @ApiOperation(value = "下拉数据源", notes = "传入tenant")
    public R<List<Tenant>> select(Tenant tenant, BladeUser bladeUser) {
       QueryWrapper<Tenant> queryWrapper = Condition.getQueryWrapper(tenant);
        List<Tenant> list = this.tenantService.list(!bladeUser.getTenantId().equals("000000") ? queryWrapper.lambda().eq(Tenant::getTenantId, bladeUser.getTenantId()) :queryWrapper);
        /*
        Wrapper queryWrapper = Condition.getQueryWrapper(tenant);
        List<Tenant> list = this.tenantService.list(!bladeUser.getTenantId().equals("000000") ? (Wrapper) queryWrapper.lambda().eq((v0) -> {
            return v0.getTenantId();
        }, bladeUser.getTenantId()) : queryWrapper);
        }, bladeUser.getTenantId()) : queryWrapper);*/
        return R.data(list);
    }
@@ -179,20 +125,25 @@
    @ApiOperation(value = "数据源配置", notes = "传入datasource_id")
    public R datasource(@RequestParam @ApiParam(value = "租户ID", required = true) String tenantId, @RequestParam @ApiParam(value = "数据源ID", required = true) Long datasourceId) {
        CacheUtil.evict("blade:datasource", "tenant:exist:", tenantId, Boolean.FALSE);
        return R.status(this.tenantService.update(Wrappers.<Tenant>update().lambda().set(Tenant::getDatasourceId, datasourceId).eq(Tenant::getTenantId, tenantId)));
        /*
        return R.status(this.tenantService.update((Wrapper) ((LambdaUpdateWrapper) Wrappers.update().lambda().set((v0) -> {
            return v0.getDatasourceId();
        }, datasourceId)).eq((v0) -> {
            return v0.getTenantId();
        }, tenantId)));
        }, tenantId)));*/
    }
    @ApiOperationSupport(order = 9)
    @GetResource({"/find-by-name"})
    @ApiOperation(value = "详情", notes = "传入tenant")
    public R<List<Tenant>> findByName(String name) {
       List<Tenant> list = this.tenantService.list(Wrappers.<Tenant>query().lambda().like(Tenant::getTenantName, name));
       /*
        List<Tenant> list = this.tenantService.list((Wrapper) Wrappers.query().lambda().like((v0) -> {
            return v0.getTenantName();
        }, name));
        }, name));*/
        return R.data(list);
    }