Browse Source

8-21 首充日期更新

lijianlin/feature-20250728171217-三期金豆消费相关
lijianlin 1 day ago
parent
commit
ae85001fc3
  1. 2
      src/main/java/com/example/demo/mapper/coin/UserMapper.java
  2. 12
      src/main/java/com/example/demo/serviceImpl/coin/AuditServiceImpl.java
  3. 4
      src/main/java/com/example/demo/serviceImpl/coin/UserServiceImpl.java
  4. 6
      src/main/resources/application-test.yml
  5. 5
      src/main/resources/mapper/UserMapper.xml

2
src/main/java/com/example/demo/mapper/coin/UserMapper.java

@ -33,6 +33,8 @@ public interface UserMapper {
//查找用户全部信息
User selectAllUser(String jwcode);
//查找用户的首充日期
Date getFirstRecharge(String jwcode);
//获取用户表全部jwcode
List<Integer> getAllJwcode();

12
src/main/java/com/example/demo/serviceImpl/coin/AuditServiceImpl.java

@ -51,6 +51,7 @@ public class AuditServiceImpl implements AuditService {
@Override
public boolean auditOrder(String token, String orderCode, Integer auditId, Integer action,String rejectReason) {
UserGoldRecord order=auditMapper.selectOrderByOrderCode(orderCode);
Date date =new Date();
if (order == null || order.getAuditStatus() != 0) {
throw new IllegalArgumentException("订单不存在或已被审核");
}
@ -84,7 +85,7 @@ public class AuditServiceImpl implements AuditService {
if (order.getType()==0){ //充值
//更新用户余额
User update = new User();
GoldUser gold = userMapper.selectGold(order.getJwcode().toString());
Date oldFirstRecharge = userMapper.getFirstRecharge(order.getJwcode().toString());
update.setJwcode(order.getJwcode()); //精网号
update.setSumPermanentGold(BigDecimal.valueOf(order.getPermanentGold())); //历史永久金币
@ -96,6 +97,15 @@ public class AuditServiceImpl implements AuditService {
update.setCurrentFreeDecember(BigDecimal.valueOf(order.getFreeDecember())); //当前十二月免费金币
update.setCurrentTaskGold(BigDecimal.valueOf(order.getTaskGold())); //当前任务金币
update.setRechargeNum(1); //充值次数加一
/*
判断是否更新首充时间
1.用户当前首充时间为空
2.用户当前首充时间小于当前时间
3.用户当前首充时间等于2020-01-01 00:00:00
*/
if(oldFirstRecharge== null || oldFirstRecharge.after(date) || "2020-01-01 00:00:00".equals(oldFirstRecharge.toString())){
update.setFirstRecharge(date);//设置首充时间为当前时间
}
auditMapper.updateUserGold(update);
//erp增加充值数据
// if(update.getJwcode().equals(94226013)){

4
src/main/java/com/example/demo/serviceImpl/coin/UserServiceImpl.java

@ -93,8 +93,8 @@ public class UserServiceImpl implements UserService {
if (earliestPayTime != null){
//获取用户的首充时间
Date currentFirstRecharge = userMapper.selectUserByJwcode(jwcode).getFirstRecharge();
//弱国首充时间为空或与最早支付时间不一致则更新
if (currentFirstRecharge == null || !currentFirstRecharge.after(earliestPayTime)){
//若当前首充时间为空或当前首充时间晚于最早支付时间则更新
if (currentFirstRecharge == null || currentFirstRecharge.after(earliestPayTime)||"2020-01-01 00:00:00".equals(currentFirstRecharge.toString())){
userMapper.updateFirstRecharge(jwcode, earliestPayTime);
System.out.println("更新了用户" + jwcode + "的首充时间为"+earliestPayTime);
}

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

@ -4,9 +4,9 @@ spring:
fail-on-unknown-properties: false
datasource:
mysql1:
jdbc-url: jdbc:mysql://54.255.212.181:3306/hwgoldc?serverTimezone=Asia/Shanghai&useSSL=false&useUnicode=true&allowMultiQueries=true&rewriteBatchedStatements=true
username: hwgoldc
password: zB48T55wCsHC8KPz
jdbc-url: jdbc:mysql://54.255.212.181:3306/hwgold?serverTimezone=Asia/Shanghai&useSSL=false&useUnicode=true&allowMultiQueries=true&rewriteBatchedStatements=true
username: hwgold
password: aDiw7MERSATdfGta
driver-class-name: com.mysql.cj.jdbc.Driver
hikari:
pool-name: mysql1HikariCP

5
src/main/resources/mapper/UserMapper.xml

@ -102,6 +102,11 @@
FROM user
WHERE jwcode = #{jwcode}
</select>
<select id="getFirstRecharge" resultType="java.util.Date">
SELECT first_recharge
FROM user
WHERE jwcode = #{jwcode}
</select>
<!-- 根据精网号更新数据 -->

Loading…
Cancel
Save