Beispiel #1
0
        public void VerificarExistenciaContrato(ContratoSalesObject contratoSalesObject, ForceClient client)
        {
            var usuario = RecuperarVariablesToken();

            usuario.UserName = "******";
            var _context = new GestaoServicoContext(usuario);
            var result   = _context.Contratos.FirstOrDefault(x => x.NrAssetSalesForce == contratoSalesObject.ContractNumber);

            AdicionarLogGenerico("Inicio da persistencia do contrato de número: " + contratoSalesObject.ContractNumber);
            TratarContrato(result, contratoSalesObject, client, usuario);
        }
Beispiel #2
0
 private void TratarContrato(Contrato result, ContratoSalesObject contratoSalesObject, ForceClient client, IVariablesToken variables)
 {
     if (result == null)
     {
         var clienteSales = TodosClientes.FirstOrDefault(x => x.Id == contratoSalesObject.AccountId);
         if (clienteSales == null)
         {
             clienteSales = ObterClienteSalesForcePorIdSalesForce(client, contratoSalesObject.AccountId);
             TodosClientes.Add(clienteSales);
         }
         AdicionarLogGenerico("Busca do cliente: " + clienteSales.Name + " do contrato: " + contratoSalesObject.ContractNumber);
         contratoSalesObject.IdCliente = ObterClientePorIdSalesforce(clienteSales);
         if (contratoSalesObject.IdCliente == 0 && clienteSales.ParentId != null)
         {
             var clientePaiSales = TodosClientes.FirstOrDefault(x => x.Id == clienteSales.ParentId);
             if (clientePaiSales == null)
             {
                 clientePaiSales = ObterClienteSalesForcePorIdSalesForce(client, clienteSales.ParentId);
                 TodosClientes.Add(clienteSales);
             }
             AdicionarLogGenerico("Busca do cliente mãe: " + clientePaiSales.Name + " do cliente: " + clienteSales.Name);
             var idClientePai = ObterCliente(clientePaiSales);
         }
         contratoSalesObject.IdCliente = ObterCliente(clienteSales);
         result = Mapper.Map <Contrato>(contratoSalesObject);
     }
     else
     {
         if ((contratoSalesObject.EndDate.HasValue && result.DtFinalizacao != contratoSalesObject.EndDate.Value) || result.DescContrato != contratoSalesObject.N_mero_contrato_interno__c ||
             result.DescStatusSalesForce != contratoSalesObject.Status)
         {
             AdicionarLogGenerico("Atualizando campos do contrato número: " + contratoSalesObject.ContractNumber);
             result.DtFinalizacao        = contratoSalesObject.EndDate;
             result.DescStatusSalesForce = contratoSalesObject.Status;
             result.DescContrato         = contratoSalesObject.N_mero_contrato_interno__c;
         }
         else
         {
             return;
         }
     }
     PersisitirContrato(result, variables);
 }