la primera subida a produccion
This commit is contained in:
parent
1ccba14eb3
commit
ad666ad3e0
|
|
@ -28,7 +28,7 @@ public class EstadoSolicitudQuery extends QueryRule{
|
|||
}
|
||||
|
||||
StringBuilder sql = new StringBuilder("select DISTINCT ta.ACTIVITYNAME,ta.USERCODE,ta.GROUPCODE,tk.STATUS,ta.CREATED,ta.STARTED,ta.COMPLETED "
|
||||
+ " from jbpm6.VARIABLEINSTANCELOG d, TBPMACTIVITIES ta, jbpm6.TASK tk "
|
||||
+ " from jbpm6.public.VARIABLEINSTANCELOG d, TBPMACTIVITIES ta, jbpm6.public.TASK tk "
|
||||
+ " where d.processInstanceId = ta.internalcode and tk.id (+) = ta.TASKID ");
|
||||
|
||||
if(codigosolicitud.contains("SOL") || codigosolicitud.contains("TRA")){
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:16 ECT 2022
|
||||
#Wed Nov 02 15:37:09 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.bpm
|
||||
artifactId=bpmlib
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:10 ECT 2022
|
||||
#Wed Nov 02 15:37:03 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.bpm
|
||||
artifactId=simple
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -326,11 +326,10 @@ public class ScheduleXMLSolicitud {
|
|||
@Schedule( hour = "*",second = "0", minute = "1,10,20,30,40,50", persistent = false)
|
||||
public void generarXMLs() {
|
||||
try {
|
||||
|
||||
|
||||
EntityManager entityManager = emf.createEntityManager();
|
||||
|
||||
TgeneParameters ejecucion = obtenerParametro("PATHFACTURASXML", entityManager);
|
||||
TgeneParameters ejecucion = obtenerParametro("EJECUCIONXML", entityManager);
|
||||
|
||||
if(ejecucion.getNumbervalue().compareTo(BigDecimal.ZERO) == 0){
|
||||
throw new Exception(new Date().toString().concat(": Ejecucion de la facturacion desactivada"));
|
||||
|
|
@ -352,7 +351,7 @@ public class ScheduleXMLSolicitud {
|
|||
+ "LEFT JOIN TCUSTPERSONDETAIL p \n"
|
||||
+ "ON t.PERSONCODE = p.PERSONCODE \n"
|
||||
+ "AND p.DATETO = TO_DATE('2999-12-31','YYYY-MM-DD') \n"
|
||||
+ "WHERE t2.ESTADOTRAMITE = 'APB' and\n"
|
||||
+ "WHERE t2.ESTADOTRAMITE = 'APBDEP' and\n"
|
||||
+ "t2.valorapagar is not null and t2.valorapagar > 0\n"
|
||||
+ "limit 105 \n"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:43 ECT 2022
|
||||
#Wed Nov 02 15:37:29 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=armas
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:35 ECT 2022
|
||||
#Wed Nov 02 15:37:23 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=general
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:38 ECT 2022
|
||||
#Wed Nov 02 15:37:25 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=log
|
||||
|
|
|
|||
|
|
@ -209,6 +209,7 @@ public abstract class CompletePersonAndCompany extends TransactionRule {
|
|||
tcustBalanceKey.setPersoncode(personcode);
|
||||
tcustBalanceKey.setBalancedate(balancedate);
|
||||
TcustBalance tcustBalance = new TcustBalance(tcustBalanceKey);
|
||||
|
||||
PersistenceHelper.save(tcustBalance);
|
||||
// saveRequest.putSaveBean("TCUSTBALANCE", tcustBalance, 1);
|
||||
}
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:30 ECT 2022
|
||||
#Wed Nov 02 15:37:20 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=person
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:36 ECT 2022
|
||||
#Wed Nov 02 15:37:24 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=report
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -73,8 +73,8 @@ public class MailMasivo {
|
|||
}
|
||||
|
||||
/** Sentencia que entrega las solicitudes a enviar mail. */
|
||||
private static final String JPQL = " select cod_solicitud, cod_tipo, ((trunc(select now()) - fec_fin_viatico)) + 1 dias "
|
||||
+ "from via_solicitud where (trunc(select now()) - fec_fin_viatico) + 1 between 1 and 4 and cod_estado in ('SAP','IPI') ant tipo = 'SOL' ";
|
||||
private static final String JPQL = " select cod_solicitud, cod_tipo, extract(day from(now() - fec_fin_viatico)) + 1 dias "
|
||||
+ "from via_solicitud where extract(day from(select now() - fec_fin_viatico))+ 1 between 1 and 4 and cod_estado in ('SAP','IPI') ant tipo = 'SOL' ";
|
||||
|
||||
/**
|
||||
* Metodo que obtiene las solicitudes a enviar mail masivos.
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:40 ECT 2022
|
||||
#Wed Nov 02 15:37:26 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.business
|
||||
artifactId=viaticos
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:26 ECT 2022
|
||||
#Wed Nov 02 15:37:17 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.core
|
||||
artifactId=alfresco-client
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:11 ECT 2022
|
||||
#Wed Nov 02 15:37:05 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.core
|
||||
artifactId=bpm
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:25 ECT 2022
|
||||
#Wed Nov 02 15:37:16 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.core
|
||||
artifactId=firmas
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 15:59:54 ECT 2022
|
||||
#Wed Nov 02 15:36:50 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.dto
|
||||
artifactId=common
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 15:59:51 ECT 2022
|
||||
#Wed Nov 02 15:36:48 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.dto
|
||||
artifactId=dto
|
||||
|
|
|
|||
|
|
@ -30,9 +30,9 @@ public class SaveBean extends BeanHelper implements FacadeBeanJsfRemote {
|
|||
EntityManager em = PersistenceManager.getInstance().createEntityManagerLocal();
|
||||
PersistenceHelper.setEntityManager(em);
|
||||
try {
|
||||
BeanHelper.cleanThreadLocal();
|
||||
BeanHelper.cleanThreadLocal();
|
||||
PersistenceHelper.beginTransaction();
|
||||
SaveAction sa = new SaveAction();
|
||||
SaveAction sa = new SaveAction();
|
||||
resp = sa.process(request);
|
||||
PersistenceHelper.commitTransaction();
|
||||
return resp;
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:45 ECT 2022
|
||||
#Wed Nov 02 15:37:31 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base
|
||||
artifactId=facade
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:44 ECT 2022
|
||||
#Wed Nov 02 15:37:30 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base
|
||||
artifactId=facadeclient
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:04 ECT 2022
|
||||
#Wed Nov 02 15:36:59 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=commondb
|
||||
|
|
|
|||
|
|
@ -10,10 +10,12 @@ import java.io.Serializable;
|
|||
import java.lang.reflect.Field;
|
||||
import java.sql.Timestamp;
|
||||
import java.util.Date;
|
||||
import javax.persistence.Basic;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.EntityManager;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.Table;
|
||||
import javax.persistence.Transient;
|
||||
|
|
@ -40,12 +42,15 @@ public class TarmInvoiceHistory extends com.fp.dto.AbstractDataTransport impleme
|
|||
* Clave primaria de la Entidad TarmInvoiceHistory
|
||||
*/
|
||||
@Id
|
||||
@Column(name = "ID", nullable = false)
|
||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||
@Basic(optional = false)
|
||||
@Column(name = "ID")
|
||||
private Integer pk;
|
||||
/**
|
||||
* Codigo usuario
|
||||
*/
|
||||
@Column(name = "USERCODE", nullable = true)
|
||||
@Basic(optional = false)
|
||||
@Column(name = "USERCODE")
|
||||
private String usercode;
|
||||
/**
|
||||
* Fecha de generacion de la factura
|
||||
|
|
@ -89,14 +94,6 @@ public class TarmInvoiceHistory extends com.fp.dto.AbstractDataTransport impleme
|
|||
/**
|
||||
* Getters y setters
|
||||
*/
|
||||
public int getHashValue() {
|
||||
return hashValue;
|
||||
}
|
||||
|
||||
public void setHashValue(int hashValue) {
|
||||
this.hashValue = hashValue;
|
||||
}
|
||||
|
||||
public Integer getPk() {
|
||||
return pk;
|
||||
}
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:23 ECT 2022
|
||||
#Wed Nov 02 15:37:15 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=parmas
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 15:59:56 ECT 2022
|
||||
#Wed Nov 02 15:36:51 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=pbpm
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:07 ECT 2022
|
||||
#Wed Nov 02 15:37:01 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=pcustomer
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:20 ECT 2022
|
||||
#Wed Nov 02 15:37:12 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=pfirmas
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:02 ECT 2022
|
||||
#Wed Nov 02 15:36:57 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=pgeneral
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:17 ECT 2022
|
||||
#Wed Nov 02 15:37:10 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=plog
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:19 ECT 2022
|
||||
#Wed Nov 02 15:37:11 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=pviaticos
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:09 ECT 2022
|
||||
#Wed Nov 02 15:37:02 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base.persistence
|
||||
artifactId=util
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:28 ECT 2022
|
||||
#Wed Nov 02 15:37:18 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.base
|
||||
artifactId=sessionbeans
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:46 ECT 2022
|
||||
#Wed Nov 02 15:37:32 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.clients.maia
|
||||
artifactId=maiaear
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,5 +1,5 @@
|
|||
#Generated by Maven
|
||||
#Mon Oct 31 16:00:45 ECT 2022
|
||||
#Wed Nov 02 15:37:31 ECT 2022
|
||||
version=2.1
|
||||
groupId=com.fp.clients.maia
|
||||
artifactId=environment-eap6
|
||||
|
|
|
|||
|
|
@ -0,0 +1,441 @@
|
|||
/*
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
||||
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
||||
*/
|
||||
package com.fp.frontend.controller.armas.solicitud;
|
||||
|
||||
import com.fp.dto.AbstractDataTransport;
|
||||
import com.fp.frontend.controller.AbstractController;
|
||||
import com.fp.frontend.controller.armas.parametros.CentroControlArmasController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonAddressController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonDetailController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonPhoneController;
|
||||
import com.fp.frontend.controller.pgeneral.gene.CityController;
|
||||
import com.fp.frontend.controller.pgeneral.gene.ParametersController;
|
||||
import static com.fp.frontend.controller.pgeneral.gene.ParametersController.find;
|
||||
import com.fp.persistence.commondb.PersistenceHelper;
|
||||
import com.fp.persistence.parmas.param.TarmCentroControl;
|
||||
import com.fp.persistence.parmas.param.TarmTramite;
|
||||
import com.fp.persistence.parmas.soli.TarmInvoiceHistory;
|
||||
import com.fp.persistence.parmas.soli.TarmSolicitud;
|
||||
import com.fp.persistence.parmas.soli.TarmSolicitudTramite;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonAddress;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonDetail;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonPhone;
|
||||
import com.fp.persistence.pgeneral.gene.TgeneCity;
|
||||
import com.fp.persistence.pgeneral.gene.TgeneParameters;
|
||||
import com.fp.persistence.pgeneral.safe.TsafeUserDetail;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import java.util.List;
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.faces.bean.ManagedBean;
|
||||
import javax.faces.bean.ManagedProperty;
|
||||
import javax.faces.bean.ViewScoped;
|
||||
import javax.faces.context.FacesContext;
|
||||
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
import javax.xml.transform.stream.StreamResult;
|
||||
import org.openide.util.Exceptions;
|
||||
import org.w3c.dom.Attr;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
/**
|
||||
* CLASE PARA GENERACION DE XML
|
||||
* @author developer2
|
||||
*/
|
||||
@ManagedBean
|
||||
@ViewScoped
|
||||
public class FacturaController extends AbstractController<AbstractDataTransport>{
|
||||
private static final long serialVersionUID = -4049698904561227471L;
|
||||
|
||||
public FacturaController() throws Exception{
|
||||
super(AbstractDataTransport.class);
|
||||
}
|
||||
|
||||
|
||||
@ManagedProperty(value = "#{iv}")
|
||||
private InvoiceHistoryController iv;
|
||||
|
||||
@PostConstruct
|
||||
public void postConstruct(){
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*Codigo de GENERACION DE XML DE FACTURAS
|
||||
*/
|
||||
|
||||
|
||||
public void crearAgregarHijo(Document doc, Element padre, String nombreElemento, String textoElemento) {
|
||||
Element hijo = crearElemento(doc, nombreElemento, textoElemento);
|
||||
agregarHijoPadre(doc, padre, hijo);
|
||||
}
|
||||
|
||||
public void crearAtributo(Document doc, Element elemento, String nombreAtributo, String valorAtributo) {
|
||||
Attr attr = doc.createAttribute(nombreAtributo);
|
||||
attr.setValue(valorAtributo);
|
||||
elemento.setAttributeNode(attr);
|
||||
}
|
||||
|
||||
public void crearAgregarHijoAtributo(Document doc, Element padre, String nombreElemento, String textoElemento, String nombreAtributo, String textoAtributo) {
|
||||
Element hijo = crearElemento(doc, nombreElemento, textoElemento);
|
||||
crearAtributo(doc, hijo, nombreAtributo, textoAtributo);
|
||||
agregarHijoPadre(doc, padre, hijo);
|
||||
}
|
||||
|
||||
public Element crearElemento(Document doc, String nombreElemento, String textoElemento) {
|
||||
Element elemento1 = doc.createElement(nombreElemento);
|
||||
elemento1.setTextContent(textoElemento);
|
||||
return elemento1;
|
||||
}
|
||||
|
||||
public Element crearElementoSinTexto(Document doc, String nombreElemento) {
|
||||
Element elemento1 = doc.createElement(nombreElemento);
|
||||
return elemento1;
|
||||
}
|
||||
|
||||
public void agregarHijoPadre(Document doc, Element padre, Element hijo) {
|
||||
padre.appendChild(hijo);
|
||||
|
||||
}
|
||||
/**
|
||||
*ACTUALIZAR SECUENCIA DE CENTRO DE CONTROL
|
||||
*/
|
||||
public void actualizarSecuenciaCcontrol(TarmCentroControl centroControl, CentroControlArmasController cac) throws Exception{
|
||||
centroControl.setSecuenciafacturacion(centroControl.getSecuenciafacturacion()+1);
|
||||
cac.update(centroControl);
|
||||
cac.save();
|
||||
}
|
||||
/**
|
||||
*Buscar direccion de la persona si es la principal (Y)
|
||||
*/
|
||||
public TcustPersonAddress setDireccionPrincipal(TcustPersonAddress direccion, List<TcustPersonAddress> lstdireccionDomicilio){
|
||||
|
||||
if (lstdireccionDomicilio != null && !lstdireccionDomicilio.isEmpty()) {
|
||||
for (TcustPersonAddress tcustPersonAddress : lstdireccionDomicilio) {
|
||||
if (tcustPersonAddress.getPrincipal().equalsIgnoreCase("Y")) {
|
||||
direccion = tcustPersonAddress;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return direccion;
|
||||
}
|
||||
/**
|
||||
* Buscar el telefono mas principal segun el numero secuencial establecido en addresNumber
|
||||
*/
|
||||
public TcustPersonPhone buscarTelefonoPrincipal(List<TcustPersonPhone> lstTelefonos){
|
||||
int masBajo = 0;
|
||||
Integer index = null;
|
||||
|
||||
if (lstTelefonos != null && !lstTelefonos.isEmpty()) {
|
||||
for (int j = 0; j < lstTelefonos.size(); j++) {
|
||||
if (j == 0) {
|
||||
masBajo = lstTelefonos.get(j).getAddressnumber();
|
||||
index = j;
|
||||
} else {
|
||||
if (lstTelefonos.get(j).getAddressnumber() < masBajo) {
|
||||
masBajo = lstTelefonos.get(j).getAddressnumber();
|
||||
index = j;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return lstTelefonos.get(index) ;
|
||||
}
|
||||
/**
|
||||
* Generar el detalle 1 de la factura
|
||||
*/
|
||||
public void generarDetalle1(Document doc, Element detalle1, String codigoPrincipal, String descripcion, Integer cantidad, Double precioUnitario, Double precioTotalSinImpuestos){
|
||||
crearAgregarHijo(doc, detalle1, "codigoPrincipal", codigoPrincipal);
|
||||
crearAgregarHijo(doc, detalle1, "descripcion", descripcion);
|
||||
crearAgregarHijo(doc, detalle1, "cantidad", cantidad + "");
|
||||
crearAgregarHijo(doc, detalle1, "precioUnitario", precioUnitario.toString());
|
||||
crearAgregarHijo(doc, detalle1, "descuento", "0.00");
|
||||
crearAgregarHijo(doc, detalle1, "precioTotalSinImpuesto", precioTotalSinImpuestos.toString());
|
||||
}
|
||||
/**
|
||||
*Generar el detalle de los custodios
|
||||
*/
|
||||
public void generarCustodio(Document doc, TgeneParameters tCustodio, TarmSolicitud solicitud, TarmSolicitudTramite solicitudTramite, String impuesto, Integer porcentajeDescuento, Element detalles ){
|
||||
Element detalle2 = crearElementoSinTexto(doc, "detalle");
|
||||
String codigoPrincipal2 = tCustodio.getNumbervalue().toString().contains(".")
|
||||
? tCustodio.getNumbervalue().toString().split("\\.")[0] : tCustodio.getNumbervalue().toString() ; int numeroDias = solicitud != null && solicitud.getNumerodiascustodios() != null ? solicitud.getNumerodiascustodios() : null;
|
||||
int numeroCustodios=solicitud != null ? solicitud.getNumerocustodios() : null;
|
||||
|
||||
String descripcion2 = String.format(tCustodio.getTextvalue(), numeroDias);
|
||||
Double precioUnitario2 = solicitudTramite.getValorcustodios().doubleValue()/ numeroCustodios;
|
||||
Double precioTotalSinImpuestos2 = solicitudTramite.getValorcustodios().doubleValue() ;
|
||||
|
||||
crearAgregarHijo(doc, detalle2, "codigoPrincipal", codigoPrincipal2);
|
||||
crearAgregarHijo(doc, detalle2, "descripcion", descripcion2);
|
||||
crearAgregarHijo(doc, detalle2, "cantidad", numeroCustodios + "");
|
||||
crearAgregarHijo(doc, detalle2, "precioUnitario", precioUnitario2.toString());
|
||||
crearAgregarHijo(doc, detalle2, "descuento", "0.00");
|
||||
crearAgregarHijo(doc, detalle2, "precioTotalSinImpuesto", precioTotalSinImpuestos2.toString());
|
||||
|
||||
Element impuestoItem2 = crearElementoSinTexto(doc, "impuestoItem");
|
||||
Element impueste2 = crearElementoSinTexto(doc, "impuesto");
|
||||
crearAgregarHijo(doc, impueste2, "impuesto", impuesto);
|
||||
crearAgregarHijo(doc, impueste2, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, impueste2, "baseImponible", precioTotalSinImpuestos2.toString());
|
||||
agregarHijoPadre(doc, impuestoItem2, impueste2);
|
||||
agregarHijoPadre(doc, detalle2, impuestoItem2);
|
||||
agregarHijoPadre(doc, detalles, detalle2);
|
||||
|
||||
}
|
||||
|
||||
|
||||
public File sacarFactura(String codigoSolicitud, File carpetaBase, TsafeUserDetail tsafeUserDetail) throws Exception {
|
||||
CentroControlArmasController cac = new CentroControlArmasController();
|
||||
TgeneParameters tCustodio = find("CUSTODIOSFACTURA", "1");
|
||||
|
||||
String noDisponible = ""; /**SE SUELE UTILIZAR SI ES QUE SE REQUIERE UN MENSAJE EN DATOS VACIOS*/
|
||||
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
|
||||
//Elemento raíz
|
||||
Document doc = docBuilder.newDocument();
|
||||
Element factura = doc.createElement("factura");
|
||||
doc.appendChild(factura);
|
||||
|
||||
TarmSolicitudTramite solicitudTramite = SolicitudTramiteController.findByCSolicitud(codigoSolicitud);
|
||||
TarmSolicitud solicitud = SolicitudController.findSolicitudxcodsolicitud(codigoSolicitud);
|
||||
Integer personCode = solicitud.getPersoncode();
|
||||
TcustPersonDetail persona = PersonDetailController.find(personCode.toString());
|
||||
TgeneParameters parametroRUC = find("RUCCOMACO", "1");
|
||||
TarmTramite tTramite = TarmTramiteController.findSimple(solicitud.getCtramite().toString());
|
||||
String rucComaco = parametroRUC.getTextvalue();
|
||||
crearAgregarHijo(doc, factura, "ruc", rucComaco);
|
||||
|
||||
TarmCentroControl centroControl = CentroControlArmasController.findPorCodigo(solicitud.getCcentrocontrol());
|
||||
String serie = centroControl != null && centroControl.getPuntofacturacion() != null ?
|
||||
centroControl.getPuntofacturacion().replace("-", "") : "";
|
||||
crearAgregarHijo(doc, factura, "secuencia",String.format("%09d", centroControl.getSecuenciafacturacion()));
|
||||
/**
|
||||
* ACTUALIZAR LA SECUENCIA DEL CENTRO DE CONTROL
|
||||
*/
|
||||
actualizarSecuenciaCcontrol(centroControl, cac);
|
||||
crearAgregarHijo(doc, factura, "serie", serie);
|
||||
|
||||
//Fecha de emision
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
|
||||
String fechaEmision = sdf.format(Calendar.getInstance().getTime());
|
||||
crearAgregarHijo(doc, factura, "fecha", fechaEmision);
|
||||
|
||||
/**
|
||||
* ============================= DATOS DE PERSONA
|
||||
*/
|
||||
crearAgregarHijo(doc, factura, "tipoIdComprador", persona.getIdentificationcatalog());
|
||||
crearAgregarHijo(doc, factura, "razonSocialComprador", persona.getName());
|
||||
crearAgregarHijo(doc, factura, "identificacionComprador", persona.getIdentification());
|
||||
|
||||
/**
|
||||
* *********************** Direccion
|
||||
*/
|
||||
TcustPersonAddress direccionDomicilio = null;
|
||||
List<TcustPersonAddress> lstdireccionDomicilio = PersonAddressController.findByPersonCodeList(personCode.toString(), "1");
|
||||
|
||||
direccionDomicilio = setDireccionPrincipal(direccionDomicilio, lstdireccionDomicilio);
|
||||
|
||||
List<TcustPersonAddress> lstCorreos = PersonAddressController.findByPersonCodeList(personCode.toString(), "3");
|
||||
|
||||
TcustPersonAddress correo = null;
|
||||
/** ====================== buscar por menor addresNumber */
|
||||
correo = lstCorreos != null || !lstCorreos.isEmpty() ? lstCorreos.get(0) : null;
|
||||
|
||||
TcustPersonPhone telefono = null;
|
||||
List<TcustPersonPhone> lstTelefonos = PersonPhoneController.findAll(personCode.toString(), "1");
|
||||
telefono = buscarTelefonoPrincipal(lstTelefonos);
|
||||
|
||||
PersonPhoneController.find(personCode.toString(), "1");
|
||||
Double valorAPagar = solicitudTramite.getValorapagar().doubleValue();
|
||||
crearAgregarHijo(doc, factura, "direccionComprador", direccionDomicilio != null ? direccionDomicilio.getAddress() : noDisponible);
|
||||
crearAgregarHijo(doc, factura, "totalSinImpuestos", valorAPagar.toString());
|
||||
crearAgregarHijo(doc, factura, "totalDescuento", "0.00");
|
||||
/**
|
||||
* ================== impuestoTotal ================
|
||||
*/
|
||||
String impuesto = "IVA";
|
||||
int porcentajeDescuento = 0;
|
||||
|
||||
Element impuestoTotal = crearElementoSinTexto(doc, "impuestoTotal");
|
||||
Element totalImpuesto1 = crearElementoSinTexto(doc, "totalImpuesto");
|
||||
Element totalImpuesto2 = crearElementoSinTexto(doc, "totalImpuesto");
|
||||
|
||||
crearAgregarHijo(doc, totalImpuesto1, "codigo", impuesto);
|
||||
crearAgregarHijo(doc, totalImpuesto1, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, totalImpuesto1, "baseImponible", valorAPagar.toString());
|
||||
|
||||
|
||||
crearAgregarHijo(doc, totalImpuesto2, "baseImponible", impuesto);
|
||||
crearAgregarHijo(doc, totalImpuesto2, "Porcentaje", "12");
|
||||
crearAgregarHijo(doc, totalImpuesto2, "baseImponible", "0.00");
|
||||
agregarHijoPadre(doc, impuestoTotal, totalImpuesto1);
|
||||
agregarHijoPadre(doc, impuestoTotal, totalImpuesto2);
|
||||
agregarHijoPadre(doc, factura, impuestoTotal);
|
||||
crearAgregarHijo(doc, factura, "totalFactura", valorAPagar.toString());
|
||||
/**
|
||||
* ========================= Detalles ================================
|
||||
*/
|
||||
|
||||
String []servicios = tTramite.getServicio() != null ? tTramite.getServicio().split("-"):null;
|
||||
|
||||
String codigoPrincipal = servicios != null ? servicios[0]: ""; /**IMPORTANTE REVISAR*/
|
||||
String descripcion = servicios != null ? servicios[1]: "";
|
||||
int cantidad = 1; /**Cantidad de productos en solicitud*/
|
||||
Double precioUnitario = solicitudTramite.getValortramitearmas().doubleValue();
|
||||
Double precioTotalSinImpuestos = precioUnitario * cantidad;
|
||||
Element detalles = crearElementoSinTexto(doc, "detalles");
|
||||
Element detalle1 = crearElementoSinTexto(doc, "detalle");
|
||||
|
||||
generarDetalle1(doc, detalle1, codigoPrincipal, descripcion, cantidad, precioUnitario, precioTotalSinImpuestos);
|
||||
|
||||
Element impuestoItem = crearElementoSinTexto(doc, "impuestoItem");
|
||||
Element impueste = crearElementoSinTexto(doc, "impuesto");
|
||||
|
||||
crearAgregarHijo(doc, impueste, "impuesto", impuesto);
|
||||
crearAgregarHijo(doc, impueste, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, impueste, "baseImponible", precioTotalSinImpuestos + "");
|
||||
agregarHijoPadre(doc, impuestoItem, impueste);
|
||||
agregarHijoPadre(doc, detalle1, impuestoItem);
|
||||
agregarHijoPadre(doc, detalles, detalle1);
|
||||
|
||||
/**
|
||||
* **** custodios
|
||||
*/
|
||||
if (solicitudTramite.getValorcustodios() != null && solicitudTramite.getValorcustodios().doubleValue() > 0) {
|
||||
generarCustodio(doc, tCustodio, solicitud, solicitudTramite, impuesto, porcentajeDescuento, detalles);
|
||||
|
||||
}
|
||||
agregarHijoPadre(doc, factura, detalles);
|
||||
|
||||
/**
|
||||
* ========================= Pagos ================================
|
||||
*/
|
||||
Element pagos = crearElementoSinTexto(doc, "pagos");
|
||||
Element pago = crearElementoSinTexto(doc, "pago");
|
||||
/**
|
||||
* formaPago: de momento, tocaria ver los nemonicos a futuro para pago con tarjeta
|
||||
*/
|
||||
String formaPago = "EF";
|
||||
|
||||
Double totalPagar = valorAPagar;
|
||||
crearAgregarHijo(doc, pago, "formaPago", formaPago);
|
||||
crearAgregarHijo(doc, pago, "total", totalPagar.toString());
|
||||
agregarHijoPadre(doc, pagos, pago);
|
||||
agregarHijoPadre(doc, factura, pagos);
|
||||
/**
|
||||
* ========================= INFOAdicional ========================
|
||||
*/
|
||||
String mail = correo != null ? correo.getAddress() : noDisponible;
|
||||
String telefonoFijo = telefono != null ? telefono.getPhonenumber() : noDisponible;
|
||||
if (telefonoFijo.contains("-")) {
|
||||
telefonoFijo = telefonoFijo.split("-")[1];
|
||||
}
|
||||
TgeneCity Tciudad = null;
|
||||
if (direccionDomicilio != null) {
|
||||
Tciudad = CityController.findOnlyOne(direccionDomicilio.getCountrycode(),
|
||||
direccionDomicilio.getProvincecode(), direccionDomicilio.getCantoncode(), direccionDomicilio.getCitycode());
|
||||
}
|
||||
|
||||
String ciudad = Tciudad != null ? Tciudad.getDescription() : noDisponible;
|
||||
Element infoAdicional = crearElementoSinTexto(doc, "infoAdicional");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", mail, "nombre", "Mail");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", telefonoFijo, "nombre", "Telefono");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", ciudad, "nombre", "Ciudad");
|
||||
agregarHijoPadre(doc, factura, infoAdicional);
|
||||
|
||||
//Se escribe el contenido del XML en un archivo
|
||||
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|
||||
Transformer transformer = transformerFactory.newTransformer();
|
||||
DOMSource source = new DOMSource(doc);
|
||||
|
||||
File archivo = new File(carpetaBase, String.format("%s.xml", solicitud.getNumerosolicitud()));
|
||||
StreamResult result = new StreamResult(archivo);
|
||||
transformer.transform(source, result);
|
||||
|
||||
try {
|
||||
crearAuditoria(solicitud.getPk(), tsafeUserDetail.getPk().getUsercode(),
|
||||
solicitud.getNumerosolicitud(), solicitudTramite.getNumerotramite(),
|
||||
archivo.getAbsolutePath());
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
//System.out.println("Error al generar auditoria desde el front>>< "+ e.toString());
|
||||
}
|
||||
return archivo;
|
||||
}
|
||||
public String obtenerContenidoArchivo(String archivo) throws FileNotFoundException, IOException {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
FileReader f = new FileReader(archivo);
|
||||
String cadena;
|
||||
BufferedReader b = new BufferedReader(f);
|
||||
while((cadena = b.readLine())!=null) {
|
||||
sb.append(cadena.concat("\n"));
|
||||
}
|
||||
b.close();
|
||||
return sb.toString();
|
||||
}
|
||||
public void crearAuditoria( String csoli,String user, String solicitudNumber, String tramiteNumber,String path) throws Exception{
|
||||
TarmInvoiceHistory tih = new TarmInvoiceHistory();
|
||||
iv = new InvoiceHistoryController();
|
||||
tih.setCsolicitud(csoli);
|
||||
tih.setUsercode(user);
|
||||
tih.setRegistrationdate(new java.sql.Timestamp(Calendar.getInstance().getTimeInMillis()));
|
||||
tih.setSolicitudnumber(solicitudNumber);
|
||||
tih.setTramitenumber(tramiteNumber);
|
||||
tih.setPathfile(path);
|
||||
tih.setContentfile(obtenerContenidoArchivo(path));
|
||||
//PersistenceHelper.getEntityManager().persist(tih);
|
||||
System.out.println("com.fp.frontend.controller.armas.solicitud.FacturaController.crearAuditoria()<>> va a gualdal" );
|
||||
iv.update(tih);
|
||||
//PersistenceHelper.getEntityManager().crea
|
||||
//PersistenceHelper.save(tih);
|
||||
iv.save();
|
||||
System.out.println("com.fp.frontend.controller.armas.solicitud.FacturaController.crearAuditoria()<>> devio avel gualdado" );
|
||||
|
||||
}
|
||||
|
||||
public void generarFacturas(String csolicitud) {
|
||||
try {
|
||||
TsafeUserDetail tsafeUserDetail = (TsafeUserDetail) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("TSAFEUSERDETAIL");
|
||||
|
||||
String folderPath = find("PATHFACTURASXML", "1").getTextvalue();
|
||||
folderPath = folderPath.concat("FRONTEND").concat("/");
|
||||
File carpetaBase = new File(folderPath);
|
||||
carpetaBase.mkdirs();
|
||||
File arch = sacarFactura(csolicitud, carpetaBase, tsafeUserDetail );
|
||||
byte[] fileContent = Files.readAllBytes(Paths.get(arch.getAbsolutePath()));
|
||||
this.downloadFile(fileContent, "application/xml", arch.getName());
|
||||
|
||||
|
||||
|
||||
} catch (Exception ex) {
|
||||
System.out.println("Error al guardar el parametro >>>> " + ex.toString());
|
||||
Exceptions.printStackTrace(ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void querydatabase() {
|
||||
throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
|
||||
}
|
||||
}
|
||||
|
|
@ -23,10 +23,11 @@ import javax.faces.bean.ViewScoped;
|
|||
*
|
||||
* @author developer2
|
||||
*/
|
||||
@SuppressWarnings("serial")
|
||||
@ManagedBean
|
||||
@ViewScoped
|
||||
public class InvoiceHistoryController extends AbstractController<TarmInvoiceHistory>{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public InvoiceHistoryController() throws Exception {
|
||||
super(TarmInvoiceHistory.class);
|
||||
}
|
||||
|
|
@ -49,14 +50,10 @@ public class InvoiceHistoryController extends AbstractController<TarmInvoiceHist
|
|||
}
|
||||
}
|
||||
|
||||
public void update(TarmInvoiceHistory bean) {
|
||||
try {
|
||||
public void update(TarmInvoiceHistory bean) throws Exception {
|
||||
this.record = bean;
|
||||
super.update();
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -77,12 +74,12 @@ public class InvoiceHistoryController extends AbstractController<TarmInvoiceHist
|
|||
this.postCommit(resp);
|
||||
//MessageHelper.setMessageInfo(resp);
|
||||
} else {
|
||||
System.out.println("Error al guardar");
|
||||
System.out.println("Error al guardar "+resp.getResponseTechnicalMessage());
|
||||
// MessageHelper.setMessageError(resp);
|
||||
}
|
||||
|
||||
} catch (Throwable e) {
|
||||
MessageHelper.setMessageError(e);
|
||||
System.out.println("Error guardando historial de xml desde frontent: "+e.toString());
|
||||
}
|
||||
}
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ import com.fp.frontend.controller.pgeneral.gene.ParametersController;
|
|||
import com.fp.frontend.controller.pgeneral.gene.ParroquiaController;
|
||||
import com.fp.frontend.controller.pgeneral.gene.ProvinceController;
|
||||
import com.fp.frontend.controller.pgeneral.safe.UserDetailController;
|
||||
import com.fp.frontend.controller.pcustomer.FacturaController;
|
||||
import com.fp.frontend.controller.armas.solicitud.FacturaController;
|
||||
import com.fp.frontend.helper.MessageHelper;
|
||||
import com.fp.frontend.utility.MsgControlArmas;
|
||||
import com.fp.frontend.utility.Utilidades;
|
||||
|
|
@ -160,8 +160,7 @@ public class ReporteConsultaSolicitudController extends
|
|||
private SolicitudArmasController solicitud;
|
||||
|
||||
|
||||
@ManagedProperty(value = "#{parametersController}")
|
||||
private ParametersController parametersController;
|
||||
private FacturaController facturaController;
|
||||
/**
|
||||
* Controlador que maneja la persona
|
||||
*/
|
||||
|
|
@ -300,12 +299,24 @@ public class ReporteConsultaSolicitudController extends
|
|||
|
||||
private void init() {
|
||||
this.beanalias = "REPORTESOLICITUD";
|
||||
initFacturaController();
|
||||
ltipopersona = CatalogDetailController.find("PERSONTYPE");
|
||||
ltipoidenti = CatalogDetailController.find("IDENTIFICATION");
|
||||
ltipotramite = CatalogDetailController.find("TIPOTRAMITE");
|
||||
lorigenadquisicion = CatalogDetailController.find("ORIGENADQUISICION");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Incializar facturaCOntroller
|
||||
*/
|
||||
public void initFacturaController(){
|
||||
try {
|
||||
facturaController = new FacturaController();
|
||||
} catch (Exception ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void querydatabase() {
|
||||
// TODO Auto-generated method stub
|
||||
|
|
@ -361,7 +372,7 @@ public class ReporteConsultaSolicitudController extends
|
|||
|
||||
public void crearXML(){
|
||||
try {
|
||||
this.parametersController.generarFacturas(this.solicitud.getRecord().getPk());
|
||||
this.facturaController.generarFacturas(this.solicitud.getRecord().getPk());
|
||||
|
||||
} catch (Exception ex) {
|
||||
Exceptions.printStackTrace(ex);
|
||||
|
|
@ -834,12 +845,12 @@ public class ReporteConsultaSolicitudController extends
|
|||
this.solicitudGuardias = solicitudGuardias;
|
||||
}
|
||||
|
||||
public ParametersController getParametersController() {
|
||||
return parametersController;
|
||||
public FacturaController getParametersController() {
|
||||
return facturaController;
|
||||
}
|
||||
|
||||
public void setParametersController(ParametersController parametersController) {
|
||||
this.parametersController = parametersController;
|
||||
public void setParametersController(FacturaController parametersController) {
|
||||
this.facturaController = parametersController;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -209,9 +209,7 @@ public class VerificacionRequisitosSolicitudController extends AbstractControlle
|
|||
try {
|
||||
super.startQuery();
|
||||
fechaAtencionTramite = new Date(new java.util.Date().getTime());
|
||||
/** IMPORTANTE BORRAR SACAR TAMBIEN LA VENTANA DE CLIENTE*/
|
||||
codigoSolicitud = this.getMfilters().get("codigoSolicitud")
|
||||
!= null ?this.getMfilters().get("codigoSolicitud") : "4290";
|
||||
codigoSolicitud = this.getMfilters().get("codigoSolicitud");
|
||||
|
||||
int numArmasInt = TarmSolicitudArmasController.getNumeroArmasPorSolicitud(codigoSolicitud);
|
||||
|
||||
|
|
|
|||
|
|
@ -13,54 +13,9 @@ import com.fp.dto.Response;
|
|||
import com.fp.dto.query.DtoQuery;
|
||||
import com.fp.dto.save.DtoSave;
|
||||
import com.fp.frontend.controller.AbstractController;
|
||||
import com.fp.frontend.controller.armas.parametros.CentroControlArmasController;
|
||||
import com.fp.frontend.controller.armas.solicitud.SolicitudController;
|
||||
import com.fp.frontend.controller.armas.solicitud.SolicitudTramiteController;
|
||||
import com.fp.frontend.controller.armas.solicitud.TarmTramiteController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonAddressController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonDetailController;
|
||||
import com.fp.frontend.controller.pcustomer.PersonPhoneController;
|
||||
import com.fp.frontend.helper.MessageHelper;
|
||||
import com.fp.persistence.parmas.param.TarmCentroControl;
|
||||
import com.fp.persistence.parmas.param.TarmTramite;
|
||||
import com.fp.persistence.parmas.soli.TarmInvoiceHistory;
|
||||
import com.fp.persistence.parmas.soli.TarmSolicitud;
|
||||
import com.fp.persistence.parmas.soli.TarmSolicitudTramite;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonAddress;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonDetail;
|
||||
import com.fp.persistence.pcustomer.gene.TcustPersonPhone;
|
||||
import com.fp.persistence.pgeneral.gene.TgeneCatalogDetail;
|
||||
import com.fp.persistence.pgeneral.gene.TgeneCity;
|
||||
import com.fp.persistence.pgeneral.gene.TgeneParameters;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Date;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import javax.faces.context.ExternalContext;
|
||||
import javax.faces.context.FacesContext;
|
||||
import javax.servlet.ServletOutputStream;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.transform.Transformer;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
import javax.xml.transform.dom.DOMSource;
|
||||
import javax.xml.transform.stream.StreamResult;
|
||||
import org.openide.util.Exceptions;
|
||||
import org.w3c.dom.Attr;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
import com.fp.frontend.controller.armas.solicitud.InvoiceHistoryController;
|
||||
import com.fp.persistence.pgeneral.safe.TsafeUserDetail;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.FileReader;
|
||||
import java.sql.Timestamp;
|
||||
|
||||
/**
|
||||
* Clase controladora del lov asociado al bean TgeneParameters.
|
||||
*
|
||||
|
|
@ -211,358 +166,7 @@ public class ParametersController extends AbstractController<TgeneParameters> {
|
|||
|
||||
|
||||
|
||||
/** =================================== vamo a intentar generar la factura =============*/
|
||||
|
||||
|
||||
public void crearAgregarHijo(Document doc, Element padre, String nombreElemento, String textoElemento) {
|
||||
Element hijo = crearElemento(doc, nombreElemento, textoElemento);
|
||||
agregarHijoPadre(doc, padre, hijo);
|
||||
}
|
||||
|
||||
public void crearAtributo(Document doc, Element elemento, String nombreAtributo, String valorAtributo) {
|
||||
Attr attr = doc.createAttribute(nombreAtributo);
|
||||
attr.setValue(valorAtributo);
|
||||
elemento.setAttributeNode(attr);
|
||||
}
|
||||
|
||||
public void crearAgregarHijoAtributo(Document doc, Element padre, String nombreElemento, String textoElemento, String nombreAtributo, String textoAtributo) {
|
||||
Element hijo = crearElemento(doc, nombreElemento, textoElemento);
|
||||
crearAtributo(doc, hijo, nombreAtributo, textoAtributo);
|
||||
agregarHijoPadre(doc, padre, hijo);
|
||||
}
|
||||
|
||||
public Element crearElemento(Document doc, String nombreElemento, String textoElemento) {
|
||||
Element elemento1 = doc.createElement(nombreElemento);
|
||||
elemento1.setTextContent(textoElemento);
|
||||
return elemento1;
|
||||
}
|
||||
|
||||
public Element crearElementoSinTexto(Document doc, String nombreElemento) {
|
||||
Element elemento1 = doc.createElement(nombreElemento);
|
||||
return elemento1;
|
||||
}
|
||||
|
||||
public void agregarHijoPadre(Document doc, Element padre, Element hijo) {
|
||||
padre.appendChild(hijo);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public File sacarFactura(String codigoSolicitud, File carpetaBase, TsafeUserDetail tsafeUserDetail) throws Exception {
|
||||
CentroControlArmasController cac = new CentroControlArmasController();
|
||||
TgeneParameters tCustodio = find("CUSTODIOSFACTURA", "1");
|
||||
|
||||
String noDisponible = ""; /**SE SUELE UTILIZAR SI ES QUE SE REQUIERE UN MENSAJE EN DATOS VACIOS*/
|
||||
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
|
||||
//Elemento raíz
|
||||
Document doc = docBuilder.newDocument();
|
||||
Element factura = doc.createElement("factura");
|
||||
doc.appendChild(factura);
|
||||
|
||||
TarmSolicitudTramite solicitudTramite = SolicitudTramiteController.findByCSolicitud(codigoSolicitud);
|
||||
TarmSolicitud solicitud = SolicitudController.findSolicitudxcodsolicitud(codigoSolicitud);
|
||||
Integer personCode = solicitud.getPersoncode();
|
||||
TcustPersonDetail persona = PersonDetailController.find(personCode.toString());
|
||||
TgeneParameters parametroRUC = find("RUCCOMACO", "1");
|
||||
TarmTramite tTramite = TarmTramiteController.findSimple(solicitud.getCtramite().toString());
|
||||
String rucComaco = parametroRUC.getTextvalue();
|
||||
crearAgregarHijo(doc, factura, "ruc", rucComaco);
|
||||
|
||||
String ccentro = solicitud.getCcentrocontrol();
|
||||
TarmCentroControl centroControl = CentroControlArmasController.findPorCodigo(ccentro);
|
||||
String serie = centroControl != null && centroControl.getPuntofacturacion() != null ?
|
||||
centroControl.getPuntofacturacion().replace("-", "") : "";
|
||||
|
||||
crearAgregarHijo(doc, factura, "secuencia",String.format("%09d", centroControl.getSecuenciafacturacion()));
|
||||
/**
|
||||
* ACTUALIZAR LA SECUENCIA DEL CENTRO DE CONTROL
|
||||
*/
|
||||
centroControl.setSecuenciafacturacion(centroControl.getSecuenciafacturacion()+1);
|
||||
cac.update(centroControl);
|
||||
cac.save();
|
||||
crearAgregarHijo(doc, factura, "serie", serie);
|
||||
|
||||
//Fecha de emision
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
|
||||
String fechaEmision = sdf.format(Calendar.getInstance().getTime());
|
||||
crearAgregarHijo(doc, factura, "fecha", fechaEmision);
|
||||
|
||||
/**
|
||||
* ============================= DATOS DE PERSONA
|
||||
*/
|
||||
String tipoDocumento = persona.getIdentificationcatalog();
|
||||
String nombre = persona.getName();
|
||||
String identificacion = persona.getIdentification();
|
||||
crearAgregarHijo(doc, factura, "tipoIdComprador", tipoDocumento);
|
||||
crearAgregarHijo(doc, factura, "razonSocialComprador", nombre);
|
||||
crearAgregarHijo(doc, factura, "identificacionComprador", identificacion);
|
||||
|
||||
/**
|
||||
* *********************** Direccion
|
||||
*/
|
||||
TcustPersonAddress direccionDomicilio = null;
|
||||
List<TcustPersonAddress> lstdireccionDomicilio = PersonAddressController.findByPersonCodeList(personCode.toString(), "1");
|
||||
|
||||
|
||||
/**lstdireccionDomicilio = (lstdireccionDomicilio == null || lstdireccionDomicilio.isEmpty()) ?
|
||||
pac.findByPersonCodeList(personCode.toString(), "2") : lstdireccionDomicilio;*/
|
||||
|
||||
if (lstdireccionDomicilio != null && !lstdireccionDomicilio.isEmpty()) {
|
||||
for (TcustPersonAddress tcustPersonAddress : lstdireccionDomicilio) {
|
||||
if (tcustPersonAddress.getPrincipal().equalsIgnoreCase("Y")) {
|
||||
direccionDomicilio = tcustPersonAddress;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
List<TcustPersonAddress> lstCorreos = PersonAddressController.findByPersonCodeList(personCode.toString(), "3");
|
||||
|
||||
TcustPersonAddress correo = null;
|
||||
int masBajo = 0;
|
||||
/** ====================== buscar por menor addresNumber */
|
||||
correo = lstCorreos != null || !lstCorreos.isEmpty() ? lstCorreos.get(0) : null;
|
||||
|
||||
TcustPersonPhone telefono = null;
|
||||
List<TcustPersonPhone> lstTelefonos = PersonPhoneController.findAll(personCode.toString(), "1");
|
||||
masBajo = 0;
|
||||
Integer index = null;
|
||||
|
||||
if (lstTelefonos != null && !lstTelefonos.isEmpty()) {
|
||||
for (int j = 0; j < lstTelefonos.size(); j++) {
|
||||
if (j == 0) {
|
||||
masBajo = lstTelefonos.get(j).getAddressnumber();
|
||||
index = j;
|
||||
} else {
|
||||
if (lstTelefonos.get(j).getAddressnumber() < masBajo) {
|
||||
masBajo = lstTelefonos.get(j).getAddressnumber();
|
||||
index = j;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
telefono =index != null ? lstTelefonos.get(index) : null;
|
||||
}
|
||||
|
||||
PersonPhoneController.find(personCode.toString(), "1");
|
||||
Double valorAPagar = solicitudTramite.getValorapagar().doubleValue();
|
||||
crearAgregarHijo(doc, factura, "direccionComprador", direccionDomicilio != null ? direccionDomicilio.getAddress() : noDisponible);
|
||||
crearAgregarHijo(doc, factura, "totalSinImpuestos", valorAPagar.toString());
|
||||
crearAgregarHijo(doc, factura, "totalDescuento", "0.00");
|
||||
/**
|
||||
* ================== impuestoTotal ================
|
||||
*/
|
||||
String impuesto = "IVA";
|
||||
int porcentajeDescuento = 0;
|
||||
|
||||
Element impuestoTotal = crearElementoSinTexto(doc, "impuestoTotal");
|
||||
Element totalImpuesto1 = crearElementoSinTexto(doc, "totalImpuesto");
|
||||
Element totalImpuesto2 = crearElementoSinTexto(doc, "totalImpuesto");
|
||||
|
||||
crearAgregarHijo(doc, totalImpuesto1, "codigo", impuesto);
|
||||
crearAgregarHijo(doc, totalImpuesto1, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, totalImpuesto1, "baseImponible", valorAPagar.toString());
|
||||
|
||||
|
||||
crearAgregarHijo(doc, totalImpuesto2, "baseImponible", impuesto);
|
||||
crearAgregarHijo(doc, totalImpuesto2, "Porcentaje", "12");
|
||||
crearAgregarHijo(doc, totalImpuesto2, "baseImponible", "0.00");
|
||||
agregarHijoPadre(doc, impuestoTotal, totalImpuesto1);
|
||||
agregarHijoPadre(doc, impuestoTotal, totalImpuesto2);
|
||||
agregarHijoPadre(doc, factura, impuestoTotal);
|
||||
crearAgregarHijo(doc, factura, "totalFactura", valorAPagar.toString());
|
||||
/**
|
||||
* ========================= Detalles ================================
|
||||
*/
|
||||
|
||||
String []servicios = tTramite.getServicio() != null ? tTramite.getServicio().split("-"):null;
|
||||
|
||||
String codigoPrincipal = servicios != null ? servicios[0]: ""; /**IMPORTANTE REVISAR*/
|
||||
String descripcion = servicios != null ? servicios[1]: "";
|
||||
int cantidad = 1; /**Cantidad de productos en solicitud*/
|
||||
Double precioUnitario = solicitudTramite.getValortramitearmas().doubleValue();
|
||||
Double precioTotalSinImpuestos = precioUnitario * cantidad;
|
||||
Element detalles = crearElementoSinTexto(doc, "detalles");
|
||||
Element detalle1 = crearElementoSinTexto(doc, "detalle");
|
||||
crearAgregarHijo(doc, detalle1, "codigoPrincipal", codigoPrincipal);
|
||||
crearAgregarHijo(doc, detalle1, "descripcion", descripcion);
|
||||
crearAgregarHijo(doc, detalle1, "cantidad", cantidad + "");
|
||||
crearAgregarHijo(doc, detalle1, "precioUnitario", precioUnitario.toString());
|
||||
crearAgregarHijo(doc, detalle1, "descuento", "0.00");
|
||||
crearAgregarHijo(doc, detalle1, "precioTotalSinImpuesto", precioTotalSinImpuestos.toString());
|
||||
|
||||
Element impuestoItem = crearElementoSinTexto(doc, "impuestoItem");
|
||||
Element impueste = crearElementoSinTexto(doc, "impuesto");
|
||||
|
||||
crearAgregarHijo(doc, impueste, "impuesto", impuesto);
|
||||
crearAgregarHijo(doc, impueste, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, impueste, "baseImponible", precioTotalSinImpuestos + "");
|
||||
agregarHijoPadre(doc, impuestoItem, impueste);
|
||||
agregarHijoPadre(doc, detalle1, impuestoItem);
|
||||
agregarHijoPadre(doc, detalles, detalle1);
|
||||
|
||||
/**
|
||||
* **** custodios
|
||||
*/
|
||||
if (solicitudTramite.getValorcustodios() != null && solicitudTramite.getValorcustodios().doubleValue() > 0) {
|
||||
Element detalle2 = crearElementoSinTexto(doc, "detalle");
|
||||
String codigoPrincipal2 = tCustodio.getNumbervalue().toString().contains(".")
|
||||
? tCustodio.getNumbervalue().toString().split("\\.")[0] : tCustodio.getNumbervalue().toString() ; int numeroDias = solicitud != null && solicitud.getNumerodiascustodios() != null ? solicitud.getNumerodiascustodios() : null;
|
||||
int numeroCustodios=solicitud != null ? solicitud.getNumerocustodios() : null;
|
||||
|
||||
String descripcion2 = String.format(tCustodio.getTextvalue(), numeroDias);
|
||||
Double precioUnitario2 = solicitudTramite.getValorcustodios().doubleValue()/ numeroCustodios;
|
||||
Double precioTotalSinImpuestos2 = solicitudTramite.getValorcustodios().doubleValue() ;
|
||||
|
||||
crearAgregarHijo(doc, detalle2, "codigoPrincipal", codigoPrincipal2);
|
||||
crearAgregarHijo(doc, detalle2, "descripcion", descripcion2);
|
||||
crearAgregarHijo(doc, detalle2, "cantidad", numeroCustodios + "");
|
||||
crearAgregarHijo(doc, detalle2, "precioUnitario", precioUnitario2.toString());
|
||||
crearAgregarHijo(doc, detalle2, "descuento", "0.00");
|
||||
crearAgregarHijo(doc, detalle2, "precioTotalSinImpuesto", precioTotalSinImpuestos2.toString());
|
||||
|
||||
Element impuestoItem2 = crearElementoSinTexto(doc, "impuestoItem");
|
||||
Element impueste2 = crearElementoSinTexto(doc, "impuesto");
|
||||
crearAgregarHijo(doc, impueste2, "impuesto", impuesto);
|
||||
crearAgregarHijo(doc, impueste2, "Porcentaje", porcentajeDescuento + "");
|
||||
crearAgregarHijo(doc, impueste2, "baseImponible", precioTotalSinImpuestos2.toString());
|
||||
agregarHijoPadre(doc, impuestoItem2, impueste2);
|
||||
agregarHijoPadre(doc, detalle2, impuestoItem2);
|
||||
agregarHijoPadre(doc, detalles, detalle2);
|
||||
|
||||
|
||||
}
|
||||
agregarHijoPadre(doc, factura, detalles);
|
||||
|
||||
/**
|
||||
* ========================= Pagos ================================
|
||||
*/
|
||||
Element pagos = crearElementoSinTexto(doc, "pagos");
|
||||
|
||||
Element pago = crearElementoSinTexto(doc, "pago");
|
||||
/**
|
||||
* formaPago: de momento, tocaria ver los nemonicos a futuro para pago con tarjeta
|
||||
*/
|
||||
String formaPago = "EF";
|
||||
|
||||
Double totalPagar = valorAPagar;
|
||||
crearAgregarHijo(doc, pago, "formaPago", formaPago);
|
||||
crearAgregarHijo(doc, pago, "total", totalPagar.toString());
|
||||
agregarHijoPadre(doc, pagos, pago);
|
||||
agregarHijoPadre(doc, factura, pagos);
|
||||
/**
|
||||
* ========================= INFOAdicional ========================
|
||||
*/
|
||||
String mail = correo != null ? correo.getAddress() : noDisponible;
|
||||
String telefonoFijo = telefono != null ? telefono.getPhonenumber() : noDisponible;
|
||||
if (telefonoFijo.contains("-")) {
|
||||
telefonoFijo = telefonoFijo.split("-")[1];
|
||||
}
|
||||
TgeneCity Tciudad = null;
|
||||
if (direccionDomicilio != null) {
|
||||
Tciudad = CityController.findOnlyOne(direccionDomicilio.getCountrycode(),
|
||||
direccionDomicilio.getProvincecode(), direccionDomicilio.getCantoncode(), direccionDomicilio.getCitycode());
|
||||
}
|
||||
|
||||
String ciudad = Tciudad != null ? Tciudad.getDescription() : noDisponible;
|
||||
|
||||
Element infoAdicional = crearElementoSinTexto(doc, "infoAdicional");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", mail, "nombre", "Mail");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", telefonoFijo, "nombre", "Telefono");
|
||||
crearAgregarHijoAtributo(doc, infoAdicional, "campoAdicional", ciudad, "nombre", "Ciudad");
|
||||
agregarHijoPadre(doc, factura, infoAdicional);
|
||||
|
||||
//Se escribe el contenido del XML en un archivo
|
||||
TransformerFactory transformerFactory = TransformerFactory.newInstance();
|
||||
Transformer transformer = transformerFactory.newTransformer();
|
||||
DOMSource source = new DOMSource(doc);
|
||||
|
||||
File archivo = new File(carpetaBase, String.format("%s.xml", solicitud.getNumerosolicitud()));
|
||||
StreamResult result = new StreamResult(archivo);
|
||||
transformer.transform(source, result);
|
||||
|
||||
try {
|
||||
crearAuditoria(solicitud.getPk(), tsafeUserDetail.getPk().getUsercode(),
|
||||
solicitud.getNumerosolicitud(), solicitudTramite.getNumerotramite(),
|
||||
archivo.getAbsolutePath());
|
||||
|
||||
} catch (Exception e) {
|
||||
System.out.println("Error al generar auditoria desde el front>>< "+ e.toString());
|
||||
}
|
||||
return archivo;
|
||||
}
|
||||
public String obtenerContenidoArchivo(String archivo) throws FileNotFoundException, IOException {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
FileReader f = new FileReader(archivo);
|
||||
String cadena;
|
||||
BufferedReader b = new BufferedReader(f);
|
||||
while((cadena = b.readLine())!=null) {
|
||||
sb.append(cadena.concat("\n"));
|
||||
}
|
||||
b.close();
|
||||
return sb.toString();
|
||||
}
|
||||
public void crearAuditoria( String csoli,String user, String solicitudNumber, String tramiteNumber,String path) throws Exception{
|
||||
InvoiceHistoryController iv = new InvoiceHistoryController(); /**========> NO OPTIMO, USADO PARA PRUEBAS*/
|
||||
TarmInvoiceHistory tih = new TarmInvoiceHistory();
|
||||
tih.setCsolicitud(csoli);
|
||||
tih.setUsercode(user);
|
||||
tih.setRegistrationdate(new java.sql.Timestamp(Calendar.getInstance().getTimeInMillis()));
|
||||
tih.setSolicitudnumber(solicitudNumber);
|
||||
tih.setTramitenumber(tramiteNumber);
|
||||
tih.setPathfile(path);
|
||||
tih.setContentfile(obtenerContenidoArchivo(path));
|
||||
iv.setRecord(tih);
|
||||
iv.save();
|
||||
}
|
||||
|
||||
public void generarFacturas(String csolicitud) {
|
||||
try {
|
||||
TsafeUserDetail tsafeUserDetail = (TsafeUserDetail) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("TSAFEUSERDETAIL");
|
||||
|
||||
String folderPath = find("PATHFACTURASXML", "1").getTextvalue();
|
||||
folderPath = folderPath.concat("FRONTEND").concat("/");
|
||||
File carpetaBase = new File(folderPath);
|
||||
carpetaBase.mkdirs();
|
||||
File arch = sacarFactura(csolicitud, carpetaBase, tsafeUserDetail );
|
||||
byte[] fileContent = Files.readAllBytes(Paths.get(arch.getAbsolutePath()));
|
||||
downloadFile(fileContent, "application/xml", arch.getName());
|
||||
|
||||
|
||||
|
||||
} catch (Exception ex) {
|
||||
System.out.println("Error al guardar el parametro >>>> " + ex.toString());
|
||||
Exceptions.printStackTrace(ex);
|
||||
}
|
||||
}
|
||||
|
||||
/** ======================= COPIADO DE ABRASTRACT CONTROLLER ==================*/
|
||||
public void downloadFile(byte[] fileByte, String contentType, String filename) {
|
||||
try {
|
||||
int read = 0;
|
||||
byte[] bytes = new byte[1024];
|
||||
|
||||
InputStream input = new ByteArrayInputStream(fileByte);
|
||||
FacesContext context = FacesContext.getCurrentInstance();
|
||||
ExternalContext external = context.getExternalContext();
|
||||
HttpServletResponse response = (HttpServletResponse) external
|
||||
.getResponse();
|
||||
response.setContentType(contentType);
|
||||
response.setHeader("Content-Disposition",
|
||||
"attachment; filename=\"" + filename+"\"");
|
||||
ServletOutputStream out = response.getOutputStream();
|
||||
|
||||
while ((read = input.read(bytes)) != -1) {
|
||||
out.write(bytes, 0, read);
|
||||
}
|
||||
out.flush();
|
||||
out.close();
|
||||
context.responseComplete();
|
||||
} catch (IOException ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,6 @@
|
|||
|
||||
<ui:define name="content">
|
||||
<h:form id="formTable">
|
||||
|
||||
<script >
|
||||
function resetFields(){
|
||||
document.getElementById("lugarDireccion").setAttribute("value", "");
|
||||
|
|
|
|||
|
|
@ -1,100 +1,100 @@
|
|||
<ui:composition
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:p="http://primefaces.org/ui"
|
||||
xmlns:pe="http://primefaces.org/ui/extensions"
|
||||
template="/WEB-INF/templates/template.xhtml"
|
||||
xmlns:maia="http://java.sun.com/jsf/composite/maiaComponents">
|
||||
xmlns:h="http://java.sun.com/jsf/html"
|
||||
xmlns:f="http://java.sun.com/jsf/core"
|
||||
xmlns:ui="http://java.sun.com/jsf/facelets"
|
||||
xmlns:p="http://primefaces.org/ui"
|
||||
xmlns:pe="http://primefaces.org/ui/extensions"
|
||||
template="/WEB-INF/templates/template.xhtml"
|
||||
xmlns:maia="http://java.sun.com/jsf/composite/maiaComponents">
|
||||
<ui:define name="content">
|
||||
|
||||
<h:form id="formTable">
|
||||
<maia:pageEvents controller="#{profileController}"
|
||||
queryProcess=":formTable:filters"
|
||||
queryUpdate=":formTable:group"
|
||||
focusContainer=":formTable:filters" />
|
||||
|
||||
<p:panelGrid id="filters" columns="4" styleClass="m-filters">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.lbl_filters}" />
|
||||
</f:facet>
|
||||
<p:outputLabel for="fpk" value="#{msg_general.lbl_code}:" />
|
||||
<p:inputText id="fpk" value="#{profileController.mfilters['pk']}" maxlength="20" style="width: 160px;">
|
||||
<pe:keyFilter regEx="/[\d\-]/"/>
|
||||
</p:inputText>
|
||||
|
||||
<p:outputLabel for="fdesc" value="#{msg_general.lbl_description}:" />
|
||||
<p:inputText id="fdesc" value="#{profileController.mfilters['description']}" maxlength="80" style="width: 480px;" onkeyup="Maia.forceupper(event, this);"/>
|
||||
</p:panelGrid>
|
||||
|
||||
<h:panelGrid columns="7" id="controls" styleClass="m-controls">
|
||||
<maia:pageControls controller="#{profileController}"
|
||||
queryProcess=":formTable:filters"
|
||||
queryUpdate=":formTable:filters :formTable:group"
|
||||
createUpdate=":formGroup:pEdit"
|
||||
dialogWidgetVar="dialog" />
|
||||
</h:panelGrid>
|
||||
|
||||
<p:panelGrid id="data-content" columns="1" styleClass="m-data-content">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.htbl_profiles}" />
|
||||
</f:facet>
|
||||
<p:dataTable id="group" var="row" value="#{profileController.lrecord}" rows="200" style="min-width: 500px; width: auto;" rowKey="#{row.rowkey()}" selectionMode="single">
|
||||
<p:column headerText="#{msg_general.lbl_code}" resizable="true" style="width:150px" sortBy="#{row.pk}">
|
||||
<h:outputText value="#{row.pk}" />
|
||||
</p:column>
|
||||
<p:column headerText="#{msg_general.lbl_description}" resizable="true" sortBy="#{row.description}">
|
||||
<h:outputText value="#{row.description}" />
|
||||
</p:column>
|
||||
<p:column>
|
||||
<p:commandButton value="#{msg_general.btn_edit}" update=":formGroup:pEdit" oncomplete="dialog.show();Maia.focus('formTable\\:idSave');" styleClass="m-action-button" icon="ui-icon-pencil" process="@this, group">
|
||||
<f:setPropertyActionListener target="#{profileController.record}" value="#{row}" />
|
||||
<f:setPropertyActionListener target="#{profileController.newRow}" value="#{false}" />
|
||||
</p:commandButton>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<p:commandButton value="#{msg_general.btn_delete}" update=":formTable:group" styleClass="m-action-button" icon="ui-icon-trash" action="#{profileController.remove()}" process="@this, group" oncomplete="Maia.focus('formTable\\:idSave');">
|
||||
<f:setPropertyActionListener target="#{profileController.record}" value="#{row}" />
|
||||
</p:commandButton>
|
||||
</p:column>
|
||||
|
||||
|
||||
</p:dataTable>
|
||||
</p:panelGrid>
|
||||
</h:form>
|
||||
<h:form id="formTable">
|
||||
<maia:pageEvents controller="#{profileController}"
|
||||
queryProcess=":formTable:filters"
|
||||
queryUpdate=":formTable:group"
|
||||
focusContainer=":formTable:filters" />
|
||||
|
||||
<p:dialog widgetVar="dialog" resizable="false" closeOnEscape="true" modal="true" appendTo="@(body)" showEffect="explode" hideEffect="explode"
|
||||
styleClass="m-dialog">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.lbl_createoredit}" />
|
||||
</f:facet>
|
||||
<h:form id="formGroup">
|
||||
<p:messages id="messages" autoUpdate="true" globalOnly="true"/>
|
||||
<h:panelGrid id="pEdit" columns="3" bodyrows="1" >
|
||||
<p:outputLabel for="code" value="#{msg_bpm.lbl_code}:" />
|
||||
<h:outputText rendered="#{!profileController.newRow}" value="#{profileController.record.pk}"/>
|
||||
<p:inputText id="code"
|
||||
rendered="#{profileController.newRow}"
|
||||
value="#{profileController.record.pk}"
|
||||
required="true" maxlength="30"
|
||||
style="width:160px;" />
|
||||
<p:message for="code" />
|
||||
|
||||
<p:outputLabel for="descripcion" value="#{msg_general.lbl_description}:" />
|
||||
<p:inputText id="descripcion"
|
||||
value="#{profileController.record.description}"
|
||||
required="true" maxlength="80"
|
||||
onkeyup="Maia.forceupper(event, this);" style="width:480px;" />
|
||||
<p:message for="descripcion" />
|
||||
</h:panelGrid>
|
||||
<h:panelGrid columns="2" >
|
||||
<maia:dialogControls controller="#{profileController}"
|
||||
process=":formGroup:pEdit"
|
||||
update=":formGroup:pEdit :formTable:group"
|
||||
dialogWidgetVar="dialog" />
|
||||
</h:panelGrid>
|
||||
</h:form>
|
||||
</p:dialog>
|
||||
<p:panelGrid id="filters" columns="4" styleClass="m-filters">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.lbl_filters}" />
|
||||
</f:facet>
|
||||
<p:outputLabel for="fpk" value="#{msg_general.lbl_code}:" />
|
||||
<p:inputText id="fpk" value="#{profileController.mfilters['pk']}" maxlength="20" style="width: 160px;">
|
||||
<pe:keyFilter regEx="/[\d\-]/"/>
|
||||
</p:inputText>
|
||||
|
||||
<p:outputLabel for="fdesc" value="#{msg_general.lbl_description}:" />
|
||||
<p:inputText id="fdesc" value="#{profileController.mfilters['description']}" maxlength="80" style="width: 480px;" onkeyup="Maia.forceupper(event, this);"/>
|
||||
</p:panelGrid>
|
||||
|
||||
<h:panelGrid columns="7" id="controls" styleClass="m-controls">
|
||||
<maia:pageControls controller="#{profileController}"
|
||||
queryProcess=":formTable:filters"
|
||||
queryUpdate=":formTable:filters :formTable:group"
|
||||
createUpdate=":formGroup:pEdit"
|
||||
dialogWidgetVar="dialog" />
|
||||
</h:panelGrid>
|
||||
|
||||
<p:panelGrid id="data-content" columns="1" styleClass="m-data-content">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.htbl_profiles}" />
|
||||
</f:facet>
|
||||
<p:dataTable id="group" var="row" value="#{profileController.lrecord}" rows="200" style="min-width: 500px; width: auto;" rowKey="#{row.rowkey()}" selectionMode="single">
|
||||
<p:column headerText="#{msg_general.lbl_code}" resizable="true" style="width:150px" sortBy="#{row.pk}">
|
||||
<h:outputText value="#{row.pk}" />
|
||||
</p:column>
|
||||
<p:column headerText="#{msg_general.lbl_description}" resizable="true" sortBy="#{row.description}">
|
||||
<h:outputText value="#{row.description}" />
|
||||
</p:column>
|
||||
<p:column>
|
||||
<p:commandButton value="#{msg_general.btn_edit}" update=":formGroup:pEdit" oncomplete="dialog.show();Maia.focus('formTable\\:idSave');" styleClass="m-action-button" icon="ui-icon-pencil" process="@this, group">
|
||||
<f:setPropertyActionListener target="#{profileController.record}" value="#{row}" />
|
||||
<f:setPropertyActionListener target="#{profileController.newRow}" value="#{false}" />
|
||||
</p:commandButton>
|
||||
</p:column>
|
||||
<p:column>
|
||||
<p:commandButton value="#{msg_general.btn_delete}" update=":formTable:group" styleClass="m-action-button" icon="ui-icon-trash" action="#{profileController.remove()}" process="@this, group" oncomplete="Maia.focus('formTable\\:idSave');">
|
||||
<f:setPropertyActionListener target="#{profileController.record}" value="#{row}" />
|
||||
</p:commandButton>
|
||||
</p:column>
|
||||
|
||||
|
||||
</p:dataTable>
|
||||
</p:panelGrid>
|
||||
</h:form>
|
||||
|
||||
<p:dialog widgetVar="dialog" resizable="false" closeOnEscape="true" modal="true" appendTo="@(body)" showEffect="explode" hideEffect="explode"
|
||||
styleClass="m-dialog">
|
||||
<f:facet name="header">
|
||||
<h:outputText value="#{msg_general.lbl_createoredit}" />
|
||||
</f:facet>
|
||||
<h:form id="formGroup">
|
||||
<p:messages id="messages" autoUpdate="true" globalOnly="true"/>
|
||||
<h:panelGrid id="pEdit" columns="3" bodyrows="1" >
|
||||
<p:outputLabel for="code" value="#{msg_bpm.lbl_code}:" />
|
||||
<h:outputText rendered="#{!profileController.newRow}" value="#{profileController.record.pk}"/>
|
||||
<p:inputText id="code"
|
||||
rendered="#{profileController.newRow}"
|
||||
value="#{profileController.record.pk}"
|
||||
required="true" maxlength="30"
|
||||
style="width:160px;" />
|
||||
<p:message for="code" />
|
||||
|
||||
<p:outputLabel for="descripcion" value="#{msg_general.lbl_description}:" />
|
||||
<p:inputText id="descripcion"
|
||||
value="#{profileController.record.description}"
|
||||
required="true" maxlength="80"
|
||||
onkeyup="Maia.forceupper(event, this);" style="width:480px;" />
|
||||
<p:message for="descripcion" />
|
||||
</h:panelGrid>
|
||||
<h:panelGrid columns="2" >
|
||||
<maia:dialogControls controller="#{profileController}"
|
||||
process=":formGroup:pEdit"
|
||||
update=":formGroup:pEdit :formTable:group"
|
||||
dialogWidgetVar="dialog" />
|
||||
</h:panelGrid>
|
||||
</h:form>
|
||||
</p:dialog>
|
||||
|
||||
</ui:define>
|
||||
</ui:composition>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue