package com.red.circle.other.app.convertor.user;

import com.red.circle.framework.core.convertor.ConvertorModel;
import com.red.circle.other.app.dto.clientobject.user.invite.InviteRedPacketCarouselAwardsCO;
import com.red.circle.other.app.dto.clientobject.user.invite.InviteRedPacketUserCheckAuthCO;
import com.red.circle.other.app.dto.clientobject.user.invite.InviteRedPacketWithdrawalCO;
import com.red.circle.other.infra.database.cache.entity.user.InviteUserRedPacketCarouselAwardsCache;
import com.red.circle.other.infra.database.rds.dto.user.InviteNewWithdrawalDTO;
import com.red.circle.other.infra.database.rds.dto.user.InviteUserCheckAuthDTO;
import java.util.List;
import org.mapstruct.Mapper;

/**
 * @author pengshigang on 2024/01/04
 */
@Mapper(componentModel = ConvertorModel.SPRING)
public interface RedPacketInviteAppConvertor {

  List<InviteRedPacketCarouselAwardsCO> toRedPacketInviteCarouselAwardsCOList(
      List<InviteUserRedPacketCarouselAwardsCache> list);

  InviteRedPacketUserCheckAuthCO toInviteUserCheckAuthCO(InviteUserCheckAuthDTO dto);

  InviteRedPacketWithdrawalCO toInviteNewWithdrawalCO(InviteNewWithdrawalDTO dto);

}
