Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in
Toggle navigation
F
fund_report
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
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
彭熊
fund_report
Commits
6518fb75
Commit
6518fb75
authored
Jan 22, 2021
by
pengxiong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
模版样式修改
parent
31667d2d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
55 additions
and
44 deletions
+55
-44
report_service.py
app/service/report_service.py
+42
-38
celery.py
app/utils/celery.py
+13
-6
No files found.
app/service/report_service.py
View file @
6518fb75
...
...
@@ -14,7 +14,7 @@ import uuid
from
sqlalchemy
import
and_
,
or_
# from sqlalchemy import union_all
from
app.api.engine
import
TAMP_SQL
,
tamp_diagnose_app_engine
,
template_folder
,
temp_img_save_folder
from
app.api.engine
import
TAMP_SQL
,
tamp_diagnose_app_engine
,
template_folder
,
temp_img_save_folder
,
pdf_save_folder
from
app.model.tamp_diagnose_app
import
HoldReport
,
HoldDiagnoseReport
,
PeriodicReport
,
Customer
,
ReportView
from
app.utils.jinjia2html_v2
import
DataIntegrate
from
app.utils.celery
import
save_pdf
...
...
@@ -205,41 +205,45 @@ def make_report(args):
tamp_diagnose_session
.
flush
()
record_id
=
report_record
.
id
save_pdf
.
delay
(
record_id
,
ifa_id
,
customer_id
,
pdf_name
,
type
)
# save_pdf.delay(record_id, ifa_id, customer_id, pdf_name, type)
try
:
dt
=
DataIntegrate
(
ifa_id
=
ifa_id
,
customer_id
=
customer_id
,
pdf_name
=
pdf_name
,
type
=
type
)
report_data
=
dt
.
get_template_data
()
report_data
=
json
.
dumps
(
report_data
)
.
replace
(
template_folder
,
temp_img_save_folder
)
report_data
=
json
.
loads
(
report_data
)
dt
.
render_data
(
data
=
report_data
)
except
:
pass
with
TAMP_SQL
(
tamp_diagnose_app_engine
)
as
tamp_diagnose_app
:
tamp_diagnose_session
=
tamp_diagnose_app
.
session
res
=
None
if
type
==
1
:
res
=
tamp_diagnose_session
.
query
(
HoldReport
)
.
filter
(
and_
(
HoldReport
.
id
==
record_id
,
HoldReport
.
ifa_id
==
ifa_id
,
))
elif
type
==
2
:
res
=
tamp_diagnose_session
.
query
(
HoldDiagnoseReport
)
.
filter
(
and_
(
HoldDiagnoseReport
.
id
==
record_id
,
HoldDiagnoseReport
.
ifa_id
==
ifa_id
,
))
elif
type
==
3
:
res
=
tamp_diagnose_session
.
query
(
PeriodicReport
)
.
filter
(
and_
(
PeriodicReport
.
id
==
record_id
,
PeriodicReport
.
ifa_id
==
ifa_id
,
))
else
:
return
False
if
res
.
all
():
if
os
.
path
.
exists
(
pdf_save_folder
+
pdf_name
):
res
.
update
({
'file'
:
pdf_name
,
'update_status'
:
2
,
'update_time'
:
datetime
.
datetime
.
now
()
})
else
:
res
.
update
({
'update_status'
:
0
,
'update_time'
:
datetime
.
datetime
.
now
()
})
return
{
'record_id'
:
record_id
}
# pid = os.fork()
# if pid == 0:
# try:
# dt = DataIntegrate(ifa_id=ifa_id, customer_id=customer_id, pdf_name=pdf_name, type=type)
# dt.render_data(data=report_data)
# except:
# pass
# with TAMP_SQL(tamp_diagnose_app_engine) as tamp_diagnose_app:
# tamp_diagnose_session = tamp_diagnose_app.session
# hold_report = tamp_diagnose_session.query(HoldReport).filter(and_(
# HoldReport.id == record_id,
# HoldReport.ifa_id == ifa_id,
# ))
# hold_diagnose_report = tamp_diagnose_session.query(HoldDiagnoseReport).filter(and_(
# HoldDiagnoseReport.id == record_id,
# HoldDiagnoseReport.ifa_id == ifa_id,
# ))
# periodic_report = tamp_diagnose_session.query(PeriodicReport).filter(and_(
# PeriodicReport.id == record_id,
# PeriodicReport.ifa_id == ifa_id,
# ))
# if type == 1:
# res = hold_report
# elif type == 2:
# res = hold_diagnose_report
# elif type == 3:
# res = periodic_report
# if not res:
# return False
# res.update({
# 'file': pdf_name,
# 'update_status': 2,
# 'update_time': datetime.datetime.now()
# })
# else:
# return {'record_id': record_id}
app/utils/celery.py
View file @
6518fb75
import
datetime
import
json
import
os
from
celery
import
Celery
from
sqlalchemy
import
and_
,
or_
from
app.api.engine
import
TAMP_SQL
,
tamp_diagnose_app_engine
,
template_folder
,
redis_host
,
redis_port
,
redis_db
,
\
redis_password
,
temp_img_save_folder
redis_password
,
temp_img_save_folder
,
pdf_save_folder
from
app.model.tamp_diagnose_app
import
HoldReport
,
HoldDiagnoseReport
,
PeriodicReport
,
Customer
,
ReportView
from
app.utils.jinjia2html_v2
import
DataIntegrate
...
...
@@ -52,11 +53,17 @@ def save_pdf(id, ifa_id, customer_id, pdf_name, type):
else
:
return
False
if
res
.
all
():
res
.
update
({
'file'
:
pdf_name
,
'update_status'
:
2
,
'update_time'
:
datetime
.
datetime
.
now
()
})
if
os
.
path
.
exists
(
pdf_save_folder
+
pdf_name
):
res
.
update
({
'file'
:
pdf_name
,
'update_status'
:
2
,
'update_time'
:
datetime
.
datetime
.
now
()
})
else
:
res
.
update
({
'update_status'
:
0
,
'update_time'
:
datetime
.
datetime
.
now
()
})
return
True
...
...
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