Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
E
ecouniversal
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Babin Egor
ecouniversal
Commits
ade72afa
Commit
ade72afa
authored
Feb 27, 2020
by
Babin Egor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add PDF makes
parent
20faeda2
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
134 additions
and
139 deletions
+134
-139
field-file.js
src/blocks/field-file/field-file.js
+1
-0
script.js
src/js/script.js
+37
-40
calculation-result.pug
src/pages/calculation-result.pug
+88
-94
order-detail-admin.pug
src/pages/order-detail-admin.pug
+7
-4
print.scss
src/scss/print.scss
+1
-1
No files found.
src/blocks/field-file/field-file.js
View file @
ade72afa
...
...
@@ -56,6 +56,7 @@ ready(function(){
parent
.
dispatchEvent
(
new
CustomEvent
(
'fileSetChanged'
,{
detail
:
{}
}))
}
// Событие change, выбор файла
...
...
src/js/script.js
View file @
ade72afa
// const ready = require('./utils/documentReady.js');
// ready(function(){
// console.log('DOM героически построен!');
// });
// const $ = require('jquery');
// $( document ).ready(function() {});
import
jsPDF
from
'jspdf'
;
import
"@babel/polyfill"
;
import
$
from
'jquery'
;
import
html2canvas
from
"html2canvas"
;
let
orderPdf
=
document
.
querySelector
(
'#orderPdf'
);
let
tableResult
=
document
.
querySelector
(
'#table-content'
);
let
tableResult
=
$
(
'#table-content'
);
orderPdf
.
addEventListener
(
'click'
,
function
(
e
)
{
e
.
preventDefault
();
html2canvas
(
tableResult
).
then
(
function
(
canvas
)
{
let
pdfData
=
canvas
.
toDataURL
(
'image/png'
);
console
.
log
(
pdfData
);
document
.
body
.
append
(
canvas
);
});
/*
let byteChars = atob(pdfData);
let bytes = [];
for (let i = 0; i < byteChars.length; i++)
bytes[i] = byteChars.charCodeAt(i);
let blob = new Blob([new Uint8Array(bytes)], {type: 'application/pdf'});
// создаём object URL из Blob
let downloadUrl = URL.createObjectURL(blob);
console.log('File Size:', Math.round(byteChars.length / 1024), 'KB');
console.log(byteChars);
if(window.navigator && window.navigator.msSaveOrOpenBlob)
window.navigator.msSaveOrOpenBlob(blob);
else
{
let newWin = window.open(downloadUrl, '_blank', 'width=500,height=300,menubar=yes,scrollbars=yes,status=yes,resizable=yes');
newWin.focus();
newWin.print(); //чтобы эта строка сработала страница должна быть в сети, т.е. НЕ локально.
URL.revokeObjectURL(downloadUrl);
document
.
body
.
scrollTop
=
0
;
// For Safari
document
.
documentElement
.
scrollTop
=
0
;
// For Chrome, Firefox, IE and Opera
var
HTML_Width
=
$
(
".canvas_div_pdf"
).
width
();
var
HTML_Height
=
$
(
".canvas_div_pdf"
).
height
();
var
top_left_margin
=
15
;
var
PDF_Width
=
HTML_Width
+
(
top_left_margin
*
2
);
var
PDF_Height
=
(
PDF_Width
*
1.5
)
+
(
top_left_margin
*
2
);
var
canvas_image_width
=
HTML_Width
;
var
canvas_image_height
=
HTML_Height
;
var
totalPDFPages
=
Math
.
ceil
(
HTML_Height
/
PDF_Height
)
-
1
;
html2canvas
(
$
(
".canvas_div_pdf"
)[
0
],{
allowTaint
:
true
}).
then
(
function
(
canvas
){
canvas
.
getContext
(
'2d'
);
var
imgData
=
canvas
.
toDataURL
(
"image/jpeg"
,
1
);
var
img
=
document
.
createElement
(
'img'
);
img
.
src
=
imgData
;
var
pdf
=
new
jsPDF
(
'p'
,
'pt'
,
[
PDF_Width
,
PDF_Height
]);
pdf
.
addImage
(
imgData
,
'JPG'
,
top_left_margin
,
top_left_margin
,
canvas_image_width
,
canvas_image_height
);
// несколько страниц
for
(
var
i
=
1
;
i
<=
totalPDFPages
;
i
++
)
{
pdf
.
addPage
(
PDF_Width
,
PDF_Height
);
pdf
.
addImage
(
imgData
,
'JPG'
,
top_left_margin
,
-
(
PDF_Height
*
i
)
+
(
top_left_margin
*
4
),
canvas_image_width
,
canvas_image_height
);
}
*/
pdf
.
save
(
"HTML-Document.pdf"
);
});
});
src/pages/calculation-result.pug
View file @
ade72afa
...
...
@@ -12,103 +12,98 @@ block append head
block page
//- +breadcrumbs(breadcrumb_chain)
.container
h1.title!= title
.block_yellow-b(id='table-content')
+table-responsive
()
thead
t
r
t
h(data-col-shown) Группа отходов
th(data-col-shown) Класс опасности
th(data-col-shown) ФККО
th(data-col-shown) Кол-во
th(data-col-shown) Адрес объекта
th(data-col-shown) Стоимость утилизации, руб.
th(data-col-shown) Стоимость транспортировк
и, руб.
th(data-col-shown) Общая стоимость
, руб.
th(data-col-shown)
.canvas_div_pdf
h1.title!= title
.block_yellow-b
()
+table-responsive()
t
head
t
r
th(data-col-shown) Группа отходов
th(data-col-shown) Класс опасности
th(data-col-shown) ФККО
th(data-col-shown) Кол-во
th(data-col-shown) Адрес объекта
th(data-col-shown) Стоимость утилизаци
и, руб.
th(data-col-shown) Стоимость транспортировки
, руб.
th(data-col-shown) Общая стоимость, руб.
tbody
tr
td
.d-flex.align-items-center
| #[+iconsvg('industrial-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 2,3 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 5 000
td 15 000
td.onbg 20 000
td #[+remove('')]
tbody
tr
td
.d-flex.align-items-center
| #[+iconsvg('industrial-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 2,3 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 5 000
td 15 000
td.onbg 20 000
tr
td
.d-flex.align-items-center
| #[+iconsvg('fluid-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td
td 2 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 5 000
td
td.onbg 15 000
td #[+remove('')]
tr
td
.d-flex.align-items-center
| #[+iconsvg('fluid-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td
td 2 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 5 000
td
td.onbg 15 000
tr
td
.d-flex.align-items-center
| #[+iconsvg('medical-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
td #[+remove('')]
tr
td
.d-flex.align-items-center
| #[+iconsvg('medical-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
tr
td
.d-flex.align-items-center
| #[+iconsvg('communal-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
td #[+remove('')]
tr
td
.d-flex.align-items-center
| #[+iconsvg('communal-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
tr
td
.d-flex.align-items-center
| #[+iconsvg('lamps-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
td #[+remove('')]
tr
td
.d-flex.align-items-center
| #[+iconsvg('lamps-sm', 'pr10', {'width':25,'height':25,'fill':'#4D4D4D'})]
span Отходы кислот и щелочей
td 2
td.text-left
| 31792625203
br
| отходы солей органических кислот и их смесей при технических испытаниях и измерениях
td 99 т
td Московская обл., г. Химки, ул. Мануфактурная, стр. 16
td 35 000
td 10 000
td.onbg 40 000
.block_yellow-b.text-right
.h3 Общая стоимость заявки: #[strong.text-nowrap(style='font-size:2.5rem;') 80 000 руб.]
...
...
@@ -122,7 +117,7 @@ block page
.col-md.text-left.mb-20.mb-md-0
+btn('Вернуться к рассчёту','secondary, sm-full')(href='/')
.col-md.flex-grow-0.mb-20.mb-md-0
+btn(
class='secondary sm-full',id='orderPdf') Сформировать КП
+btn(
'Сформировать КП','btn btn_secondary btn_sm-full')(id='orderPdf')
.col.flex-grow-0.d-none.d-lg-block
+btn('','secondary')(href='/')
+icon('i-print', 'flex,print')
...
...
@@ -131,4 +126,3 @@ block page
.row.justify-content-center
.col-lg-8
p Если у Вас остались вопросы, Вы можете связаться с менеджером по телефону 8 (800) 100-66-06 или с помощью #[a(href='', data-toggle='modal', data-target='#modal-callback') формы обратной связи]
img(src="", id="canvasImg")
src/pages/order-detail-admin.pug
View file @
ade72afa
...
...
@@ -249,19 +249,22 @@ block page
.row
.col
h3 Документы
h3 Документы
!!!
//- Прикрепить документы
+field-file(
{
id: 'docs1',
name: 'docs1',
multiple: true
id: 'docs1-96',
name: 'files',
},
'Прикрепить еще документ',
''
)
+info-block()
|Вы можете загрузить файлы в формате TXT, DOC, XML, PDF, JPG, PNG, BMP, GIF размером не более 5 Мб
...
...
src/scss/print.scss
View file @
ade72afa
...
...
@@ -74,4 +74,4 @@
.print-hidden
{
display
:
none
;
}
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment