Esempio n. 1
0
        /// <summary>
        /// Котельная,конв.весы
        /// </summary>
        /// <param name="beltID"></param>
        /// <returns></returns>
        public Mine_konv GetBeltScaleModel(int beltID)
        {
            var belt  = _cdbService.FindEquipmentById <BeltScale>(beltID);
            var model = new Mine_konv(belt.LocationID);

            try
            {
                model.BeltID   = beltID;
                model.KonvName = GetEquipNameOnCurrentLanguate(belt);
                model.MineName = GetLocationNameOnCurrentLanguate(belt.LocationID);

                model.BeltTransfers = _cdbService.GetTransfers <BeltTransfer>(beltID, fromDate, toDate);

                model.ProductionPerTimeInterval = model.BeltTransfers.Sum(t => t.LotQuantity).GetValueOrDefault();

                var fromShiftDate = _cdbService.GetStartShiftTime(belt.LocationID);
                var toShiftDate   = _cdbService.GetEndShiftTime(belt.LocationID, fromShiftDate);
                var shiftransfers = _cdbService.GetTransfers <BeltTransfer>(beltID, fromShiftDate, toShiftDate);

                model.ProductionPerShift = shiftransfers.Sum(t => t.LotQuantity).GetValueOrDefault();

                model.HasManualValues = model
                                        .BeltTransfers
                                        .Any(v => v.OperatorName != ProjectConstants.SystemPlarformOperatorName)
                                        ||
                                        shiftransfers
                                        .Any(v => v.OperatorName != ProjectConstants.SystemPlarformOperatorName);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }
            return(model);
        }
        public Mine_skip GetSkipModel(int skipID)
        {
            var skip = _cdbService.FindEquipmentById <Skip>(skipID);

            if (skip == null)
            {
                return(new Mine_skip("Unknown"));
            }

            var model = new Mine_skip(skip.LocationID);

            model.SkipID   = skipID;
            model.SkipName = GetEquipNameOnCurrentLanguate(skip);
            model.MineName = GetLocationNameOnCurrentLanguate(skip.LocationID);

            model.SkipTransfers             = _cdbService.GetTransfers <SkipTransfer>(skipID, fromDate, toDate).AsEnumerable();
            model.TotalSkipsPerTimeInterval = model.SkipTransfers.Sum(s => int.Parse(s.LiftingID));
            model.TotalTonnsPerTimeInterval = model.SkipTransfers.Select(t => t.SkipWeight * int.Parse(t.LiftingID)).Sum();
            model.LastSkipLiftingTime       = model.SkipTransfers.Any() ? model.SkipTransfers.First().TransferTimeStamp : new DateTime?();

            var fromShiftDate      = _cdbService.GetStartShiftTime(skip.LocationID);
            var toShiftDate        = _cdbService.GetEndShiftTime(skip.LocationID, fromShiftDate);
            var shiftskiptransfers = _cdbService.GetTransfers <SkipTransfer>(skipID, fromShiftDate, toShiftDate).Select(t => new { LiftingID    = t.LiftingID,
                                                                                                                                   SkipWeight   = t.SkipWeight,
                                                                                                                                   OperatorName = t.OperatorName })
                                     .AsEnumerable();

            model.TotalSkipsPerThisShift = shiftskiptransfers.Sum(s => int.Parse(s.LiftingID));
            model.TotalTonnsPerThisShift = shiftskiptransfers.Select(t => t.SkipWeight * int.Parse(t.LiftingID)).Sum();

            model.HasManualValues = model
                                    .SkipTransfers
                                    .Where(v => v.OperatorName != ProjectConstants.SystemPlarformOperatorName)
                                    .Any()
                                    ||
                                    shiftskiptransfers
                                    .Where(v => v.OperatorName != ProjectConstants.SystemPlarformOperatorName)
                                    .Any();
            return(model);
        }