@ApiModelProperty("下黑类型") | @ApiModelProperty("下黑类型") | ||||
@NotNull | @NotNull | ||||
@EnumInteger(enumClazz = CardBlackType.class) | |||||
private Integer type; | |||||
private CardBlackType type; | |||||
@ApiModelProperty("下黑原因") | @ApiModelProperty("下黑原因") | ||||
@NotBlank | @NotBlank |
@ApiModelProperty("下黑类型") | @ApiModelProperty("下黑类型") | ||||
@NotNull | @NotNull | ||||
@EnumInteger(enumClazz = ObuBlackType.class) | |||||
private Integer type; | |||||
private ObuBlackType type; | |||||
@ApiModelProperty("下黑原因") | @ApiModelProperty("下黑原因") | ||||
@NotBlank | @NotBlank |
package cn.com.taiji.managew.dto.equity.single; | |||||
import cn.com.taiji.common.model.BaseModel; | |||||
import cn.com.taiji.core.entity.dict.EnableStatus; | |||||
import cn.com.taiji.core.entity.dict.issue.EquityType; | |||||
import lombok.Getter; | |||||
import lombok.Setter; | |||||
import lombok.experimental.Accessors; | |||||
import javax.persistence.Column; | |||||
import javax.persistence.EnumType; | |||||
import javax.persistence.Enumerated; | |||||
import javax.validation.constraints.NotBlank; | |||||
import javax.validation.constraints.NotNull; | |||||
import javax.validation.constraints.Size; | |||||
import java.time.LocalDateTime; | |||||
import java.util.List; | |||||
@Getter | |||||
@Setter | |||||
@Accessors(chain = true) | |||||
public class IssueSingleEquityDTO extends BaseModel { | |||||
private String singleEquityId;//单项权益ID | |||||
private String equityName;//权益名称 | |||||
private String productIntro;//权益类产品内容简介 | |||||
private Integer customerGroup;//客户群体 | |||||
private Integer chargeType;//收费类型 字典取CHARGE_TYPE | |||||
private Long discountPrice;//优惠售价 | |||||
private String costDescription;//成本组成描述 | |||||
private LocalDateTime endDate;//下架日期 | |||||
private Integer memberPoints;//会员积分 | |||||
private Integer refundOnEtcCancel;//ETC设备强绑定权益注销时是否退费(1---是;0---否) | |||||
private Integer validityFormat;//有效期格式 1日 2月 3季 4年 | |||||
private String sellingPoint;//卖点 | |||||
private List<String> channelAuthorization;//渠道授权 | |||||
private Long originalPrice;//原价 | |||||
private Long totalCost;//总成本 | |||||
private LocalDateTime startDate;//上架启用日期 | |||||
private String equityProvider;//权益提供方 | |||||
private Integer transferable;//是否支持权益产品过户(1---是;0---否) | |||||
private Integer discountCouponUsable;//是否可使用积分商城所兑换的折扣券(1---是;0---否) | |||||
private Integer usageValidity;//使用有效期 | |||||
private EnableStatus status;//状态 | |||||
private Integer examine;//审核状态(0--通过 1---不通过 2--待审核) | |||||
private String examineDes;//审核原因 | |||||
private String operateUserId;//操作人id | |||||
private String operateUserName;//操作人名称 | |||||
private EquityType equityType;//权益类型 | |||||
private String couponId;//卡券id (目前业务逻辑是:一种卡券权益只能绑定一种卡券) | |||||
private Integer alonePay;//是否单独售卖 1是 0否 | |||||
private String label;//标签 | |||||
private LocalDateTime insertTime = LocalDateTime.now();//创建时间 | |||||
private LocalDateTime updateTime = LocalDateTime.now();//变更时间 | |||||
} |
@Override | @Override | ||||
public BlackCardInResponseDTO cardIn(BlackCardInRequestDTO req) throws ManagerException { | public BlackCardInResponseDTO cardIn(BlackCardInRequestDTO req) throws ManagerException { | ||||
CardInRequest cardInRequest = copyProperties(req, new CardInRequest()); | CardInRequest cardInRequest = copyProperties(req, new CardInRequest()); | ||||
cardInRequest.setType(req.getType().getCode()); | |||||
cardInRequest.setSourceIn(req.getOrderSource().name()); | cardInRequest.setSourceIn(req.getOrderSource().name()); | ||||
AbstractBlsResponse blsResponse = null; | AbstractBlsResponse blsResponse = null; | ||||
try { | try { |
@Override | @Override | ||||
public BlackObuInResponseDTO obuIn(BlackObuInRequestDTO req) throws ManagerException { | public BlackObuInResponseDTO obuIn(BlackObuInRequestDTO req) throws ManagerException { | ||||
ObuInRequest obuInRequest = copyProperties(req, new ObuInRequest()); | ObuInRequest obuInRequest = copyProperties(req, new ObuInRequest()); | ||||
obuInRequest.setType(req.getType().getCode()); | |||||
obuInRequest.setSourceIn(req.getOrderSource().name()); | obuInRequest.setSourceIn(req.getOrderSource().name()); | ||||
AbstractBlsResponse blsResponse = null; | AbstractBlsResponse blsResponse = null; | ||||
try { | try { |
reqDTO.validate(); | reqDTO.validate(); | ||||
IssueSingleEquity issueSingleEquity = getIssueSingleEquity(reqDTO.getId()); | IssueSingleEquity issueSingleEquity = getIssueSingleEquity(reqDTO.getId()); | ||||
if (!issueSingleEquity.getEquityName().equals(reqDTO.getEquityName())){ | |||||
if (!issueSingleEquity.getEquityName().equals(reqDTO.getEquityName())) { | |||||
IssueSingleEquity byEquityName = issueSingleEquityRepo.findByEquityName(reqDTO.getEquityName()); | IssueSingleEquity byEquityName = issueSingleEquityRepo.findByEquityName(reqDTO.getEquityName()); | ||||
if (byEquityName != null) throw new ManagerException("该权益名称已存在"); | if (byEquityName != null) throw new ManagerException("该权益名称已存在"); | ||||
} | } | ||||
copyProperties(reqDTO, issueSingleEquity,"id","singleEquityId"); | |||||
copyProperties(reqDTO, issueSingleEquity, "id", "singleEquityId"); | |||||
setStaffInfo(reqDTO.getStaffId(), issueSingleEquity); | setStaffInfo(reqDTO.getStaffId(), issueSingleEquity); | ||||
issueSingleEquity.setChannelAuthorization(StringUtils.StringsToString(reqDTO.getChannelAuthorization())); | issueSingleEquity.setChannelAuthorization(StringUtils.StringsToString(reqDTO.getChannelAuthorization())); | ||||
issueSingleEquity.setExamine(2); | issueSingleEquity.setExamine(2); | ||||
} | } | ||||
@Override | @Override | ||||
public Pagination page(SingleEquityPageRequestDTO reqDTO) { | public Pagination page(SingleEquityPageRequestDTO reqDTO) { | ||||
IssueSingleEquityPageRequest request = copyProperties(reqDTO, new IssueSingleEquityPageRequest()); | IssueSingleEquityPageRequest request = copyProperties(reqDTO, new IssueSingleEquityPageRequest()); | ||||
return issueSingleEquityRepo.page(request); | |||||
return issueSingleEquityRepo.page(request).convertResult(this::covert); | |||||
} | |||||
private IssueSingleEquityDTO covert(IssueSingleEquity from) { | |||||
IssueSingleEquityDTO to = new IssueSingleEquityDTO(); | |||||
copyProperties(from, to); | |||||
if (hasText(from.getChannelAuthorization())) | |||||
to.setChannelAuthorization(List.of(from.getChannelAuthorization().split(","))); | |||||
return to; | |||||
} | } | ||||
@Override | @Override | ||||
setStaffInfo(reqDTO.getStaffId(), issueSingleEquity); | setStaffInfo(reqDTO.getStaffId(), issueSingleEquity); | ||||
issueSingleEquity.setExamine(reqDTO.getExamine()); | issueSingleEquity.setExamine(reqDTO.getExamine()); | ||||
issueSingleEquity.setExamineDes(reqDTO.getExamineDes()); | issueSingleEquity.setExamineDes(reqDTO.getExamineDes()); | ||||
if (reqDTO.getExamine() == 0){ | |||||
if (reqDTO.getExamine() == 0) { | |||||
issueSingleEquity.setStatus(EnableStatus.ENABLE); | issueSingleEquity.setStatus(EnableStatus.ENABLE); | ||||
} | } | ||||
issueSingleEquity.setUpdateTime(LocalDateTime.now()); | issueSingleEquity.setUpdateTime(LocalDateTime.now()); | ||||
} | } | ||||
@Override | @Override | ||||
public void status(SingleEquityStatusReqDTO reqDTO) throws ManagerException { | public void status(SingleEquityStatusReqDTO reqDTO) throws ManagerException { | ||||
IssueSingleEquity issueSingleEquity = getIssueSingleEquity(reqDTO.getId()); | IssueSingleEquity issueSingleEquity = getIssueSingleEquity(reqDTO.getId()); | ||||
if (issueSingleEquity.getExamine() != 0) { | |||||
if (issueSingleEquity.getExamine() != 0) { | |||||
throw new ManagerException("该权益未审核通过,不可变更状态"); | throw new ManagerException("该权益未审核通过,不可变更状态"); | ||||
} | } | ||||
List<IssueMultipleEquity> singleLike = | List<IssueMultipleEquity> singleLike = |