Exemple #1
0
        public BinViewModel(ArcGISFeature feature)
        {
            Title = "View Bin";
            New   = false;
            Edit  = false;

            ArcGISFeature = feature;
            Binstance     = ArcGISFeature.MapToBin();
            FeatureMapBinType();
            //display contents information
            //SetYTY();
            //if (Binstance.YTYDatas.Count > 0)
            //{
            //    YTYData = Binstance.YTYDatas[0];

            //foreach (var year in dateRange)
            //{
            //    if (year == YTYData.CropYear)
            //    {
            //        CropYear = year;
            //        break;
            //    }
            //}

            //Crop = YTYData.Crop;
            //GrainHeight = YTYData.GrainHeight.ToString();
            //GrainHopperHeight = YTYData.GrainHopperHeight.ToString();
            //GrainConeHeight = YTYData.ConeHeight.ToString();
            //MoisturePercent = YTYData.MoistureOfGrain.ToString();
            //MoistureFactor = YTYData.MoistureFactor.ToString();
            //TestWeight = YTYData.TestWeight.ToString();
            //PackFactor = YTYData.PackFactor.ToString();
            //DockagePercent = YTYData.DockagePercent.ToString();
            //DockageFactor = YTYData.DockageFactor.ToString();
            ////GrainVolume = YTYData.TotalVolume.ToString();

            //switch (YTYData.ConversionFactor)
            //{
            //    case 0.4:
            //        ConversionFactor = 0;
            //        break;
            //    case 0.8:
            //        ConversionFactor = 1;
            //        break;
            //    default:
            //        ConversionFactor = -1;
            //        break;
            //}

            //ShellFactor = YTYData.ShellFactor.ToString();
            //TotalDeductionVolume = YTYData.TotalDeductionVolume.ToString();
            //ContentsNotes = YTYData.Notes;
            //}

            //dsiplay general information
            YearCollected = Binstance.YearCollected;
            CreatedBy     = Binstance.CreatedBy;
            ModifiedBy    = Binstance.ModifiedBy;
            Identifier    = Binstance.Identifier;
            switch (Binstance.IsLeased)
            {
            case true:
                Owned = 0;
                break;

            case false:
                Owned = 1;
                break;

            default:
                Owned = -1;
                break;
            }

            switch (Binstance.HasDryingDevice)
            {
            case true:
                HasDryingDevice = 0;
                break;

            case false:
                HasDryingDevice = 1;
                break;

            default:
                HasDryingDevice = -1;
                break;
            }

            switch (Binstance.HasGrainHeightIndicator)
            {
            case true:
                HasGrainHeightIndicator = 0;
                break;

            case false:
                HasGrainHeightIndicator = 1;
                break;

            default:
                HasGrainHeightIndicator = -1;
                break;
            }

            switch (Binstance.LadderType)
            {
            case Ladder.None:
                LadderType = 0;
                break;

            case Ladder.Stairs:
                LadderType = 1;
                break;

            case Ladder.Ladder:
                LadderType = 2;
                break;
            }

            Notes = Binstance.Notes;

            //display capacity information
            Type t;

            switch (Binstance.BinType)
            {
            case BinTypeEnum.FlatStructure:
                BinType = 0;
                t       = Binstance.GetType();
                if (t.Equals(typeof(FlatBin)))
                {
                    FlatBin fbin = (FlatBin)Binstance;
                    CribWidth  = fbin.CribWidth.ToString();
                    CribLength = fbin.CribLength.ToString();
                }
                break;

            case BinTypeEnum.GravityWagon:
                BinType = 1;
                t       = Binstance.GetType();
                if (t.Equals(typeof(GravityBin)))
                {
                    GravityBin gbin = (GravityBin)Binstance;
                    RectangleHeight = gbin.RectangleHeight.ToString();
                    RectangleLength = gbin.RectangleLength.ToString();
                    RectangleWidth  = gbin.RectangleWidth.ToString();
                    ChuteLength     = gbin.ChuteLength.ToString();
                    HopperHeight    = gbin.HopperHeight.ToString();
                }
                break;

            case BinTypeEnum.PolygonStructure:
                BinType = 2;
                t       = Binstance.GetType();
                if (t.Equals(typeof(PolygonBin)))
                {
                    PolygonBin pbin = (PolygonBin)Binstance;
                    SideHeight    = pbin.SideHeight.ToString();
                    SideWidth     = pbin.SideWidth.ToString();
                    numberOfSides = pbin.NumberOfSides.ToString();
                }
                break;

            case BinTypeEnum.RoundStorage:
                BinType = 3;
                t       = Binstance.GetType();
                if (t.Equals(typeof(RoundBin)))
                {
                    RoundBin rbin = (RoundBin)Binstance;
                    Radius            = rbin.Radius.ToString();
                    RoofHeight        = rbin.RoofHeight.ToString();
                    WallHeight        = rbin.WallHeight.ToString();
                    RoundHopperHeight = rbin.HopperHeight.ToString();
                }
                break;

            case BinTypeEnum.NotFound:
                BinType = -1;
                break;
            }
        }