diff --git a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
index e93abfd7..faeb9fd2 100644
--- a/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
+++ b/hiver-core/src/main/java/cc/hiver/core/serviceimpl/JPushServiceImpl.java
@@ -9,12 +9,21 @@ import cn.jpush.api.push.model.notification.Notification;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import javax.annotation.PreDestroy;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+
@Service
public class JPushServiceImpl implements JPushService {
+ private static final long PUSH_DELAY_SECONDS = 10L;
+
@Autowired
private JPushClient jPushClient;
+ private final ScheduledExecutorService pushScheduler = Executors.newSingleThreadScheduledExecutor();
+
@Autowired
public JPushServiceImpl(JPushClient jPushClient) {
this.jPushClient = jPushClient;
@@ -23,26 +32,38 @@ public class JPushServiceImpl implements JPushService {
@Override
public void sendPushNotification(String registrationId, String message,String orderId) {
- PushPayload payload = PushPayload.newBuilder()
- .setPlatform(cn.jpush.api.push.model.Platform.all())
- .setAudience(cn.jpush.api.push.model.audience.Audience.registrationId(registrationId))
- .setNotification(Notification.alert(message))
- .setMessage(Message.newBuilder()
- .setMsgContent("消æ¯å†…容")
- .addExtra("custom_key", "custom_value") // é¢å¤–傿•°
- .addExtra("type", "订å•通知")
- .addExtra("order_id",orderId)
- .addExtra("timestamp", System.currentTimeMillis())
- .build())
- .build();
+ // 这里获å–的是最åŽä¸€æ¬¡ç™»å½•的设备id,如果没有登录过,那么就ä¸å‘é€è®¢å•
+ if(registrationId == null || registrationId.isEmpty()){
+ return;
+ }
+
+ pushScheduler.schedule(() -> doSendPushNotification(registrationId, message, orderId),
+ PUSH_DELAY_SECONDS, TimeUnit.SECONDS);
+ }
+
+ private void doSendPushNotification(String registrationId, String message, String orderId) {
try {
- // 这里获å–的是最åŽä¸€æ¬¡ç™»å½•的设备id,如果没有登录过,那么就ä¸å‘é€è®¢å•
- if(registrationId != null && !registrationId.isEmpty()){
- PushResult result = jPushClient.sendPush(payload);
- System.out.println("Push result: " + result);
- }
+ PushPayload payload = PushPayload.newBuilder()
+ .setPlatform(cn.jpush.api.push.model.Platform.all())
+ .setAudience(cn.jpush.api.push.model.audience.Audience.registrationId(registrationId))
+ .setNotification(Notification.alert(message))
+ .setMessage(Message.newBuilder()
+ .setMsgContent("消æ¯å†…容")
+ .addExtra("custom_key", "custom_value") // é¢å¤–傿•°
+ .addExtra("type", "订å•通知")
+ .addExtra("order_id",orderId)
+ .addExtra("timestamp", System.currentTimeMillis())
+ .build())
+ .build();
+ PushResult result = jPushClient.sendPush(payload);
+ System.out.println("Push result: " + result);
} catch (Exception e) {
e.printStackTrace();
}
}
+
+ @PreDestroy
+ public void destroy() {
+ pushScheduler.shutdown();
+ }
}
diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommentController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommentController.java
index c06a91ed..0cfb3982 100644
--- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommentController.java
+++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/CommentController.java
@@ -88,28 +88,29 @@ public class CommentController {
@ApiOperation("ä¿å˜")
public Result save( @RequestBody List
comment) {
comment.forEach(e -> {
- if(e.getScore() == null || e.getScore().compareTo(BigDecimal.ZERO) == 0){
+ e.setCreateTime(new Date());
+ if(StringUtils.isEmpty(e.getParentId())){
+ e.setLevel(ShopConstant.SHOP_STATUS_LOCK);
+ }else{
+ e.setLevel(ShopConstant.SHOP_STATUS_NORMAL);
+ }
+ if((e.getScore() == null || e.getScore().compareTo(BigDecimal.ZERO) == 0) && e.getLevel() == ShopConstant.SHOP_STATUS_LOCK){
e.setScore(BigDecimal.valueOf(5));
}
- if(StringUtils.isEmpty(e.getRemark())){
- if(e.getScore().equals(5)){
+ if(StringUtils.isEmpty(e.getRemark()) && e.getLevel() == ShopConstant.SHOP_STATUS_LOCK){
+ if (e.getScore().compareTo(BigDecimal.valueOf(5)) == 0) {
e.setRemark("该用户觉得很好,给出了5星好评");
- }else if(e.getScore().equals(4)){
+ } else if (e.getScore().compareTo(BigDecimal.valueOf(4)) == 0) {
e.setRemark("该用户觉得还å¯ä»¥ï¼Œç»™å‡ºäº†4星评价");
- }else if(e.getScore().equals(3)){
+ } else if (e.getScore().compareTo(BigDecimal.valueOf(3)) == 0) {
e.setRemark("该用户觉得一般,给出了3星评价");
- }else if(e.getScore().equals(2)){
+ } else if (e.getScore().compareTo(BigDecimal.valueOf(2)) == 0) {
e.setRemark("该用户觉得ä¸å¥½ï¼Œç»™å‡ºäº†2星评价");
- }else{
+ } else {
e.setRemark("该用户觉得很ä¸å¥½ï¼Œç»™å‡ºäº†1星差评");
}
}
- e.setCreateTime(new Date());
- if(StringUtils.isEmpty(e.getParentId())){
- e.setLevel(ShopConstant.SHOP_STATUS_LOCK);
- }else{
- e.setLevel(ShopConstant.SHOP_STATUS_NORMAL);
- }
+
if(e.getLevel() == ShopConstant.SHOP_STATUS_LOCK){
if(e.getShopId().toUpperCase().startsWith("W")){
//æ›´æ–°é…é€å‘˜è¯„分
diff --git a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallCouponController.java b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallCouponController.java
index 6970d64f..04096d5d 100644
--- a/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallCouponController.java
+++ b/hiver-modules/hiver-mall/src/main/java/cc/hiver/mall/controller/MallCouponController.java
@@ -69,6 +69,15 @@ public class MallCouponController {
private Integer pageSize = 10;
}
+ @Data
+ public static class CouponIssuePageReq {
+ private String couponId;
+ private String regionId;
+ private String mobile;
+ private Integer pageNum = 1;
+ private Integer pageSize = 10;
+ }
+
@PostMapping("/add")
@ApiOperation(value = "æ·»åŠ /å‘è¡Œä¼˜æƒ åˆ¸")
public Result