Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Clique do botão em
- sigPharmaFlexMinimal/src/financeiroCompreCerto/frmContaBancariaRemessa
- ```
- <mx:VBox horizontalAlign="center" width="100%" id="boxResultCount">
- <mx:Label fontSize="12" width="100%" text="{'Foram encontradas ' + qtdContasRemessa + ' contas para gerar a remessa.'}" textAlign="center" />
- <mx:Button label="Gerar Remessa" id="btnGeraRemessa" click="validaDadosBoletos(dataGrid.selectedItem.CODIGOCol, DATE_INICIAL, DATE_FINAL)" icon="@Embed('icons/financeiroCompreCerto/grid/gerar_arquivo.png')" height="32" width="145" enabled="{qtdContasRemessa > 0}"/>
- </mx:VBox>
- ```
- então vamos para o método validaDadosBoleto em sigPharmaFlexMinimal/src/financeiroCompreCerto/frmContaBancariaRemessa
- ```
- private function validaDadosBoletos(codContaBancaria:int, dateSelectIni:Date, dateSelectFin:Date):void {
- try {
- DATE_FORMATTER.formatString = "YYYY-MM-DD";
- btnGeraRemessa.enabled = false;
- var filter:String = FILTER_CONTAS;
- filter += (" AND contaBancariaEmpresarial.codigo = " + codContaBancaria);
- filter += " AND dtEmissao >= '" + DATE_FORMATTER.format( dateSelectIni )+"'";
- filter += " AND dtEmissao <= '" + DATE_FORMATTER.format( dateSelectFin )+"'";
- var absOp:AbstractOperation = sigPharmaFlex.updateEmpresaSession(); // Obrigatório em cada chamada de Remote
- absOp.addEventListener(ResultEvent.RESULT, function(e:ResultEvent):void { // Obrigatório em cada chamada de Remote
- var parameters:* = {
- "orderField": "codigo",
- "orderDirection": "ASC",
- "filter": filter
- }
- TASCAlertBox.showAlertBox("Lendo registros...");
- gatewayRemoteContas.validaBoleto(parameters);
- }); // Obrigatório em cada chamada de Remote
- absOp.send(sigPharmaFlex.empresaUsuaria); // Obrigatório em cada chamada de Remote
- } catch(error:Error) {
- Alert.show("Houve um problema ao montar o boleto da conta selecionada.\nPor favor, tente novamente.\n\n" + error.message);
- }
- }
- ```
- Depois vamos para o JAVA, no remote de contas => sigPharmaJava/WEB-INF/src/br/com/sigPharma/remote/financeiroCompreCerto => gatewayRemoteContas.validaBoleto(parameters);
- @SuppressWarnings("static-access")
- public ArrayList<Map<String, Object>> validaBoleto(Object parameters) {
- ArrayList<Map<String, Object>> arrReturn = new ArrayList<Map<String,Object>>();
- Map<String, Object> hm = new HashMap<String, Object>();
- Map<String, Object> returnBoleto = new HashMap<String, Object>();
- BoletoDireto boletoDireto;
- ContaBancariaEmpresarial contaBancaria = new ContaBancariaEmpresarial();
- EmpresaDadosGerais dadosRede;
- try {
- this.listContas = findAllObject(parameters);
- if (this.listContas.size() <= 0) {
- throw new Exception("Não foram encontradas contas para gerar boletos.");
- }
- if (!verificaContaBancariaContas(this.listContas)) {
- throw new Exception("As contas devem possuir uma mesma conta bancária vinculada a todos os registros selecionados.");
- }
- // busca dados da rede
- dadosRede = getDadosEmpresa();
- this.contas = this.listContas.get(0);
- contaBancaria = contas.getContaBancariaEmpresarial();
- if (contaBancaria.getGeraBoleto() == null || !contaBancaria.getGeraBoleto()) {
- throw new Exception("BOLETO NÃO GERADO PARA A CONTA: " + contas.getCodigo() + " - " +
- "Conta Bancária " + contaBancaria.getDescricao() + " não permite gerar boleto.");
- }
- boletoDireto = new BoletoDireto();
- System.out.println("=====================================================");
- System.out.println("=================DADOS PARA BOLETO===================");
- System.out.println("=====================================================");
- System.out.println("DADOS DA REDE");
- System.out.println(dadosRede.getRazaoSocial());
- System.out.println(dadosRede.getEndereco());
- System.out.println("=====================================================");
- System.out.println("CONTA BANCÁRIA");
- System.out.println(contaBancaria.toString());
- System.out.println("=====================================================");
- System.out.println("LISTA DE CONTAS " + this.listContas.size());
- System.out.println(this.listContas);
- System.out.println("=====================================================");
- System.out.println(this.contas);
- System.out.println("=====================================================");
- returnBoleto = boletoDireto.validaDadosBoleto(dadosRede, contaBancaria, this.listContas);
- System.out.println("RETORNO DO BOLETO DIRETO");
- System.out.println(returnBoleto);
- System.out.println("=====================================================");
- System.out.println("===================FIM DO BOLETO=====================");
- System.out.println("=====================================================");
- if (returnBoleto.get( BoletoDireto.RETURN_STATUS ).equals( BoletoDireto.STATUS_ERROR )) {
- throw new Exception( returnBoleto.get( BoletoDireto.RETURN_MESSAGE ).toString() );
- }
- hm = new HashMap<String, Object>();
- hm.put("DETAILS", this.STATUS_OK);
- arrReturn.add(0, hm);
- } catch (Exception e) {
- closeFactory(this.daoFactory);
- ExceptionCollector.listDetails(e, this);
- hm = new HashMap<String, Object>();
- hm.put("ERROR", e.getMessage());
- arrReturn.add(0, hm);
- }
- return arrReturn;
- }
- => do validaBoleto ele vai para outro método que é onde irá listar as contas que irão compor o arquivo de remessa
- this.listContas = findAllObject(parameters);
- private List<Contas> findAllObject(Object parameters) {
- List<Contas> listReturn = new ArrayList<Contas>();
- Map<String, Object> arg = new HashMap<String, Object>();
- try {
- arg = (Map<String, Object>) parameters;
- validaParameters(parameters);
- String orderField = getParameterStr(arg.get(IParameters.ORDER_FIELD));
- String orderDir = getParameterStr(arg.get(IParameters.ORDER_DIR));
- String filter = getParameterStr(arg.get(IParameters.FILTER));
- int pageNum = getParameterInt(arg.get(IParameters.PAGE_NUM));
- int pageSize = getParameterInt(arg.get(IParameters.PAGE_SIZE));
- boolean preencheClasses = true;
- if (arg.containsKey("preencheClasses")) {
- preencheClasses = Boolean.parseBoolean( getParameterStr(arg.get("preencheClasses")) );
- }
- // busca conta para gerar o boleto
- listReturn = getListContas(filter, orderField, orderDir, pageNum, pageSize, preencheClasses);
- /*if (listReturn == null || listReturn.size() < 1) {
- throw new Exception("NÃO FOI ENCONTRADO NENHUMA CONTA NOS PARAMETROS: " + new Gson().toJson(arg));
- }*/
- //throw new Exception("Carlos : " + new Gson().toJson(listReturn));
- } catch (Exception e) {
- ExceptionCollector.listDetails(e, this);
- }
- return listReturn;
- }
- Dentro deste findAllObject de contas, ele vai passar os parametros que foram especificados la na tela,
- para chamar um método chamado getListContas, se não der Exception então ele retornará todas as contas dentro
- dos parametros que ainda não foram incluídas em algum arquivo de remessa
Add Comment
Please, Sign In to add comment