parent
7e79d3fc35
commit
c757bcf844
|
|
@ -32,8 +32,8 @@
|
|||
- 执行db/mysql.sql文件,初始化数据
|
||||
- 修改application-dev.yml,更新MySQL账号和密码
|
||||
- Eclipse、IDEA运行sqxApplication.java,则可启动项目
|
||||
- Swagger文档路径:http://localhost:8080/sqx_fast/swagger/index.html
|
||||
- Swagger注解路径:http://localhost:8080/sqx_fast/swagger-ui.html
|
||||
- Swagger文档路径:http://localhost:8100/sqx_fast/swagger/index.html
|
||||
- Swagger注解路径:http://localhost:8100/sqx_fast/swagger-ui.html
|
||||
|
||||
|
||||
<br>
|
||||
|
|
|
|||
5
pom.xml
5
pom.xml
|
|
@ -178,6 +178,11 @@
|
|||
<artifactId>aliyun-sdk-oss</artifactId>
|
||||
<version>3.4.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.aliyun</groupId>
|
||||
<artifactId>sts20150401</artifactId>
|
||||
<version>1.1.4</version>
|
||||
</dependency>
|
||||
<!-- 集成支付宝sdk -->
|
||||
<dependency>
|
||||
<groupId>com.alipay.sdk</groupId>
|
||||
|
|
|
|||
|
|
@ -19,6 +19,11 @@ public class DateUtils {
|
|||
/** 时间格式(yyyy-MM-dd HH:mm:ss) */
|
||||
public final static String DATE_TIME_PATTERN = "yyyy-MM-dd HH:mm:ss";
|
||||
|
||||
|
||||
public static String formatYMD(Date date) {
|
||||
return format(date, DATE_PATTERN);
|
||||
}
|
||||
|
||||
/**
|
||||
* 日期格式化 日期格式为:yyyy-MM-dd
|
||||
* @param date 日期
|
||||
|
|
|
|||
|
|
@ -0,0 +1,163 @@
|
|||
package com.sqx.modules.discSpinning.controller;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.sqx.common.utils.DateUtils;
|
||||
import com.sqx.common.utils.Result;
|
||||
import com.sqx.modules.common.service.CommonInfoService;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinning;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
|
||||
import com.sqx.modules.discSpinning.service.DiscSpinningRecordService;
|
||||
import com.sqx.modules.discSpinning.service.DiscSpinningService;
|
||||
import com.sqx.modules.orders.entity.Orders;
|
||||
import com.sqx.modules.orders.service.OrdersService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.*;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(value = "大转盘", tags = {"大转盘"})
|
||||
@RequestMapping(value = "/discSpinning")
|
||||
public class DiscSpinningController {
|
||||
|
||||
private final DiscSpinningService discSpinningService;
|
||||
private final CommonInfoService commonRepository;
|
||||
private final OrdersService ordersService;
|
||||
private final DiscSpinningRecordService recordService;
|
||||
|
||||
@Autowired
|
||||
public DiscSpinningController(CommonInfoService commonRepository, DiscSpinningService discSpinningService,OrdersService ordersService,DiscSpinningRecordService recordService) {
|
||||
this.commonRepository = commonRepository;
|
||||
this.discSpinningService = discSpinningService;
|
||||
this.ordersService = ordersService;
|
||||
this.recordService = recordService;
|
||||
|
||||
}
|
||||
|
||||
@PostMapping("/insertDiscSpinning")
|
||||
@ApiOperation("添加大转盘")
|
||||
public Result insertDiscSpinning(@RequestBody DiscSpinning discSpinning) {
|
||||
discSpinning.setCreateTime(DateUtils.format(new Date()));
|
||||
discSpinningService.save(discSpinning);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@GetMapping("/{id}")
|
||||
@ApiOperation("通过Id查询详情")
|
||||
public Result selectOne(@PathVariable Integer id) {
|
||||
return Result.success().put("data", discSpinningService.getById(id));
|
||||
}
|
||||
|
||||
@PostMapping("/updateDiscSpinning")
|
||||
@ApiOperation("修改大转盘")
|
||||
public Result updateDiscSpinning(@RequestBody DiscSpinning discSpinning) {
|
||||
List<DiscSpinning> prizes = discSpinningService.list(new QueryWrapper<DiscSpinning>().orderByAsc("type","id"));
|
||||
BigDecimal number = BigDecimal.ZERO;
|
||||
List<DiscSpinning> prizesResult = new ArrayList<>();
|
||||
for (DiscSpinning prize : prizes) {
|
||||
if (discSpinning.getId().equals(prize.getId())) {
|
||||
number = prize.getNumber().add(discSpinning.getOdds().subtract(prize.getOdds()));
|
||||
discSpinning.setNumber(number);
|
||||
prize.setOdds(discSpinning.getOdds());
|
||||
prizesResult.add(discSpinning);
|
||||
}else if (number.compareTo(BigDecimal.ZERO) > 0) {
|
||||
number = number.add(prize.getOdds());
|
||||
prize.setNumber(number);
|
||||
prizesResult.add(prize);
|
||||
}
|
||||
}
|
||||
BigDecimal totalOdds = prizes.stream()
|
||||
.map(DiscSpinning::getOdds)
|
||||
.filter(Objects::nonNull)
|
||||
.reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
if (totalOdds.compareTo(new BigDecimal(100)) > 0) {
|
||||
return Result.error("中奖概率总和 不可超过100");
|
||||
}
|
||||
discSpinningService.updateBatchById(prizesResult);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@PostMapping("/deleteDiscSpinning")
|
||||
@ApiOperation("删除大转盘")
|
||||
public Result deleteDiscSpinning(Long id) {
|
||||
discSpinningService.removeById(id);
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
@GetMapping("/selectDiscSpinning")
|
||||
@ApiOperation("查询大转盘")
|
||||
public Result selectDiscSpinning() {
|
||||
return Result.success().put("data", discSpinningService.page(new Page<>(0, 8), new QueryWrapper<DiscSpinning>().orderByAsc("odds")));
|
||||
}
|
||||
|
||||
@PostMapping("/draw")
|
||||
@ApiOperation("抽取大转盘")
|
||||
public Result draw(Long orderId, @RequestAttribute("userId") Long userId) {
|
||||
int drawCount = Integer.parseInt(commonRepository.findOne(901).getValue());
|
||||
Integer i = recordService.countDraw(userId);
|
||||
if (i != null && i > drawCount) {
|
||||
return Result.error("当日可抽奖次数已超限");
|
||||
}
|
||||
Orders order = ordersService.selectOrderById(orderId);
|
||||
return new Result().put("data", draws(order.getPayMoney().doubleValue(),order.getOrdersId(), userId));
|
||||
}
|
||||
|
||||
|
||||
public DiscSpinning draws(double orderAmount,Long orderId,Long userId) {
|
||||
DiscSpinning result = new DiscSpinning("谢谢惠顾",1,null);
|
||||
List<DiscSpinning> prizes = discSpinningService.list();
|
||||
Random random = new Random();
|
||||
double randomDouble;
|
||||
do {
|
||||
randomDouble = random.nextDouble();
|
||||
} while (randomDouble == 0);
|
||||
BigDecimal randomNum = new BigDecimal(randomDouble).multiply(new BigDecimal(10000)).divide(new BigDecimal(100));
|
||||
for (DiscSpinning prize : prizes) {
|
||||
if (randomNum.compareTo(prize.getNumber()) < 0) {
|
||||
if (prize.getType() == 2) {
|
||||
int maxAmount = Integer.parseInt(commonRepository.findOne(900).getValue());
|
||||
double resultAmount = 0;
|
||||
//从0 到 80-amount 直接 取 多个区间 数值越小 概率越大
|
||||
if (prize.getType() == 2) {
|
||||
double baseRandom = random.nextDouble();
|
||||
if (baseRandom < 0.8) {
|
||||
// 0.8到0.82范围内概率最大(这里示例以当前订单金额为基础,模拟类似0.8的情况)
|
||||
resultAmount = orderAmount + (random.nextDouble() * 0.02);
|
||||
} else if (baseRandom < 0.9) {
|
||||
// 0.82 - 0.85范围概率小一些
|
||||
resultAmount = orderAmount + (0.02 + (random.nextDouble() * 0.03));
|
||||
} else if (baseRandom < 0.95) {
|
||||
// 0.85 - 0.9概率更小
|
||||
resultAmount = orderAmount + (0.05 + (random.nextDouble() * 0.05));
|
||||
} else if (baseRandom < 0.99) {
|
||||
// 0.9 - 1概率更小
|
||||
resultAmount = orderAmount + (0.1 + (random.nextDouble() * 0.1));
|
||||
} else {
|
||||
// 1 - 20概率依次递减
|
||||
// 控制最大金额为80
|
||||
resultAmount = 1 + (random.nextDouble() * (maxAmount - 1));
|
||||
}
|
||||
}
|
||||
if (resultAmount > maxAmount) {
|
||||
resultAmount = maxAmount;
|
||||
}
|
||||
result = new DiscSpinning(prize.getName(),2,new BigDecimal(resultAmount).setScale(2, RoundingMode.HALF_UP));
|
||||
}else {
|
||||
result = prize;
|
||||
}
|
||||
}
|
||||
}
|
||||
recordService.save(new DiscSpinningRecord(result.getName(),orderId,userId,result.getType(),
|
||||
result.getNumber(),DateUtils.formatYMD(new Date()),DateUtils.format(new Date())));
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package com.sqx.modules.discSpinning.controller;
|
||||
|
||||
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
|
||||
import com.sqx.modules.discSpinning.service.DiscSpinningRecordService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.sqx.common.utils.DateUtils;
|
||||
import com.sqx.common.utils.Result;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@Api(value = "大转盘抽奖记录", tags = {"大转盘抽奖记录"})
|
||||
@RequestMapping(value = "/discSpinningRecord")
|
||||
public class DiscSpinningRecordController {
|
||||
/**
|
||||
* 服务对象
|
||||
*/
|
||||
@Autowired
|
||||
private DiscSpinningRecordService discSpinningRecordService;
|
||||
|
||||
@GetMapping("/{id}")
|
||||
@ApiOperation("通过Id查询详情")
|
||||
public Result selectOne(@PathVariable Integer id) {
|
||||
return Result.success().put("data", discSpinningRecordService.getById(id));
|
||||
}
|
||||
|
||||
@GetMapping("/selectDiscSpinningRecord")
|
||||
@ApiOperation("查询大转盘抽奖记录")
|
||||
public Result selectDiscSpinningRecord(Integer page, Integer limit) {
|
||||
return Result.success().put("data", discSpinningRecordService.page(new Page<>(page, limit), new QueryWrapper<DiscSpinningRecord>().orderByAsc("create_time")));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.sqx.modules.discSpinning.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinning;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface DiscSpinningDao extends BaseMapper<DiscSpinning> {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
package com.sqx.modules.discSpinning.dao;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
@Mapper
|
||||
public interface DiscSpinningRecordDao extends BaseMapper<DiscSpinningRecord> {
|
||||
|
||||
int countDraw(@Param("userId")Long userId);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package com.sqx.modules.discSpinning.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 大转盘(DiscSpinning)表实体类
|
||||
*
|
||||
* @author ww
|
||||
* @since 2024-12-03 15:18:43
|
||||
*/
|
||||
@Data
|
||||
@TableName("disc_spinning")
|
||||
public class DiscSpinning extends Model<DiscSpinning> {
|
||||
//主键
|
||||
private Long id;
|
||||
//图标
|
||||
private String url;
|
||||
//描述
|
||||
private String name;
|
||||
//类型 1谢谢惠顾 2 红包 9 其它
|
||||
private Integer type;
|
||||
//数值
|
||||
private BigDecimal number;
|
||||
//红包金额比例
|
||||
private BigDecimal ratio;
|
||||
//中奖概率
|
||||
private BigDecimal odds;
|
||||
//创建时间
|
||||
private String createTime;
|
||||
|
||||
public DiscSpinning() {
|
||||
}
|
||||
|
||||
public DiscSpinning(String name, Integer type, BigDecimal number) {
|
||||
this.name = name;
|
||||
this.type = type;
|
||||
this.number = number;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package com.sqx.modules.discSpinning.entity;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 大转盘抽奖记录(DiscSpinningRecord)表实体类
|
||||
*
|
||||
* @author ww
|
||||
* @since 2024-12-04 11:37:36
|
||||
*/
|
||||
@Data
|
||||
@TableName("disc_spinning_record")
|
||||
public class DiscSpinningRecord extends Model<DiscSpinningRecord> {
|
||||
//主键
|
||||
private Long id;
|
||||
|
||||
private Long orderId;
|
||||
|
||||
private Long userId;
|
||||
//描述
|
||||
private String name;
|
||||
//类型 1谢谢惠顾 2 红包 9 其它
|
||||
private Integer type;
|
||||
//金额
|
||||
private BigDecimal number;
|
||||
//流向 1 提现 2 存入余额
|
||||
private String target;
|
||||
|
||||
private Long targetId;
|
||||
//抽奖日期
|
||||
private String drawDay;
|
||||
//创建时间
|
||||
private String createTime;
|
||||
|
||||
public DiscSpinningRecord(String name,Long orderId, Long userId, Integer type, BigDecimal number, String drawDay, String createTime) {
|
||||
this.name = name;
|
||||
this.userId = userId;
|
||||
this.orderId = orderId;
|
||||
this.type = type;
|
||||
this.number = number;
|
||||
this.drawDay = drawDay;
|
||||
this.createTime = createTime;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
package com.sqx.modules.discSpinning.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public interface DiscSpinningRecordService extends IService<DiscSpinningRecord> {
|
||||
|
||||
Integer countDraw(Long userId);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.sqx.modules.discSpinning.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinning;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public interface DiscSpinningService extends IService<DiscSpinning> {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
package com.sqx.modules.discSpinning.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.sqx.modules.discSpinning.dao.DiscSpinningRecordDao;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
|
||||
import com.sqx.modules.discSpinning.service.DiscSpinningRecordService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
public class DiscSpinningRecordServiceImpl extends ServiceImpl<DiscSpinningRecordDao, DiscSpinningRecord> implements DiscSpinningRecordService {
|
||||
|
||||
@Autowired
|
||||
private DiscSpinningRecordDao discSpinningRecordDao;
|
||||
|
||||
@Override
|
||||
public Integer countDraw(Long userId) {
|
||||
return discSpinningRecordDao.countDraw(userId);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package com.sqx.modules.discSpinning.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.sqx.modules.discSpinning.dao.DiscSpinningDao;
|
||||
import com.sqx.modules.discSpinning.entity.DiscSpinning;
|
||||
import com.sqx.modules.discSpinning.service.DiscSpinningService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Service
|
||||
public class DiscSpinningServiceImpl extends ServiceImpl<DiscSpinningDao, DiscSpinning> implements DiscSpinningService {
|
||||
|
||||
@Autowired
|
||||
private DiscSpinningDao discSpinningDao;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -3,6 +3,7 @@ package com.sqx.modules.file;
|
|||
|
||||
import com.aliyun.oss.OSS;
|
||||
import com.aliyun.oss.OSSClientBuilder;
|
||||
import com.aliyun.tea.TeaException;
|
||||
import com.amazonaws.services.s3.AmazonS3;
|
||||
import com.amazonaws.services.s3.model.CannedAccessControlList;
|
||||
import com.amazonaws.services.s3.model.ObjectMetadata;
|
||||
|
|
@ -27,6 +28,9 @@ import io.swagger.annotations.ApiOperation;
|
|||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import com.aliyun.sts20150401.models.AssumeRoleResponse;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
|
|
@ -60,6 +64,44 @@ public class AliFileUploadController {
|
|||
this.amazonS3 = amazonS3;
|
||||
}
|
||||
|
||||
@GetMapping(value = "/getCredentials")
|
||||
@ApiOperation("获取上传临时凭证")
|
||||
public Result getCredentials() {
|
||||
try {
|
||||
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
|
||||
// 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。
|
||||
.setAccessKeyId("LTAI5tMmymNJatAoci3N5PVz")
|
||||
// .setAccessKeyId(commonRepository.findOne(68).getValue())
|
||||
// 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。
|
||||
// .setAccessKeySecret(commonRepository.findOne(69).getValue());
|
||||
.setAccessKeySecret("WnJ2Dng7zxSagKj0NmhjfiHgIFyOEy");
|
||||
// Endpoint 请参考 https://api.aliyun.com/product/Sts
|
||||
config.endpoint = "sts.cn-shanghai.aliyuncs.com";
|
||||
|
||||
com.aliyun.sts20150401.Client client = new com.aliyun.sts20150401.Client(config);
|
||||
com.aliyun.sts20150401.models.AssumeRoleRequest assumeRoleRequest = new com.aliyun.sts20150401.models.AssumeRoleRequest();
|
||||
assumeRoleRequest.setRoleArn("acs:ram::1266409170752412:role/linshi");
|
||||
assumeRoleRequest.setRoleSessionName("test");
|
||||
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
|
||||
// 复制代码运行请自行打印 API 的返回值
|
||||
AssumeRoleResponse response = client.assumeRoleWithOptions(assumeRoleRequest, runtime);
|
||||
return new Result().put("data",response.getBody().getCredentials());
|
||||
} catch (TeaException error) {
|
||||
return Result.error(error.getMessage());
|
||||
// 诊断地址
|
||||
// System.out.println(error.getData().get("Recommend"));
|
||||
// com.aliyun.teautil.Common.assertAsString(error.message);
|
||||
} catch (Exception _error) {
|
||||
return Result.error(_error.getMessage());
|
||||
// TeaException error = new TeaException(_error.getMessage(), _error);
|
||||
// // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
|
||||
// // 诊断地址
|
||||
// System.out.println(error.getData().get("Recommend"));
|
||||
// com.aliyun.teautil.Common.assertAsString(error.message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@RequestMapping(value = "/upload", method = RequestMethod.POST)
|
||||
@ApiOperation("文件上传")
|
||||
@ResponseBody
|
||||
|
|
|
|||
|
|
@ -0,0 +1,9 @@
|
|||
<?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.sqx.modules.discSpinning.dao.DiscSpinningRecordDao">
|
||||
|
||||
|
||||
<select id="countDraw" resultType="int">
|
||||
SELECT count(1) FROM `disc_spinning_record` where user_id = 99 and draw_day = DATE_FORMAT(CURDATE(), '%Y-%m-%d');;
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue