package com.tourguide.modules.user.dto;
|
|
import com.tourguide.modules.user.entity.GuideTeam;
|
import com.tourguide.modules.user.entity.GuideTeamScenicConfig;
|
import java.math.BigDecimal;
|
import java.time.LocalDateTime;
|
import java.util.Collections;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
public class GuideTeamResponse {
|
private Long id;
|
private String teamName;
|
private String contactPhone;
|
private String operatingArea;
|
private String companyName;
|
private String unifiedSocialCreditCode;
|
private BigDecimal commissionRatio;
|
private String wechatOpenId;
|
private String merchantId;
|
private BigDecimal balance;
|
private Long collectionGuideId;
|
private Integer status;
|
private LocalDateTime createdAt;
|
private LocalDateTime updatedAt;
|
private List<GuideTeamScenicResponse> scenicConfigs;
|
|
public static GuideTeamResponse from(GuideTeam team) {
|
return from(team, Collections.<GuideTeamScenicConfig>emptyList());
|
}
|
|
public static GuideTeamResponse from(GuideTeam team, List<GuideTeamScenicConfig> scenicConfigs) {
|
GuideTeamResponse response = new GuideTeamResponse();
|
response.id = team.getId();
|
response.teamName = team.getTeamName();
|
response.contactPhone = team.getContactPhone();
|
response.operatingArea = team.getOperatingArea();
|
response.companyName = team.getCompanyName();
|
response.unifiedSocialCreditCode = team.getUnifiedSocialCreditCode();
|
response.commissionRatio = team.getCommissionRatio();
|
response.wechatOpenId = team.getWechatOpenId();
|
response.merchantId = team.getMerchantId();
|
response.balance = team.getBalance() == null ? BigDecimal.ZERO : team.getBalance();
|
response.collectionGuideId = team.getCollectionGuideId();
|
response.status = team.getStatus();
|
response.createdAt = team.getCreatedAt();
|
response.updatedAt = team.getUpdatedAt();
|
response.scenicConfigs = scenicConfigs.stream()
|
.map(GuideTeamScenicResponse::from)
|
.collect(Collectors.toList());
|
return response;
|
}
|
|
public Long getId() { return id; }
|
public String getTeamName() { return teamName; }
|
public String getContactPhone() { return contactPhone; }
|
public String getOperatingArea() { return operatingArea; }
|
public String getCompanyName() { return companyName; }
|
public String getUnifiedSocialCreditCode() { return unifiedSocialCreditCode; }
|
public BigDecimal getCommissionRatio() { return commissionRatio; }
|
public String getWechatOpenId() { return wechatOpenId; }
|
public String getMerchantId() { return merchantId; }
|
public BigDecimal getBalance() { return balance; }
|
public Long getCollectionGuideId() { return collectionGuideId; }
|
public Integer getStatus() { return status; }
|
public LocalDateTime getCreatedAt() { return createdAt; }
|
public LocalDateTime getUpdatedAt() { return updatedAt; }
|
public List<GuideTeamScenicResponse> getScenicConfigs() { return scenicConfigs; }
|
}
|