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

import com.red.circle.framework.core.convertor.ConvertorModel;
import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.infra.database.rds.entity.team.TeamManagerInfo;
import com.red.circle.other.inner.model.cmd.team.manager.TeamManagerAddCmd;
import com.red.circle.other.inner.model.dto.agency.manager.TeamManagerDTO;
import org.mapstruct.Mapper;

/**
 * 团队经理转换器.
 */
@Mapper(componentModel = ConvertorModel.SPRING)
public interface TeamManagerInnerConvertor {

  TeamManagerDTO toTeamManagerDTO(TeamManagerInfo managerInfo);

  TeamManagerInfo toTeamManagerInfo(TeamManagerAddCmd cmd);

  TeamManagerInfo toTeamManagerInfo(TeamManagerDTO dto);

  PageResult<TeamManagerDTO> toPageTeamManagerDTO(PageResult<TeamManagerInfo> pageResult);

}
