Authored by wujiexiang

边界问题处理

@@ -119,7 +119,7 @@ public class BuyerOrderChangeBusinessPostProcessor { @@ -119,7 +119,7 @@ public class BuyerOrderChangeBusinessPostProcessor {
119 context.buyerOrder = buyerOrder; 119 context.buyerOrder = buyerOrder;
120 context.bizCase = bizCase; 120 context.bizCase = bizCase;
121 context.targetStatus = targetStatus; 121 context.targetStatus = targetStatus;
122 - //sql超时,会在listenerContainer层告警 122 + //sql超时,会在listenerContainer层告警,最好是添加重试
123 context.activityBo = buyerOrderMetaMapperSupport.selectByMetaKey(buyerOrder.getUid(), buyerOrder.getOrderCode(), MetaKey.ACTIVITY_KEY, ActivityBo.class); 123 context.activityBo = buyerOrderMetaMapperSupport.selectByMetaKey(buyerOrder.getUid(), buyerOrder.getOrderCode(), MetaKey.ACTIVITY_KEY, ActivityBo.class);
124 return context; 124 return context;
125 } 125 }
@@ -161,19 +161,13 @@ public class BuyerOrderChangeBusinessPostProcessor { @@ -161,19 +161,13 @@ public class BuyerOrderChangeBusinessPostProcessor {
161 void paySuccess(BusinessProcessorContext context); 161 void paySuccess(BusinessProcessorContext context);
162 } 162 }
163 163
164 - //默认业务处理  
165 - private class DefaultBusinessProcessor implements BusinessProcessor { 164 + /**
  165 + * adapter interface BusinessProcessor
  166 + */
  167 + private class BusinessProcessorAdapter implements BusinessProcessor {
166 @Override 168 @Override
167 public void create(BusinessProcessorContext context) { 169 public void create(BusinessProcessorContext context) {
168 - BuyerOrder buyerOrder = context.buyerOrder;  
169 - logger.debug("[{}] buyer order amount is {}", buyerOrder.getOrderCode(), buyerOrder.getAmount());  
170 - if (buyerOrder.getAmount().doubleValue() == 0) {  
171 - logger.warn("[{}] buyer order amount is zero", buyerOrder.getOrderCode());  
172 - //0元订单 告警一下  
173 - EventBusPublisher.publishEvent(  
174 - new SmsAlarmEvent("ufo.buyerOrder", "submit", buyerOrder.getOrderCode() + " amount is zero")  
175 - );  
176 - } 170 +
177 } 171 }
178 172
179 @Override 173 @Override
@@ -187,12 +181,28 @@ public class BuyerOrderChangeBusinessPostProcessor { @@ -187,12 +181,28 @@ public class BuyerOrderChangeBusinessPostProcessor {
187 } 181 }
188 } 182 }
189 183
  184 + //默认业务处理
  185 + private class DefaultBusinessProcessor extends BusinessProcessorAdapter {
  186 + @Override
  187 + public void create(BusinessProcessorContext context) {
  188 + BuyerOrder buyerOrder = context.buyerOrder;
  189 + logger.debug("[{}] buyer order amount is {}", buyerOrder.getOrderCode(), buyerOrder.getAmount());
  190 + if (buyerOrder.getAmount().doubleValue() == 0) {
  191 + logger.warn("[{}] buyer order amount is zero", buyerOrder.getOrderCode());
  192 + //0元订单 告警一下
  193 + EventBusPublisher.publishEvent(
  194 + new SmsAlarmEvent("ufo.buyerOrder", "submit", buyerOrder.getOrderCode() + " amount is zero")
  195 + );
  196 + }
  197 + }
  198 + }
  199 +
190 //砍价业务 200 //砍价业务
191 private class BargainBusinessProcessor implements BusinessProcessor { 201 private class BargainBusinessProcessor implements BusinessProcessor {
192 202
193 @Override 203 @Override
194 public void create(BusinessProcessorContext context) { 204 public void create(BusinessProcessorContext context) {
195 - 205 + //nothing
196 } 206 }
197 207
198 @Override 208 @Override
@@ -217,12 +227,11 @@ public class BuyerOrderChangeBusinessPostProcessor { @@ -217,12 +227,11 @@ public class BuyerOrderChangeBusinessPostProcessor {
217 if (!Objects.equals(buyerOrder.getActivityType(), ActivityTypeEnum.BARGAIN.getCode())) { 227 if (!Objects.equals(buyerOrder.getActivityType(), ActivityTypeEnum.BARGAIN.getCode())) {
218 return false; 228 return false;
219 } 229 }
220 - if (activityBo == null || activityBo.getUserActivityId() < 0) { 230 + if (activityBo == null || activityBo.getUserActivityId() <= 0) {
221 logger.warn("[{}] has no userActivityId", buyerOrder.getOrderCode()); 231 logger.warn("[{}] has no userActivityId", buyerOrder.getOrderCode());
222 return false; 232 return false;
223 } 233 }
224 return true; 234 return true;
225 } 235 }
226 } 236 }
227 -  
228 -} 237 +}