/grails-app/services/contabilidad/FolioService.groovy
Groovy | 71 lines | 65 code | 6 blank | 0 comment | 6 complexity | 1ab2a25d2f94cb85365db3d246c32e62 MD5 | raw file
1package contabilidad 2 3import general.Usuario 4import java.text.* 5 6class FolioService { 7 def springSecurityService 8 static NumberFormat nf 9 10 def temporal() { 11 def usuario = springSecurityService.currentUser 12 def codigos = Usuario.executeQuery("select new map(usuario.empresa.organizacion.codigo as organizacion, usuario.empresa.codigo as empresa) from Usuario usuario where usuario = ?", [usuario]) 13 def folio = Folio.findByNombreAndEmpresa('TEMPORAL', usuario.empresa) 14 if (!folio) { 15 folio = new Folio( 16 nombre : 'TEMPORAL' 17 , empresa : usuario.empresa 18 ) 19 } 20 folio.valor++ 21 folio.save() 22 if (!nf) { 23 inicializaNumberFormat() 24 } 25 return "T-${codigos[0].organizacion}${codigos[0].empresa}${nf.format(folio.valor)}" 26 } 27 28 def poliza() { 29 def usuario = springSecurityService.currentUser 30 def codigos = Usuario.executeQuery("select new map(usuario.empresa.organizacion.codigo as organizacion, usuario.empresa.codigo as empresa) from Usuario usuario where usuario = ?", [usuario]) 31 def folio = Folio.findByNombreAndEmpresa('POLIZA', usuario.empresa) 32 if (!folio) { 33 folio = new Folio( 34 nombre : 'POLIZA' 35 , empresa : usuario.empresa 36 ) 37 } 38 folio.valor++ 39 folio.save() 40 if (!nf) { 41 inicializaNumberFormat() 42 } 43 return "P-${codigos[0].organizacion}${codigos[0].empresa}${nf.format(folio.valor)}" 44 } 45 46 def transaccion() { 47 def usuario = springSecurityService.currentUser 48 def codigos = Usuario.executeQuery("select new map(usuario.empresa.organizacion.codigo as organizacion, usuario.empresa.codigo as empresa) from Usuario usuario where usuario = ?", [usuario]) 49 def folio = Folio.findByNombreAndEmpresa('TRANSACCION', usuario.empresa) 50 if (!folio) { 51 folio = new Folio( 52 nombre : 'TRANSACCION' 53 , empresa : usuario.empresa 54 ) 55 } 56 folio.valor++ 57 folio.save() 58 if (!nf) { 59 inicializaNumberFormat() 60 } 61 return "M-${codigos[0].organizacion}${codigos[0].empresa}${nf.format(folio.valor)}" 62 } 63 64 def inicializaNumberFormat() { 65 nf = DecimalFormat.getInstance() 66 nf.setGroupingUsed(false) 67 nf.setMinimumIntegerDigits(9) 68 nf.setMaximumIntegerDigits(9) 69 nf.setMaximumFractionDigits(0) 70 } 71}