|
一、实现效果
如图1,在列表上输入查询的信息,点击查询按钮,按照自己的业务规则方式进行查询。
二、实现思路
文字描述,可以配图。
三、具体操作
1、找到这个查询选择对应的功能编码,如图2:
2、修改该功能的action,如图3:
3、重写/je/load方法实现自定义业务的加载方法。如图4:
四、相关代码(可选)
- @Controller
- @RequestMapping(value = "/je/ftbp/tycqy")
- public class TycqyController extends AbstractPlatformController {
- private static final Logger logger = LoggerFactory.getLogger(TycqyController.class);
- @Autowired
- private TycqyService tycqyService;
- @RequestMapping(
- value = {"/load"},
- method = {RequestMethod.POST},
- produces = {"application/json; charset=utf-8"}
- )
- @ResponseBody
- public void load(MethodArgument param) {
- try {
- if (isSecurity(param)) {
- Page page = new Page<>(param.getPage(), param.getLimit());
- /**
- * 取的过滤条件
- */
- Query query = param.getQuery();
- System.out.println(query.getCustom().size());
- logger.info("条件数" + query.getCustom().size());
- /**
- * 如果没有查询条件直接返回空
- */
- if(query.getCustom().size() == 0){
- this.toWrite(BaseRespResult.successResultPage(page.getRecords(), (long)page.getTotal()), param);
- return;
- }
- page = this.manager.load(param);
- if (page == null) {
- this.toWrite(BaseRespResult.successResultPage(Lists.newArrayList(), 0L), param);
- return;
- }
- /**
- * 如果未查询到数据, 就去天眼查去查
- */
- if(page.getRecords().size() == 0){
- logger.info("未查询到数据, 去天眼查查询");
- System.out.println(query.getCustom().get(0).getValue());
- JSONArray json = JSONArray.fromObject(query.getCustom().get(0).getValue()); //把数组转化为json集合
- if (json.size() > 0) {
- JSONObject job = json.getJSONObject(0);
- String value = ""; //搜索条件
- if (job.get("value") != null && !"".equals(job.get("value"))) {
- value = job.get("value").toString();
- }
- /**
- * 查询条件不可为空
- */
- if(!"".equals(value)){
- logger.info("天眼查的参数" + value);
- /**
- * 天眼查查询
- */
- List<Map<String, Object>> listMap = tycqyService.selectTycDatas(value);
- page = this.manager.load(param);
- this.toWrite(BaseRespResult.successResultPage(page.getRecords(), (long)page.getTotal()), param);
- //this.toWrite(BaseRespResult.successResultPage(listMap, (long)listMap.size()), param);
- return;
- }
- }
- }
- this.toWrite(BaseRespResult.successResultPage(page.getRecords(), (long)page.getTotal()), param);
- } else {
- this.dynaManager.load(param);
- }
- } catch (PlatformException var3) {
- throw var3;
- } catch (Exception var4) {
- throw new PlatformException("数据加载失败!", PlatformExceptionEnum.UNKOWN_ERROR, var4);
- }
- }
- }
复制代码
五、总结(可选)
功能列表的查询功能可以根据业务自定义实现,可以通过getQuery()获取你在查询框里面输入的值。
六、关键字
自定义查询,load方法,重写/je/load,重写load方法
|
|