Skip to content

Commit 0b02849

Browse files
authored
Merge pull request pradanvirudhunagar#42 from akshaykumar059004/main
Implemented update feature for land forms
2 parents c55c37c + 3b16617 commit 0b02849

File tree

1 file changed

+219
-13
lines changed

1 file changed

+219
-13
lines changed

controllers/landformData.controller.js

Lines changed: 219 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
const db = require("../configs/mysql_config");
33
const asyncHandler = require("../middlewares/asyncHandler");
44

5+
//Post landform data
6+
57
const postLandformData_basicdetails_sql = `INSERT INTO forms (
68
farmer_name, age, mobile, district, block, panchayat, hamlet,
79
id_type, id_number, gender, spouse, type_of_households, h_members,
@@ -32,10 +34,11 @@ exports.postLandformData = asyncHandler(async (req, res) => {
3234
await connection.beginTransaction(); // 🚀 Start transaction
3335

3436
try {
37+
console.log("Inserting...");
3538
const landformData = req.body;
3639
const date = new Date();
3740
const today = new Date(date.getFullYear(), date.getMonth(), date.getDate()).toLocaleDateString('en-CA');
38-
// console.log("Received landform data:", landformData);
41+
//console.log("Received landform data:", landformData);
3942

4043
const safe = (value) => value === undefined ? null : value;
4144

@@ -74,7 +77,7 @@ exports.postLandformData = asyncHandler(async (req, res) => {
7477
]);
7578

7679
const form_id = formResult.insertId;
77-
console.log("Form ID:", form_id);
80+
//console.log("Form ID:", form_id);
7881

7982
// Insert land details
8083
await connection.execute(postLandformData_landdetails_sql, [
@@ -122,17 +125,17 @@ exports.postLandformData = asyncHandler(async (req, res) => {
122125

123126
// console.log(landformData?.bankDetails?.submittedFiles?.idCard?.name);
124127
// Optional: Insert submittedFiles if present
125-
if (landformData.bankDetails.submittedFiles) {
126-
await connection.execute(postLandformData_submittedFiles_sql, [
127-
safe(form_id),
128-
safe(landformData.bankDetails.submittedFiles.idCard.name),
129-
safe(landformData.bankDetails.submittedFiles.geoTag.name),
130-
safe(landformData.bankDetails.submittedFiles.patta.name),
131-
safe(landformData.bankDetails.submittedFiles.fmb.name),
132-
safe(landformData.bankDetails.submittedFiles.farmerPhoto.name),
133-
safe(landformData.bankDetails.submittedFiles.bankPassbook.name)
134-
]);
135-
}
128+
// if (landformData.bankDetails.submittedFiles) {
129+
// await connection.execute(postLandformData_submittedFiles_sql, [
130+
// safe(form_id),
131+
// safe(landformData.bankDetails.submittedFiles.idCard.name),
132+
// safe(landformData.bankDetails.submittedFiles.geoTag.name),
133+
// safe(landformData.bankDetails.submittedFiles.patta.name),
134+
// safe(landformData.bankDetails.submittedFiles.fmb.name),
135+
// safe(landformData.bankDetails.submittedFiles.farmerPhoto.name),
136+
// safe(landformData.bankDetails.submittedFiles.bankPassbook.name)
137+
// ]);
138+
// }
136139

137140
// Commit transaction
138141
await connection.commit();
@@ -147,3 +150,206 @@ exports.postLandformData = asyncHandler(async (req, res) => {
147150
}
148151
});
149152

153+
// Update landform data (files is not included)
154+
const updateLandformData_sql = `
155+
UPDATE forms
156+
LEFT JOIN bank_details ON forms.id = bank_details.form_id
157+
LEFT JOIN files ON forms.id = files.form_id
158+
LEFT JOIN form_lands ON forms.id = form_lands.form_id
159+
SET
160+
forms.farmer_name = ?,
161+
forms.age = ?,
162+
forms.mobile = ?,
163+
forms.district = ?,
164+
forms.block = ?,
165+
forms.panchayat = ?,
166+
forms.hamlet = ?,
167+
forms.id_type = ?,
168+
forms.id_number = ?,
169+
forms.gender = ?,
170+
forms.spouse = ?,
171+
forms.type_of_households = ?,
172+
forms.h_members = ?,
173+
forms.hh_occupation = ?,
174+
forms.special_catog = ?,
175+
forms.caste = ?,
176+
forms.house_owner = ?,
177+
forms.type_of_house = ?,
178+
forms.drinking_water = ?,
179+
forms.potability = ?,
180+
forms.domestic_water = ?,
181+
forms.toilet_avail = ?,
182+
forms.toilet_cond = ?,
183+
forms.household_education = ?,
184+
forms.lat = ?,
185+
forms.lon = ?,
186+
187+
bank_details.account_holder_name = ?,
188+
bank_details.account_number = ?,
189+
bank_details.bank_name = ?,
190+
bank_details.branch = ?,
191+
bank_details.ifsc_code = ?,
192+
bank_details.farmer_ack = ?,
193+
194+
form_lands.ownership = ?,
195+
form_lands.well_irrigation = ?,
196+
form_lands.area_irrigated = ?,
197+
form_lands.irrigated_lands = ?,
198+
form_lands.patta = ?,
199+
form_lands.total_area = ?,
200+
form_lands.taluk = ?,
201+
form_lands.firka = ?,
202+
form_lands.revenue = ?,
203+
form_lands.crop_season = ?,
204+
form_lands.livestocks = ?,
205+
form_lands.sf_number = ?,
206+
form_lands.soil_type = ?,
207+
form_lands.land_to_benefit = ?,
208+
form_lands.area_benefited = ?,
209+
form_lands.type_of_work = ?,
210+
form_lands.any_other_works = ?,
211+
form_lands.p_contribution = ?,
212+
form_lands.f_contribution = ?,
213+
form_lands.total_est = ?
214+
WHERE
215+
forms.form_type = 1
216+
AND forms.id = ?;
217+
`;
218+
exports.updateLandformData = asyncHandler(async (req, res) => {
219+
const connection = await db.getConnection();
220+
const landformData = req.body;
221+
//console.log(landformData);
222+
const safe = (value) => value === undefined ? null : value;
223+
console.log("Updating....");
224+
// console.log(landformData.basicDetails.name);
225+
// console.log(landformData.basicDetails.age);
226+
// console.log(landformData.basicDetails.mobile);
227+
// console.log(landformData.basicDetails.district);
228+
// console.log(landformData.basicDetails.block);
229+
// console.log(landformData.basicDetails.panchayat);
230+
// console.log(landformData.basicDetails.hamlet);
231+
// console.log(landformData.basicDetails.idCardType);
232+
// console.log(landformData.basicDetails.idCardNumber);
233+
// console.log(landformData.basicDetails.gender);
234+
// console.log(landformData.basicDetails.fatherSpouse);
235+
// console.log(landformData.basicDetails.householdType);
236+
// console.log(landformData.basicDetails.hhcombined);
237+
// console.log(landformData.basicDetails.occupationCombined);
238+
// console.log(landformData.basicDetails.specialCategoryNumber);
239+
// console.log(landformData.basicDetails.caste);
240+
// console.log(landformData.basicDetails.houseOwnership);
241+
// console.log(landformData.basicDetails.houseType);
242+
// console.log(landformData.basicDetails.drinkingWaterCombined);
243+
// console.log(landformData.basicDetails.potabilityCombined);
244+
// console.log(landformData.basicDetails.domesticWaterCombined);
245+
// console.log(landformData.basicDetails.toiletAvailability);
246+
// console.log(landformData.basicDetails.toiletCondition);
247+
// console.log(landformData.basicDetails.education);
248+
// console.log(landformData.landDevelopment.latitude);
249+
// console.log(landformData.landDevelopment.longitude);
250+
// console.log(landformData.bankDetails.accountHolderName);
251+
// console.log(landformData.bankDetails.accountNumber);
252+
// console.log(landformData.bankDetails.bankName);
253+
// console.log(landformData.bankDetails.branch);
254+
// console.log(landformData.bankDetails.ifscCode);
255+
// console.log(landformData.bankDetails.farmerAgreed);
256+
// // console.log(landformData.bankDetails.submittedFiles.idCard);
257+
// // console.log(landformData.bankDetails.submittedFiles.geoTag);
258+
// // console.log(landformData.bankDetails.submittedFiles.patta);
259+
// // console.log(landformData.bankDetails.submittedFiles.fmb);
260+
// // console.log(landformData.bankDetails.submittedFiles.farmerPhoto);
261+
// // console.log(landformData.bankDetails.submittedFiles.bankPassbook);
262+
// console.log(landformData.landOwnership.landOwnershipType);
263+
// console.log(landformData.landOwnership.hasWell);
264+
// console.log(landformData.landOwnership.areaIrrigated);
265+
// console.log(landformData.landOwnership.irrigatedLandCombined);
266+
// console.log(landformData.landOwnership.pattaNumber);
267+
// console.log(landformData.landOwnership.totalArea);
268+
// console.log(landformData.landOwnership.taluk);
269+
// console.log(landformData.landOwnership.firka);
270+
// console.log(landformData.landOwnership.revenueVillage);
271+
// console.log(landformData.landOwnership.cropSeasonCombined);
272+
// console.log(landformData.landOwnership.livestockCombined);
273+
// console.log(landformData.landDevelopment.sfNumber);
274+
// console.log(landformData.landDevelopment.soilTypeCombined);
275+
// console.log(landformData.landDevelopment.landBenefit);
276+
// console.log(landformData.landDevelopment.proposalArea);
277+
// console.log(landformData.landDevelopment.workType);
278+
// console.log(landformData.landDevelopment.otherWorks);
279+
// console.log(landformData.landDevelopment.pradanContribution);
280+
// console.log(landformData.landDevelopment.farmerContribution);
281+
282+
try {
283+
const [results] = await connection.execute(updateLandformData_sql, [
284+
safe(landformData.basicDetails.name),
285+
safe(landformData.basicDetails.age),
286+
safe(landformData.basicDetails.mobile),
287+
safe(landformData.basicDetails.district),
288+
safe(landformData.basicDetails.block),
289+
safe(landformData.basicDetails.panchayat),
290+
safe(landformData.basicDetails.hamlet),
291+
safe(landformData.basicDetails.idCardType),
292+
safe(landformData.basicDetails.idCardNumber),
293+
safe(landformData.basicDetails.gender),
294+
safe(landformData.basicDetails.fatherSpouse),
295+
safe(landformData.basicDetails.householdType),
296+
safe(landformData.basicDetails.hhcombined),
297+
safe(landformData.basicDetails.occupationCombined),
298+
safe(landformData.basicDetails.specialCategoryNumber),
299+
safe(landformData.basicDetails.caste),
300+
safe(landformData.basicDetails.houseOwnership),
301+
safe(landformData.basicDetails.houseType),
302+
safe(landformData.basicDetails.drinkingWaterCombined),
303+
safe(landformData.basicDetails.potabilityCombined),
304+
safe(landformData.basicDetails.domesticWaterCombined),
305+
safe(landformData.basicDetails.toiletAvailability),
306+
safe(landformData.basicDetails.toiletCondition),
307+
safe(landformData.basicDetails.education),
308+
safe(landformData.landDevelopment.latitude),
309+
safe(landformData.landDevelopment.longitude),
310+
safe(landformData.bankDetails.accountHolderName),
311+
safe(landformData.bankDetails.accountNumber),
312+
safe(landformData.bankDetails.bankName),
313+
safe(landformData.bankDetails.branch),
314+
safe(landformData.bankDetails.ifscCode),
315+
safe(landformData.bankDetails.farmerAgreed),
316+
// safe(landformData.bankDetails.submittedFiles.idCard),
317+
// safe(landformData.bankDetails.submittedFiles.geoTag),
318+
// safe(landformData.bankDetails.submittedFiles.patta),
319+
// safe(landformData.bankDetails.submittedFiles.fmb),
320+
// safe(landformData.bankDetails.submittedFiles.farmerPhoto),
321+
// safe(landformData.bankDetails.submittedFiles.bankPassbook),
322+
safe(landformData.landOwnership.landOwnershipType),
323+
safe(landformData.landOwnership.hasWell),
324+
safe(landformData.landOwnership.areaIrrigated),
325+
safe(landformData.landOwnership.irrigatedLandCombined),
326+
safe(landformData.landOwnership.pattaNumber),
327+
safe(landformData.landOwnership.totalArea),
328+
safe(landformData.landOwnership.taluk),
329+
safe(landformData.landOwnership.firka),
330+
safe(landformData.landOwnership.revenueVillage),
331+
safe(landformData.landOwnership.cropSeasonCombined),
332+
safe(landformData.landOwnership.livestockCombined),
333+
safe(landformData.landDevelopment.sfNumber),
334+
safe(landformData.landDevelopment.soilTypeCombined),
335+
safe(landformData.landDevelopment.landBenefit),
336+
safe(landformData.landDevelopment.proposalArea),
337+
safe(landformData.landDevelopment.workType),
338+
safe(landformData.landDevelopment.otherWorks),
339+
safe(landformData.landDevelopment.pradanContribution),
340+
safe(landformData.landDevelopment.farmerContribution),
341+
safe(landformData.landDevelopment.totalEstimate),
342+
safe(landformData.basicDetails.form_id)
343+
]);
344+
console.log("Landform Query executed");
345+
if (results.affectedRows > 0) {
346+
res.status(200).json({ message: "Form data updated successfully" });
347+
}
348+
await connection.commit();
349+
} catch (err) {
350+
res.status(500).json({ error: err.message });
351+
await connection.rollback();
352+
}finally {
353+
connection.release();
354+
}
355+
});

0 commit comments

Comments
 (0)