Search in sources :

Example 1 with UserDTO

use of diboot.core.test.binder.dto.UserDTO in project diboot by dibo-software.

the class TestJoinQuery method testDynamicSqlQueryWithMiddleTable.

/**
 * 测试有中间表的动态sql join
 */
@Test
public void testDynamicSqlQueryWithMiddleTable() {
    // 初始化DTO,测试不涉及关联的情况
    UserDTO dto = new UserDTO();
    dto.setDeptName("研发组");
    dto.setDeptId(10002L);
    // builder直接查询,不分页 3条结果
    List<User> builderResultList = QueryBuilder.toDynamicJoinQueryWrapper(dto).queryList(User.class);
    Assert.assertTrue(builderResultList.size() == 2);
    dto.setOrgName("苏州帝博");
    builderResultList = QueryBuilder.toDynamicJoinQueryWrapper(dto).queryList(User.class);
    Assert.assertTrue(builderResultList.size() == 2);
    dto.setOrgName("");
    builderResultList = QueryBuilder.toDynamicJoinQueryWrapper(dto).queryList(User.class);
    Assert.assertTrue(builderResultList.size() == 2);
    List<String> roleCodes = new ArrayList<>();
    roleCodes.add("ADMIN");
    roleCodes.add("OTHER");
    dto.setRoleCodes(roleCodes);
    builderResultList = QueryBuilder.toDynamicJoinQueryWrapper(dto).queryList(User.class);
    Assert.assertTrue(builderResultList.size() == 1);
}
Also used : User(diboot.core.test.binder.entity.User) UserDTO(diboot.core.test.binder.dto.UserDTO) ArrayList(java.util.ArrayList) Test(org.junit.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest)

Aggregations

UserDTO (diboot.core.test.binder.dto.UserDTO)1 User (diboot.core.test.binder.entity.User)1 ArrayList (java.util.ArrayList)1 Test (org.junit.Test)1 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)1