Refactorizar notas

This commit is contained in:
Mauricio Baeza 2018-01-10 23:39:47 -06:00
commit 1cd9b541a3
7 changed files with 62 additions and 81 deletions

View File

@ -1007,6 +1007,7 @@ class PrintTicket(object):
self._set('center', 'B', 'B', 2)
self._t(data['rfc'])
self._set('center', 'A')
self._t(data['regimen'])
self._t(data['address'])
return

View File

@ -3765,7 +3765,7 @@ class PreFacturasDetalle(BaseModel):
def facturar(cls, id):
data = []
q = PreFacturas.select(PreFacturas.cliente).where(PreFacturas.id==id)[0]
q = PreFacturas.select().where(PreFacturas.id==id)[0]
if q.cliente.forma_pago is None:
forma_pago = ''
else:
@ -3782,6 +3782,7 @@ class PreFacturasDetalle(BaseModel):
'rfc': q.cliente.rfc,
'forma_pago': forma_pago,
'uso_cfdi': uso_cfdi,
'notas': q.notas,
}
productos = PreFacturasDetalle.select().where(
@ -4416,6 +4417,7 @@ class Tickets(BaseModel):
formapago = SATFormaPago.get(SATFormaPago.key==obj['forma_pago'])
emisor = util.get_dict(Emisor.select().dicts()[0])
emisor['nointerior'] = emisor['no_interior']
emisor['noexterior'] = emisor['no_exterior']
emisor['codigopostal'] = emisor['codigo_postal']
@ -4467,11 +4469,13 @@ class Tickets(BaseModel):
def _format_ticket(self, id):
emisor = util.get_dict(Emisor.select().dicts()[0])
regimen = Emisor.select()[0].regimenes[0].name
ticket = Tickets.select().where(Tickets.id==id).dicts()[0]
products = TicketsDetalle.get_by_print(id)
print (regimen)
emisor['name'] = '{}\n'.format(emisor['nombre'])
emisor['rfc'] = 'RFC: {}\n'.format(emisor['rfc'])
emisor['regimen'] = 'Regimen: {}\n'.format(regimen)
interior = ''
if emisor['no_interior']:
interior = ', {}'.format(emisor['no_interior'])

View File

@ -651,11 +651,13 @@ function search_client_by_id(id){
function set_client(row){
showvar(row)
var form = $$('form_invoice')
var html = '<span class="webix_icon fa-user"></span><span class="lbl_partner">'
form.setValues({
id_partner:row.id, search_client_id:'', search_client_name:'',
forma_pago: row.forma_pago, uso_cfdi: row.uso_cfdi}, true)
forma_pago: row.forma_pago, uso_cfdi: row.uso_cfdi,
notas: row.notas}, true)
html += row.nombre + ' (' + row.rfc + ')</span>'
$$('lbl_client').setValue(html)
$$('cmd_cfdi_relacionados').enable()
@ -1306,6 +1308,7 @@ function cmd_prefactura_click(){
data['metodo_pago'] = $$('lst_metodo_pago').getValue()
data['uso_cfdi'] = $$('lst_uso_cfdi').getValue()
data['regimen_fiscal'] = $$('lst_regimen_fiscal').getValue()
data['notas'] = values.notas
if(!save_preinvoice(data)){
return
@ -1457,7 +1460,6 @@ function refacturar_preinvoice(id){
for(var p of values.rows){
agregar_preproducto(p)
}
//~ calculate_taxes()
calcular_impuestos()
$$('tv_invoice').getTabbar().setValue('Generar')
}
@ -1704,13 +1706,18 @@ function lst_serie_change(nv, ov){
function cmd_cfdi_notes_click(){
win_invoice_notes.init()
$$('win_cfdi_notes').show()
var values = $$('form_invoice').getValues()
$$('invoice_notes').setValue(values.notas)
$$('win_invoice_notes').show()
to_end('invoice_notes')
}
function cfdi_notes_key_up(){
var value = this.getValue()
function cmd_invoice_save_note_click(){
var value = $$('invoice_notes').getValue()
$$('form_invoice').setValues({notas: value}, true)
$$('win_invoice_notes').close()
}

View File

@ -34,7 +34,6 @@ var tickets_controllers = {
$$('grid_ticket_clients_found').attachEvent('onValueSuggest', grid_ticket_clients_found_click)
$$('grid_tdetails').attachEvent('onAfterRender', grid_tdetails_render)
webix.extend($$('grid_tickets'), webix.ProgressBar)
webix.extend($$('grid_tickets_active'), webix.ProgressBar)
}
@ -321,52 +320,11 @@ function calcular_precio_con_impuestos(precio, taxes){
}
function txt_ticket_new_cant_key_press(code, e){
var value = this.getValue()
if(code == 13){
var grid = $$('grid_tdetails')
var row = grid.getItem(grid.getFirstId())
var cant = value.to_float()
if(!cant){
cant = 1.0
}
if(cant != 1){
var precio_final = row.valor_unitario - row.descuento
importe = (cant * precio_final).round(DECIMALES)
grid.updateItem(row.id, {cantidad: cant, importe: importe})
grid.refresh()
}
$$('win_edit_cant').hide()
}
}
function edit_cant(){
function edit_cant(id){
if(!cfg_ticket['edit_cant']){
return
}
var row = $$('grid_tdetails').getItem($$('grid_tdetails').getFirstId())
var win = webix.ui({
view: 'window',
id: 'win_edit_cant',
autoheight: true,
modal: true,
position: 'center',
head: 'Captura la cantidad',
body: {rows: [{view: 'text', id: 'txt_ticket_new_cant', width: 150,
value: 1}]
},
})
$$('txt_ticket_new_cant').attachEvent('onKeyPress', txt_ticket_new_cant_key_press)
win.show(
$$('tsearch_product_name').getInputNode(),
{pos: "bottom", x: 50, y: 10}
)
focus('txt_ticket_new_cant')
$$('txt_ticket_new_cant').getInputNode().select()
$$('grid_tdetails').edit({row: id, column: 'cantidad'})
}
@ -383,8 +341,8 @@ function agregar_producto(values){
producto['valor_unitario'] = calcular_precio_con_impuestos(
parseFloat(producto['valor_unitario']), taxes)
producto['importe'] = producto['valor_unitario']
grid.add(producto, 0)
edit_cant()
var id = grid.add(producto, 0)
edit_cant(id)
}else{
producto['cantidad'] = parseFloat(row.cantidad) + 1
producto['descuento'] = parseFloat(row.descuento)
@ -726,12 +684,15 @@ function cmd_ticket_notes_click(){
var values = $$('form_new_ticket').getValues()
$$('ticket_notes').setValue(values.notas)
$$('win_ticket_notes').show()
to_end('ticket_notes')
}
function ticket_notes_key_up(){
var value = this.getValue()
function cmd_ticket_save_note_click(){
var value = $$('ticket_notes').getValue()
$$('form_new_ticket').setValues({notas: value}, true)
$$('win_ticket_notes').close()
}

View File

@ -50,6 +50,17 @@ function focus(name){
}
function to_end(name){
focus(name)
var txt = $$(name)
var pos = txt.getValue().length
var height = txt.getInputNode().scrollHeight
webix.html.setSelectionRange(txt.getInputNode(), pos)
txt.getInputNode().scrollTop = height
}
function showvar(values){
webix.message(JSON.stringify(values, null, 2))
}

View File

@ -138,11 +138,14 @@ var ui_invoice = {
}}
var body_cfdi_notes = {rows: [
{minHeight: 5, maxHeight: 5},
{view: 'textarea', id: 'cfdi_notes', name: 'cfdi_notes', height: 300,
placeholder: 'Captura las notas, se autoguarda al escribir.'},
{view: 'textarea', id: 'invoice_notes', name: 'invoice_notes', height: 300,
placeholder: 'Captura las notas.'},
{minHeight: 5, maxHeight: 5},
{cols: [{}, {view: 'button', id: 'cmd_invoice_save_note', autowidth: true,
label: 'Guardar y Cerrar', type: 'iconButton', hotkey: 'Ctrl+enter'},
{}]},
{minHeight: 5, maxHeight: 5},
]}
@ -151,22 +154,17 @@ var win_invoice_notes = {
init: function(){
webix.ui({
view: 'window',
id: 'win_cfdi_notes',
height: 350,
id: 'win_invoice_notes',
height: 400,
width: 500,
modal: true,
position: 'center',
head: {view: 'toolbar',
elements: [
{view: 'label', label: 'Notas'},
{view: 'icon', icon: 'times-circle',
click: '$$("win_cfdi_notes").close()'},
]
},
head: 'Notas',
body: body_cfdi_notes,
})
$$('cfdi_notes').attachEvent('onTimedKeyPress', cfdi_notes_key_up);
}}
$$('cmd_invoice_save_note').attachEvent('onItemClick', cmd_invoice_save_note_click)
}
}
var toolbar_invoices = [

View File

@ -178,7 +178,7 @@ var toolbar_new_ticket = {
view: 'toolbar', elements: [
{view: 'button', id: 'cmd_generar_ticket', label: 'Generar',
icon: 'ticket', type: 'iconButton', autowidth: true,
align: 'center'}, {},
align: 'center', hotkey: 'Ctrl+g'}, {},
{view: 'button', id: 'cmd_ticket_notes', label: 'Notas',
autowidth: true, type: 'iconButton', icon: 'commenting-o'}, {},
{view: 'button', id: 'cmd_cerrar_ticket', label: 'Cerrar',
@ -454,7 +454,11 @@ var app_tickets = {
var body_ticket_notes = {rows: [
{minHeight: 5, maxHeight: 5},
{view: 'textarea', id: 'ticket_notes', name: 'ticket_notes', height: 300,
placeholder: 'Captura las notas, se autoguarda al escribir.'},
placeholder: 'Captura las notas'},
{minHeight: 5, maxHeight: 5},
{cols: [{}, {view: 'button', id: 'cmd_ticket_save_note', autowidth: true,
label: 'Guardar y Cerrar', type: 'iconButton', hotkey: 'Ctrl+enter'},
{}]},
{minHeight: 5, maxHeight: 5},
]}
@ -464,18 +468,13 @@ var win_ticket_notes = {
webix.ui({
view: 'window',
id: 'win_ticket_notes',
height: 350,
height: 400,
width: 500,
modal: true,
position: 'center',
head: {view: 'toolbar',
elements: [
{view: 'label', label: 'Notas'},
{view: 'icon', icon: 'times-circle', hotkey: 'esc',
click: '$$("win_ticket_notes").close()'},
]
},
head: 'Notas',
body: body_ticket_notes,
})
$$('ticket_notes').attachEvent('onTimedKeyPress', ticket_notes_key_up);
}}
$$('cmd_ticket_save_note').attachEvent('onItemClick', cmd_ticket_save_note_click)
}
}