商户流水 功能完善

master
guochaojie 3 months ago
parent fca5d85483
commit c9103675c0

@ -42,9 +42,9 @@ public class EnterpriseAccountBill {
@TableField("order_number") @TableField("order_number")
private String orderNumber; private String orderNumber;
// @ApiModelProperty("订单类型id") @ApiModelProperty("订单类型id")
// @TableField("order_type_id") @TableField("order_type_id")
// private String orderTypeId; private String orderTypeId;
// @ApiModelProperty("单据状态id") // @ApiModelProperty("单据状态id")
// @TableField("bill_status_id") // @TableField("bill_status_id")

@ -20,7 +20,9 @@ public enum OrderTypeEnum implements BaseEnum {
DZ_RECOVERY("520193532170867013", "到站回收"), DZ_RECOVERY("520193532170867013", "到站回收"),
ADM_ORDER("521999177572425477", "人工下单"); ADM_ORDER("521999177572425477", "人工下单"),
CZ_ORDER("585052745690520133", "商户充值"),
TD_ORDER("585052836950186565", "投递订单");
@EnumValue @EnumValue
private final String code; private final String code;

@ -9,6 +9,7 @@ import cc.yunxi.domain.query.ClientQuery;
import cc.yunxi.domain.query.RecyclerQuery; import cc.yunxi.domain.query.RecyclerQuery;
import cc.yunxi.domain.vo.client.ClientUpdateVO; import cc.yunxi.domain.vo.client.ClientUpdateVO;
import cc.yunxi.enums.BalanceChangeTypeEnum; import cc.yunxi.enums.BalanceChangeTypeEnum;
import cc.yunxi.enums.OrderTypeEnum;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
@ -113,7 +114,7 @@ public interface IClientService extends IService<Client> {
* @param orderNo * @param orderNo
* @param enterpriseId * @param enterpriseId
*/ */
void addBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId); void addBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId, String orderType);
/** /**

@ -14,6 +14,7 @@ import cc.yunxi.domain.query.RecyclerQuery;
import cc.yunxi.domain.vo.client.ClientUpdateVO; import cc.yunxi.domain.vo.client.ClientUpdateVO;
import cc.yunxi.enums.BalanceChangeTypeEnum; import cc.yunxi.enums.BalanceChangeTypeEnum;
import cc.yunxi.enums.BusinessCodeEnum; import cc.yunxi.enums.BusinessCodeEnum;
import cc.yunxi.enums.OrderTypeEnum;
import cc.yunxi.mapper.ClientAccountDetailMapper; import cc.yunxi.mapper.ClientAccountDetailMapper;
import cc.yunxi.mapper.ClientMapper; import cc.yunxi.mapper.ClientMapper;
import cc.yunxi.mapper.EnterpriseAccountBillMapper; import cc.yunxi.mapper.EnterpriseAccountBillMapper;
@ -191,14 +192,14 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
@Override @Override
public void addBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId) { public void addBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId, String orderType) {
this.changeBalance(clientId, amount, orderNo, enterpriseId, BalanceChangeTypeEnum.INCOME); this.changeBalance(clientId, amount, orderNo, enterpriseId, BalanceChangeTypeEnum.INCOME,orderType);
} }
@Override @Override
public void reduceBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId) { public void reduceBalance(String clientId, BigDecimal amount, String orderNo, String enterpriseId) {
this.changeBalance(clientId, amount, orderNo, enterpriseId, BalanceChangeTypeEnum.REFUND); this.changeBalance(clientId, amount, orderNo, enterpriseId, BalanceChangeTypeEnum.REFUND,"");
} }
@Override @Override
@ -212,7 +213,7 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void cashBalance(String openId, Integer amount) throws Exception { public void cashBalance(String openId, Integer amount) throws Exception {
this.changeBalance(openId, new BigDecimal(amount), null, null, BalanceChangeTypeEnum.CASH_OUT); this.changeBalance(openId, new BigDecimal(amount), null, null, BalanceChangeTypeEnum.CASH_OUT,"");
// 微信提现(单位:分) // 微信提现(单位:分)
amount = amount * 100; amount = amount * 100;
BatchTransferModel batchTransferModel = new BatchTransferModel() BatchTransferModel batchTransferModel = new BatchTransferModel()
@ -291,7 +292,8 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
// 统一金额交易 // 统一金额交易
private void changeBalance(String keyId, BigDecimal amount, String orderNo, private void changeBalance(String keyId, BigDecimal amount, String orderNo,
String enterpriseId, BalanceChangeTypeEnum changeTypeEnum) { String enterpriseId, BalanceChangeTypeEnum changeTypeEnum,
String orderType) {
Client client = this.getClientByKeyId(keyId); Client client = this.getClientByKeyId(keyId);
BigDecimal balance = client.getBanlance(); BigDecimal balance = client.getBanlance();
String remark; String remark;
@ -320,6 +322,7 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
accountBill.setAccountBalance(fund); accountBill.setAccountBalance(fund);
accountBill.setPayoutAmount(amount); accountBill.setPayoutAmount(amount);
accountBill.setOrderNumber(orderNo); accountBill.setOrderNumber(orderNo);
accountBill.setOrderTypeId(orderType);
accountBill.setRemark("支付给散户" + amountStr + "元"); accountBill.setRemark("支付给散户" + amountStr + "元");
accountBill.setCreatorTime(now); accountBill.setCreatorTime(now);
accountBillMapper.insert(accountBill); accountBillMapper.insert(accountBill);
@ -345,6 +348,7 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
accountBill1.setAccountBalance(fund1); accountBill1.setAccountBalance(fund1);
accountBill1.setIncomeAmount(amount); accountBill1.setIncomeAmount(amount);
accountBill1.setOrderNumber(orderNo); accountBill1.setOrderNumber(orderNo);
accountBill1.setOrderTypeId(orderType);
accountBill1.setRemark("散户退款到商户" + amountStr + "元"); accountBill1.setRemark("散户退款到商户" + amountStr + "元");
accountBill1.setCreatorTime(now); accountBill1.setCreatorTime(now);
accountBillMapper.insert(accountBill1); accountBillMapper.insert(accountBill1);

@ -10,6 +10,7 @@ import cc.yunxi.domain.vo.client.ClientRespVO;
import cc.yunxi.domain.vo.enterprise.WalletVO; import cc.yunxi.domain.vo.enterprise.WalletVO;
import cc.yunxi.enums.BusinessCodeEnum; import cc.yunxi.enums.BusinessCodeEnum;
import cc.yunxi.enums.GlobalStatusEnum; import cc.yunxi.enums.GlobalStatusEnum;
import cc.yunxi.enums.OrderTypeEnum;
import cc.yunxi.mapper.EnterpriseAccountBillMapper; import cc.yunxi.mapper.EnterpriseAccountBillMapper;
import cc.yunxi.mapper.EnterpriseMapper; import cc.yunxi.mapper.EnterpriseMapper;
import cc.yunxi.mapper.WalletMapper; import cc.yunxi.mapper.WalletMapper;
@ -60,9 +61,10 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
} }
return this.getEnterpriseById(enterpriseId, true); return this.getEnterpriseById(enterpriseId, true);
} }
@Override @Override
public String getEnterpriseUserIdByCompanyId(String companyId) { public String getEnterpriseUserIdByCompanyId(String companyId) {
return enterpriseMapper.queryEnterpriseUserIdByCompanyId(companyId); return enterpriseMapper.queryEnterpriseUserIdByCompanyId(companyId);
} }
@ -87,7 +89,7 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void rechargeBalance(String merchantId, Integer amount,String orderNumber) { public void rechargeBalance(String merchantId, Integer amount, String orderNumber) {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
// 余额充值 // 余额充值
Enterprise enterprise = this.getEnterpriseById(merchantId, true); Enterprise enterprise = this.getEnterpriseById(merchantId, true);
@ -104,6 +106,7 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
accountBill.setAccountBalance(fund); accountBill.setAccountBalance(fund);
accountBill.setIncomeAmount(rechargeAmount); accountBill.setIncomeAmount(rechargeAmount);
accountBill.setOrderNumber(orderNumber); accountBill.setOrderNumber(orderNumber);
accountBill.setOrderTypeId(OrderTypeEnum.CZ_ORDER.getCode());
accountBill.setRemark("充值金额" + rechargeAmount.setScale(2, RoundingMode.HALF_UP) + "元"); accountBill.setRemark("充值金额" + rechargeAmount.setScale(2, RoundingMode.HALF_UP) + "元");
accountBill.setCreatorTime(now); accountBill.setCreatorTime(now);

@ -3,6 +3,7 @@ package cc.yunxi.service.impl;
import cc.yunxi.domain.po.RecycleDeliveryOrder; import cc.yunxi.domain.po.RecycleDeliveryOrder;
import cc.yunxi.domain.query.DeliveryOrderQuery; import cc.yunxi.domain.query.DeliveryOrderQuery;
import cc.yunxi.domain.vo.recycleorder.RecycleDeliveryOrderVO; import cc.yunxi.domain.vo.recycleorder.RecycleDeliveryOrderVO;
import cc.yunxi.enums.OrderTypeEnum;
import cc.yunxi.mapper.RecycleDeliveryOrderMapper; import cc.yunxi.mapper.RecycleDeliveryOrderMapper;
import cc.yunxi.service.IClientService; import cc.yunxi.service.IClientService;
import cc.yunxi.service.IRecycleDeliveryOrderService; import cc.yunxi.service.IRecycleDeliveryOrderService;
@ -55,7 +56,7 @@ public class RecycleDeliveryOrderServiceImpl extends ServiceImpl<RecycleDelivery
String orderNo = order.getOrderNo(); String orderNo = order.getOrderNo();
BigDecimal amount = order.getAdjustPrice(); BigDecimal amount = order.getAdjustPrice();
String companyId = order.getCompanyId(); String companyId = order.getCompanyId();
clientService.addBalance(client, amount, orderNo, companyId);//结算 clientService.addBalance(client, amount, orderNo, companyId, OrderTypeEnum.TD_ORDER.getCode());//结算
} }
} }

@ -314,7 +314,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
this.updateById(recycleOrder); this.updateById(recycleOrder);
// 增加收入余额 异步? todo // 增加收入余额 异步? todo
clientService.addBalance(client.getId(), totalAmount, orderNo, recycler.getCompanyId()); clientService.addBalance(client.getId(), totalAmount, orderNo, recycler.getCompanyId(),OrderTypeEnum.DZ_RECOVERY.getCode());
return orderId; return orderId;
} }
@ -461,7 +461,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
recyclerService.totalTick(recyclerId, distance, totalAmount); recyclerService.totalTick(recyclerId, distance, totalAmount);
// 增加收入余额 异步? todo // 增加收入余额 异步? todo
clientService.addBalance(clientId, totalAmount, orderNumber, recycleOrder.getCompanyId()); clientService.addBalance(clientId, totalAmount, orderNumber, recycleOrder.getCompanyId(),OrderTypeEnum.SH_ORDER.getCode());
} }
@ -524,7 +524,7 @@ public class RecycleOrderServiceImpl extends ServiceImpl<RecycleOrderMapper, Rec
recyclerService.totalTick(tmOrderFinishVO.getStaffsId(), distance, totalAmount); recyclerService.totalTick(tmOrderFinishVO.getStaffsId(), distance, totalAmount);
// 增加收入余额 异步? todo // 增加收入余额 异步? todo
clientService.addBalance(clientId, totalAmount, orderNumber, recycleOrder.getCompanyId()); clientService.addBalance(clientId, totalAmount, orderNumber, recycleOrder.getCompanyId(),OrderTypeEnum.TM_RECOVERY.getCode());
} }

Loading…
Cancel
Save