Esempio n. 1
0
        }   //  end noDataForGraph

        private List <LogStockDO> LoadLogs(IEnumerable <LogStockDO> justSixteens, string currSP, IEnumerable <StratumDO> sList)
        {
            List <LogStockDO> returnLogs = new List <LogStockDO>();

            //List<LogStockDO> justDIBs = Global.BL.getLogDIBs();
            foreach (LogStockDO jd in Global.BL.getLogDIBs())
            {
                //  expand and sum
                double calcValue = 0;
                foreach (LogStockDO jl in justSixteens.Where(l => l.DIBClass == jd.DIBClass))
                {
                    // find acres
                    StratumDO st     = sList.First(s => s.Code == jl.Tree.Stratum.Code);
                    double    currAC = Utilities.ReturnCorrectAcres(jl.Tree.Stratum.Code, (long)st.Stratum_CN);
                    calcValue += (float)jl.Tree.ExpansionFactor * currAC;
                }   //  end foreach loop
                //  load DIB class into report list
                if (calcValue > 0)
                {
                    LogStockDO ls = new LogStockDO();
                    ls.DIBClass = jd.DIBClass;
                    //  since Tree is not defined in this list, must put calculated value into
                    //  a log stock valied field such as net cubic.
                    ls.NetCubicFoot = (float)calcValue;
                    returnLogs.Add(ls);
                } //  endif
            }     //  end foreach loop
            return(returnLogs);
        }         //  end LoadLogs
Esempio n. 2
0
        }         //  end WriteUnitGroup

        private void loadExportOutputList(LogStockDO justLog, string currSort, string currGrade, bool errFound)
        {
            //  EX2
            exportToOutput eto = new exportToOutput();

            eto.errorFound = errFound;
            eto.export1    = justLog.Tree.Stratum.Code;
            eto.export2    = justLog.Tree.CuttingUnit.Code;
            eto.export3    = justLog.Tree.Plot.PlotNumber.ToString();
            eto.export4    = justLog.Tree.TreeNumber.ToString();
            eto.export5    = justLog.LogNumber;
            eto.export6    = justLog.Tree.Species;
            eto.export7    = justLog.ExportGrade;
            eto.export8    = justLog.Grade;
            eto.export9    = currSort;
            eto.export10   = currGrade;
            eto.export11   = justLog.Length;
            eto.export12   = justLog.SeenDefect;
            eto.export13   = justLog.Length;;
            eto.export14   = justLog.SmallEndDiameter;
            eto.export15   = justLog.NetBoardFoot;
            eto.export16   = justLog.SeenDefect;
            exToOutput.Add(eto);
            return;
        }   //  end loadExportOutputList
        }   //  end buildPrintArray

        public List <string> buildPrintArray(LogStockDO lsdo, double totalEF)
        {
            //  builds line for log file report (L1)
            string fieldFormat1 = "{0,5:F1}";
            string fieldFormat3 = "{0,3:F0}";
            string fieldFormat4 = "{0,4:F0}";
            string fieldFormat5 = "{0,6:F1}";
            string fieldFormat6 = "{0,8:F3}";

            var logArray = new List <string>();

            logArray.Add("  ");
            logArray.Add(lsdo.Tree.Stratum.Code.PadLeft(2, ' '));
            logArray.Add(lsdo.Tree.CuttingUnit.Code.PadLeft(3, ' '));
            if (lsdo.Tree.Plot == null)
            {
                logArray.Add("    ");
            }
            else if (lsdo.Tree.Plot.PlotNumber == 0)
            {
                logArray.Add("    ");
            }
            else
            {
                logArray.Add(lsdo.Tree.Plot.PlotNumber.ToString().PadLeft(4, ' '));
            }
            logArray.Add(lsdo.Tree.TreeNumber.ToString().PadLeft(4, ' '));
            logArray.Add(lsdo.Tree.Species.PadRight(6, ' '));
            logArray.Add(lsdo.Tree.SampleGroup.PrimaryProduct.PadLeft(2, ' '));
            logArray.Add(lsdo.Tree.SampleGroup.UOM.PadLeft(2, ' '));
            logArray.Add(lsdo.LogNumber.ToString().PadLeft(4, ' '));
            logArray.Add(String.Format(fieldFormat1, lsdo.SmallEndDiameter).PadLeft(5, ' '));
            logArray.Add(String.Format(fieldFormat1, lsdo.LargeEndDiameter).PadLeft(5, ' '));
            logArray.Add(String.Format(fieldFormat1, lsdo.Length).PadLeft(5, ' '));
            if (lsdo.Grade == null || lsdo.Grade == "" || lsdo.Grade == " ")
            {
                logArray.Add("0");
            }
            else
            {
                logArray.Add(lsdo.Grade);
            }
            logArray.Add(String.Format(fieldFormat3, lsdo.SeenDefect).PadLeft(3, ' '));
            logArray.Add(String.Format(fieldFormat4, lsdo.PercentRecoverable).PadLeft(4, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.GrossBoardFoot).PadLeft(6, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.BoardFootRemoved).PadLeft(6, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.NetBoardFoot).PadLeft(6, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.GrossCubicFoot).PadLeft(6, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.CubicFootRemoved).PadLeft(6, ' '));
            logArray.Add(String.Format(fieldFormat5, lsdo.NetCubicFoot).PadLeft(6, ' '));
            logArray.Add(lsdo.DIBClass.ToString().PadLeft(2, ' '));
            logArray.Add(String.Format(fieldFormat6, totalEF).PadLeft(9, ' '));

            return(logArray);
        }   //  end buildPrintArray
        }   //  end buildPrintArray

        public List <string> buildPrintArray(LogStockDO lsdo)
        {
            //  builds line for fall, buck and scale report (A09)
            string fieldFormat2 = "{0,5:F0}";
            string fieldFormat3 = "{0,5:F1}";

            var logArray = new List <string>();

            logArray.Add(" ");
            logArray.Add(lsdo.Tree.Stratum.Code.PadLeft(2, ' '));
            logArray.Add(lsdo.Tree.CuttingUnit.Code.PadLeft(3, ' '));
            if (lsdo.Tree.Plot != null)
            {
                if (lsdo.Tree.Plot.PlotNumber == 0)
                {
                    logArray.Add("    ");
                }
                else
                {
                    logArray.Add(lsdo.Tree.Plot.PlotNumber.ToString().PadLeft(4, ' '));
                }
            }
            else
            {
                logArray.Add("    ");
            }
            logArray.Add(lsdo.Tree.TreeNumber.ToString().PadLeft(4, ' '));
            logArray.Add(lsdo.LogNumber.ToString().PadLeft(4, ' '));
            logArray.Add(String.Format(fieldFormat2, lsdo.SmallEndDiameter).PadLeft(5, ' '));
            logArray.Add(String.Format(fieldFormat2, lsdo.LargeEndDiameter).PadLeft(5, ' '));
            logArray.Add(lsdo.Length.ToString().PadLeft(4, ' '));
            if (lsdo.Grade == null || lsdo.Grade == "" || lsdo.Grade == " ")
            {
                logArray.Add("0");
            }
            else
            {
                logArray.Add(lsdo.Grade);
            }
            logArray.Add(lsdo.GrossBoardFoot.ToString().PadLeft(7, ' '));
            logArray.Add(String.Format(fieldFormat3, lsdo.GrossCubicFoot).PadLeft(5, ' '));
            logArray.Add(lsdo.NetBoardFoot.ToString().PadLeft(7, ' '));
            logArray.Add(String.Format(fieldFormat3, lsdo.NetCubicFoot).PadLeft(5, ' '));
            logArray.Add(lsdo.PercentRecoverable.ToString().PadLeft(3, ' '));
            logArray.Add(lsdo.SeenDefect.ToString().PadLeft(3, ' '));

            return(logArray);
        }   //  end buildPrintArray
        }   //  end noDataForGraph

        private List <LogStockDO> LoadLogs(List <LogStockDO> justSixteens, string currSP, List <StratumDO> sList)
        {
            List <LogStockDO> returnLogs = new List <LogStockDO>();
            List <LogStockDO> justDIBs   = bslyr.getLogDIBs();

            foreach (LogStockDO jd in justDIBs)
            {
                //  find all logs for DIB class
                List <LogStockDO> justLogs = justSixteens.FindAll(
                    delegate(LogStockDO l)
                {
                    return(l.DIBClass == jd.DIBClass);
                });
                //  expand and sum
                double calcValue = 0;
                foreach (LogStockDO jl in justLogs)
                {
                    // find acres
                    int nthRow = sList.FindIndex(
                        delegate(StratumDO s)
                    {
                        return(s.Code == jl.Tree.Stratum.Code);
                    });
                    double currAC = Utilities.ReturnCorrectAcres(jl.Tree.Stratum.Code, bslyr, (long)sList[nthRow].Stratum_CN);
                    calcValue += (float)jl.Tree.ExpansionFactor * currAC;
                }   //  end foreach loop
                //  load DIB class into report list
                if (calcValue > 0)
                {
                    LogStockDO ls = new LogStockDO();
                    ls.DIBClass = jd.DIBClass;
                    //  since Tree is not defined in this list, must put calculated value into
                    //  a log stock valied field such as net cubic.
                    ls.NetCubicFoot = (float)calcValue;
                    returnLogs.Add(ls);
                } //  endif
            }     //  end foreach loop
            return(returnLogs);
        }         //  end LoadLogs