using System; using System.Collections.Generic; using Sockeye.Biz; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Newtonsoft.Json; namespace Sockeye.Models { //NOTE: Any non required field (nullable in DB) sb nullable here, i.e. decimal? not decimal, //otherwise the server will call it an invalid record if the field isn't sent from client //#### MIRRORED IN QBI !! public class Vendor : ICoreBizObjectModel { public long Id { get; set; } public uint Concurrency { get; set; } [Required] public string Name { get; set; } public bool Active { get; set; } public string Notes { get; set; } public string Wiki { get; set; } public string CustomFields { get; set; } public List Tags { get; set; } public string Contact { get; set; } public string ContactNotes { get; set; } public string AlertNotes { get; set; } public string WebAddress { get; set; } public string AccountNumber { get; set; } public string Phone1 { get; set; } public string Phone2 { get; set; } public string Phone3 { get; set; } public string Phone4 { get; set; } public string Phone5 { get; set; } public string EmailAddress { get; set; } //POSTAL ADDRESS public string PostAddress { get; set; } public string PostCity { get; set; } public string PostRegion { get; set; } public string PostCountry { get; set; } public string PostCode { get; set; } //PHYSICAL ADDRESS public string Address { get; set; } public string City { get; set; } public string Region { get; set; } public string Country { get; set; } public string AddressPostal { get; set; } public decimal? Latitude { get; set; } public decimal? Longitude { get; set; } public Vendor() { Tags = new List(); } [NotMapped, JsonIgnore] public SockType SType { get => SockType.Vendor; } }//eoc }//eons