Kaynağa Gözat

[FIX] button position

Rodney Enciso Arias 7 yıl önce
ebeveyn
işleme
c670ece561
3 değiştirilmiş dosya ile 33 ekleme ve 25 silme
  1. 27 20
      static/src/js/voucher.js
  2. 5 4
      static/src/xml/voucher.xml
  3. 1 1
      views/voucher_print.xml

+ 27 - 20
static/src/js/voucher.js

@@ -1,10 +1,8 @@
-(function(){
-    "use strict";
+openerp.partner_print_voucher = function (instance, local) {
+    local.widgetInstance = null;
+    local.parentInstance = null;
 
-    var QWeb = openerp.web.qweb;
-    openerp.partner_print_voucher = {};
-
-    openerp.partner_print_voucher.PrintVoucherWidget = openerp.Widget.extend({
+    local.PrintVoucherWidget = instance.Widget.extend({
         template : "partner_print_voucher.PrintVoucher",
         resVoucher:[],
         resPartner:[],
@@ -15,6 +13,10 @@
         init:function(parent){
             this._super(parent);
         },
+        updateId : function(id){
+            var self = this;
+            self.id=id;
+        },
         start: function () {
             var self = this;
             this.$el.click(function (e) {
@@ -49,7 +51,7 @@
             var defer = $.Deferred();
             var fields=['id','number','journal_id','partner_id','amount','date','reference','company_id','currency_id'];
             var domain=[['id','=', id]];
-            var Voucher = new openerp.web.Model('account.voucher');
+            var Voucher = new instance.web.Model('account.voucher');
             Voucher.query(fields).filter(domain).order_by('id').all().then(function(results){
                 defer.resolve(results);
             });
@@ -64,7 +66,7 @@
             }));
             var fields=['id','name','street','street2','state_id', 'country_id'];
             var domain=[['id','=', partner_id]];
-            var Partner = new openerp.web.Model('res.partner');
+            var Partner = new instance.web.Model('res.partner');
             Partner.query(fields).filter(domain).order_by('id').all().then(function(results){
                 defer.resolve(results);
             });
@@ -79,7 +81,7 @@
             }));
             var fields=['id','name','street','street2','state_id', 'country_id'];
             var domain=[['id','=', company_id]];
-            var Company = new openerp.web.Model('res.company');
+            var Company = new instance.web.Model('res.company');
             Company.query(fields).filter(domain).order_by('id').all().then(function(results){
                 defer.resolve(results);
             });
@@ -94,7 +96,7 @@
             }));
             var fields=['id','name','symbol'];
             var domain=[['id','=', currency_id]];
-            var Currency = new openerp.web.Model('res.currency');
+            var Currency = new instance.web.Model('res.currency');
             Currency.query(fields).filter(domain).order_by('id').all().then(function(results){
                 defer.resolve(results);
             });
@@ -104,7 +106,7 @@
             var valor ="";
             if (dato){
                 if(dato == true && typeof dato == 'boolean'){
-                    valor="X";
+                    valor=" ";
                 }else{
                     valor=dato;
                 }
@@ -180,16 +182,21 @@
             };
         },
     });
-    if(openerp.web && openerp.web.FormView){
-        openerp.web.FormView.include({
-            load_form: function(){
-                if(this.model === 'account.voucher'){
-                    var padre = this.$el.find('.oe_form_container');
-                    var partnerPrint = new openerp.partner_print_voucher.PrintVoucherWidget(this);
-                    partnerPrint.appendTo(padre);
+    if (instance.web && instance.web.FormView) {
+        instance.web.FormView.include({
+            load_form: function (record) {
+                this._super.apply(this, arguments);
+                if (this.model !== 'account.voucher') return;
+                local.parentInstance = this;
+                if (local.widgetInstance) {
+                    local.widgetInstance.updateId(record.id);
                 }
-                return this._super.apply(this, arguments);
+                local.widgetInstance = new local.PrintVoucherWidget(this);
+                var elemento = this.$el.find('.oe_form_sheet.oe_form_sheet_width');
+                elemento =  elemento.find('.oe_right.oe_button_box.voucher_button_box');
+                local.widgetInstance.appendTo(elemento);
+                local.widgetInstance.updateId(record.id);
             }
         });
     }
-})();
+}

+ 5 - 4
static/src/xml/voucher.xml

@@ -5,9 +5,10 @@
             <div class="stat_button_icon fa fa-exchange"></div>
             <div>Imprimir recibo</div>
         </button>
-        <!-- <button class="print_voucher oe_button oe_form_button_save oe_highlight">
-          <i class="fa fa-print"></i>
-          Crédito del Cliente
-        </button> -->
+        <!-- <ul class="oe_dropdown_menu oe_opened">
+            <li class="oe_sidebar_print">
+                <a class="oe_sidebar_action_a print_voucher" target="_blank" data-index="0" data-section="print">Recibo de dinero</a>
+            </li>
+        </ul> -->
     </t>
 </template>

+ 1 - 1
views/voucher_print.xml

@@ -7,7 +7,7 @@
             <field name="inherit_id" ref="account_voucher.view_vendor_receipt_form"/>
             <field name="arch" type="xml">
                 <field name="number" position="before">
-					<div class="print_voucher oe_right oe_button_box" id="print_voucher"></div>
+					<div class="voucher_button_box oe_right oe_button_box" id="voucher_button_container"></div>
 				</field>
             </field>
         </record>