예제 #1
0
            public override bool Equals(object obj)
            {
                if (!(obj is ChaveRpt))
                {
                    return(false);
                }

                ChaveRpt comp = obj as ChaveRpt;

                return(comp.Titulo == Titulo && comp.TituloGrupo == TituloGrupo && comp.NumSeqTurno == NumSeqTurno);
            }
예제 #2
0
        public IList <ProducaoFornoResumo> GetForRpt(int setor, DateTime dataIni, DateTime dataFim, int idTurno)
        {
            var retorno = new List <ProducaoFornoResumo>(objPersistence.LoadData(Sql(setor, dataIni, dataFim, true, idTurno, true), GetParams(dataIni.ToShortDateString(), dataFim.ToShortDateString())).ToList());
            var total   = new List <ProducaoFornoResumo>();

            if (retorno.Count > 0)
            {
                Dictionary <ChaveRpt, int> posicoes = new Dictionary <ChaveRpt, int>();
                for (int i = 0; i < retorno.Count; i++)
                {
                    ChaveRpt chave = new ChaveRpt
                    {
                        NumSeqTurno = retorno[i].NumSeqTurno,
                        Titulo      = retorno[i].Titulo,
                        TituloGrupo = retorno[i].TituloGrupo
                    };

                    if (!posicoes.ContainsKey(chave))
                    {
                        ProducaoFornoResumo novo = new ProducaoFornoResumo();
                        novo.Titulo      = retorno[i].Titulo;
                        novo.TituloGrupo = retorno[i].TituloGrupo;
                        novo.Turno       = retorno[i].Turno;
                        novo.NumSeqTurno = retorno[i].NumSeqTurno;

                        total.Add(novo);
                        posicoes.Add(chave, total.Count - 1);
                    }

                    int index = posicoes[chave];
                    total[index].TotM2Turno1 += retorno[i].TotM2Turno1;
                    total[index].TotM2Turno2 += retorno[i].TotM2Turno2;
                    total[index].TotM2Turno3 += retorno[i].TotM2Turno3;
                    total[index].TotM2Turno4 += retorno[i].TotM2Turno4;
                    total[index].TotM2Turno5 += retorno[i].TotM2Turno5;
                }
            }

            retorno.AddRange(total.ToArray());
            return(retorno);
        }