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

Commit 8bc19085 authored by jiangxiulong's avatar jiangxiulong

格式化;delay完善

parent e13ad001
package com.liquidnet.service.goblin.dto;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class GoblinNftExCodeNumDto {
private String activityId;
private String storeId;
private String spuId;
private String skuId;
private String unbox;
private LocalDateTime exStartTime;
private LocalDateTime exStopTime;
private Integer num;
private String boxSkuId;
}
......@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import com.liquidnet.service.goblin.dto.GoblinNftExCodeNumDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -60,6 +62,23 @@ public class GoblinNftExCodeTask implements Serializable {
}
}
public GoblinNftExCodeTask copy(GoblinNftExCodeNumDto vo) {
if (null == vo) return this;
this.setActivityId(vo.getActivityId());
this.setStoreId(vo.getStoreId());
this.setSpuId(vo.getSpuId());
this.setSkuId(vo.getSkuId());
this.setUnbox(vo.getUnbox());
this.setExStock(vo.getNum());
this.setExLimit(0);
this.setExStartTime(vo.getExStartTime());
this.setExStopTime(vo.getExStopTime());
this.setTyp(1);
return this;
}
}
package com.liquidnet.service.goblin.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.liquidnet.service.goblin.dto.GoblinNftExCodeNumDto;
import com.liquidnet.service.goblin.entity.GoblinNftExSku;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -32,4 +33,7 @@ public interface GoblinNftExSkuMapper extends BaseMapper<GoblinNftExSku> {
* @return
*/
List<GoblinNftExSku> selectGoblinNftExSkuByActivityIds(@Param("activityIds")String activityIds);
List<GoblinNftExCodeNumDto> selectExCodeNum(@Param("oldActivityId") String oldActivityId, @Param("unbox") String unbox);
}
......@@ -17,14 +17,31 @@
<select id="selectGoblinNftExSkuByActivityIds" resultMap="BaseResult">
select activity_id,sku_id,unbox,store_id,ex_start_time,ex_stop_time from goblin_nft_ex_sku where
activity_id in
<foreach collection="activityIds.split(',')" item="activityId" open="(" separator="," close=")" >
#{activityId,jdbcType=VARCHAR}
</foreach>
activity_id in
<foreach collection="activityIds.split(',')" item="activityId" open="(" separator="," close=")">
#{activityId,jdbcType=VARCHAR}
</foreach>
</select>
<select id="selectExCodeNum" resultType="com.liquidnet.service.goblin.dto.GoblinNftExCodeNumDto">
select gnes.activity_id, gnes.store_id, gnes.spu_id, gnes.sku_id, gnes.unbox, gnes.ex_start_time, gnes.ex_stop_time, count(*) as num, gnec.box_sku_id
from goblin_nft_ex_sku as gnes
left join goblin_nft_ex_code as gnec on gnes.activity_id = gnec.activity_id and gnes.activity_id =
gnec.activity_id
<where>
gnes.activity_id = #{oldActivityId}
and gnes.unbox = #{unbox}
</where>
<if test="unbox == '0' ">
group by gnes.sku_id
</if>
<if test="unbox == '1' ">
group by gnec.box_sku_id
</if>
</select>
<insert id="addGoblinNftExSkus">
insert into goblin_nft_ex_sku (activity_id,spu_id,sku_id,store_id,unbox,ex_stock,ex_limit,ex_start_time,ex_stop_time,created_at)
insert into goblin_nft_ex_sku
(activity_id,spu_id,sku_id,store_id,unbox,ex_stock,ex_limit,ex_start_time,ex_stop_time,created_at)
values
<foreach collection="goblinNftExSkus" item="goblinNftExSku" separator=",">
(
......
......@@ -10,6 +10,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.StringUtil;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.GoblinNftExCodeNumDto;
import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.entity.*;
import com.liquidnet.service.goblin.mapper.*;
......@@ -52,6 +53,8 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
private GoblinGoodsSkuMapper goblinGoodsSkuMapper;
@Autowired
GoblinNftExCodeTaskMapper goblinNftExCodeTaskMapper;
@Autowired
private GoblinNftExCodeTaskRelationMapper goblinNftExCodeTaskRelationMapper;
@Override
public ResponseDto<Object> add(GoblinNftExActivityParam goblinNftExActivityParam) {
......@@ -382,7 +385,7 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
return ResponseDto.failure("该活动还有未过期的兑换码!");
}
}
// 是否有失效的code???
// TODO: 2022/6/2 是否有失效的code???
// 活动入库
LocalDateTime now = LocalDateTime.now();
......@@ -395,9 +398,40 @@ public class GoblinNftExActivityServiceImpl implements IGoblinNftExActivityServi
// goblinNftExActivityMapper.addGoblinNftExActivity(goblinNftExActivity);
// TODO: 2022/6/2 是否需要更新活动标识 记录延期过
// 查询出所有过期的码
// 查询出所有过期的码 明盒
List<GoblinNftExCodeNumDto> exCodeNum = goblinNftExSkuMapper.selectExCodeNum(oldActivityId, "");
// 重新生成
List<GoblinNftExCodeTask> goblinNftExCodeTasks = ObjectUtil.getGoblinNftExCodeTaskArrayList();
for (GoblinNftExCodeNumDto goblinNftExCodeNumDto : exCodeNum) {
// 定时任务对象构建
GoblinNftExCodeTask goblinNftExCodeTask = GoblinNftExCodeTask.getNew().copy(goblinNftExCodeNumDto);
goblinNftExCodeTask.setTaskId(IDGenerator.nextSnowId());
goblinNftExCodeTask.setExStartTime(delayParam.getStartTime());
goblinNftExCodeTask.setExStopTime(delayParam.getEndTime());
goblinNftExCodeTask.setCreatedAt(now);
if (goblinNftExCodeNumDto.getUnbox().equals("1")) {
ArrayList<GoblinNftExCodeTaskRelation> goblinNftExCodeTaskRelations = ObjectUtil.getGoblinNftExCodeTaskRelationArrayList();
// 查询出所有过期的码 盲盒盒
List<GoblinNftExCodeNumDto> exCodeNumBox = goblinNftExSkuMapper.selectExCodeNum(oldActivityId, "1");
Integer sNumber = 0;
for (GoblinNftExCodeNumDto codeNumBox : exCodeNumBox) {
GoblinNftExCodeTaskRelation goblinNftExCodeTaskRelation = GoblinNftExCodeTaskRelation.getNew();
goblinNftExCodeTaskRelation.setTaskId(goblinNftExCodeTask.getTaskId());
goblinNftExCodeTaskRelation.setSkuId(codeNumBox.getBoxSkuId());
goblinNftExCodeTaskRelation.setStock(codeNumBox.getNum());
goblinNftExCodeTaskRelation.setCreatedAt(now);
goblinNftExCodeTaskRelations.add(goblinNftExCodeTaskRelation);
sNumber += codeNumBox.getNum();
}
// goblinNftExCodeTaskRelationMapper.inserts(goblinNftExCodeTaskRelations);
goblinNftExCodeTask.setExStock(sNumber);
}
goblinNftExCodeTasks.add(goblinNftExCodeTask);
}
if (goblinNftExCodeTasks.size() > 0) {
// goblinNftExCodeTaskMapper.addGoblinNftExCodeTasks(goblinNftExCodeTasks);
}
return ResponseDto.success("操作成功");
}
......
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