예제 #1
0
        private CachedEfficiencyItem Map(EfficiencyData item)
        {
            var employeeNumberId   = _codeMaps.EmployeeNumberCodeMap.GetOrAddIntCode(item.EmployeeNumber);
            var transactionTypeId  = _codeMaps.TransactionTypeCodeMap.GetOrAddCode(item.TransactionTypeCode);
            var employeeFullNameId = _codeMaps.PersonNameCodeMap.GetOrAddIntCode(item.EmployeeFullName);
            var employeeJobCodeId  = _codeMaps.JobCodeCodeMap.GetOrAddCode(item.EmployeeJobCode);
            var workCenterCodeId   = _codeMaps.WorkCenterCodeMap.GetOrAddIntCode(item.WorkCenterCode);
            var recordTypeCodeId   = _codeMaps.RecordTypeCodeMap.GetOrAddCode(item.RecordTypeCode);
            var supervisorId       = _codeMaps.PersonNameCodeMap.GetOrAddIntCode(item.Supervisor);
            var shiftCodeId        = _codeMaps.ShiftCodeMap.GetOrAddIntCode(item.ShiftCode);

            return(new CachedEfficiencyItem
            {
                HashKey = item.HashKey,
                ClockInEndTime = item.ClockInEndTime,
                ClockInStartTime = item.ClockInStartTime,
                EfficiencyId = item.EfficiencyId,
                EmployeeNumberId = employeeNumberId,
                OperationalDay = item.OperationalDay,
                TransactionTypeId = transactionTypeId,
                EmployeeFullNameId = employeeFullNameId,
                EmployeeJobCodeId = employeeJobCodeId,
                SecondsClockedInInTransactionalWorkCenter = item.SecondsClockedInInTransactionalWorkCenter,
                SecondsClockedIn = item.SecondsClockedIn,
                SecondsEarned = item.SecondsEarned,
                QuantityEarned = item.QuantityEarned,
                WorkCenterCodeId = workCenterCodeId,
                RecordTypeCodeId = recordTypeCodeId,
                IsClockedIn = item.IsClockedIn,
                LastTransactionDate = item.LastTransactionDate,
                SupervisorId = supervisorId,
                ShiftCodeId = shiftCodeId
            });
        }
예제 #2
0
        /// <summary>
        /// Guarda los datos seleccionados por el usuario
        /// </summary>
        /// <history>
        /// [ecanul] 28/04/2016 Created
        /// </history>
        private void SaveFilterValues()
        {
            #region SalesRooms
            if (pnlSalesRoom.IsVisible)
            {
                if (chkAllSalesRoom.IsChecked.Value)
                {
                    frmPrs._clsFilter.LstSalesRooms.Clear();
                    frmPrs._clsFilter.LstSalesRooms.Add("All");
                }
                else
                {
                    frmPrs._clsFilter.LstSalesRooms = dtgSalesRoom.SelectedItems.Cast <SalesRoomByUser>().Select(x => x.srID).ToList();
                }
            }

            #endregion

            #region programs
            if (pnlPrograms.IsVisible)
            {
                frmPrs._clsFilter.EnumProgram = (dtgPrograms.Items.Count == dtgPrograms.SelectedItems.Count || dtgPrograms.SelectedItems.Count == 0)
          ? EnumProgram.All : EnumToListHelper.GetList <EnumProgram>().SingleOrDefault(x => x.Value == ((Program)dtgPrograms.SelectedItem).pgID).Key;
            }
            #endregion

            #region segments
            if (pnlSegments.IsVisible)
            {
                frmPrs._clsFilter.LstSegments    = dtgSegments.SelectedItems.Cast <SegmentByAgency>().Select(c => c.seID).ToList();
                frmPrs._clsFilter.BlnAllSegments = dtgSegments.Items.Count == dtgSegments.SelectedItems.Count;
            }
            #endregion

            #region Concentrate
            if (pnlSalesRoomConcentrate.IsVisible)
            {
                frmPrs._clsFilter.LstGoals = _lstGoals.Where(g => g.IsCheck).ToList();
            }
            #endregion

            #region Multidate
            if (pnlSalesRoomMultiDateRange.Visibility == Visibility.Visible)
            {
                frmPrs._clsFilter.LstMultiDate = _lstMultiDate.Where(x => !string.IsNullOrWhiteSpace(x.SalesRoom)).OrderByDescending(x => x.IsMain).ToList();
            }
            #endregion

            #region Dates
            //Mandar los datos de fechas
            if (grdDates.IsVisible)
            {
                frmPrs._clsFilter.CboDateSelected = ((KeyValuePair <EnumPredefinedDate, string>)cmbDate.SelectedItem).Key;
                frmPrs._clsFilter.DtmStart        = Convert.ToDateTime(dtmStart.Value);
                frmPrs._clsFilter.DtmEnd          = Convert.ToDateTime(dtmEnd.Value);
            }
            #endregion

            #region Goal
            //si goal esta visible
            if (grdGoal.Visibility == Visibility.Visible)
            {
                frmPrs._clsFilter.Goal = Convert.ToDecimal(txtGoal.Text.Trim());
            }
            #endregion

            #region Checks
            //Region de checks
            frmPrs._clsFilter.BlnGroupedByTeams     = Convert.ToBoolean(chkGroupedByTeams.IsChecked);
            frmPrs._clsFilter.BlnIncludeAllSalesmen = Convert.ToBoolean(chkIncludeAllSalesmen.IsChecked);
            #endregion

            #region Salesman Filters
            //si es de salesman
            if (grdSalesman.Visibility == Visibility.Visible)
            {
                frmPrs._clsFilter.Salesman = (PersonnelShort)cmbSalesman.SelectedItem;
                //si tiene los roles visibles
                if (gpbRoles.IsVisible)
                {
                    frmPrs._clsFilter.LstEnumRole.Clear();
                    if (Convert.ToBoolean(chkPr.IsChecked) && Convert.ToBoolean(chkLiner.IsChecked) && Convert.ToBoolean(chkCloser.IsChecked) && Convert.ToBoolean(chkExit.IsChecked))
                    {
                        frmPrs._clsFilter.LstEnumRole.Add(EnumRole.All);
                    }
                    else
                    {
                        if (Convert.ToBoolean(chkPr.IsChecked))
                        {
                            frmPrs._clsFilter.LstEnumRole.Add(EnumRole.PR);
                        }
                        if (Convert.ToBoolean(chkLiner.IsChecked))
                        {
                            frmPrs._clsFilter.LstEnumRole.Add(EnumRole.Liner);
                        }
                        if (Convert.ToBoolean(chkCloser.IsChecked))
                        {
                            frmPrs._clsFilter.LstEnumRole.Add(EnumRole.Closer);
                        }
                        if (Convert.ToBoolean(chkExit.IsChecked))
                        {
                            frmPrs._clsFilter.LstEnumRole.Add(EnumRole.ExitCloser);
                        }
                    }
                }
            }
            #endregion

            #region EfficiencyWeekly
            if (pnlWeeks.IsVisible)
            {
                frmPrs._clsFilter.LstSalesRooms = dtgSalesRoom.SelectedItems.Cast <SalesRoomByUser>().Select(x => x.srID).ToList();
                var effDates = new EfficiencyData()
                {
                    efDateFrom = dtmStart.Value.Value,
                    efDateTo   = dtmEnd.Value.Value,
                    Include    = true
                };
                frmPrs._clsFilter.blnSaveEfficiency = Convert.ToBoolean(chkSaveEfficiency.IsChecked);
                frmPrs._clsFilter.lstEfficiency.Clear();
                frmPrs._clsFilter.lstEfficiency.Add(effDates);
                frmPrs._clsFilter.lstEfficiency.AddRange(_lstEfficiencyWeeks.Where(g => g.Include == true).ToList());
            }
            #endregion
        }