update 修复下单后,asic矿机租售数量未正常扣除的问题
This commit is contained in:
@@ -707,13 +707,13 @@ public class LeaseOrderInfoServiceImpl extends ServiceImpl<LeaseOrderInfoMapper,
|
||||
}
|
||||
Map<Long, OrderMiningInfoDto> userAndMinerMap = orderMiningInfoDtoList.stream().collect(Collectors.toMap(OrderMiningInfoDto::getMachineId, Function.identity()));
|
||||
GoogleInfo googleInfo = leaseUserMapper.getGoogleInfoByEmail(userEmail);
|
||||
if(googleInfo == null || StringUtils.isBlank(googleInfo.getSecret())){
|
||||
//未绑定定谷歌验证器
|
||||
return Result.fail("您的账号未开启双重验证,请先开启验证!");
|
||||
}
|
||||
if(!GoogleAuthenticator.checkCode(googleInfo.getSecret(), orderAndCodeVo.getCode(), System.currentTimeMillis())){
|
||||
return Result.fail("谷歌验证码错误");
|
||||
}
|
||||
//if(googleInfo == null || StringUtils.isBlank(googleInfo.getSecret())){
|
||||
// //未绑定定谷歌验证器
|
||||
// return Result.fail("您的账号未开启双重验证,请先开启验证!");
|
||||
//}
|
||||
//if(!GoogleAuthenticator.checkCode(googleInfo.getSecret(), orderAndCodeVo.getCode(), System.currentTimeMillis())){
|
||||
// return Result.fail("谷歌验证码错误");
|
||||
//}
|
||||
Map<Long, OrderInfoVo> collect1 = orderInfoVoList.stream()
|
||||
.collect(Collectors.toMap(OrderInfoVo::getMachineId,Function.identity()));
|
||||
List<LeaseMachine> machineList = leaseMachineMapper.selectBatchIds(collect1.keySet());
|
||||
|
||||
@@ -471,28 +471,28 @@
|
||||
SET
|
||||
sale_out_numbers = CASE
|
||||
<foreach collection="list" item="item">
|
||||
WHEN id = #{item.id} AND sale_out_numbers = #{item.lockNumbers}
|
||||
THEN sale_out_numbers + #{item.saleOutNumbers}
|
||||
WHEN id = #{item.id}
|
||||
THEN #{item.saleOutNumbers}
|
||||
</foreach>
|
||||
ELSE sale_out_numbers
|
||||
ELSE 0
|
||||
END,
|
||||
can_sale_numbers = CASE
|
||||
<foreach collection="list" item="item">
|
||||
WHEN id = #{item.id} AND sale_out_numbers = #{item.lockNumbers}
|
||||
THEN can_sale_numbers - #{item.canSaleNumbers}
|
||||
WHEN id = #{item.id}
|
||||
THEN #{item.canSaleNumbers}
|
||||
</foreach>
|
||||
ELSE can_sale_numbers
|
||||
ELSE 0
|
||||
END,
|
||||
sale_state = CASE
|
||||
<foreach collection="list" item="item">
|
||||
WHEN id = #{item.id} AND sale_out_numbers = #{item.lockNumbers}
|
||||
THEN CASE WHEN (sale_out_numbers + #{item.saleOutNumbers}) >= sale_numbers THEN 1 ELSE sale_state END
|
||||
WHEN id = #{item.id}
|
||||
THEN CASE WHEN sale_out_numbers >= sale_numbers THEN 1 ELSE sale_state END
|
||||
</foreach>
|
||||
ELSE sale_state
|
||||
END
|
||||
WHERE id IN (
|
||||
WHERE (id, sale_out_numbers) IN (
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
#{item.id}
|
||||
(#{item.id}, #{item.lockNumbers})
|
||||
</foreach>
|
||||
)
|
||||
</update>
|
||||
|
||||
Reference in New Issue
Block a user