Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-module-system
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-module-system
Commits
d897a714
提交
d897a714
authored
11月 11, 2024
作者:
000516
提交者:
Coding
11月 11, 2024
浏览文件
操作
浏览文件
下载
差异文件
弹窗返回分页数据
弹窗返回分页数据
上级
693cab95
6eedc7e4
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
83 行增加
和
14 行删除
+83
-14
GeneralDaoImpl.java
...n/java/com/sfa/system/domain/dao/impl/GeneralDaoImpl.java
+63
-12
SysDictTypeDaoImpl.java
...va/com/sfa/system/domain/dao/impl/SysDictTypeDaoImpl.java
+1
-1
SysQuery.java
src/main/java/com/sfa/system/domain/entity/SysQuery.java
+5
-0
SysQueryMapper.java
...ain/java/com/sfa/system/domain/mapper/SysQueryMapper.java
+2
-0
GeneralQueryResponse.java
...va/com/sfa/system/pojo/response/GeneralQueryResponse.java
+8
-1
SysQueryMapper.xml
src/main/resources/mapper/system/SysQueryMapper.xml
+4
-0
没有找到文件。
src/main/java/com/sfa/system/domain/dao/impl/GeneralDaoImpl.java
浏览文件 @
d897a714
...
@@ -2,6 +2,10 @@ package com.sfa.system.domain.dao.impl;
...
@@ -2,6 +2,10 @@ package com.sfa.system.domain.dao.impl;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.sfa.common.core.enums.ECode
;
import
com.sfa.common.core.exception.WXLSQLException
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
com.sfa.common.core.web.page.TableSupport
;
import
com.sfa.system.domain.entity.SysQuery
;
import
com.sfa.system.domain.entity.SysQuery
;
import
com.sfa.system.domain.mapper.SysQueryMapper
;
import
com.sfa.system.domain.mapper.SysQueryMapper
;
import
com.sfa.system.pojo.request.GeneralQueryVo
;
import
com.sfa.system.pojo.request.GeneralQueryVo
;
...
@@ -28,38 +32,85 @@ public class GeneralDaoImpl implements IGeneralDao {
...
@@ -28,38 +32,85 @@ public class GeneralDaoImpl implements IGeneralDao {
@Override
@Override
public
GeneralQueryResponse
queryTableDatas
(
GeneralQueryVo
generalQueryVo
)
{
public
GeneralQueryResponse
queryTableDatas
(
GeneralQueryVo
generalQueryVo
)
{
GeneralQueryResponse
generalQueryResponse
=
new
GeneralQueryResponse
();
GeneralQueryResponse
generalQueryResponse
;
SysQuery
sysQuery
=
sysQueryMapper
.
selectById
(
generalQueryVo
.
getQueryId
());
SysQuery
sysQuery
=
sysQueryMapper
.
selectById
(
generalQueryVo
.
getQueryId
());
// 主查询语句、默认查询条件、动态查询条件
// 主查询语句、默认查询条件、动态查询条件
String
querySql
=
sysQuery
.
getQuerySql
();
String
querySql
=
sysQuery
.
getQuerySql
();
String
queryWhere
=
sysQuery
.
getQueryWhere
();
String
queryWhere
=
sysQuery
.
getQueryWhere
();
Map
boxheadSelectMap
=
JSONObject
.
parseObject
(
sysQuery
.
getBoxheadSelect
(),
Map
.
class
);
Map
boxheadSelectMap
=
JSONObject
.
parseObject
(
sysQuery
.
getBoxheadSelect
(),
Map
.
class
);
StringBuilder
sqlBu
=
new
StringBuilder
(
querySql
).
append
(
queryWhere
);
StringBuilder
sqlBu
=
new
StringBuilder
(
querySql
).
append
(
queryWhere
);
StringBuilder
sqlCountBu
=
null
;
if
(
Objects
.
nonNull
(
sysQuery
.
getQueryCountSql
()))
{
sqlCountBu
=
new
StringBuilder
(
sysQuery
.
getQueryCountSql
()).
append
(
queryWhere
);
}
// 动态查询条件、前端参数进行动态拼接 -->>where cooperate_status = '1' and dealer_name like '%苏州%' and dealer_mgr like '%何亚%';
// 动态查询条件、前端参数进行动态拼接 -->>where cooperate_status = '1' and dealer_name like '%苏州%' and dealer_mgr like '%何亚%';
Map
<
String
,
String
>
wheres
=
generalQueryVo
.
getWheres
();
Map
<
String
,
String
>
wheres
=
generalQueryVo
.
getWheres
();
if
(
Objects
.
nonNull
(
boxheadSelectMap
)
&&
Objects
.
nonNull
(
wheres
)){
if
(
Objects
.
nonNull
(
boxheadSelectMap
)
&&
Objects
.
nonNull
(
wheres
))
{
for
(
Map
.
Entry
<
String
,
String
>
entry
:
wheres
.
entrySet
())
{
for
(
Map
.
Entry
<
String
,
String
>
entry
:
wheres
.
entrySet
())
{
String
key
=
entry
.
getKey
();
String
key
=
entry
.
getKey
();
String
value
=
entry
.
getValue
();
String
value
=
entry
.
getValue
();
if
(
Objects
.
isNull
(
value
))
{
continue
;
}
String
selectType
=
boxheadSelectMap
.
get
(
key
).
toString
();
String
selectType
=
boxheadSelectMap
.
get
(
key
).
toString
();
if
(
selectType
.
equals
(
"like"
)){
if
(
selectType
.
equals
(
"like"
))
{
sqlBu
.
append
(
" and "
).
append
(
key
).
append
(
" like '%"
).
append
(
value
).
append
(
"%' "
);
sqlBu
.
append
(
" and "
).
append
(
key
).
append
(
" like '%"
).
append
(
value
).
append
(
"%' "
);
if
(
Objects
.
nonNull
(
sqlCountBu
))
{
sqlCountBu
.
append
(
" and "
).
append
(
key
).
append
(
" like '%"
).
append
(
value
).
append
(
"%' "
);
}
}
}
}
}
}
}
if
(
sysQuery
.
isQueryPage
())
{
List
<
HashMap
<
String
,
Object
>>
objs
=
sysQueryMapper
.
queryTableDatas
(
sqlBu
.
toString
());
generalQueryResponse
=
usePage
(
sysQuery
,
sqlBu
,
sqlCountBu
);
List
<
Map
>
boxhead
=
JSONArray
.
parseArray
(
sysQuery
.
getBoxhead
(),
Map
.
class
);
}
else
{
generalQueryResponse
.
setBoxhead
(
boxhead
)
generalQueryResponse
=
nonusePage
(
sysQuery
,
sqlBu
);
.
setQueryNum
(
sysQuery
.
getQueryNum
())
}
.
setQueryDisplay
(
JSONArray
.
parseArray
(
sysQuery
.
getQueryDisplay
(),
Map
.
class
))
.
setRows
(
objs
);
return
generalQueryResponse
;
return
generalQueryResponse
;
}
}
/**
* 分页逻辑
*
* @param sysQuery 开窗SQL
* @param sqlBu 查询语句
* @return 结果
*/
private
GeneralQueryResponse
usePage
(
SysQuery
sysQuery
,
StringBuilder
sqlBu
,
StringBuilder
sqlCountBu
)
{
if
(
Objects
.
isNull
(
sqlCountBu
)){
throw
new
WXLSQLException
(
ECode
.
SELECT_SQL_NULL_ERROR
);
}
PageInfo
pageInfo
=
TableSupport
.
pageInfo
();
sqlBu
.
append
(
" limit "
).
append
(
pageInfo
.
getSkipNum
()).
append
(
" , "
).
append
(
pageInfo
.
getPageSize
());
List
<
HashMap
<
String
,
Object
>>
objs
=
sysQueryMapper
.
queryTableDatas
(
sqlBu
.
toString
());
int
total
=
sysQueryMapper
.
queryTotalCount
(
sqlCountBu
.
toString
());
pageInfo
.
setTotal
(
total
);
pageInfo
.
setRows
(
objs
);
return
new
GeneralQueryResponse
().
setBoxhead
(
JSONArray
.
parseArray
(
sysQuery
.
getBoxhead
(),
Map
.
class
))
.
setQueryNum
(
sysQuery
.
getQueryNum
())
.
setQueryDisplay
(
JSONArray
.
parseArray
(
sysQuery
.
getQueryDisplay
(),
Map
.
class
))
.
setPageInfo
(
pageInfo
);
}
/**
* 未分页逻辑
*
* @param sysQuery 开窗SQL
* @param sqlBu 查询语句
* @return 结果
*/
private
GeneralQueryResponse
nonusePage
(
SysQuery
sysQuery
,
StringBuilder
sqlBu
)
{
List
<
HashMap
<
String
,
Object
>>
objs
=
sysQueryMapper
.
queryTableDatas
(
sqlBu
.
toString
());
List
<
Map
>
boxhead
=
JSONArray
.
parseArray
(
sysQuery
.
getBoxhead
(),
Map
.
class
);
return
new
GeneralQueryResponse
().
setBoxhead
(
boxhead
)
.
setQueryNum
(
sysQuery
.
getQueryNum
())
.
setQueryDisplay
(
JSONArray
.
parseArray
(
sysQuery
.
getQueryDisplay
(),
Map
.
class
))
.
setRows
(
objs
);
}
}
}
src/main/java/com/sfa/system/domain/dao/impl/SysDictTypeDaoImpl.java
浏览文件 @
d897a714
...
@@ -70,7 +70,7 @@ public class SysDictTypeDaoImpl implements ISysDictTypeDao
...
@@ -70,7 +70,7 @@ public class SysDictTypeDaoImpl implements ISysDictTypeDao
qw
.
like
(
SysDictType:
:
getDictName
,
dictType
.
getDictName
());
qw
.
like
(
SysDictType:
:
getDictName
,
dictType
.
getDictName
());
}
}
if
(
StringUtils
.
isNotEmpty
(
dictType
.
getDictType
())){
if
(
StringUtils
.
isNotEmpty
(
dictType
.
getDictType
())){
qw
.
eq
(
SysDictType:
:
getDictType
,
dictType
.
getDictType
());
qw
.
like
(
SysDictType:
:
getDictType
,
dictType
.
getDictType
());
}
}
return
qw
;
return
qw
;
}
}
...
...
src/main/java/com/sfa/system/domain/entity/SysQuery.java
浏览文件 @
d897a714
...
@@ -62,6 +62,11 @@ public class SysQuery extends BaseDo {
...
@@ -62,6 +62,11 @@ public class SysQuery extends BaseDo {
*/
*/
private
boolean
queryPage
;
private
boolean
queryPage
;
/**
* 当前sql是否分页
*/
private
String
queryCountSql
;
/**
/**
* 表头栏中的样式
* 表头栏中的样式
*/
*/
...
...
src/main/java/com/sfa/system/domain/mapper/SysQueryMapper.java
浏览文件 @
d897a714
...
@@ -19,6 +19,8 @@ import java.util.List;
...
@@ -19,6 +19,8 @@ import java.util.List;
public
interface
SysQueryMapper
extends
BaseMapper
<
SysQuery
>
{
public
interface
SysQueryMapper
extends
BaseMapper
<
SysQuery
>
{
List
<
HashMap
<
String
,
Object
>>
queryTableDatas
(
String
sqlString
);
List
<
HashMap
<
String
,
Object
>>
queryTableDatas
(
String
sqlString
);
int
queryTotalCount
(
String
sqlCountString
);
}
}
...
...
src/main/java/com/sfa/system/pojo/response/GeneralQueryResponse.java
浏览文件 @
d897a714
package
com
.
sfa
.
system
.
pojo
.
response
;
package
com
.
sfa
.
system
.
pojo
.
response
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Accessors
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* @author : liqiulin
* @author : liqiulin
* @date : 2024-10-24 18
* @date : 2024-10-24 18
* @describe :
* @describe :
*/
*/
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
@Accessors
(
chain
=
true
)
@Data
@Data
public
class
GeneralQueryResponse
<
T
>
{
public
class
GeneralQueryResponse
<
T
>
{
...
@@ -29,4 +34,6 @@ public class GeneralQueryResponse <T> {
...
@@ -29,4 +34,6 @@ public class GeneralQueryResponse <T> {
List
<
T
>
queryDisplay
;
List
<
T
>
queryDisplay
;
PageInfo
pageInfo
;
}
}
src/main/resources/mapper/system/SysQueryMapper.xml
浏览文件 @
d897a714
...
@@ -35,4 +35,8 @@
...
@@ -35,4 +35,8 @@
<select
id=
"queryTableDatas"
resultType=
"java.util.HashMap"
>
<select
id=
"queryTableDatas"
resultType=
"java.util.HashMap"
>
${sqlString}
${sqlString}
</select>
</select>
<select
id=
"queryTotalCount"
resultType=
"integer"
>
${sqlCountString}
</select>
</mapper>
</mapper>
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论