Skip to content

Commit

Permalink
fix case with no fees
Browse files Browse the repository at this point in the history
  • Loading branch information
dangowans committed Jun 3, 2022
1 parent 4dfb93d commit 2b5a810
Show file tree
Hide file tree
Showing 7 changed files with 57 additions and 72 deletions.
4 changes: 2 additions & 2 deletions helpers/licencesDB/updateLicence.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ interface UpdateLicenceForm {
isRenewal?: string;
startDateString: string;
endDateString: string;
baseLicenceFee: string;
baseReplacementFee: string;
baseLicenceFee?: string;
baseReplacementFee?: string;
licenceFee: string;
replacementFee: string;
licenceFieldKeys?: string;
Expand Down
27 changes: 10 additions & 17 deletions helpers/licencesDB/updateLicence.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ export const updateLicence = (licenceForm, requestSession) => {
" recordUpdate_userName = ?," +
" recordUpdate_timeMillis = ?" +
" where licenceId = ?")
.run(licenceForm.licenceNumber, licenceForm.licenseeName, licenceForm.licenseeBusinessName, licenceForm.licenseeAddress1, licenceForm.licenseeAddress2, licenceForm.licenseeCity, licenceForm.licenseeProvince, licenceForm.licenseePostalCode, licenceForm.bankInstitutionNumber, licenceForm.bankTransitNumber, licenceForm.bankAccountNumber, licenceForm.isRenewal ? 1 : 0, dateTimeFunctions.dateStringToInteger(licenceForm.startDateString), dateTimeFunctions.dateStringToInteger(licenceForm.endDateString), licenceForm.baseLicenceFee, licenceForm.baseReplacementFee, licenceForm.licenceFee, licenceForm.replacementFee, requestSession.user.userName, rightNowMillis, licenceForm.licenceId);
.run(licenceForm.licenceNumber, licenceForm.licenseeName, licenceForm.licenseeBusinessName, licenceForm.licenseeAddress1, licenceForm.licenseeAddress2, licenceForm.licenseeCity, licenceForm.licenseeProvince, licenceForm.licenseePostalCode, licenceForm.bankInstitutionNumber, licenceForm.bankTransitNumber, licenceForm.bankAccountNumber, licenceForm.isRenewal ? 1 : 0, dateTimeFunctions.dateStringToInteger(licenceForm.startDateString), dateTimeFunctions.dateStringToInteger(licenceForm.endDateString), licenceForm.baseLicenceFee, licenceForm.baseReplacementFee, licenceForm.baseLicenceFee, licenceForm.baseReplacementFee, requestSession.user.userName, rightNowMillis, licenceForm.licenceId);
if (licenceForm.licenceFieldKeys) {
database.prepare("delete from LicenceFields where licenceId = ?")
.run(licenceForm.licenceId);
Expand All @@ -49,24 +49,17 @@ export const updateLicence = (licenceForm, requestSession) => {
" from LicenceCategoryAdditionalFees" +
" where licenceAdditionalFeeKey in (select licenceAdditionalFeeKey from LicenceAdditionalFees where licenceId = ?)")
.all(licenceForm.licenceId);
if (currentAdditionalFees.length > 0) {
for (const currentAdditionalFee of currentAdditionalFees) {
const additionalFeeAmount = licenceFunctions.calculateAdditionalFeeAmount(currentAdditionalFee, licenceForm.baseLicenceFee);
database.prepare("update LicenceAdditionalFees" +
" set additionalFeeAmount = ?" +
" where licenceId = ?" +
" and licenceAdditionalFeeKey = ?")
.run(additionalFeeAmount, licenceForm.licenceId, currentAdditionalFee.licenceAdditionalFeeKey);
database.prepare("update Licences" +
" set licenceFee = baseLicenceFee," +
" replacementFee = baseReplacementFee" +
" set licenceFee = licenceFee + ?" +
" where licenceId = ?")
.run(licenceForm.licenceId);
for (const currentAdditionalFee of currentAdditionalFees) {
const additionalFeeAmount = licenceFunctions.calculateAdditionalFeeAmount(currentAdditionalFee, licenceForm.baseLicenceFee);
database.prepare("update LicenceAdditionalFees" +
" set additionalFeeAmount = ?" +
" where licenceId = ?" +
" and licenceAdditionalFeeKey = ?")
.run(additionalFeeAmount, licenceForm.licenceId, currentAdditionalFee.licenceAdditionalFeeKey);
database.prepare("update Licences" +
" set licenceFee = licenceFee + ?" +
" where licenceId = ?")
.run(additionalFeeAmount.toFixed(2), licenceForm.licenceId);
}
.run(additionalFeeAmount.toFixed(2), licenceForm.licenceId);
}
if (configFunctions.getProperty("settings.includeBatches")) {
database.prepare("update LicenceTransactions" +
Expand Down
42 changes: 17 additions & 25 deletions helpers/licencesDB/updateLicence.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ interface UpdateLicenceForm {
isRenewal?: string;
startDateString: string;
endDateString: string;
baseLicenceFee: string;
baseReplacementFee: string;
baseLicenceFee?: string;
baseReplacementFee?: string;
licenceFee: string;
replacementFee: string;
licenceFieldKeys?: string;
Expand Down Expand Up @@ -82,8 +82,8 @@ export const updateLicence =
dateTimeFunctions.dateStringToInteger(licenceForm.endDateString),
licenceForm.baseLicenceFee,
licenceForm.baseReplacementFee,
licenceForm.licenceFee,
licenceForm.replacementFee,
licenceForm.baseLicenceFee, // replace and recalculate
licenceForm.baseReplacementFee, // replace and recalculate
requestSession.user.userName,
rightNowMillis,
licenceForm.licenceId);
Expand Down Expand Up @@ -115,32 +115,24 @@ export const updateLicence =
" where licenceAdditionalFeeKey in (select licenceAdditionalFeeKey from LicenceAdditionalFees where licenceId = ?)")
.all(licenceForm.licenceId);

if (currentAdditionalFees.length > 0) {
for (const currentAdditionalFee of currentAdditionalFees) {

database.prepare("update Licences" +
" set licenceFee = baseLicenceFee," +
" replacementFee = baseReplacementFee" +
" where licenceId = ?")
.run(licenceForm.licenceId);

for (const currentAdditionalFee of currentAdditionalFees) {

const additionalFeeAmount = licenceFunctions.calculateAdditionalFeeAmount(currentAdditionalFee, licenceForm.baseLicenceFee);
const additionalFeeAmount = licenceFunctions.calculateAdditionalFeeAmount(currentAdditionalFee, licenceForm.baseLicenceFee);

database.prepare("update LicenceAdditionalFees" +
" set additionalFeeAmount = ?" +
" where licenceId = ?" +
" and licenceAdditionalFeeKey = ?")
.run(additionalFeeAmount, licenceForm.licenceId, currentAdditionalFee.licenceAdditionalFeeKey);
database.prepare("update LicenceAdditionalFees" +
" set additionalFeeAmount = ?" +
" where licenceId = ?" +
" and licenceAdditionalFeeKey = ?")
.run(additionalFeeAmount, licenceForm.licenceId, currentAdditionalFee.licenceAdditionalFeeKey);

database.prepare("update Licences" +
" set licenceFee = licenceFee + ?" +
" where licenceId = ?")
.run(additionalFeeAmount.toFixed(2),
licenceForm.licenceId);
}
database.prepare("update Licences" +
" set licenceFee = licenceFee + ?" +
" where licenceId = ?")
.run(additionalFeeAmount.toFixed(2),
licenceForm.licenceId);
}


// Update bank information on outstanding batch entries

if (configFunctions.getProperty("settings.includeBatches")) {
Expand Down
23 changes: 10 additions & 13 deletions public-typescript/licence-edit.js
Original file line number Diff line number Diff line change
Expand Up @@ -426,19 +426,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
if (baseReplacementFeeElement) {
baseReplacementFeeElement.value = licenceCategory.licenceCategoryFees[0].replacementFee.toFixed(2);
}
if (!isCreate) {
const feeTableElement = baseLicenceFeeElement.closest("table");
if (!feeTableElement.classList.contains("is-hidden")) {
feeTableElement.classList.add("is-hidden");
feeTableElement.insertAdjacentHTML("beforebegin", "<div class=\"message is-warning\">" +
"<p class=\"message-body\">Fees will be recalculated after saving.</p>" +
"</div>");
feeTableElement.closest(".panel")
.querySelector(".panel-heading .level-right")
.classList
.add("is-hidden");
refreshAfterSave = true;
}
if (!isCreate && !additionalFeeTableElement.classList.contains("is-hidden")) {
additionalFeeTableElement.classList.add("is-hidden");
additionalFeeTableElement.insertAdjacentHTML("beforebegin", "<div class=\"message is-warning\">" +
"<p class=\"message-body\">Fees will be recalculated after saving.</p>" +
"</div>");
additionalFeeTableElement.closest(".panel")
.querySelector(".panel-heading .level-right")
.classList
.add("is-hidden");
refreshAfterSave = true;
}
};
const renderLicenceCategory = () => {
Expand Down
25 changes: 11 additions & 14 deletions public-typescript/licence-edit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -622,24 +622,21 @@ declare const bulmaJS: BulmaJS;
baseReplacementFeeElement.value = licenceCategory.licenceCategoryFees[0].replacementFee.toFixed(2);
}

if (!isCreate) {
const feeTableElement = baseLicenceFeeElement.closest("table");
if (!isCreate && !additionalFeeTableElement.classList.contains("is-hidden")) {

if (!feeTableElement.classList.contains("is-hidden")) {
additionalFeeTableElement.classList.add("is-hidden");
additionalFeeTableElement.insertAdjacentHTML("beforebegin", "<div class=\"message is-warning\">" +
"<p class=\"message-body\">Fees will be recalculated after saving.</p>" +
"</div>");

feeTableElement.classList.add("is-hidden");
feeTableElement.insertAdjacentHTML("beforebegin", "<div class=\"message is-warning\">" +
"<p class=\"message-body\">Fees will be recalculated after saving.</p>" +
"</div>");
additionalFeeTableElement.closest(".panel")
.querySelector(".panel-heading .level-right")
.classList
.add("is-hidden");

feeTableElement.closest(".panel")
.querySelector(".panel-heading .level-right")
.classList
.add("is-hidden");

refreshAfterSave = true;
}
refreshAfterSave = true;
}

};

const renderLicenceCategory = () => {
Expand Down
2 changes: 1 addition & 1 deletion public/javascripts/licence-edit.min.js

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions views/licence-edit.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,9 @@
</tr>
</thead>
<tbody>
<% let hasBaseLicenceFee = false; %>
<% if (isCreate || licenceCategories[0].licenceCategoryAdditionalFees.length > 0) { %>
<% hasBaseLicenceFee = true; %>
<tr>
<td class="is-vcentered has-text-weight-bold" colspan="2">
<label for="licenceEdit--baseLicenceFee">Base <%= configFunctions.getProperty("settings.licenceAlias") %> Fee</label>
Expand Down Expand Up @@ -497,10 +499,14 @@
</tfoot>
<% } %>
</table>
<input id="licenceEdit--baseReplacementFee" name="baseReplacementFee" type="hidden" value="<%= licence.baseReplacementFee ? licence.baseReplacementFee.toFixed(2) : "" %>" />
<% if (!configFunctions.getProperty("settings.includeReplacementFee")) { %>
<input id="licenceEdit--replacementFee" name="replacementFee" type="hidden" value="<%= licence.replacementFee ? licence.replacementFee.toFixed(2) : "" %>" />
<% } %>
<% if (!hasBaseLicenceFee) { %>
<input id="licenceEdit--baseLicenceFee" name="baseLicenceFee" type="hidden" value="<%= licence.baseLicenceFee ? licence.baseLicenceFee.toFixed(2) : "" %>" />
<% } %>
<% if (isCreate) { %>
<div class="message is-info is-small">
Expand Down

0 comments on commit 2b5a810

Please sign in to comment.