bep40 commited on
Commit
4997b56
·
verified ·
1 Parent(s): 9357760

Upload qr-payment.js

Browse files
Files changed (1) hide show
  1. qr-payment.js +15 -13
qr-payment.js CHANGED
@@ -1,5 +1,5 @@
1
- /* V.AI STUDIO — QR Payment / Quote Data v1049 - FIX TRIET DE: PHI + CK MA SP */
2
- (function(){'use strict';
3
 
4
  window.__VAI_BLOB_REG = window.__VAI_BLOB_REG || { blobs: [], isUnloading: false };
5
  var blobRegistry = window.__VAI_BLOB_REG.blobs;
@@ -127,7 +127,7 @@ function getPromptText(){
127
  var inputs=document.querySelectorAll('input,textarea');
128
  for(var j=0;j<inputs.length;j++){
129
  var ph=(inputs[j].placeholder||'').toLowerCase();
130
- if(ph.includes('yêu cầu')||ph.includes('chiết khấu')||ph.includes('yeu cau')||ph.includes('chiet khau')||ph.includes('ck')||ph.includes('giao hàng')||ph.includes('lắp')){
131
  var val=(inputs[j].value||'').trim();
132
  if(!val||val.toUpperCase().replace(/[\s.]/g,'')==='VAISTUDIO')continue;
133
  _lastPromptText=val;
@@ -144,8 +144,9 @@ function getData(){
144
  var surcharge=0;
145
  parsed.fees.forEach(function(f){surcharge+=f.amount;});
146
  var grandTotal=(qd.grandTotal||0)+surcharge;
147
- var remaining=grandTotal-parsed.deposit;
148
- return{qd:qd,fees:parsed.fees,notes:parsed.notes,discount:parsed.discount,deposit:parsed.deposit,grandTotal:grandTotal,remaining:remaining>0?remaining:0};
 
149
  }
150
 
151
  function orderToVAIData(order){
@@ -379,7 +380,7 @@ async function doOverride(){
379
  if(qd.customer)qd.customer.orderCode=getEffectiveOrderCode();
380
  return qd;
381
  };
382
- console.log('✅ QR Payment v1049 — FIX TRIET DE: PHI GIAO HANG, LAP DAT, COC VAO EXCEL');
383
  return true;
384
  }
385
 
@@ -413,7 +414,7 @@ async function _doExportDeliveryPDF(qd,code){
413
  pdf.save('GH-'+code+'.pdf');
414
  }
415
 
416
- // ===== EXPORT EXCEL - BAO GOM PHI - v1049 =====
417
  var WHITE={argb:'FFFFFFFF'};
418
  var HEAD_FILL={type:'pattern',pattern:'solid',fgColor:{argb:'FF003F62'}};
419
  var TOTAL_FILL={type:'pattern',pattern:'solid',fgColor:{argb:'FF003F62'}};
@@ -473,7 +474,7 @@ async function _doExportExcel(d,qd,code,qrUrl){
473
  cr++;
474
  }
475
 
476
- // FIX: THEM CAC DONG PHI (giao hàng, lắp đặt, cọc...)
477
  var fees = d.fees || [];
478
  var feeStartRow = cr;
479
  for(var f=0; f<fees.length; f++){
@@ -505,6 +506,7 @@ async function _doExportExcel(d,qd,code,qrUrl){
505
  ws.getCell('I'+cr).numFmt=MONEY_FMT;
506
  ws.getCell('I'+cr).font=GRAND_FONT;
507
 
 
508
  if(d.deposit>0){
509
  cr++;
510
  ws.getCell('A'+cr).value='Đã cọc: '+fmt(d.deposit);
@@ -540,10 +542,10 @@ async function _doExportDeliveryExcel(qd,code){
540
  ws.getCell('A1').value='PHIẾU GIAO HÀNG';
541
  ws.getCell('A1').font={bold:true,size:16,color:{argb:'FF003F62'}};
542
 
543
- ws.getCell('A2').value='KH: '+(qd.customer?qd.customer.name:'');
544
  ws.getCell('D2').value='Mã: '+code;
545
  ws.getCell('A3').value='SĐT: '+(qd.customer?qd.customer.phone:'');
546
- ws.getCell('A4').value='Địa chỉ: '+(qd.customer?qd.customer.addr||'':'');
547
 
548
  var hr=ws.getRow(6);
549
  ['STT','Tên sản phẩm','Mã SP','SL','Ghi chú'].forEach(function(h,i){
@@ -587,14 +589,14 @@ document.addEventListener('click',function(e){
587
  if(!btn)return;
588
  var txt=(btn.textContent||'').toLowerCase();
589
  if(!window._origGetQuoteData)return;
590
- if(txt.includes('excel')&&txt.includes('xuất')){
591
  e.preventDefault();e.stopPropagation();
592
  if(btn.dataset.vaiExporting==='1')return;
593
  setExportButtonState(btn,true);
594
  window.exportExcel().finally(function(){setExportButtonState(btn,false);});
595
  return false;
596
  }
597
- if((txt.includes('pdf')&&txt.includes('xuất'))||(txt.includes('pdf')&&!txt.includes('giao hàng'))){
598
  e.preventDefault();e.stopPropagation();
599
  if(btn.dataset.vaiExporting==='1')return;
600
  setExportButtonState(btn,true);
@@ -628,5 +630,5 @@ window.VAI_QR={
628
  orderToVAIData:orderToVAIData,
629
  _fixed:true
630
  };
631
- console.log('[VAI QR v1049 FIX] Loaded - Phí giao hàng, lắp đặt, cọc được thêm vào Excel báo giá & đơn hàng lưu');
632
  })();
 
1
+ /* V.AI STUDIO — QR Payment / Quote Data v1050 - FIX TRIET DE: PHI + CK MA SP */
2
+ (function(){'use strict'};
3
 
4
  window.__VAI_BLOB_REG = window.__VAI_BLOB_REG || { blobs: [], isUnloading: false };
5
  var blobRegistry = window.__VAI_BLOB_REG.blobs;
 
127
  var inputs=document.querySelectorAll('input,textarea');
128
  for(var j=0;j<inputs.length;j++){
129
  var ph=(inputs[j].placeholder||'').toLowerCase();
130
+ if(ph.indexOf('yêu cầu')>=0||ph.indexOf('chiết khấu')>=0||ph.indexOf('yeu cau')>=0||ph.indexOf('chiet khau')>=0||ph.indexOf('ck')>=0||ph.indexOf('giao hàng')>=0||ph.indexOf('lắp')>=0){
131
  var val=(inputs[j].value||'').trim();
132
  if(!val||val.toUpperCase().replace(/[\s.]/g,'')==='VAISTUDIO')continue;
133
  _lastPromptText=val;
 
144
  var surcharge=0;
145
  parsed.fees.forEach(function(f){surcharge+=f.amount;});
146
  var grandTotal=(qd.grandTotal||0)+surcharge;
147
+ var dep=parsed.deposit||0;
148
+ var remaining=grandTotal-dep;
149
+ return{qd:qd,fees:parsed.fees,notes:parsed.notes,discount:parsed.discount,deposit:dep,grandTotal:grandTotal,remaining:remaining>0?remaining:0};
150
  }
151
 
152
  function orderToVAIData(order){
 
380
  if(qd.customer)qd.customer.orderCode=getEffectiveOrderCode();
381
  return qd;
382
  };
383
+ console.log('✅ QR Payment v1050 — FIX TRIET DE: PHÍ GIAO HÀNG, LẮP ĐẶT, CỌC VÀO EXCEL');
384
  return true;
385
  }
386
 
 
414
  pdf.save('GH-'+code+'.pdf');
415
  }
416
 
417
+ // ===== EXPORT EXCEL - BAO GỒM PHÍ - v1050 =====
418
  var WHITE={argb:'FFFFFFFF'};
419
  var HEAD_FILL={type:'pattern',pattern:'solid',fgColor:{argb:'FF003F62'}};
420
  var TOTAL_FILL={type:'pattern',pattern:'solid',fgColor:{argb:'FF003F62'}};
 
474
  cr++;
475
  }
476
 
477
+ // FIX: THÊM CÁC DÒNG PHÍ (giao hàng, lắp đặt, cọc...)
478
  var fees = d.fees || [];
479
  var feeStartRow = cr;
480
  for(var f=0; f<fees.length; f++){
 
506
  ws.getCell('I'+cr).numFmt=MONEY_FMT;
507
  ws.getCell('I'+cr).font=GRAND_FONT;
508
 
509
+ // Thông tin cọc nếu có
510
  if(d.deposit>0){
511
  cr++;
512
  ws.getCell('A'+cr).value='Đã cọc: '+fmt(d.deposit);
 
542
  ws.getCell('A1').value='PHIẾU GIAO HÀNG';
543
  ws.getCell('A1').font={bold:true,size:16,color:{argb:'FF003F62'}};
544
 
545
+ ws.getCell('A2').value='KH: '+(qd.customer?qd.customer.name:''),
546
  ws.getCell('D2').value='Mã: '+code;
547
  ws.getCell('A3').value='SĐT: '+(qd.customer?qd.customer.phone:'');
548
+ ws.getCell('A4').value='Địa chỉ: '+(qd.customer?qd.customer.addr||':'');
549
 
550
  var hr=ws.getRow(6);
551
  ['STT','Tên sản phẩm','Mã SP','SL','Ghi chú'].forEach(function(h,i){
 
589
  if(!btn)return;
590
  var txt=(btn.textContent||'').toLowerCase();
591
  if(!window._origGetQuoteData)return;
592
+ if(txt.indexOf('excel')>=0&&txt.indexOf('xuất')>=0){
593
  e.preventDefault();e.stopPropagation();
594
  if(btn.dataset.vaiExporting==='1')return;
595
  setExportButtonState(btn,true);
596
  window.exportExcel().finally(function(){setExportButtonState(btn,false);});
597
  return false;
598
  }
599
+ if((txt.indexOf('pdf')>=0&&txt.indexOf('xuất')>=0)||(txt.indexOf('pdf')>=0&&txt.indexOf('giao hàng')<0)){
600
  e.preventDefault();e.stopPropagation();
601
  if(btn.dataset.vaiExporting==='1')return;
602
  setExportButtonState(btn,true);
 
630
  orderToVAIData:orderToVAIData,
631
  _fixed:true
632
  };
633
+ console.log('[VAI QR v1050 FIX] Loaded - Phí giao hàng, lắp đặt, cọc đư��c thêm vào Excel báo giá & đơn hàng lưu');
634
  })();