Browse Source

Merge branch 'refs/heads/huangqizheng/feature-20260128093535-免费金币接口' into milestone-20260128-DC金豆金币接口

milestone-20260128-DC金豆金币接口
huangqizhen 4 weeks ago
parent
commit
acb88d9c02
  1. 22
      src/main/java/com/example/demo/Util/GoldTistV2.java
  2. 9
      src/main/java/com/example/demo/controller/coin/RechargeController.java
  3. 2
      src/main/java/com/example/demo/service/coin/RechargeService.java
  4. 23
      src/main/java/com/example/demo/serviceImpl/coin/RechargeServiceImpl.java

22
src/main/java/com/example/demo/Util/GoldTistV2.java

@ -215,6 +215,28 @@ public class GoldTistV2 {
return resp;
}
public static String addDCCoinNew(String jwcode, int lx, double jbs, String sjzfc,
String remark,double yjjb,String czr,String goodsname){
//查错误使用
// String sjzfc = RandomUid(10);
String resp = "";
try {
DESGB desjbkc = new DESGB("Jbxt.205");
String sk = "jwcode="+jwcode+"&number="+jbs+"&uid="+sjzfc+"&remark="+
remark+"&czr="+czr+"&yjjb="+yjjb+"&czpt=4&goodsname="+goodsname+"&type="+lx;
System.out.println("签名前:"+sk);
String sign = generateSignature(sk.split("&"),"222251821eba7efab6d48e388b8f6baa");
sk = desjbkc.encrypt(new String(sk.getBytes(), "UTF-8"));
System.out.println(url+"goldUpdate_sign.gold?app=4&sk="+sk+"&sign="+sign);
resp = doGet(url+"goldUpdate_sign.gold?app=4&sk="+sk+"&sign="+sign);
}catch (Exception e){
System.out.println("加金币异常"+e.toString());
}
System.out.println(resp);
return resp;
}
/** addCoinRecordNew("94226013","测试","lzh","测试商品");
* @功能描述: 添加一条单独的记录不更新金币
* @开发人员: 弘历研发部 刘志红 2025-3-21下午1:58:13 创建

9
src/main/java/com/example/demo/controller/coin/RechargeController.java

@ -160,6 +160,15 @@ public class RechargeController {
}
}
@Log("DC免费金币充值")
@PostMapping("/addDC")
public Result addDC(@RequestBody RechargeUser rechargeUser) {
try {
return rechargeService.addDC(rechargeUser);
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
public Result select(@RequestBody Page page, @RequestHeader(defaultValue = "zh_CN") String lang) {
try {

2
src/main/java/com/example/demo/service/coin/RechargeService.java

@ -27,4 +27,6 @@ public interface RechargeService {
//添加充值记录
Result add(RechargeUser rechargeUser);
Result addDC(RechargeUser rechargeUser);
}

23
src/main/java/com/example/demo/serviceImpl/coin/RechargeServiceImpl.java

@ -1,8 +1,10 @@
package com.example.demo.serviceImpl.coin;
import com.example.demo.Util.GoldTistV2;
import com.example.demo.Util.SimpleIdGenerator;
import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.domain.vo.bean.BeanUserCard;
import com.example.demo.exception.SystemException;
import com.example.demo.mapper.bean.BeanUserMapper;
import com.example.demo.mapper.coin.MarketMapper;
import com.example.demo.mapper.coin.RechargeMapper;
@ -150,4 +152,25 @@ public class RechargeServiceImpl implements RechargeService {
rechargeMapper.add(userGoldRecord);
return Result.success();
}
@Override
public Result addDC(RechargeUser rechargeUser) {
if (rechargeUser.getJwcode()==null||rechargeUser.getJwcode()<10000000||rechargeUser.getJwcode()>99999999){
throw new SystemException("精网号位数小于8位或大于8位");
}
if (rechargeUser.getFreeGold()==null||rechargeUser.getFreeGold().compareTo(BigDecimal.ZERO)<0){
throw new SystemException("免费金币不能小于0");
}
String result = GoldTistV2.addDCCoinNew(rechargeUser.getJwcode().toString(),63,rechargeUser.getFreeGold().doubleValue(),"","DC免费金币赠送",0,"DC","DC免费金币赠送");
// 只关注 -1, -6, -7
if ("-6".equals(result)) {
throw new SystemException(String.format("金币发放失败:类型错误(-6),jwcode=%s", rechargeUser.getJwcode()));
// 检查 lx=63 是否被支持
} else if ("-7".equals(result)) {
throw new SystemException(String.format("金币发放失败:签名错误(-7),jwcode=%s", rechargeUser.getJwcode()));
// 检查签名逻辑或密钥
}
return Result.success();
}
}
Loading…
Cancel
Save