public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute ins_cartaoProprietario "); /// USER [ execute ] bool update_Proprietario = false; int titularidade = 1; prot.ExclusiveAccess(); if (prot.select_rows_cpf(input_cont_dp.get_st_cpf())) { if (!prot.fetch()) { PublishError(Erro.NovoCartao); return(false); } update_Proprietario = true; // confere se tem mais de um cartão nesta empresa T_Cartao tmp_cart = new T_Cartao(this); if (tmp_cart.select_rows_emp_prop(input_cont_dc.get_st_empresa().PadLeft(6, '0'), prot.get_identity())) { if (tmp_cart.RowCount() > 0) { prot.ReleaseExclusive(); PublishError("CPF já cadastrrado para outro cartão nesta empresa (" + input_cont_dc.get_st_empresa().PadLeft(6, '0') + ")"); return(false); } } } prot.set_st_cpf(input_cont_dp.get_st_cpf()); prot.set_st_nome(input_cont_dp.get_st_nome().ToUpper()); prot.set_st_endereco(input_cont_dp.get_st_endereco()); prot.set_st_numero(input_cont_dp.get_st_numero()); prot.set_st_complemento(input_cont_dp.get_st_complemento()); prot.set_st_bairro(input_cont_dp.get_st_bairro()); prot.set_st_cidade(input_cont_dp.get_st_cidade().ToUpper()); prot.set_st_UF(input_cont_dp.get_st_UF()); prot.set_st_cep(input_cont_dp.get_st_CEP()); prot.set_st_ddd(input_cont_dp.get_st_ddd()); prot.set_st_telefone(input_cont_dp.get_st_telefone()); prot.set_dt_nasc(input_cont_dp.get_dt_nasc()); prot.set_st_email(input_cont_dp.get_st_email()); prot.set_vr_renda(input_cont_dp.get_vr_renda()); prot.set_st_senhaEdu(input_cont_da.get_st_senha_resp()); if (update_Proprietario) { if (!prot.synchronize_T_Proprietario()) { PublishError(Erro.NovoCartao); return(false); } } else { if (!prot.create_T_Proprietario()) { PublishError(Erro.NovoCartao); return(false); } } prot.ReleaseExclusive(); T_InfoAdicionais add_info = new T_InfoAdicionais(this); add_info.set_st_codigo(Context.NOT_SET); add_info.set_st_empresaAfiliada(input_cont_da.get_st_empresa()); add_info.set_st_presenteado(input_cont_da.get_st_presenteado()); add_info.set_st_recado(input_cont_da.get_st_recado()); if (!add_info.create_T_InfoAdicionais()) { PublishError(Erro.NovoCartao); return(false); } if (input_cont_dc.get_tg_tipoCartao() == TipoCartao.presente) { cart.set_fk_dadosProprietario(prot.get_identity()); cart.set_fk_infoAdicionais(add_info.get_identity()); cart.set_tg_status(CartaoStatus.Habilitado); cart.set_vr_limiteTotal(input_cont_dc.get_vr_dispTotal()); cart.set_tg_tipoCartao(TipoCartao.presente); cart.set_st_senha(var_util.DESCript("9999".PadLeft(8, '*'), "12345678")); if (!cart.synchronize_T_Cartao()) { return(false); } } else { cart.Reset(); cart.set_st_empresa(input_cont_dc.get_st_empresa().PadLeft(6, '0')); cart.set_st_matricula(input_cont_dc.get_st_matricula().PadLeft(6, '0')); cart.set_st_titularidade(titularidade.ToString().PadLeft(2, '0')); cart.set_st_senha(input_cont_dc.get_st_senha()); cart.set_tg_tipoCartao(input_cont_dc.get_tg_tipoCartao()); cart.set_st_venctoCartao(input_cont_dc.get_st_vencimento()); cart.set_tg_status(CartaoStatus.Habilitado); cart.set_dt_utlPagto(GetDataBaseTime()); cart.set_nu_senhaErrada(Context.NONE); cart.set_dt_inclusao(GetDataBaseTime()); cart.set_dt_bloqueio(GetDataBaseTime()); cart.set_tg_motivoBloqueio(CartaoMotivoBloqueio.Expirado); cart.set_st_banco(input_cont_dc.get_st_banco()); cart.set_st_agencia(input_cont_dc.get_st_agencia()); cart.set_st_conta(input_cont_dc.get_st_conta()); cart.set_st_matriculaExtra(Context.FALSE); cart.set_st_celCartao(input_cont_dc.get_st_celCartao()); cart.set_fk_dadosProprietario(prot.get_identity()); cart.set_fk_infoAdicionais(add_info.get_identity()); cart.set_nu_viaCartao("1"); cart.set_vr_limiteTotal(input_cont_dc.get_vr_limiteTotal()); cart.set_vr_limiteMensal(input_cont_dc.get_vr_limiteMensal()); cart.set_vr_limiteRotativo(input_cont_dc.get_vr_limiteRotativo()); cart.set_vr_extraCota(input_cont_dc.get_vr_extraCota()); cart.set_st_aluno(input_cont_da.get_st_nome_aluno()); cart.set_vr_educacional("0"); cart.set_vr_disp_educacional("0"); cart.set_vr_edu_diario("0"); if (input_cont_dc.get_tg_tipoCartao() == TipoCartao.presente) { // necessita de confirmação de produtos cart.set_tg_status(CartaoStatus.Bloqueado); } if (!cart.create_T_Cartao()) { PublishError(Erro.NovoCartao); return(false); } } LINK_ProprietarioCartao prop_cart = new LINK_ProprietarioCartao(this); prop_cart.set_fk_cartao(cart.get_identity()); prop_cart.set_fk_proprietario(prot.get_identity()); if (!prop_cart.create_LINK_ProprietarioCartao()) { PublishError(Erro.NovoCartao); return(false); } for (int t = 0; t < var_util.indexCSV(input_st_csv_deps, '|'); ++t) { T_Cartao cart_dep = new T_Cartao(this); cart_dep.copy(ref cart); cart_dep.set_st_titularidade((++titularidade).ToString().PadLeft(2, '0')); if (!cart_dep.create_T_Cartao()) { PublishError(Erro.NovoCartao); return(false); } T_Dependente dep = new T_Dependente(this); dep.set_nu_titularidade(cart_dep.get_st_titularidade()); dep.set_st_nome(var_util.getCSV(t)); dep.set_fk_proprietario(prot.get_identity()); if (!dep.create_T_Dependente()) { PublishError(Erro.NovoCartao); return(false); } } PublishNote("Cartão criado com sucesso"); /// USER [ execute ] END Registry("execute done ins_cartaoProprietario "); return(true); }
public override bool execute( ) { if (base.execute() == false) { return(false); } Registry("execute load_edu "); /// USER [ execute ] StreamReader reader = new StreamReader(archive); try { while (!reader.EndOfStream) { string line = reader.ReadLine(); Trace(line); if (line.Length < 311) { Trace("Registro Rejeitado"); continue; } else { Trace("Registro Aceito"); } int pos = 0; string cpf_resp = line.Substring(pos, 11); pos += 11; string nome_resp = line.Substring(pos, 50); pos += 50; string nome_aluno = line.Substring(pos, 50); pos += 50; string end = line.Substring(pos, 40); pos += 40; string bairro = line.Substring(pos, 20); pos += 20; string cep = line.Substring(pos, 8); pos += 8; string cidade = line.Substring(pos, 20); pos += 20; string tel = line.Substring(pos, 10); pos += 10; string email_resp = line.Substring(pos, 50); pos += 50; string dt_nasc_aluno = line.Substring(pos, 8); pos += 8; string sexo = line.Substring(pos, 1); pos += 1; string grau = line.Substring(pos, 1); pos += 1; string serie_semestre = line.Substring(pos, 2); pos += 2; string turma = line.Substring(pos, 10); pos += 10; string curso = line.Substring(pos, 30); pos += 30; if (cpf_resp.Trim().Length < 4) { Trace("CPF inválido"); continue; } if (nome_resp.Trim().Length == 0) { Trace("Nome Resp. inválido"); continue; } if (nome_aluno.Trim().Length == 0) { Trace("Nome Resp. inválido"); continue; } string senha = cpf_resp.Substring(0, 4); bool createProt = false; T_Proprietario prot = new T_Proprietario(this); if (!prot.select_rows_cpf(cpf_resp)) { createProt = true; } else { prot.fetch(); } prot.set_st_nome(nome_resp); prot.set_st_cpf(cpf_resp); prot.set_st_endereco(end); prot.set_st_bairro(bairro); prot.set_st_cep(cep); prot.set_st_cidade(cidade); prot.set_st_ddd(tel.Substring(0, 2)); prot.set_st_telefone(tel.Substring(2, tel.Length - 2)); prot.set_st_email(email_resp); if (createProt) { prot.set_st_senhaEdu(var_util.DESCript(senha.PadLeft(8, '*'), "12345678")); prot.create_T_Proprietario(); } else { prot.synchronize_T_Proprietario(); } T_InfoAdicionais info = new T_InfoAdicionais(this); T_Cartao cart = new T_Cartao(this); if (!createProt) { cart.select_rows_edu_nome_prop(nome_aluno, prot.get_identity(), TipoCartao.educacional); cart.fetch(); info.selectIdentity(cart.get_fk_infoAdicionais()); } int year = Convert.ToInt32(dt_nasc_aluno.Substring(4, 4)); int month = Convert.ToInt32(dt_nasc_aluno.Substring(2, 2)); int day = Convert.ToInt32(dt_nasc_aluno.Substring(0, 2)); dt_nasc_aluno = GetDataBaseTime(new DateTime(year, month, day)); info.set_dt_edu_nasc(dt_nasc_aluno); info.set_st_edu_sexo(sexo); info.set_st_edu_grau(grau); info.set_st_edu_serie_semestre(serie_semestre); info.set_st_edu_turma(turma); info.set_st_edu_curso(curso); info.set_dt_edu_atualizacao(dt_atual); if (!createProt) { info.synchronize_T_InfoAdicionais(); } else { info.create_T_InfoAdicionais(); cart.Reset(); T_Cartao cart_mat = new T_Cartao(this); if (!cart_mat.select_rows_empresa("003522")) { cart.set_st_matricula("000001"); } else { cart.set_st_matricula((cart_mat.GetMax(TB_T_CARTAO.st_matricula) + 1).ToString().PadLeft(6, '0')); } cart.set_fk_dadosProprietario(prot.get_identity()); cart.set_fk_infoAdicionais(info.get_identity()); cart.set_st_empresa("003522"); cart.set_st_titularidade("01"); cart.set_st_senha(Context.EMPTY); cart.set_st_aluno(nome_aluno); cart.set_tg_tipoCartao(TipoCartao.educacional); cart.set_tg_status(CartaoStatus.Habilitado); cart.set_dt_inclusao(GetDataBaseTime()); cart.set_tg_emitido(StatusExpedicao.NaoExpedido); cart.set_vr_edu_disp_virtual(1000000); cart.create_T_Cartao(); LINK_ProprietarioCartao prop_cart = new LINK_ProprietarioCartao(this); prop_cart.set_fk_cartao(cart.get_identity()); prop_cart.set_fk_proprietario(prot.get_identity()); prop_cart.create_LINK_ProprietarioCartao(); } } } catch (System.Exception ex) { Registry(ex.ToString()); reader.Close(); return(false); } reader.Close(); /// USER [ execute ] END Registry("execute done load_edu "); return(true); }