Esempio n. 1
0
        private List <MeasurementPointReading> GetReadingsForMeasurementPoint(COMPART_MEASUREMENT_POINT measurementPoint, TRACK_INSPECTION_DETAIL inspectionDetail, string uom)
        {
            var readings         = inspectionDetail.MeaseurementPointRecors.Where(r => r.CompartMeasurePointId == measurementPoint.Id).ToList();
            var possibleReadings = measurementPoint.DefaultNumberOfMeasurements;
            List <MeasurementPointReading> readingList = new List <MeasurementPointReading>();

            for (int i = 0; i < possibleReadings; i++)
            {
                var record = new MeasurementPointReading()
                {
                    Id             = i + 1,
                    Measurement    = Decimal.Round(-1, 2),
                    ToolId         = measurementPoint.DefaultToolId != null ? (int)measurementPoint.DefaultToolId : 0,
                    WornPercentage = Decimal.Round(0, 2)
                };

                var recordDal = readings.Where(r => r.MeasureNumber == i + 1).FirstOrDefault();
                if (recordDal != null)
                {
                    //If tool is KPO, YES/NO, or Drive Lugs dont convert to inch because the front end wont be able to convert it to the answer
                    record.Measurement    = Decimal.Round((uom == "mm" || recordDal.ToolId == 5 || recordDal.ToolId == 6 || recordDal.ToolId == 7) ? recordDal.Reading : recordDal.Reading.MilimeterToInch(), 2);
                    record.ToolId         = recordDal.ToolId;
                    record.WornPercentage = Decimal.Round(recordDal.Worn, 2);
                }
                readingList.Add(record);
            }

            return(readingList);
        }
Esempio n. 2
0
        public int SaveInspectionReading(
            int inspection_detail_auto, 
            int MeasurementPointId, 
            String ToolCode,
            String Notes,
            MeasurementPointReading reading, 
            int countReading)
        {
            ////////////////////////////////////
            // MEASUREMENT_POINT_RECORD
            DAL.MEASUREMENT_POINT_RECORD record = new DAL.MEASUREMENT_POINT_RECORD();

            // FK ID
            record.InspectionDetailId = inspection_detail_auto;

            // FK ID
            record.CompartMeasurePointId = MeasurementPointId;

            // InboardOutboard
            record.InboardOutborad = 0;

            // ToolId
            TrackTool tool = new TrackTool();
            int Id = -1;
            if (ToolCode != null)
                Id = tool.GetIdByToolCode(ToolCode);
            record.ToolId = Id;

            // Reading
            record.Reading = System.Convert.ToDecimal(reading.reading);

            // MeasureNumber
            record.MeasureNumber = reading.measureNo;

            // Worn
            BLL.Core.Domain.MiningShovelDomain.MeasurementPoint pointRecord = new MiningShovelDomain.MeasurementPoint(_context, MeasurementPointId);
            decimal worn = pointRecord.CalcWornPercentage(
                record.Reading.ConvertMMToInch(),
                record.ToolId,
                _Impact,
                MeasurementPointId
            );
            record.Worn = worn;

            // Eval code
            char charEval = record.Worn.toEvalChar();
            record.EvalCode = charEval.ToString();

            // Notes
            if (countReading == 0)
                record.Notes = Notes;

            // INSERT
            _MEASUREMENT_POINT_RECORD.Add(record);
            _context.SaveChanges();

            return record.Id;
        }