Commit 05f9c9b1 authored by codezwjava's avatar codezwjava

后台--订单分页查询实现

parent f9f26cc9
......@@ -2,10 +2,12 @@ package cn.wisenergy.mapper;
import cn.wisenergy.model.app.OrderInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
......@@ -57,7 +59,29 @@ public interface OrderMapper extends BaseMapper<OrderInfo> {
*/
List<OrderInfo> getByCreateTime(@Param("created") Date created);
/**
* 根据升级状态获取订单数据
* @param levelStatus
* @return
*/
List<OrderInfo> getByLevelStatus(int levelStatus);
/**
* 根据月度任务状态获取订单数据
* @param monthOrderStatus
* @return
*/
List<OrderInfo> getByMonthOrderStatus(int monthOrderStatus);
/**
* 总条数
* @return
*/
int count();
/**
* 分页查询订单信息
* @param map
*/
List<OrderInfo> findByPage(HashMap<String, Object> map);
}
......@@ -176,4 +176,26 @@
success_time is not null
</select>
<select id="findByPage" resultType="cn.wisenergy.model.app.OrderInfo">
select
<include refid="cols_all"/>
from
<include refid="table"/>
<where>
<if test="userId != null and userId != ''">
user_id=#{userId}
</if>
</where>
order by create_time desc
limit #{startNum},#{endNum}
</select>
<select id="count" resultType="java.lang.Integer">
select count(1)
from
<include refid="table"/>
</select>
</mapper>
\ No newline at end of file
package cn.wisenergy.model.dto;
import cn.wisenergy.common.constant.CacheConstants;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author 86187
*/
@Data
@ApiModel("AccountInfoQuery")
public class OrderInfoQuery {
/**
* 用户id
*/
@ApiModelProperty(value = "用户id",name = "userId")
private String userId;
/**
* 页码
*/
@ApiModelProperty(value = "页码", name = "pageNo")
private Integer pageNo;
/**
* 页条数
*/
@ApiModelProperty(value = "页条数", name = "pageSize")
private Integer pageSize;
private Integer startNum;
private Integer endNum;
}
package cn.wisenergy.service.app;
import cn.wisenergy.common.utils.R;
import cn.wisenergy.model.app.OrderInfo;
import cn.wisenergy.model.app.User;
import cn.wisenergy.model.dto.OrderInfoQuery;
import com.github.pagehelper.PageInfo;
import com.youzan.cloud.open.sdk.common.exception.SDKException;
import com.youzan.cloud.open.sdk.gen.v4_0_0.model.YouzanTradesSoldGetResult;
/**
*@ Description: 订单接口定义
......@@ -22,4 +26,10 @@ public interface OrderService {
* @throws SDKException
*/
void getYouZanOrdersForUpdateTime() throws SDKException;
/**
* 分页查询所有订单数据
* @return
*/
R<PageInfo<OrderInfo>> findByPage(OrderInfoQuery query);
}
package cn.wisenergy.service.app.impl;
import cn.wisenergy.common.constant.CommonAttributes;
import cn.wisenergy.common.utils.R;
import cn.wisenergy.mapper.OrderMapper;
import cn.wisenergy.mapper.UsersMapper;
import cn.wisenergy.model.app.OrderInfo;
import cn.wisenergy.model.dto.AccountInfoQuery;
import cn.wisenergy.model.dto.OrderInfoQuery;
import cn.wisenergy.service.app.OrderService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageInfo;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.youzan.cloud.open.sdk.common.exception.SDKException;
import com.youzan.cloud.open.sdk.core.client.auth.Token;
......@@ -24,6 +29,7 @@ import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
......@@ -70,12 +76,12 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
// startCreatedDate = sdf.parse("2021-01-28 11:04:01");
// endCreatedDate = sdf.parse("2021-03-1 16:39:59");
//当前时间的前1分钟
startCreatedDate = sdf.parse(sdf.format(new Date(date.getTime()-(long) 5*60*1000)));
log.info("订单创建开始时间"+sdf.format(startCreatedDate));
startCreatedDate = sdf.parse(sdf.format(new Date(date.getTime() - (long) 5 * 60 * 1000)));
log.info("订单创建开始时间" + sdf.format(startCreatedDate));
endCreatedDate = sdf.parse(sdf.format(date));
String format = sdf.format(date);
log.info("订单创建结束时间"+sdf.format(endCreatedDate));
log.info("订单创建结束时间" + sdf.format(endCreatedDate));
} catch (ParseException e) {
e.printStackTrace();
}
......@@ -104,9 +110,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
orderInfo.setItemId(itemList.toString());
//有赞的outer_user_id 与有赞的对应关系是邀请码 邀请码唯一
String outerUserId = buyerInfo.getOuterUserId();
log.info("有赞返回OutUserId------------"+outerUserId);
log.info("有赞返回OutUserId------------" + outerUserId);
String userId = usersMapper.getUserIdByIntiveCode(outerUserId);
log.info("对应西田森系统中的用户Id--------"+userId);
log.info("对应西田森系统中的用户Id--------" + userId);
orderInfo.setUserId(userId);
//支付方式
orderInfo.setPayType(youzanOrderInfo.getPayType().toString());
......@@ -138,7 +144,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
orderInfo.setMonthOrderStatus(0);
//monthly_task_status //月度任务处理状态
orderInfo.setMonthlyTaskStatus(0);
log.info("根据创建时间获取有赞订单号:"+youzanOrderInfo.getTid());
log.info("根据创建时间获取有赞订单号:" + youzanOrderInfo.getTid());
orderMapper.insertYouZanOrders(orderInfo);
}
}
......@@ -161,10 +167,10 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
try {
// startUpdateDate = sdf.parse("2021-02-28 11:04:01");
// endUpdateDate = sdf.parse("2021-03-2 16:39:59");
startUpdateDate = sdf.parse(sdf.format(new Date(date.getTime()-(long) 5*60*1000)));
log.info("订单修改开始时间"+sdf.format(startUpdateDate));
startUpdateDate = sdf.parse(sdf.format(new Date(date.getTime() - (long) 5 * 60 * 1000)));
log.info("订单修改开始时间" + sdf.format(startUpdateDate));
endUpdateDate = sdf.parse(sdf.format(date));
log.info("订单修改结束时间"+sdf.format(endUpdateDate));
log.info("订单修改结束时间" + sdf.format(endUpdateDate));
} catch (ParseException e) {
e.printStackTrace();
}
......@@ -185,7 +191,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
OrderInfo orderByTid = orderMapper.getByTid(tid);
//确保是同一笔订单且订单的success_time=null是进行订单success_time状态修改
if (orderByTid != null && orderByTid.getSuccessTime() == null){
if (orderByTid != null && orderByTid.getSuccessTime() == null) {
//支付方式
orderInfo.setPayType(youzanOrderInfo.getPayType().toString());
//有赞update_time
......@@ -205,7 +211,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
//payment
orderInfo.setPayment(new BigDecimal(payInfo.getPayment()));
log.info("根据修改时间获取有赞订单号:"+youzanOrderInfo.getTid());
log.info("根据修改时间获取有赞订单号:" + youzanOrderInfo.getTid());
//修改订单数据
orderMapper.updateById(orderInfo);
}
......@@ -228,10 +234,63 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, OrderInfo> implem
.build();
OAuthToken oAuthToken = yzClient.getOAuthToken(tokenParameter);
String accessToken = oAuthToken.getAccessToken();
log.info("调用有赞接口获取到的有赞Token"+accessToken);
log.info("调用有赞接口获取到的有赞Token" + accessToken);
Token youzanToken = new Token(accessToken);
return youzanToken;
}
/**
* 分页查询订单数据
*
* @return
*/
@Override
public R<PageInfo<OrderInfo>> findByPage(OrderInfoQuery query) {
log.info("shop-mall[]OrderServiceImpl[]findByPage[]input.param.query:" + query);
if (null == query){
return R.error("入参不能为空");
}
pageHandle(query);
HashMap<String, Object> map = new HashMap<>();
int total = orderMapper.count();
map.put("startNum", query.getStartNum());
map.put("endNum", query.getEndNum());
if(null != query.getUserId()){
map.put("userId",query.getUserId());
}
List<OrderInfo> list = orderMapper.findByPage(map);
PageInfo<OrderInfo> info = new PageInfo<>();
info.setPageSize(query.getPageSize());
info.setPageNum(query.getPageNo());
info.setTotal(total);
info.setList(list);
return R.ok(info);
}
/**
* 分页处理方法
*
* @param schemeVo 参数
*/
private void pageHandle(OrderInfoQuery schemeVo) {
Integer pageNum = schemeVo.getPageNo();
Integer pageSize = schemeVo.getPageSize();
if (null == pageSize || pageSize == 0) {
pageSize = 10;
}
if (null == pageNum || pageNum == 0) {
pageNum = 1;
}
Integer endNum = pageSize;
Integer startNum = (pageNum - CommonAttributes.NUM_ONE) * pageSize;
schemeVo.setEndNum(endNum);
schemeVo.setStartNum(startNum);
schemeVo.setPageNo(pageNum);
schemeVo.setPageSize(pageSize);
}
}
package cn.wisenergy.web.admin.controller.app;
import cn.wisenergy.common.utils.R;
import cn.wisenergy.model.app.OrderInfo;
import cn.wisenergy.model.dto.OrderInfoQuery;
import cn.wisenergy.service.app.OrderService;
import com.github.pagehelper.PageInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Api(tags = "订单管理")
@Slf4j
@RestController
public class OrderController {
@Autowired
private OrderService orderService;
@ApiOperation(value = "获取订单分页列表", notes = "获取订单分页列表", httpMethod = "GET")
@ApiImplicitParam(name = "query", value = "查询条件", dataType = "OrderInfoQuery")
@RequestMapping("admin/order/findBypage")
public R<PageInfo<OrderInfo>> findByPage(OrderInfoQuery query){
return orderService.findByPage(query);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment