进阶之路002 增删改查/数据导入导出之查询功能

//Controller

@ResponseBody
@RequestMapping("/lightSplitBox")
@RequiresPermissions("zkgj:detail:list")
public R lightSplitBox(@RequestParam Map<String, Object> params){

PageUtils page = detailService.lightSplitBox(params);

String s=(String) params.get("params001");
return R.ok().put("page", page);
}

//Service接口

PageUtils lightSplitBox(Map<String, Object> params);//查询所有的分光想

//接口实现类

@Override
public PageUtils lightSplitBox(Map<String, Object> params) {
long page=Long.parseLong((String) params.get("page"));
long limit=Long.parseLong((String) params.get("limit"));
String order=(String) params.get("order");//获取排序方式
String sidx=(String) params.get("sidx");//获取排序的字段
DetailEntity detailEntity=new DetailEntity();
String opticalBoxName=(String)params.get("opticalBoxName");//获取查询参数
String opticalBoxType=(String)params.get("opticalBoxType");//获取查询参数
Page<DetailEntity> pagination = new Page<>(page,limit); //分页
List<DetailEntity> list = detailDao.lightSplitBox(pagination,order,sidx,opticalBoxType,opticalBoxName);
pagination.setRecords(list);
return new PageUtils(pagination);
}

//Dao层

List<DetailEntity> lightSplitBox(@Param("page") Page<DetailEntity> page,@Param("order") String order,@Param("sidx") String sidx,@Param("opticalBoxType") String opticalBoxType,@Param("opticalBoxName") String opticalBoxName);

//sql

<select id="getDetail" resultType="io.renren.modules.zkgj.entity.DetailEntity">
select
DATE_FORMAT(a.check_date,‘%Y-%m-%d‘) AS checkDateString,
a.id,
a.operator,
a.user_info,
a.check_date as checkDate,
COUNT(`operator`) AS sumPort
FROM tb_detail a
<where>
<if test="operator !=null and operator != ‘‘ ">
and a.operator like ‘%${operator}%‘
</if>
<if test="checkDateString !=null and checkDateString != ‘‘ ">
and DATE_FORMAT(a.check_date,‘%Y-%m-%d‘)=#{checkDateString}
</if>
<if test="params.sql_filter!=null">
and ${params.sql_filter}
</if>
</where>
GROUP BY DATE_FORMAT(a.check_date,‘%Y-%m-%d‘),a.operator

<choose>
<when test="sidx !=‘‘ and sidx != null">
ORDER BY a.${sidx} ${order}
</when>
<otherwise>
ORDER BY a.check_date desc
</otherwise>
</choose>
</select>

原文地址:https://www.cnblogs.com/pureray-hui/p/12371453.html

时间: 2024-10-12 03:53:55

进阶之路002 增删改查/数据导入导出之查询功能的相关文章

前后台交互实例二:前台通过django在数据库里面增删改查数据

url(r'^userinfo/', views.userinfo), url(r'^userdetail-(?P<nid>\d+)/', views.userdetail), url(r'^userdel-(?P<nid>\d+)/', views.userdel), url(r'^useredit-(?P<nid>\d+)/', views.user_edit), views def userinfo(request): if request.method ==&q

面向对象---封装增删改查+数据分页

<meta charset="UTF-8"> <?php class F{ public $locahost; public $name; public $pwd; public $database; public function __construct($locahost,$name,$pwd,$database) { $this->locahost = $locahost; $this->name = $name; $this->pwd = $

反射实现增删改查(DAO层)——查询数据

先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 数据查询 * */ @Override public List<?> queryObject(List<Map<String, Object>> params, String tableName) { List<Object> objectList = new ArrayList<Object>(); StringBuilder sql = new StringBuilder(

MyBatis简单的增删改查以及简单的分页查询实现

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <typeAliases> <!--

NET如何使用ELinq-实现增删改查

1 通过对ELinq主页的参考和学习,以及在项目中(wpf项目中用到的)中应用,ORM框架中的ELinq确实非常的强大,特此以建立wpf项目为例子来总结下如何在项目中应用ELinq,要想使用这个框架首先就应该添加对框架的应用,如何添加呢? 1)在工具下拉菜单中找到NuGet程序包管理器(英文名NuGet package manage ),在NuGet程序包管理器下拉菜单中找到程序包管理器控制台(英文名package manage console)成功之后将会出现如下的界面 然后将程序源包改成al

DataGridView中进行增删改查

首先我们需要知道是在哪个数据库中的哪个表进行增删改查: 这就需要我们: 建立给连接服务器的类:(可以在方法类中建立) 建立一个对列名进行封装的类:方便数据之间的传接:(学到Linq-sql时这些就简便了) 建立一个方法类:进行增删改查方法的调用: 查询: 删除: 增加:增加数据时,我们一般都是要弹出一个界面进行书写添加: 主界面的增加按钮就是弹出增加界面: 修改:修改时我们也是要弹出界面进行修改,修改就有一个主键项是不能修改的: 点击修改按钮时: 1.要获取选中的修改项: 2.要弹出修改界面:

数据库基础类型和增删改查

数据类型: 整数型:bigint.int.smallint.mediumint.tinyint 小数类型:decimal.numeric 浮点型:real.float.double 位型:bit 字符型:char.varchar.longvarchar.longtext unicode字符型:nchar.nvarchar 文本型:text.tinytext 二进制型:binary.varbinary 日期时间类型:date.time.datetime.timestamp.year Datetim

mongoVUE的增删改查操作使用说明;一、查询;1、精确查询;1)右键点击集合名,再左键点击Find;或者直接点击工具栏上的Find;2)查询界面,包括四个区域;{Find}区,查询条件格式{&quot;se

mongoVUE的增删改查操作使用说明 一. 查询 1. 精确查询 1)右键点击集合名,再左键点击Find 或者直接点击工具栏上的Find 2)查询界面,包括四个区域 {Find}区,查询条件格式{"sendId":"000101"}表示查询sendId=000101的记录, (注:mongodb区分大小写,写成{"sendid":"000101"}会查询不到) 查询条件包含and时,格式为:{"sendId&quo

laravel orm进行增删改查

https://laravelacademy.org/post/9699.html 建议用DB门面直接操作数据库,因为ORM性能低.数据查询上面,ORM不会比DB差的,就比如with,是用了sql最基本的拆语句优化.ORM的损耗仅仅是代码层面的,这已经不算是问题了. ORM适用于一般到中等复杂度的查询,也适用于各种模型操作,比如有一个关系targets,你可以直接用targets()->delete()等等进行关系数据操作.ORM中的软删除,自动更新时间字段,字段保护,字段类型转换,都会在一些规