From ea8ab16ae5ac7a0a197adc30f30af9b235384494 Mon Sep 17 00:00:00 2001 From: ZacTohZY Date: Sat, 10 Aug 2024 19:05:03 +0800 Subject: [PATCH] Removed one insert image --- client/src/pages/HBFormPage.tsx | 54 +++++++++++---------------------- client/src/pages/Ranking.tsx | 11 ++----- server/models/HBCform.js | 6 +--- server/routes/hbcform.js | 34 ++++----------------- 4 files changed, 27 insertions(+), 78 deletions(-) diff --git a/client/src/pages/HBFormPage.tsx b/client/src/pages/HBFormPage.tsx index 13d33de..74273a8 100644 --- a/client/src/pages/HBFormPage.tsx +++ b/client/src/pages/HBFormPage.tsx @@ -36,8 +36,7 @@ const validationSchema = Yup.object({ .positive("Must be a positive value") .max(99999.99, "Value is too large") .required("Average bill is a required field"), - ebPicture: Yup.mixed().required("Electrical bill picture is required"), - wbPicture: Yup.mixed().required("Water bill picture is required"), + billPicture: Yup.mixed().required("Bill picture is required"), }); export default function HBFormPage() { @@ -49,15 +48,13 @@ export default function HBFormPage() { totalBill: "", noOfDependents: "", avgBill: "", - ebPicture: null, - wbPicture: null, + billPicture: null, userId: "", }); // Add state for image selection const [imagesSelected, setImagesSelected] = useState({ - ebPicture: false, - wbPicture: false, + billPicture: false, }); useEffect(() => { @@ -112,12 +109,8 @@ export default function HBFormPage() { formData.append("noOfDependents", values.noOfDependents); formData.append("avgBill", values.avgBill); - if (values.ebPicture) { - formData.append("ebPicture", values.ebPicture); - } - - if (values.wbPicture) { - formData.append("wbPicture", values.wbPicture); + if (values.billPicture) { + formData.append("billPicture", values.billPicture); } if (userId != null) { @@ -137,8 +130,7 @@ export default function HBFormPage() { if (response.status === 200) { console.log("Form created successfully:", response.data); resetForm(); // Clear form after successful submit - setFieldValue("ebPicture", null); - setFieldValue("wbPicture", null); + setFieldValue("billPicture", null); navigate(-1); } else { console.error("Error creating form:", response.statusText); @@ -190,12 +182,8 @@ export default function HBFormPage() { formData.append("noOfDependents", values.noOfDependents); formData.append("avgBill", values.avgBill); - if (values.ebPicture) { - formData.append("ebPicture", values.ebPicture); - } - - if (values.wbPicture) { - formData.append("wbPicture", values.wbPicture); + if (values.billPicture) { + formData.append("billPicture", values.billPicture); } if (userId != null) { @@ -216,8 +204,7 @@ export default function HBFormPage() { if (response.status === 200) { console.log("Form created successfully:", response.data); resetForm(); // Clear form after successful submit - setFieldValue("ebPicture", null); - setFieldValue("wbPicture", null); + setFieldValue("billPicture", null); navigate(-1); } else { console.error("Error creating form:", response.statusText); @@ -242,7 +229,7 @@ export default function HBFormPage() { return (
-
+
diff --git a/server/models/HBCform.js b/server/models/HBCform.js index 7eca30f..ce41be4 100644 --- a/server/models/HBCform.js +++ b/server/models/HBCform.js @@ -30,11 +30,7 @@ module.exports = (sequelize, DataTypes) => { type: DataTypes.DECIMAL(7, 2), allowNull: false, }, - ebPicture: { - type: DataTypes.BLOB("long"), - allowNull: true, - }, - wbPicture: { + billPicture: { type: DataTypes.BLOB("long"), allowNull: true, }, diff --git a/server/routes/hbcform.js b/server/routes/hbcform.js index 511e488..d98058d 100644 --- a/server/routes/hbcform.js +++ b/server/routes/hbcform.js @@ -62,8 +62,7 @@ async function processFile(file) { router.post( "/", upload.fields([ - { name: "ebPicture", maxCount: 1 }, - { name: "wbPicture", maxCount: 1 }, + { name: "billPicture", maxCount: 1 }, ]), async (req, res) => { let data = req.body; @@ -83,14 +82,12 @@ router.post( data = await validationSchema.validate(data, { abortEarly: false }); // Process the files - const processedEbPicture = await processFile(files.ebPicture[0]); - const processedWbPicture = await processFile(files.wbPicture[0]); + const processedbillPicture = await processFile(files.billPicture[0]); // Save the form with processed files let result = await HBCform.create({ ...data, - ebPicture: processedEbPicture, - wbPicture: processedWbPicture, + billPicture: processedbillPicture, }); res.json(result); @@ -130,37 +127,18 @@ router.get("/:id", async (req, res) => { res.json(hbcform); }); -router.get("/ebPicture/:id", async (req, res) => { +router.get("/billPicture/:id", async (req, res) => { let id = req.params.id; let hbcform = await HBCform.findByPk(id); - if (!hbcform || !hbcform.ebPicture) { + if (!hbcform || !hbcform.billPicture) { res.sendStatus(404); return; } try { res.set("Content-Type", "image/jpeg"); // Adjust the content type as necessary - res.send(hbcform.ebPicture); - } catch (err) { - res - .status(500) - .json({ message: "Error retrieving electrical bill", error: err }); - } -}); - -router.get("/wbPicture/:id", async (req, res) => { - let id = req.params.id; - let hbcform = await HBCform.findByPk(id); - - if (!hbcform || !hbcform.wbPicture) { - res.sendStatus(404); - return; - } - - try { - res.set("Content-Type", "image/jpeg"); // Adjust the content type as necessary - res.send(hbcform.wbPicture); + res.send(hbcform.billPicture); } catch (err) { res .status(500)