001/*-
002 * #%L
003 * Smile CDR - CDR
004 * %%
005 * Copyright (C) 2016 - 2024 Smile CDR, Inc.
006 * %%
007 * All rights reserved.
008 * #L%
009 */
010package ca.cdr.api.model.json.appgallery.common;
011
012import ca.cdr.api.model.json.AbstractModelJson;
013import ca.cdr.api.model.json.AuditableJson;
014import ca.cdr.api.model.json.JsonDateDeserializer;
015import ca.cdr.api.model.json.JsonDateSerializer;
016import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
017import com.fasterxml.jackson.databind.annotation.JsonSerialize;
018
019import java.util.ArrayList;
020import java.util.Date;
021import java.util.List;
022
023/**
024 * supported types: {@link ca.cdr.api.model.enm.appgallery.AGProfileType}
025 */
026public class AGProfileJson extends AbstractModelJson {
027        public AGIdentifierJson identifier;
028
029        public String type;
030
031        public String givenName;
032
033        public String familyName;
034
035        public String username;
036
037        public String email;
038        public String fullName;
039
040        public String businessName;
041
042        public String designation;
043
044        public String dunsNumber;
045        public String webSiteUrl;
046
047        public String salesContact;
048
049        public String supportContact;
050
051        public String supportWebpage;
052
053        public String aboutUs;
054
055        public Boolean incorporated;
056
057        public AGAddressJson address = new AGAddressJson();
058
059        public List<AGPhoneJson> phones = new ArrayList<>();
060
061        public AuditableJson auditable;
062
063        @JsonSerialize(using = JsonDateSerializer.class)
064        @JsonDeserialize(using = JsonDateDeserializer.class)
065        public Date archiveDate;
066}