CEC-3863: Link azure file download (#309)
Co-authored-by: Alexander Andrews <aandrews@fiskerinc.com>
This commit is contained in:
committed by
GitHub
parent
ead852d46a
commit
909f1e72c2
@@ -140,7 +140,7 @@ const TRexLogsTable = ({ vin, token, classes }) => {
|
|||||||
return pageSize * pageIndex + pageSize
|
return pageSize * pageIndex + pageSize
|
||||||
}
|
}
|
||||||
const getReadPercentage = () => {
|
const getReadPercentage = () => {
|
||||||
return (currentOffset * 100 / blobSize).toFixed(2);
|
return (currentOffset * 100 / blobSize);
|
||||||
}
|
}
|
||||||
const getFilteredLogs = (logs) => {
|
const getFilteredLogs = (logs) => {
|
||||||
return logs.filter(log => currectLogLevels[log.level] === true)
|
return logs.filter(log => currectLogLevels[log.level] === true)
|
||||||
@@ -182,6 +182,19 @@ const TRexLogsTable = ({ vin, token, classes }) => {
|
|||||||
return fetched
|
return fetched
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const downloadFile = async () => {
|
||||||
|
let day = formatTwoDigit(selectedDate.getDate())
|
||||||
|
let month = formatTwoDigit(selectedDate.getMonth() + 1)// 0 Indexed
|
||||||
|
let year = selectedDate.getFullYear()
|
||||||
|
|
||||||
|
let result = await api.getLogFileLink({ vin, year, month, day }, token)
|
||||||
|
window.open(result['Link'], '_blank')
|
||||||
|
}
|
||||||
|
|
||||||
|
const formatTwoDigit = (num) => {
|
||||||
|
return num < 10 ? '0' + num : '' + num
|
||||||
|
}
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
(async () => {
|
(async () => {
|
||||||
try {
|
try {
|
||||||
@@ -267,10 +280,11 @@ const TRexLogsTable = ({ vin, token, classes }) => {
|
|||||||
/>
|
/>
|
||||||
</MuiPickersUtilsProvider>
|
</MuiPickersUtilsProvider>
|
||||||
</TableCell>
|
</TableCell>
|
||||||
|
|
||||||
<TableCell align="center">
|
<TableCell align="center">
|
||||||
{
|
{
|
||||||
blobSize === 0 ? `No logs for ${fromatDateForRequest(selectedDate)}` :
|
blobSize === 0 ? `No logs for ${fromatDateForRequest(selectedDate)}` :
|
||||||
`Read ${getReadPercentage()}% of logs`
|
`Read ${getReadPercentage().toFixed(2)}% of logs`
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
<LinearProgress
|
<LinearProgress
|
||||||
@@ -278,6 +292,8 @@ const TRexLogsTable = ({ vin, token, classes }) => {
|
|||||||
align="center"
|
align="center"
|
||||||
value={getReadPercentage()} />
|
value={getReadPercentage()} />
|
||||||
}
|
}
|
||||||
|
<br></br>
|
||||||
|
<button onClick={downloadFile} disabled={blobSize === 0}>Download Log File</button>
|
||||||
</TableCell>
|
</TableCell>
|
||||||
</TableRow>
|
</TableRow>
|
||||||
</Table>
|
</Table>
|
||||||
|
|||||||
@@ -197,6 +197,18 @@ const vehiclesAPI = {
|
|||||||
.then(fetchRespHandler)
|
.then(fetchRespHandler)
|
||||||
.catch(errorHandler)
|
.catch(errorHandler)
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getLogFileLink: async ({vin, year, month, day}, token) => {
|
||||||
|
const u = `${API_ENDPOINT}/vehicle/${vin}/trex-logs-link?year=${year}&month=${month}&day=${day}`
|
||||||
|
return fetch(u, {
|
||||||
|
method: "GET",
|
||||||
|
headers: Object.assign(
|
||||||
|
{ "Content-Type": "application/json" },
|
||||||
|
getAuthHeaderOptions(token)
|
||||||
|
),
|
||||||
|
}).then(fetchRespHandler)
|
||||||
|
.catch(errorHandler)
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
export default vehiclesAPI;
|
export default vehiclesAPI;
|
||||||
|
|||||||
Reference in New Issue
Block a user