|
|
@@ -21,10 +21,7 @@ import com.izouma.nineth.config.WxPayProperties;
|
|
|
import com.izouma.nineth.domain.Asset;
|
|
|
import com.izouma.nineth.domain.GiftOrder;
|
|
|
import com.izouma.nineth.domain.User;
|
|
|
-import com.izouma.nineth.enums.AssetStatus;
|
|
|
-import com.izouma.nineth.enums.OrderStatus;
|
|
|
-import com.izouma.nineth.enums.PayMethod;
|
|
|
-import com.izouma.nineth.enums.TransferReason;
|
|
|
+import com.izouma.nineth.enums.*;
|
|
|
import com.izouma.nineth.exception.BusinessException;
|
|
|
import com.izouma.nineth.repo.*;
|
|
|
import com.izouma.nineth.utils.SnowflakeIdWorker;
|
|
|
@@ -95,6 +92,15 @@ public class GiftOrderService {
|
|
|
holdDays = asset.getHoldDays();
|
|
|
}
|
|
|
|
|
|
+ if (holdDays == 0 && AssetSource.OFFICIAL.equals(asset.getSource())) {
|
|
|
+ BigDecimal officialConsignment = sysConfigService.getBigDecimal("OFFICIAL_CONSIGNMENT");
|
|
|
+ //天转小时
|
|
|
+ int hour = officialConsignment.multiply(new BigDecimal("24")).intValue();
|
|
|
+ if (ChronoUnit.HOURS.between(asset.getCreatedAt(), LocalDateTime.now()) < hour) {
|
|
|
+ throw new BusinessException("需持有满" + hour + "小时后才能转赠");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (ChronoUnit.DAYS.between(asset.getCreatedAt(), LocalDateTime.now()) < holdDays) {
|
|
|
throw new BusinessException("需持有满" + holdDays + "天才能转赠");
|
|
|
}
|