Authored by TANLING

fix bug

... ... @@ -58,7 +58,7 @@ public class StoreSellerServiceImpl implements IStoredSellerService {
private static final Logger logger = LoggerUtils.getSellerOrderLogger();
private static final Logger scriptLogger = LoggerFactory.getLogger("script");
private static final Logger scriptLogger = LoggerFactory.getLogger("degradeScript");
@Autowired
private StoredSellerMapper storedSellerMapper;
... ... @@ -405,7 +405,7 @@ public class StoreSellerServiceImpl implements IStoredSellerService {
Map<Integer, Double> onshelfEarnest = Maps.newHashMap();
for (SellerEarnestStatistics statistics : plusSellers){
// 实际上架的商品保证金 > 钱包中的保证金余额
// 实际上架的商品保证金 > 钱包中的保证金余额 ==> 需要下架商品
if (YHMath.sub(statistics.getEarnestTotal(),statistics.getLeftMoney())>0){
scriptLogger.info("{} need down self, goods earnest money {}, left money {}", statistics.getUid(), statistics.getEarnestTotal(), statistics.getLeftMoney());
... ... @@ -423,6 +423,12 @@ public class StoreSellerServiceImpl implements IStoredSellerService {
onshelfEarnest.put(statistics.getUid(), YHMath.sub(statistics.getEarnestTotal(), goodsEarnest.getValue()));
}
// 即使保证金是充足的,只要上架中的商品对应的保证金也是需要冻结的
else{
onshelfEarnest.put(statistics.getUid(), statistics.getEarnestTotal());
scriptLogger.info("{} no need down self, goods earnest money {}, left money {}", statistics.getUid(), statistics.getEarnestTotal(), statistics.getLeftMoney());
}
}
// 3.执行uid的降级 & skup的下架
... ... @@ -434,7 +440,7 @@ public class StoreSellerServiceImpl implements IStoredSellerService {
storedSeller.setEntryType(EntrySellerType.COMMON.getCode());
storedSeller.setUpdateTime(DateUtil.getCurrentTimeSecond());
storedSellerMapper.updateByUidSelective(storedSeller);
scriptLogger.info("{} degrade success, skup {}", uid, downSelfSkupMap.get(uid));
scriptLogger.info("{} degrade uid success, attach ==> degrade skups {}, lock money {} ", uid, downSelfSkupMap.get(uid), onshelfEarnest.get(uid));
// 3.3 占用保证金
if (onshelfEarnest.get(uid) != null){
... ... @@ -446,6 +452,7 @@ public class StoreSellerServiceImpl implements IStoredSellerService {
.earnestMoney(earnestMoney)
.type(SellerWalletDetail.Type.PUBLISH.getValue()).build();
merchantOrderPaymentService.useEarnest(uid, earnestMoney, moai);
scriptLogger.info("{} lock money {} success", uid, onshelfEarnest.get(uid));
}
// 3.2 下架商品
... ...
... ... @@ -36,12 +36,12 @@
</appender>
<appender name="SCRIPT" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${ufo.gateway.env.namespace}/script.log</file>
<appender name="DEGRADE-SCRIPT" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${yoho.logs.basedir}/${ufo.gateway.env.namespace}/degrade-script.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>
${yoho.logs.basedir}/${ufo.gateway.env.namespace}/archived/script.%d{yyyy-MM-dd}.%i.log.gz
${yoho.logs.basedir}/${ufo.gateway.env.namespace}/archived/degrade-script.%d{yyyy-MM-dd}.%i.log.gz
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
... ... @@ -662,9 +662,9 @@
<appender-ref ref="PAYMENTERR_ALIPAY"/>
</logger>
<logger name="script" additivity="true">
<logger name="degradeScript" additivity="true">
<level value="INFO"/>
<appender-ref ref="SCRIPT"/>
<appender-ref ref="DEGRADE-SCRIPT"/>
</logger>
<!-- Alipay Err -->
... ...