1.接口协议
@H_404_18@ | 变量名@H_404_18@ | 含义@H_404_18@ | 类型@H_404_18@ | 备注@H_404_18@ |
@H_404_18@ | cmd@H_404_18@ | 请求指令@H_404_18@ | number@H_404_18@ | 100619@H_404_18@ |
@H_404_18@ | dt@H_404_18@ | 请求时间@H_404_18@ | number@H_404_18@ | 最后一条记录或第一条记录时间,如果为0则为最新@H_404_18@ |
@H_404_18@ | homeworkId@H_404_18@ | 作业ID@H_404_18@ | number@H_404_18@ | @H_404_18@ |
@H_404_18@ | pullType@H_404_18@ | 获取类型@H_404_18@ | number@H_404_18@ | 1为下拉刷新,2为上拉获取历史数据@H_404_18@ |
@H_404_18@ | reqUserType@H_404_18@ | 成果展示用户类型@H_404_18@ | number@H_404_18@ | @H_404_18@ |
@H_404_18@ | size@H_404_18@ | 请求条数@H_404_18@ | number@H_404_18@ |
2.接口设计的参数
private int homeworkId; private int reqUserType; private long dt; private int pullType; private int size;
3.mybatis的sql
<select id="queryHomeworkShowList" resultType="qtone.xxt.gz.data3.bean.homework.HomeworkShowBean"> SELECT * FROM ( select t.*,row_number() over (order by t.dt desc) rn from ( select hs.CONTENT as asComment,hs.UPLOAD_TIME as dt,hs.id as id,hs.PATH as original,hs.THUMB_PATH as thumb,<if test="hslReqParam.reqUserType==1"> xt.username as asUser,</if> <if test="hslReqParam.reqUserType==2"> xf.name as asUser,</if> hs.USER_ID as userId,hs.user_type as userType FROM ${hslReqParam.area}_HOMEWORK_SHOW hs <if test="hslReqParam.reqUserType==1"> left join xj_teacher xt on hs.user_id=xt.id </if> <if test="hslReqParam.reqUserType==2"> left join ${hslReqParam.area}_xj_family xf on hs.user_id=xf.id </if> where hs.homework_id=#{hslReqParam.homeworkId} <if test="hslReqParam.reqUserType==2"> AND hs.USER_TYPE=2 </if> <if test="hslReqParam.reqUserType==1"> AND hs.USER_TYPE=1 </if> <if test="hslReqParam.pullType==1"> <if test="dt !=null and dt!=''"> <![CDATA[ AND TO_CHAR (hs.UPLOAD_TIME,'yyyy-mm-dd hh24:mi:ssxff')>#{dt} ]]> </if> </if> <if test="hslReqParam.pullType==2"> <if test="dt !=null and dt!=''"> <![CDATA[ AND TO_CHAR (hs.UPLOAD_TIME,'yyyy-mm-dd hh24:mi:ssxff')<#{dt} ]]> </if> </if> <![CDATA[ )t ) WHERE rn <= #{hslReqParam.size} and rn >=1 ]]> </select>
提醒自己:这次是用的毫秒来算记录的先后. 所以先格式化请求时间
String dt = DateUtil.getDateFromTimeDate(reqData.getDt(),"yyyy-MM-dd HH:mm:ss.SSS");
数据库表字段 datetime类型设计为 timeStamp
UPLOAD_TIMENTIMESTAMP(8)Y上传时间