package com.hzs.activity.people.param;

import com.hzs.activity.base.param.ActivityParam;
import com.hzs.activity.fest.vo.AcFestivalRuleConfigVO;
import com.hzs.activity.people.vo.AcNewPeopleRuleConfigVO;
import com.hzs.activity.work.vo.AcSuperWorkRuleConfigVO;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import com.hzs.common.core.web.domain.BaseApprovalEntity;
import com.hzs.system.sys.dto.LoginUser;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 新人礼包活动参数类
 * </p>
 *
 * @author hzs
 * @since 2023-04-24
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class AcBaseConfigParam extends BaseApprovalEntity implements Serializable {

    /**
     * 活动基本配置主键
     */
    private Long pkBaseId;

    /**
     * 操作类型（1=新增,2=修改,3=删除）
     */
    @Transaction(transactionKey = EnumsPrefixConstants.CONTROL_TYPE)
    private Integer controlType;

    private Integer controlTypeVal;

    /**
     * 国家
     */
    private Integer pkCountry;

    /**
     * 会员ID
     */
    private Long pkCreator;

    /**
     * 会员ID
     */
    private Long pkMember;

    /**
     * 审批业务类型 来源于枚举  EApprovalBusiness
     */
    private Integer approvalType;


    /**
     * 登录用户信息
     */
    private LoginUser loginUser;

    /**
     * 基本信息
     */
    private ActivityParam activityParam;

    /**
     * 新人礼包规则集合
     */
    private List<AcNewPeopleRuleConfigVO> anpList;
    /**
     * 超级工作室赠送规则集合
     */
    private List<AcSuperWorkRuleConfigVO> aswList;
    /**
     * 节日赠送规则集合
     */
    private List<AcFestivalRuleConfigVO> afrList;


}
