Authored by Lixiaodi

Merge branch 'dev' of http://git.yoho.cn/ufo/yohoufo-fore into dev

... ... @@ -15,6 +15,7 @@ public interface MetaKey {
*/
String BUYER_DELIVERY_ADDRESS = "delivery_address";
String BUYER_DELIVERY_HIDDEN_ADDRESS = "hidden_delivery_address";
String SELLER_FEE = "fee";
... ...
... ... @@ -50,5 +50,4 @@ public class AddressInfo {
private String mobile;
}
... ...
... ... @@ -38,5 +38,5 @@ public class OrderBuilder {
*/
AddressInfo addressInfo;
AddressInfo hiddenAddressInfo;
}
... ...
... ... @@ -34,7 +34,7 @@ public class NotDeliverNoticeDelayMsgConsumer implements YhConsumer {
DeliverNoticeEvent msg = JSONObject.parseObject(o.toString(), DeliverNoticeEvent.class);
inBoxFacade.sellerDeliverNotice(msg.getUid(), msg.getPrdName(), 2);
inBoxFacade.sellerDeliverNotice(msg.getUid(), msg.getPrdName(), 2,null);
}
... ...
... ... @@ -90,7 +90,7 @@ public class SellerOrderCancelDeliverDelayMsgConsumer implements YhConsumer {
.build();
EventBusPublisher.publishEvent(buyererBillLogEvent);
//
inBoxFacade.sellerDeliverNotice(event.getSellerUid(), event.getProductName(), 3);
inBoxFacade.sellerDeliverNotice(event.getSellerUid(), event.getProductName(), 3,null);
}catch (Exception ex){
logger.warn("in topic {} , refund fail,req {}", getMessageTopic(), req, ex);
BillLogEvent buyererBillLogEvent = bleb.tradeStatus(200)
... ...
... ... @@ -71,7 +71,7 @@ public class BuyerOrderPaymentService extends AbstractOrderPaymentService {
//TODO 通知卖家发货
BuyerOrderGoods buyerOrderGoods = buyerOrderGoodsMapper.selectByOrderCode(uid, orderInfo.getOrderCode());
SellerOrderGoods sellerOrderGoods = sellerOrderGoodsMapper.selectByPrimaryKey(buyerOrderGoods.getSkup());
inBoxFacade.sellerSkupPaidByBuyer(orderInfo.getSellerUid(), sellerOrderGoods.getProductName());
inBoxFacade.sellerSkupPaidByBuyer(orderInfo.getSellerUid(), sellerOrderGoods.getProductName(),null);
DeliverNoticeEvent deliverNoticeEvent = DeliverNoticeEvent.builder()
.uid(orderInfo.getSellerUid()).prdName(sellerOrderGoods.getProductName()).build();
... ...
package com.yohoufo.order.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.yoho.error.ServiceError;
import com.yoho.error.exception.ServiceException;
import com.yoho.service.model.response.UserAddressRspBO;
import com.yohobuy.ufo.model.order.bo.SoldPrdComputeBo;
import com.yohobuy.ufo.model.order.resp.ExpressInfoDetail;
import com.yohobuy.ufo.model.order.resp.ExpressInfoRespBo;
import com.yohoufo.common.helper.ImageUrlAssist;
import com.yohoufo.common.utils.DateUtil;
import com.yohoufo.dal.order.model.BuyerOrder;
... ... @@ -16,9 +13,6 @@ import com.yohoufo.dal.order.model.SellerOrderGoods;
import com.yohoufo.order.common.OrderStatus;
import com.yohoufo.order.common.Payment;
import com.yohoufo.order.common.TabType;
import com.yohoufo.order.constants.MetaKey;
import com.yohoufo.order.constants.OrderConstant;
import com.yohoufo.order.convert.AddressInfoConvertor;
import com.yohoufo.order.model.AddressInfo;
import com.yohoufo.order.model.OrderInfo;
import com.yohoufo.order.model.request.OrderRequest;
... ... @@ -27,15 +21,10 @@ import com.yohoufo.order.model.response.OrderDetailInfo;
import com.yohoufo.order.service.IExpressInfoService;
import com.yohoufo.order.service.IOrderDetailService;
import lombok.experimental.Builder;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
/**
* Created by chenchao on 2018/9/20.
*/
... ... @@ -57,6 +46,9 @@ public abstract class AbsOrderDetailService implements IOrderDetailService{
abstract void assembleSoldPrdCompute(OrderDetailInfo orderDetailInfo, int uid, int skup);
abstract ExpressInfoDetail getExpressInfoDetail(OrderStatus orderStatus, long orderCode);
abstract AddressInfo getHiddenAddressInfo(int uid, long orderCode, int skup);
/**
* 获取订单详情
* @param orderRequest
... ... @@ -65,9 +57,10 @@ public abstract class AbsOrderDetailService implements IOrderDetailService{
@Override
public OrderDetailInfo getOrderDetail(OrderRequest orderRequest){
int uid;
long orderCode;
// 参数检查
if ((uid = orderRequest.getUid()) < 0
|| orderRequest.getOrderCode() < 0){
|| (orderCode = orderRequest.getOrderCode()) < 0){
logger.warn("getOrderDetail uid or orderCode empty");
throw new ServiceException(ServiceError.ORDER_REQUEST_PARM_IS_EMPTY);
}
... ... @@ -76,10 +69,10 @@ public abstract class AbsOrderDetailService implements IOrderDetailService{
boolean isBuyer = actor.equals(TabType.BUY);
// 查询订单状态
BuyerOrder buyerOrder = getBuyerOrder(uid, orderRequest.getOrderCode());
BuyerOrder buyerOrder = getBuyerOrder(uid, orderCode);
if (buyerOrder == null){
logger.warn("getOrderDetail orderCode exist, uid is {}, orderCode is {}",
uid, orderRequest.getOrderCode() );
uid, orderCode );
throw new ServiceException(ServiceError.ORDER_NULL);
}
int buyerUid = buyerOrder.getUid();
... ... @@ -88,34 +81,27 @@ public abstract class AbsOrderDetailService implements IOrderDetailService{
OrderStatus orderStatus = OrderStatus.getOrderStatus(status);
if (orderStatus == null){
logger.warn("getOrderDetail status invalidate, uid is {}, buyerUid {}, orderCode is {}, status is {}",
uid, buyerUid, orderRequest.getOrderCode(), buyerOrder.getStatus());
uid, buyerUid, orderCode, buyerOrder.getStatus());
throw new ServiceException(ServiceError.ORDER_STATUS_INVALIDATE);
}
BuyerOrderGoods buyerOrderGoods = getBuyerOrderGoods(buyerUid, orderRequest.getOrderCode());
BuyerOrderGoods buyerOrderGoods = getBuyerOrderGoods(buyerUid, orderCode);
if (buyerOrderGoods == null){
logger.warn("getOrderDetail skup not exist, uid is {}, buyerUid {} orderCode is {}", uid,
buyerUid, orderRequest.getOrderCode());
buyerUid, orderCode);
throw new ServiceException(ServiceError.ORDER_ORDERS_GOODS_IS_EMPTY);
}
SellerOrderGoods sellerOrderGoods = getSellerOrderGoods(buyerOrderGoods.getSkup());
if (sellerOrderGoods == null){
logger.warn("getOrderDetail order goods not exist, uid is {}, orderCode is {}, skup is {}",
uid, orderRequest.getOrderCode(), buyerOrderGoods.getSkup());
uid, orderCode, buyerOrderGoods.getSkup());
throw new ServiceException(ServiceError.ORDER_ORDERS_GOODS_IS_EMPTY);
}
// 收货地址 and 用户信息
BuyerOrderMeta buyerOrderMeta = getBuyerOrderMeta(buyerUid,
orderRequest.getOrderCode(), MetaKey.BUYER_DELIVERY_ADDRESS);
AddressInfo userAddress = null;
if (isBuyer && null != buyerOrderMeta
&& StringUtils.isNotBlank(buyerOrderMeta.getMetaValue())){
userAddress = JSONObject.parseObject(buyerOrderMeta.getMetaValue(), AddressInfo.class);
}
AddressInfo userAddress = getHiddenAddressInfo(uid, orderCode, sellerOrderGoods.getId());
// 需要查询 时间点 and 物流定位
ExpressInfoDetail lastEID = getExpressInfoDetail(orderStatus, orderRequest.getOrderCode());
ExpressInfoDetail lastEID = getExpressInfoDetail(orderStatus, orderCode);
BuildNode buildNode = BuildNode.builder().buyerOrder(buyerOrder).orderStatus(orderStatus)
.buyerOrderGoods(buyerOrderGoods).sellerOrderGoods(sellerOrderGoods).userAddress(userAddress)
... ...
... ... @@ -128,7 +128,7 @@ public class AppraiseService {
expressInfoService.appraiseSuccess(buyerUid, expressCompanyId, orderCode, wayBillCode, depotNum);
//平台已发货给买家
inBoxFacade.depotDeliver2Buyer(buyerUid, orderCode);
inBoxFacade.depotDeliver2Buyer(buyerUid, orderCode,null);
}catch (Exception ex){
LOGGER.warn("in appraiseSuccess,refund fail, req {}", req, ex);
... ... @@ -237,7 +237,7 @@ public class AppraiseService {
SellerOrderGoods sellerOrderGoods = sellerOrderGoodsMapper.selectByPrimaryKey(skup);
inBoxFacade.noticeSellerWhenAppraiseFail(sellerUid, sellerOrderGoods.getProductName());
inBoxFacade.buyerGetEarnestMoneyWhenAppraiseFail(buyerUid, buyerOrder.getOrderCode());
inBoxFacade.buyerGetEarnestMoneyWhenAppraiseFail(buyerUid, buyerOrder.getOrderCode(),null);
}catch (Exception ex){
LOGGER.warn("in appraiseFail ,refund fail,req {}", req, ex);
BillLogEvent buyererBillLogEvent = bleb.tradeStatus(200)
... ...
package com.yohoufo.order.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.yohobuy.ufo.model.order.resp.ExpressInfoDetail;
import com.yohobuy.ufo.model.order.resp.ExpressInfoRespBo;
import com.yohoufo.common.constant.ExpressInfoConstant;
... ... @@ -15,10 +16,13 @@ import com.yohoufo.dal.order.model.BuyerOrderMeta;
import com.yohoufo.dal.order.model.SellerOrderGoods;
import com.yohoufo.order.common.OrderStatus;
import com.yohoufo.order.common.TabType;
import com.yohoufo.order.constants.MetaKey;
import com.yohoufo.order.model.AddressInfo;
import com.yohoufo.order.model.response.OrderDetailInfo;
import com.yohoufo.order.service.IOrderDetailService;
import com.yohoufo.order.service.handler.BuyerConfirmHandler;
import lombok.ToString;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
... ... @@ -102,6 +106,18 @@ public class BuyerOrderDetailService extends AbsOrderDetailService implements IO
return lastEID;
}
@Override
AddressInfo getHiddenAddressInfo(int uid, long orderCode, int skup) {
BuyerOrderMeta buyerOrderMeta = getBuyerOrderMeta(uid,
orderCode, MetaKey.BUYER_DELIVERY_HIDDEN_ADDRESS);
AddressInfo userAddress = null;
if ( null != buyerOrderMeta
&& StringUtils.isNotBlank(buyerOrderMeta.getMetaValue())){
userAddress = JSONObject.parseObject(buyerOrderMeta.getMetaValue(), AddressInfo.class);
}
return userAddress;
}
private static final List<Integer> SHOW_EXPRESS_STATUS_LIST = Arrays.asList(OrderStatus.WAITING_RECEIVE.getCode(),
OrderStatus.DONE.getCode()
);
... ...
... ... @@ -3,6 +3,7 @@ package com.yohoufo.order.service.impl;
import com.yohobuy.ufo.model.order.req.BuyerOrderMetaUpdateReq;
import com.yohoufo.dal.order.BuyerOrderMetaMapper;
import com.yohoufo.dal.order.model.BuyerOrderMeta;
import com.yohoufo.order.constants.MetaKey;
import com.yohoufo.order.service.IBuyerOrderMetaService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
... ... @@ -22,7 +23,7 @@ public class BuyerOrderMetaServiceImpl implements IBuyerOrderMetaService {
BuyerOrderMeta meta=new BuyerOrderMeta();
meta.setUid(req.getUid());
meta.setOrderCode(req.getOrderCode());
meta.setMetaKey("delivery_address");
meta.setMetaKey(MetaKey.BUYER_DELIVERY_ADDRESS);
meta.setMetaValue(req.getAddress());
logger.info("BuyerOrderMetaServiceImpl updateDeliveryAddress meta param {} begin ",meta);
int result = buyerOrderMetaMapper.updateMetaValueByUidAndOrderCodeAndMetaKey(meta);
... ...
... ... @@ -121,7 +121,7 @@ public class BuyerOrderServiceImpl implements IBuyerOrderService {
// 恢复product skup的库存
boolean isReturnSuccess = productProxyService.returnStorage(skup);
//
inBoxFacade.noticSellerWhenBuyerCancel(dataNode.buyerOrderInDB.getSellerUid(), psog.getProductName());
inBoxFacade.noticSellerWhenBuyerCancel(dataNode.buyerOrderInDB.getSellerUid(), psog.getProductName(),null);
inBoxFacade.buyerCancelOrder(orderRequest.getUid(), orderRequest.getOrderCode());
}
... ...
... ... @@ -322,7 +322,7 @@ public class SellerOrderCancelService {
EventBusPublisher.publishEvent(buyererBillLogEvent);
//
inBoxFacade.noticeBuyerWhenSellerCancelAfterPaid(buyerUid, buyerOrderCode);
inBoxFacade.noticeBuyerWhenSellerCancelAfterPaid(buyerUid, buyerOrderCode,null);
//TODO 异步
SellerOrderGoods psog = sellerOrderGoodsMapper.selectByPrimaryKey(sellerOrder.getSkup());
inBoxFacade.sellerCancelAfterBuyerPaid(sellerUid, psog.getProductName());
... ... @@ -476,7 +476,7 @@ public class SellerOrderCancelService {
BillLogEvent sellerBillLogEvent = bleb.tradeStatus(100)
.build();
EventBusPublisher.publishEvent(sellerBillLogEvent);
inBoxFacade.notifyUnshelfCauseBySpecialReason(sellerUid, psog.getProductName());
inBoxFacade.notifyUnshelfCauseBySpecialReason(sellerUid, psog.getProductName(),null);
}catch (Exception ex){
logger.warn("in yoho Off Shelve Cancel, refund earnestMoney fail, seller {}, order code {}, skup {}, earnestMoney {}",
sellerUid, orderCode, skup, earnestMoney, ex);
... ...
... ... @@ -100,10 +100,7 @@ public class SellerOrderDetailService extends AbsOrderDetailService implements I
return buildOrderDetail(sellerOrder, skupStatus, sellerOrderGoods, addressInfo);
}
OrderDetailInfo orderDetailInfo = super.getOrderDetail(orderRequest);
BuyerOrder buyerOrder = buyerOrderMapper.selectByOrderCode(orderCode);
BuyerOrderGoods buyerOrderGoods = buyerOrderGoodsMapper.selectByOrderCode(buyerOrder.getUid(), orderCode);
AddressInfo hiddenAddressInfo = sellerAddressService.getHiddenAddressInfo(buyerOrder.getSellerUid(), buyerOrderGoods.getSkup());
orderDetailInfo.setUserAddress(hiddenAddressInfo);
return orderDetailInfo;
}
... ... @@ -158,6 +155,12 @@ public class SellerOrderDetailService extends AbsOrderDetailService implements I
return lastEID;
}
@Override
AddressInfo getHiddenAddressInfo(int uid, long orderCode, int skup) {
AddressInfo hiddenAddressInfo = sellerAddressService.getHiddenAddressInfo(uid, skup);
return hiddenAddressInfo;
}
/**
* @see AbsOrderDetailService
* uid is seller uid from request, this is very important point
... ...
... ... @@ -141,6 +141,7 @@ public class ShoppingServiceImpl implements IShoppingService {
// 生成订单号
long orderCode = orderCodeGenerator.generate(OrderCodeType.BUYER_TYPE);
AddressInfo addressInfo = userProxyService.getAddressInfoNotHidden(shoppingRequest.getUid(), addressId);
AddressInfo hiddenAddress = userProxyService.getAddressInfoNotHidden(shoppingRequest.getUid(), addressId);
// 减库存,skup更新成不可售,入库
BigDecimal shipFee = new BigDecimal(delivery_way_sf_cost);
... ... @@ -154,6 +155,7 @@ public class ShoppingServiceImpl implements IShoppingService {
.channelNo(shoppingRequest.getChannelNo())
.amount(skup.getGoodsPrice().add(shipFee))
.shipFee(shipFee)
.hiddenAddressInfo(hiddenAddress)
.addressInfo(addressInfo)
.clientType(shoppingRequest.getClientType())
.build();
... ...
... ... @@ -141,6 +141,15 @@ public class SubmitOrderServiceImpl implements ISubmitOrderService {
buyerOrderMeta.setMetaKey(MetaKey.BUYER_DELIVERY_ADDRESS);
buyerOrderMeta.setMetaValue(JSONObject.toJSONString(orderBuilder.getAddressInfo()));
buyerOrderMetaMapper.insert(buyerOrderMeta);
//hidden
BuyerOrderMeta hiddenBOM = new BuyerOrderMeta();
hiddenBOM.setUid(orderBuilder.getUid());
hiddenBOM.setOrderCode(orderBuilder.getOrderCode());
hiddenBOM.setMetaKey(MetaKey.BUYER_DELIVERY_HIDDEN_ADDRESS);
hiddenBOM.setMetaValue(JSONObject.toJSONString(orderBuilder.getHiddenAddressInfo()));
buyerOrderMetaMapper.insert(buyerOrderMeta);
}
private void insertOrderGoods(OrderBuilder orderBuilder, SellerOrderGoods sellerOrderGoods) {
... ...
... ... @@ -10,6 +10,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Created by chenchao on 2018/10/8.
*/
... ... @@ -21,12 +23,16 @@ public class InBoxFacade {
@Autowired
private InBoxSDK inBoxSDK;
@Autowired
private SendSmsService sendSmsService;
/**
* 买家订单未付款
*
* @param buyerUid
*/
public void buyerOrderNotPayed(int buyerUid, long orderCode){
try{
public void buyerOrderNotPayed(int buyerUid, long orderCode) {
try {
String params = buildParams(orderCode);
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_UNPAID;
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
... ... @@ -35,19 +41,20 @@ public class InBoxFacade {
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerOrderNotPayed inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
}catch (Exception e){
} catch (Exception e) {
logger.error("InBoxFacade buyerOrderNotPayed error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 买家支付订单
*
* @param buyerUid
* @param orderCode
*/
public void buyerFinishPaid(int buyerUid, long orderCode){
try{
public void buyerFinishPaid(int buyerUid, long orderCode) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_NOTIFIED_SELLER;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
... ... @@ -55,290 +62,375 @@ public class InBoxFacade {
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerFinishPaid inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
}catch (Exception e){
} catch (Exception e) {
logger.error("InBoxFacade buyerFinishPaid error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 平台已发货给买家
*
* @return
*/
public void depotDeliver2Buyer(int buyerUid,long orderCode){
try{
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_SENDED;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record depotDeliver2Buyer inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_SEND;
String smsparams = buildParams(orderCode);
InboxReqVO smsIbtReq = buildInboxReqVO(buyerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
logger.info("record depotDeliver2Buyer inbox sms msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, smsresp);
}catch (Exception e){
public void depotDeliver2Buyer(int buyerUid, long orderCode, List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_SENDED;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record depotDeliver2Buyer inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
//InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_SEND;
//String smsparams = buildParams(orderCode);
SmsContentEnum smsIbt=SmsContentEnum.SMS_SEND;
String content=smsIbt.getReplacedContent(orderCode);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record depotDeliver2Buyer inbox sms msg, buyerUid {}, orderCode {}",
buyerUid, orderCode);
} catch (Exception e) {
logger.error("InBoxFacade depotDeliver2Buyer error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 订单生成,卖家取消售卖
*
* @param orderCode
*/
public void noticeBuyerWhenSellerCancelAfterPaid(int buyerUid, long orderCode){
try{
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_SELLER;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticeBuyerWhenSellerCancelAfterPaid inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
//短信
InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_CLOSED_SELLER;
String smsparams = buildParams(orderCode);
InboxReqVO smsIbtReq = buildInboxReqVO(buyerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
logger.info("record noticeBuyerWhenSellerCancelAfterPaid inbox sms msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, smsresp);
}catch (Exception e){
public void noticeBuyerWhenSellerCancelAfterPaid(int buyerUid, long orderCode, List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_SELLER;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticeBuyerWhenSellerCancelAfterPaid inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
//短信
//InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_CLOSED_SELLER;
//String smsparams = buildParams(orderCode);
//InboxReqVO smsIbtReq = buildInboxReqVO(buyerUid, smsparams, smsIbt);
//InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
SmsContentEnum smsIbt=SmsContentEnum.SMS_CLOSED_SELLER;
String content=smsIbt.getReplacedContent(orderCode);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record noticeBuyerWhenSellerCancelAfterPaid inbox sms msg, buyerUid {}, orderCode {}",
buyerUid, orderCode);
} catch (Exception e) {
logger.error("InBoxFacade noticeBuyerWhenSellerCancelAfterPaid error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 订单生成,买家取消订单
*/
public void buyerCancelOrder(int buyerUid, long orderCode){
try{
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_BUYER;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerCancelOrder inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
}catch (Exception e){
public void buyerCancelOrder(int buyerUid, long orderCode) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_BUYER;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerCancelOrder inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
} catch (Exception e) {
logger.error("InBoxFacade buyerCancelOrder error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 平台鉴定不通过
*
* @param buyerUid
* @param orderCode
*/
public void buyerGetEarnestMoneyWhenAppraiseFail(int buyerUid, long orderCode){
try{
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_PLATFORM;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerGetEarnestMoneyWhenAppraiseFail inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
//短信
InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_CLOSED_PLATFORM;
String smsparams = buildParams(orderCode);
InboxReqVO smsIbtReq = buildInboxReqVO(buyerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
logger.info("record buyerGetEarnestMoneyWhenAppraiseFail inbox sms msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, smsresp);
}catch (Exception e){
public void buyerGetEarnestMoneyWhenAppraiseFail(int buyerUid, long orderCode, List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.PURCHASE_CLOSED_PLATFORM;
String params = buildParams(orderCode);
InboxReqVO req = buildInboxReqVO(buyerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record buyerGetEarnestMoneyWhenAppraiseFail inbox msg, buyerUid {}, orderCode {}, resp {}",
buyerUid, orderCode, resp);
//短信
//InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_CLOSED_PLATFORM;
//String smsparams = buildParams(orderCode);
//InboxReqVO smsIbtReq = buildInboxReqVO(buyerUid, smsparams, smsIbt);
//InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
SmsContentEnum smsIbt=SmsContentEnum.SMS_CLOSED_PLATFORM;
String content=smsIbt.getReplacedContent(orderCode);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record buyerGetEarnestMoneyWhenAppraiseFail inbox sms msg, buyerUid {}, orderCode {}",
buyerUid, orderCode);
} catch (Exception e) {
logger.error("InBoxFacade buyerGetEarnestMoneyWhenAppraiseFail error inbox msg, buyerUid {}, orderCode {} ,error {}",
buyerUid, orderCode,e);
buyerUid, orderCode, e);
}
}
/**
* 卖家的保证金还没支付
*
* @param sellerUid
* @param prdName
*/
public void sellerOrderNotPaid(int sellerUid, String prdName){
try{
public void sellerOrderNotPaid(int sellerUid, String prdName) {
try {
logger.info("record in sellerOrderNotPaid inbox msg, sellerUid {}, prdName {}",
sellerUid, prdName);
}catch (Exception e){
} catch (Exception e) {
logger.error("InBoxFacade sellerOrderNotPaid error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName,e);
sellerUid, prdName, e);
}
}
public void sellerPlaySelf(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_UNSHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
public void sellerPlaySelf(int sellerUid, String prdName) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_UNSHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerPlaySelf inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerPlaySelf inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
} catch (Exception e) {
logger.error("InBoxFacade sellerPlaySelf error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 因为特殊原因下架商品
* 商品下架提醒,
*
* @param sellerUid
* @param prdName
*/
public void notifyUnshelfCauseBySpecialReason(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_NOTIFIED_UNSHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record notifyUnshelfCauseBySpecialReason inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
//短信
InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_NOTIFIED_UNSHELF;
String smsparams = buildParams(prdName);
InboxReqVO smsIbtReq = buildInboxReqVO(sellerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
logger.info("record notifyUnshelfCauseBySpecialReason inbox sms msg,sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, smsresp);
public void notifyUnshelfCauseBySpecialReason(int sellerUid, String prdName,List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_NOTIFIED_UNSHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record notifyUnshelfCauseBySpecialReason inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
//短信
/* InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_NOTIFIED_UNSHELF;
String smsparams = buildParams(prdName);
InboxReqVO smsIbtReq = buildInboxReqVO(sellerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);*/
SmsContentEnum smsIbt=SmsContentEnum.SMS_NOTIFIED_UNSHELF;
String content=smsIbt.getReplacedContent(prdName);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record notifyUnshelfCauseBySpecialReason inbox sms msg,sellerUid {}, prdName {}, resp {}",
sellerUid, prdName);
} catch (Exception e) {
logger.error("InBoxFacade notifyUnshelfCauseBySpecialReason error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 卖家支付保证金成功 发布的商品上架出售
*
* @param sellerUid
* @param prdName
*/
public void sellerPaidEarnestMoney(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerPaidEarnestMoney inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
public void sellerPaidEarnestMoney(int sellerUid, String prdName) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SHELF;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerPaidEarnestMoney inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
} catch (Exception e) {
logger.error("InBoxFacade sellerPaidEarnestMoney error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 卖家商品售出提醒,买家下单后
*
* @param sellerUid
* @param prdName
*/
public void sellerSkupCreateOrderByBuyer(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SELLED;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerSkupCreateOrderByBuyer inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
public void sellerSkupCreateOrderByBuyer(int sellerUid, String prdName) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SELLED;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerSkupCreateOrderByBuyer inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
} catch (Exception e) {
logger.error("InBoxFacade sellerSkupCreateOrderByBuyer error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 卖家发货提醒,买家支付购买后
*
* @param sellerUid
* @param prdName
*/
public void sellerSkupPaidByBuyer(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SEND;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerSkupPaidByBuyer inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
//短信
InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND;
String smsparams = buildParams(prdName);
InboxReqVO smsIbtReq = buildInboxReqVO(sellerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);
logger.info("record sellerSkupPaidByBuyer inbox sms msg,sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, smsresp);
}
public void sellerDeliverNotice(int sellerUid, String prdName, int times){
logger.info("record sellerDeliverNotice inbox sms msg,sellerUid {}, prdName {}, times {}",
sellerUid, prdName, times);
if (times == 2){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND_SECOND;
public void sellerSkupPaidByBuyer(int sellerUid, String prdName,List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_SEND;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerSkupPaidByBuyer inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
//短信
/*InboxBusinessTypeEnum smsIbt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND;
String smsparams = buildParams(prdName);
InboxReqVO smsIbtReq = buildInboxReqVO(sellerUid, smsparams, smsIbt);
InBoxResponse smsresp = inBoxSDK.addInbox(smsIbtReq);*/
SmsContentEnum smsIbt=SmsContentEnum.SMS_NOTIFIED_SEND;
String content=smsIbt.getReplacedContent(prdName);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record sellerSkupPaidByBuyer inbox sms msg,sellerUid {}, prdName {}, resp {}",
sellerUid, prdName);
} catch (Exception e) {
logger.error("InBoxFacade sellerSkupPaidByBuyer error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
if (times == 3){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND_FAILED;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
public void sellerDeliverNotice(int sellerUid, String prdName, int times,List<String> mobileList) {
try {
logger.info("record sellerDeliverNotice inbox sms msg,sellerUid {}, prdName {}, times {}",
sellerUid, prdName, times);
if (times == 2) {
/*InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND_SECOND;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);*/
SmsContentEnum smsIbt=SmsContentEnum.SMS_NOTIFIED_SEND_SECOND;
String content=smsIbt.getReplacedContent(prdName);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record sellerDeliverNotice inbox sms msg,sellerUid {}, prdName {}, times {},resp {}",
sellerUid, prdName, times);
}
if (times == 3) {
/*InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SMS_NOTIFIED_SEND_FAILED;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);*/
SmsContentEnum smsIbt=SmsContentEnum.SMS_NOTIFIED_SEND_FAILED;
String content=smsIbt.getReplacedContent(prdName);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record sellerDeliverNotice inbox sms msg,sellerUid {}, prdName {}, times {},resp {}",
sellerUid, prdName, times);
}
} catch (Exception e) {
logger.error("InBoxFacade sellerDeliverNotice error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 买家支付完成,卖家取消
*
* @param sellerUid
* @param prdName
*/
public void sellerCancelAfterBuyerPaid(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_SELLER;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerCancelAfterBuyerPaid inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
public void sellerCancelAfterBuyerPaid(int sellerUid, String prdName) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_SELLER;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record sellerCancelAfterBuyerPaid inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
} catch (Exception e) {
logger.error("InBoxFacade sellerCancelAfterBuyerPaid error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 订单生成,买家取消订单(主动 超时未支付时)
*
* @param sellerUid
* @param prdName
*/
public void noticSellerWhenBuyerCancel(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_BUYER;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticSellerWhenBuyerCancel inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
public void noticSellerWhenBuyerCancel(int sellerUid, String prdName,List<String> mobileList) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_BUYER;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InboxBusinessTypeEnum smsibt = InboxBusinessTypeEnum.SMS_CLOSED_BUYER;
InboxReqVO smsReq = buildInboxReqVO(sellerUid, params, smsibt);
InBoxResponse smsResp = inBoxSDK.addInbox(smsReq);
logger.info("record noticSellerWhenBuyerCancel sms inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid,prdName , smsResp);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticSellerWhenBuyerCancel inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
//短信
/*InboxBusinessTypeEnum smsibt = InboxBusinessTypeEnum.SMS_CLOSED_BUYER;
InboxReqVO smsReq = buildInboxReqVO(sellerUid, params, smsibt);
InBoxResponse smsResp = inBoxSDK.addInbox(smsReq);*/
SmsContentEnum smsIbt=SmsContentEnum.SMS_CLOSED_BUYER;
String content=smsIbt.getReplacedContent(prdName);
sendSmsService.smsSendByMobile(content,mobileList);
logger.info("record noticSellerWhenBuyerCancel sms inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName);
} catch (Exception e) {
logger.error("InBoxFacade noticSellerWhenBuyerCancel error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
/**
* 订单生成,平台鉴定不通过
*
* @param sellerUid
* @param prdName
*/
public void noticeSellerWhenAppraiseFail(int sellerUid, String prdName){
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_PLATFORM;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticeSellerWhenAppraiseFail inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
public void noticeSellerWhenAppraiseFail(int sellerUid, String prdName) {
try {
InboxBusinessTypeEnum ibt = InboxBusinessTypeEnum.SALE_CLOSED_PLATFORM;
String params = buildParams(prdName);
InboxReqVO req = buildInboxReqVO(sellerUid, params, ibt);
InBoxResponse resp = inBoxSDK.addInbox(req);
logger.info("record noticeSellerWhenAppraiseFail inbox msg, sellerUid {}, prdName {}, resp {}",
sellerUid, prdName, resp);
} catch (Exception e) {
logger.error("InBoxFacade noticeSellerWhenAppraiseFail error inbox msg, sellerUid {}, prdName {} ,error {}",
sellerUid, prdName, e);
}
}
public InboxReqVO buildInboxReqVO(int uid,String params, InboxBusinessTypeEnum ibt){
public InboxReqVO buildInboxReqVO(int uid, String params, InboxBusinessTypeEnum ibt) {
InboxReqVO req = new InboxReqVO();
req.setType(ibt.getType());
req.setBusinessType(ibt.getBusinessType());
... ... @@ -348,12 +440,12 @@ public class InBoxFacade {
return req;
}
public static String buildParams(Object... objects){
if (objects == null){
public static String buildParams(Object... objects) {
if (objects == null) {
return null;
}
if(objects.length == 1){
if (objects.length == 1) {
return objects[0].toString();
}
... ... @@ -361,6 +453,5 @@ public class InBoxFacade {
return params;
}
}
... ...
package com.yohoufo.order.service.proxy;
import org.slf4j.helpers.MessageFormatter;
public enum SmsContentEnum {
SMS_SEND("【UFO飞碟好物】您购买的商品{}已由平台发货。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-购买]。"),
SMS_CLOSED_SELLER("【UFO飞碟好物】卖家取消{}出售,您已获得卖家赔偿,将于1-3个工作日内转至您绑定的银行卡。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-购买]。"),
SMS_CLOSED_PLATFORM("【UFO飞碟好物】鉴定不通过:您购买的商品{}未通过平台鉴定,您已获得卖家赔偿,将于1-3个工作日内转至您绑定的银行卡。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-购买]。"),
SMS_NOTIFIED_SEND("【UFO飞碟好物】您的商品{}买家已付款,请于36小时内完成发货。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-出售]。"),
SMS_NOTIFIED_UNSHELF("【UFO飞碟好物】因为特殊原因,您的商品{}暂停售卖,您支付的保证金将于1个工作日内退回您的支付账户。"),
SMS_NOTIFIED_SEND_SECOND("【UFO飞碟好物】您的商品{}剩余12小时发货时间,请尽快完成发货。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-出售]。"),
SMS_NOTIFIED_SEND_FAILED("【UFO飞碟好物】您的商品{}未在规定时间内发货,平台已将您的保证金扣除并赔偿给买家。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-出售]。"),
SMS_CLOSED_BUYER("【UFO飞碟好物】买家已取消订单,您的商品{}已重新上架出售。更多信息请查看Yoho!Buy有货APP [UFO飞碟好物-我的-出售]。");
private String content;
SmsContentEnum(String content) {
this.content = content;
}
public String getContent() {
return this.content;
}
public String getReplacedContent(Object... params) {
return MessageFormatter.arrayFormat(this.content, params).getMessage();
}
}
... ...