|
@@ -8,7 +8,6 @@
|
|
|
template: 'payslip_add.FaultsWidget',
|
|
|
row_id_select: undefined,
|
|
|
workedDays: [],
|
|
|
-
|
|
|
/* init */
|
|
|
init: function (parent) {
|
|
|
this._super(parent);
|
|
@@ -52,22 +51,22 @@
|
|
|
** -------------------------------------------------------------------*/
|
|
|
/* Description: Función Inicial para recalcular las faltas*/
|
|
|
fectchRecomputeSheet: function() {
|
|
|
- var self= this;
|
|
|
+ var self = this;
|
|
|
self.$el.find('.refresh-faults').attr("disabled", true);
|
|
|
self.recomputeSheet().then(function(results) {
|
|
|
return results;
|
|
|
- }).then(function(){
|
|
|
+ }).then(function() {
|
|
|
self.$el.find('.refresh-faults').removeAttr("disabled");
|
|
|
- self.reloadLine()
|
|
|
+ self.reloadLine();
|
|
|
});
|
|
|
},
|
|
|
/* Description: Función para recalcular las faltas */
|
|
|
- recomputeSheet: function(){
|
|
|
+ recomputeSheet: function() {
|
|
|
var self = this;
|
|
|
var defer = $.Deferred();
|
|
|
var recomputePayslip = new openerp.web.Model('hr.payslip');
|
|
|
|
|
|
- recomputePayslip.call('recompute_sheet',[ self.id ],{
|
|
|
+ recomputePayslip.call('recompute_sheet',[ self.id ], {
|
|
|
context: new openerp.web.CompoundContext()
|
|
|
}).then(function(results) {
|
|
|
defer.resolve(results);
|
|
@@ -95,7 +94,7 @@
|
|
|
// Close modal
|
|
|
$('.expired-account-modal').on('hidden.bs.modal', function (e) {
|
|
|
results = false;
|
|
|
- defer.resolve(results)
|
|
|
+ defer.resolve(results);
|
|
|
self.removeModal(e);
|
|
|
});
|
|
|
// Add faults
|
|
@@ -103,7 +102,7 @@
|
|
|
var details = $('.expired-account-modal').find('.payslip-details').val();
|
|
|
var number = $('.expired-account-modal').find('.payslip-number-days').val();
|
|
|
|
|
|
- if (!details){
|
|
|
+ if (!details) {
|
|
|
openerp.web.notification.do_warn("Atención","Definir un motivo de la falta .");
|
|
|
$('.expired-account-modal').find('.payslip-details').css('border-color','red');
|
|
|
return
|
|
@@ -111,20 +110,22 @@
|
|
|
$('.expired-account-modal').find('.payslip-details').css('border-color','#ccc');
|
|
|
}
|
|
|
|
|
|
- if (number <= 0){
|
|
|
+ if (number <= 0) {
|
|
|
openerp.web.notification.do_warn("Atención","Días no trabajado, debe ser mayor que 0.");
|
|
|
$('.expired-account-modal').find('.payslip-number-days').css('border-color','red');
|
|
|
return
|
|
|
} else {
|
|
|
$('.expired-account-modal').find('.payslip-number-days').css('border-color','#ccc');
|
|
|
}
|
|
|
- self.joinPayslipFaults(number, details).then(function(results){
|
|
|
+
|
|
|
+ self.joinPayslipFaults(number, details).then(function(results) {
|
|
|
return results;
|
|
|
}).then(function(results){
|
|
|
self.reloadLine()
|
|
|
if (!results)
|
|
|
results = false;
|
|
|
});
|
|
|
+
|
|
|
defer.resolve(results);
|
|
|
self.removeModal(e);
|
|
|
});
|
|
@@ -157,17 +158,16 @@
|
|
|
/* Description: Funcion Inicial Modify/Unlink Faltas*/
|
|
|
fectchUpdateFaults: function() {
|
|
|
var self = this;
|
|
|
-
|
|
|
self.fectchWorkedDays().then(function(workedDays) {
|
|
|
return workedDays;
|
|
|
}).then(function(workedDays) {
|
|
|
self.workedDays = workedDays;
|
|
|
return self.showPayslipModifyFaults();
|
|
|
- }).then(function(results){
|
|
|
+ }).then(function() {
|
|
|
return self.recomputeSheet();
|
|
|
- }).then(function(){
|
|
|
- return self.reloadLine()
|
|
|
- })
|
|
|
+ }).then(function() {
|
|
|
+ return self.reloadLine();
|
|
|
+ });
|
|
|
},
|
|
|
/* Description : Consultar hr.payslip.worked_days */
|
|
|
fectchWorkedDays: function() {
|
|
@@ -187,11 +187,17 @@
|
|
|
/* Description: */
|
|
|
showPayslipModifyFaults: function() {
|
|
|
var self = this;
|
|
|
- var defer =$.Deferred();
|
|
|
+ var defer = $.Deferred();
|
|
|
var row_modify = null;
|
|
|
var results = true;
|
|
|
|
|
|
- var modal = QWeb.render('EiruPayslipModifyFaults',{
|
|
|
+ if (self.workedDays.length === 0) {
|
|
|
+ openerp.web.notification.do_warn("Atención","No existe falta para modificar o eliminar");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ var modal = QWeb.render('EiruPayslipModifyFaults',
|
|
|
+ {
|
|
|
workedDays: self.workedDays
|
|
|
});
|
|
|
|
|
@@ -202,27 +208,28 @@
|
|
|
/* Close modal */
|
|
|
$('.expired-account-modal').on('hidden.bs.modal', function (e) {
|
|
|
results = true;
|
|
|
- defer.resolve(results)
|
|
|
+ defer.resolve(results);
|
|
|
self.removeModal(e);
|
|
|
});
|
|
|
/* Eliminar */
|
|
|
- var unlink_faults= $('.expired-account-modal').find('.unlink-faults')
|
|
|
- unlink_faults.click(function(e){
|
|
|
- var unlink_row = parseInt($(e.target).closest('td').closest('tr').children()[0].textContent);
|
|
|
- $(e.target).closest('td').closest('tr').remove()
|
|
|
-
|
|
|
- self.unlink_faults_payslip(unlink_row).then(function(results) {
|
|
|
- defer.resolve(results);
|
|
|
- })
|
|
|
+ var unlink_faults = $('.expired-account-modal').find('.unlink-faults');
|
|
|
+ unlink_faults.click(function(e) {
|
|
|
+ var unlink_row = parseInt($(e.target).closest('td').closest('tr').children()[0].textContent);
|
|
|
+ $(e.target).closest('td').closest('tr').remove();
|
|
|
|
|
|
- })
|
|
|
+ self.unlink_faults_payslip(unlink_row).then(function(results) {
|
|
|
+ return results;
|
|
|
+ }).then(function() {
|
|
|
+ self.recomputeSheet();
|
|
|
+ });
|
|
|
+ });
|
|
|
|
|
|
/* Modificar*/
|
|
|
var contenido = $('.expired-account-modal').find('.table-tbody').find('tr');
|
|
|
contenido.click(function (e) {
|
|
|
row_modify = $(e.target);
|
|
|
if (($(e.target).index() === 3) || ($(e.target).index() === 0))
|
|
|
- return
|
|
|
+ return;
|
|
|
|
|
|
$(contenido).removeClass('table-row-select');
|
|
|
$(e.target).closest('tr').addClass('table-row-select');
|
|
@@ -232,48 +239,49 @@
|
|
|
var descrip = $(e.target).closest('tr').children()[1].textContent;
|
|
|
var worked_days = $(e.target).closest('tr').children()[2].textContent;
|
|
|
|
|
|
- $('.expired-account-modal').find('.payslip-details-modify').val(descrip.trim())
|
|
|
- $('.expired-account-modal').find('.payslip-number-days-modify').val(parseInt(worked_days))
|
|
|
+ $('.expired-account-modal').find('.payslip-details-modify').val(descrip.trim());
|
|
|
+ $('.expired-account-modal').find('.payslip-number-days-modify').val(parseInt(worked_days));
|
|
|
$('.expired-account-modal').find('.modify-faults').removeAttr("disabled");
|
|
|
});
|
|
|
|
|
|
/* Click boton Modificar */
|
|
|
var modify = $('.expired-account-modal').find('.modify-faults');
|
|
|
- modify.click(function(e){
|
|
|
- var descrip = $('.expired-account-modal').find('.payslip-details-modify').val()
|
|
|
- var number = $('.expired-account-modal').find('.payslip-number-days-modify').val()
|
|
|
+ modify.click(function(){
|
|
|
+ var descrip = $('.expired-account-modal').find('.payslip-details-modify').val();
|
|
|
+ var number = $('.expired-account-modal').find('.payslip-number-days-modify').val();
|
|
|
|
|
|
if (!descrip){
|
|
|
openerp.web.notification.do_warn("Atención","Definir un motivo de la falta .");
|
|
|
$('.expired-account-modal').find('.payslip-details-modify').css('border-color','red');
|
|
|
- return
|
|
|
+ return;
|
|
|
} else {
|
|
|
$('.expired-account-modal').find('.payslip-details-modify').css('border-color','#ccc');
|
|
|
}
|
|
|
if (number <= 0){
|
|
|
openerp.web.notification.do_warn("Atención","Días no trabajado, debe ser mayor que 0.");
|
|
|
$('.expired-account-modal').find('.payslip-number-days-modify').css('border-color','red');
|
|
|
- return
|
|
|
+ return;
|
|
|
} else {
|
|
|
$('.expired-account-modal').find('.payslip-number-days-modify').css('border-color','#ccc');
|
|
|
}
|
|
|
|
|
|
-
|
|
|
self.write_payslip_worked(self.row_id_select, descrip, number).then(function(results) {
|
|
|
- defer.resolve(results);
|
|
|
+ return results;
|
|
|
+ }).then(function() {
|
|
|
+ self.recomputeSheet();
|
|
|
})
|
|
|
|
|
|
/* Actualizar en el Grid */
|
|
|
- row_modify.closest('tr').children()[1].textContent = descrip
|
|
|
- row_modify.closest('tr').children()[2].textContent = number
|
|
|
+ row_modify.closest('tr').children()[1].textContent = descrip;
|
|
|
+ row_modify.closest('tr').children()[2].textContent = number;
|
|
|
|
|
|
- $('.expired-account-modal').find('.payslip-details-modify').val("")
|
|
|
- $('.expired-account-modal').find('.payslip-number-days-modify').val(0)
|
|
|
+ $('.expired-account-modal').find('.payslip-details-modify').val("");
|
|
|
+ $('.expired-account-modal').find('.payslip-number-days-modify').val(0);
|
|
|
|
|
|
$('.expired-account-modal').find('.modify-faults').attr("disabled", true);
|
|
|
})
|
|
|
|
|
|
- return defer
|
|
|
+ return defer;
|
|
|
},
|
|
|
/* Description: Eliminar Falta*/
|
|
|
unlink_faults_payslip: function(id) {
|
|
@@ -315,8 +323,6 @@
|
|
|
});
|
|
|
return defer;
|
|
|
},
|
|
|
-
|
|
|
-
|
|
|
});
|
|
|
|
|
|
if (openerp.web && openerp.web.FormView) {
|
|
@@ -349,5 +355,4 @@
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
-
|
|
|
})();
|