Browse Source

04-03 新增流水——iPay88手续费

lijianlin/feature-20260401-现金管理四期
lijianlin 6 days ago
parent
commit
bcfbbbf1f5
  1. 23
      src/main/java/com/example/demo/controller/cash/CashCollectionController.java
  2. 2
      src/main/java/com/example/demo/mapper/cash/CashCollectionMapper.java
  3. 2
      src/main/java/com/example/demo/service/cash/CashCollectionService.java
  4. 28
      src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java
  5. 10
      src/main/resources/cashMapper/CashCollectionMapper.xml

23
src/main/java/com/example/demo/controller/cash/CashCollectionController.java

@ -447,6 +447,29 @@ public class CashCollectionController {
return Result.error(errorMsg); return Result.error(errorMsg);
} }
} }
/**
*新增iPay88手续费
*/
@PostMapping("/addiPay88Fee")
public Result addIpay88Fee(@RequestBody CashCollection cashCollection, @RequestHeader(defaultValue = "zh_CN") String lang) {
try {
// 解析语言代码
String languageCode = parseLanguageCode(lang);
// 如果不是中文环境将查询条件中的翻译文本转换为中文简体
if (!"zh".equalsIgnoreCase(languageCode) && !"zh_cn".equalsIgnoreCase(languageCode)) {
convertTranslatedFieldsToChinese(cashCollection, languageCode);
}
String result = cashCollectionService.addIpay88Fee(cashCollection);
String successMsg = languageTranslationUtil.translate(result, lang);
return Result.success(successMsg);
} catch (Exception e) {
String errorMsg = languageTranslationUtil.translate(e.getMessage(), lang);
return Result.error(errorMsg);
}
}
/** /**
* 查询所有钱包类型 * 查询所有钱包类型

2
src/main/java/com/example/demo/mapper/cash/CashCollectionMapper.java

@ -124,4 +124,6 @@ public interface CashCollectionMapper {
@Param("market") String market); @Param("market") String market);
// 添加流水--其他收入 // 添加流水--其他收入
void addExFund(@Param("addFundsDTO") CashCollection addFundsDTO); void addExFund(@Param("addFundsDTO") CashCollection addFundsDTO);
// 添加流水--iPay88手续费
void addIpay88Fee(CashCollection cashCollection);
} }

2
src/main/java/com/example/demo/service/cash/CashCollectionService.java

@ -56,4 +56,6 @@ public interface CashCollectionService {
PageInfo<UserWalletVO> selectUserWallets(Integer jwcode, String market, Integer pageNum, Integer pageSize); PageInfo<UserWalletVO> selectUserWallets(Integer jwcode, String market, Integer pageNum, Integer pageSize);
// 添加流水--其他收入 // 添加流水--其他收入
String addExFund(CashCollection addFundsDTO); String addExFund(CashCollection addFundsDTO);
//添加iPay88手续费
String addIpay88Fee(CashCollection cashCollection);
} }

28
src/main/java/com/example/demo/serviceImpl/cash/CashCollectionServiceImpl.java

@ -715,6 +715,34 @@ public class CashCollectionServiceImpl implements CashCollectionService {
cashCollectionMapper.addExFund(addFundsDTO); cashCollectionMapper.addExFund(addFundsDTO);
return "添加成功"; return "添加成功";
} }
//添加iPay88手续费
@Override
public String addIpay88Fee(CashCollection cashCollection) {
if (cashCollection.getPayType()== null|| cashCollection.getPayType().isEmpty())
throw new IllegalArgumentException("支付方式不能为空");
if (cashCollection.getPerformanceMarket()== null|| cashCollection.getPerformanceMarket().isEmpty())
throw new IllegalArgumentException("业绩归属地区不能为空");
if (cashCollection.getPaymentCurrency()== null|| cashCollection.getPaymentCurrency().isEmpty())
throw new IllegalArgumentException("币种不能为空");
if (cashCollection.getHandlingCharge()== null|| cashCollection.getHandlingCharge().compareTo(BigDecimal.ZERO) < 0)
throw new IllegalArgumentException("手续费不能为空");
if (cashCollection.getRemark()== null|| cashCollection.getRemark().isEmpty())
throw new IllegalArgumentException("备注不能为空");
//生成订单号后半部分
String orderNumber = UUID.randomUUID().toString().replaceAll("-", "");
//构建订单信息
cashCollection.setOrderCode("QT_" + orderNumber); //订单号
cashCollection.setGoodsName("手续费");
cashCollection.setReceivedMarket("5");
cashCollection.setPaymentAmount(BigDecimal.ZERO);
cashCollection.setJwcode(90039082);
cashCollection.setName("HomilyLink");
cashCollection.setMarket("24032");
cashCollection.setOrderType(1);
cashCollection.setActivity("124");
cashCollectionMapper.addIpay88Fee(cashCollection);
return "添加成功";
}
/** /**
* 校验钱包 ID 和到账地区的对应关系 * 校验钱包 ID 和到账地区的对应关系

10
src/main/resources/cashMapper/CashCollectionMapper.xml

@ -435,6 +435,16 @@
#{addFundsDTO.performanceMarket},#{addFundsDTO.remark},#{addFundsDTO.handlingCharge},#{addFundsDTO.payTime}, #{addFundsDTO.performanceMarket},#{addFundsDTO.remark},#{addFundsDTO.handlingCharge},#{addFundsDTO.payTime},
#{addFundsDTO.submitterId},#{addFundsDTO.submitterMarket}) #{addFundsDTO.submitterId},#{addFundsDTO.submitterMarket})
</insert> </insert>
<insert id="addIpay88Fee">
insert into cash_record_collection
(order_type,jwcode,name,market,activity,order_code,goods_name,pay_type,payment_currency,handling_charge,remark,payment_amount,
received_market,performance_market,submitter_id,submitter_market,pay_time)
values(#{orderType},#{jwcode},#{name},#{market},#{activity},#{orderCode},
#{goodsName},#{payType},#{paymentCurrency},#{handlingCharge},#{remark},
#{paymentAmount},#{receivedMarket},#{performanceMarket},#{submitterId},
#{submitterMarket},now()
)
</insert>
<!-- 根据精网号和钱包 ID 查询用户钱包明细列表 --> <!-- 根据精网号和钱包 ID 查询用户钱包明细列表 -->
<select id="selectWalletRecordsByJwcodeAndWalletId" resultType="com.example.demo.domain.vo.cash.UserWalletRecordVO"> <select id="selectWalletRecordsByJwcodeAndWalletId" resultType="com.example.demo.domain.vo.cash.UserWalletRecordVO">

Loading…
Cancel
Save