Se agregan archivos de apoyo

main
unknown 2 years ago
parent 586acdc03e
commit acdf10d7bc
  1. 48
      Repository/Reportes.js
  2. 3
      app.js
  3. 34
      views - Copy/pages/Amazon/Invoice.ejs
  4. 34
      views - Copy/partials/Amazon/InvoiceFooter.ejs
  5. 129
      views - Copy/partials/Amazon/InvoiceHeader.ejs
  6. 38
      views - Copy/partials/Amazon/Items.ejs
  7. 14
      views - Copy/partials/Amazon/ItemsTableHeader.ejs
  8. 25
      views/partials/Amazon/InvoiceFooter.ejs
  9. 105
      views/partials/Amazon/InvoiceHeader.ejs
  10. 7
      views/partials/Amazon/Items.ejs

@ -1,54 +1,13 @@
var config = require('../config/dbconfig') var config = require('../config/dbconfig')
const sql = require('mssql') const sql = require('mssql')
async function getRptControlDocumentosClientes() {
try {
let pool = await sql.connect(config)
let reporte = await pool
.request()
.query("SELECT * FROM ReportesDocsSir WHERE Estatus='Activo'")
return reporte.recordset
} catch (error) {
console.log(error)
}
}
async function getNoPartesAmazon(id) {
try {
let pool = await sql.connect(config)
const result = await pool
.request()
.input('id', id)
.execute(`[Clientes.Amazon.Invoice.NoPartes2Excel.Get]`)
//const NoPartesSIR = result.recordset;
console.log(result.recordset)
return result.recordset
} catch (error) {
console.log(error)
}
}
async function getExceptionsFile4Amazon(id) {
try {
let pool = await sql.connect(config)
const result = await pool
.request()
.input('id', id)
.execute(`[Clientes.Amazon.Invoice.ExceptionsFile.Get]`)
console.log(result.recordset)
return result.recordset
} catch (error) {
console.log(error)
}
}
async function getAmazonInvoiceDetail(id) { async function getAmazonInvoiceDetail(id) {
try { try {
let pool = await sql.connect(config) let pool = await sql.connect(config)
const result = await pool const result = await pool
.request() .request()
.input('id', id) .input('id', id)
.query(`SELECT ItemId,ItemDescription, ItemQuantityUnitOfMeasure, CountryOfOrigin,Quantity,WeightValue, ActualUnitCostMonetaryAmount, TotalUnitValueMonetaryAmount FROM [Clientes.Amazon.Invoice.Detail] WHERE IdHeader = @id`) .query(`SELECT ItemId, ItemDescription, ItemQuantityUnitOfMeasure, CountryOfOrigin, Quantity, Cast(((WeightValue/Quantity)* .4536) as decimal(18,4)) as WeightValue, ActualUnitCostMonetaryAmount, TotalUnitValueMonetaryAmount, AmazonShipmentReferenceId FROM [Clientes.Amazon.Invoice.Detail] WHERE IdHeader = @id AND SightLine=1 Order BY Partida`)
console.log(result.recordset) console.log(result.recordset)
return result.recordset return result.recordset
} catch (error) { } catch (error) {
@ -85,10 +44,7 @@ async function getAmazonInvoiceHeader(id) {
} }
module.exports = { module.exports = {
getRptControlDocumentosClientes: getRptControlDocumentosClientes, getAmazonInvoiceDetail: getAmazonInvoiceDetail,
getNoPartesAmazon: getNoPartesAmazon,
getExceptionsFile4Amazon: getExceptionsFile4Amazon,
getAmazonInvoiceDetail: getAmazonInvoiceDetail,
getAmazonInvoiceShipmentInfo: getAmazonInvoiceShipmentInfo, getAmazonInvoiceShipmentInfo: getAmazonInvoiceShipmentInfo,
getAmazonInvoiceHeader: getAmazonInvoiceHeader getAmazonInvoiceHeader: getAmazonInvoiceHeader
} }

@ -1,7 +1,4 @@
const express = require('express'); const express = require('express');
var html_to_pdf = require('html-pdf-node');
const report = require("puppeteer-report");
//import puppeteer from "puppeteer";
const puppeteer = require('puppeteer') const puppeteer = require('puppeteer')
var Reportes = require('./Repository/Reportes'); var Reportes = require('./Repository/Reportes');
const app = express() const app = express()

@ -0,0 +1,34 @@
<%- include('../../partials/Amazon/InvoiceHeader')%>
<%- include('../../partials/Amazon/ItemsTableHeader')%>
<% var ren=1; InvoiceDetail.forEach((item)=> { %>
<tr>
<td>
<%= ren++ %>
</td>
<td>
<%= item.ItemId %>
</td>
<td>
<%= item.ItemDescription %>
</td>
<td>
<%= item.ItemQuantityUnitOfMeasure %>
</td>
<td>
<%= item.CountryOfOrigin %>
</td>
<td>
<%= item.Quantity %>
</td>
<td>
<%= item.WeightValue %>
</td>
<td>
<%= item.ActualUnitCostMonetaryAmount %>
</th>
<td>
<%= item.TotalUnitValueMonetaryAmount %>
</td>
</tr>
<% }) %>
<%- include('../../partials/Amazon/InvoiceFooter')%>

@ -0,0 +1,34 @@
<!-- <tfoot>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td class="bolder"=>TOTAL QTY</td>
<td class="bolder" style="font-size:17px;"><%= InvoiceDetail.length %></td>
<th colspan="2" style="text-align: right;">TOTAL USD $</th>
<td class="bolder" style="font-size:17px;"><%= InvoiceHeader.TotalInvoiceValueMonetaryAmount %></td>
</tr>
</tfoot> -->
</table>
<table width="100%">
<tr>
<td width="60%">&nbsp;</td>
<td width="40%">
<table width="100%" style="text-align:right">
<tr class="bolder">
<td>Total Qty:</td>
<td style="font-size:18px"><%
var TotalWeight=0;
InvoiceDetail.forEach((item)=> { TotalWeight=TotalWeight+item.WeightValue }); %>
<%= TotalWeight.toString().substring(0,7) %>
</td>
<td>TOTAL USD$:</td>
<td style="font-size:18px"><%= InvoiceHeader.TotalInvoiceValueMonetaryAmount %></td>
</tr>
</table>
</td>
</tr>
</table>
</html>

@ -0,0 +1,129 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<style>
.bolder {
font-weight: bold;
}
.frame {
border-color: 3px black;
}
</style>
</head>
<table border='0' cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td width='70%'>
<table width='100%' style='font-size: 12px;' cellpadding='0' cellspacing='0'>
<tr>
<td>
<center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">SELLER</span> <br>
<%= SellerL1 %> <br>
<%= SellerL2 %> <br>
<%= SellerL3 %>
</div>
</div>
</center>
</td>
</tr>
<tr>
<td>
<center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">BILLER</span> <br>
<%= BillerL1 %> <br>
<%= BillerL2 %> <br>
<%= BillerL3 %>
</div>
</div>
</center>
</td>
</tr>
</table>
</td>
<td width='50%'>
<table cellpadding='0' cellspacing='0' width='100%' style="padding-top:50px">
<tr>
<td>
<!-- <table cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td>
<center>
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; ; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Date:</span> <br>
<%= InvoiceHeader.CommercialInvoiceDate %>
</div>
</div>
</center>
</td>
<td>
<center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Invoice No:</span> <br>
<%= InvoiceHeader.InvoiceNumber %>
</div>
</div>
</center>
</td>
</tr>
</table> -->
<center>
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Invoice No:</span> <br>
<%= InvoiceHeader.InvoiceNumber %>
</div>
</div>
</center>
</td>
</tr>
<tr>
<td>
<center>
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Amazon Shipment Reference Id:</span> <br>
<%= AmazonShipmentReferenceId %>
</div>
</div>
</center>
</td>
</tr>
<tr>
<td>
<div class="row justify-content-start">
<div class="col-6">
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; ; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Date:</span> <br>
<%= InvoiceHeader.CommercialInvoiceDate %>
</div>
</div>
</div>
<div class="col-6">
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Incoterms:</span> <br>
<%= InvoiceHeader.Incoterms %>
</div>
</div>
</div>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>

@ -0,0 +1,38 @@
<%- include('../Amazon/partials/header')%>
<%- include('../Amazon/partials/tableHeader')%>
<tbody>
<%
var ren=1;
InvoiceDetail.forEach((item)=> { %>
<tr>
<td>
<%= ren++ %>
</td>
<td>
<%= item.ItemId %>
</td>
<td>
<%= item.ItemDescription %>
</td>
<td>
<%= item.ItemQuantityUnitOfMeasure %>
</td>
<td>
<%= item.CountryOfOrigin %>
</td>
<td>
<%= item.Quantity %>
</td>
<td>
<%= item.WeightValue %>
</td>
<td>
<%= item.ActualUnitCostMonetaryAmount %>
</td>
<td>
<%= item.TotalUnitValueMonetaryAmount %>
</td>
</tr>
<% }) %>
</tbody>
<%- include('../Amazon/partials/footer')%>

@ -0,0 +1,14 @@
<table width='100%' class='table table-striped table-sm' style="font-size:12px">
<thead>
<tr>
<th>Ord</th>
<th>ASIN#</th>
<th>Description of Goods</th>
<th>Unit Meas.</th>
<th>Country of Origin</th>
<th>Qty Shipped</th>
<th>Unit Net Weight Kg</th>
<th>Unit Cost USD</th>
<th>Total Value USD</th>
</tr>
</thead>

@ -13,14 +13,27 @@
</table> </table>
<table width="100%"> <table width="100%">
<tr> <tr>
<td width="60%">&nbsp;</td> <td width="20%">&nbsp;</td>
<td width="40%"> <td width="30%">
<table width="100%" style="text-align:right"> <table width="100%" style="text-align:right">
<tr class="bolder"> <tr class="bolder">
<td>Total Qty:</td> <td>Total Net Weight Kg:</td>
<td style="font-size:18px"><%= InvoiceDetail.length %></td> <td style="font-size:18px">
<td>TOTAL USD$:</td> <% var TotalWeight=0; InvoiceDetail.forEach((item)=> { TotalWeight=TotalWeight+(item.Quantity * item.WeightValue) }); %>
<td style="font-size:18px"><%= InvoiceHeader.TotalInvoiceValueMonetaryAmount %></td> <%= TotalWeight.toFixed(4) %>
</td>
</tr>
</table>
</td>
<td width="10%">&nbsp;</td>
<td width="30%">
<table width="100%" style="text-align:right">
<tr class="bolder">
<td style="text-align:right">TOTAL USD$:</td>
<td style="font-size:18px" style="text-align:left">
<% var Total=0; InvoiceDetail.forEach((item)=> { Total=Total+(item.Quantity * item.ActualUnitCostMonetaryAmount) }); %>
<%= Total.toFixed(4) %>
</td>
</tr> </tr>
</table> </table>
</td> </td>

@ -23,18 +23,6 @@
<table width='100%' style='font-size: 12px;' cellpadding='0' cellspacing='0'> <table width='100%' style='font-size: 12px;' cellpadding='0' cellspacing='0'>
<tr> <tr>
<td> <td>
<!-- <table border=1 width='100%'>
<tr>
<td class="bolder">Seller</td>
</tr>
<tr>
<td>
<%= SellerL1 %> <br>
<%= SellerL2 %> <br>
<%= SellerL3 %>
</td>
</tr>
</table> -->
<center> <center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left;"> <div class="card" style="width: 90%; padding-left: 20px; text-align: left;">
<div class="card-body"> <div class="card-body">
@ -49,21 +37,6 @@
</tr> </tr>
<tr> <tr>
<td> <td>
<!-- <div class="m-1 btn btn-light
border border-danger border-5" style="width: 100%;">
<table width='100%'>
<tr>
<td class="bolder">Bill to:</td>
</tr>
<tr>
<td>
<%= BillerL1 %> <br>
<%= BillerL2 %> <br>
<%= BillerL3 %>
</td>
</tr>
</table>
</div> -->
<center> <center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left;"> <div class="card" style="width: 90%; padding-left: 20px; text-align: left;">
<div class="card-body"> <div class="card-body">
@ -82,19 +55,9 @@
<table cellpadding='0' cellspacing='0' width='100%' style="padding-top:50px"> <table cellpadding='0' cellspacing='0' width='100%' style="padding-top:50px">
<tr> <tr>
<td> <td>
<table cellpadding='0' cellspacing='0' width='100%'> <!-- <table cellpadding='0' cellspacing='0' width='100%'>
<tr> <tr>
<td> <td>
<!-- <table width='100%'>
<tr>
<td class="bolder">Date:</td>
</tr>
<tr>
<td>
<%= InvoiceHeader.CommercialInvoiceDate %>
</td>
</tr>
</table> -->
<center> <center>
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; ; font-size:12px;"> <div class="card" style="width: 100%; padding-left: 20px; text-align: left; ; font-size:12px;">
<div class="card-body"> <div class="card-body">
@ -105,16 +68,6 @@
</center> </center>
</td> </td>
<td> <td>
<!-- <table width='100%'>
<tr>
<td class="bolder">Invoice No:</td>
</tr>
<tr>
<td>
<%= InvoiceHeader.InvoiceNumber %>
</td>
</tr>
</table> -->
<center> <center>
<div class="card" style="width: 90%; padding-left: 20px; text-align: left; font-size:12px;"> <div class="card" style="width: 90%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body"> <div class="card-body">
@ -125,24 +78,21 @@
</center> </center>
</td> </td>
</tr> </tr>
</table> </table> -->
<center>
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Invoice No:</span> <br>
<%= InvoiceHeader.InvoiceNumber %>
</div>
</div>
</center>
</td> </td>
</tr=> </tr>
<tr> <tr>
<td> <td>
<!-- <table border=1 width='100%'>
<tr>
<td class="bolder">Amazon Shipment Reference Id:</td>
</tr>
<tr>
<td colspan='2' style='text-align: center;'>
<%= AmazonShipmentReferenceId %><br>
</td>
</th>
</tr>
</table> -->
<center> <center>
<div class="card" style="width: 95%; padding-left: 20px; text-align: left; font-size:12px;"> <div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body"> <div class="card-body">
<span style="font-size:15px; font-weight:bold;">Amazon Shipment Reference Id:</span> <br> <span style="font-size:15px; font-weight:bold;">Amazon Shipment Reference Id:</span> <br>
<%= AmazonShipmentReferenceId %> <%= AmazonShipmentReferenceId %>
@ -153,24 +103,23 @@
</tr> </tr>
<tr> <tr>
<td> <td>
<!-- <table border=1 width='100%'> <div class="row justify-content-start">
<tr> <div class="col-12">
<td class="bolder">Incoterms:</td> <div class="card" style="width: 100%; padding-left: 20px; text-align: left; ; font-size:12px;">
</tr> <div class="card-body">
<tr> <span style="font-size:15px; font-weight:bold;">Date:</span> <%= InvoiceHeader.CommercialInvoiceDate %> <br>
<td style='text-align: center; '> <span style="font-size:15px; font-weight:bold;">Incoterms:</span> <%= InvoiceHeader.Incoterms %>
<%= InvoiceHeader.Incoterms %> </div>
</td>
</tr>
</table> -->
<center>
<div class="card" style="width: 95%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Incoterms:</span> <br>
<%= InvoiceHeader.Incoterms %>
</div> </div>
</div> </div>
</center> <!-- <div class="col-6">
<div class="card" style="width: 100%; padding-left: 20px; text-align: left; font-size:12px;">
<div class="card-body">
<span style="font-size:15px; font-weight:bold;">Incoterms:</span> <%= InvoiceHeader.Incoterms %>
</div>
</div>
</div> -->
</div>
</td> </td>
</tr> </tr>
</table> </table>

@ -1,7 +1,8 @@
<%- include('../Amazon/partials/header')%> <%- include('../Amazon/partials/header')%>
<%- include('../Amazon/partials/tableHeader')%> <%- include('../Amazon/partials/tableHeader')%>
<tbody> <tbody>
<% var ren=1; <%
var ren=1;
InvoiceDetail.forEach((item)=> { %> InvoiceDetail.forEach((item)=> { %>
<tr> <tr>
<td> <td>
@ -26,10 +27,10 @@
<%= item.WeightValue %> <%= item.WeightValue %>
</td> </td>
<td> <td>
<%= item.ActualUnitCostMonetaryAmount %> <%= item.ActualUnitCostMonetaryAmount.toFixed(2) %>
</td> </td>
<td> <td>
<%= item.TotalUnitValueMonetaryAmount %> <%= item.TotalUnitValueMonetaryAmount.toFixed(2) %>
</td> </td>
</tr> </tr>
<% }) %> <% }) %>

Loading…
Cancel
Save