public void Criar(PotencialdoKAporFamilia mPotencialdoKAporFamilia, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado, Guid representanteId, int numTrimestre)
        {
            PotencialdoKAporSubfamilia mPotencialdoKAporSubfamilia = null;

            var lstOrcamentoporSegSubFamilia = (from x in lstOrcamentoDetalhado
                                                group x by string.Format("{0}/{1}/{2}", x.Segmento.Id, x.Familia.Id, x.SubFamilia.Id));

            foreach (var OrcaSegSubFamilia in lstOrcamentoporSegSubFamilia)
            {
                mPotencialdoKAporFamilia = RepositoryService.PotencialdoKAporFamilia.Retrieve(mPotencialdoKAporFamilia.ID.Value);
                PotencialdoKAporSubfamilia tempSubFamilia = RepositoryService.PotencialdoKAporSubfamilia.Obterpor(representanteId, OrcaSegSubFamilia.First().Familia.Id, mPotencialdoKAporFamilia.ID.Value, OrcaSegSubFamilia.First().Segmento.Id, OrcaSegSubFamilia.First().SubFamilia.Id, mPotencialdoKAporFamilia.Trimestre.HasValue ? mPotencialdoKAporFamilia.Trimestre.Value : int.MinValue);
                if (tempSubFamilia == null)
                {
                    mPotencialdoKAporSubfamilia    = new PotencialdoKAporSubfamilia(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                    mPotencialdoKAporSubfamilia.ID = Guid.NewGuid();
                    mPotencialdoKAporSubfamilia.UnidadedeNegocio = mPotencialdoKAporFamilia.UnidadedeNegocio;
                    mPotencialdoKAporSubfamilia.Ano                     = mPotencialdoKAporFamilia.Ano;
                    mPotencialdoKAporSubfamilia.Trimestre               = numTrimestre;
                    mPotencialdoKAporSubfamilia.Segmento                = new Lookup(OrcaSegSubFamilia.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>());
                    mPotencialdoKAporSubfamilia.FamiliadeProduto        = new Lookup(OrcaSegSubFamilia.First().Familia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.FamiliaProduto>());
                    mPotencialdoKAporSubfamilia.SubfamiliadeProduto     = new Lookup(OrcaSegSubFamilia.First().SubFamilia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.SubfamiliaProduto>());
                    mPotencialdoKAporSubfamilia.PotencialdoKAporFamilia = new Lookup(mPotencialdoKAporFamilia.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.PotencialdoKAporFamilia>());
                    mPotencialdoKAporSubfamilia.Nome                    = (mPotencialdoKAporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Length > 99 ? (mPotencialdoKAporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Substring(1, 99) : (mPotencialdoKAporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name);
                    mPotencialdoKAporSubfamilia.KAouRepresentante       = new Lookup(representanteId, SDKore.Crm.Util.Utility.GetEntityName <Model.Contato>());
                    RepositoryService.PotencialdoKAporSubfamilia.Create(mPotencialdoKAporSubfamilia);
                }

                if (tempSubFamilia != null)
                {
                    ServicePotencialdoKAporProduto.Criar(tempSubFamilia, OrcaSegSubFamilia.ToList(), representanteId, numTrimestre);
                }
                else
                {
                    ServicePotencialdoKAporProduto.Criar(mPotencialdoKAporSubfamilia, OrcaSegSubFamilia.ToList(), representanteId, numTrimestre);
                }
            }
        }
Beispiel #2
0
        public void Criar(PotencialdoSupervisorporFamilia mPotencialdoSupervisorporFamilia, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado)
        {
            PotencialdoSupervisorporSubfamilia mPotencialdoSupervisorporSubfamilia;
            var lstOrcamentoporSegSubFamilia = (from x in lstOrcamentoDetalhado
                                                group x by string.Format("{0}/{1}/{2}", x.Segmento.Id, x.Familia.Id, x.SubFamilia.Id));

            foreach (var OrcaSegSubFamilia in lstOrcamentoporSegSubFamilia)
            {
                mPotencialdoSupervisorporSubfamilia = RepositoryService.PotencialdoSupervisorporSubfamilia.Obterpor(OrcaSegSubFamilia.First().Canal.Id, OrcaSegSubFamilia.First().Familia.Id, mPotencialdoSupervisorporFamilia.ID.Value, OrcaSegSubFamilia.First().Segmento.Id, OrcaSegSubFamilia.First().SubFamilia.Id, mPotencialdoSupervisorporFamilia.Trimestre.Value);
                if (mPotencialdoSupervisorporSubfamilia == null)
                {
                    mPotencialdoSupervisorporSubfamilia    = new PotencialdoSupervisorporSubfamilia(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                    mPotencialdoSupervisorporSubfamilia.ID = Guid.NewGuid();
                    mPotencialdoSupervisorporSubfamilia.UnidadedeNegocio = mPotencialdoSupervisorporFamilia.UnidadedeNegocio;
                    mPotencialdoSupervisorporSubfamilia.Ano                 = mPotencialdoSupervisorporFamilia.Ano;
                    mPotencialdoSupervisorporSubfamilia.Trimestre           = mPotencialdoSupervisorporFamilia.Trimestre;
                    mPotencialdoSupervisorporSubfamilia.Segmento            = new Lookup(OrcaSegSubFamilia.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>());
                    mPotencialdoSupervisorporSubfamilia.FamiliadoProduto    = new Lookup(OrcaSegSubFamilia.First().Familia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.FamiliaProduto>());
                    mPotencialdoSupervisorporSubfamilia.SubfamiliadeProduto = new Lookup(OrcaSegSubFamilia.First().SubFamilia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.SubfamiliaProduto>());
                    mPotencialdoSupervisorporSubfamilia.PotencialdoSupervisorporSubfamiliaID = new Lookup(mPotencialdoSupervisorporFamilia.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.PotencialdoSupervisorporFamilia>());
                    mPotencialdoSupervisorporSubfamilia.Nome       = (mPotencialdoSupervisorporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Length > 99 ? (mPotencialdoSupervisorporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Substring(1, 99) : (mPotencialdoSupervisorporFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name);
                    mPotencialdoSupervisorporSubfamilia.Supervisor = new Lookup(OrcaSegSubFamilia.First().Canal.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Usuario>());
                    RepositoryService.PotencialdoSupervisorporSubfamilia.Create(mPotencialdoSupervisorporSubfamilia);
                }
                ServicePotencialdoSupervisorporProduto.Criar(mPotencialdoSupervisorporSubfamilia, OrcaSegSubFamilia.ToList());
            }
        }
Beispiel #3
0
        public void Criar(Guid orcamentounidadeId, OrcamentodaUnidadeporFamilia mOrcamentodaUnidadeporSegFamilia, List <Model.OrcamentoDetalhado> lstOrcamentoDetalhado, Guid familiaId)
        {
            var lstOrcamentoporSegSubFamilia = (from x in lstOrcamentoDetalhado
                                                group x by string.Format("{0}/{1}/{2}", x.Segmento.Id, x.Familia.Id, x.SubFamilia.Id));

            foreach (var OrcaSegSubFamilia in lstOrcamentoporSegSubFamilia)
            {
                OrcamentodaUnidadeporSubFamilia mOrcamentodaUnidadeporSubFamilia;
                mOrcamentodaUnidadeporSubFamilia = RepositoryService.OrcamentodaUnidadeporSubFamilia.ObterOrcamentoSubFamilia(OrcaSegSubFamilia.First().SubFamilia.Id, mOrcamentodaUnidadeporSegFamilia.ID.Value);
                if (mOrcamentodaUnidadeporSubFamilia == null)
                {
                    mOrcamentodaUnidadeporSubFamilia    = new OrcamentodaUnidadeporSubFamilia(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline, RepositoryService.Provider);
                    mOrcamentodaUnidadeporSubFamilia.ID = Guid.NewGuid();
                    mOrcamentodaUnidadeporSubFamilia.UnidadedeNegocio = mOrcamentodaUnidadeporSegFamilia.UnidadedeNegocio;
                    mOrcamentodaUnidadeporSubFamilia.Ano                 = mOrcamentodaUnidadeporSegFamilia.Ano;
                    mOrcamentodaUnidadeporSubFamilia.Trimestre           = mOrcamentodaUnidadeporSegFamilia.Trimestre;
                    mOrcamentodaUnidadeporSubFamilia.Segmento            = new Lookup(OrcaSegSubFamilia.First().Segmento.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.Segmento>());
                    mOrcamentodaUnidadeporSubFamilia.FamiliadeProduto    = new Lookup(OrcaSegSubFamilia.First().Familia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.FamiliaProduto>());
                    mOrcamentodaUnidadeporSubFamilia.SubFamilia          = new Lookup(OrcaSegSubFamilia.First().SubFamilia.Id, SDKore.Crm.Util.Utility.GetEntityName <Model.SubfamiliaProduto>());
                    mOrcamentodaUnidadeporSubFamilia.OrcamentoporFamilia = new Lookup(mOrcamentodaUnidadeporSegFamilia.ID.Value, SDKore.Crm.Util.Utility.GetEntityName <Model.OrcamentodaUnidadeporFamilia>());
                    mOrcamentodaUnidadeporSubFamilia.Nome                = (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Length > 99 ? (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name).Substring(1, 99) : (mOrcamentodaUnidadeporSegFamilia.Nome + " - " + OrcaSegSubFamilia.First().SubFamilia.Name);

                    RepositoryService.OrcamentodaUnidadeporSubFamilia.Create(mOrcamentodaUnidadeporSubFamilia);
                }
                ServiceOrcamentodaUnidadeporProduto.Criar(orcamentounidadeId, mOrcamentodaUnidadeporSubFamilia, OrcaSegSubFamilia.ToList(), OrcaSegSubFamilia.First().SubFamilia.Id, mOrcamentodaUnidadeporSegFamilia.OrcamentoporSegmento.Id);
            }
        }