Commit 9ec23080 by zhiheng.zhang

提交修改文件

parent 6a7a14ae
package cn.freemud.entities.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import org.hibernate.validator.constraints.NotBlank;
import org.hibernate.validator.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* All rights Reserved, Designed By www.freemud.com
*
* @version V1.0
* @Description: 积分订单
* @author: hongwang.zhang
* @date: 2020-01-07 19:43:40
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目.
*/
@Setter
@Getter
@ToString
public class IntegralOrderVo {
@NotEmpty(message = "图片url,不能为空")
@ApiModelProperty(value = "图片url")
private List<String> imgUrl;
@NotBlank(message = "商户id 不能为空")
@ApiModelProperty(value = "商户号")
private String partnerId;
@NotNull(message = "业务类型不能为空")
@ApiModelProperty(value = "默认不填=99,订单业务类型 1:普通订单 2:虚拟订单 3:会员订单 4:积分商城订单 5:储值卡订单 6:卖券订单,97:自助录单 98:农工商停车手工录单 99:农工商停车订单")
private Byte bizType;
/**
* 用户sessionId
*/
@NotEmpty(message = "用户sessionId 不能为空")
@ApiModelProperty(value = "用户sessionId")
private String sessionId;
}
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;
}
package cn.freemud.entities.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@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 1=待审核 6=审核通过 7=审核未通过")
private Integer orderState;
@ApiModelProperty(value = "审核状态value")
private String orderStateValue;
@ApiModelProperty(value = "订单编号")
private String orderCode;
@ApiModelProperty(value = "上传图片")
private List<String> imgUrl;
@ApiModelProperty(value = "取消原因")
private String cancelReason;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* 发票VO
* @Auther: yong.huang
* @Date: 2019/1/28 14:48
* @Description:
*/
@Data
public class OrderInvoiceReq {
/**
* 订单ID
*/
private Long id;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编码
*/
private String orderCode;
/**
* 公司编号
*/
private String partnerId;
/**
* 订单商品ID
*/
private String itemId;
/**
* 发票类型 {@link cn.freemud.shared.order.enums.order.OrderInvoiceType#API_DESC}
*/
private Byte invoiceType;
/**
* 发票抬头
*/
private String title;
/**
* 发票内容
*/
private String content;
/**
* 税号
*/
private String taxNo;
/**
* 发票金额 单位分
*/
private BigDecimal amount;
/**
* 发票地址
*/
private String address;
/**
* 电话号码
*/
private String phoneNo;
/**
* 银行账号
*/
private String bankCardNo;
/**
* 开户行
*/
private String invoiceBank;
/**
* 发票URL地址
*/
private String invoiceUrl;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import java.math.BigDecimal;
import java.util.Date;
/**
* All rights Reserved, Designed By www.freemud.com
*
* @version V1.0
* @Description: 一句话描述
* @author: hongwang.zhang
* @date: 2020-01-07 19:43:40
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目.
*/
public class OrderInvoiceResp {
/*** "订单ID"***/
private Long orderId;
/*** "商户编号"***/
private String partnerId;
/*** "订单商品ID"***/
private String itemId;
/*** OrderInvoiceType.API_DESC***/
private Byte invoiceType;
/*** "发票抬头"***/
private String title;
/*** "发票内容"***/
private String content;
/*** "税号"***/
private String taxNo;
/*** "发票金额 单位分"***/
private BigDecimal amount;
/*** "发票地址"***/
private String address;
/*** "电话号码"***/
private String phoneNo;
/*** "银行账号"***/
private String bankCardNo;
/*** "开户行"***/
private String invoiceBank;
/*** "发票URL地址"***/
private String invoiceUrl;
/*** "创建时间"***/
private Date createTime;
/*** "更新时间"***/
private Date updateTime;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderInvoiceResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.*;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @author qi.xu 2018/09/05 10:30
*/
@Data
public class OrderResp {
/*** "订单编号"***/
private String orderCode;
/*** "父订单编号"***/
private String parentCode;
/*** "商户号"***/
private String partnerId;
/*** "商户名"***/
private String partnerName;
/*** "门店编号"***/
private String storeId;
/*** "第三方门店编号"***/
private String thirdStoreId;
/*** "门店名"***/
private String storeName;
/*** "门店全局唯一编号"***/
private String storeUnifyId;
/*** "目的门店"***/
private String toStoreId;
/*** "用户ID"***/
private String userId;
/*** "用户姓名"***/
private String userName;
/*** OrderStatus.API_DESC***/
private Byte orderState;
/*** "订单子状态"***/
private Integer orderSubState;
/*** OrderType.API_DESC***/
private Byte orderType;
/*** PayStatus.API_DESC***/
private Byte payState;
/*** PayType.API_DESC***/
private Byte payType;
/*** "当前支付请求号"***/
private String payRequestNo;
/*** "最新的售后单的状态"***/
private Byte afterSalesState;
/*** "支付渠道"***/
private String payChannel;
/*** "支付渠道名称"***/
private String payChannelName;
/*** OrderDeliveryStatus.API_DESC***/
private Integer deliveryState;
/*** OrderDispenseStatus.API_DESC***/
private Integer dispenseStatus;
/*** "订单原始金额,单位分"***/
private BigDecimal originalAmount;
/*** "用户在界面上看到的支付金额"***/
private BigDecimal settlementAmount;
/*** "实际支付现金金额,扣除支付自生优惠,单位分"***/
private BigDecimal actualPayAmount;
/*** "是否需要开发票"***/
private Boolean needInvoice;
/*** "是否立即送达"***/
private Boolean immediately;
/*** OrderClientType.API_DESC***/
private Byte orderClient;
/*** "商户自己生成的订单号"***/
private String companySelfCode;
/*** "第三方订单号"***/
private String thirdOrderCode;
/*** "订单备注"***/
private String note;
/*** "取消原因"***/
private String cancelReason;
/*** "取货号 取餐号"***/
private String pickUpGoodsNo;
/*** OrderMarketType.API_DESC***/
private Byte marketingType;
/*** "销售类型对应的场景值"***/
private String marketingCode;
/*** "配送类型 1自配送(三方渠道配送、商家店员配送** 2平台配送"***/
private Byte expressType;
/*** "配送渠道名称"***/
private String expressChannelName;
/*** "配送渠道编号"***/
private String expressChannelCode;
/*** "快递单号"***/
private String expressNo;
/*** "重量"***/
private BigDecimal weight;
/*** "是否能退货 是否有退货商品"***/
private Boolean canRefund;
/*** "支付时间"***/
private Date payTime;
/*** "发货时间"***/
private Date deliveryTime;
/*** "签收时间 送达时间 收货时间"***/
private Date receiveTime;
/*** "打印时间"***/
private Date printTime;
/*** "接单时间"***/
private Date acceptTime;
/*** "实际到达时间"***/
private Date actualArrivalTime;
/*** "捡货时间(制作完成发货的时间)"***/
private Date pickUpTime;
/*** "桌台号"***/
private String barCounter;
/*** "pos编号"***/
private String posCode;
/*** "就餐人数"***/
private Integer dinersNumber;
/*** "小程序本地tableKey"***/
private String localTableKey;
/*** "pos table key"***/
private String posTableKey;
/*** "预约时间"***/
private Date expectTime;
/*** "挂起状态 0 正常 1 未成团挂起 2 风控挂起 3 售后挂起"***/
private Byte suspendState;
/*** "挂起描述"***/
private String suspendDesc;
/*** OrderAbnormalStatus.API_DESC***/
private Byte abnormalState;
/*** "订单异常具体描述"***/
private String abnormalDesc;
/*** "打印次数"***/
private Integer printNum;
/*** "创建时间"***/
private Date createTime;
/*** "更新时间"***/
private Date updateTime;
/*** "发票明细"***/
private OrderInvoiceResp orderInvoice;
/*** "扩展字段"***/
private String extInfo;
/*** OrderBizType.API_DESC***/
private Byte bizType;
/*** "下单区域"***/
private String orderArea;
/*** "承诺送达标识 0-无承诺 60-1小时达 120-2小时达 180-3小时达 1440-隔日达"***/
private Short deliveryPromise;
/*** "预计送达时间"***/
private Date estimateDeliveryCompleteTime;
/*** "订单商品信息"***/
List<OrderItemResp> orderItemList;
/*** "订单费用信息"***/
List<OrderCostResp> orderCostDetailList;
/*** "订单结算信息"***/
List<OrderSettlementResp> orderSettlementDetailList;
/*** "配送联系信息"***/
List<DeliveryContactInfoResp> deliveryContactInfoList;
/*** "售后单信息"***/
List<AfterSalesOrderResp> afterSalesOrderList;
/*** "订单操作历史"***/
List<OrderOperationHistoryResp> orderOperationHistoryList;
/*** "订单扩展信息"***/
private OrderExtendedReq orderExtended;
/*** "门店当天订单计数"***/
private Integer daySeq;
/*** "是否为父订单"***/
private Boolean isParent;
/*** "订单来源 "+SourceType.API_DESC***/
private Byte sourceType;
/*** "下单渠道appId"***/
private String appId;
/*** "下游POS商编号"***/
private String downstreamPosCode;
/*** "下游订单号"***/
private String downstreamThirdOrderCode;
/*** "订单支付渠道类型" +PayChannelType.API_DESC***/
private Byte payChannelType;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import javax.validation.Valid;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author hongwang
*/
@Getter
@Setter
@ToString
public class ParkingOrderAffirmReq {
private String appId;
/*** "订单号"***/
private String orderCode;
/*** "实际支付现金金额,扣除支付自生优惠,单位分"***/
private BigDecimal actualPayAmount;
/*** "订单结算信息"***/
@Valid
List<OrderSettlementCreateReq> orderSettlementDetailList = new ArrayList<>();
/*** "支付方式:"+ PayChannelType.API_DESC***/
private Byte payChannelType;
/*** "支付成功时间"***/
private Date payTime;
/*** "支付凭证请求号"***/
private String payRequestNo;
/*** "操作人"***/
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;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
public class ParkingOrderCancelReq {
private String orderCode;
private String operator;
private String cancelReason;
}
package com.freemud.application.sdk.api.ordercenter.request.carpark;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderSettlementCreateReq;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
import java.util.*;
/**
* 停车场
* @author hongwang
*/
@Getter
@Setter
@ToString
public class ParkingOrderCreateReq {
/*** "商户号"***/
private String partnerId;
/*** "门店编号"***/
private String storeId;
/*** "第三方订单号"***/
private String thirdOrderCode;
/*** "停车场ID"***/
private String parkingAreaId;
/*** "停车场名称"***/
private String parkingAreaName;
/*** "用户ID"***/
private String userId;
/*** "用户姓名"***/
private String userName;
/*** "订单金额"***/
private BigDecimal originalAmount;
/*** "实际支付现金金额,扣除支付自生优惠,单位分"***/
private BigDecimal actualPayAmount;
/*** "订单结算信息"***/
List<OrderSettlementCreateReq> orderSettlementDetailList = new ArrayList<>();
/*** "车牌号"***/
private String carNumber;
/*** "入场时间"***/
private Date inTime;
/*** "出场时间"***/
private Date outTime;
/*** "支付方式"***/
private Byte PayChannelType;
/*** "手机号"***/
private String mobile;
/*** "发票明细"***/
private OrderInvoiceReq orderInvoice;
/*** "默认不填=99,"+ OrderBizType.API_DESC***/
private Byte bizType;
/**
* 发票图片
*/
private List<String> imgUlr;
/**
* 门店名称
*/
private String storeName;
/**
* 商户名称
*/
private String partnerName;
/**
* 订单那类型
*/
private Byte orderType;
}
package com.freemud.application.sdk.api.ordercenter.response.carpark;
import java.math.BigDecimal;
import java.util.Date;
/**
* All rights Reserved, Designed By www.freemud.com
*
* @version V1.0
* @Description: 一句话描述
* @author: hongwang.zhang
* @date: 2020-01-07 19:43:40
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目.
*/
public class OrderInvoiceResp {
/*** "订单ID"***/
private Long orderId;
/*** "商户编号"***/
private String partnerId;
/*** "订单商品ID"***/
private String itemId;
/*** OrderInvoiceType.API_DESC***/
private Byte invoiceType;
/*** "发票抬头"***/
private String title;
/*** "发票内容"***/
private String content;
/*** "税号"***/
private String taxNo;
/*** "发票金额 单位分"***/
private BigDecimal amount;
/*** "发票地址"***/
private String address;
/*** "电话号码"***/
private String phoneNo;
/*** "银行账号"***/
private String bankCardNo;
/*** "开户行"***/
private String invoiceBank;
/*** "发票URL地址"***/
private String invoiceUrl;
/*** "创建时间"***/
private Date createTime;
/*** "更新时间"***/
private Date updateTime;
}
package com.freemud.application.sdk.api.ordercenter.response.carpark;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderInvoiceResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.*;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @author qi.xu 2018/09/05 10:30
*/
@Data
public class OrderResp {
/*** "订单编号"***/
private String orderCode;
/*** "父订单编号"***/
private String parentCode;
/*** "商户号"***/
private String partnerId;
/*** "商户名"***/
private String partnerName;
/*** "门店编号"***/
private String storeId;
/*** "第三方门店编号"***/
private String thirdStoreId;
/*** "门店名"***/
private String storeName;
/*** "门店全局唯一编号"***/
private String storeUnifyId;
/*** "目的门店"***/
private String toStoreId;
/*** "用户ID"***/
private String userId;
/*** "用户姓名"***/
private String userName;
/*** OrderStatus.API_DESC***/
private Byte orderState;
/*** "订单子状态"***/
private Integer orderSubState;
/*** OrderType.API_DESC***/
private Byte orderType;
/*** PayStatus.API_DESC***/
private Byte payState;
/*** PayType.API_DESC***/
private Byte payType;
/*** "当前支付请求号"***/
private String payRequestNo;
/*** "最新的售后单的状态"***/
private Byte afterSalesState;
/*** "支付渠道"***/
private String payChannel;
/*** "支付渠道名称"***/
private String payChannelName;
/*** OrderDeliveryStatus.API_DESC***/
private Integer deliveryState;
/*** OrderDispenseStatus.API_DESC***/
private Integer dispenseStatus;
/*** "订单原始金额,单位分"***/
private BigDecimal originalAmount;
/*** "用户在界面上看到的支付金额"***/
private BigDecimal settlementAmount;
/*** "实际支付现金金额,扣除支付自生优惠,单位分"***/
private BigDecimal actualPayAmount;
/*** "是否需要开发票"***/
private Boolean needInvoice;
/*** "是否立即送达"***/
private Boolean immediately;
/*** OrderClientType.API_DESC***/
private Byte orderClient;
/*** "商户自己生成的订单号"***/
private String companySelfCode;
/*** "第三方订单号"***/
private String thirdOrderCode;
/*** "订单备注"***/
private String note;
/*** "取消原因"***/
private String cancelReason;
/*** "取货号 取餐号"***/
private String pickUpGoodsNo;
/*** OrderMarketType.API_DESC***/
private Byte marketingType;
/*** "销售类型对应的场景值"***/
private String marketingCode;
/*** "配送类型 1自配送(三方渠道配送、商家店员配送** 2平台配送"***/
private Byte expressType;
/*** "配送渠道名称"***/
private String expressChannelName;
/*** "配送渠道编号"***/
private String expressChannelCode;
/*** "快递单号"***/
private String expressNo;
/*** "重量"***/
private BigDecimal weight;
/*** "是否能退货 是否有退货商品"***/
private Boolean canRefund;
/*** "支付时间"***/
private Date payTime;
/*** "发货时间"***/
private Date deliveryTime;
/*** "签收时间 送达时间 收货时间"***/
private Date receiveTime;
/*** "打印时间"***/
private Date printTime;
/*** "接单时间"***/
private Date acceptTime;
/*** "实际到达时间"***/
private Date actualArrivalTime;
/*** "捡货时间(制作完成发货的时间)"***/
private Date pickUpTime;
/*** "桌台号"***/
private String barCounter;
/*** "pos编号"***/
private String posCode;
/*** "就餐人数"***/
private Integer dinersNumber;
/*** "小程序本地tableKey"***/
private String localTableKey;
/*** "pos table key"***/
private String posTableKey;
/*** "预约时间"***/
private Date expectTime;
/*** "挂起状态 0 正常 1 未成团挂起 2 风控挂起 3 售后挂起"***/
private Byte suspendState;
/*** "挂起描述"***/
private String suspendDesc;
/*** OrderAbnormalStatus.API_DESC***/
private Byte abnormalState;
/*** "订单异常具体描述"***/
private String abnormalDesc;
/*** "打印次数"***/
private Integer printNum;
/*** "创建时间"***/
private Date createTime;
/*** "更新时间"***/
private Date updateTime;
/*** "发票明细"***/
private OrderInvoiceResp orderInvoice;
/*** "扩展字段"***/
private String extInfo;
/*** OrderBizType.API_DESC***/
private Byte bizType;
/*** "下单区域"***/
private String orderArea;
/*** "承诺送达标识 0-无承诺 60-1小时达 120-2小时达 180-3小时达 1440-隔日达"***/
private Short deliveryPromise;
/*** "预计送达时间"***/
private Date estimateDeliveryCompleteTime;
/*** "订单商品信息"***/
List<OrderItemResp> orderItemList;
/*** "订单费用信息"***/
List<OrderCostResp> orderCostDetailList;
/*** "订单结算信息"***/
List<OrderSettlementResp> orderSettlementDetailList;
/*** "配送联系信息"***/
List<DeliveryContactInfoResp> deliveryContactInfoList;
/*** "售后单信息"***/
List<AfterSalesOrderResp> afterSalesOrderList;
/*** "订单操作历史"***/
List<OrderOperationHistoryResp> orderOperationHistoryList;
/*** "订单扩展信息"***/
private OrderExtendedReq orderExtended;
/*** "门店当天订单计数"***/
private Integer daySeq;
/*** "是否为父订单"***/
private Boolean isParent;
/*** "订单来源 "+SourceType.API_DESC***/
private Byte sourceType;
/*** "下单渠道appId"***/
private String appId;
/*** "下游POS商编号"***/
private String downstreamPosCode;
/*** "下游订单号"***/
private String downstreamThirdOrderCode;
/*** "订单支付渠道类型" +PayChannelType.API_DESC***/
private Byte payChannelType;
}
...@@ -5,6 +5,10 @@ import com.freemud.application.sdk.api.ordercenter.config.OrderCenterProperties; ...@@ -5,6 +5,10 @@ import com.freemud.application.sdk.api.ordercenter.config.OrderCenterProperties;
import com.freemud.application.sdk.api.ordercenter.constant.InterfaceAddressConstant; import com.freemud.application.sdk.api.ordercenter.constant.InterfaceAddressConstant;
import com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum; import com.freemud.application.sdk.api.ordercenter.enums.ResponseResultEnum;
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.OrderResp;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderAffirmReq;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCancelReq;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq;
import com.freemud.application.sdk.api.ordercenter.request.create.BatchQueryByCodesReq; import com.freemud.application.sdk.api.ordercenter.request.create.BatchQueryByCodesReq;
import com.freemud.application.sdk.api.ordercenter.request.create.CreateFatherSonOrderReq; import com.freemud.application.sdk.api.ordercenter.request.create.CreateFatherSonOrderReq;
import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest; import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest;
......
package cn.freemud.entities.dto;
import lombok.Data;
import lombok.ToString;
@Data
@ToString
public class GetMemberListRequestDto {
private String partnerId;
private String mobile;
private Integer pageNum;
private Integer pageSize;
public GetMemberListRequestDto(String partnerId, String mobile, Integer pageNum, Integer pageSize) {
this.partnerId = partnerId;
this.mobile = mobile;
this.pageNum = pageNum;
this.pageSize = pageSize;
}
}
package cn.freemud.entities.dto;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@NoArgsConstructor
@Data
public class GetMemberListResponseDto {
private String code;
private String message;
private ResultBean data;
@NoArgsConstructor
@Data
public static class ResultBean {
private List<Member> memberList;
private Integer totalPages;
private Integer pageNum;
private Integer pageSize;
private Integer totalCount;
@NoArgsConstructor
@Data
public static class Member {
/**
* 会员Id
*/
private String memberId;
private String mobile;
private String nickName;
private String RegisterTime;
private String ruleName;
private Integer statusFlag;
private Integer currentScore;
private Integer consumeMoney;
private Integer consumerCount;
private List<String> labelList;
private List<Integer> memberPaidList;
}
}
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ShoppingCartClearToolsRequestVo
* @Package cn.freemud.entities.vo
* @Description:
* @author: zhiheng.zhang
* @date: 2020/7/15
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.entities.vo;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;
@Data
public class ShoppingCartClearToolsRequestVo {
private String userId;
@NotEmpty(message = "手机号不能为空")
private String mobile;
@NotEmpty(message = "shopId不能为空")
private String shopId;
@NotEmpty(message = "partnerId不能为空")
private String partnerId;
}
package cn.freemud.service;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.vo.ShoppingCartClearToolsRequestVo;
public interface ShoppingCartToolsService {
/**
* 清空购物车
*
* @param request
* @return
*/
BaseResponse clear(ShoppingCartClearToolsRequestVo request);
}
package cn.freemud.service.impl;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.GetMemberListRequestDto;
import cn.freemud.entities.dto.GetMemberListResponseDto;
import cn.freemud.entities.vo.ShoppingCartClearToolsRequestVo;
import cn.freemud.enums.ResponseResult;
import cn.freemud.service.ShoppingCartToolsService;
import cn.freemud.service.thirdparty.MemberToolsClient;
import cn.freemud.utils.ResponseUtil;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@Slf4j
@Service
public class ShoppingCartToolsServiceImpl implements ShoppingCartToolsService {
static final Logger logger = LoggerFactory.getLogger(ShoppingCartToolsServiceImpl.class);
@Autowired
private MemberToolsClient memberToolsClient;
@Autowired
private ShoppingCartBaseService shoppingCartBaseService;
@Autowired
private AssortmentSdkService assortmentSdkService;
/**
* @notes 清空购物车
* @param shoppingCartClearToolsRequestVo
* @return
*/
@Override
public BaseResponse clear(ShoppingCartClearToolsRequestVo shoppingCartClearToolsRequestVo) {
GetMemberListResponseDto getMemberListResponseDto = getMemberListResponseDto(shoppingCartClearToolsRequestVo);
if (!ResponseResult.SUCCESS.getCode().equals(getMemberListResponseDto.getCode())) {
return ResponseUtil.error(ResponseResult.SYSTEM_ERROR, "查询会员信息返回失败");
}
String mobile = shoppingCartClearToolsRequestVo.getMobile();
if(0 == getMemberListResponseDto.getData().getTotalCount()){
return ResponseUtil.error(ResponseResult.SUCCESS,mobile+" 用户下购物车数据为空,无需删除");
}
String partnerId = shoppingCartClearToolsRequestVo.getPartnerId();
String storeId = shoppingCartClearToolsRequestVo.getShopId();
StringBuffer stringBuffer = new StringBuffer();
String memberId = "";
List<String> userIds = getUserIds(getMemberListResponseDto);
for (String userId : userIds) {
try {
// 构造请求参数,进行清空购物车
memberId = userId;
com.freemud.sdk.api.assortment.shoppingcart.domain.CartParamDto cartParamDto = assortmentSdkService.getCartParamDto(partnerId, storeId, userId);
shoppingCartBaseService.clear(cartParamDto, LogThreadLocal.getTrackingNo());
packageMessage( stringBuffer,partnerId,storeId,mobile,memberId, "成功");
}catch (Exception var9) {
logger.error(("清空购物车失败:"+"商户号:"+partnerId + ",门店号:"+storeId+",手机号:"+mobile+",会员号:"+memberId), var9);
packageMessage( stringBuffer,partnerId,storeId,mobile,memberId, "失败");
continue;
}
}
return ResponseUtil.success(stringBuffer);
}
private GetMemberListResponseDto getMemberListResponseDto(ShoppingCartClearToolsRequestVo shoppingCartClearToolsRequestVo){
GetMemberListRequestDto getMemberListRequestDto = new GetMemberListRequestDto(shoppingCartClearToolsRequestVo.getPartnerId(),shoppingCartClearToolsRequestVo.getMobile(),1,999);
GetMemberListResponseDto getMemberListResponseDto = memberToolsClient.getMemberList(getMemberListRequestDto);
return getMemberListResponseDto;
}
private List<String> getUserIds(GetMemberListResponseDto getMemberListResponseDto){
return getMemberListResponseDto.getData().getMemberList().stream().map(GetMemberListResponseDto.ResultBean.Member::getMemberId).collect(Collectors.toList());
}
private void packageMessage(StringBuffer stringBuffer,String partnerId,String storeId,String mobile,String memberId,String message){
stringBuffer.append("商户号:"+partnerId + ",门店号:"+storeId+",手机号:"+mobile+",会员号:"+memberId+" 清除购物车:"+message+";");
}
}
package cn.freemud.service.thirdparty;
import cn.freemud.entities.dto.GetMemberListRequestDto;
import cn.freemud.entities.dto.GetMemberListResponseDto;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@FeignClient(name = "CUSTOMER-TOOLS-SERVICE", url = "${saas.customertools.feign.url}")
@RequestMapping(produces = {"application/json;charset=UTF-8"})
public interface MemberToolsClient {
/**
* 根据会员手机号和商户获取会员信息
*/
@PostMapping(value = "/customerservice/getMembers")
GetMemberListResponseDto getMemberList(@RequestBody GetMemberListRequestDto getMemberListRequestDto);
}
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