Commit bb8b2412 by xiaoer.li

Merge remote-tracking branch 'remotes/origin/202007131400' into develop

parents 0d681214 c6cb12fb
......@@ -3030,4 +3030,28 @@ public class OrderSdkAdapter {
}
return name;
}
/**
* 获取订单信息
* @param orderStatus
* @return
*/
public String getOrderStatusValue(Integer orderStatus) {
String name = "";
switch (orderStatus) {
case 1: {
name = "待审核";
break;
}
case 6: {
name="审核通过";
break;
}
case 7: {
name ="审核未通过";
break;
}
}
return name;
}
}
......@@ -15,7 +15,6 @@ package cn.freemud.controller;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.encircle.CreateReserveOrderVo;
import cn.freemud.entities.vo.encircle.EmptyTableNumberVo;
import cn.freemud.entities.vo.encircle.EncircleReserveBaseVo;
import cn.freemud.monitorcenter.tools.HealthUtil;
import cn.freemud.service.EncircleOrderService;
......@@ -25,7 +24,6 @@ import cn.freemud.service.impl.MallOrderServiceImpl;
import cn.freemud.utils.ResponseUtil;
import com.freemud.application.sdk.api.log.ApiAnnotation;
import com.freemud.application.sdk.api.log.LogParams;
import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -277,5 +275,12 @@ public class OrderController {
return orderservice.createIntegralOrder(request);
}
/**
* 查询用户积分订单列表
*/
@ApiAnnotation(logMessage = "queryOrderByConditions")
@PostMapping("/queryOrderByConditions")
public BaseResponse queryOrderByConditions(@Validated @LogParams @RequestBody QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo) {
return orderservice.queryOrderByConditions(queryOrderByConditionsRequestVo);
}
}
package cn.freemud.entities.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
@Data
@ApiModel
public class QueryOrderByConditionsRequestVo {
@NotEmpty(message = "sessionId 不能为空")
private String sessionId;
@NotNull(message = "业务类型 不能为空")
@ApiModelProperty(value = "业务类型 1:普通订单 2:虚拟订单 3:会员订单 4:积分商城订单 5:储值卡订单 6:卖券订单 98:农工商停车手工录单 99:农工商停车订单")
private Integer bizType;
@NotNull(message = "页码 不能为空")
private int pageNum;
@NotNull(message = "分页大小 不能为空")
private int pageSize;
@NotEmpty(message = "商户号 不能为空")
private String partnerId;
@ApiModelProperty(value = "开始时间")
@DateTimeFormat(pattern="yyyy-MM-dd")
private String startDate;
@ApiModelProperty(value = "结束时间")
@DateTimeFormat(pattern="yyyy-MM-dd")
private String endDate;
}
package cn.freemud.entities.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
@ApiModel
public class QueryOrderByConditionsResponseVo {
@ApiModelProperty(value = "商户号")
private String partnerId;
@ApiModelProperty(value = "商户名称")
private String partnerName;
@ApiModelProperty(value = "门店号")
private String storeId;
@ApiModelProperty(value = "门店名称")
private String storeName;
@ApiModelProperty(value = "创建时间")
private String createTime;
@ApiModelProperty(value = "积分")
private BigDecimal settlementAmount;
@ApiModelProperty(value = "审核状态key")
private Integer orderState;
@ApiModelProperty(value = "审核状态value")
private String orderStateValue;
@ApiModelProperty(value = "订单编号")
private String orderCode;
@ApiModelProperty(value = "上传图片")
private String imgUrl;
@ApiModelProperty(value = "取消原因")
private String cancelReason;
}
......@@ -13,25 +13,22 @@
package cn.freemud.entities.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
@Data
@ApiModel
public class QueryOrderVo {
@ApiModelProperty(value = "sessionId")
@NotEmpty(message = "sessionId 不能为空")
private String sessionId;
/**
* 操作类型 1.详情 2.围餐桌号订单信息
*/
@ApiModelProperty(value = "操作类型 1.详情 2.围餐桌号订单信息")
private Integer operation;
/**
* 商户ID
*/
@ApiModelProperty(value = "商户Id")
private String partnerId;
/**
* 订单ID
*/
@ApiModelProperty(value = "订单编号")
private String oid;
/**
* 订单状态 enum queryOrderStatus 全部订单 1 待取餐 2 已完成 3 全部 4.退款,5 待支付
......
......@@ -145,7 +145,7 @@ public enum ResponseResult {
ORDER_OWNER_ERROR("45059","订单归属错误"),
ORDER_STATUS_PRE_PAYMENT_NOT_SUPPORT("45060", "订单非待支付状态, 创建预支付失败"),
ORDER_TAKEMEALTIME_INVALID("45061", "你的隔日预约时间有误,请重新刷新后选择!"),
ORDER_CONVERT_ERROR("45062", "查询订单结果转换失败"),
/**
* 支付
*/
......
......@@ -4,7 +4,6 @@ import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.ConfirmOrderDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.vo.*;
import com.freemud.sdk.api.assortment.order.enums.OrderSdkType;
import java.util.Map;
......@@ -110,4 +109,10 @@ public interface Orderservice {
* @return
*/
BaseResponse createIntegralOrder(IntegralOrderVo vo);
/**
* @用户积分订单列表
* @param queryOrderByConditionsRequestVo
* @return
*/
BaseResponse queryOrderByConditions(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo);
}
......@@ -77,10 +77,14 @@ import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.request.OrderConditionsReq;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq;
import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp;
import com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.service.OrderDownLoadSdkService;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.application.sdk.api.paymentcenter.client.request.CodePayRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.SVCCardAmountRequest;
......@@ -101,6 +105,7 @@ import com.freemud.sdk.api.assortment.message.enums.MessageEventType;
import com.freemud.sdk.api.assortment.message.request.MessagePushOrderTemplateRequest;
import com.freemud.sdk.api.assortment.message.request.MessageTemplateRequest;
import com.freemud.sdk.api.assortment.message.service.IMessageTemplatePushService;
import com.freemud.sdk.api.assortment.order.adapter.OrderSdkAdapter;
import com.freemud.sdk.api.assortment.order.enums.OldOrderStatus;
import com.freemud.sdk.api.assortment.order.request.order.*;
import com.freemud.sdk.api.assortment.order.response.order.*;
......@@ -118,6 +123,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.gson.Gson;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang.ObjectUtils;
......@@ -126,8 +132,12 @@ import org.apache.commons.lang.builder.ToStringBuilder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfigureOrder;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.util.StringUtil;
import java.lang.reflect.InvocationTargetException;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.function.Function;
......@@ -231,6 +241,10 @@ public class OrderServiceImpl implements Orderservice {
private AssortmentOpenPlatformPartnerManager assortmentOpenPlatformPartnerManager;
@Autowired
private OrderSdkService orderSdkService;
@Autowired
private OrderDownLoadSdkService orderDownLoadSdkService;
@Autowired
private OrderSdkAdapter orderSdkAdapter;
@Override
public BaseResponse checkBeforeCreateOrder(CheckBeforeCreateOrderRequestVo requestVo) {
......@@ -1368,7 +1382,7 @@ public class OrderServiceImpl implements Orderservice {
req.setUserId(userInfo.getMemberId());
req.setUserName(userInfo.getNickName());
req.setPartnerId(vo.getPartnerId());
req.setImgUlr(vo.getImgUrl());
req.setImgUrl(vo.getImgUrl());
req.setMobile(userInfo.getMobile());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderResp> result = orderSdkService.parking_v2_create(req, LogThreadLocal.getTrackingNo());
if (Objects.isNull(result)) {
......@@ -2392,4 +2406,56 @@ public class OrderServiceImpl implements Orderservice {
return channelType;
}
public BaseResponse queryOrderByConditions(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo){
AssortmentCustomerInfoVo userLoginInfoDto = customerInfoManager.getCustomerInfoByObject(queryOrderByConditionsRequestVo.getSessionId());
if (userLoginInfoDto == null || StringUtils.isBlank(userLoginInfoDto.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN);
}
String userId = userLoginInfoDto.getMemberId();
List<QueryOrderByConditionsResponseVo> responseVos = null;
try {
OrderConditionsReq orderConditionsReq = new OrderConditionsReq();
BeanUtil.convertBean(queryOrderByConditionsRequestVo, orderConditionsReq);
orderConditionsReq.setUserId(userId);
String startDateStr = queryOrderByConditionsRequestVo.getStartDate() + " 00:00:00";
String endDateStr = queryOrderByConditionsRequestVo.getEndDate() + " 23:59:59";
Date startDate = DateUtil.convert2Date(startDateStr, DateUtil.FORMAT_YYYY_MM_DD_HHMMSS);
Date endDate = DateUtil.convert2Date(endDateStr, DateUtil.FORMAT_YYYY_MM_DD_HHMMSS);
//验证日期是否符合范围
if (startDate.getTime() < DateUtil.addMonths(new Date(), -3).getTime()) {
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode(), "只能查询3个月内的订单信息");
}
orderConditionsReq.setStartTimestamp(startDate.getTime()/1000);
orderConditionsReq.setEndTimestamp(endDate.getTime()/1000);
BaseDownLoadResponse<List<OrderInfoReqs>> orderInfoReqs = orderDownLoadSdkService.queryOrderByConditions(orderConditionsReq,LogTreadLocal.getTrackingNo());
if (!String.valueOf(RESPONSE_SUCCESS_CODE).equals(orderInfoReqs.getCode())) {
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode());
}
Map<String, Object> responseMap = Maps.newTreeMap();
//用户无订单数据
if (orderInfoReqs.getResult() == null || orderInfoReqs.getTotalNum()== 0) {
return ResponseUtil.success(orderInfoReqs);
}
responseVos = orderInfoReqs.getResult().stream().map(
orderBean -> {
QueryOrderByConditionsResponseVo queryOrderByConditionsResponseVo = new QueryOrderByConditionsResponseVo();
BeanUtil.convertBean(orderBean,queryOrderByConditionsResponseVo);
String imgUrl = "";
String extInfo = orderBean.getExtInfo();
if(!StringUtil.isEmpty(extInfo)){
JSONObject jsonObject = JSONObject.parseObject(extInfo);
imgUrl = String.valueOf(jsonObject.get("imgUrl"));
}
queryOrderByConditionsResponseVo.setImgUrl(imgUrl);
queryOrderByConditionsResponseVo.setOrderStateValue(orderSdkAdapter.getOrderStatusValue(orderBean.getOrderState()));
queryOrderByConditionsResponseVo.setCreateTime(DateUtil.convert2Str(DateUtil.convert2Date(orderBean.getCreateTime(),DateUtil.FORMAT_YYYY_MM_DD_HHMMSS),DateUtil.FORMAT_YYYY_MM_DD_HHMMSS));
return queryOrderByConditionsResponseVo;
}
).collect(Collectors.toList());
} catch (Exception e) {
LogUtil.error("queryOrders_error", gson.toJson(queryOrderByConditionsRequestVo), e);
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR);
}
return ResponseUtil.success(responseVos);
}
}
......@@ -42,4 +42,40 @@ public class ParkingOrderAffirmReq {
/*** "操作人"***/
private String operator;
/***"发票明细"**/
private OrderInvoiceReq orderInvoice;
/***"车牌号"**/
private String carNumber;
/***"停车场ID"**/
private String parkingAreaId;
/***"停车场名称"**/
private String parkingAreaName;
/***"手机号"**/
private String mobile;
/***"第三方订单号"**/
private String thirdOrderCode;
/***"入场时间"**/
private Date inTime;
/***"出场时间"**/
private Date outTime;
/***"门店编号"**/
private String storeId;
/***"门店名称"**/
private String storeName;
/***"订单金额"**/
private BigDecimal originalAmount;
/*******商户名称****/
private String partnerName;
}
......@@ -71,7 +71,7 @@ public class ParkingOrderCreateReq {
/**
* 发票图片
*/
private List<String> imgUlr;
private List<String> imgUrl;
/**
* 门店名称
*/
......
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