记得上下班打卡 | git大法好,push需谨慎

Commit 1ad91a6f authored by wanglele's avatar wanglele

兑换码相关

parent 8994792a
...@@ -16,12 +16,9 @@ public class GoblinNftExActivityParam implements Serializable { ...@@ -16,12 +16,9 @@ public class GoblinNftExActivityParam implements Serializable {
@ApiModelProperty(position = 10,required = false,value = "nft活动id") @ApiModelProperty(position = 10,required = false,value = "nft活动id")
private String activityId; private String activityId;
@ApiModelProperty(position = 11,required = true,value = "活动标题" ,example = "草莓音乐节") @ApiModelProperty(position = 11,required = true,value = "活动标题" ,example = "草莓音乐节")
private String title; private String title;
@ApiModelProperty(position = 12,required = false,value = "开始时间") @ApiModelProperty(position = 12,required = false,value = "开始时间")
private LocalDateTime startTime; private LocalDateTime startTime;
......
...@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode; ...@@ -7,6 +7,7 @@ import lombok.EqualsAndHashCode;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
/** /**
* @Author: wll * @Author: wll
......
...@@ -2,30 +2,30 @@ ...@@ -2,30 +2,30 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.liquidnet.service.goblin.mapper.GoblinNftExActivityMapper"> <mapper namespace="com.liquidnet.service.goblin.mapper.GoblinNftExActivityMapper">
<resultMap id="BaseResult" type="com.liquidnet.service.goblin.dto.vo.GoblinNftExActivityVo"> <resultMap id="BaseResult" type="com.liquidnet.service.goblin.dto.vo.GoblinNftExActivity">
<result column="activity_id" property="activityId"/> <result column="activity_id" property="activityId"/>
<result column="title" property="title"/> <result column="title" property="title"/>
<result column="created_at" property="createdAt"/> <result column="created_at" property="createdAt"/>
<result column="updated_at" property="updatedAt"/> <result column="updated_at" property="updatedAt"/>
</resultMap> </resultMap>
<select id="selectPageList" resultMap="BaseResult"> <select id="selectPageList" resultType="BaseResult">
select activity_id,title,created_at from goblin_nft_ex_activity select activity_id,title,created_at from goblin_nft_ex_activity
<where> <where>
<if test="title != null and title != ''"> <if test="title != null and title != ''">
<bind name="likeTitle" value="'%'+title+'%'"/> <bind name="likeTitle" value="'%'+title+'%'"/>
and title like #{likeTitle} and title like ${likeTitle}
</if> </if>
<if test="startTime != null"> <if test="startTime != null">
and created_at &gt; #{startTime} and created_at &gt; ${startTime}
</if> </if>
<if test="endTime != null"> <if test="endTime != null">
and created_at &lt; #{endTime} and created_at &lt; ${endTime}
</if> </if>
</where> </where>
</select> </select>
<insert id="addGoblinNftExActivity" parameterType="com.liquidnet.service.goblin.dto.vo.GoblinNftExActivityVo"> <insert id="addGoblinNftExActivity" parameterType="com.liquidnet.service.goblin.dto.vo.GoblinNftExActivity">
insert into goblin_nft_ex_activity insert into goblin_nft_ex_activity
( (
<if test="activityId != null and activityId != null"> <if test="activityId != null and activityId != null">
......
...@@ -207,6 +207,7 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService { ...@@ -207,6 +207,7 @@ public class GoblinNftOrderServiceImpl implements IGoblinNftOrderService {
} }
} }
// @TODO 33
private GoblinGoodsSkuInfoVo lotteryDraw(List<String> skuIdList, int number) { private GoblinGoodsSkuInfoVo lotteryDraw(List<String> skuIdList, int number) {
try { try {
ArrayList<GoblinGoodsSkuInfoVo> skuInfoVos = ObjectUtil.cloneArrayGoblinGoodsSkuInfoListVo(); ArrayList<GoblinGoodsSkuInfoVo> skuInfoVos = ObjectUtil.cloneArrayGoblinGoodsSkuInfoListVo();
......
...@@ -41,7 +41,7 @@ public class GoblinNftExActivityController { ...@@ -41,7 +41,7 @@ public class GoblinNftExActivityController {
@ApiOperationSupport(order = 2) @ApiOperationSupport(order = 2)
@ApiOperation(value = "活动列表") @ApiOperation(value = "活动列表")
@PostMapping("pageist") @PostMapping("pageList")
public ResponseDto<Object> pageList(@Valid @RequestBody GoblinNftExActivityParam goblinNftExActivityParam){ public ResponseDto<Object> pageList(@Valid @RequestBody GoblinNftExActivityParam goblinNftExActivityParam){
return ResponseDto.success(iGoblinNftExActivityService.pageList(goblinNftExActivityParam)); return ResponseDto.success(iGoblinNftExActivityService.pageList(goblinNftExActivityParam));
} }
......
...@@ -44,7 +44,9 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ ...@@ -44,7 +44,9 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ
goblinNftExActivity.setActivityId(IDGenerator.nextSnowId()); goblinNftExActivity.setActivityId(IDGenerator.nextSnowId());
goblinNftExActivity.setCreatedAt(now); goblinNftExActivity.setCreatedAt(now);
// mysql数据 // mysql数据
long s = System.currentTimeMillis();
goblinNftExActivityMapper.addGoblinNftExActivity(goblinNftExActivity); goblinNftExActivityMapper.addGoblinNftExActivity(goblinNftExActivity);
log.debug("#MYS耗时:{}ms", System.currentTimeMillis() - s);
return goblinNftExActivity.getActivityId(); return goblinNftExActivity.getActivityId();
} }
...@@ -53,12 +55,14 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ ...@@ -53,12 +55,14 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ
PageHelper.startPage(goblinNftExActivityParam.getPageNum(),20,true); PageHelper.startPage(goblinNftExActivityParam.getPageNum(),20,true);
/* /*
* 获取分页nft兑换活动数据 * 获取分页nft兑换活动数据
*/ */
long s = System.currentTimeMillis();
List<GoblinNftExActivity> goblinNftExActivities = goblinNftExActivityMapper.selectPageList(goblinNftExActivityParam.getTitle(), goblinNftExActivityParam.getStartTime(), List<GoblinNftExActivity> goblinNftExActivities = goblinNftExActivityMapper.selectPageList(goblinNftExActivityParam.getTitle(), goblinNftExActivityParam.getStartTime(),
goblinNftExActivityParam.getEndTime()); goblinNftExActivityParam.getEndTime());
log.debug("#MYS耗时:{}ms", System.currentTimeMillis() - s);
StringBuffer activityIds = new StringBuffer(); StringBuffer activityIds = new StringBuffer();
for (GoblinNftExActivity GoblinNftExActivity : goblinNftExActivities) { for (GoblinNftExActivity GoblinNftExActivity : goblinNftExActivities) {
...@@ -67,8 +71,10 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ ...@@ -67,8 +71,10 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ
if (StringUtil.isNotBlank(activityIds)){ if (StringUtil.isNotBlank(activityIds)){
activityIds.deleteCharAt(activityIds.length()-1); activityIds.deleteCharAt(activityIds.length()-1);
List<GoblinNftExCode> goblinNftExCodes = goblinNftExCodeMapper.selectByActivityIds(activityIds.toString());
long k = System.currentTimeMillis();
List<GoblinNftExCode> goblinNftExCodes = goblinNftExCodeMapper.selectByActivityIds(activityIds.toString());
log.debug("#MYS耗时:{}ms", System.currentTimeMillis() - k);
for (GoblinNftExActivity goblinNftExActivity :goblinNftExActivities) { for (GoblinNftExActivity goblinNftExActivity :goblinNftExActivities) {
Integer countNumber = 0; Integer countNumber = 0;
...@@ -78,7 +84,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ ...@@ -78,7 +84,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServ
if (goblinNftExActivity.getActivityId().equals(goblinNftExCode.getActivityId())){ if (goblinNftExActivity.getActivityId().equals(goblinNftExCode.getActivityId())){
countNumber++; countNumber++;
switch (goblinNftExCode.getState()){ switch (goblinNftExCode.getState()){
case 1: case 2:
useNumber++; useNumber++;
break; break;
default: default:
......
...@@ -47,9 +47,11 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService { ...@@ -47,9 +47,11 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
ArrayList<GoblinNftExSkuVo> goblinNftExSkuArrayList = ObjectUtil.getGoblinNftExSkuArrayList(); /* ArrayList<GoblinNftExSkuVo> goblinNftExSkuArrayList = ObjectUtil.getGoblinNftExSkuArrayList();
ArrayList<GoblinNftExCodeVo> goblinNftExCodeArrayList = ObjectUtil.getGoblinNftExCodeArrayList(); ArrayList<GoblinNftExCodeVo> goblinNftExCodeArrayList = ObjectUtil.getGoblinNftExCodeArrayList();*/
List<GoblinNftExSku> goblinNftExSkus = new ArrayList<>();
List<GoblinNftExCode> goblinNftExCodes = new ArrayList<>();
String activityId = ""; String activityId = "";
...@@ -66,32 +68,56 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService { ...@@ -66,32 +68,56 @@ public class GoblinNftExSkuServiceImpl implements IGoblinNftExSkuService {
GoblinNftExCode goblinNftExCode = GoblinNftExCode.getNew(); GoblinNftExCode goblinNftExCode = GoblinNftExCode.getNew();
goblinNftExCode.setCodeId(IDGenerator.nextSnowId()); goblinNftExCode.setCodeId(IDGenerator.nextSnowId());
goblinNftExCode.setActivityId(goblinNftExSkuParam.getActivityId()); goblinNftExCode.setActivityId(goblinNftExSkuParam.getActivityId());
// 获取code码
// 样例 2978-6496-9269-0694-XX
goblinNftExCode.setCode(""); goblinNftExCode.setCode("");
goblinNftExCode.setSkuId(goblinNftExSkuParam.getSkuId()); goblinNftExCode.setSkuId(goblinNftExSkuParam.getSkuId());
goblinNftExCode.setState(1); goblinNftExCode.setState(1);
goblinNftExCode.setCreatedAt(now); goblinNftExCode.setCreatedAt(now);
goblinNftExCodes.add(goblinNftExCode);
goblinNftExCodeArrayList.add(GoblinNftExCodeVo.getNew().copy(goblinNftExCode)); // goblinNftExCodeArrayList.add(GoblinNftExCodeVo.getNew().copy(goblinNftExCode));
} }
goblinNftExSkuArrayList.add(GoblinNftExSkuVo.getNew().copy(goblinNftExSku));
}
// redis 数据
// 并联sku信息
/* List<GoblinNftExSku> goblinNftExSkusVos = goblinRedisUtils.getSku(activityId);
goblinRedisUtils.incrSku(activityId, goblinNftExSkusVos, goblinNftExSkuArrayList);
// 兑换码信息 goblinNftExSkus.add(goblinNftExSku);
List<GoblinNftExCode> goblinNftExCodes = goblinRedisUtils.getCode(activityId); // goblinNftExSkuArrayList.add(GoblinNftExSkuVo.getNew().copy(goblinNftExSku));
goblinRedisUtils.incrCode(activityId, goblinNftExCodes, goblinNftExCodeArrayList);*/ }
goblinNftExSkuMapper.addGoblinNftExSkus(goblinNftExSkus);
goblinNftExCodeMapper.addGoblinNftExCodes(goblinNftExCodes);
return true;
}
// goblinNftExSkuMapper.addGoblinNftExSkus(goblinNftExSkuArrayList); /**
// goblinNftExCodeMapper.addGoblinNftExCodes(goblinNftExCodeArrayList); *
* @function 生成num位的随机字符串(数字、大写字母随机混排)
* @param num
* @return
*/
public static String createBigSmallLetterStrOrNumberRadom(int num) {
StringBuffer str = new StringBuffer();
for (int k=0;k<num;k++) {
for(int i=0;i < 4;i++){
int intVal=(int)(Math.random()*58+65);
if(intVal >= 91 && intVal <= 96){
i--;
}
if(intVal < 91 || intVal > 96){
if(intVal%2==0){
str.append((char)intVal);
}else{
str.append((int)(Math.random()*10));
}
}
}
str.append("-");
}
return str.toString()+"CH";
}
return null; public static void main(String[] args) {
System.out.println(createBigSmallLetterStrOrNumberRadom(3));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment