Browse Source

changes in view-file-details page added updated date

master
yoganandhan 9 months ago
parent
commit
f91caac9af
  1. 4
      src/main/java/com/adjustment_file_management_system/springboot/mapper/FileDataMapper.java
  2. 3
      src/main/java/com/adjustment_file_management_system/springboot/request_dto/AddFileDataRequestDTO.java
  3. 1
      src/main/java/com/adjustment_file_management_system/springboot/request_dto/FileDataRequestDTO.java
  4. 1
      src/main/java/com/adjustment_file_management_system/springboot/response_dto/FileDataResponseDTO.java
  5. 4
      src/main/java/com/adjustment_file_management_system/springboot/service/FileDataService.java
  6. 37
      src/main/resources/static/js/view-file-detail-script.js
  7. 20
      src/main/resources/templates/file/view-file-detail.html

4
src/main/java/com/adjustment_file_management_system/springboot/mapper/FileDataMapper.java

@ -54,6 +54,7 @@ public class FileDataMapper {
fileData.setTcFileGenDate(fileDataResDTO.getTcFileGenDate()); fileData.setTcFileGenDate(fileDataResDTO.getTcFileGenDate());
fileData.setTcFilePath(fileDataResDTO.getTcFilePath()); fileData.setTcFilePath(fileDataResDTO.getTcFilePath());
fileData.setVendName(fileDataResDTO.getVendName()); fileData.setVendName(fileDataResDTO.getVendName());
fileData.setDbUpdatedTimestamp(fileDataResDTO.getUpdatedDate());
return fileData; return fileData;
} }
@ -67,7 +68,7 @@ public class FileDataMapper {
fileData.setBalAmt(fileDataReqDTO.getBalAmt()); fileData.setBalAmt(fileDataReqDTO.getBalAmt());
fileData.setDcFilePath(fileDataReqDTO.getDcFilePath()); fileData.setDcFilePath(fileDataReqDTO.getDcFilePath());
fileData.setEjvNum(fileDataReqDTO.getEjvNum()); fileData.setEjvNum(fileDataReqDTO.getEjvNum());
fileData.setEjvNumFilePath(fileDataReqDTO.getEjvNumFilePath());
// fileData.setEjvNumFilePath(fileDataReqDTO.getEjvNumFilePath());
fileData.setFiAmt(fileDataReqDTO.getFiAmt()); fileData.setFiAmt(fileDataReqDTO.getFiAmt());
fileData.setFiFileGenDate(fileDataReqDTO.getFiFileGenDate()); fileData.setFiFileGenDate(fileDataReqDTO.getFiFileGenDate());
fileData.setFiFilePath(fileDataReqDTO.getFiFilePath()); fileData.setFiFilePath(fileDataReqDTO.getFiFilePath());
@ -121,6 +122,7 @@ public class FileDataMapper {
fileDataResDTO.setTcFilePath(fileData.getTcFilePath()); fileDataResDTO.setTcFilePath(fileData.getTcFilePath());
fileDataResDTO.setVendName(fileData.getVendName()); fileDataResDTO.setVendName(fileData.getVendName());
fileDataResDTO.setEjvNumFileGenDate(fileData.getEjvNumFileGenDate()); fileDataResDTO.setEjvNumFileGenDate(fileData.getEjvNumFileGenDate());
fileDataResDTO.setUpdatedDate(fileData.getDbUpdatedTimestamp());
return fileDataResDTO; return fileDataResDTO;
} }

3
src/main/java/com/adjustment_file_management_system/springboot/request_dto/AddFileDataRequestDTO.java

@ -22,6 +22,9 @@ public class AddFileDataRequestDTO {
@DateTimeFormat(pattern = "dd-MM-yyyy") @DateTimeFormat(pattern = "dd-MM-yyyy")
private Date asFileGenDate; private Date asFileGenDate;
@DateTimeFormat(pattern = "dd-MM-yyyy") @DateTimeFormat(pattern = "dd-MM-yyyy")
private Date updatedDate;
@DateTimeFormat(pattern = "dd-MM-yyyy")
private Date createdDate;
private Date piFileGenDate; private Date piFileGenDate;
private Double piAmt; private Double piAmt;
private String fileRmrk; private String fileRmrk;

1
src/main/java/com/adjustment_file_management_system/springboot/request_dto/FileDataRequestDTO.java

@ -31,6 +31,7 @@ public class FileDataRequestDTO {
private String irFilePath; private String irFilePath;
private String asFinalFilePath; private String asFinalFilePath;
private Date asFinalFileGenDate; private Date asFinalFileGenDate;
private Date updatedDate;
private String ejvNum; private String ejvNum;
private String ejvNumFilePath; private String ejvNumFilePath;
private String tcFilePath; private String tcFilePath;

1
src/main/java/com/adjustment_file_management_system/springboot/response_dto/FileDataResponseDTO.java

@ -43,4 +43,5 @@ public class FileDataResponseDTO {
private Date ejvNumFileGenDate; private Date ejvNumFileGenDate;
private FundTypeResponseDTO fundTypeResDTO; private FundTypeResponseDTO fundTypeResDTO;
private Long daysPass; private Long daysPass;
private Date updatedDate;
} }

4
src/main/java/com/adjustment_file_management_system/springboot/service/FileDataService.java

@ -299,6 +299,7 @@ public class FileDataService {
try { try {
String fileNum = addFileDataReqDTO.getFileNum().trim(); String fileNum = addFileDataReqDTO.getFileNum().trim();
String vendName = (addFileDataReqDTO.getVendName() != null String vendName = (addFileDataReqDTO.getVendName() != null
&& !addFileDataReqDTO.getVendName().trim().isEmpty()) && !addFileDataReqDTO.getVendName().trim().isEmpty())
? addFileDataReqDTO.getVendName().trim().toUpperCase() ? addFileDataReqDTO.getVendName().trim().toUpperCase()
@ -309,6 +310,8 @@ public class FileDataService {
: placeHolderDate; : placeHolderDate;
Date asFileGenDate = addFileDataReqDTO.getAsFileGenDate() != null ? addFileDataReqDTO.getAsFileGenDate() Date asFileGenDate = addFileDataReqDTO.getAsFileGenDate() != null ? addFileDataReqDTO.getAsFileGenDate()
: placeHolderDate; : placeHolderDate;
Date asUpdatedDate = addFileDataReqDTO.getUpdatedDate() != null ? addFileDataReqDTO.getUpdatedDate()
: placeHolderDate;
// 1️. Get or create AdvanceType // 1️. Get or create AdvanceType
AdvanceTypeResponseDTO advTypeResDTO = advTypeMap AdvanceTypeResponseDTO advTypeResDTO = advTypeMap
@ -328,6 +331,7 @@ public class FileDataService {
fileDataReqDTO.setPiAmt(piAmt); fileDataReqDTO.setPiAmt(piAmt);
fileDataReqDTO.setAsFileGenDate(asFileGenDate); fileDataReqDTO.setAsFileGenDate(asFileGenDate);
fileDataReqDTO.setPiFileGenDate(piFileGenDate); fileDataReqDTO.setPiFileGenDate(piFileGenDate);
fileDataReqDTO.setUpdatedDate(asUpdatedDate);
// Set default values // Set default values
setDefaultFileDataValues(fileDataReqDTO); setDefaultFileDataValues(fileDataReqDTO);

37
src/main/resources/static/js/view-file-detail-script.js

@ -1,3 +1,12 @@
$(document).ready(function () {
const today = new Date().toLocaleDateString("en-GB");
$("#updatedDate").text("Updated Date : " + today);
});
// Function to view Supporting Document in modal // Function to view Supporting Document in modal
function viewFileInModal(fileNum, fileType, filePath) { function viewFileInModal(fileNum, fileType, filePath) {
var pdfModal = new bootstrap.Modal(document.getElementById('pdf-modal')); var pdfModal = new bootstrap.Modal(document.getElementById('pdf-modal'));
@ -21,12 +30,12 @@ function viewFileInModal(fileNum, fileType, filePath) {
method: 'POST', method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: params.toString() body: params.toString()
}).then(function(response) {
}).then(function (response) {
if (!response.ok) { if (!response.ok) {
throw new Error('Failed to fetch PDF: ' + response.statusText); throw new Error('Failed to fetch PDF: ' + response.statusText);
} }
return response.arrayBuffer(); return response.arrayBuffer();
}).then(function(pdfData) {
}).then(function (pdfData) {
var blob = new Blob([pdfData], { type: 'application/pdf' }); var blob = new Blob([pdfData], { type: 'application/pdf' });
var blobUrl = URL.createObjectURL(blob); var blobUrl = URL.createObjectURL(blob);
@ -36,9 +45,9 @@ function viewFileInModal(fileNum, fileType, filePath) {
downloadBtn.download = fileName; downloadBtn.download = fileName;
return pdfjsLib.getDocument({ data: pdfData }).promise; return pdfjsLib.getDocument({ data: pdfData }).promise;
}).then(function(pdf) {
let renderPage = function(pageNum) {
return pdf.getPage(pageNum).then(function(page) {
}).then(function (pdf) {
let renderPage = function (pageNum) {
return pdf.getPage(pageNum).then(function (page) {
var viewport = page.getViewport({ scale: 1.5 }); var viewport = page.getViewport({ scale: 1.5 });
var canvas = document.createElement('canvas'); var canvas = document.createElement('canvas');
canvas.classList.add('mb-3'); canvas.classList.add('mb-3');
@ -59,14 +68,14 @@ function viewFileInModal(fileNum, fileType, filePath) {
} }
return sequence; return sequence;
}).then(function() {
}).then(function () {
pdfModal.show(); pdfModal.show();
}).catch(function(error) {
}).catch(function (error) {
alert('Error loading PDF: ' + error.message); alert('Error loading PDF: ' + error.message);
}); });
} }
$(document).ready(function() {
$(document).ready(function () {
// Initialize DataTable // Initialize DataTable
var table = $('#file-data-det-tbl').DataTable({ var table = $('#file-data-det-tbl').DataTable({
@ -86,7 +95,7 @@ $(document).ready(function() {
{ {
orderable: false, orderable: false,
targets: 0, // S.No column targets: 0, // S.No column
render: function(data, type, row, meta) {
render: function (data, type, row, meta) {
return meta.row + 1; return meta.row + 1;
} }
} }
@ -110,19 +119,19 @@ $(document).ready(function() {
$('#custom-length').html($('.dataTables_length')); $('#custom-length').html($('.dataTables_length'));
// Custom export buttons // Custom export buttons
$('#export-excel').on('click', function() {
$('#export-excel').on('click', function () {
table.button('.buttons-excel').trigger(); table.button('.buttons-excel').trigger();
}); });
$('#export-pdf').on('click', function() {
$('#export-pdf').on('click', function () {
var originalLength = table.page.len(); var originalLength = table.page.len();
table.one('draw', function() {
table.one('draw', function () {
var tableClone = $('#file-det-tbl').clone(); var tableClone = $('#file-det-tbl').clone();
tableClone.removeClass('dataTable'); tableClone.removeClass('dataTable');
tableClone.find('thead, tbody, tfoot').removeAttr('style'); tableClone.find('thead, tbody, tfoot').removeAttr('style');
// Remove "Supporting Documents" column (13th col = index 12) // Remove "Supporting Documents" column (13th col = index 12)
tableClone.find('tr').each(function() {
tableClone.find('tr').each(function () {
$(this).find('th:eq(12), td:eq(12)').remove(); $(this).find('th:eq(12), td:eq(12)').remove();
}); });
@ -147,7 +156,7 @@ $(document).ready(function() {
image: { type: 'jpeg', quality: 0.98 }, image: { type: 'jpeg', quality: 0.98 },
html2canvas: { scale: 2, useCORS: true }, html2canvas: { scale: 2, useCORS: true },
jsPDF: { unit: 'in', format: 'a3', orientation: 'landscape' } jsPDF: { unit: 'in', format: 'a3', orientation: 'landscape' }
}).from(pdfContainer[0]).save().then(function() {
}).from(pdfContainer[0]).save().then(function () {
table.page.len(originalLength).draw(); table.page.len(originalLength).draw();
pdfContainer.hide(); pdfContainer.hide();
}); });

20
src/main/resources/templates/file/view-file-detail.html

@ -26,9 +26,27 @@
<th:block th:replace="~{fragments/navbar :: navbar(${curPage})}"></th:block> <th:block th:replace="~{fragments/navbar :: navbar(${curPage})}"></th:block>
<div class="container"> <div class="container">
<div class="form-container"> <div class="form-container">
<div class="header-row">
<!-- <div class="header-row">
<button class="back-button" onclick="goBack()">&#8592; Back</button> <button class="back-button" onclick="goBack()">&#8592; Back</button>
</div> -->
<div class="header-row justify-content-between align-items-center">
<!-- Left -->
<button class="back-button" onclick="goBack()">&#8592; Back</button>
<!-- Right -->
<!-- <span id="updatedDate" value="09-12-2025" class="text-muted fw-semibold"></span> -->
<span>
<strong>Updated Date:</strong>
<span style="text-transform: uppercase;"
th:text="${#dates.format(fileDatum.updatedDate, 'dd-MM-yyyy hh:mm a')}"></span>
</span>
</div> </div>
<h2 class="form-title">File Details</h2> <h2 class="form-title">File Details</h2>
<div class="row mb-3 align-items-center g-3 ms-md-5 ms-0"> <div class="row mb-3 align-items-center g-3 ms-md-5 ms-0">
<div class="col-12 col-md-4"> <div class="col-12 col-md-4">

Loading…
Cancel
Save