Merge #105 into master from cc_20260422_feeItemId

fix:splitType 传入

* cc_20260422_feeItemId: (2 commits squashed)

  - fix:费用类型feetId

  - fix:splitType 传入

Signed-off-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>
Merged-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>

CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/105
This commit is contained in:
正新
2026-04-22 09:29:26 +00:00
parent 34d95a3e4d
commit e6797ce3ff
6 changed files with 32 additions and 16 deletions

View File

@@ -40,4 +40,6 @@ public class GenerateSplitOrderRequest implements Serializable {
@ApiModelProperty("备注")
@Length(max = 255, message = "备注长度不能超过255")
private String remark;
private Integer splitType;
}

View File

@@ -5,6 +5,7 @@ import com.cool.store.request.fees.WalletCancelPayRequest;
import com.cool.store.request.fees.WalletPayRequest;
import com.cool.store.request.fees.WalletRepayRequest;
import com.cool.store.vo.fees.WalletPayInfoVO;
import io.swagger.models.auth.In;
import java.math.BigDecimal;
import java.util.List;
@@ -71,4 +72,6 @@ public interface WalletPayInfoService {
* @return
*/
AccountTransferDTO accountPay(String expenseType, BigDecimal amount, String inAccNo, String outAccNo, String payNo, String remark);
Integer getFeeItemId(String expenseType);
}

View File

@@ -376,18 +376,24 @@ public class WalletPayInfoServiceImpl implements WalletPayInfoService {
@Override
public AccountTransferDTO accountPay(String expenseType, BigDecimal amount, String inAccNo, String outAccNo,String payNo, String remark) {
WalletFeeItemEnum feeItem = WalletFeeItemEnum.getByExpenseType(expenseType);
if (Objects.isNull(feeItem)) {
throw new ServiceException(ErrorCodeEnum.NONSUPPORT_EXPENSE_TYPE);
}
Integer feeItemId = getFeeItemId(expenseType);
AccountTransferRequest request = new AccountTransferRequest();
request.setReqNo(payNo);
request.setInAccNo(inAccNo);
request.setOutAccNo(outAccNo);
request.setRemark(remark);
request.setAmount(amount.toPlainString());
request.setFeeItemId(feeItem.getFeeItemId());
request.setFeeItemId(feeItemId);
request.setWalletType(WalletTypeEnum.ONLINE_BANK.getType());
return walletApiService.accountTransfer(request);
}
@Override
public Integer getFeeItemId(String expenseType) {
String feeItemId = redisUtil.hashGetString("expense_type", expenseType);
if (StringUtils.isNotBlank(feeItemId)){
return Integer.valueOf(feeItemId);
}
throw new ServiceException(ErrorCodeEnum.NONSUPPORT_EXPENSE_TYPE);
}
}

View File

@@ -289,10 +289,14 @@ public class AdjustmentOrderServiceImpl implements AdjustmentOrderService {
AccountInfoDTO accountInfoDTO = accountInfoList.get(0);
Integer splitType = request.getSplitType();
if (splitType==null){
splitType = SplitTypeEnum.ADD_BY_HAND.getStatus();
}
// 生成分账单
SplitOrderDO splitOrder = SplitOrderDO.builder()
.splitNo(splitNo)
.splitType(SplitTypeEnum.ADD_BY_HAND.getStatus())
.splitType(splitType)
.relatedStoreId(adjustmentOrder.getStoreId())
.payerAccountName(accountInfoDTO.getAccountName())
.payerAccountNo(accountInfoDTO.getAccountNo())

View File

@@ -259,11 +259,8 @@ public class PreAllocationRecordServiceImpl implements PreAllocationRecordServic
transData.setReqNo(payNo);
// 根据费用类型获取费用科目ID
WalletFeeItemEnum feeItem = WalletFeeItemEnum.getByExpenseType(record.getExpenseType());
if (feeItem == null) {
throw new ServiceException(ErrorCodeEnum.NONSUPPORT_EXPENSE_TYPE);
}
transData.setFeeItemId(feeItem.getFeeItemId());
Integer feeItemId = walletPayInfoService.getFeeItemId(record.getExpenseType());
transData.setFeeItemId(feeItemId);
transData.setCompanyCode(record.getPayeeCode());
transData.setAmount(record.getPayAmount().toString());
@@ -762,11 +759,8 @@ public class PreAllocationRecordServiceImpl implements PreAllocationRecordServic
transDataRequest.setCompanyCode(record.getPayeeCode());
transDataRequest.setAmount(record.getPayAmount().toPlainString());
transDataRequest.setRemark(transRequest.getRemark());
WalletFeeItemEnum feeItem = WalletFeeItemEnum.getByExpenseType(record.getExpenseType());
if (feeItem == null) {
throw new ServiceException(ErrorCodeEnum.NONSUPPORT_EXPENSE_TYPE);
}
transDataRequest.setFeeItemId(feeItem.getFeeItemId());
Integer feeItemId = walletPayInfoService.getFeeItemId(record.getExpenseType());
transDataRequest.setFeeItemId(feeItemId);
BatchTransferRequest transReq= new BatchTransferRequest(walletType, shopInfo.getStoreId(), null,1, Arrays.asList(transDataRequest));
batchTransferDTO = walletApiService.batchTransfer(transReq);
}catch (Exception e){

View File

@@ -926,4 +926,11 @@ public class PCTestController {
return ResponseResult.success(Boolean.TRUE);
}
@ApiOperation("获取feeItemId")
@GetMapping("/getFeeItemId")
public ResponseResult<Integer> getFeeItemId(@RequestParam String expenseType) {
Integer feeItemId = walletPayInfoService.getFeeItemId(expenseType);
return ResponseResult.success(feeItemId);
}
}