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

Commit d84a18d3 authored by jiangxiulong's avatar jiangxiulong

detail

parent 55e6e9b0
package com.liquidnet.service.sweet.dto.vo.admin;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityPrize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
/**
* <p>
* SweetIntegralActivityVo
* </p>
*
* @author jiangxiulong
* @since 2021-10-20
*/
@Data
@ApiModel
public class SweetIntegralActivityPrizeVo implements Serializable, Cloneable {
private static final long serialVersionUID = 4229281062171296759L;
@ApiModelProperty(value = "奖品id")
private String prizeId;
@ApiModelProperty(value = "关联活动id")
private String integralActivityId;
@ApiModelProperty(value = "奖品名称")
private String prizeTitle;
@ApiModelProperty(value = "奖品图片")
private String prizeImg;
@ApiModelProperty(value = "奖品类型 1谢谢惠顾 2积分 3优惠券 4实物")
private Integer prizeType;
@ApiModelProperty(value = "关联id 如商品id 券id")
private String relationId;
@ApiModelProperty(value = "奖品数量")
private Integer prizeNum;
@ApiModelProperty(value = "限制的中奖人数")
private Integer winnersNum;
@ApiModelProperty(value = "中奖概率")
private BigDecimal winningProbability;
@ApiModelProperty(value = "创建时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt;
@ApiModelProperty(value = "更新时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime updatedAt;
@ApiModelProperty(value = "已发出数量")
private Integer winPrizeNum;
private static final SweetIntegralActivityPrizeVo obj = new SweetIntegralActivityPrizeVo();
public static SweetIntegralActivityPrizeVo getNew() {
try {
return (SweetIntegralActivityPrizeVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new SweetIntegralActivityPrizeVo();
}
}
public SweetIntegralActivityPrizeVo copy(SweetIntegralActivityPrize source) {
if (null == source) return this;
this.setPrizeId(source.getPrizeId());
this.setIntegralActivityId(source.getIntegralActivityId());
this.setPrizeTitle(source.getPrizeTitle());
this.setPrizeImg(source.getPrizeImg());
this.setPrizeType(source.getPrizeType());
this.setRelationId(source.getRelationId());
this.setPrizeNum(source.getPrizeNum());
this.setWinnersNum(source.getWinnersNum());
this.setWinningProbability(source.getWinningProbability());
this.setCreatedAt(source.getCreatedAt());
this.setUpdatedAt(source.getUpdatedAt());
return this;
}
}
package com.liquidnet.service.sweet.dto.vo.admin;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityPrize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
......@@ -56,13 +57,15 @@ public class SweetIntegralActivityVo implements Serializable, Cloneable {
private Integer isOnline;
@ApiModelProperty(value = "创建时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt;
@ApiModelProperty(value = "更新时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime updatedAt;
@ApiModelProperty(value = "奖品列表")
private List<SweetIntegralActivityPrize> prizeList;
private List<SweetIntegralActivityPrizeVo> prizeList;
private static final SweetIntegralActivityVo obj = new SweetIntegralActivityVo();
......
package com.liquidnet.service.sweet.utils;
import com.liquidnet.service.sweet.dto.vo.admin.SweetIntegralActivityPrizeVo;
import java.util.ArrayList;
public class SweetNewObjectUtil {
private static final ArrayList<SweetIntegralActivityPrizeVo> sweetIntegralActivityPrizeVoArrayList = new ArrayList<>();
public static ArrayList<SweetIntegralActivityPrizeVo> getSweetIntegralActivityPrizeVoArrayList() {
return (ArrayList<SweetIntegralActivityPrizeVo>) sweetIntegralActivityPrizeVoArrayList.clone();
}
}
......@@ -9,17 +9,22 @@ import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeFormParam;
import com.liquidnet.service.sweet.dto.vo.admin.SweetIntegralActivityPrizeVo;
import com.liquidnet.service.sweet.dto.vo.admin.SweetIntegralActivityVo;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityDraw;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityPrize;
import com.liquidnet.service.sweet.mapper.SweetIntegralActivityDrawMapper;
import com.liquidnet.service.sweet.mapper.SweetIntegralActivityMapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.liquidnet.service.sweet.mapper.SweetIntegralActivityPrizeMapper;
import com.liquidnet.service.sweet.utils.SweetNewObjectUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
/**
......@@ -37,6 +42,8 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
SweetIntegralActivityMapper sweetIntegralActivityMapper;
@Autowired
SweetIntegralActivityPrizeMapper sweetIntegralActivityPrizeMapper;
@Autowired
SweetIntegralActivityDrawMapper sweetIntegralActivityDrawMapper;
@Override
public PageInfo<SweetIntegralActivity> list(SweetIntegralActivityListSearchParam listParam) {
......@@ -71,7 +78,19 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
List<SweetIntegralActivityPrize> sweetIntegralActivityPrizes = sweetIntegralActivityPrizeMapper.selectList(
Wrappers.lambdaQuery(SweetIntegralActivityPrize.class).eq(SweetIntegralActivityPrize::getIntegralActivityId, integralActivityId)
);
integralActivityVo.setPrizeList(sweetIntegralActivityPrizes);
if (!CollectionUtils.isEmpty(sweetIntegralActivityPrizes)) {
List<SweetIntegralActivityPrizeVo> prizeVoList = SweetNewObjectUtil.getSweetIntegralActivityPrizeVoArrayList();
for (SweetIntegralActivityPrize prize : sweetIntegralActivityPrizes) {
SweetIntegralActivityPrizeVo sweetIntegralActivityPrizeVo = SweetIntegralActivityPrizeVo.getNew().copy(prize);
// 已发出
Integer winPrizeNum = sweetIntegralActivityDrawMapper.selectCount(
Wrappers.lambdaQuery(SweetIntegralActivityDraw.class).eq(SweetIntegralActivityDraw::getPrizeId, prize.getPrizeId())
);
sweetIntegralActivityPrizeVo.setWinPrizeNum(winPrizeNum);
prizeVoList.add(sweetIntegralActivityPrizeVo);
}
integralActivityVo.setPrizeList(prizeVoList);
}
return integralActivityVo;
}
......
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