You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
package com.example.demo.serviceImpl;
import com.example.demo.Util.BaseDES; import com.example.demo.Util.BaseDES2; import com.example.demo.domain.dou.*; import com.example.demo.domain.vo.RechargeVo; import com.example.demo.mapperLink.DouMapper; import com.example.demo.mapperPay.PayMapper; import com.example.demo.sevice.DouService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import lombok.RequiredArgsConstructor; import org.springframework.cache.annotation.CacheConfig; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; import org.springframework.web.client.RestTemplate;
import java.util.List; import java.util.UUID;
@Service @Transactional @RequiredArgsConstructor @CacheConfig(cacheNames = "dou") public class DouServiceImpl implements DouService { private final DouMapper douMapper; private final PayMapper payMapper; private final RestTemplate restTemplate; @Override public int add(Records records) throws Exception { Integer uid = douMapper.searchId(records.getJwcode()); if(uid == null){ throw new Exception("用户不存在"); } Integer moneyFree = records.getMoneyFree() != null ? records.getMoneyFree() : 0; Integer moneyBuy = records.getMoneyBuy() != null ? records.getMoneyBuy() : 0;
// 3. 构造请求 URL 和参数
String baseUrl = "http://39.101.133.168:8828/hljw/api/user/gold"; String jwcode1 = records.getJwcode();
BaseDES2 des = new BaseDES2();
String jwcode= des.encrypt(jwcode1);
String op = ""; // 初始化操作类型
String url = ""; // 初始化 URL
// 假设 jwcode 已经加密
if(records.getData()==0){ op = "recharge"; } else if(records.getData()==1){ op = "cost"; } // 根据业务逻辑设置操作类型
// 假设 records 中有 gold 字段
String content = records.getContent(); // 假设 records 中有 content 字段
if(moneyBuy!=0){ UUID orderNo = UUID.randomUUID(); Integer gold = moneyBuy; url = baseUrl + "?jwcode=" + jwcode + "&op=" + op + "&gold=" + gold + "&content=" + content +"&order_no=" + orderNo; } if(moneyFree!=0){ Integer gold = moneyFree; url = baseUrl + "?jwcode=" + jwcode + "&op=" + op + "&gold=" + gold + "&content=" + content; } // 构造完整 URL
System.out.println(url);
// 4. 调用接口
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
// 5. 处理响应
if (response.getStatusCode().is2xxSuccessful()) { // 解析响应内容(假设返回 JSON)
String responseBody = response.getBody(); // 进一步处理响应数据
System.out.println("Response: " + responseBody); } else { throw new RuntimeException("接口调用失败,HTTP 状态码:" + response.getStatusCode()); }
// 返回结果(根据业务逻辑决定返回值)
return 1; // 示例返回值
}
@Override public Member searchinfo(Searchinfo jwcode) throws Exception { Integer uid = douMapper.searchId(jwcode.getJwcode()); if(uid == null){ throw new Exception("用户不存在"); }
return douMapper.searchinfo(jwcode); }
@Override public List<Yve> getYve(Yve yve) { return douMapper.getYve(yve); }
@Override public YveTotal getYveTotal(YveTotal yveTotal) { return douMapper.getYveTotal(yveTotal); }
@Override public List<String> getIp() { return douMapper.getIp(); }
@Override public Object searchForPage(Integer pageNum, Integer pageSize, Yve yve) { PageHelper.startPage(pageNum, pageSize); List<Yve> list= douMapper.getYve(yve); return new PageInfo<>(list); }
@Override public List<String> getStyle() { return payMapper.getStyle(); }
@Override public List<String> getPayIp() { return payMapper.getPayIp(); }
@Override public List<Pay> getPay(Pay pay) { return payMapper.getPay(pay); }
@Override public Object searchPay(Integer pageNum, Integer pageSize, Pay pay) { PageHelper.startPage(pageNum, pageSize); List<Pay> list= payMapper.getPay(pay); return new PageInfo<>(list); } }
|