CEC-3672 Use SUMS version instead of Version (#279)

This commit is contained in:
John Wu
2023-02-10 16:31:19 -08:00
committed by GitHub
parent 9cf84fc426
commit 0da2289f37
7 changed files with 79 additions and 52 deletions

View File

@@ -26,7 +26,7 @@ const MainForm = () => {
const [updateType, setUpdateType] = useState(CAR_UPDATE);
const {manifest_id} = useParams();
const {getManifests, manifests, busy} = useManifestsContext();
const {deployCarUpdates, deployFleetUpdates, getSoftwareVersions, versions, updateManifestVersion} = useCarUpdatesContext();
const {deployCarUpdates, deployFleetUpdates, getSUMSVersions, versions, updateSUMSVersion} = useCarUpdatesContext();
const {
groups,
providers,
@@ -37,6 +37,7 @@ const MainForm = () => {
const {setMessage, setTitle, setSitePath} = useStatusContext();
const [manifestName, setManifestName] = useState("");
const [version, setVersion] = useState("");
const [sumsVersion, setSUMSersion] = useState("");
const [createDate, setCreateDate] = useState("");
const [selected, setSelected] = useState([]);
const [search, setSearch] = useState("");
@@ -79,7 +80,9 @@ const MainForm = () => {
const data = {
manifest_id: parseInt(manifest_id),
}
await updateManifestVersion(manifest_id, softwareVersion, token);
if (sumsVersion.length === 0) {
await updateSUMSVersion(manifest_id, softwareVersion, token);
}
if (updateType === CAR_UPDATE) {
data.vins = selected;
@@ -101,7 +104,7 @@ const MainForm = () => {
const getData = async () => {
try {
await getManifests({id: parseInt(manifest_id)}, token);
await getSoftwareVersions(token);
await getSUMSVersions(token);
} catch (e) {
setMessage(e.message);
logger.warn(e.stack);
@@ -138,6 +141,7 @@ const MainForm = () => {
setManifestName(data.name);
setVersion(data.version);
setSUMSersion(data.sums || "");
setCreateDate(LocalDateTimeString(data.created));
}, [manifests]);
@@ -172,17 +176,19 @@ const MainForm = () => {
<SearchField classes={classes} onSearch={handleSearch}/>
</Grid>
<Grid item md={4} container justifyContent="flex-end">
<DropDownList
label="Software Version"
labelField="version"
valueField="version"
value={softwareVersion}
data={versions}
classes={classes}
onChange={changeVersion} />
{sumsVersion.length === 0 &&
<DropDownList
label="Software Version"
labelField="version"
valueField="version"
value={softwareVersion}
data={versions}
classes={classes}
onChange={changeVersion} />
}
<Button
type="submit"
disabled={busy || selected.length === 0 || softwareVersion === SELECT_VERSION}
disabled={busy || selected.length === 0 || (sumsVersion.length === 0 && softwareVersion === SELECT_VERSION)}
color="primary"
onClick={onSubmit}
>
@@ -225,4 +231,4 @@ const ManifestDeployForm = () => (
</ManifestsProvider>
);
export default ManifestDeployForm;
export default ManifestDeployForm;

View File

@@ -6,15 +6,15 @@ import {
TableFooter,
TablePagination,
TableRow,
Tooltip,
Tooltip
} from "@material-ui/core";
import {
ToggleButton,
ToggleButtonGroup
} from "@mui/material"
import DeleteIcon from "@material-ui/icons/Delete";
import SendIcon from "@material-ui/icons/Send";
import VisibilityIcon from "@material-ui/icons/Visibility";
import {
ToggleButton,
ToggleButtonGroup
} from "@mui/material";
import clsx from "clsx";
import React, { useEffect, useState } from "react";
import { Link } from "react-router-dom";
@@ -26,7 +26,7 @@ import { TYPE_MANIFEST_SOFTWARE } from "../../../utils/manifest_types";
import { hasRole, Permissions } from "../../../utils/roles";
import {
ManifestsProvider,
useManifestsContext,
useManifestsContext
} from "../../Contexts/ManifestsContext";
import { useStatusContext } from "../../Contexts/StatusContext";
import { useUserContext } from "../../Contexts/UserContext";
@@ -50,6 +50,10 @@ const tableColumns = [
id: "version",
label: "Version",
},
{
id: "sums",
label: "SUMS",
},
{
id: "type",
label: "Type",
@@ -280,6 +284,7 @@ const MainForm = () => {
)}
</TableCell>
<TableCell align="center">{row.version}</TableCell>
<TableCell align="center">{row.sums}</TableCell>
<TableCell align="center">
{formatManifestType(row.type)}
</TableCell>
@@ -297,7 +302,7 @@ const MainForm = () => {
<TableRow>
<TablePagination
rowsPerPageOptions={[5, 10, 25, 100]}
colSpan={6}
colSpan={8}
count={totalManifests}
rowsPerPage={pageSize}
page={pageIndex}
@@ -327,4 +332,4 @@ const ManifestsList = () => (
</ManifestsProvider>
);
export default ManifestsList;
export default ManifestsList;