起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2387|回复: 7

[处理中3] wex5的grid树形数据过滤问题

[复制链接]

32

主题

135

帖子

580

积分

高级会员

Rank: 4

积分
580
QQ
发表于 2018-3-28 15:15:13 | 显示全部楼层 |阅读模式
如图,树形结构是4级,data设置的是延迟加载,请问怎么实现图中要求的过滤,过滤条件应该写在哪个地方?
企业微信截图_15222211223339.png
企业微信截图_15222210854547.png
发表于 2018-3-28 15:35:36 | 显示全部楼层
那就要自定义sql查询了,根据当前用户,判断用户是谁 ,然后执行不同的sql查询语句,查询不同的数据

前端只读规则 也是判断当前人   return true或 false 即可!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

32

主题

135

帖子

580

积分

高级会员

Rank: 4

积分
580
QQ
 楼主| 发表于 2018-3-29 14:01:11 | 显示全部楼层
liangyongfei 发表于 2018-3-28 15:35
那就要自定义sql查询了,根据当前用户,判断用户是谁 ,然后执行不同的sql查询语句,查询不同的数据

前端 ...

只写SQL行么,还是要写存储过程,能不能大致告诉一下SQL的查询思路
回复 支持 反对

使用道具 举报

发表于 2018-3-29 16:44:37 | 显示全部楼层
会爬树程序猿 发表于 2018-3-29 14:01
只写SQL行么,还是要写存储过程,能不能大致告诉一下SQL的查询思路

就是自定义action 查询sql语句
action 传递参数,把用户信息传过去, 在action 中写代码判断用户是谁  ,然后执行不同的sql语句

自定义action 写代码封装树形数据
http://docs.wex5.com/wex5-server-question-list-2037/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

32

主题

135

帖子

580

积分

高级会员

Rank: 4

积分
580
QQ
 楼主| 发表于 2018-3-30 14:54:22 | 显示全部楼层
本帖最后由 会爬树程序猿 于 2018-3-30 15:30 编辑
liangyongfei 发表于 2018-3-29 16:44
就是自定义action 查询sql语句
action 传递参数,把用户信息传过去, 在action 中写代码判断用户是谁  , ...

这样行不行,我在MySQL中写了函数,这边自定义action中写SQL调用函数把需要的数据查出来,前台queryAction调用这个action,设置参数,会自己解析成树形吗?这样行得通吗?
SQL语句:select * from wr_project_info where                        FIND_IN_SET(PROJ_CODE,getParentProjectList(:leaderID)) or
                        FIND_IN_SET(PROJ_CODE,getChildProjectList(:leaderID))

报错:com.justep.baas.action.ActionException: Action[projectManage/projectManage/queryProjectFilterAction]执行失败,SQL执行失败,SQL:SELECT * FROM wr_project_info WHERE FIND_IN_SET(PROJ_CODE,getParentProjectList(:leaderID) ) OR FIND_IN_SET(PROJ_CODE,getChildProjectList(:leaderID) )  LIMIT 0,20三月 30, 2018 2:55:34 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet WeX5_Baas_Servlet threw exception
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':leaderID) ) OR FIND_IN_SET(PROJ_CODE,getChildProjectList(:leaderID) )  LIMIT 0,' at line 1
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

企业微信截图_15223927374978.png
企业微信截图_15223929463577.png
企业微信截图_15223950213696.png
回复 支持 反对

使用道具 举报

发表于 2018-3-30 16:47:30 | 显示全部楼层
会爬树程序猿 发表于 2018-3-30 14:54
这样行不行,我在MySQL中写了函数,这边自定义action中写SQL调用函数把需要的数据查出来,前台queryAction ...

最好是自己写java代码  ,通过java   jdbc 写sql语句执行试试吧!
这样还可以调试 java  看sql语句对不对

现在报错看来是sql执行错误,但是sql哪儿错了,不好调试
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

32

主题

135

帖子

580

积分

高级会员

Rank: 4

积分
580
QQ
 楼主| 发表于 2018-4-2 09:39:38 | 显示全部楼层
liangyongfei 发表于 2018-3-30 16:47
最好是自己写java代码  ,通过java   jdbc 写sql语句执行试试吧!
这样还可以调试 java  看sql语句对不对 ...

SQL可以自己写,但是对应的action前台怎么去调?是放在BassData的queryAction中呢?还是放cData然后在js中调用Acton再load?还有个关键问题页面的分页怎么去实现?
回复 支持 反对

使用道具 举报

发表于 2018-4-2 11:21:12 | 显示全部楼层
会爬树程序猿 发表于 2018-4-2 09:39
SQL可以自己写,但是对应的action前台怎么去调?是放在BassData的queryAction中呢?还是放cData然后在js ...

分页需要注意的是,设置总行数就行
http://docs.wex5.com/wex5-ui-question-list-2028/

前端是js调试   http://docs.wex5.com/js-debug/

后端是java调试  http://docs.wex5.com/wex5-studio-question-list-2001/

就是最终字符串拼接的sql语句,自己拿到数据库 的 控制台去运行,能查到结果就好
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 07:01 , Processed in 0.111776 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表