Merge lp:~inddiana/diana-addons/utilidades_sisb into lp:diana-addons

Proposed by Mauricio Jose Sanchez Puerta
Status: Merged
Merged at revision: 54
Proposed branch: lp:~inddiana/diana-addons/utilidades_sisb
Merge into: lp:diana-addons
Diff against target: 99 lines (+78/-0)
4 files modified
utilidades_sisb/__init__.py (+2/-0)
utilidades_sisb/__openerp__.py (+21/-0)
utilidades_sisb/model/__init__.py (+1/-0)
utilidades_sisb/model/utilidades_sisb.py (+54/-0)
To merge this branch: bzr merge lp:~inddiana/diana-addons/utilidades_sisb
Reviewer Review Type Date Requested Status
[SISB] Edgar Rivero Pending
Review via email: mp+275567@code.launchpad.net

Description of the change

creado modulo para guardar rutinas utilizadas por el sisb

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added directory 'utilidades_sisb'
2=== added file 'utilidades_sisb/__init__.py'
3--- utilidades_sisb/__init__.py 1970-01-01 00:00:00 +0000
4+++ utilidades_sisb/__init__.py 2015-10-23 18:55:46 +0000
5@@ -0,0 +1,2 @@
6+# -*- coding: utf-8 -*-
7+import model
8
9=== added file 'utilidades_sisb/__openerp__.py'
10--- utilidades_sisb/__openerp__.py 1970-01-01 00:00:00 +0000
11+++ utilidades_sisb/__openerp__.py 2015-10-23 18:55:46 +0000
12@@ -0,0 +1,21 @@
13+# -*- coding: utf-8 -*-
14+
15+{
16+ 'name' : 'Utilidades Sisb',
17+ 'version' : '0.1',
18+ 'author' : 'Industrias Diana, C.A. <sisb@industriasdiana.gob.ve>',
19+ 'description' : """
20+ Modulo para utilizar rutinas necesarias en
21+ modulos integrados al Sisb
22+ """,
23+ 'category' : 'Others',
24+ 'website' : 'www.industriasdiana.gob.ve',
25+ 'depends' : ['base'],
26+ 'update_xml' : [],
27+ 'active' : False,
28+ 'installable' : True,
29+ "external_dependencies" : {
30+ 'python' : ['qrcode'],
31+ },
32+ 'data' : [],
33+}
34
35=== added directory 'utilidades_sisb/model'
36=== added file 'utilidades_sisb/model/__init__.py'
37--- utilidades_sisb/model/__init__.py 1970-01-01 00:00:00 +0000
38+++ utilidades_sisb/model/__init__.py 2015-10-23 18:55:46 +0000
39@@ -0,0 +1,1 @@
40+import utilidades_sisb
41
42=== added file 'utilidades_sisb/model/utilidades_sisb.py'
43--- utilidades_sisb/model/utilidades_sisb.py 1970-01-01 00:00:00 +0000
44+++ utilidades_sisb/model/utilidades_sisb.py 2015-10-23 18:55:46 +0000
45@@ -0,0 +1,54 @@
46+# -*- encoding: utf-8 -*-
47+
48+from osv import fields, osv
49+import time
50+from datetime import datetime
51+
52+
53+class utilidades_sisb(osv.osv):
54+ _name = "utilidades.sisb"
55+ _description = "utilidades Sisb"
56+
57+ def generate_base64(self,initial_data):
58+ import base64
59+ encoded_data = base64.b64encode(initial_data)
60+ num_initial = len(initial_data)
61+ padding = { 0:0, 1:2, 2:1 }[num_initial % 3]
62+ salida = ""
63+ for i in xrange((len(encoded_data)/76)+1):
64+ e = encoded_data[i*76:(i+1)*76]
65+ salida = salida + e+'\n'
66+ return salida
67+
68+ def hashrandom(self):
69+ import random
70+ from hashlib import sha256
71+ from hashlib import md5
72+ import hmac
73+ import uuid
74+ import time
75+ import os
76+ ram = str(random.getrandbits(128))
77+ hash = hmac.new(os.urandom(32), ram+str(uuid.uuid4()), md5).hexdigest()
78+ return hash
79+
80+ def create_qrcode(self, string, version=1, correction='L'):
81+ import commands
82+ from qrcode import *
83+ error_correction = {'L':ERROR_CORRECT_L,
84+ 'M':ERROR_CORRECT_M,
85+ 'Q':ERROR_CORRECT_Q,
86+ 'H':ERROR_CORRECT_H}
87+
88+ fullname = "/tmp/qr_code.png"
89+ qr = QRCode(version=1, error_correction=error_correction[correction.upper()])
90+ qr.add_data(string)
91+ qr.make()
92+ im = qr.make_image()
93+ im.save(fullname)
94+ op = open(fullname, 'rt').read()
95+ commands.getoutput('rm %s'%fullname)
96+ encode_base64 = self.generate_base64(op)
97+ return encode_base64
98+
99+utilidades_sisb()

Subscribers

People subscribed via source and target branches