add dashbord information in xlsx
This commit is contained in:
+53
-26
@@ -9,7 +9,8 @@
|
||||
import xlsx # read dashbord.xlsx
|
||||
import jester
|
||||
import joplin_utils
|
||||
|
||||
import strutils
|
||||
import std/asyncdispatch
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
# TYPE : Selected Option for master web page
|
||||
@@ -20,6 +21,26 @@ type
|
||||
notes = "Notes", notebooks = "Notesbooks", tags = "Tags",
|
||||
notes_selectednote = "Notes-SelectedNote", dashbord = "Dashboard"
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
# TYPE : Dashbord information
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
type DashbordData* = object
|
||||
position*: seq[int]
|
||||
ext_link*: seq[string]
|
||||
int_link*: seq[string]
|
||||
ip_link*: seq[string]
|
||||
title*: seq[string]
|
||||
description*: seq[string]
|
||||
server*: seq[string]
|
||||
ip*: seq[string]
|
||||
port*: seq[int]
|
||||
ssl*: seq[bool]
|
||||
category*: seq[string]
|
||||
icon*: seq[string]
|
||||
open_method*: seq[string]
|
||||
tag*: seq[string]
|
||||
hotkey*: seq[string]
|
||||
color*: seq[string]
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
# TYPE : Data Informations for Left Colomn
|
||||
@@ -33,6 +54,7 @@ type ColomnLeftData* = ref object of RootObj
|
||||
j_notebooks_nb*: int
|
||||
j_tags*: joplin_tags
|
||||
j_tags_nb*: int
|
||||
dashbord*: DashbordData
|
||||
req*: Request
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
@@ -47,36 +69,41 @@ type ColomnRightData* = ref object of RootObj
|
||||
req*: Request
|
||||
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
# TYPE : Dashbord information
|
||||
# --==--==--==--==--==--==--==--==--==--==-- #
|
||||
type DashbordData* = ref object of RootObj
|
||||
position*: seq[int]
|
||||
ext_link*: seq[string]
|
||||
int_link*: seq[string]
|
||||
title*: seq[string]
|
||||
category*: seq[string]
|
||||
icon*: seq[string]
|
||||
open_method*: seq[string]
|
||||
tag*: seq[string]
|
||||
hotkey*: seq[string]
|
||||
color*: seq[string]
|
||||
req*: Request
|
||||
|
||||
|
||||
# --==--==--==--==--==--==--==--==--==--==--==--==--==--==-- #
|
||||
# PROC :
|
||||
# PROC : get data from dashbord file
|
||||
# --==--==--==--==--==--==--==--==--==--==--==--==--==--==-- #
|
||||
proc getDashbordData(ddata: var DashbordData) =
|
||||
proc getDashbordData*(): Future[DashbordData] {.async.} =
|
||||
|
||||
var ddata: DashbordData
|
||||
|
||||
let
|
||||
data = parseExcel("data/dashbord.xlsx", header = true)
|
||||
sheetName = "dashbord"
|
||||
echo data[sheetName]
|
||||
#echo data[sheetName]
|
||||
|
||||
let rows = data[sheetName].toSeq(true)
|
||||
echo rows.len()
|
||||
# for i in 0 ..data[sheetName]:
|
||||
# ddata.position[i] = row[i]
|
||||
for row in rows:
|
||||
echo "position: " & row[0]
|
||||
echo "URL externe: " & row[1]
|
||||
for i in 0..(rows.len()-1):
|
||||
ddata.position.add(parseInt(rows[i][0]))
|
||||
ddata.ext_link.add(rows[i][1])
|
||||
ddata.int_link.add(rows[i][2])
|
||||
ddata.ip_link.add(rows[i][3])
|
||||
ddata.title.add(rows[i][4])
|
||||
ddata.description.add(rows[i][5])
|
||||
ddata.server.add(rows[i][6])
|
||||
ddata.ip.add(rows[i][7])
|
||||
ddata.port.add(parseInt(rows[i][8]))
|
||||
if rows[i][9] == "OUI":
|
||||
ddata.ssl.add(true)
|
||||
else:
|
||||
ddata.ssl.add(false)
|
||||
|
||||
ddata.category.add(rows[i][10])
|
||||
ddata.icon.add(rows[i][11])
|
||||
ddata.open_method.add(rows[i][12])
|
||||
ddata.tag.add(rows[i][13])
|
||||
ddata.hotkey.add(rows[i][14])
|
||||
ddata.color.add(rows[i][15])
|
||||
|
||||
echo ddata
|
||||
return ddata
|
||||
|
||||
Reference in New Issue
Block a user