controller层:@RestController
@RequestMapping("/userInfo")
public class UserApplyInfoController extends BaseController
{
@Autowired
private UserCRUDEService userCRUDEService;
/**
* 未完成的
*
* @param map
* @return
*/
@PostMapping("/queryNotCompleted")
@ResponseBody
@RsaSecurityParameter
public Result queryNotCompleted(@RequestBody Map map)
{
Integer page = Integer.valueOf(map.get("currPage").toString());
Integer pageSize = Integer.valueOf(map.get("pageSize").toString());
PageHelper.startPage(page, pageSize);
List<UserApplyInfo> userApplyInfos = userCRUDEService.queryDateByArray(map);
PageInfo pageInfo = new PageInfo(userApplyInfos);
return success(pageInfo);
}
}
代码解释:
Result返回类型是自定的统一API封装:
代码如下:
package com.pro.utils;
import com.alibaba.fastjson.JSON;
/**
* 统一API响应结果封装
*/
public class Result<T> {
private int code;
private String message;
private T data;
private static final String DEFAULT_SUCCESS_MESSAGE = "SUCCESS";
public Result setCode(int code) {
this.code = code;
return this;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
public Result setMessage(String message) {
this.message = message;
return this;
}
public T getData() {
return data;
}
public Result setData(T data) {
this.data = data;
return this;
}
@Override
public String toString() {
return JSON.toJSONString(this);
}
}
还有继承的BaseController类:
package com.pro.utils;
import org.apache.commons.lang3.StringUtils;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
public class BaseController {
private static final String DEFAULT_SUCCESS_MESSAGE = "SUCCESS";
public List<PropertFilter> BuildPropertFilter(HttpServletRequest request){
List<PropertFilter> filters=new ArrayList<PropertFilter>();
List<String> keys = new ArrayList<String>(request.getParameterMap().keySet());
for(String key:keys){
String[] strs=key.split("_");
if("filter".equals(strs[0])){
if(StringUtils.isNotEmpty(request.getParameter(key))) {
PropertFilter filter=new PropertFilter();
filter.setQueryType(strs[1]);
filter.setField(strs[2]);
filter.setValue(request.getParameter(key));
filters.add(filter);
}
}
}
return filters;
}
public Result success() {
return new Result()
.setCode(ResultCode.SUCCESS.code())
.setMessage(DEFAULT_SUCCESS_MESSAGE);
}
public <T> Result<T> success(T data) {
return new Result()
.setCode(ResultCode.SUCCESS.code())
.setMessage(DEFAULT_SUCCESS_MESSAGE)
.setData(data);
}
public Result fail(String message) {
return new Result()
.setCode(ResultCode.FAIL.code())
.setMessage(message);
}
}
是封装了Result类的返回类型和一些通用返回方法的。
其他的都是一些通用方法,其中PageHelp是mybatis自带的分页插件,直接传入分页参数即可。
service层:
public interface UserCRUDEService { List<UserApplyInfo> queryDateByArray(Map map); }
serviceImpl层:
public class UserCRUDServiceImpl implements UserCRUDEService { @Autowired private UserApplyInfoCrudDao userApplyInfoCrud; @Override public List<UserApplyInfo> queryDateByArray(Map map) { return userApplyInfoCrud.selectAll(map); } }
代码解释:
直接调Dao层的查询方法即可
Dao层:
import com.pro.model.UserApplyInfo; import org.apache.ibatis.annotations.Mapper; import java.util.List; import java.util.Map; @Mapper public interface UserApplyInfoCrudDao { List<UserApplyInfo> selectAll(Map map); }
pojo类:
public class UserApplyInfo { private Integer id; private String name; private String idnumber; private String phone; private String bank; private String banknumber; private Double money; private String serialcode; private Integer state; private Date systemtime; private String ishangup; private Integer isCashangup; private String historyhangup; //手续费 private Double servicecharge; //总金额 private Double totalmoney; private List<UserDetailed> userDetailedList; public List<UserDetailed> getUserDetailedList() { return userDetailedList; } public void setUserDetailedList(List<UserDetailed> userDetailedList) { this.userDetailedList = userDetailedList; } public Double getServicecharge() { return servicecharge; } public void setServicecharge(Double servicecharge) { this.servicecharge = servicecharge; } public Double getTotalmoney() { return totalmoney; } public void setTotalmoney(Double totalmoney) { this.totalmoney = totalmoney; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getIdnumber() { return idnumber; } public void setIdnumber(String idnumber) { this.idnumber = idnumber; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } public String getBank() { return bank; } public void setBank(String bank) { this.bank = bank; } public String getBanknumber() { return banknumber; } public void setBanknumber(String banknumber) { this.banknumber = banknumber; } public Double getMoney() { return money; } public void setMoney(Double money) { this.money = money; } public String getSerialcode() { return serialcode; } public void setSerialcode(String serialcode) { this.serialcode = serialcode; } public Integer getState() { return state; } public void setState(Integer state) { this.state = state; } public Date getSystemtime() { return systemtime; } public void setSystemtime(Date systemtime) { this.systemtime = systemtime; } public String getIshangup() { return ishangup; } public void setIshangup(String ishangup) { this.ishangup = ishangup; } public Integer getIsCashangup() { return isCashangup; } public void setIsCashangup(Integer isCashangup) { this.isCashangup = isCashangup; } public String getHistoryhangup() { return historyhangup; } public void setHistoryhangup(String historyhangup) { this.historyhangup = historyhangup; } }
mapper.xml文件:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.pro.dao.UserApplyInfoCrudDao"> <sql id="demo"> id,name,idnumber,phone,bank,banknumber,money,serialcode,state,systemtime,isCashangup,historyhangup,servicecharge,totalmoney </sql> <select id="selectAll" parameterType="map" resultType="com.pro.model.UserApplyInfo"> SELECT <include refid="demo"/> FROM user_apply_info where 1=1 <if test="id != null and id != ''"> and id=#{id} </if> <if test="name != null and name != ''"> and name=#{name} </if> <if test="state != null and state != ''"> and state=#{state} </if> <if test="isCashangup != null and isCashangup != ''"> and isCashangup=#{isCashangup} </if> <if test="historyhangup != null and historyhangup != ''"> and historyhangup=#{historyhangup} </if> <if test="servicecharge != null and servicecharge != ''"> and servicecharge=#{servicecharge} </if> <if test="totalmoney != null and totalmoney != ''"> and totalmoney=#{totalmoney} </if> </select> </mapper>
代码解释:
可以查询出需要的信息