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

import com.red.circle.framework.core.convertor.ConvertorModel;
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamExchangeSurplusTarget;
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamMember;
import com.red.circle.other.infra.database.mongo.entity.team.team.TeamProfile;
import com.red.circle.other.inner.model.dto.agency.agency.TeamExchangeSurplusTargetDTO;
import com.red.circle.other.inner.model.dto.agency.agency.TeamMemberDTO;
import com.red.circle.other.inner.model.dto.agency.agency.TeamProfileDTO;
import java.util.List;
import java.util.Map;
import org.mapstruct.Mapper;

/**
 * @author pengliang on 2023/6/1
 */
@Mapper(componentModel = ConvertorModel.SPRING)
public interface AgencyTeamAppConvertor {

  TeamMemberDTO toTeamMemberDTO(TeamMember teamMember);

  Map<Long, TeamMemberDTO> toMapTeamMemberDTO(Map<Long, TeamMember> map);

  Map<Long, TeamProfileDTO> toMapTeamProfileDTO(Map<Long, TeamProfile> map);

  TeamProfileDTO toTeamProfileDTO(TeamProfile teamProfile);

  List<TeamExchangeSurplusTargetDTO> toListTeamExchangeSurplusTargetDTO(
      List<TeamExchangeSurplusTarget> list);
}
