viaone-report-statement
Version:
A React component that sums two number.
96 lines (76 loc) • 3.02 kB
JavaScript
import moment from "moment";
import MESSAGES from "../config/messages";
export const validateDate = (fromDateParam, toDateParam) => {
console.log("entre a validate date");
console.log("from",fromDateParam,"to",toDateParam);
const _fromdate = moment(fromDateParam);
const _todate = moment(toDateParam);
const diff = Number(_todate.diff(_fromdate, "days"));
console.log("diff",diff);
const _todateValidation = new Date(toDateParam).setHours(0, 0, 0, 0);
const _fromDateValidation = new Date(fromDateParam).setHours(0, 0, 0, 0);
const currentDate = new Date();
let message = "";
let valid = true;
let messageType = "";
if (fromDateParam === "" || fromDateParam === undefined) {
valid = false;
message = MESSAGES.DATEFROM_REQUIRED_ERROR.Message;
messageType = MESSAGES.DATEFROM_REQUIRED_ERROR.Type;
return { valid, message, messageType };
}
if (toDateParam === "" || toDateParam === undefined) {
valid = false;
message = MESSAGES.DATETO_REQUIRED_ERROR.Message;
messageType = MESSAGES.DATETO_REQUIRED_ERROR.Type;
return { valid, message, messageType };
}
if (diff >= 1) {
console.log("entre a dif");
valid = false;
message = MESSAGES.DATE_RANGE_ERROR.Message;
messageType = MESSAGES.DATE_RANGE_ERROR.Type;
return { valid, message, messageType };
}
if (_fromdate > _todate) {
valid = false;
message = MESSAGES.DATEFROM_GREATEST_DATETO_ERROR.Message;
messageType = MESSAGES.DATEFROM_GREATEST_DATETO_ERROR.Type;
return { valid, message, messageType };
}
if (_fromDateValidation > currentDate && _todateValidation > currentDate) {
console.log("entre a d");
valid = false;
message = MESSAGES.DATESGREATERTODATE.Message;
messageType = MESSAGES.DATESGREATERTODATE.Type;
} else if (_fromDateValidation > currentDate) {
valid = false;
message = MESSAGES.DATEFROM_GREATEST_DATE_ERROR.Message;
messageType = MESSAGES.DATEFROM_GREATEST_DATE_ERROR.Type;
} else if (_todateValidation > currentDate) {
valid = false;
message = MESSAGES.DATETO_GREATEST_DATE_ERROR.Message;
messageType = MESSAGES.DATETO_GREATEST_DATE_ERROR.Type;
}
return { valid, message, messageType };
};
export const formatter = new Intl.NumberFormat("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 2
});
export const paginateResults = (dataParameter, pageSize) => {
const totalPages = Math.ceil(dataParameter.length / pageSize);
const result = [];
let startSlice = 0;
let endSlice = pageSize;
for (let index = 0; index < totalPages; index += 1) {
const tempdata = dataParameter.slice(startSlice, endSlice);
result.push({ page: index + 1, data: tempdata });
startSlice += pageSize;
endSlice += pageSize;
}
return result;
};
export const getDataToShow = (dataParameter, page) =>
dataParameter.filter(item => item.page === page);