class GetUserDetailResponse extends ApiResponse {

    @JsonProperty
    @JsonAlias("userid")
    private String id;

    @JsonProperty
    private String name;

    @JsonProperty
    private String alias;

    @JsonProperty
    private List<String> department;

    @JsonProperty
    @JsonAlias("main_department")
    private String mainDepartment;

    @JsonProperty
    private Integer gender;

    @JsonProperty
    private String avatar;

    @JsonProperty
    @JsonAlias("qr_code")
    private String qrCode;

    @JsonProperty
    private String mobile;

    @JsonProperty
    private String email;

    @JsonProperty
    @JsonAlias("biz_mail")
    private String bizMail;

    @JsonProperty
    private String address;

    public String getUnionId() {<FILL_FUNCTION_BODY>}

}

        if (StringUtils.hasText(mainDepartment)) {
            return mainDepartment;
        }
        if (CollectionUtils.isEmpty(department)) {
            return null;
        }
        return String.join(",", department);
    
<methods>public non-sealed void <init>() ,public void assertSuccess() ,public boolean isSuccess() <variables>private int errorCode,private java.lang.String errorMessage