提交 42b9d3e9 authored 作者: huyufan's avatar huyufan

订单到期释放冻结的相关资金

上级 c97def26
...@@ -17,7 +17,8 @@ public enum IdTypeEnum { ...@@ -17,7 +17,8 @@ public enum IdTypeEnum {
CASE_OUT_FROZEN(3L, "提现冻结"), CASE_OUT_FROZEN(3L, "提现冻结"),
CASE_OUT_SUCCESS(4L, "提现成功"), CASE_OUT_SUCCESS(4L, "提现成功"),
TOP_UP_SUCCESS(5L, "充值成功"), TOP_UP_SUCCESS(5L, "充值成功"),
FROZEN(6L, "冻结") FROZEN(6L, "冻结"),
THAW(7L, "解冻")
; ;
private final Long code; private final Long code;
private final String msg; private final String msg;
......
package com.clx.performance.feign; package com.clx.performance.feign;
import com.clx.performance.param.pc.owner.FrozenAccountParam; import com.clx.performance.param.pc.owner.FrozenAccountParam;
import com.clx.performance.param.pc.owner.ThawAccountParam;
import com.clx.performance.param.pc.owner.UpdateStatusParam; import com.clx.performance.param.pc.owner.UpdateStatusParam;
import com.clx.performance.vo.feign.OrderGoodsFeignVO; import com.clx.performance.vo.feign.OrderGoodsFeignVO;
import com.msl.common.result.Result; import com.msl.common.result.Result;
...@@ -34,6 +35,9 @@ public interface PerformanceFeign { ...@@ -34,6 +35,9 @@ public interface PerformanceFeign {
@PostMapping(value = {"clx-performance/feign/owner/ownerAccountFrozen"}) @PostMapping(value = {"clx-performance/feign/owner/ownerAccountFrozen"})
Result<Object> ownerAccountFrozen(@RequestBody FrozenAccountParam param); Result<Object> ownerAccountFrozen(@RequestBody FrozenAccountParam param);
@PostMapping(value = {"clx-performance/feign/owner/ownerAccountThaw"})
Result<Object> ownerAccountThaw(@RequestBody ThawAccountParam param);
@PostMapping(value = {"clx-performance/pc/carrier/settlementOwner/updateStatusByOrderNo"}) @PostMapping(value = {"clx-performance/pc/carrier/settlementOwner/updateStatusByOrderNo"})
Result<Object> updateStatusByOrderNo(@RequestBody UpdateStatusParam param); Result<Object> updateStatusByOrderNo(@RequestBody UpdateStatusParam param);
} }
package com.clx.performance.param.pc.owner;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
@Getter
@Setter
@NoArgsConstructor
@ToString
public class ThawAccountParam {
private String orderNo;
// 1: 普通单 2:网运单
private String orderType;
}
...@@ -2,6 +2,7 @@ package com.clx.performance.controller.feign; ...@@ -2,6 +2,7 @@ package com.clx.performance.controller.feign;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.clx.performance.param.pc.owner.FrozenAccountParam; import com.clx.performance.param.pc.owner.FrozenAccountParam;
import com.clx.performance.param.pc.owner.ThawAccountParam;
import com.clx.performance.service.OwnerAccountService; import com.clx.performance.service.OwnerAccountService;
import com.msl.common.result.Result; import com.msl.common.result.Result;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -24,11 +25,19 @@ public class OwnerAccountFeignController { ...@@ -24,11 +25,19 @@ public class OwnerAccountFeignController {
private final OwnerAccountService ownerAccountService; private final OwnerAccountService ownerAccountService;
@ApiOperation(value = "冻结保证金", notes = "<br>By:胡宇帆") @ApiOperation(value = "冻结保证金和预付运费", notes = "<br>By:胡宇帆")
@PostMapping("/ownerAccountFrozen") @PostMapping("/ownerAccountFrozen")
public Result<Object> ownerAccountFrozen(@RequestBody FrozenAccountParam param) { public Result<Object> ownerAccountFrozen(@RequestBody FrozenAccountParam param) {
log.info("进行冻结保证金账户,相关参数{}", JSONUtil.parse(param).toString()); log.info("进行冻结保证金和预付运费,相关参数{}", JSONUtil.parse(param).toString());
ownerAccountService.ownerAccountFrozen(param); ownerAccountService.ownerAccountFrozen(param);
return Result.ok(); return Result.ok();
} }
@ApiOperation(value = "解冻保证金和预付运费", notes = "<br>By:胡宇帆")
@PostMapping("/ownerAccountThaw")
public Result<Object> ownerAccountThaw(@RequestBody ThawAccountParam param) {
log.info("进行解冻保证金和预付运费账户,相关参数{}", JSONUtil.parse(param).toString());
ownerAccountService.ownerAccountThaw(param);
return Result.ok();
}
} }
...@@ -21,4 +21,6 @@ public interface OwnerAccountDao extends BaseDao<OwnerAccountMapper, OwnerAccoun ...@@ -21,4 +21,6 @@ public interface OwnerAccountDao extends BaseDao<OwnerAccountMapper, OwnerAccoun
Integer updateAccountCAS(OwnerAccount account, LocalDateTime now, boolean flag); Integer updateAccountCAS(OwnerAccount account, LocalDateTime now, boolean flag);
Integer thawAccount(OwnerAccount account, LocalDateTime now);
} }
...@@ -9,6 +9,8 @@ import com.clx.performance.param.pc.PagePlatformPrepaidFreightAccountParam; ...@@ -9,6 +9,8 @@ import com.clx.performance.param.pc.PagePlatformPrepaidFreightAccountParam;
import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO; import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO;
import com.msl.common.dao.BaseDao; import com.msl.common.dao.BaseDao;
import java.util.List;
public interface OwnerRunningWaterRecordDao extends BaseDao<OwnerRunningWaterRecordMapper, OwnerRunningWaterRecord, Integer> { public interface OwnerRunningWaterRecordDao extends BaseDao<OwnerRunningWaterRecordMapper, OwnerRunningWaterRecord, Integer> {
...@@ -17,4 +19,6 @@ public interface OwnerRunningWaterRecordDao extends BaseDao<OwnerRunningWaterRec ...@@ -17,4 +19,6 @@ public interface OwnerRunningWaterRecordDao extends BaseDao<OwnerRunningWaterRec
IPage<OwnerAccountRunningWaterRecordVO> prepaidFreightAccountPageList(PagePlatformPrepaidFreightAccountParam param); IPage<OwnerAccountRunningWaterRecordVO> prepaidFreightAccountPageList(PagePlatformPrepaidFreightAccountParam param);
IPage<OwnerAccountRunningWaterRecordVO> ownerAccountRunningWaterPageList(PageOwnerAccountRunningWaterParam param); IPage<OwnerAccountRunningWaterRecordVO> ownerAccountRunningWaterPageList(PageOwnerAccountRunningWaterParam param);
List<OwnerRunningWaterRecord> getOwnerRunningWaterRecord(String orderNo);
} }
...@@ -41,14 +41,14 @@ public class OwnerAccountDaoImpl extends BaseDaoImpl<OwnerAccountMapper, OwnerAc ...@@ -41,14 +41,14 @@ public class OwnerAccountDaoImpl extends BaseDaoImpl<OwnerAccountMapper, OwnerAc
@Override @Override
public Integer updateOwnerAccountForConfirm(OwnerAccount account) { public Integer updateOwnerAccountForConfirm(OwnerAccount account) {
String nowStr = DateUtils.formatDateTime(LocalDateTime.now(),"yyyy-MM-dd HH:mm:ss").get(); String nowStr = DateUtils.formatDateTime(LocalDateTime.now(), "yyyy-MM-dd HH:mm:ss").get();
return baseMapper.updateOwnerAccountForConfirm(account,nowStr); return baseMapper.updateOwnerAccountForConfirm(account, nowStr);
} }
@Override @Override
public Integer updateAccountCAS(OwnerAccount account, LocalDateTime now, boolean flag) { public Integer updateAccountCAS(OwnerAccount account, LocalDateTime now, boolean flag) {
String nowStr = DateUtils.formatDateTime(now,"yyyy-MM-dd HH:mm:ss").get(); String nowStr = DateUtils.formatDateTime(now, "yyyy-MM-dd HH:mm:ss").get();
if (flag) { if (flag) {
return baseMapper.addAccount(account, nowStr); return baseMapper.addAccount(account, nowStr);
} else { } else {
...@@ -56,5 +56,12 @@ public class OwnerAccountDaoImpl extends BaseDaoImpl<OwnerAccountMapper, OwnerAc ...@@ -56,5 +56,12 @@ public class OwnerAccountDaoImpl extends BaseDaoImpl<OwnerAccountMapper, OwnerAc
} }
} }
@Override
public Integer thawAccount(OwnerAccount account, LocalDateTime now) {
String nowStr = DateUtils.formatDateTime(now, "yyyy-MM-dd HH:mm:ss").get();
return baseMapper.thawAccount(account, nowStr);
}
} }
...@@ -12,6 +12,8 @@ import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO; ...@@ -12,6 +12,8 @@ import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO;
import com.msl.common.dao.impl.BaseDaoImpl; import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public class OwnerRunningWaterRecordDaoImpl extends BaseDaoImpl<OwnerRunningWaterRecordMapper, OwnerRunningWaterRecord, Integer> implements OwnerRunningWaterRecordDao { public class OwnerRunningWaterRecordDaoImpl extends BaseDaoImpl<OwnerRunningWaterRecordMapper, OwnerRunningWaterRecord, Integer> implements OwnerRunningWaterRecordDao {
...@@ -32,4 +34,11 @@ public class OwnerRunningWaterRecordDaoImpl extends BaseDaoImpl<OwnerRunningWate ...@@ -32,4 +34,11 @@ public class OwnerRunningWaterRecordDaoImpl extends BaseDaoImpl<OwnerRunningWate
Page<OwnerAccountRunningWaterRecordVO> page = Page.of(param.getPage(), param.getPageSize()); Page<OwnerAccountRunningWaterRecordVO> page = Page.of(param.getPage(), param.getPageSize());
return baseMapper.ownerAccountRunningWaterPageList(page, param); return baseMapper.ownerAccountRunningWaterPageList(page, param);
} }
@Override
public List<OwnerRunningWaterRecord> getOwnerRunningWaterRecord(String orderNo) {
return baseMapper.selectList(lambdaQuery().eq(OwnerRunningWaterRecord::getOrderNo, orderNo)
.eq(OwnerRunningWaterRecord::getOrderChildNo, null)
);
}
} }
...@@ -45,4 +45,13 @@ public interface OwnerAccountMapper extends BaseMapper<OwnerAccount> { ...@@ -45,4 +45,13 @@ public interface OwnerAccountMapper extends BaseMapper<OwnerAccount> {
+ "where id = #{account.id} and modified_time = #{account.modifiedTime}" + "where id = #{account.id} and modified_time = #{account.modifiedTime}"
) )
Integer updateOwnerAccountForConfirm(@Param("account") OwnerAccount account, @Param("now") String now); Integer updateOwnerAccountForConfirm(@Param("account") OwnerAccount account, @Param("now") String now);
@Update("update owner_account set usable_balance = usable_balance + #{account.usableBalance}"
+ ",account_balance = account_balance + #{account.accountBalance}"
+ ",frozen_balance = frozen_balance - #{account.frozenBalance},"
+ ",modified_time= #{now}"
+ "where id = #{account.id} and modified_time = #{account.modifiedTime}"
)
Integer thawAccount(@Param("account") OwnerAccount account, @Param("now") String now);
} }
\ No newline at end of file
...@@ -8,6 +8,7 @@ import com.clx.performance.param.open.OpenOwnerTopUpParam; ...@@ -8,6 +8,7 @@ import com.clx.performance.param.open.OpenOwnerTopUpParam;
import com.clx.performance.param.pc.*; import com.clx.performance.param.pc.*;
import com.clx.performance.param.pc.owner.CreteAccountParam; import com.clx.performance.param.pc.owner.CreteAccountParam;
import com.clx.performance.param.pc.owner.FrozenAccountParam; import com.clx.performance.param.pc.owner.FrozenAccountParam;
import com.clx.performance.param.pc.owner.ThawAccountParam;
import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO; import com.clx.performance.vo.pc.OwnerAccountRunningWaterRecordVO;
import com.clx.performance.vo.pc.OwnerAccountVO; import com.clx.performance.vo.pc.OwnerAccountVO;
import com.clx.user.param.pc.owner.UpdateOwnerBindCardFeignParam; import com.clx.user.param.pc.owner.UpdateOwnerBindCardFeignParam;
...@@ -82,4 +83,6 @@ public interface OwnerAccountService { ...@@ -82,4 +83,6 @@ public interface OwnerAccountService {
void ownerAccountFrozen(FrozenAccountParam param); void ownerAccountFrozen(FrozenAccountParam param);
void createAccount(CreteAccountParam param); void createAccount(CreteAccountParam param);
void ownerAccountThaw(ThawAccountParam param);
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论