Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
kl_task8_aggregations
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
arun.uday
kl_task8_aggregations
Commits
d2aa0cd8
Commit
d2aa0cd8
authored
Feb 02, 2023
by
arun.uday
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit4
parent
08549d4a
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
30 additions
and
6 deletions
+30
-6
app.py
+3
-2
conf/applications.conf
+9
-2
scripts/config/api_routes_config.py
+11
-0
scripts/config/applications_config.py
+3
-0
scripts/core/handlers/generate_excel_file.py
+1
-0
scripts/services/app_services_run.py
+3
-2
scripts/temp/data.xlsx
+0
-0
No files found.
app.py
View file @
d2aa0cd8
# using mongo aggregation operations
import
uvicorn
from
scripts.config.applications_config
import
uvicorn_app
,
uvicorn_port
# starting the application
if
__name__
==
"__main__"
:
print
(
"
Fast API
task"
)
uvicorn
.
run
(
"scripts.services.app_services_run:app"
,
port
=
8000
)
print
(
"
Mongo Aggregations
task"
)
uvicorn
.
run
(
uvicorn_app
,
port
=
int
(
uvicorn_port
)
)
# pip install python-multipart
conf/applications.conf
View file @
d2aa0cd8
...
...
@@ -9,4 +9,12 @@ file_name_xlsx = data.xlsx
mongodb
=
mongodb
://
localhost
:
27017
[
mongodb
]
project
= $
project
\ No newline at end of file
project
= $
project
[
uvicorn
]
uvicorn_port
=
8000
uvicorn_app
=
scripts
.
services
.
app_services_run
:
app
[
api_routes
]
route_index
= /
upload
/
route_submit
= /
submit_file
/
scripts/config/api_routes_config.py
0 → 100644
View file @
d2aa0cd8
# reading conf file
import
configparser
config
=
configparser
.
RawConfigParser
()
config
.
read
(
"conf/applications.conf"
)
# api routes
route_index
=
config
.
get
(
"api_routes"
,
'route_index'
)
route_submit
=
config
.
get
(
"api_routes"
,
'route_submit'
)
scripts/config/applications_config.py
View file @
d2aa0cd8
...
...
@@ -10,6 +10,9 @@ config.read("conf/applications.conf")
base_path
=
config
.
get
(
"path"
,
'base_path'
)
sub_path
=
config
.
get
(
"path"
,
"sub_path"
)
# uvicorn
uvicorn_port
=
config
.
get
(
"uvicorn"
,
"uvicorn_port"
)
uvicorn_app
=
config
.
get
(
"uvicorn"
,
"uvicorn_app"
)
# file name
file_name_xlsx
=
config
.
get
(
"file"
,
"file_name_xlsx"
)
...
...
scripts/core/handlers/generate_excel_file.py
View file @
d2aa0cd8
...
...
@@ -8,6 +8,7 @@ def generate_excel(path_xlsx, cursor_data):
for
business_names
in
cursor_data
:
data_list
.
append
(
business_names
)
data_frame
=
pd
.
DataFrame
(
data_list
,
columns
=
[
'result'
,
'business_name'
,
'date'
])
print
(
data_frame
)
data_frame
.
to_excel
(
path_xlsx
,
index
=
False
)
else
:
print
(
"Error"
)
scripts/services/app_services_run.py
View file @
d2aa0cd8
...
...
@@ -2,6 +2,7 @@ from fastapi import FastAPI, Request, UploadFile, File
from
fastapi.templating
import
Jinja2Templates
from
fastapi.responses
import
HTMLResponse
from
scripts.config.api_routes_config
import
route_index
,
route_submit
from
scripts.config.applications_config
import
full_path_xlsx
from
scripts.core.handlers.generate_excel_file
import
generate_excel
from
scripts.core.handlers.uploaded_file_
import
extract_uploaded_data
...
...
@@ -12,13 +13,13 @@ templates = Jinja2Templates("scripts/core/handlers/")
# html form access using api
@app.get
(
"/upload/"
,
response_class
=
HTMLResponse
)
@app.get
(
route_index
,
response_class
=
HTMLResponse
)
def
template_render
(
request
:
Request
):
return
templates
.
TemplateResponse
(
"upload_file.html"
,
{
"request"
:
request
})
# handling the form submit using api and aggregations
@app.post
(
"/submit_file/"
)
@app.post
(
route_submit
)
async
def
submit_file_data
(
file_data
:
UploadFile
=
File
(
...
)):
try
:
data_read
=
await
file_data
.
read
()
...
...
scripts/temp/data.xlsx
View file @
d2aa0cd8
No preview for this file type
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