/// <summary> /// Inicia uma nova instância da classe <see cref="ConverterCadastroAtualizacaoParaFuncionario"/>. /// </summary> /// <param name="cadastro">O DTO de cadastro, enviado para o endpoint.</param> /// <param name="atual">O funcionário atual (opcional), para que sejam aproveitados os valores, se necessário.</param> /// /// <param name="funcionarioFluxo">O fluxo responsavel pela.</param> public ConverterCadastroAtualizacaoParaFuncionario( Global.Negocios.IFuncionarioFluxo funcionarioFluxo, CadastroAtualizacaoDto cadastro, Global.Negocios.Entidades.Funcionario atual = null) { this.cadastro = cadastro; this.funcionario = new Lazy <Global.Negocios.Entidades.Funcionario>(() => { var destino = atual ?? funcionarioFluxo.CriarFuncionario(); this.ConverterDtoParaModelo(destino); return(destino); }); }
/// <summary> /// Inicia uma nova instância da classe <see cref="DetalheDto"/>. /// </summary> /// <param name="funcionario">A model de funcionario.</param> internal DetalheDto(Global.Negocios.Entidades.Funcionario funcionario) { this.Nome = funcionario.Nome; this.TipoFuncionario = new IdNomeDto { Id = funcionario.IdTipoFunc, Nome = TipoFuncDAO.Instance.GetDescricao((uint)funcionario.IdFunc), }; this.IdsSetores = funcionario.Setores.Select(f => f.IdSetor); this.Endereco = new EnderecoDto { Logradouro = funcionario.Endereco, Bairro = funcionario.Bairro, Cep = funcionario.Cep, Complemento = funcionario.Compl, Cidade = new CidadeDto { Nome = funcionario.Cidade, Uf = funcionario.Uf, }, }; this.Loja = new IdNomeDto { Id = funcionario.IdLoja, Nome = LojaDAO.Instance.GetNome((uint)funcionario.IdLoja), }; this.Contatos = new ContatosDto { TelefoneResidencial = funcionario.TelRes, TelefoneCelular = funcionario.TelCel, TelefoneContato = funcionario.TelCont, Email = funcionario.Email, Ramal = funcionario.Ramal, }; this.DocumentosEDadosPessoais = new DocumentosEDadosPessoaisDto { Rg = funcionario.Rg, Cpf = funcionario.Cpf, Funcao = funcionario.Funcao, EstadoCivil = funcionario.EstCivil, DataNascimento = funcionario.DataNasc, DataEntrada = funcionario.DataEnt, DataSaida = funcionario.DataSaida, Salario = funcionario.Salario, Gratificacao = funcionario.Gratificacao, NumeroCTPS = funcionario.NumCarteiraTrabalho, AuxilioAlimentacao = funcionario.AuxAlimentacao, NumeroPis = funcionario.NumPis, Registrado = funcionario.Registrado, }; this.Situacao = new IdNomeDto { Id = (int)funcionario.Situacao, Nome = Colosoft.Translator.Translate(funcionario.Situacao).ToString(), }; this.Acesso = new AcessoDto { Login = funcionario.Login, Senha = funcionario.Senha, }; this.IdsTiposPedidos = funcionario.TipoPedido.Split(',').Select(f => int.Parse(f)); this.NumeroDiasParaAtrasarPedidos = funcionario.NumDiasAtrasarPedido; this.NumeroPdv = funcionario.NumeroPdv; this.Permissoes = new PermisoesDto { UtilizarChat = funcionario.HabilitarChat, HabilitarControleUsuarios = funcionario.HabilitarControleUsuarios, EnviarEmailPedidoConfirmadoVendedor = funcionario.EnviarEmail, }; this.Observacao = funcionario.Obs; }