Commit b8905a25 by hanghang.wang

Merge remote-tracking branch 'origin/master'

parents 53fb61dc 3bf22664
...@@ -410,4 +410,12 @@ public class OrderController { ...@@ -410,4 +410,12 @@ public class OrderController {
return orderservice.queryTodayOrders(queryOrderByConditionsRequestVo); return orderservice.queryTodayOrders(queryOrderByConditionsRequestVo);
} }
/**
* 积分兑换记录查询(农工商)
*/
@ApiAnnotation(logMessage = "scoreRecord")
@PostMapping("/scoreRecord")
public BaseResponse scoreRecord(@Validated @LogParams @RequestBody QueryOrderVo queryOrderVo) {
return orderservice.scoreRecord(queryOrderVo);
}
} }
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: NearStoreResponseVo
* @Package cn.freemud.entities.vo
* @Description:
* @author: ping.wu
* @date: 2018/5/15 11:15
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.entities.vo;
import lombok.Data;
@Data
public class ScoreRecordVo {
/**
* 订单号
*/
private String orderCode;
/**
* 兑换时间
*/
private Long createTime;
/**
* 商品名称(券名称)
*/
private String productName;
//数量
private Integer productQuantity;
}
...@@ -154,4 +154,6 @@ public interface Orderservice { ...@@ -154,4 +154,6 @@ public interface Orderservice {
*/ */
BaseResponse queryTodayOrders(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo); BaseResponse queryTodayOrders(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo);
BaseResponse scoreRecord(QueryOrderVo queryOrderVo);
} }
...@@ -24,20 +24,12 @@ import cn.freemud.base.util.DateUtil; ...@@ -24,20 +24,12 @@ import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.OrderRefundConstant; import cn.freemud.constant.OrderRefundConstant;
import cn.freemud.constant.RedisKeyConstant; import cn.freemud.constant.RedisKeyConstant;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.MCCafeDeliveryBaseResponse; import cn.freemud.entities.dto.MCCafeDeliveryBaseResponse;
import cn.freemud.entities.dto.PayAccessResponse; import cn.freemud.entities.dto.PayAccessResponse;
import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.QueryOrdersResponseDto.DataBean.OrderBean; import cn.freemud.entities.dto.QueryOrdersResponseDto.DataBean.OrderBean;
import cn.freemud.entities.dto.activity.PayGiftCheckAndJoinResponseDto; import cn.freemud.entities.dto.activity.PayGiftCheckAndJoinResponseDto;
import cn.freemud.entities.dto.activity.PayGitCheckAndJoinRequestDto; import cn.freemud.entities.dto.activity.PayGitCheckAndJoinRequestDto;
import cn.freemud.entities.dto.delivery.OrderRemindRequestDto;
import cn.freemud.entities.dto.delivery.QueryDeliveryAmountResponseDto;
import cn.freemud.entities.dto.delivery.QueryLocusRiderTrackDto;
import cn.freemud.entities.dto.delivery.ResRiderTrackDto;
import cn.freemud.entities.dto.ecology.BookingOrderPayedScene;
import cn.freemud.entities.dto.ecology.InstantOrderPayedScene;
import cn.freemud.entities.dto.ecology.SubscribeMessageRequest;
import cn.freemud.entities.dto.ecology.SubscribeMessageResponse;
import cn.freemud.entities.dto.delivery.*; import cn.freemud.entities.dto.delivery.*;
import cn.freemud.entities.dto.order.CreateOrderOperateDto; import cn.freemud.entities.dto.order.CreateOrderOperateDto;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto; import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
...@@ -48,17 +40,18 @@ import cn.freemud.entities.dto.product.AttributeValue; ...@@ -48,17 +40,18 @@ import cn.freemud.entities.dto.product.AttributeValue;
import cn.freemud.entities.dto.product.GroupDetail; import cn.freemud.entities.dto.product.GroupDetail;
import cn.freemud.entities.dto.product.ProductAttributeGroup; import cn.freemud.entities.dto.product.ProductAttributeGroup;
import cn.freemud.entities.dto.product.ProductGroup; import cn.freemud.entities.dto.product.ProductGroup;
import cn.freemud.entities.dto.shoppingCart.CollageOrderDto;
import cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto; import cn.freemud.entities.dto.shoppingCart.NewShoppingCartClearDto;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto; import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.dto.shoppingCart.CollageOrderDto;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.thirdparty.MulitiPaymentClient; import cn.freemud.management.thirdparty.MulitiPaymentClient;
import cn.freemud.redis.RedisCache; import cn.freemud.redis.RedisCache;
import cn.freemud.service.*; import cn.freemud.service.BuriedPointService;
import cn.freemud.service.coupon.CouponRelationFactory; import cn.freemud.service.CouponActivityService;
import cn.freemud.service.coupon.CouponRelationService; import cn.freemud.service.OrderAdapterService;
import cn.freemud.service.Orderservice;
import cn.freemud.service.order.OrderRelationFactory; import cn.freemud.service.order.OrderRelationFactory;
import cn.freemud.service.order.OrderRelationService; import cn.freemud.service.order.OrderRelationService;
import cn.freemud.service.thirdparty.*; import cn.freemud.service.thirdparty.*;
...@@ -66,24 +59,16 @@ import cn.freemud.utils.*; ...@@ -66,24 +59,16 @@ import cn.freemud.utils.*;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import jdk.nashorn.internal.runtime.ECMAException;
import com.alibaba.fastjson.TypeReference;
import com.freemud.api.assortment.datamanager.entity.db.*; import com.freemud.api.assortment.datamanager.entity.db.*;
import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo; import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo;
import com.freemud.api.assortment.datamanager.manager.*;
import com.freemud.api.assortment.datamanager.enums.IappIdType; import com.freemud.api.assortment.datamanager.enums.IappIdType;
import com.freemud.api.assortment.datamanager.manager.AssortmentCloudPrinterManager; import com.freemud.api.assortment.datamanager.manager.*;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformPartnerConfigManager;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformWxappAuthorizerManager;
import com.freemud.api.assortment.datamanager.manager.AssortmentOpenPlatformWxappManager;
import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager; import com.freemud.api.assortment.datamanager.manager.cache.CacheOpenPlatformPartnerWxappConfigManager;
import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager; import com.freemud.api.assortment.datamanager.manager.customer.AssortmentCustomerInfoManager;
import com.freemud.api.assortment.datamanager.meal.MealCacheManager; import com.freemud.api.assortment.datamanager.meal.MealCacheManager;
import com.freemud.application.sdk.api.constant.ResponseConstant; import com.freemud.application.sdk.api.constant.ResponseConstant;
import com.freemud.application.sdk.api.constant.ResponseResultEnum; import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.couponcenter.offline.service.OfflineCouponSdkService; import com.freemud.application.sdk.api.couponcenter.offline.service.OfflineCouponSdkService;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryInfoDto;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto;
import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService; import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
import com.freemud.application.sdk.api.log.ApiLog; import com.freemud.application.sdk.api.log.ApiLog;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
...@@ -93,16 +78,11 @@ import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType; ...@@ -93,16 +78,11 @@ 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.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType; import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType;
import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum; import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
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.SdkUpdateAbnormalState;
import com.freemud.application.sdk.api.ordercenter.request.*; import com.freemud.application.sdk.api.ordercenter.request.*;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq; 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.BaseDownLoadResponse;
import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSendCouponResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp;
import com.freemud.application.sdk.api.ordercenter.service.OrderDownLoadSdkService; import com.freemud.application.sdk.api.ordercenter.service.OrderDownLoadSdkService;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService; import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
...@@ -149,8 +129,6 @@ import com.freemud.sdk.api.assortment.payment.service.StandardPaymentService; ...@@ -149,8 +129,6 @@ import com.freemud.sdk.api.assortment.payment.service.StandardPaymentService;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
...@@ -167,7 +145,6 @@ import org.springframework.stereotype.Service; ...@@ -167,7 +145,6 @@ import org.springframework.stereotype.Service;
import tk.mybatis.mapper.util.StringUtil; import tk.mybatis.mapper.util.StringUtil;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
...@@ -4097,4 +4074,62 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4097,4 +4074,62 @@ public class OrderServiceImpl implements Orderservice {
} }
return ResponseUtil.success(result); return ResponseUtil.success(result);
} }
@Override
public BaseResponse scoreRecord(QueryOrderVo queryOrderVo){
AssortmentCustomerInfoVo userLoginInfoDto = customerInfoManager.getCustomerInfoByObject(queryOrderVo.getSessionId());
if (userLoginInfoDto == null || StringUtils.isBlank(userLoginInfoDto.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN);
}
Date startDate;
Date endDate;
if (StringUtils.isBlank(queryOrderVo.getStartDate()) || StringUtils.isBlank(queryOrderVo.getEndDate())) {
Date now = new Date();
startDate = DateUtil.addMonths(now, -12);
endDate = DateUtil.addDays(now, 1);
}else{
String startDateStr = queryOrderVo.getStartDate() + " 00:00:00";
String endDateStr = queryOrderVo.getEndDate() + " 23:59:59";
startDate = DateUtil.convert2Date(startDateStr, "yyyy-MM-dd HH:mm:ss");
if (startDate == null) {
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode(), "查询订单开始时间格式不正确");
}
endDate = DateUtil.convert2Date(endDateStr, "yyyy-MM-dd HH:mm:ss");
if (endDate == null) {
return ResponseUtil.error(ResponseResult.ORDER_QUERYORDER_ERROR.getCode(), "查询订单结束时间格式不正确");
}
}
OrderConditionsReq queryOrdersDto = new OrderConditionsReq();
queryOrdersDto.setUserId(userLoginInfoDto.getMemberId());
queryOrdersDto.setPartnerId(userLoginInfoDto.getPartnerId());
queryOrdersDto.setPageSize(queryOrderVo.getPageSize() != null ? queryOrderVo.getPageSize() : 500);
queryOrdersDto.setPageNum(queryOrderVo.getPageNumber() != null ? queryOrderVo.getPageNumber() : 1);
queryOrdersDto.setStartTimestamp(startDate.getTime() / 1000);
queryOrdersDto.setEndTimestamp(endDate.getTime() / 1000);
queryOrdersDto.setOrderClients(Arrays.asList(OrderClientType.I_MEMBER.getIndex()));
queryOrdersDto.setBizType(4);
queryOrdersDto.setOrderStatus(OrderStatus.CALCEL.getCode());
// queryOrdersDto.setPayStatuses(Arrays.asList(PayStatus.HAVE_PAID.getCode()));
BaseDownLoadResponse<List<OrderInfoReqs>> response = orderDownLoadSdkService.queryOrderByConditions(queryOrdersDto, LogThreadLocal.getTrackingNo());
List<ScoreRecordVo> result = new ArrayList<>();
if (null == response || null == response.getResult()) {
return ResponseUtil.success(result);
}
List<OrderInfoReqs> list = response.getResult();
list.forEach(order->{
ScoreRecordVo responseVo = new ScoreRecordVo();
responseVo.setOrderCode(order.getOrderCode());
if (order.getCreateTime() != null) {
responseVo.setCreateTime(Long.parseLong(order.getCreateTime()));
}
if(CollectionUtils.isNotEmpty(order.getOrderItemList())){
responseVo.setProductName(order.getOrderItemList().get(0).getProductName());
responseVo.setProductQuantity(order.getOrderItemList().get(0).getProductQuantity());
}
result.add(responseVo);
});
return ResponseUtil.success(result);
}
} }
...@@ -350,8 +350,8 @@ public class ActivityAdapter { ...@@ -350,8 +350,8 @@ public class ActivityAdapter {
couponAvailableCartInfo.setChannelIdList(orgCodes); couponAvailableCartInfo.setChannelIdList(orgCodes);
Long totalMealDiscountAmount = 0L;//套餐优惠不算在内 Long totalMealDiscountAmount = 0L;//套餐优惠不算在内
Long sendDiscountAmount = 0L;//赠送和换购商品优惠不算在内 // Long sendDiscountAmount = 0L;//赠送和换购商品优惠不算在内
Long sendRealAmount = 0L;//赠送和换购商品实付不算在内 // Long sendRealAmount = 0L;//赠送和换购商品实付不算在内
if(discountResult!=null){ if(discountResult!=null){
//已使用券 //已使用券
if(CollectionUtils.isNotEmpty(discountResult.getDiscounts())){ if(CollectionUtils.isNotEmpty(discountResult.getDiscounts())){
...@@ -370,8 +370,8 @@ public class ActivityAdapter { ...@@ -370,8 +370,8 @@ public class ActivityAdapter {
//小料和可选搭配金额 //小料和可选搭配金额
Pair<Long,Long> pair = getSmallMaterialAmountSharing(discountGood.getSmallMaterial());//value1=总实付 value2=总优惠 Pair<Long,Long> pair = getSmallMaterialAmountSharing(discountGood.getSmallMaterial());//value1=总实付 value2=总优惠
if(Objects.equals(CalculationGoodsType.TYPE_1.getType(),discountGood.getCartGoodType()) || Objects.equals(CalculationGoodsType.TYPE_2.getType(),discountGood.getCartGoodType())){ if(Objects.equals(CalculationGoodsType.TYPE_1.getType(),discountGood.getCartGoodType()) || Objects.equals(CalculationGoodsType.TYPE_2.getType(),discountGood.getCartGoodType())){
sendRealAmount += discountGood.getRealAmount() + pair.getFirst(); // sendRealAmount += discountGood.getRealAmount() + pair.getFirst();
sendDiscountAmount += discountGood.getDiscountAmount() + pair.getSecond(); // sendDiscountAmount += discountGood.getDiscountAmount() + pair.getSecond();
continue; continue;
} }
CartProduct cartProduct = new CartProduct(); CartProduct cartProduct = new CartProduct();
...@@ -393,9 +393,12 @@ public class ActivityAdapter { ...@@ -393,9 +393,12 @@ public class ActivityAdapter {
} }
couponAvailableCartInfo.setProductList(goods); couponAvailableCartInfo.setProductList(goods);
} }
couponAvailableCartInfo.setOriginalTotalAmount(discountResult.getOriginalTotalAmount() - totalMealDiscountAmount - sendRealAmount - sendDiscountAmount); // couponAvailableCartInfo.setOriginalTotalAmount(discountResult.getOriginalTotalAmount() - totalMealDiscountAmount - sendRealAmount - sendDiscountAmount);
couponAvailableCartInfo.setRealAmount(discountResult.getTotalAmount() - sendRealAmount); // couponAvailableCartInfo.setRealAmount(discountResult.getTotalAmount() - sendRealAmount);
couponAvailableCartInfo.setDiscountAmount(discountResult.getTotalDiscountAmount() - totalMealDiscountAmount - sendDiscountAmount); // couponAvailableCartInfo.setDiscountAmount(discountResult.getTotalDiscountAmount() - totalMealDiscountAmount - sendDiscountAmount);
couponAvailableCartInfo.setOriginalTotalAmount(discountResult.getOriginalTotalAmount() - totalMealDiscountAmount);
couponAvailableCartInfo.setRealAmount(discountResult.getTotalAmount());
couponAvailableCartInfo.setDiscountAmount(discountResult.getTotalDiscountAmount() - totalMealDiscountAmount);
}else{ }else{
couponAvailableCartInfo.setProductList(new ArrayList<>()); couponAvailableCartInfo.setProductList(new ArrayList<>());
couponAvailableCartInfo.setOriginalTotalAmount(0L); couponAvailableCartInfo.setOriginalTotalAmount(0L);
...@@ -411,6 +414,7 @@ public class ActivityAdapter { ...@@ -411,6 +414,7 @@ public class ActivityAdapter {
couponAvailableCartInfo.setMerchantId(partnerId); couponAvailableCartInfo.setMerchantId(partnerId);
couponAvailableCartInfo.setStoreId(storeId); couponAvailableCartInfo.setStoreId(storeId);
couponAvailableCartInfo.setChannelIdList(orgCodes); couponAvailableCartInfo.setChannelIdList(orgCodes);
couponAvailableCartInfo.setExclusion(true);
Long totalMealDiscountAmount = 0L;//套餐优惠不算在内 Long totalMealDiscountAmount = 0L;//套餐优惠不算在内
if(discountResult!=null){ if(discountResult!=null){
......
...@@ -44,4 +44,7 @@ public class CouponAvailableCartInfo { ...@@ -44,4 +44,7 @@ public class CouponAvailableCartInfo {
//购物车商品列表 //购物车商品列表
private List<CartProduct> productList; private List<CartProduct> productList;
//由于老的算价接口优惠券和活动直接就是互斥的,因此不需要依赖券里面的配置
private boolean exclusion = false;
} }
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