123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- function expired_account_counters_now (widget) {
- "use strict";
- var model= openerp;
- widget.ExpiredAccountCountersNowWidget = widget.Base.extend({
- template: 'ExpiredAccountCountersNow',
- // data : [],
- resPartner : [],
- moveLine : [],
- resCompany : [],
- init: function (parent) {
- this._super(parent, {
- width : 3,
- height: 2
- });
- },
- start: function () {
- var self = this;
- self.fecthInitial();
- },
- fecthInitial:function(){
- var self = this;
- self.$el.find('#morosidad').block({ message: null, overlayCSS: { backgroundColor: '#FAFAFA' }});
- self.$el.find('.widget-content.widget-loading').css('display','flex');
- self.fecthPartner().then(function(resPartner){
- return resPartner;
- }).then(function(resPartner){
- self.resPartner = resPartner;
- return self.fecthMoveLine(resPartner);
- }).then(function(moveLine){
- self.moveLine= moveLine;
- return self.fecthResComapny();
- }).then(function(resCompany){
- self.resCompany=resCompany;
- return self.fecthReduceMoveLine();
- });
- return false;
- },
- // Partner
- fecthPartner(){
- var self = this;
- var defer = $.Deferred();
- var fields =['id', 'name', 'unreconciled_aml_ids', 'credit'];
- var domain =[['active', '=', true], ['credit', '>', 0]];
- var resPartner = new model.web.Model('res.partner');
- resPartner.query(fields).filter(domain).all().then(function(results){
- defer.resolve(results);
- });
- return defer;
- },
- // Move line
- fecthMoveLine(partner){
- var self = this;
- var fecha = new Date();
- var hoy = (fecha.getFullYear()+"-"+(fecha.getMonth()+1)+"-"+fecha.getDate());
- var defer = $.Deferred();
- var move_id =_.flatten( _.map(partner, function(map){return map.unreconciled_aml_ids}));
- var field =['id', 'partner_id', 'amount_residual', 'credit', 'debit', 'date_maturity'];
- var domain=[['credit', '<=', 0],['id', '=', move_id],['date_maturity', '=', hoy]];
- var moveLine = new model.web.Model('account.move.line');
- moveLine.query(field).filter(domain).all().then(function(results){
- defer.resolve(results);
- });
- return defer;
- },
- //Comapnia
- fecthResComapny: function(){
- var self = this;
- var defer = $.Deferred();
- var fields =['id','name', 'currency_id','logo'];
- var domain =[['id', '=', 1]];
- var resComapy = new model.web.Model('res.company');
- resComapy.query(fields).filter(domain).all().then(function(results){
- defer.resolve(results);
- });
- return defer ;
- } ,
- // Reduce Move line
- fecthReduceMoveLine(){
- var self = this;
- var residual =0;
- var company = _.map(self.resCompany, function(map){return map.currency_id[1]});
- if (self.moveLine.length > 0){
- residual = _.reduce(_.map(self.moveLine, function(map){return map.amount_residual}),function(memo, num){return memo + num});
- }
- self.$el.find('#morosidad').unblock()
- self.$el.find('.widget-content.widget-loading').css('display','none');
- self.$el.find('.widget-content').find('a').text(accounting.formatNumber(residual,2, ".", ","));
- self.$el.find('.widget-footer').find('span').text("Monto en "+company);
- },
- });
- }
|