提交 f703de96 作者: 沈振路

人群包添加关注的边界时间

上级 80646792
......@@ -34,8 +34,10 @@ public class CrowdPackageController {
public GenericsResult<CrowdPackageCommonIdVO> insertCrowdPackage(@RequestParam(required = false) Long id,
@RequestParam(required = false) String name,
@RequestParam(required = false) Double activeTimeMin,
@RequestParam(required = false) Double activeTimeMax) {
return crowdPackageService.insertCrowdPackage(id, name, activeTimeMin, activeTimeMax);
@RequestParam(required = false) Double activeTimeMax,
@RequestParam(required = false) Integer followTimeMin,
@RequestParam(required = false) Integer followTimeMax) {
return crowdPackageService.insertCrowdPackage(id, name, activeTimeMin, activeTimeMax, followTimeMin, followTimeMax);
}
@ApiOperation("向人群包内新增条件")
......
package com.yaoyaozw.customer.dto.crowd;
import lombok.Data;
import java.io.Serializable;
/**
* @author darker
* @date 2023/7/7 11:34
*/
@Data
public class CrowdPackageSaveDTO implements Serializable {
private Long id;
private String name;
private Double activeTimeMin;
private Double activeTimeMax;
private Integer followTimeMin;
private Integer followTimeMax;
}
......@@ -48,6 +48,18 @@ public class CrowdPackage implements Serializable {
private Long activeTimeMax;
/**
* 关注时间左边界
*/
@TableField("follow_time_min")
private Integer followTimeMin;
/**
* 关注时间右边界
*/
@TableField("follow_time_max")
private Integer followTimeMax;
/**
* 人群包用户人数
*/
@TableField("crowd_num")
......@@ -85,9 +97,12 @@ public class CrowdPackage implements Serializable {
private static final long serialVersionUID = 1L;
public CrowdPackage(Long id, String packageName, Double activeTimeMin, Double activeTimeMax) {
public CrowdPackage(Long id, String packageName, Double activeTimeMin, Double activeTimeMax, Integer followTimeMin, Integer followTimeMax) {
this.id = id;
this.packageName = packageName;
this.followTimeMin = followTimeMin;
this.followTimeMax = followTimeMax;
if (ObjectUtil.isNotNull(activeTimeMin)) {
Double v = activeTimeMin * CrowdPackageCommonConstant.HOUR_TO_MILLION_RATE;
this.activeTimeMin = v.longValue();
......
......@@ -23,9 +23,11 @@ public interface CrowdPackageService extends IService<CrowdPackage> {
* @param name 人群包名
* @param activeTimeMin 活跃时间左边界
* @param activeTimeMax 活跃时间右边界
* @param followTimeMin 关注天数左边界
* @param followTimeMax 关注天数右边界
* @return {@link BaseResult}
*/
GenericsResult<CrowdPackageCommonIdVO> insertCrowdPackage(Long id, String name, Double activeTimeMin, Double activeTimeMax);
GenericsResult<CrowdPackageCommonIdVO> insertCrowdPackage(Long id, String name, Double activeTimeMin, Double activeTimeMax, Integer followTimeMin, Integer followTimeMax);
/**
......
......@@ -64,12 +64,12 @@ public class CrowdPackageServiceImpl extends ServiceImpl<MaterialCrowdPackageMap
@Override
public GenericsResult<CrowdPackageCommonIdVO> insertCrowdPackage(Long id, String name, Double activeTimeMin, Double activeTimeMax) {
public GenericsResult<CrowdPackageCommonIdVO> insertCrowdPackage(Long id, String name, Double activeTimeMin, Double activeTimeMax, Integer followTimeMin, Integer followTimeMax) {
// 根据是否传了主键判断是创建还是更新
boolean isCreate = ObjectUtil.isNull(id);
// 获取操作人
Long userId = tokenManager.getUserIdFromToken();
CrowdPackage crowdPackage = new CrowdPackage(id, name, activeTimeMin, activeTimeMax);
CrowdPackage crowdPackage = new CrowdPackage(id, name, activeTimeMin, activeTimeMax, followTimeMin, followTimeMax);
crowdPackage.handleInfo(new Date(), userId, isCreate);
if (ObjectUtil.isNotNull(name)) {
// 判断是否有重名
......
......@@ -35,12 +35,25 @@ public class CrowdPackageDetailVO implements Serializable {
@ApiModelProperty("活跃时间右边界")
private Double activeTimeMax;
/**
* 关注时间左边界
*/
private Integer followTimeMin;
/**
* 关注时间右边界
*/
private Integer followTimeMax;
@ApiModelProperty("已配置的人群包条件")
private List<CrowdPackageConditionMatchVO> conditionList;
public CrowdPackageDetailVO(CrowdPackage byId) {
this.packageId = byId.getId();
this.packageName = byId.getPackageName();
this.followTimeMin = byId.getFollowTimeMin();
this.followTimeMax = byId.getFollowTimeMax();
if (ObjectUtil.isNotNull(byId.getActiveTimeMin())) {
this.activeTimeMin = byId.getActiveTimeMin().doubleValue() / CrowdPackageCommonConstant.HOUR_TO_MILLION_RATE;
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论