Browse Source

Merge branch 'refs/heads/milestone-20260128-DC金豆金币接口' into milestone-20260128-金币日常优化1.0

# Conflicts:
#	src/main/java/com/example/demo/security/SecurityConfig.java
#	src/main/java/com/example/demo/service/coin/RechargeService.java
#	src/main/java/com/example/demo/serviceImpl/bean/BeanRechargeServiceImpl.java
dev
huangqizhen 4 weeks ago
parent
commit
c21b499ead
  1. 7
      src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java
  2. 32
      src/main/java/com/example/demo/Util/GoldTistV2.java
  3. 12
      src/main/java/com/example/demo/controller/bean/BeanRechargeController.java
  4. 16
      src/main/java/com/example/demo/controller/coin/RechargeController.java
  5. 1
      src/main/java/com/example/demo/mapper/coin/BeanRechargeMapper1.java
  6. 1
      src/main/java/com/example/demo/security/SecurityConfig.java
  7. 3
      src/main/java/com/example/demo/service/bean/BeanRechargeService.java
  8. 4
      src/main/java/com/example/demo/service/coin/RechargeService.java
  9. 152
      src/main/java/com/example/demo/serviceImpl/bean/BeanRechargeServiceImpl.java
  10. 39
      src/main/java/com/example/demo/serviceImpl/coin/RechargeServiceImpl.java
  11. 2
      src/main/resources/application-dev.yml
  12. 3
      src/main/resources/application-prod.yml
  13. 3
      src/main/resources/application-test.yml
  14. 22
      src/main/resources/mapper/BeanRechargeMapper1.xml

7
src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java

@ -35,7 +35,7 @@ public class MysqlServiceImpl implements MysqlService {
@Autowired @Autowired
private RestTemplate restTemplate; private RestTemplate restTemplate;
Set<Integer> validZeroTypes = new HashSet<>(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 18, 19, 20, 21, 22, 23, 24, 26, 28, 29, 35, 36, 40, 45, 46, 47, 48, 49, 53, 54, 60));
Set<Integer> validZeroTypes = new HashSet<>(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 11, 12, 13, 14, 18, 19, 20, 21, 22, 23, 24, 26, 28, 29, 35, 36, 40, 45, 46, 47, 48, 49, 53, 54, 60,67));
Set<Integer> validOneTypes = new HashSet<>(Arrays.asList(9, 15, 17, 25, 27, 37, 41, 42, 43, 50, 51, 62)); Set<Integer> validOneTypes = new HashSet<>(Arrays.asList(9, 15, 17, 25, 27, 37, 41, 42, 43, 50, 51, 62));
Set<Integer> validTwoTypes = new HashSet<>(Arrays.asList(52,61)); Set<Integer> validTwoTypes = new HashSet<>(Arrays.asList(52,61));
Set<Integer> validThreeTypes = new HashSet<>(Arrays.asList(10, 16, 30, 31, 32, 33, 34, 39, 44)); Set<Integer> validThreeTypes = new HashSet<>(Arrays.asList(10, 16, 30, 31, 32, 33, 34, 39, 44));
@ -404,7 +404,10 @@ public class MysqlServiceImpl implements MysqlService {
throw new IllegalArgumentException("不应处理 platform=4,应在上层过滤"); throw new IllegalArgumentException("不应处理 platform=4,应在上层过滤");
} else if ("0".equals(platform)) { } else if ("0".equals(platform)) {
stmt.setString(8, "初始化金币"); stmt.setString(8, "初始化金币");
} else {
} else if ("5".equals(platform)){
stmt.setString(8, "DC");
}
{
stmt.setString(8, "其他"); stmt.setString(8, "其他");
} }

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

@ -215,6 +215,28 @@ public class GoldTistV2 {
return resp; 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=5&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","测试商品"); /** addCoinRecordNew("94226013","测试","lzh","测试商品");
* @功能描述: 添加一条单独的记录不更新金币 * @功能描述: 添加一条单独的记录不更新金币
* @开发人员: 弘历研发部 刘志红 2025-3-21下午1:58:13 创建 * @开发人员: 弘历研发部 刘志红 2025-3-21下午1:58:13 创建
@ -232,10 +254,10 @@ public class GoldTistV2 {
String sjzfc = RandomUid(10); String sjzfc = RandomUid(10);
String resp = ""; String resp = "";
try { try {
DESGB desjbkc = new DESGB("Jbxt.205");
DESGB desjbkc = new DESGB("Jxbt.205");
String sk = "jwcode="+jwcode+"&type=66&uid="+sjzfc+"&remark="+ String sk = "jwcode="+jwcode+"&type=66&uid="+sjzfc+"&remark="+
remark+"&czr="+czr+"&czpt=4&goodsname="+goodsname; remark+"&czr="+czr+"&czpt=4&goodsname="+goodsname;
String sign = generateSignature(sk.split("&"),"222251821eba7efab6d48e388b8f6baa");
String sign = generateSignature(sk.split("&"),"aJCQ6PcofDUybiZJI3ElC2eAQZhnF2hM");
sk = desjbkc.encrypt(new String(sk.getBytes(), "UTF-8")); sk = desjbkc.encrypt(new String(sk.getBytes(), "UTF-8"));
resp = doGet(url+"userjbAddRecord.gold?app=4&sk="+sk+"&sign="+sign); resp = doGet(url+"userjbAddRecord.gold?app=4&sk="+sk+"&sign="+sign);
}catch (Exception e){ }catch (Exception e){
@ -247,10 +269,10 @@ public class GoldTistV2 {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
//调用demo //调用demo
addCoinNew("94226013",63,20,"123","测试",0,"黄其振","文章11");
addDCCoinNew("94629784",67,20,"123","测试",0,"黄其振","文章11");
} }
//初始化类型
// https://hcm.rzfwq.com/hwhcnewA/initTypeGold.gold
} }

12
src/main/java/com/example/demo/controller/bean/BeanRechargeController.java

@ -181,6 +181,18 @@ public class BeanRechargeController {
} }
//添加金豆
@PostMapping("/addBeanDC")
public Result addBeanDC(@RequestBody BeanRecharge recharge) {
try {
return beanRechargeService.addBeanDC(recharge);
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
//线上金豆统计 //线上金豆统计
@PostMapping("/statsOnlineBean") @PostMapping("/statsOnlineBean")
public Result statsOnlineBean(@RequestBody BeanOnlineRechargeInfo beanOnlineRechargeInfo, @RequestHeader(defaultValue = "zh_CN") String lang) { public Result statsOnlineBean(@RequestBody BeanOnlineRechargeInfo beanOnlineRechargeInfo, @RequestHeader(defaultValue = "zh_CN") String lang) {

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

@ -170,6 +170,22 @@ public class RechargeController {
} }
} }
@PostMapping("/addDC")
public Result addDC(@RequestBody RechargeUser rechargeUser) {
try {
return rechargeService.addDC(rechargeUser);
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
@PostMapping("/addFree")
public Result addFree(@RequestBody RechargeUser rechargeUser) {
try {
return rechargeService.addFree(rechargeUser);
} catch (Exception e) {
return Result.error(e.getMessage());
}
}
public Result select(@RequestBody Page page, @RequestHeader(defaultValue = "zh_CN") String lang) { public Result select(@RequestBody Page page, @RequestHeader(defaultValue = "zh_CN") String lang) {
try { try {

1
src/main/java/com/example/demo/mapper/coin/BeanRechargeMapper1.java

@ -23,4 +23,5 @@ public interface BeanRechargeMapper1 {
//筛选查询小黄车消费 //筛选查询小黄车消费
List<BeanConsumeCartVo> selectCartBy(BeanConsumeCartDTO beanConsumeCartDTO); List<BeanConsumeCartVo> selectCartBy(BeanConsumeCartDTO beanConsumeCartDTO);
int add(BeanRecharge recharge); int add(BeanRecharge recharge);
int addBeanDC(BeanRecharge recharge);
} }

1
src/main/java/com/example/demo/security/SecurityConfig.java

@ -60,6 +60,7 @@ public class SecurityConfig {
request request
.requestMatchers( HttpMethod.POST, .requestMatchers( HttpMethod.POST,
// 用户不登录就可以访问的路径 // 用户不登录就可以访问的路径
"/admin/login","/upload/**","/detailY/ERP","/home/java/haiwaiyanfa/gold1/**","/home/java/haiwaiyanfa/**","/statistics/**","/Mysql/**","/Temporary/**","/beanRecharge/addBeanDC","/recharge/addDC","/recharge/addFree").permitAll()
"/admin/login","/upload/**","/detailY/ERP","/home/java/haiwaiyanfa/gold1/**","/home/java/haiwaiyanfa/**","/statistics/**","/Mysql/**","/Temporary/**","/cashCollection/syncToCashRecord").permitAll() "/admin/login","/upload/**","/detailY/ERP","/home/java/haiwaiyanfa/gold1/**","/home/java/haiwaiyanfa/**","/statistics/**","/Mysql/**","/Temporary/**","/cashCollection/syncToCashRecord").permitAll()
.requestMatchers(HttpMethod.GET, "/captcha").permitAll() .requestMatchers(HttpMethod.GET, "/captcha").permitAll()
.requestMatchers( .requestMatchers(

3
src/main/java/com/example/demo/service/bean/BeanRechargeService.java

@ -24,6 +24,9 @@ public interface BeanRechargeService {
//线上充值 //线上充值
Result add(BeanRecharge recharge); Result add(BeanRecharge recharge);
//添加金豆
Result addBeanDC(BeanRecharge recharge);
//系统充值 //系统充值
PageInfo<BeanSystemRechargeInfo> selectBySystem(Integer pageNum, Integer pageSize, BeanSystemRechargeInfo beanRechargeInfo); PageInfo<BeanSystemRechargeInfo> selectBySystem(Integer pageNum, Integer pageSize, BeanSystemRechargeInfo beanRechargeInfo);

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

@ -27,4 +27,8 @@ public interface RechargeService {
Result add(RechargeUser rechargeUser); Result add(RechargeUser rechargeUser);
////根据订单单号获取订单信息重复充值/消费提示 ////根据订单单号获取订单信息重复充值/消费提示
GoldRepeat selectByOrderCode(String orderCode); GoldRepeat selectByOrderCode(String orderCode);
Result addDC(RechargeUser rechargeUser);
Result addFree(RechargeUser rechargeUser);
} }

152
src/main/java/com/example/demo/serviceImpl/bean/BeanRechargeServiceImpl.java

@ -1,5 +1,8 @@
package com.example.demo.serviceImpl.bean; package com.example.demo.serviceImpl.bean;
import com.example.demo.Util.BaseDES;
import com.example.demo.Util.BaseDES2;
import com.example.demo.Util.BaseDES3;
import com.example.demo.domain.vo.bean.*; import com.example.demo.domain.vo.bean.*;
import com.example.demo.domain.vo.coin.*; import com.example.demo.domain.vo.coin.*;
import com.example.demo.mapper.bean.BeanRechargeMapper2; import com.example.demo.mapper.bean.BeanRechargeMapper2;
@ -16,17 +19,22 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder; import org.springframework.web.util.UriComponentsBuilder;
import com.example.demo.config.RabbitMQConfig; import com.example.demo.config.RabbitMQConfig;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.util.List;
import java.util.Objects;
import java.util.UUID;
import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -65,6 +73,9 @@ public class BeanRechargeServiceImpl implements BeanRechargeService {
@Autowired @Autowired
private RabbitTemplate rabbitTemplate; private RabbitTemplate rabbitTemplate;
@Value("${bean.recharge.url}")
String apiUrl;
//新增金豆 //新增金豆
@Override @Override
public Result add(BeanRecharge recharge) { public Result add(BeanRecharge recharge) {
@ -165,6 +176,141 @@ public class BeanRechargeServiceImpl implements BeanRechargeService {
} }
} }
@Value("${toujiaoApp.url}")
private String toujiaoAppUrl;
@Override
public Result addBeanDC(BeanRecharge recharge) {
try {
// 验证精网号是否有效
recharge.setPermanentBean(0);
if (recharge.getJwcode() == null || recharge.getJwcode().toString().isEmpty()) {
return Result.error("精网号不能为空");
}
if(recharge.getJwcode()<10000000||recharge.getJwcode()>99999999)
{
return Result.error("精网号位数小于8位或大于8位");
}
// 验证免费豆和永久豆是否为非负数
if (recharge.getFreeBean() < 0) {
return Result.error("免费豆不能为负数");
}
// 验证免费豆和永久豆是否为非负数
if (recharge.getFreeBean() > 999999 ) {
return Result.error("免费豆和不能超过999999");
}
// 验证免费豆和永久豆是否均为0
if (recharge.getFreeBean() == 0) {
return Result.error("免费豆为0");
}
// 验证备注是否为空
if (recharge.getRemark() == null || recharge.getRemark().toString().isEmpty()) {
return Result.error("备注不能为空");
}
String jwcode = recharge.getJwcode().toString();
String jwcodeDC = recharge.getJwcode().toString();
// String jwcode = "2e35cadd48a15cc4cd834d35e38faa71";
try {
BaseDES2 d = new BaseDES2();
jwcode = d.encrypt(jwcode);
} catch (Exception e) {
return Result.error("加密失败");
}
try {
BaseDES3 d = new BaseDES3();
jwcodeDC = d.encrypt(jwcodeDC);
} catch (Exception e) {
return Result.error("加密失败");
}
try {
// 构建完整的请求URL
String fullUrl = toujiaoAppUrl + "/api/user/toujiaoAppLogin";
// 创建请求头设置Content-Type为application/x-www-form-urlencoded
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
// 创建请求体使用MultiValueMap存储参数
MultiValueMap<String, String> params = new LinkedMultiValueMap<>();
params.add("jwcode", jwcodeDC);
// 构建请求实体
HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(params, headers);
// 发送POST请求
ResponseEntity<String> response = restTemplate.postForEntity(
fullUrl,
requestEntity,
String.class
);
System.out.println("请求URL:" + fullUrl);
System.out.println("请求参数:" + params);
System.out.println("响应状态码:" + response.getStatusCodeValue());
System.out.println("响应内容:" + response.getBody());
if (!response.getStatusCode().is2xxSuccessful()) {
return Result.error("远程接口调用失败,状态码:" + response.getStatusCodeValue() + ",响应:" + response.getBody());
}
} catch (RestClientException e) {
e.printStackTrace();
return Result.error("请求发送失败:" + e.getMessage());
} catch (Exception e) {
e.printStackTrace();
return Result.error("系统异常:" + e.getMessage());
}
BeanUserCard user = beanUserMapper.userCard(String.valueOf(recharge.getJwcode()));
if(user==null){
return Result.error("用户查找不到");
}
String content = recharge.getRemark(); // 备注作为content参数
String orderNo = UUID.randomUUID().toString().replace("-", ""); // 生成唯一订单号去除横线
// 1. 创建请求参数对象使用Map或自定义实体类
Map<String, String> params = new HashMap<>();
params.put("jwcode", jwcode);
params.put("gold_buy", recharge.getPermanentBean().toString());
params.put("gold_free", recharge.getFreeBean().toString());
params.put("content", content);
params.put("order_no", orderNo);
// 2. 构建请求头指定Content-Type为JSON
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON); // 关键设置为JSON格式
// 3. 构建请求实体参数+头信息
HttpEntity<Map<String, String>> requestEntity = new HttpEntity<>(params, headers);
try {
// 4. 发送POST请求
ResponseEntity<String> response = restTemplate.postForEntity(
apiUrl,
requestEntity,
String.class
);
System.out.println("请求参数:" + params);
System.out.println("响应状态码:" + response.getStatusCodeValue());
System.out.println("响应内容:" + response.getBody());
if (!response.getStatusCode().is2xxSuccessful()) {
return Result.error("远程接口接口调用失败,状态码:" + response.getStatusCodeValue() + ",响应:" + response.getBody());
}
} catch (RestClientException e) {
e.printStackTrace();
return Result.error("请求发送失败:" + e.getMessage());
}
return Result.success("添加成功");
} catch (Exception e) {
return Result.error("系统异常:" + e.getMessage());
}
}
//系统充值明细 //系统充值明细
@Override @Override
public PageInfo<BeanSystemRechargeInfo> selectBySystem(Integer pageNum, Integer pageSize, BeanSystemRechargeInfo beanSystemRechargeInfo) { public PageInfo<BeanSystemRechargeInfo> selectBySystem(Integer pageNum, Integer pageSize, BeanSystemRechargeInfo beanSystemRechargeInfo) {

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

@ -1,9 +1,11 @@
package com.example.demo.serviceImpl.coin; package com.example.demo.serviceImpl.coin;
import com.example.demo.Util.GoldTistV2;
import com.example.demo.Util.SimpleIdGenerator; import com.example.demo.Util.SimpleIdGenerator;
import com.example.demo.config.RabbitMQConfig; import com.example.demo.config.RabbitMQConfig;
import com.example.demo.domain.entity.UserGoldRecord; import com.example.demo.domain.entity.UserGoldRecord;
import com.example.demo.domain.vo.bean.BeanUserCard; 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.bean.BeanUserMapper;
import com.example.demo.mapper.coin.MarketMapper; import com.example.demo.mapper.coin.MarketMapper;
import com.example.demo.mapper.coin.RechargeMapper; import com.example.demo.mapper.coin.RechargeMapper;
@ -176,6 +178,43 @@ public class RechargeServiceImpl implements RechargeService {
public GoldRepeat selectByOrderCode(String orderCode) { public GoldRepeat selectByOrderCode(String orderCode) {
return rechargeMapper.selectByOrderCode(orderCode); return rechargeMapper.selectByOrderCode(orderCode);
} }
@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(),67,rechargeUser.getFreeGold().doubleValue(),"","DC免费金币赠送",0,"DC","DC免费金币赠送");
String cleanResult = result.replaceAll("\\s+", "");
if ("1".equals(cleanResult)) {
return Result.success();
} else {
throw new SystemException(String.format("金币发放失败:类型错误(%S),jwcode=%s", result,rechargeUser.getJwcode()));
}
}
@Override
public Result addFree(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(),67,rechargeUser.getFreeGold().doubleValue(),"","分享得金币",0,"黄其振","分享得金币");
String cleanResult = result.replaceAll("\\s+", "");
if ("1".equals(cleanResult)) {
return Result.success();
} else {
throw new SystemException(String.format("金币发放失败:类型错误(%S),jwcode=%s", result,rechargeUser.getJwcode()));
}
}
} }

2
src/main/resources/application-dev.yml

@ -92,6 +92,8 @@ file:
upload: upload:
url: http://39.101.133.168:8828/hljw/api/aws/upload url: http://39.101.133.168:8828/hljw/api/aws/upload
toujiaoApp:
url: http://39.101.133.168:8828/hljw
feishu: feishu:
webhook: webhook:
url: https://open.feishu.cn/open-apis/bot/v2/hook/455ccf9c-a8b1-46b4-b4d8-9f528620595d url: https://open.feishu.cn/open-apis/bot/v2/hook/455ccf9c-a8b1-46b4-b4d8-9f528620595d

3
src/main/resources/application-prod.yml

@ -98,6 +98,9 @@ feishu:
webhook: webhook:
url: https://open.feishu.cn/open-apis/bot/v2/hook/1a515b19-b64f-46b7-9486-35842b9539fe url: https://open.feishu.cn/open-apis/bot/v2/hook/1a515b19-b64f-46b7-9486-35842b9539fe
toujiaoApp:
url: https://api.homilychart.com/hljw
bean: bean:
recharge: recharge:
url: http://api.homilychart.com/hljwgo/api/wallet/recharge url: http://api.homilychart.com/hljwgo/api/wallet/recharge

3
src/main/resources/application-test.yml

@ -95,6 +95,9 @@ feishu:
webhook: webhook:
url: https://open.feishu.cn/open-apis/bot/v2/hook/8dd2bcc4-6492-487b-9dc5-bb7b27d43ccf url: https://open.feishu.cn/open-apis/bot/v2/hook/8dd2bcc4-6492-487b-9dc5-bb7b27d43ccf
toujiaoApp:
url: https://api.homilychart.com/hljw
bean: bean:
recharge: recharge:
# url: http://api.homilychart.com/hljwgo/api/wallet/recharge # url: http://api.homilychart.com/hljwgo/api/wallet/recharge

22
src/main/resources/mapper/BeanRechargeMapper1.xml

@ -26,6 +26,28 @@
</trim> </trim>
</insert> </insert>
<insert id="addBeanDC" parameterType="com.example.demo.domain.vo.bean.BeanRecharge" useGeneratedKeys="true" keyProperty="id">
INSERT INTO audit
<trim prefix="(" suffix=")" suffixOverrides=",">
jwcode,
buy_jd,
free_jd,
type,
admin_name,
remark,
audit_status
</trim>
VALUES
<trim prefix="(" suffix=")" suffixOverrides=",">
#{jwcode},
#{permanentBean},
#{freeBean},
0,
#{adminName},
#{remark},
1
</trim>
</insert>
<!--筛选查询小黄车消费数据--> <!--筛选查询小黄车消费数据-->
<select id="selectCartBy" resultType="com.example.demo.domain.vo.bean.BeanConsumeCartVo"> <select id="selectCartBy" resultType="com.example.demo.domain.vo.bean.BeanConsumeCartVo">
select select

Loading…
Cancel
Save