diff --git a/src/main/java/in/gov/chennaicorporation/gccoffice/childrensurvey/Service/ChildrenSurveyService.java b/src/main/java/in/gov/chennaicorporation/gccoffice/childrensurvey/Service/ChildrenSurveyService.java index 1b124f9..10b32f7 100644 --- a/src/main/java/in/gov/chennaicorporation/gccoffice/childrensurvey/Service/ChildrenSurveyService.java +++ b/src/main/java/in/gov/chennaicorporation/gccoffice/childrensurvey/Service/ChildrenSurveyService.java @@ -263,6 +263,26 @@ public class ChildrenSurveyService { masterTable, rawAnswer, othersAnswer); + if (qid == 58) { + + personalInfo.put(question, finalAnswer); + + int count = 0; + + try { + count = Integer.parseInt(finalAnswer); + } catch (Exception e) { + } + + if (count > 0) { + + finalResponse.put( + "familyMembers", + getFamilyMembers(surveyId)); + } + + continue; + } // PERSONAL INFORMATION /* @@ -530,6 +550,61 @@ public class ChildrenSurveyService { return rawAnswer; } + private List> getFamilyMembers(String surveyId) { + + String sql = """ + SELECT + fm.id, + fm.qid, + fm.answer, + qm.q_english + FROM child_survey_response_family_members fm + INNER JOIN child_survey_questions_master qm + ON qm.qid = fm.qid + WHERE fm.survey_id = ? + AND fm.isactive = 1 + AND fm.isdelete = 0 + ORDER BY fm.id + """; + + List> rows = jdbcTemplate.queryForList(sql, surveyId); + + List> members = new ArrayList<>(); + + Map member = null; + + for (Map row : rows) { + + Integer qid = ((Number) row.get("qid")).intValue(); + + String question = row.get("q_english").toString(); + + String answer = row.get("answer") == null + ? "" + : row.get("answer").toString(); + + // Every Name starts a new member + if (qid == 6) { + + if (member != null) { + members.add(member); + } + + member = new LinkedHashMap<>(); + } + + if (member != null) { + member.put(question, answer); + } + } + + if (member != null) { + members.add(member); + } + + return members; + } + private String resolveAnswer1( String questionType, String masterTable, diff --git a/src/main/java/in/gov/chennaicorporation/gccoffice/configuration/DataSourceConfig.java b/src/main/java/in/gov/chennaicorporation/gccoffice/configuration/DataSourceConfig.java index 5bcb8cf..1b406ce 100644 --- a/src/main/java/in/gov/chennaicorporation/gccoffice/configuration/DataSourceConfig.java +++ b/src/main/java/in/gov/chennaicorporation/gccoffice/configuration/DataSourceConfig.java @@ -24,8 +24,8 @@ import java.util.Properties; @EnableTransactionManagement public class DataSourceConfig { -// private static String host = "localhost:3306"; -// private static String dbpassword = "root"; + // private static String host = "localhost:3306"; + // private static String dbpassword = "root"; // private static String dbpassword = "gccroot"; @@ -430,7 +430,7 @@ public class DataSourceConfig { dataSource.setPassword(dbpassword); return dataSource; } - + /////////////// Bulk Waste Generator ///////////////////// @Bean(name = "mysqlBulkWasteDataSource") public DataSource mysqlBulkWasteDataSource() { @@ -441,8 +441,8 @@ public class DataSourceConfig { dataSource.setPassword(dbpassword); return dataSource; } - - //////////////////////////////(For GCC USER) //////////////////////// + + ////////////////////////////// (For GCC USER) //////////////////////// @Bean(name = "mysqlGCCUserDataSource") public DataSource mysqlGCCUserDataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); diff --git a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/controller/PendinglistApicontroller.java b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/controller/PendinglistApicontroller.java index 9739a80..f49d8c6 100644 --- a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/controller/PendinglistApicontroller.java +++ b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/controller/PendinglistApicontroller.java @@ -94,9 +94,10 @@ public class PendinglistApicontroller { @GetMapping("/getgreencommitteelist") public List> getgreencommitteelist( - @RequestParam String date, @RequestParam String zones) { + @RequestParam String date, @RequestParam String zones, @RequestParam String appType, + @RequestParam String compType) { - List> refnums = pendinglistService.getrefnums(date, zones); + List> refnums = pendinglistService.getrefnums(date, zones, appType, compType); System.out.println("refnums=" + refnums); List> savedIds = pendinglistService.getvcsavedrefids(); System.out.println("savedIds=" + savedIds); diff --git a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/PendinglistService.java b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/PendinglistService.java index 9bf542b..55c3647 100644 --- a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/PendinglistService.java +++ b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/PendinglistService.java @@ -109,7 +109,7 @@ public class PendinglistService { // } // } - public List> getrefnums(String date, String zones) { + public List> getrefnums(String date, String zones, String appType, String compType) { System.out.println(date + " " + zones); try { @@ -132,6 +132,34 @@ public class PendinglistService { sql.append(" AND zone = ? "); params.add(zones); } + if (appType != null && !appType.isEmpty()) { + sql.append( + " AND ref_id IN ( " + + " SELECT ref_id FROM reg_details WHERE cby = ? " + + " ) "); + params.add(appType); + } + if (compType != null && !compType.isEmpty()) { + + if ("Felling".equalsIgnoreCase(compType)) { + + sql.append( + " AND ref_id IN ( " + + " SELECT ref_id " + + " FROM complaint_details " + + " WHERE comp_nature_id IN (2,4) " + + " ) "); + + } else if ("Transplantation".equalsIgnoreCase(compType)) { + + sql.append( + " AND ref_id IN ( " + + " SELECT ref_id " + + " FROM complaint_details " + + " WHERE comp_nature_id IN (5,6) " + + " ) "); + } + } sql.append( " GROUP BY ref_id, inspection_by " + diff --git a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/ReportService.java b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/ReportService.java index cdff117..d958cfd 100644 --- a/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/ReportService.java +++ b/src/main/java/in/gov/chennaicorporation/gccoffice/greencommittee/service/ReportService.java @@ -575,7 +575,130 @@ public class ReportService { } - public List> getReport( + /* + * public List> getReport( + * String fromDate, + * String toDate, + * String zone, + * String ward, + * String status) { + * + * List> result = new ArrayList<>(); + * + * try { + * + * String externalUrl = + * "https://erp.chennaicorporation.gov.in/pgr/newmobileservice"; + * + * StringBuilder url = new StringBuilder(externalUrl); + * + * url.append("?serviceId=ms_dashboard_details"); + * + * // Mandatory + * url.append("&From_date=").append(URLEncoder.encode(fromDate, "UTF-8")); + * url.append("&To_date=").append(URLEncoder.encode(toDate, "UTF-8")); + * url.append("&jsonResp=Yes"); + * + * // Status + * if (status == null || status.trim().isEmpty()) { + * url.append("&Status=total"); + * } else if ("processing".equalsIgnoreCase(status)) { + * url.append("&Status=processing,redressed"); + * } else { + * url.append("&Status=").append(URLEncoder.encode(status, "UTF-8")); + * } + * + * // Mandatory Parameters + * url.append("&isQcuser=Yes"); + * url.append("&ComplaintType=") + * .append(URLEncoder.encode("Tree Pruning", "UTF-8")); + * + * url.append("&ComplaintGroupId=") + * .append(URLEncoder.encode("Park and Playground", "UTF-8")); + * + * // Zone + * if (zone != null && !zone.trim().isEmpty()) { + * url.append("&Zoneid=N") + * .append(String.format("%02d", Integer.parseInt(zone))); + * } else { + * url.append("&Zoneid="); + * } + * + * // Mandatory blank + * url.append("&RegionId="); + * + * // Ward + * if (ward != null && !ward.trim().isEmpty()) { + * url.append("&WardId=N") + * .append(String.format("%03d", Integer.parseInt(ward))); + * } else { + * url.append("&WardId="); + * } + * + * System.out.println("======================================"); + * System.out.println("Calling URL:"); + * System.out.println(url.toString()); + * System.out.println("======================================"); + * + * URL api = new URL(url.toString()); + * + * HttpURLConnection conn = (HttpURLConnection) api.openConnection(); + * conn.setRequestMethod("GET"); + * conn.setRequestProperty("Accept", "application/json"); + * + * int responseCode = conn.getResponseCode(); + * + * System.out.println("Response Code : " + responseCode); + * + * BufferedReader br; + * + * if (responseCode >= 200 && responseCode < 300) { + * br = new BufferedReader( + * new InputStreamReader(conn.getInputStream())); + * } else { + * br = new BufferedReader( + * new InputStreamReader(conn.getErrorStream())); + * } + * + * StringBuilder response = new StringBuilder(); + * + * String line; + * + * while ((line = br.readLine()) != null) { + * response.append(line); + * } + * + * br.close(); + * + * System.out.println("API Response:"); + * System.out.println(response.toString()); + * + * ObjectMapper mapper = new ObjectMapper(); + * + * JsonNode root = mapper.readTree(response.toString()); + * + * JsonNode details = root.get("Details"); + * + * if (details != null && details.isArray()) { + * + * result = mapper.convertValue( + * details, + * new TypeReference>>() { + * }); + * + * } + * + * } catch (Exception e) { + * + * e.printStackTrace(); + * + * } + * + * return result; + * } + */ + + private List> callApi( String fromDate, String toDate, String zone, @@ -592,20 +715,17 @@ public class ReportService { url.append("?serviceId=ms_dashboard_details"); - // Mandatory url.append("&From_date=").append(URLEncoder.encode(fromDate, "UTF-8")); url.append("&To_date=").append(URLEncoder.encode(toDate, "UTF-8")); + url.append("&jsonResp=Yes"); // Status - if (status == null || status.trim().isEmpty()) { - url.append("&Status=total"); - } else { - url.append("&Status=").append(URLEncoder.encode(status, "UTF-8")); - } + url.append("&Status=").append(URLEncoder.encode(status, "UTF-8")); - // Mandatory Parameters + // Mandatory url.append("&isQcuser=Yes"); + url.append("&ComplaintType=") .append(URLEncoder.encode("Tree Pruning", "UTF-8")); @@ -614,31 +734,42 @@ public class ReportService { // Zone if (zone != null && !zone.trim().isEmpty()) { + url.append("&Zoneid=N") - .append(String.format("%02d", Integer.parseInt(zone))); + .append(String.format("%02d", + Integer.parseInt(zone))); + } else { + url.append("&Zoneid="); + } - // Mandatory blank + // Region url.append("&RegionId="); // Ward if (ward != null && !ward.trim().isEmpty()) { + url.append("&WardId=N") - .append(String.format("%03d", Integer.parseInt(ward))); + .append(String.format("%03d", + Integer.parseInt(ward))); + } else { + url.append("&WardId="); + } - System.out.println("======================================"); - System.out.println("Calling URL:"); + System.out.println("-----------------------------------"); + System.out.println("Calling API"); System.out.println(url.toString()); - System.out.println("======================================"); + System.out.println("-----------------------------------"); URL api = new URL(url.toString()); HttpURLConnection conn = (HttpURLConnection) api.openConnection(); + conn.setRequestMethod("GET"); conn.setRequestProperty("Accept", "application/json"); @@ -649,11 +780,15 @@ public class ReportService { BufferedReader br; if (responseCode >= 200 && responseCode < 300) { + br = new BufferedReader( new InputStreamReader(conn.getInputStream())); + } else { + br = new BufferedReader( new InputStreamReader(conn.getErrorStream())); + } StringBuilder response = new StringBuilder(); @@ -661,13 +796,14 @@ public class ReportService { String line; while ((line = br.readLine()) != null) { + response.append(line); + } br.close(); - System.out.println("API Response:"); - System.out.println(response.toString()); + System.out.println(response); ObjectMapper mapper = new ObjectMapper(); @@ -675,6 +811,16 @@ public class ReportService { JsonNode details = root.get("Details"); + /* + * if (details != null && details.isArray()) { + * + * result = mapper.convertValue( + * details, + * new TypeReference>>() { + * }); + * + * } + */ if (details != null && details.isArray()) { result = mapper.convertValue( @@ -682,6 +828,18 @@ public class ReportService { new TypeReference>>() { }); + // Get latest status from complaint details API + for (Map row : result) { + + String complaintNo = String.valueOf(row.get("Complaint Number")); + + Map complaintDetails = getComplaintDetailsreport(complaintNo); + + if (!complaintDetails.isEmpty()) { + row.put("complaintcurrentstatus", + complaintDetails.get("complaintcurrentstatus")); + } + } } } catch (Exception e) { @@ -693,6 +851,50 @@ public class ReportService { return result; } + public List> getReport( + String fromDate, + String toDate, + String zone, + String ward, + String status) { + + List> result = new ArrayList<>(); + + try { + + if (status == null || status.trim().isEmpty()) { + + // Default + result = callApi(fromDate, toDate, zone, ward, "total"); + + } else if ("processing".equalsIgnoreCase(status)) { + + // Fetch Processing + result.addAll(callApi(fromDate, toDate, zone, ward, "processing")); + + // Fetch Redressed + result.addAll(callApi(fromDate, toDate, zone, ward, "redressed")); + + } else if ("closed".equalsIgnoreCase(status)) { + + // Completed + // result = callApi(fromDate, toDate, zone, ward, status); + result.addAll(callApi(fromDate, toDate, zone, ward, "completed")); + + // Fetch Redressed + result.addAll(callApi(fromDate, toDate, zone, ward, "closed")); + + } else { + result = callApi(fromDate, toDate, zone, ward, status); + } + + } catch (Exception e) { + e.printStackTrace(); + } + + return result; + } + public Map getComplaintDetailsreport(String complaintId) { try { diff --git a/src/main/resources/templates/modules/childrensurvey/childlist.html b/src/main/resources/templates/modules/childrensurvey/childlist.html index 9617f94..f955ec6 100644 --- a/src/main/resources/templates/modules/childrensurvey/childlist.html +++ b/src/main/resources/templates/modules/childrensurvey/childlist.html @@ -544,14 +544,18 @@ let slno = 1; - /*for (const rowNode of rows) { - - // GET SURVEY ID FROM TABLE + + for (const rowNode of rows) { + let surveyId = $(rowNode[1]).text() || rowNode[1]; - + surveyId = surveyId.toString().trim(); - - // CALL DETAILS API + + // SKIP EMPTY ROWS + if (!surveyId || surveyId === "") { + continue; + } + let surveyData = await $.ajax({ url: "/gcc/api/children-survey/details", type: "GET", @@ -559,58 +563,107 @@ surveyId: surveyId } }); - - // MERGE ALL SECTIONS - let allQuestions = { - - ...surveyData.personalInformation, + + + /*let allQuestions = { + + ...surveyData.locationDetails, + ...surveyData.personalInformation, ...surveyData.educationDetails, ...surveyData.healthDetails, ...surveyData.documentDetails, ...surveyData.vulnerabilityDetails }; - - // CREATE ROW OBJECT + let rowData = { "S.No": slno, "Survey ID": surveyId }; - - // ADD ALL QUESTIONS AS COLUMNS + Object.keys(allQuestions).forEach(function (question) { - + rowData[question] = allQuestions[question]; - + }); - + excelData.push(rowData); - - slno++; - }*/ - for (const rowNode of rows) { - let surveyId = $(rowNode[1]).text() || rowNode[1]; + slno++;*/ + /*const familyMembers = surveyData.familyMembers || []; - surveyId = surveyId.toString().trim(); + // Common survey data + let commonData = { + ...surveyData.locationDetails, + ...surveyData.personalInformation, + ...surveyData.educationDetails, + ...surveyData.healthDetails, + ...surveyData.documentDetails, + ...surveyData.vulnerabilityDetails + }; - // SKIP EMPTY ROWS - if (!surveyId || surveyId === "") { - continue; - } + if (familyMembers.length > 0) { - let surveyData = await $.ajax({ - url: "/gcc/api/children-survey/details", - type: "GET", - data: { - surveyId: surveyId - } - }); + familyMembers.forEach(function (member) { + + let rowData = { + "S.No": slno, + "Survey ID": surveyId + }; + + // Survey Questions + Object.keys(commonData).forEach(function (question) { + rowData[question] = commonData[question]; + }); + + // Family Member Columns + rowData["Family Member Name"] = + member["Name of the Child "] || ""; + + rowData["Family Member Age"] = + member["Age"] || ""; + + rowData["Family Member Relationship"] = + member["Relationship"] || ""; + + rowData["Family Member Occupation"] = + member["Occupation"] || ""; + + rowData["Family Member Gender"] = + member["Gender"] || ""; + rowData["Family Member Education"] = + member["Education Status"] || ""; - let allQuestions = { + excelData.push(rowData); + slno++; + }); + + } else { + + let rowData = { + "S.No": slno, + "Survey ID": surveyId + }; + + Object.keys(commonData).forEach(function (question) { + rowData[question] = commonData[question]; + }); + + rowData["Family Member Name"] = ""; + rowData["Family Member Age"] = ""; + rowData["Family Member Relationship"] = ""; + rowData["Family Member Occupation"] = ""; + rowData["Family Member Gender"] = ""; + rowData["Family Member Education"] = ""; + + excelData.push(rowData); + + slno++;*/ const familyMembers = surveyData.familyMembers || []; + + let commonData = { ...surveyData.locationDetails, ...surveyData.personalInformation, ...surveyData.educationDetails, @@ -619,15 +672,39 @@ ...surveyData.vulnerabilityDetails }; + // ONLY ONE ROW PER SURVEY let rowData = { "S.No": slno, "Survey ID": surveyId }; - Object.keys(allQuestions).forEach(function (question) { + // Survey Questions + Object.keys(commonData).forEach(function (question) { + rowData[question] = commonData[question]; + }); - rowData[question] = allQuestions[question]; + // Add every family member dynamically + familyMembers.forEach(function (member, index) { + + let no = index + 1; + + rowData["Family Member " + no + " Name"] = + member["Name of the Child"] || ""; + rowData["Family Member " + no + " Age"] = + member["Age"] || ""; + + rowData["Family Member " + no + " Relationship"] = + member["Relationship"] || ""; + + rowData["Family Member " + no + " Occupation"] = + member["Occupation"] || ""; + + rowData["Family Member " + no + " Gender"] = + member["Gender"] || ""; + + rowData["Family Member " + no + " Education Status"] = + member["Education Status"] || ""; }); excelData.push(rowData); @@ -671,6 +748,14 @@ "Occupation", "Family Monthly Income", "Contact Number", + /*"How many members are in the Family", + "Below that need to collect below details for Each Family Members",*/ + /*"Family Member Name", + "Family Member Age", + "Family Member Relationship", + "Family Member Occupation", + "Family Member Gender", + "Family Member Education",*/ // EDUCATION "Are they Currently Studying", @@ -686,6 +771,11 @@ "Are you Staying in any Educational Hostel", "Name of the Hostel?", "Location of the Hostel?", + /*"Does any family members need job/skill training?", + "Need skill training ?", + "select skill training", + "Job Required?", + "select job",*/ // HEALTH "Does the child have any history of health issues?", @@ -708,8 +798,57 @@ "Vulnerability Assessment", "Any Other Support Needed?", "Comments & Remarks", + "How many members are in the Family", + "Below that need to collect below details for Each Family Members", + "Does any family members need job/skill training?", + "Need skill training ?", + "select skill training", + "Job Required?", + "select job", ]; + // Find maximum family members + // Find maximum family members + let maxFamilyMembers = 0; + + excelData.forEach(function (row) { + + Object.keys(row).forEach(function (key) { + + let match = key.match(/^Family Member (\d+) Name$/); + + if (match) { + maxFamilyMembers = Math.max(maxFamilyMembers, parseInt(match[1])); + } + }); + + }); + + // Find the position after q58 + const insertIndex = headers.indexOf( + "Below that need to collect below details for Each Family Members" + ) + 1; + + // Create dynamic headers + let familyHeaders = []; + + for (let i = 1; i <= maxFamilyMembers; i++) { + + familyHeaders.push( + "Family Member " + i + " Name", + "Family Member " + i + " Age", + "Family Member " + i + " Gender", + "Family Member " + i + " Relationship", + "Family Member " + i + " Education Status", + "Family Member " + i + " Occupation" + + + ); + + } + + // Insert after q58 + headers.splice(insertIndex, 0, ...familyHeaders); // CREATE NEW ORDERED DATA let orderedExcelData = []; @@ -742,11 +881,11 @@ //const columns = []; /*Object.keys(excelData[0]).forEach(function () { - + columns.push({ wch: 30 }); - + }); - + worksheet['!cols'] = columns;*/ const columns = []; @@ -927,6 +1066,28 @@ "Personal Information", data.personalInformation ); + html += ` + +`; + html += buildSection( "Education Details", @@ -949,6 +1110,105 @@ ); $("#surveyDetails").html(html); + //console.log(data); + //console.log(data.familyMembers); + //const members = data.familyMembers; + //console.log($("#familyMemberSection").length); + + /*if (members && members.length > 0) { + + let headers = Object.keys(members[0]); + + let thead = "S.No"; + + headers.forEach(function (h) { + thead += "" + h + ""; + }); + + thead += ""; + + $("#familyTable thead").html(thead); + + let tbody = ""; + + members.forEach(function (member, index) { + + tbody += ""; + + tbody += "" + (index + 1) + ""; + + headers.forEach(function (h) { + + tbody += "" + (member[h] || "-") + ""; + + }); + + tbody += ""; + + }); + + $("#familyTable tbody").html(tbody); + + $("#familyMemberSection").show(); + + } else { + + $("#familyMemberSection").hide(); + + }*/ const members = data.familyMembers; + + if (members && members.length > 0) { + + let headers = [ + "Name of the Child", + "Age", + "Gender", + "Relationship", + "Occupation", + "Education Status" + ]; + + let thead = "S.No"; + + headers.forEach(function (h) { + + let title = h.trim(); + + thead += "" + title + ""; + + }); + + thead += ""; + + $("#familyTable thead").html(thead); + + let tbody = ""; + + members.forEach(function (member, index) { + + tbody += ""; + tbody += "" + (index + 1) + ""; + + headers.forEach(function (h) { + + tbody += "" + (member[h] || "-") + ""; + + }); + + tbody += ""; + + }); + + $("#familyTable tbody").html(tbody); + + $("#familyMemberSection").show(); + + } else { + + $("#familyMemberSection").hide(); + + } + let modal = new bootstrap.Modal( document.getElementById('surveyModal') diff --git a/src/main/resources/templates/modules/childrensurvey/surveylist.html b/src/main/resources/templates/modules/childrensurvey/surveylist.html index e00fa22..0bc4db0 100644 --- a/src/main/resources/templates/modules/childrensurvey/surveylist.html +++ b/src/main/resources/templates/modules/childrensurvey/surveylist.html @@ -285,41 +285,40 @@ - @@ -473,6 +474,8 @@ success: function (data) { + + let html = ""; function buildSection(title, sectionData) { @@ -527,6 +530,27 @@ "Personal Information", data.personalInformation ); + html += ` + +`; @@ -551,6 +575,52 @@ ); $("#surveyDetails").html(html); + console.log(data); + console.log(data.familyMembers); + const members = data.familyMembers; + console.log($("#familyMemberSection").length); + + if (members && members.length > 0) { + + let headers = Object.keys(members[0]); + + let thead = "S.No"; + + headers.forEach(function (h) { + thead += "" + h + ""; + }); + + thead += ""; + + $("#familyTable thead").html(thead); + + let tbody = ""; + + members.forEach(function (member, index) { + + tbody += ""; + + tbody += "" + (index + 1) + ""; + + headers.forEach(function (h) { + + tbody += "" + (member[h] || "") + ""; + + }); + + tbody += ""; + + }); + + $("#familyTable tbody").html(tbody); + + $("#familyMemberSection").show(); + + } else { + + $("#familyMemberSection").hide(); + + } let modal = new bootstrap.Modal( document.getElementById('surveyModal') @@ -872,6 +942,7 @@ data: { surveyId: surveyId }, success: function (data) { + alert("checking"); let html = ""; diff --git a/src/main/resources/templates/modules/greencommittee/pendinglist.html b/src/main/resources/templates/modules/greencommittee/pendinglist.html index 88a6326..9e2b134 100644 --- a/src/main/resources/templates/modules/greencommittee/pendinglist.html +++ b/src/main/resources/templates/modules/greencommittee/pendinglist.html @@ -101,6 +101,22 @@ +
+ + +
+
+ + +
Green Committee Pending List
@@ -72,7 +77,7 @@
-
Reports
+
Tree Pruning Reports
Green Committee
@@ -83,7 +88,7 @@ - +
@@ -203,248 +208,252 @@ - - - - @@ -382,7 +398,7 @@
+
+ +
+ +
+ + +
+
-
- -
- -
- - -
- -
- - -
- -
- - -
- -
-
- -
- - -
- -
- -
- -
- - -
- -
- - -
- -
- - -
- -
+
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + + +
+ +
+ + +
+ +
- -
- -
- - -
- -
- -
+ + name="sewerLength" placeholder="e.g. 190.5">
+ + name="sewerSize" placeholder="e.g. 300.0">
- +
@@ -694,8 +744,8 @@
- - + +
@@ -792,59 +843,59 @@ - - - + - $('#wardDropdown').empty() - .append(''); - - $('#roadDropdown').empty() - .append(''); + - Swal.fire( - 'Error', - response.message, - 'error' - ); - } - }, - error: function () { - Swal.fire( - 'Error', - 'Failed to update record', - 'error' - ); - }, - complete: function () { - $("#pageLoader").hide(); - } - }); + - }); - - - - - - - - + \ No newline at end of file