CpoViewModels.cs 1.71 KB
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace CWA.CpoOnline.Models
{

    public class SymbolViewModel
    {
        [Key]
        public string Id { get; set; }
        [Required]
        [Display(Name = "Symbol")]
        [StringLength(25, ErrorMessage = "{0} must be at least {2} characters long.", MinimumLength = 1)]
        public string Symbol { get; set; }
        [Required]
        [Display(Name = "Name")]
        [StringLength(50)]
        public string Name { get; set; }
        public SectorViewModel Sector { get; set; }
        public int Status { get; set; }
        public int Temperature { get; set; }
    }

    public class SectorViewModelComparer : IEqualityComparer<SectorViewModel>
    {
        public bool Equals(SectorViewModel left, SectorViewModel right)
        {
            if ((object)left == null && (object)right == null)
            {
                return true;
            }
            if ((object)left == null || (object)right == null)
            {
                return false;
            }
            return left.Id == right.Id;
        }

        public int GetHashCode(SectorViewModel obj)
        {
            return obj.Id.GetHashCode();
        }
    }



    public class SectorViewModel
    {
        [Key]
        public string Id { get; set; }

        [Required]
        [Display(Name = "Name")]
        [StringLength(50)]
        public string Name { get; set; }

        public List<SymbolViewModel> Symbols { get; set; } = new List<SymbolViewModel>();

        public int Status { get; set; }
        public int Temperature { get; set; }
    }


    public class ChartViewModel
    {

    }

}