123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541 |
- package me.chanjar.weixin.channel.api;
- import java.util.Map;
- import me.chanjar.weixin.channel.bean.message.after.AfterSaleMessage;
- import me.chanjar.weixin.channel.bean.message.after.ComplaintMessage;
- import me.chanjar.weixin.channel.bean.message.coupon.CouponActionMessage;
- import me.chanjar.weixin.channel.bean.message.coupon.CouponReceiveMessage;
- import me.chanjar.weixin.channel.bean.message.coupon.UserCouponExpireMessage;
- import me.chanjar.weixin.channel.bean.message.fund.AccountNotifyMessage;
- import me.chanjar.weixin.channel.bean.message.fund.QrNotifyMessage;
- import me.chanjar.weixin.channel.bean.message.fund.WithdrawNotifyMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderCancelMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderConfirmMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderDeliveryMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderExtMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderIdMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderPayMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderSettleMessage;
- import me.chanjar.weixin.channel.bean.message.order.OrderStatusMessage;
- import me.chanjar.weixin.channel.bean.message.product.BrandMessage;
- import me.chanjar.weixin.channel.bean.message.product.CategoryAuditMessage;
- import me.chanjar.weixin.channel.bean.message.product.SpuAuditMessage;
- import me.chanjar.weixin.channel.bean.message.product.SpuStockMessage;
- import me.chanjar.weixin.channel.bean.message.store.CloseStoreMessage;
- import me.chanjar.weixin.channel.bean.message.store.NicknameUpdateMessage;
- import me.chanjar.weixin.channel.bean.message.supplier.SupplierItemMessage;
- import me.chanjar.weixin.channel.bean.message.vip.ExchangeInfoMessage;
- import me.chanjar.weixin.channel.bean.message.vip.UserInfoMessage;
- import me.chanjar.weixin.channel.bean.message.voucher.VoucherMessage;
- import me.chanjar.weixin.channel.message.WxChannelMessage;
- import me.chanjar.weixin.channel.message.WxChannelMessageRouterRule;
- import me.chanjar.weixin.common.session.WxSessionManager;
- /**
- * @author <a href="https://github.com/lixize">Zeyes</a>
- */
- public interface BaseWxChannelMessageService {
- /**
- * 路由微信消息
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param service 服务实例
- * @return Object
- */
- Object route(final WxChannelMessage message, final String content, final String appId,
- final WxChannelService service);
- /**
- * 添加一条规则进入路由器
- *
- * @param rule 规则
- */
- void addRule(WxChannelMessageRouterRule<? extends WxChannelMessage> rule);
- /**
- * 订单下单
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderNew(final OrderIdMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单取消
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderCancel(OrderCancelMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单支付成功
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderPay(OrderPayMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 订单待发货
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderWaitShipping(OrderIdMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 订单发货
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderDelivery(OrderDeliveryMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单确认收货
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderConfirm(OrderConfirmMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单结算成功
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderSettle(OrderSettleMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单其他信息更新
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderExtInfoUpdate(OrderExtMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 订单状态更新
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void orderStatusUpdate(OrderStatusMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 商品审核结果
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void spuAudit(SpuAuditMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 商品系统下架通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void spuStatusUpdate(SpuAuditMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 商品更新通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void spuUpdate(SpuAuditMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 商品库存不足通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void stockNoEnough(SpuStockMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 类目审核结果
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void categoryAudit(CategoryAuditMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 品牌更新
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void brandUpdate(BrandMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 售后单状态更新
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void afterSaleStatusUpdate(AfterSaleMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 纠纷回调
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void complaintNotify(ComplaintMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户领券通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponReceive(CouponReceiveMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 创建优惠券通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponCreate(CouponActionMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 优惠券删除通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponDelete(CouponActionMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 优惠券过期通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponExpire(CouponActionMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 更新优惠券信息通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponUpdate(CouponActionMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 优惠券作废通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void couponInvalid(CouponActionMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户优惠券过期通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void userCouponExpire(UserCouponExpireMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户优惠券使用通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void userCouponUse(UserCouponExpireMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户优惠券返还通知
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void userCouponUnuse(UserCouponExpireMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 发放团购优惠成功回调
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void voucherSendSucc(VoucherMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 结算账户变更回调
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void accountNotify(AccountNotifyMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 提现回调
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void withdrawNotify(WithdrawNotifyMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 提现二维码回调
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void qrNotify(QrNotifyMessage message, final String content, final String appId, final Map<String, Object> context,
- final WxSessionManager sessionManager);
- /**
- * 团长商品变更
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void supplierItemUpdate(SupplierItemMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户加入会员.
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- public void vipJoin(UserInfoMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户注销会员.
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- void vipClose(UserInfoMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户等级更新.
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- void vipGradeUpdate(UserInfoMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户积分更新.
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- void vipScoreUpdate(UserInfoMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 用户积分兑换
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- void vipScoreExchange(ExchangeInfoMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 小店注销
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void closeStore(CloseStoreMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 小店修改名称
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- */
- void updateNickname(NicknameUpdateMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 默认消息处理
- *
- * @param message 消息
- * @param content 消息原始内容
- * @param appId appId
- * @param context 上下文
- * @param sessionManager session管理器
- * @return Object
- */
- Object defaultMessageHandler(WxChannelMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- /**
- * 分享员变更
- *
- * @param message the message
- * @param content the content
- * @param appId the app id
- * @param context the context
- * @param sessionManager the session manager
- */
- void sharerChange(WxChannelMessage message, final String content, final String appId,
- final Map<String, Object> context, final WxSessionManager sessionManager);
- }
|