Browse Source

获奖记录

feature/0725lihuilin
jihaipeng 1 month ago
parent
commit
319ab7655a
  1. 39
      lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/wincontroller.java
  2. 21
      lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/IWinMapper.java
  3. 18
      lottery-system/lottery-service/src/main/java/com/lottery/admin/service/IWinService.java
  4. 41
      lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/IWinServiceImpl.java
  5. 4
      lottery-system/lottery-service/src/main/java/com/lottery/api/mapper/IPrizeMapper.java
  6. 2
      lottery-system/lottery-service/src/main/java/com/lottery/api/service/IPrizeService.java
  7. 15
      lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/PrizeServiceImpl.java
  8. 34
      lottery-system/lottery-service/src/main/resources/mapper/admin/winMapper.xml
  9. 0
      lottery-system/lottery-service/src/main/resources/mapper/api/prizeMapper.xml
  10. 0
      lottery-system/lottery-service/src/main/resources/mapper/api/userMapper.xml

39
lottery-system/lottery-service/src/main/java/com/lottery/admin/controller/wincontroller.java

@ -0,0 +1,39 @@
package com.lottery.admin.controller;
import com.lottery.admin.service.IWinService;
import com.lottery.result.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
* @program: lottery-system
* @ClassName wincontroller
* @description:
* @author:jihaipeng
* @create: 202507-12 17:18
* @Version 1.0
**/
@Controller
@RequestMapping("/admin/win")
public class wincontroller {
@Autowired
private IWinService iWinService;
@GetMapping("/search")
public Result<List<Map<String, Object>>> searchWinRecords(
@RequestParam(required = false) String username,
@RequestParam(required = false) String jwcode,
@RequestParam(required = false) String gradeName) {
List<Map<String, Object>> winRecords = iWinService.getWinRecordsByConditions(username, jwcode, gradeName);
return Result.success(winRecords);
}
}

21
lottery-system/lottery-service/src/main/java/com/lottery/admin/mapper/IWinMapper.java

@ -0,0 +1,21 @@
package com.lottery.admin.mapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
* @program: lottery-system
* @ClassName IWinMapper
* @description:
* @author:jihaipeng
* @create: 202507-12 17:53
* @Version 1.0
**/
@Mapper
public interface IWinMapper {
List<Map<String, Object>> selectWinRecordsByConditions(Map<String, Object> params);
}

18
lottery-system/lottery-service/src/main/java/com/lottery/admin/service/IWinService.java

@ -0,0 +1,18 @@
package com.lottery.admin.service;
import java.util.List;
import java.util.Map;
/**
* @program: lottery-system
* @ClassName IWinService
* @description:
* @author:jihaipeng
* @create: 202507-12 17:20
* @Version 1.0
**/
public interface IWinService {
List<Map<String, Object>> getWinRecordsByConditions(String username, String jwcode, String gradeName);
}

41
lottery-system/lottery-service/src/main/java/com/lottery/admin/service/Impl/IWinServiceImpl.java

@ -0,0 +1,41 @@
package com.lottery.admin.service.Impl;
import com.lottery.admin.mapper.IWinMapper;
import com.lottery.admin.service.IWinService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @program: lottery-system
* @ClassName IWinServiceImpl
* @description:
* @author:jihaipeng
* @create: 202507-12 17:20
* @Version 1.0
**/
@Service
public class IWinServiceImpl implements IWinService {
@Autowired
private IWinMapper iWinMapper;
@Override
public List<Map<String, Object>> getWinRecordsByConditions(String username, String jwcode, String gradeName) {
// 如果所有条件都为空可以返回空列表或抛出异常避免全表扫描
if (username == null && jwcode == null && gradeName == null) {
return Collections.emptyList(); // 或者抛出异常
}
Map<String, Object> params = new HashMap<>();
params.put("username", username);
params.put("jwcode", jwcode);
params.put("gradeName", gradeName);
return iWinMapper.selectWinRecordsByConditions(params);
}
}

4
lottery-system/lottery-service/src/main/java/com/lottery/api/mapper/IPrizeMapper.java

@ -16,7 +16,5 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface IPrizeMapper {
@Insert("INSERT INTO prize (name, description, image_url, stock, probability, prize_type, status, create_time, update_time) " +
"VALUES (#{name}, #{description}, #{imageUrl}, #{stock}, #{probability}, #{prizeType}, #{status}, #{createTime}, #{updateTime})")
boolean add(Prize prize);
}

2
lottery-system/lottery-service/src/main/java/com/lottery/api/service/IPrizeService.java

@ -12,6 +12,6 @@ import com.lottery.dto.Prize;
**/
public interface IPrizeService {
boolean add(Prize prize);
}

15
lottery-system/lottery-service/src/main/java/com/lottery/api/service/Impl/PrizeServiceImpl.java

@ -21,21 +21,6 @@ import java.util.Date;
@Service
public class PrizeServiceImpl implements IPrizeService {
@Autowired
private IPrizeMapper prizeMapper;
@Override
public boolean add(Prize prize) {
prize.setName("测试");
prize.setDescription("测试");
prize.setImageUrl("测试");
prize.setStock(1);
prize.setProbability(new BigDecimal(0.1));
prize.setPrizeType(1);
prize.setStatus(1);
prize.setCreateTime(new Date());
prize.setUpdateTime(new Date());
return prizeMapper.add(prize);
}
}

34
lottery-system/lottery-service/src/main/resources/mapper/admin/winMapper.xml

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.lottery.admin.mapper.IWinMapper">
<select id="selectWinRecordsByConditions" parameterType="map" resultType="map">
SELECT
wr.id AS record_id,
u.username,
u.jwcode,
p.name,
g.name,
wr.win_time
FROM
winning_record as wr
JOIN
user u ON wr.user_id = u.id
JOIN
prize p ON wr.prize_id = p.id
JOIN
grade g ON p.grade_id = g.id
WHERE
1=1
<if test="username != null and username != ''">
AND u.username = #{username}
</if>
<if test="jwcode != null and jwcode != ''">
AND u.jwcode = #{jwcode}
</if>
<if test="gradeName != null and gradeName != ''">
AND g.name = #{gradeName}
</if>
</select>
</mapper>

0
lottery-system/lottery-service/src/main/resources/mapper/prizeMapper.xml → lottery-system/lottery-service/src/main/resources/mapper/api/prizeMapper.xml

0
lottery-system/lottery-service/src/main/resources/mapper/userMapper.xml → lottery-system/lottery-service/src/main/resources/mapper/api/userMapper.xml

Loading…
Cancel
Save