Compare commits
3 Commits
36ac1dccb4
...
636daaed0a
| Author | SHA1 | Date | |
|---|---|---|---|
| 636daaed0a | |||
| 71c83062cb | |||
| cd67c4de80 |
@@ -9,4 +9,4 @@ builds
|
|||||||
testFiles
|
testFiles
|
||||||
nssm.exe
|
nssm.exe
|
||||||
postgresql-17.9-2-windows-x64.exe
|
postgresql-17.9-2-windows-x64.exe
|
||||||
VSCodeUserSetup-x64-1.112.0.msi
|
VSCodeSetup-x64-1.120.0.msi
|
||||||
@@ -2,6 +2,7 @@ import { drizzle } from "drizzle-orm/postgres-js";
|
|||||||
import postgres from "postgres";
|
import postgres from "postgres";
|
||||||
|
|
||||||
import * as scanUserSchema from "./schema/scanUsers.js";
|
import * as scanUserSchema from "./schema/scanUsers.js";
|
||||||
|
import * as settingsSchema from "./schema/settings.schema.js";
|
||||||
|
|
||||||
const dbURL = `postgres://${process.env.DATABASE_USER}:${process.env.DATABASE_PASSWORD}@${process.env.DATABASE_HOST}:${process.env.DATABASE_PORT}/${process.env.DATABASE_DB}`;
|
const dbURL = `postgres://${process.env.DATABASE_USER}:${process.env.DATABASE_PASSWORD}@${process.env.DATABASE_HOST}:${process.env.DATABASE_PORT}/${process.env.DATABASE_DB}`;
|
||||||
|
|
||||||
@@ -20,5 +21,6 @@ const queryClient = postgres(dbURL, {
|
|||||||
export const db = drizzle(queryClient, {
|
export const db = drizzle(queryClient, {
|
||||||
schema: {
|
schema: {
|
||||||
...scanUserSchema,
|
...scanUserSchema,
|
||||||
|
...settingsSchema,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -62,7 +62,27 @@ router.get("/ehs/xml", (_, res) => {
|
|||||||
return res.sendFile(xmlPath);
|
return res.sendFile(xmlPath);
|
||||||
});
|
});
|
||||||
|
|
||||||
router.get("/upgrade/android/13", (_, res) => {
|
router.get("/android/upgrade/11", (_, res) => {
|
||||||
|
const apkPath = path.join(
|
||||||
|
downloadDir,
|
||||||
|
"HE_FULL_UPDATE_11-70-20.00-RG-U00-STD-HEL-04.zip",
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!fs.existsSync(apkPath)) {
|
||||||
|
return res.status(404).json({ success: false, message: "APK not found" });
|
||||||
|
}
|
||||||
|
|
||||||
|
//res.setHeader("Content-Type", "application/vnd.android.package-archive");
|
||||||
|
res.setHeader("Content-Type", "application/zip");
|
||||||
|
res.setHeader(
|
||||||
|
"Content-Disposition",
|
||||||
|
`attachment; filename="HE_FULL_UPDATE_11.zip"`,
|
||||||
|
);
|
||||||
|
|
||||||
|
return res.sendFile(apkPath);
|
||||||
|
});
|
||||||
|
|
||||||
|
router.get("/android/upgrade/13", (_, res) => {
|
||||||
const apkPath = path.join(
|
const apkPath = path.join(
|
||||||
downloadDir,
|
downloadDir,
|
||||||
"HE_FULL_UPDATE_13-51-16.00-TG-U00-STD-HEL-04.zip",
|
"HE_FULL_UPDATE_13-51-16.00-TG-U00-STD-HEL-04.zip",
|
||||||
@@ -82,7 +102,7 @@ router.get("/upgrade/android/13", (_, res) => {
|
|||||||
return res.sendFile(apkPath);
|
return res.sendFile(apkPath);
|
||||||
});
|
});
|
||||||
|
|
||||||
router.get("/upgrade/android/14", (_, res) => {
|
router.get("/android/upgrade/14", (_, res) => {
|
||||||
const apkPath = path.join(
|
const apkPath = path.join(
|
||||||
downloadDir,
|
downloadDir,
|
||||||
"HE_FULL_UPDATE_14-38-04.00-UG-U15-STD-HEL-04.zip",
|
"HE_FULL_UPDATE_14-38-04.00-UG-U15-STD-HEL-04.zip",
|
||||||
|
|||||||
@@ -73,6 +73,10 @@ const postRelease = async (release: Releases) => {
|
|||||||
log.info({}, "Refreshing Auth Token");
|
log.info({}, "Refreshing Auth Token");
|
||||||
await getToken();
|
await getToken();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const defaultDock = await db.query.settings.findFirst({
|
||||||
|
where: (u, { eq }) => eq(u.name, "defaultLoadType"),
|
||||||
|
}); // .where(eq(settings.name, "defaultLoadType"))
|
||||||
/**
|
/**
|
||||||
* ReleaseState
|
* ReleaseState
|
||||||
* 0 = open
|
* 0 = open
|
||||||
@@ -101,6 +105,7 @@ const postRelease = async (release: Releases) => {
|
|||||||
: release.DeliveryState === 4 && "Completed",
|
: release.DeliveryState === 4 && "Completed",
|
||||||
userId: process.env.DEFAULT_CARRIER, // this should be the carrierid
|
userId: process.env.DEFAULT_CARRIER, // this should be the carrierid
|
||||||
loadTypeId: process.env.DEFAULT_LOAD_TYPE, // well get this and make it a default one
|
loadTypeId: process.env.DEFAULT_LOAD_TYPE, // well get this and make it a default one
|
||||||
|
// TODO: look in the remarks in the release and if its says
|
||||||
dockId: process.env.DEFAULT_DOCK, // this the warehouse we want it in to start out
|
dockId: process.env.DEFAULT_DOCK, // this the warehouse we want it in to start out
|
||||||
refNumbers: [release.ReleaseNumber],
|
refNumbers: [release.ReleaseNumber],
|
||||||
//refNumber: release.ReleaseNumber,
|
//refNumber: release.ReleaseNumber,
|
||||||
@@ -229,7 +234,7 @@ const postRelease = async (release: Releases) => {
|
|||||||
log.info({}, `${release.ReleaseNumber} was updated`);
|
log.info({}, `${release.ReleaseNumber} was updated`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log.error(
|
log.error(
|
||||||
{ error: e },
|
{ stack: e },
|
||||||
`Error updating the release: ${release.ReleaseNumber}`,
|
`Error updating the release: ${release.ReleaseNumber}`,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -237,10 +242,52 @@ const postRelease = async (release: Releases) => {
|
|||||||
} catch (e: any) {
|
} catch (e: any) {
|
||||||
//console.info(newDockApt);
|
//console.info(newDockApt);
|
||||||
log.error(
|
log.error(
|
||||||
{ error: e.response.data },
|
{ stack: e.response.data },
|
||||||
`An error has occurred during patching of the release: ${release.ReleaseNumber}`,
|
`An error has occurred during patching of the release: ${release.ReleaseNumber}`,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (
|
||||||
|
defaultDock?.value === "drop" &&
|
||||||
|
e.response.data.message.incudes(
|
||||||
|
"Cannot change status from Scheduled to InProgress",
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
const dropTrailer = { ...newDockApt, status: "Arrived" };
|
||||||
|
const response = await axios.patch(
|
||||||
|
`${process.env.OPENDOCK_URL}/appointment/${id}`,
|
||||||
|
dropTrailer,
|
||||||
|
{
|
||||||
|
headers: {
|
||||||
|
"content-type": "application/json; charset=utf-8",
|
||||||
|
Authorization: `Bearer ${odToken.odToken}`,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
if (response.status === 400) {
|
||||||
|
log.error({}, response.data.data.message);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
await delay(1500);
|
||||||
|
const dropTrailerProgress = { ...newDockApt, status: "InProgress" };
|
||||||
|
|
||||||
|
const res = await axios.patch(
|
||||||
|
`${process.env.OPENDOCK_URL}/appointment/${id}`,
|
||||||
|
dropTrailerProgress,
|
||||||
|
{
|
||||||
|
headers: {
|
||||||
|
"content-type": "application/json; charset=utf-8",
|
||||||
|
Authorization: `Bearer ${odToken.odToken}`,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
if (res.status === 400) {
|
||||||
|
log.error({}, response.data.data.message);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -287,13 +334,13 @@ const postRelease = async (release: Releases) => {
|
|||||||
|
|
||||||
log.info({}, `${release.ReleaseNumber} was created`);
|
log.info({}, `${release.ReleaseNumber} was created`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log.error({ error: e }, "Error creating new release");
|
log.error({ stack: e }, "Error creating new release");
|
||||||
}
|
}
|
||||||
// biome-ignore lint/suspicious/noExplicitAny: to many possibilities
|
// biome-ignore lint/suspicious/noExplicitAny: to many possibilities
|
||||||
} catch (e: any) {
|
} catch (e: any) {
|
||||||
log.error(
|
log.error(
|
||||||
{ error: e?.response?.data },
|
{ stack: e?.response?.data },
|
||||||
"Error posting new release to opendock",
|
`Error posting new release to opendock, ${release.ReleaseNumber}`,
|
||||||
);
|
);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1,8 +1,21 @@
|
|||||||
/*
|
/*
|
||||||
disables sql jobs.
|
disables sql jobs.
|
||||||
*/
|
*/
|
||||||
EXEC msdb.dbo.sp_update_job @job_name = N'[jobName]', @enabled = 0;
|
--EXEC msdb.dbo.sp_update_job @job_name = N'[jobName]', @enabled = 0;
|
||||||
-- DECLARE @JobName varchar(max) = '[jobName]'
|
-- DECLARE @JobName varchar(max) = '[jobName]'
|
||||||
-- UPDATE msdb.dbo.sysjobs
|
-- UPDATE msdb.dbo.sysjobs
|
||||||
-- SET enabled = 0
|
-- SET enabled = 0
|
||||||
-- WHERE name = @JobName;
|
-- WHERE name = @JobName;
|
||||||
|
|
||||||
|
DECLARE @JobName NVARCHAR(128) = N'[jobName]';
|
||||||
|
|
||||||
|
IF EXISTS (
|
||||||
|
SELECT 1
|
||||||
|
FROM msdb.dbo.sysjobs
|
||||||
|
WHERE name = @JobName
|
||||||
|
)
|
||||||
|
BEGIN
|
||||||
|
EXEC msdb.dbo.sp_update_job
|
||||||
|
@job_name = @JobName,
|
||||||
|
@enabled = 0;
|
||||||
|
END
|
||||||
@@ -357,6 +357,17 @@ const newSettings: NewSetting[] = [
|
|||||||
roles: ["admin"],
|
roles: ["admin"],
|
||||||
seedVersion: 1,
|
seedVersion: 1,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "defaultLoadType",
|
||||||
|
value: "drop",
|
||||||
|
active: false,
|
||||||
|
description:
|
||||||
|
"What is the default load type we will use for creating new apt: drop or live are the current options.",
|
||||||
|
moduleName: "opendock",
|
||||||
|
settingType: "standard",
|
||||||
|
roles: ["admin"],
|
||||||
|
seedVersion: 1,
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
export const baseSettingValidationCheck = async () => {
|
export const baseSettingValidationCheck = async () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user