(function (s, u) { s.add({ getAllPremiumReversalRequestAsync: async function () { return await u.getAsync(`${this.backend}api/premiumreversal/request`); }, savePremiumReversalRequestAsync: async function (units, success, error) { return await u.postAsync(`${this.backend}api/premiumreversal/request`, units, success, error); }, searchPremiumReversalRequestAsync: async function (query, success, error) { return await u.getAsync(`${this.backend}api/premiumreversal/request/search/` + query, success, error); }, getPremiumReversalRequestByIdAsync: async function (id) { return await u.getAsync(`${this.backend}api/premiumreversal/request/${id}`); }, getPremiumReversalPolicyInfoAsync: async function (id) { return await u.getAsync(`${this.backend}api/policy/${id}`) }, validatePremiumReversalPolicyInfoAsync: async function(id) { return await u.getAsync(`${this.backend}api/premiumreversal/request/validate/` + id); }, savePRRFilesAsync: async function(files) { return await u.postAsync(`${this.backend}api/premiumreversal/request/savedocs`, files); } }); })(window.service, window.utility); (function (s, u) { s.add({ getFileCategory: function (code, success, error) { u.get(this.backend + "api/filecategory/" + code, success, error); }, getFileCategories: function (success, error) { u.get(this.backend + "api/filecategory", success, error); }, getFileCategoryLov: function (success, error) { u.get(this.backend + "api/filecategory/lov", success, error); }, saveFileCategory: function (causes, success, error) { u.post(this.backend + "api/filecategory/save", causes, success, error); }, searchFileCategory: function (query, success, error) { u.get(this.backend + "api/filecategory/search/" + query, success, error); }, checkFileCategoryCode: function (code, success, error) { u.get(this.backend + "api/filecategory/check/" + code, success, error); }, checkFileCategoryyLovCode: function (code, success, error) { u.get(this.backend + "api/filecategory/check/" + code, success, error); } }); })(window.service, window.utility); (function (s, u) { s.add({ save_customers: function (customers, success, error) { u.post(this.backend + "api/customer/save", customers, success, error); }, get_customers: function (success, error) { u.get(this.backend + "api/customer", success, error); }, get_customer: function (code, success, error) { u.get(this.app + `api/customer/${code}`, success, error); }, getCustomerAsync: async function (code) { return await u.getAsync(this.app + `api/customer/${code}`); }, //search_customer: function (query, success, error) { // u.get(`${this.backend}api/customer/search/${encodeURI(query)}`, success, error); //}, search_customer: function (query, success, error) { u.post(`${this.backend}api/customer/query`, query, success, error); }, search_customerAsync: async function (query) { return await u.postAsync(`${this.backend}api/customer/query`, query); }, search_lov_customer: function ( query , success, error) { u.get(`${this.backend}api/customer/lov/${query}`, success, error); }, get_lov_customertypes: function (success, error) { u.get(this.backend + "api/customertypes/lov", success, error); }, check_customer_code: function (code, success, error) { u.get(`${this.backend}api/customer/check/${code}`, success, error); }, check_customertype_code: function (code, success, error) { u.get(`${this.backend}api/customertypes/check/${code}`, success, error); }, get_lov_customer: function (success, error) { u.get(this.backend + "api/Customer/lov", success, error); }, blacklist_customer: function (data, success, error) { u.post(this.app + "api/customer/blacklist", data, success, error); }, merge_customer: function (json, success, error) { u.post(this.app + "api/customer/merge", json, success, error); }, customer_standing: function (data, success, error) { u.post(this.app + "api/customer/standing", data, success, error); }, getSingle: async function (data, success, error) { u.get(`${this.backend}api/customer/${data}`, success, error); }, getSequenceAsync: async function (name) { return await u.postAsync(`${this.app}api/getSequenceNo`, { seq: [{ oraSeqName: name }] }); }, getAsync: async function (data) { return await u.postAsync(`${this.backend}api/customer/search`, data); }, searchAsync: async function (data) { return await u.postAsync(`${this.backend}api/customer/search`, data); }, getSingleAsync: async function (data) { return await u.getAsync(`${this.backend}api/customer/${data}`); }, saveAsync: async function (data) { return await u.postAsync(`${this.backend}api/customer/save`, data); }, get_lov_bank: function (success, error) { u.get(this.backend + "api/bank/lov", success, error); }, get_lov_bnk_branch: function (code, success, error) { u.get(this.backend + "api/bank/branch/lov/" + code, success, error); }, get_lov_office: function (success, error) { u.get(this.backend + "api/office/lov", success, error); }, get_customertype: async function (code, success, error) { return await u.get(`${this.backend}api/customertypesAsync/${code}`, success, error); }, getLovSelectAmlCategoryAsync: async function () { return await u.getAsync(`${this.app}api/amlCategory/selectLov`); }, getLovSelectAmlStatusAsync: async function () { return await u.getAsync(`${this.app}api/amlStatus/selectLov`); }, getCustomerStandingByCustomer:async function (code, success, error) { return await u.getAsync(this.backend + "api/customerstanding/customer/" + code, success, error); }, saveCustomerStandingAsync: async function (data) { return await u.postAsync(`${this.backend}api/customerstanding/save`, data); }, getCustomerStandingAsync: async function () { return await u.getAsync(`${this.backend}api/customerstanding`); }, searchCustomerStandingAsync: async function (code) { return await u.getAsync(`${this.backend}api/customerstanding/search/${code}`); }, searchBlackListedCustomerAsync: async function (query) { return await u.getAsync(`${this.backend}api/customer/blacklist/search/${query? query: 'All'}`); }, checkCustomerByNameAndPhoneAsync: async function(officialname, phone) { return await u.getAsync(`${this.backend}api/customer/check/${officialname}/${phone}`); } }); })(window.service, window.utility); (function (s, u) { s.add({ save_premiumtariffs: function (premiumtariffs, success, error) { u.post(this.backend + "api/premiumtariff/save", premiumtariffs, success, error); }, save_motortariff: function (premiumtariffs, success, error) { u.post(this.backend + "api/motortariff/save", premiumtariffs, success, error); }, get_premiumtariffs: function (success, error) { u.get(this.backend + "api/premiumtariff", success, error); }, get_premiumtariff: function (query, success, error) { u.get(this.backend + "api/premiumtariff/" + query, success, error); }, getRiskTarrifs: function (code, success, error) { u.get(this.backend + "api/PremiumTariff/tarrifs/" + code, success, error); }, search_premiumtariff: function (query, success, error) { u.get(this.backend + "api/premiumtariff/search/" + query, success, error); }, get_lov_covers: function (success, error) { u.get(this.backend + "api/cover/lov", success, error); }, get_lov_products: function (success, error) { u.get(this.backend + "api/product/lov", success, error); }, get_lov_motor_risks: function (success, error) { u.get(this.backend + "api/motorrisk/lov", success, error); }, check_cover_code: function (code, success, error) { u.get(this.backend + "api/cover/check/" + code, success, error); }, check_product_code: function (code, success, error) { u.get(this.backend + "api/product/check/" + code, success, error); }, check_motorrisk_code: function (code, success, error) { u.get(this.backend + "api/motorrisk/check/" + code, success, error); } }); })(window.service, window.utility); (function (s, u) { s.add({ policyApproval: function (data, success, error) { u.post(this.backend + "api/policyapproval", data, success, error); }, policyApprovalAsync: function (data) { return u.postAsync(this.backend + "api/policyapproval", data); } }); })(window.service, window.utility); // function to return sequence numbers function RetnSequenceNo(currentSeqName, callback) { //get name of sequence to pass as json object const seqData = [{ oraSeqName: currentSeqName }]; $.ajax({ type: "POST", url: window.service.app+"api/getSequenceNo", //send sequence name as json object data: JSON.stringify({ seq: seqData }), contentType: "application/json; charset=utf-8", dataType: "json", dataprocess: true, success: function (data) { callback(data); return (data); }, 'error': function (error) { callback(error); alert("Sequence not generated, varify and try again"); } }); }; (function (s, u) { s.add({ get_lov_endorsements: function (success, error) { u.get(this.backend + "api/Endorsements/lov", success, error); }, //--------------- save_types: function (types, success, error) { u.post(this.backend + "api/TypeEndorse/save", types, success, error); }, get_types: function (success, error) { u.get(this.backend + "api/TypeEndorse", success, error); }, search_types: function (query, success, error) { u.get(this.backend + "api/TypeEndorse/search/" + query, success, error); }, get_type_lov: function (success, error) { u.get(this.backend + "api/TypeEndorse/lov", success, error); }, check_type_lov_code: function (code, success, error) { u.get(this.backend + "api/TypeEndorse/check/" + code, success, error); }, check_type_code: function (code, success, error) { u.get(this.backend + "api/TypeEndorse/check/" + code, success, error); }, //------------------ save_endorsements: function (endorsetypes, success, error) { u.post(this.backend + "api/MainEndorse/save", endorsetypes, success, error); }, get_endorsements: function (success, error) { u.get(this.backend + "api/MainEndorse", success, error); }, search_endorsements: function (query, success, error) { u.get(this.backend + "api/MainEndorse/search/" + query, success, error); }, get_endorsement_lov: function (success, error) { u.get(this.backend + "api/MainEndorse/lov", success, error); }, check_endorsements_lov_code: function (code, success, error) { u.get(this.backend + "api/MainEndorse/check/" + code, success, error); }, check_endorsements_code: function (code, success, error) { u.get(this.backend + "api/MainEndorse/check/" + code, success, error); } }); })(window.service, window.utility); (function (s, u) { s.add({ save_endorses: function (endorses, success, error) { u.post(this.backend + "api/EndorsementSetup/save", endorses, success, error); }, get_endorses: function (success, error) { u.get(this.backend + "api/EndorsementSetup", success, error); }, get_endorsement: function (id, success, error) { u.get(this.backend + "api/EndorsementSetup/" + id, success, error); }, get_endorsementLov: function (clss, success, error) { u.get(this.backend + "api/EndorsementSetup/lov/" + clss, success, error); }, search_endorse: function (query, success, error) { u.get(this.backend + "api/EndorsementSetup/search/" + query, success, error); }, check_endorse_code: function (code, success, error) { u.get(this.backend + "api/EndorsementSetup/check/" + code, success, error); }, get_lov_classes: function (success, error) { u.get(this.backend + "api/classbusiness/lov", success, error); }, check_classes_code: function (code, success, error) { u.get(this.backend + "api/classbusiness/check/" + code, success, error); }, }); })(window.service, window.utility); (function (s, u) { s.add({ save_discountloadings: function (countries, success, error) { u.post(this.backend + "api/discountloading/save", countries, success, error); }, get_discountloadings: function (success, error) { u.get(this.backend + "api/discountloading", success, error); }, search_discountloading: function (query, success, error) { u.get(this.backend + "api/discountloading/search/" + query, success, error); }, check_discountloading_code: function (code, success, error) { u.get(this.backend + "api/discountloading/check/" + code, success, error); }, discountloadingList: function (product,success, error) { u.get(this.backend + "api/discountloading/discLoadList/" + product, success, error); }, get_discountloading: async function (code, success, error) { return await u.getAsync(`${this.backend}api/discountloading/${code}`); } }); })(window.service, window.utility); (function(s,u) { s.add({ getProdBuyBackExcess: function(prodCode, success, error) { u.get(this.backend+"api/BuyBackExcess/product/rates/" + prodCode, success, error); }, getProdBuyBackExcessLov: function(prodCode, success, error) { u.get(this.backend+"api/BuyBackExcess/product/rates/lov/" + prodCode, success, error); } }); })(window.service,window.utility); (function (s, u) { s.add({ save_currencys: function (currencys, success, error) { u.post(this.backend + "api/currency/save", currencys, success, error); }, get_currencys: function (success, error) { u.get(this.backend + "api/currency", success, error); }, search_currency: function (query, success, error) { u.get(`${this.backend}api/currency/search/${query}`, success, error); }, getCurrencyRate: function (curCode, success, error) { u.get(`${this.backend}api/exchangerate/currency/${curCode}`, success, error); }, getCurrencyRateAsync: async function (curCode) { return await u.getAsync(`${this.backend}api/exchangerate/currency/${curCode}`); }, //checkCurrencyCodeAsync: async function (curCode) { // return await u.getAsync(`${this.backend}api/exchangerate/check/${curCode}`); //}, checkCurrencyCode: async function (code, success, error) { u.get(`${this.backend}api/exchangerate/check/${code}`, success, error); }, get_currency: function (success, error) { u.get(this.backend + "api/currency/lov", success, error); }, getCurrency: function (code, success, error) { u.get(`${this.backend}api/currency/${code}`, success, error); }, get_currency_lov: function (success, error) { u.get(`${this.backend}api/exchangerate/lov`, success, error); }, getCurrencyLov: function (success, error) { u.get(`${this.backend}api/currency/lov`, success, error); }, getPrevailingRatesLovAsync: async function () { return u.getAsync(`${this.backend}api/exchangerate/lov`); }, check_currency_code: function (code, success, error) { u.get(`${this.backend}api/currency/check/${code}`, success, error); }, getBaseCurrency: function (success, error) { u.get(`${this.backend}api/currency/base`, success, error); }, getBaseCurrencyAsync: async function () { return await u.getAsync(`${this.backend}api/currency/base`); }, getPrevailingRateAsync: async function(code) { return await u.getAsync(`${this.backend}api/exchangerate/prevailing/${code}`); } }); })(window.service, window.utility); (function (s, u) { s.add({ getFile: function (code, success, error) { u.get(this.backend + "api/file/" + code, success, error); }, getFiles: function (success, error) { u.get(this.backend + "api/file", success, error); }, getFileLov: function (success, error) { u.get(this.backend + "api/file/lov", success, error); }, saveFiles: function (files, success, error) { u.post(this.backend + "api/file/save", files, success, error); }, searchFile: function (query, success, error) { u.get(this.backend + "api/file/search/" + query, success, error); }, checkFileCode: function (code, success, error) { u.get(this.backend + "api/file/check/" + code, success, error); }, checkFileLovCode: function (code, success, error) { u.get(this.backend + "api/file/check/" + code, success, error); }, uploadFile: function (file, success, error) { const formData = new FormData(); formData.append("FILE", file); u.post_file(this.app + "api/file/upload", formData, success, error); }, uploadFileAsync: async function (file) { const formData = new FormData(); formData.append("FILE", file); return await u.postFileAsync(this.app + "api/file/upload", formData); }, uploadFiles: function (files, success, error) { const formData = new FormData(); for (let i in files) { formData.append("FILE", files[i]); } u.post_file(this.app + "api/file/upload", formData, success, error); }, uploadPolFile: function (data, success, error) { u.post_file(this.app + "api/files/underwritingupload", data, success, error); }, getFileTokenAsync: function (id, success, error) { u.get(`${this.backend}api/docviewer/viewpolicyfile/${id}`, success, error); }, getTxnFileTokenAsync: function (id, success, error) { u.post(`${this.backend}api/docviewer/ViewFile`, {QUERY: id}, success, error); }, getUdwFileTokenAsync: function (id, success, error) { u.get(`${this.backend}api/docviewer/Udw/${id}`, success, error); }, deleteFileAsync: async function (id) { return await u.getAsync(`${this.app}api/files/delete/${id}`); } }); })(window.service, window.utility); (function (s, u) { s.add({ getProductTreaty: function (code, uwy, curCode, success, error) { u.get(`${this.backend}api/reinsurance/product/treaty/${code}/${uwy}/${curCode}`, success, error); }, getProductTreatyAsync: async function (code, uwy, curCode) { return await u.getAsync(`${this.app}api/reinsurance/product/treaty/${code}/${uwy}/${curCode}`); }, }); })(window.service, window.utility); (function (u, $scope) { u.add({ locationRiAllocation: function (polHead, riRecords, treaty) { treaty = treaty || u.getGlobal("treatyData"); const ttyHeadyCurrency = treaty.MS_RI_GROUP_HEAD?.MS_RI_GROUP_DETL.FirstOrDefault(o => o.GD_CUR_CODE === polHead.POLH_CURRENCY); if (!ttyHeadyCurrency) { return u.modalError(`${polHead.POLH_CURRENCY} exchange rate not setup for underwriting year ${treaty.MS_RI_GROUP_HEAD?.GP_UW_YEAR} for treaty currency group`); } //check if we have treaty data if (!treaty) { return u.growl_info("Treaty data does not exist, please refresh the page and try again"); } //check if treaty is quota share if (treaty.TH_QS_YN === "Y") { return this.quotaShareRiAllocation(polHead, riRecords, treaty); } const treatyDetails = treaty["MS_RI_PTTY_DETL"]; var sumInsuredFc = parseFloat(riRecords["RI_SI_FC"] || 0); var excessSiFc = parseFloat(riRecords["RI_SI_FC"] || 0), excessSiBc = parseFloat(riRecords["RI_SI_BC"] || 0), premiumFc = parseFloat(riRecords["RI_PREM_FC"] || 0), premiumBc = parseFloat(riRecords["RI_PREM_BC"] || 0), allocationList = [], shareList = [], allocation = {}, share = {}; //FAC-Excess record //Create FAC-Excess record var exxAll = { TTA_CLOSE_FLAG: "N", TTA_CRTE_BY: u.getUserCode(), TTA_CRTE_DATE: u.get_date(), TTA_MOD_BY: "", TTA_MOD_DATE: "", TTA_POLH_END_NO: polHead.POLH_END_NO || 0, TTA_POLH_SYS_ID: polHead.POLH_SYS_ID, TTA_SLIPNO: "", TTA_STATUS: riRecords.RI_STATUS || "U", TTA_TTH_SYS_ID: treaty.TTH_SYS_ID, TTA_TTY_CODE: "FAC-EXCESS", TTA_TTY_TYPE: "FX", TTA_TTY_COMM_BC: "", TTA_TTY_COMM_FC: "", TTA_TTY_LIMIT_FC: 0, TTA_TTY_LIMIT_BC: 0, TTA_TTY_SI_FC: 0, TTA_TTY_SI_BC: 0, TTA_UW_YEAR: polHead.POLH_POL_UW_YEAR, INS_RI_TTY_SHARE: [], TTA_ALLOC_PERC: 0 }; const currencyRate = parseFloat(polHead.POLH_CURRENCY_RATE); //retrieve the treaty details from the header /*---------------------------- treaty detail apportionment *-----------------------------*/ treatyDetails.Where(t => t.TD_TTY_TYPE !== "QS").OrderBy(d => d.TD_SEQ).ForEach(function (detail) { allocation = { TTA_CLOSE_FLAG: "N", TTA_CRTE_BY: u.getUserCode(), TTA_CRTE_DATE: u.get_date(), TTA_MOD_BY: "", TTA_MOD_DATE: "", TTA_SEQ_NO: detail.TD_SEQ, TTA_POLH_END_NO: polHead.POLH_END_NO || 0, TTA_POLH_SYS_ID: polHead.POLH_SYS_ID, TTA_SLIPNO: "", TTA_STATUS: riRecords.RI_STATUS || "U", TTA_TTH_SYS_ID: treaty.TTH_SYS_ID, //TTA_TTY_CODE: treaty.TH_CODE, TTA_TTY_COMM_BC: "", TTA_TTY_COMM_FC: "", TTA_UW_YEAR: polHead.POLH_POL_UW_YEAR, TTA_TTY_CODE: detail.TD_TTY_CODE, TTA_TTY_TYPE: detail.TD_TTY_TYPE }; /*--------------------------------------- treaty detail sub class apportionment *--------------------------------------*/ detail["MS_RI_PTTY_SUBCLASS"].ForEach(subclass => { if (subclass["TSC_SCLASS_CODE"] === polHead.POLH_SUB_CLASS_CODE) { //convert treaty limit value to FC var limitFc = subclass.TSC_TTY_LIMIT / currencyRate || 0; var limitBc = (subclass.TSC_TTY_LIMIT) || 0; if (excessSiFc > limitFc) { //treaty allocation.TTA_TTY_LIMIT_BC = limitBc.toFixed(2); allocation.TTA_TTY_LIMIT_FC = limitFc; allocation.TTA_TTY_SI_BC = limitBc.toFixed(2); allocation.TTA_TTY_SI_FC = limitFc; excessSiFc = (excessSiFc - limitFc).toFixed(2); excessSiBc = (excessSiBc - limitBc).toFixed(2); } else { allocation.TTA_TTY_LIMIT_BC = limitBc.toFixed(2); allocation.TTA_TTY_LIMIT_FC = limitFc; allocation.TTA_TTY_SI_BC = excessSiBc; allocation.TTA_TTY_SI_FC = excessSiFc; excessSiFc = 0; excessSiBc = 0; } if (sumInsuredFc === 0) { allocation.TTA_ALLOC_PERC = 100; exxAll.TTA_ALLOC_PERC = 0; } else { allocation.TTA_ALLOC_PERC = ((allocation.TTA_TTY_SI_FC / sumInsuredFc) * 100).toFixed(5) || 0; exxAll.TTA_ALLOC_PERC = ((excessSiFc / sumInsuredFc) * 100).toFixed(5) || 0; } allocation.TTA_TTY_PREM_BC = (premiumBc * (allocation.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; allocation.TTA_TTY_PREM_FC = (premiumFc * (allocation.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; //Update FAC Excess record exxAll.TTA_TTY_SI_FC = excessSiFc || 0; exxAll.TTA_TTY_SI_BC = excessSiBc || 0; exxAll.TTA_TTY_PREM_BC = (premiumBc * (exxAll.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; exxAll.TTA_TTY_PREM_FC = (premiumFc * (exxAll.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; exxAll.TTA_SEQ_NO = detail.TD_SEQ + 1; /*---------------------------- treaty share apportionment *-----------------------------*/ var treatyCompanies = detail.MS_RI_PTTY_COMPANY; treatyCompanies.ForEach(company => { var allocPerc = parseFloat(allocation.TTA_ALLOC_PERC || 0) * (parseFloat(company.TCP_TTY_SHARE || 0) * 0.01) || 0; share = { TTS_CRTE_BY: u.getUserCode(), TTS_CRTE_DATE: u.get_date(), TTS_MOD_BY: u.getUserCode(), TTS_MOD_DATE: u.get_date(), TTS_RI_COMM_BC: (riRecords["RI_PREM_BC"] * (allocPerc / 100) * (company.TCP_TTY_COMM / 100)).toFixed(2), TTS_RI_COMM_FC: (riRecords["RI_PREM_FC"] * (allocPerc / 100) * (company.TCP_TTY_COMM / 100)).toFixed(2), TTS_RI_COMM_PERC: company.TCP_TTY_COMM, TTS_RI_COMP: company.TCP_COMP_CODE, TTS_RI_TAX_PERC: company.TCP_TTY_TAX || 0, TTS_SHARE_PERC: company.TCP_TTY_SHARE || 0, TTS_ALLOC_PERC: allocPerc || 0, TTS_SHARE_PREM_BC: (riRecords["RI_PREM_BC"] * (allocPerc / 100)).toFixed(2) || 0, TTS_SHARE_PREM_FC: (riRecords["RI_PREM_FC"] * (allocPerc / 100)).toFixed(2) || 0, TTS_SHARE_SI_BC: (riRecords["RI_SI_BC"] * (allocPerc / 100)).toFixed(2) || 0, TTS_SHARE_SI_FC: (riRecords["RI_SI_FC"] * (allocPerc / 100)).toFixed(2) || 0, TTS_STATUS: riRecords.RI_STATUS || "U", TTS_TAX_BC: (((riRecords["RI_PREM_BC"] * (allocPerc / 100)) * (company.TCP_TTY_COMM / 100)) * (company.TCP_TTY_TAX / 100)).toFixed(2) || 0, TTS_TAX_FC: (((riRecords["RI_PREM_FC"] * (allocPerc / 100)) * (company.TCP_TTY_COMM / 100)) * (company.TCP_TTY_TAX / 100)).toFixed(2) || 0, TTS_TTA_SEQ_NO: detail.TD_SEQ, TTS_TTA_SYS_ID: allocation.TTA_SYS_ID, TTS_TTY_TYPE: detail.TD_TTY_TYPE }; shareList.push(share); }); allocation.INS_RI_TTY_SHARE = shareList; allocationList.push(allocation); shareList = []; } });//subclass loop });//treaty loop allocationList.push(exxAll); return allocationList; }, quotaShareRiAllocation: function(polHead, location, treaty) { treaty = treaty || u.getGlobal("treatyData"); //check if we have treaty data if (!treaty) { return u.growl_info("Treaty data does not exist, please refresh the page and try again"); } const currencyRate = parseFloat(polHead.POLH_CURRENCY_RATE); const treatyDetails = treaty["MS_RI_PTTY_DETL"]; const totalSumInsuredFc = parseFloat(location["RI_SI_FC"] || 0); const totalSumInsuredBc = totalSumInsuredFc * currencyRate; var excessSiFc = totalSumInsuredFc, excessSiBc = totalSumInsuredFc * currencyRate, premiumFc = parseFloat(location["RI_PREM_FC"] || 0), premiumBc = premiumFc * currencyRate, allocationList = [], allocation = {}; //FAC-Excess record //Create FAC-Excess record var exxAll = { TTA_CLOSE_FLAG: "N", TTA_CRTE_BY: u.getUserCode(), TTA_CRTE_DATE: u.get_date(), TTA_MOD_BY: "", TTA_MOD_DATE: "", TTA_POLH_END_NO: polHead.POLH_END_NO || 0, TTA_POLH_SYS_ID: polHead.POLH_SYS_ID, TTA_SLIPNO: "", TTA_STATUS: location.RI_STATUS || "U", TTA_TTH_SYS_ID: treaty.TTH_SYS_ID, TTA_TTY_CODE: "FAC-EXCESS", TTA_TTY_TYPE: "FX", TTA_TTY_COMM_BC: "", TTA_TTY_COMM_FC: "", TTA_TTY_LIMIT_FC: 0, TTA_TTY_LIMIT_BC: 0, TTA_TTY_SI_BC: 0, TTA_TTY_SI_FC: 0, TTA_UW_YEAR: polHead.POLH_POL_UW_YEAR, INS_RI_TTY_SHARE: [], TTA_ALLOC_PERC: 0 }; //calculate the percentage share for participating re insurance companies const riPercentage = 100 - treaty.TH_QS_PERC; const sumInsuredFc = totalSumInsuredFc * (treaty.TH_QS_PERC / 100); //obtain the quota share limit const quotaShareDetail = treatyDetails.Where(t => t.TD_TTY_TYPE === "QS").First(); allocation = { TTA_CLOSE_FLAG: "N", TTA_CRTE_BY: u.getUserCode(), TTA_CRTE_DATE: u.get_date(), TTA_MOD_BY: "", TTA_MOD_DATE: "", TTA_SEQ_NO: quotaShareDetail.TD_SEQ, TTA_POLH_END_NO: polHead.POLH_END_NO || 0, TTA_POLH_SYS_ID: polHead.POLH_SYS_ID, TTA_SLIPNO: "", TTA_STATUS: location.RI_STATUS || "U", TTA_TTH_SYS_ID: treaty.TTH_SYS_ID, //TTA_TTY_CODE: treaty.TH_CODE, TTA_TTY_COMM_BC: "", TTA_TTY_COMM_FC: "", TTA_UW_YEAR: polHead.POLH_POL_UW_YEAR, TTA_TTY_CODE: quotaShareDetail.TD_TTY_CODE, TTA_TTY_TYPE: quotaShareDetail.TD_TTY_TYPE }; /*------------------------------------------- * Quota share logic * 1. Determine the sum insured amounts for * - Quota share first * - Followed by OR * - Then surplus treaty *------------------------*/ let qsSumInsuredFc = 0; let qsSumInsuredBc = 0; quotaShareDetail["MS_RI_PTTY_SUBCLASS"].ForEach(s => { var limitFc = s.TSC_TTY_LIMIT || 0; var limitBc = (s.TSC_TTY_LIMIT * currencyRate) || 0; if (s["TSC_SCLASS_CODE"] === polHead.POLH_SUB_CLASS_CODE) { //determine if we have excess at the quota share level if (totalSumInsuredFc > limitFc) { qsSumInsuredFc = (limitFc) * (riPercentage / 100); qsSumInsuredBc = qsSumInsuredFc * currencyRate; //Sum insured has exceeded quota share limit and the excess must go for FAC exxAll.TTA_TTY_LIMIT_FC = limitFc; exxAll.TTA_TTY_LIMIT_BC = exxAll.TTA_TTY_LIMIT_FC * currencyRate; exxAll.TTA_TTY_SI_FC = parseFloat((totalSumInsuredFc - limitFc).toFixed(2)); exxAll.TTA_TTY_SI_BC = parseFloat((exxAll.TTA_TTY_SI_FC * currencyRate).toFixed(2)); } else { qsSumInsuredFc = (totalSumInsuredFc) * (riPercentage / 100); qsSumInsuredBc = qsSumInsuredFc * currencyRate; } //set quota share allocation sum insureds allocationList.push( u.objectSpread( u.objectSpread({}, allocation), {}, { TTA_TTY_LIMIT_BC: limitBc, TTA_TTY_LIMIT_FC: limitFc, TTA_TTY_SI_BC: qsSumInsuredBc, TTA_TTY_SI_FC: qsSumInsuredFc, //set quota share participating ri companies INS_RI_TTY_SHARE: quotaShareDetail.MS_RI_PTTY_COMPANY.Select( (company) => { /*var allocPerc = allocation.TTA_ALLOC_PERC * (company.TCP_TTY_SHARE * 0.01) || 0;*/ return { TTS_CRTE_BY: u.getUserCode(), TTS_CRTE_DATE: u.get_date(), TTS_MOD_BY: u.getUserCode(), TTS_MOD_DATE: u.get_date(), /*TTS_RI_COMM_BC: (locationFinancials["RI_PREM_BC"] * (allocPerc / 100) * (company.TCP_TTY_COMM / 100)).toFixed(2), TTS_RI_COMM_FC: (locationFinancials["RI_PREM_FC"] * (allocPerc / 100) * (company.TCP_TTY_COMM / 100)).toFixed(2),*/ TTS_RI_COMM_PERC: company.TCP_TTY_COMM, TTS_RI_COMP: company.TCP_COMP_CODE, TTS_RI_TAX_PERC: company.TCP_TTY_TAX || 0, TTS_SHARE_PERC: company.TCP_TTY_SHARE || 0, /*TTS_ALLOC_PERC: allocPerc || 0,*/ /*TTS_SHARE_PREM_BC: (locationFinancials["RI_PREM_BC"] * (allocPerc / 100)).toFixed(2) || 0, TTS_SHARE_PREM_FC: (locationFinancials["RI_PREM_FC"] * (allocPerc / 100)).toFixed(2) || 0,*/ TTS_SHARE_SI_BC: qsSumInsuredBc.toFixed(2) || 0, TTS_SHARE_SI_FC: qsSumInsuredFc.toFixed(2) || 0, TTS_STATUS: location.RI_STATUS || "U", /*TTS_TAX_BC: (((locationFinancials["RI_PREM_BC"] * (allocPerc / 100)) * (company.TCP_TTY_COMM / 100)) * (company.TCP_TTY_TAX / 100)).toFixed(2) || 0, TTS_TAX_FC: (((locationFinancials["RI_PREM_FC"] * (allocPerc / 100)) * (company.TCP_TTY_COMM / 100)) * (company.TCP_TTY_TAX / 100)).toFixed(2) || 0,*/ TTS_TTA_SEQ_NO: quotaShareDetail.TD_SEQ, TTS_TTA_SYS_ID: allocation.TTA_SYS_ID, TTS_TTY_TYPE: quotaShareDetail.TD_TTY_TYPE }; } ).ToArray() } ) ); } }); excessSiFc = (excessSiFc - exxAll.TTA_TTY_SI_FC) * (treaty.TH_QS_PERC / 100); excessSiBc = excessSiFc * currencyRate; //retrieve the treaty details from the header /*---------------------------- * treaty detail apportionment *-----------------------------*/ treatyDetails.Where(t => t.TD_TTY_TYPE !== "QS").OrderBy(d => d.TD_SEQ).ForEach(function(detail) { /*--------------------------------------- * treaty detail sub class apportionment *--------------------------------------*/ detail["MS_RI_PTTY_SUBCLASS"].ForEach(subclass => { if (subclass["TSC_SCLASS_CODE"] == polHead.POLH_SUB_CLASS_CODE) { //convert treaty limit value to BC const limitFc = subclass.TSC_TTY_LIMIT || 0; const limitBc = (subclass.TSC_TTY_LIMIT * currencyRate) || 0; //treaty allocation.TTA_TTY_LIMIT_BC = limitBc.toFixed(2); allocation.TTA_TTY_LIMIT_FC = limitFc; if (excessSiFc > limitFc) { allocation.TTA_TTY_SI_BC = limitBc.toFixed(2); allocation.TTA_TTY_SI_FC = limitFc; excessSiFc = parseFloat((excessSiFc - limitFc).toFixed(2)); excessSiBc = parseFloat((excessSiBc - limitBc).toFixed(2)); } else { allocation.TTA_TTY_SI_BC = excessSiBc; allocation.TTA_TTY_SI_FC = excessSiFc; excessSiFc = 0; excessSiBc = 0; } //Update FAC Excess record exxAll.TTA_TTY_SI_FC += parseFloat(excessSiFc || 0); exxAll.TTA_TTY_SI_BC += parseFloat(excessSiBc || 0); exxAll.TTA_SEQ_NO = detail.TD_SEQ + 1; /*---------------------------- treaty share apportionment *-----------------------------*/ allocationList.push( u.objectSpread( u.objectSpread({}, allocation), {}, { TTA_TTY_CODE: detail.TD_TTY_CODE, TTA_TTY_TYPE: detail.TD_TTY_TYPE, TTA_SEQ_NO: detail.TD_SEQ, INS_RI_TTY_SHARE: detail.MS_RI_PTTY_COMPANY.Select((company) => { return { TTS_CRTE_BY: u.getUserCode(), TTS_CRTE_DATE: u.get_date(), TTS_MOD_BY: u.getUserCode(), TTS_MOD_DATE: u.get_date(), TTS_RI_COMM_PERC: company.TCP_TTY_COMM, TTS_RI_COMP: company.TCP_COMP_CODE, TTS_RI_TAX_PERC: company.TCP_TTY_TAX || 0, TTS_SHARE_PERC: company.TCP_TTY_SHARE || 0, TTS_STATUS: location.RI_STATUS || "U", TTS_TTA_SEQ_NO: detail.TD_SEQ, TTS_TTA_SYS_ID: allocation.TTA_SYS_ID, TTS_TTY_TYPE: detail.TD_TTY_TYPE }; }).ToArray() } ) ); } }); //subclass loop }); //treaty loop allocationList.push(exxAll); allocationList.ForEach(a => { //calculate allocation percentage for the current allocation a.TTA_ALLOC_PERC = ((a.TTA_TTY_SI_FC / totalSumInsuredFc) * 100).toFixed(3) || 0; a.TTA_ALLOC_PERC = a.TTA_ALLOC_PERC === "NaN" ? 0 : a.TTA_ALLOC_PERC; a.TTA_TTY_PREM_BC = (premiumBc * (a.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; a.TTA_TTY_PREM_FC = (premiumFc * (a.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; //calculate treaty share percentage for all participating companies a.INS_RI_TTY_SHARE.ForEach(s => { s.TTS_RI_COMM_BC = (a.TTA_TTY_PREM_BC * (s.TTS_SHARE_PERC / 100) * (s.TTS_RI_COMM_PERC / 100)).toFixed(2); s.TTS_RI_COMM_FC = (a.TTA_TTY_PREM_FC * (s.TTS_SHARE_PERC / 100) * (s.TTS_RI_COMM_PERC / 100)).toFixed(2); s.TTS_SHARE_PREM_BC = (a.TTA_TTY_PREM_BC * (s.TTS_SHARE_PERC / 100)).toFixed(2) || 0; s.TTS_SHARE_PREM_FC = (a.TTA_TTY_PREM_FC * (s.TTS_SHARE_PERC / 100)).toFixed(2) || 0; s.TTS_ALLOC_PERC = parseFloat(a.TTA_ALLOC_PERC || 0); s.TTS_SHARE_SI_BC = (a.TTA_TTY_SI_BC * (s.TTS_SHARE_PERC / 100)).toFixed(2) || 0; s.TTS_SHARE_SI_FC = (a.TTA_TTY_SI_FC * (s.TTS_SHARE_PERC / 100)).toFixed(2) || 0; s.TTS_TAX_BC = (s.TTS_RI_COMM_BC * (s.TTS_RI_TAX_PERC / 100)).toFixed(2) || 0; s.TTS_TAX_FC = (s.TTS_RI_COMM_FC * (s.TTS_RI_TAX_PERC / 100)).toFixed(2) || 0; }); }); return allocationList; }, }); })(window.utility, {}); (function(s, u) { s.add({ get_dashboard_analytics: function (userId, success, error) { u.get(`${this.backend}api/dashboard/analytics/${userId}`, success, error); }, get_product_lov: function (success, error) { u.get(this.backend+"api/classbusiness/lov", success, error); }, dashboard_search: function (json, success, error) { u.post(this.backend+"api/dashboard/policysearch", json, success, error); }, getPolicyById: function (id, success, error) { u.get(`${this.backend}api/queries/getmotorpolicy/${id}`, success, error); }, getTravelById: function (id, success, error) { u.get(`${this.backend}api/queries/gettravelpolicy/${id}`, success, error); }, getBondById: function (id, success, error) { u.get(`${this.backend}api/queries/getbondpolicy/${id}`, success, error); }, getFireById: function (id, success, error) { u.get(`${this.backend}api/queries/getfirepolicy/${id}`, success, error); }, getAviationById: function (id, success, error) { u.get(`${this.backend}api/queries/getaviationpolicy/${id}`, success, error); }, getOilGasById: function (id, success, error) { u.get(`${this.backend}api/queries/getoilgaspolicy/${id}`, success, error); }, getPaById: function (id, success, error) { u.get(`${this.backend}api/queries/getpapolicy/${id}`, success, error); }, customerSearch: function (custName, success, error) { u.get(`${this.backend}api/dashboard/customersearch/${custName}`, success, error); }, getUserTasks: function (code, success, error) { u.get(`${this.backend}api/usertasks/${code}`, success, error); }, saveUserTasks: function (tasks, success, error) { u.post(this.backend+"api/usertasks/save", tasks, success, error); }, searchUserTasks: function (json, success, error) { u.post(this.backend+"api/usertasks/search", json, success, error); }, changeTaskState: function (json, success, error) { u.post(this.backend+"api/usertasks/changestate", json, success, error); }, getRi: function (code, success, error) { u.get(`${this.backend}api/dashboard/ri/${code}`, success, error); }, facsearch: function (json, success, error) { u.post(this.backend+"api/dashboard/facsearch", json, success, error); }, treatysearch: function(json, success, error) { u.post(this.backend+"api/dashboard/treatysearch", json, success, error); }, getAssignedTasks: function(code, success, error) { u.get(`${this.backend}api/usertasks/assigned/${code}`, success, error); }, searchAssignedTasks: function(json, success, error) { u.post(this.backend+"api/usertasks/assigned/search", json, success, error); }, getTreatyAlloc: function(id, success, error) { u.get(`${this.backend}api/dashboard/treatyAlloc/${id}`, success, error); }, searchExpiredPolicies: function(json, success, error) { u.post(this.backend+"api/dashboard/expiredPolicies", json, success, error); }, expcustomerSearch: function (custName, success, error) { u.get(`${this.backend}api/dashboard/expcustomersearch/${custName}`, success, error); }, sendRenewalNotice: function(json, success, error) { u.post(this.backend + "api/dashboard/renewalNotice", json, success, error); }, getPendingRenewals: function(json, success, error) { u.post(this.backend + "api/dashboard/getPendingRenewals", json, success, error); }, processRenewals: function(pols, success, error) { u.post(this.backend + "api/dashboard/processRenewals", pols, success, error); }, savePendingRenewal: function(pol, success, error) { u.post(this.backend + "api/dashboard/savepending", pol, success, error); }, getRenewalAgents: function(polId, success, error) { u.get(this.backend + `api/dashboard/getAgents/${polId}`, success, error); }, getClassProductLov: function(code, success, error) { u.get(this.backend + `api/product/classlov/${code}`, success, error); }, getOutstandingdefferedPremium: async function (code) { return await u.getAsync(this.backend + `api/premiumpaymentstatus/outstandingreport//${code}`); }, }); })(window.service, window.utility); (function (s, u) { s.add({ save_userslimits: function (users, success, error) { u.post(this.backend + "api/userudwlimit/save", users, success, error); }, get_userslimits: function (success, error) { u.get(this.backend + "api/UsersUnderwritingLimits", success, error); }, search_userslimits: function (query, success, error) { u.get(this.backend + "api/userudwlimit/search/" + query, success, error); }, check_user_code: function (code, success, error) { u.get(this.backend + "api/userudwlimit/check/" + code, success, error); }, getUserLimit: function (data, success, error) { u.post(this.backend + "api/userudwlimit/userlimits", data, success, error); } }); })(window.service, window.utility); (function (s, u) { s.add({ getPolicyCurrency: function (id, success, error) { u.get(`${this.backend}api/policy/currency/${id}`, success, error); }, getPolicy: function (id, success, error) { u.get(`${this.backend}api/policy/full/${id}`, success, error); }, getPolicyAsync: async function (id) { return await u.getAsync(`${this.backend}api/policy/full/${id}`); }, getLossDatePolicy: async function(id, lossDate, success, error) { u.post(`${this.backend}api/policy/${id}`, lossDate, success, error); } }); })(window.service, window.utility); (function ($, s, u, $scope) { u.setGlobal("policyCommissionSummarizer", function () { var polPremiumFc = parseFloat($("#POLH_NET_PREM_FC").val()) - parseFloat($("#POLH_FEE_FC").val() || 0); var polPremiumBc = parseFloat($("#POLH_NET_PREM_BC").val()) - parseFloat($("#POLH_FEE_BC").val() || 0); //sum all commissions and update the policy commission field const commissions = u.get_grid_data(u.getGlobal("udwAgntCommGrid")); u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); var totalCommissionsFc = 0; var totalCommissionsBc = 0; commissions.ForEach(com => { com.CMM_COM_AMT_FC = (polPremiumFc * (com.CMM_COM_PERC * 0.01)).toFixed(2); com.CMM_COM_AMT_BC = (polPremiumBc * (com.CMM_COM_PERC * 0.01)).toFixed(2); com.CMM_PREM_AMT_FC = polPremiumFc; com.CMM_PREM_AMT_BC = polPremiumBc; com.CMM_END_NO = $("#POLH_END_NO").val(); com.CMM_RNW_NO = $("#POLH_RENEW_SER_NO").val(); totalCommissionsFc += parseFloat(com.CMM_COM_AMT_FC); totalCommissionsBc += parseFloat(com.CMM_COM_AMT_BC); }); u.gridPopulate(u.getGlobal("udwAgntCommGrid"), commissions); $("#POLH_POL_COMM_BC").val(totalCommissionsBc); $("#POLH_POL_COMM_FC").val(totalCommissionsFc); }); /* * Conditions and clauses Grid Functions */ u.setGlobal("udwAddClause", function () { if (u.field_empty("input[name='PCC_CCL_CODE']")) { u.growl_info("Please select a Condition & Clause to add"); return false; } u.modal_confirmation("Are you sure you want to add this conditions & clauses?", function () { const rowIds = u.getGlobal("udwClausesGrid").jqGrid("getDataIDs"); /*-------------------------------------------------- * declare array to contain the codes to verify *---------------------------------------------*/ const code = []; /*-------------------------------------------------------------- * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; const cellValue = u.getGlobal("udwClausesGrid").jqGrid("getCell", currRow, "PCC_CCL_CODE"); code.push(cellValue); } if ($.inArray($("input[name='PCC_CCL_CODE']").val(), code) < 0) { const formData = u.parse_form("#condtionClauseForm"); formData.PCC_STATUS = "U"; formData.PCC_CRTE_BY = u.getUserCode(); formData.PCC_MOD_BY = u.getUserCode(); formData.PCC_CRTE_DATE = u.get_date(); formData.PCC_MOD_DATE = u.get_date(); //formData.PCC_ALT_NO = 0; u.getGlobal("udwClausesGrid").addRowData(formData.PCC_CCL_CODE, formData); u.hide_confirm(); u.form_reset("#condtionClauseForm"); u.growl_success("Condition & Clause successfully added."); } else { u.hide_confirm(); u.growl_warning("The selected clause already exist."); } }); }); u.setGlobal("udwUpdateClause", function () { if (u.grid_empty(u.getGlobal("udwClausesGrid"))) return u.growl_info("Condition & Clause grid is Empty!!!"); if (u.form_validation("#condtionClauseForm")) { u.modal_confirmation("Are you sure you want to update the selected Condition & Clause?", function (e) { let grid = u.getGlobal("udwClausesGrid"); const rowId = u.getSelRow(grid); let data = rowId ? u.getRow(rowId, grid) : {}; let formData = u.parse_form("#condtionClauseForm") || {}; if (data.PCC_CCL_CODE == formData.PCC_CCL_CODE) { data = u.objectSpread(data, formData); for (let i in data) grid.jqGrid("setCell", rowId, i, data[i]); grid.refresh(); u.hide_confirm(); u.growl_success("Record updated successfully"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); }; }); u.setGlobal("udwRemoveClause", function () { if (u.grid_empty(u.getGlobal("udwClausesGrid"))) return u.growl_info("Condition & Clause grid is Empty!!!"); var grid = u.getGlobal("udwClausesGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); if (rowId == null) { return u.growl_info("Please select a clause to remove"); } var recordStatus = grid.jqGrid("getCell", rowId, "PCC_STATUS"); /*--------------------------------- * Display confirmation modal *------------------------------*/ u.modal_confirmation("Are you sure you want to remove the selected Condition & Clause?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ if (recordStatus === "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.form_reset("#condtionClauseForm"); u.growl_success("Condition & Clause successfully deleted"); } /*------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ if (recordStatus === "A") { grid.jqGrid("setCell", rowId, "PCC_STATUS", "D"); $(`#${rowId}`, "#grdCondClauses").css({ color: "red" }); u.hide_confirm(); u.growl_success("Condition&Clause successfully marked for deletion, click on the save button to save changes"); } else if (recordStatus === "D") { $(`#${rowId}`, "#grdCondClauses").css({ color: "black" }); grid.jqGrid("setCell", rowId, "PCC_STATUS", "A"); u.hide_confirm(); u.growl_success("Condition&Clause successfully restored"); } }); }); u.setGlobal("udwGetClauses", function () { s.getProductClauses($("#POLH_SUB_CLASS_CODE").val(), function (response) { u.clear_grid_data(u.getGlobal("udwClausesGrid")); if (response.state) { if (!jQuery.isEmptyObject(response.data)) { for (let i in response.data) { u.getGlobal("udwClausesGrid").addRowData(response.data[i].ID, response.data[i]); } } } else { u.growl_error("An error occurred while getting the conditions and clauses."); } }); }); u.setGlobal("userRightsProductCheck", function () { s.product_check({ "UserCode": u.getUserCode(), "ProductCode": $("#POLH_SUB_CLASS_CODE").val() }, function (response) { if (!response.state) { u.growl_error(response.message); $("#POLH_SUB_CLASS_CODE").val(""); $("input[name='PDT_NAME']").val(""); } else { // fetch conditions and clauses u.getGlobal("udwGetClauses")(); } }); }); u.setGlobal("udwGetClausesLov", function () { s.getClausesLovSearch($("#POLH_SUB_CLASS_CODE").val(), function (response) { u.clear_grid_data(u.getGlobal("udwClausesLovGrid")); if (response.state) { if (!jQuery.isEmptyObject(response.data)) { for (let i in response.data) { u.getGlobal("udwClausesLovGrid").addRowData(response.data[i].ID, response.data[i]); } $("#clausesLovModal").modal(); } else { u.growl_info("Conditions and Clauses not setup for product"); $("#clausesLovModal").modal(); } } else { u.growl_error("An error occurred while getting the conditions and clauses."); } }); }); /* * Policy Documents functions */ u.setGlobal("udwAddFile", function () { if (u.form_validation("#policyFilesForm")) { u.modal_confirmation("Are you sure you want to add the selected File to the grid?", function () { //get type of file and compare to file properties //var fileType = $("#polFIle").val().split(".").pop().toLowerCase(); // get file props //s.getFileProprerties(function(response) { // if (!jQuery.isEmptyObject(response)) { // switch (fileType) { // case "jpg": // case "png": // break; // case "docx": // case "doc": // break; // case "xlsx": // case "xls": // break; // case "pdf": // break; // } // } //}); // upload file //var data = u.parse_form("#policyFilesForm"); // data.append("FILE", $("#polFile").val()); s.file_upload(s.app + "api/files/underwritingupload", "#policyFilesForm", "FILE", function (response) { if (response.state) { const formData = {}; //var count = 0; //var formData = u.parse_form("#policyFilesForm"); ////check if the files has not added already //u.setGridColumn($scope.polFileGrid, { // "PF_MSF_SYS_ID": function (code) { // if (code == formData["PF_MSF_SYS_ID"]) { // count++; // } // } //}); //if (count <= 0) { // formData["PF_CRTE_BY"] = u.getUserCode(); // formData["PF_CRTE_DATE"] = u.get_date(); // formData["PF_STATUS"] = "U"; // formData["PF_PH_END_NO"] = 0; // u.getGlobal("udwPolDocsGrid").addRowData(formData.ID, formData); // u.form_reset("#policyFilesForm"); //} else { // u.growl_warning("File has already been added to grid, please select a different file"); //} //////console.log(response.data); formData["PF_SYS_ID"] = response.data.MSF_SYS_ID; formData["PF_FC_CODE"] = $("#FC_CODE").val(); formData["PF_URL"] = response.data.MSF_WEB_URL; formData["PF_NAME"] = response.data.MSF_FILE_NAME; formData["PF_MSF_SYS_ID"] = response.data.MSF_SYS_ID; formData["PF_CRTE_BY"] = u.getUserCode(); formData["PF_CRTE_DATE"] = u.get_date(); formData["PF_STATUS"] = "U"; formData["PF_PH_END_NO"] = 0; u.getGlobal("udwPolDocsGrid").addRowData(formData.ID, formData); u.form_reset("#policyFilesForm"); u.hide_confirm(); u.growl_success("File added to grid successfully."); } else { u.growl_error(response.message); } }); }); } else { u.growl_info("All fields marked red are required"); } }); u.setGlobal("udwRemoveFile", function () { if (u.grid_empty(u.getGlobal("udwPolDocsGrid"))) return u.modalAlert("Grid is empty!!!"); //obtain selected row var rowId = u.getSelRow(u.getGlobal("udwPolDocsGrid")), status = u.getCell(u.getGlobal("udwPolDocsGrid"), rowId, "PW_STATUS"); u.modal_confirmation(`Are you sure you want to ${status === "A" || status === "U" ? "remove" : "restore"} the selected Document?`, function () { if (status === "U") {//remove unsaved record from the grid u.delRow(u.getGlobal("udwPolDocsGrid"), rowId); u.growl_success("Document successfully removed from grid"); } else if (status === "A") {//mark saved row for deletion $(`#${rowId}`).css({ color: "red" }); u.setCell(u.getGlobal("udwPolDocsGrid"), rowId, "PW_STATUS", "D"); u.growl_success("Document successfully marked for deletion, please click the save button to save changes"); } else if (status === "D") {//restore row to active state $(`#${rowId}`).css({ color: "#111111" }); u.setCell(u.getGlobal("udwPolDocsGrid"), rowId, "PW_STATUS", "A"); u.growl_success("Document successfully restored"); } u.hide_confirm(); u.form_reset("#policyFilesForm"); }); }); /*-------------------------* * CUSTOMER SETUP FUNCTIONS *-------------------------*/ u.setGlobal("udwSelectCustomer", async function () { if (!u.form_validation("#customerForm")) return u.growl_info("Form is incomplete, please fill all fields that are marked red."); const data = u.parse_form("#customerForm"); if (data.CUS_STATUS !== "A") return u.growl_info("Please save the customer first"); $("#POLH_CUST_CODE").val(data.CUS_CODE); $("#POLH_CUST_NAME").val(data.CUS_OFFICIAL_NAME); $("#POLH_CUST_ADRS").val(data.CUS_ADDRS2); $("#POLH_CUST_TEL").val(data.CUS_PHONE1); $("#POLH_OWNSHIP").val(data.CUS_OFFICIAL_NAME); $("#POLH_CUST_AMLCHECK").val(data.CUS_AML_YN); $("#POLH_CUST_AMLCHECK").trigger("change"); $("#customerSetupModal").modal("hide"); u.growl_success("Customer selected."); /*----------------------------------------* * AUTOMATICALLY SAVE CUSTOMER ON SELECTION *----------------------------------------*/ const response = await s.saveAsync([data]); }); u.setGlobal("udwAddCustomer", async function () { if (!u.grid_empty(u.getGlobal("udwCustomerGrid"))) return u.growl_info("You cannot add more than one customer per policy"); if (!u.form_validation("#customerForm")) return u.growl_info("Please fill the form appropriately"); const itemobj = $("#CUS_TYPE_CODE").val(); if (itemobj == "IND") { if (u.form_validation("#customerForm")) { $("#CUS_SYS").val(""); if ($("#CUS_SYS").val() == "") { const seqNo = await s.getSequenceAsync("CUSTOMERS_SEQ"); $("#CUS_SYS").val(seqNo); //RetnSequenceNo("CUSTOMERS_SEQ", getVehSeqNo); //function getVehSeqNo(data) { // $("#CUS_SYS").val(data); //} } u.modal_confirmation("Are you sure you want to add Customer to the grid?", function () { const custtype = $("#CUS_TYPE_CODE").val(); const sysid = $("#CUS_SYS").val(); const rowIds = u.getGlobal("udwCustomerGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCustomerGrid").jqGrid("getCell", currRow, "CUS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#CUS_CODE").val(), code) < 0) { const formData = u.parse_form("#customerForm"); formData.CUS_CODE = custtype + sysid; formData.CUS_STATUS = "U"; formData.CUS_CRTE_BY = u.getUserCode(); formData.CUS_CRTE_DATE = u.get_date(); u.getGlobal("udwCustomerGrid").addRowData(formData.CUS_CODE, formData); u.form_reset("#customerForm"); u.hide_confirm(); u.growl_success("Record successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } } if (itemobj == "COP") { if (u.form_validation("#customerForm")) { $("#CUS_SYS").val(""); if ($("#CUS_SYS").val() == "") { const seqNo = await s.getSequenceAsync("COPERATES_SEQ"); $("#CUS_SYS").val(seqNo); //RetnSequenceNo("COPERATES_SEQ", getVehSeqNo); //function getVehSeqNo(data) { // $("#CUS_SYS").val(data); //} } u.modal_confirmation("Are you sure you want to add Customer to the grid?", function () { const custtype = $("#CUS_TYPE_CODE").val(); const sysid = $("#CUS_SYS").val(); const rowIds = u.getGlobal("udwCustomerGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCustomerGrid").jqGrid("getCell", currRow, "CUS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#CUS_CODE").val(), code) < 0) { const formData = u.parse_form("#customerForm"); formData.CUS_CODE = custtype + sysid; formData.CUS_STATUS = "U"; formData.CUS_CRTE_BY = u.getUserCode(); formData.CUS_CRTE_DATE = u.get_date(); u.getGlobal("udwCustomerGrid").addRowData(formData.CUS_CODE, formData); u.form_reset("#customerForm"); u.hide_confirm(); u.growl_success("Record successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } } if (itemobj == "GOV") { if (u.form_validation("#customerForm")) { $("#CUS_SYS").val(""); if ($("#CUS_SYS").val() == "") { const seqNo = await s.getSequenceAsync("GOVERNMENT_SEQ"); $("#CUS_SYS").val(seqNo); //RetnSequenceNo("GOVERNMENT_SEQ", getVehSeqNo); //function getVehSeqNo(data) { // $("#CUS_SYS").val(data); //} } u.modal_confirmation("Are you sure you want to add Customer to the grid?", function () { const custtype = $("#CUS_TYPE_CODE").val(); const sysid = $("#CUS_SYS").val(); const rowIds = u.getGlobal("udwCustomerGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCustomerGrid").jqGrid("getCell", currRow, "CUS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#CUS_CODE").val(), code) < 0) { const formData = u.parse_form("#customerForm"); formData.CUS_CODE = custtype + sysid; formData.CUS_STATUS = "U"; formData.CUS_CRTE_BY = u.getUserCode(); formData.CUS_CRTE_DATE = u.get_date(); u.getGlobal("udwCustomerGrid").addRowData(formData.CUS_CODE, formData); u.form_reset("#customerForm"); u.hide_confirm(); u.growl_success("Country successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } } else { if (u.form_validation("#customerForm")) { $("#CUS_SYS").val(""); if ($("#CUS_SYS").val() == "") { const seqNo = await s.getSequenceAsync("CUSTOMERS_SEQ"); $("#CUS_SYS").val(seqNo); } u.modal_confirmation("Are you sure you want to add Customer to the grid?", function () { const custtype = $("#CUS_TYPE_CODE").val(); const sysid = $("#CUS_SYS").val(); const rowIds = u.getGlobal("udwCustomerGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCustomerGrid").jqGrid("getCell", currRow, "CUS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#CUS_CODE").val(), code) < 0) { const formData = u.parse_form("#customerForm"); formData.CUS_CODE = custtype + sysid; formData.CUS_STATUS = "U"; formData.CUS_CRTE_BY = u.getUserCode(); formData.CUS_CRTE_DATE = u.get_date(); u.getGlobal("udwCustomerGrid").addRowData(formData.CUS_CODE, formData); u.form_reset("#customerForm"); u.hide_confirm(); u.growl_success("Record successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } } }); u.setGlobal("udwRemoveCustomer", function () { if (u.grid_empty(u.getGlobal("udwCustomerGrid"))) return u.growl_info("The grid is empty"); var grid = u.getGlobal("udwCustomerGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "CUS_STATUS"); /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.growl_hide("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "CUS_STATUS", "D"); $(`#${rowId}`, "#grdCustomer").css({ color: "red" }); u.hide_confirm(); u.growl_hide("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdCustomer").css({ color: "black" }); grid.jqGrid("setCell", rowId, "CUS_STATUS", "A"); u.hide_confirm(); u.growl_hide("Data successfully restored"); } }); }); u.setGlobal("udwUpdateCustomer", function () { if (u.grid_empty(u.getGlobal("udwCustomerGrid"))) return u.growl_info("The grid is empty"); u.modal_confirmation("Are you sure you want to update the selected Row?", function () { const grid = u.getGlobal("udwCustomerGrid"); const rowId = grid.jqGrid("getGridParam", "selrow"); const code = grid.jqGrid("getCell", rowId, "CUS_CODE"); if (code == $("#CUS_CODE").val()) { const formData = u.parse_form("#customerForm"); //////console.log(formData); for (let i in formData) { grid.jqGrid("setCell", rowId, i, formData[i]); } u.hide_confirm(); u.growl_success("Customer successfully updated"); $("form input[name='CUS_CODE']").data("update", false); } else { u.hide_confirm(); u.growl_info("Please Select a row to edit"); } }); }); u.setGlobal("udwSaveCustomer", function () { if (u.grid_empty(u.getGlobal("udwCustomerGrid"))) return u.growl_info("The grid is empty"); u.modal_confirmation("Are you sure you want to Save Changes?", function (e) { /*----------------------------------- * send data to backend for saving *---------------------------------*/ if (!$scope.saving) { $scope.saving = true; s.save_customers(u.get_grid_data(u.getGlobal("udwCustomerGrid")), function (responseData) { $scope.saving = false; if (responseData.state) { const formgrid = u.getGlobal("udwCustomerGrid"); const rowIds = u.getGlobal("udwCustomerGrid").jqGrid("getDataIDs"); // iterate through the rows in Grid and update Status for (var i = 0, len = rowIds.length; i < len; i++) { const covCurrRow = rowIds[i]; const covRecStatus = formgrid.jqGrid("getCell", covCurrRow, "CUS_STATUS"); //Delete row if it is marked for deletion if (covRecStatus === "D") { formgrid.jqGrid("delRowData", covCurrRow); } //Update row status to Active (A) if it is newly added if (covRecStatus === "U") { formgrid.jqGrid("setCell", covCurrRow, "CUS_STATUS", "A"); } } u.hide_confirm(); u.growl_success(responseData.message); u.setGlobal("udwSaveCustomer", true); } else { u.growl_error(responseData.message); } }, function () { u.hide_confirm(); u.growl_error("Server Please try again Later"); }); } }); }); u.setGlobal("udwResetCustomer", function () { u.modal_confirmation("Are you sure you want to clear all data from the form?", function (e) { u.form_reset("#customerForm"); u.clear_grid_data(u.getGlobal("udwCustomerGrid")); u.hide_confirm(); u.growl_success("Form successfully cleared"); }); }); $scope.endorsementRiReCalc = function (t, totalSiBc, totalSiFc, totalPremBc, totalPremFc, riSiBc, riSiFc) { t.TTH_ACC_SI_BC = (parseFloat(totalSiBc)).toFixed(2); t.TTH_ACC_SI_FC = (parseFloat(totalSiFc)).toFixed(2); t.TTH_RI_SI_BC = (parseFloat(totalSiBc)).toFixed(2); t.TTH_RI_SI_FC = (parseFloat(totalSiFc)).toFixed(2); t.TTH_TOTAL_SI_BC = (parseFloat(totalSiBc)).toFixed(2); t.TTH_TOTAL_SI_FC = (parseFloat(totalSiFc)).toFixed(2); t.TTH_RI_PREM_BC = (parseFloat(totalPremBc)).toFixed(2); t.TTH_RI_PREM_FC = (parseFloat(totalPremFc)).toFixed(2); t.TTH_TOTAL_PREM_BC = (parseFloat(totalPremBc)).toFixed(2); t.TTH_TOTAL_PREM_FC = (parseFloat(totalPremFc)).toFixed(2); //check if the limit of the allocation exceeds zero //if the limit of the allocation exceeds zero then we can apportion with the limit //if the limit of the allocation does not exceed zero then we use the specified sum insured as the limit //if the sum insured of the allocation record is zero skip allocation //after all apportionments check if riSiFc is greater than zero. if riSiFc is greater than zero then set that amount as excess var processingSiFc = 0; var processingSiBc = 0; var limitFc; var limitBc; t.INS_RI_TTY_ALLOCATION.ForEach(a => { if (a.TTA_TTY_LIMIT_FC > 0) { //allocation limit is greater than zero limitFc = parseFloat(a.TTA_TTY_LIMIT_FC); limitBc = parseFloat(a.TTA_TTY_LIMIT_BC); } else { //allocation limit is less than zero if (a.TTA_TTY_SI_FC > 0) { //sum insured of allocation is more than zero limitFc = parseFloat(a.TTA_TTY_SI_FC); limitBc = parseFloat(a.TTA_TTY_SI_BC); } else { return false; } } //if (limitFc) { //} if (limitFc > riSiFc) { //allocation absorbs all sum insured processingSiFc = riSiFc; processingSiBc = riSiBc; riSiFc = 0; riSiBc = 0; } else { processingSiFc = limitFc; processingSiBc = limitBc; riSiFc -= limitFc; riSiBc -= limitBc; } var allocRate = parseFloat(processingSiFc / totalSiFc); a.TTA_TTY_SI_BC = (parseFloat(totalSiBc * allocRate)).toFixed(2); a.TTA_TTY_SI_FC = (parseFloat(totalSiFc * allocRate)).toFixed(2); a.TTA_TTY_PREM_BC = (parseFloat(totalPremBc * allocRate) - parseFloat(a.TTA_TTY_PREM_BC)).toFixed(2); a.TTA_TTY_PREM_FC = (parseFloat(totalPremFc * allocRate) - parseFloat(a.TTA_TTY_PREM_FC)).toFixed(2); //allocation share re apportionment a.INS_RI_TTY_SHARE.ForEach(share => { var propRate = parseFloat(share.TTS_ALLOC_PERC / a.TTA_ALLOC_PERC) || 0; var shareAllocPerc = parseFloat(propRate * allocRate) || 0; var newShareRate = parseFloat(shareAllocPerc); share.TTS_SHARE_SI_BC = (parseFloat(totalSiBc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_SI_FC = (parseFloat(totalSiFc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_PREM_BC = (parseFloat(totalPremBc * newShareRate) - parseFloat(share.TTS_SHARE_PREM_BC)).toFixed(2) || 0; share.TTS_SHARE_PREM_FC = (parseFloat(totalPremFc * newShareRate) - parseFloat(share.TTS_SHARE_PREM_FC)).toFixed(2) || 0; share.TTS_RI_COMM_BC = (parseFloat(share.TTS_SHARE_PREM_BC || 0) * parseFloat(share.TTS_RI_COMM_PERC * 0.01)).toFixed(2) || 0; share.TTS_RI_COMM_FC = (parseFloat(share.TTS_SHARE_PREM_FC || 0) * parseFloat(share.TTS_RI_COMM_PERC * 0.01)).toFixed(2) || 0; share.TTS_TAX_BC = (parseFloat(share.TTS_RI_COMM_BC) * (parseFloat(share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_TAX_FC = (parseFloat(share.TTS_RI_COMM_FC) * (parseFloat(share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_SHARE_PERC = ((parseFloat(shareAllocPerc / allocRate) || 0) * 100).toFixed(5) || 0; share.TTS_ALLOC_PERC = (parseFloat(shareAllocPerc * 100)).toFixed(5) || 0; }); a.TTA_ALLOC_PERC = (parseFloat(allocRate * 100) || 0).toFixed(5) || 0; a.INS_RI_TTY_SHARE = a.INS_RI_TTY_SHARE; //.ToJson(); }); //check for excess record if (riSiFc > 0) { //assign excess amount const excsAlloc = t.INS_RI_TTY_ALLOCATION.First(a => a.TTA_TTY_TYPE == "FX"); const allocRate = parseFloat(riSiFc / totalSiFc); excsAlloc.TTA_TTY_SI_BC = (parseFloat(totalSiBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_SI_FC = (parseFloat(totalSiFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_BC = (parseFloat(totalPremBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_FC = (parseFloat(totalPremFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_ALLOC_PERC = (allocRate * 100).toFixed(5) || 0; } }; u.setGlobal("fetchPolicyHistory", async function (polId, endNo, rnwNo) { const response = await s.getPolicyHstoryAsync(polId, endNo, rnwNo); if (response.state) { u.setGlobal("oldPolicy", response.data); return response.data; } else { u.growl_error(response.message); return null; } }); u.setGlobal("pendingRiCheck", function () { $("#riBadge").text(u.getGlobal("pendingRiCount") || 0); $("#riBadge").removeClass("m-hide"); return u.getGlobal("pendingRiCount") > 0; }); u.setGlobal("policyIsCancelled", () => u.get_grid_data(u.getGlobal("udwEndsmntGrid")).Any(e => e.END_FLAG == "FC")); u.setGlobal("policyIsSuspended", () => $("#POLH_SUSPND_YN").val() == "Y"); u.setGlobal("Product", function (polhData) { polhData.INS_UWD_INTERMEDIARY_COMM = u.get_grid_data(u.getGlobal("udwAgntCommGrid")); polhData.INS_UDW_POL_FEES = u.get_grid_data(u.getGlobal("udwPolFeesGrid")); polhData.INS_UDW_POL_FEES.ForEach(x => { x.POL_FEE_FEE_END_NO = parseInt(x.POL_FEE_FEE_END_NO); }); polhData.INS_COINS_LEADER = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")); polhData.INS_UDW_POL_WORDING = u.get_grid_data(u.getGlobal("udwPolDocsGrid")); polhData.INS_UDW_POL_COND_CLAUSES = u.get_grid_data(u.getGlobal("udwClausesGrid")); polhData.INS_RI_TTY_HEAD = u.get_grid_data(u.getGlobal("udwRIGrid"), true); polhData.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; }); }); polhData.INS_RI_FAC_INWARD = u.get_grid_data(u.getGlobal("udwFacInwGrid"), true); polhData.CLM_EST_HEAD = u.get_grid_data(u.getGlobal("udwClaimsGrid"), true); polhData.INS_RI_FAC_OUTWARD = []; }); u.setGlobal("PopulateProduct", function (Policy) { if (Policy.INS_UDW_POL_FEES) { u.clear_grid_data(u.getGlobal("udwPolFeesGrid")); u.gridPopulate(u.getGlobal("udwPolFeesGrid"), Policy.INS_UDW_POL_FEES); } else { u.update_grid_status(u.getGlobal("udwPolFeesGrid"), "POL_FEE_STATUS"); } if (Policy.INS_UWD_INTERMEDIARY_COMM) { u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); u.gridPopulate(u.getGlobal("udwAgntCommGrid"), Policy.INS_UWD_INTERMEDIARY_COMM); } else { u.update_grid_status(u.getGlobal("udwAgntCommGrid"), "CMM_STATUS"); } if (Policy.INS_UDW_POL_WORDING) { u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); u.gridPopulate(u.getGlobal("udwPolDocsGrid"), Policy.INS_UDW_POL_WORDING); } else { u.update_grid_status(u.getGlobal("udwPolDocsGrid"), "PW_STATUS"); } if (Policy.INS_UDW_POL_COND_CLAUSES) { u.clear_grid_data(u.getGlobal("udwClausesGrid")); u.gridPopulate(u.getGlobal("udwClausesGrid"), Policy.INS_UDW_POL_COND_CLAUSES); } else { u.update_grid_status(u.getGlobal("udwClausesGrid"), "PCC_STATUS"); } if (Policy.INS_RI_TTY_HEAD) { u.clear_grid_data(u.getGlobal("udwRIGrid")); u.gridPopulate(u.getGlobal("udwRIGrid"), Policy.INS_RI_TTY_HEAD, true); } else { u.update_grid_status(u.getGlobal("udwRIGrid"), "TTH_STATUS", "INS_RI_TTY_ALLOCATION", "TTA_STATUS"); } $("#riBadge").text(Policy.INS_RI_TTY_HEAD.Count() || 0); if (Policy.INS_RI_FAC_INWARD) { u.clear_grid_data(u.getGlobal("udwFacInwGrid")); u.gridPopulate(u.getGlobal("udwFacInwGrid"), Policy.INS_RI_FAC_INWARD); } else { u.update_grid_status(u.getGlobal("udwFacInwGrid"), "FINW_STATUS"); } if (Policy.MS_UDW_ENDORSEMENTS) { u.clear_grid_data(u.getGlobal("udwEndsmntGrid")); u.gridPopulate(u.getGlobal("udwEndsmntGrid"), Policy.MS_UDW_ENDORSEMENTS, true); } else { u.update_grid_status(u.getGlobal("udwEndsmntGrid"), "END_STATUS", "UDW_RISK_ENDSMNT_DTLS", "RED_STATUS"); } if (Policy.INS_COINS_LEADER) { u.clear_grid_data(u.getGlobal("udwCoInsLdrGrid")); u.gridPopulate(u.getGlobal("udwCoInsLdrGrid"), Policy.INS_COINS_LEADER, true); u.form_reset("#CoinsLeaderForm"); u.fill_form(Policy.INS_COINS_LEADER.FirstOrDefault() || {}, "#CoinsLeaderForm", false); } else { u.update_grid_status(u.getGlobal("udwCoInsLdrGrid"), "CIL_STATUS"); } if (Policy.CLM_EST_HEAD) { u.clear_grid_data(u.getGlobal("udwClaimsGrid")); u.gridPopulate(u.getGlobal("udwClaimsGrid"), Policy.CLM_EST_HEAD); } else { u.update_grid_status(u.getGlobal("udwClaimsGrid"), "CLM_STATUS"); } }); /*------------------ * Save/Update Data *-----------------*/ u.setGlobal("savePolicy", function (polhData, callback, isRenewal = false) { $("#policyCalculationsModal").modal("hide"); callback = callback || function () { }; /*----------------------------------------------- * setup validation before sending save request *---------------------------------------------*/ polhData.POLH_TP_INTEREST = $("#POLH_TP_INTEREST").val() === "" ? " " : $("#POLH_TP_INTEREST").val(); if (!isRenewal) { if (!u.form_validation("#polheaderForm")) { $("#tabs").tabs({ active: 0 }); return u.growl_warning("Please fill the fields that are marked red"); } } /*----------------------------------------------- * Validation for coinsurance and fac-inward details. *---------------------------------------------*/ const coinsuranceValid = u.getGlobal("CoinsurancePremiumValidations")(polhData); if (!coinsuranceValid) return; if (u.getGlobal("errorCount") > 0) { return u.modalInfo("There is an issue with the start date and end dates of your vehicle risk, please check for any highlighted vehicle/motor risk"); } /*----------------------------------------------------- * CHECKS IF POLICY STATE IS NOT APPROVED OR CONFIRMED *----------------------------------------------------*/ switch (polhData.POLH_TXN_STATE) { case "C": return u.growl_warning("The Policy is already Confirmed, Please unconfirm before saving"); case "P": return u.growl_warning("The Policy is Approved. You cannot save the Policy"); } /*----------------------------------------- * CHECKS IF REINSURANCE GRID IS NOT EMPTY *----------------------------------------*/ if (u.grid_empty(u.getGlobal("udwRIGrid")) && !isRenewal) return u.growl_warning("ReInsurance grid is empty, Policy can not be saved"); let RI = isRenewal ? polhData.INS_RI_TTY_HEAD : u.get_grid_data(u.getGlobal("udwRIGrid"), true) || []; RI.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; }); }); if (RI.every(y => !y.INS_RI_TTY_ALLOCATION.Any())) return u.growl_warning("Allocation grid is empty, Policy can not be saved"); //if (RI.every(y => y.INS_RI_TTY_ALLOCATION.every(p => p.INS_RI_TTY_SHARE.Any()))) return u.growl_warning("Share grid is empty, Policy can not be saved"); ////console.log(RI.every(y => y.INS_RI_TTY_ALLOCATION.every(p => p.INS_RI_TTY_SHARE.Any()))); /*------------------------------------------------------- * CHECKS IF SELECTED INSURANCE SOURCE GRID IS NOT EMPTY *-------------------------------------------------------*/ if (polhData.POLH_INS_SOURCE === "FIN" && u.grid_empty(u.getGlobal("udwFacInwGrid"))) { return u.growl_warning("Facultative Inward is selected, please add Fac Inward details"); } else if (polhData.POLH_INS_SOURCE === "COL" && u.grid_empty(u.getGlobal("udwCoInsLdrGrid"))) { return u.growl_warning("Coinsurance Leader is selected, please add Coinsurance Leader details"); } else if (polhData.POLH_INS_SOURCE === "COM" && u.grid_empty(u.getGlobal("udwFacInwGrid"))) { return u.growl_warning("Coinsurance Member is selected, please add Coinsurance Member details"); } /*----------------------------------------------------------------------- * CHECKS IF SELECTED BUSINESS SOURCE GRID AND INTERMEDIARY IS NOT EMPTY *----------------------------------------------------------------------*/ if (!isRenewal) { if (polhData.POLH_BIZ_SOURCE === "AGM" && u.grid_empty(u.getGlobal("udwAgntCommGrid"))) { return u.growl_warning("Agent is selected, please select or reselect intermediary to add intermediary details"); } else if (polhData.POLH_BIZ_SOURCE === "BKM" && u.grid_empty(u.getGlobal("udwAgntCommGrid"))) { return u.growl_warning("Broker is selected, please select or reselect intermediary to add intermediary details"); } } const documents = u.getGlobal("policyDocuments"); /*------------------------------------------------------- * CHECK AND PROMPT IF SPECIFIC DOCUMENT IS NOT ATTACHED *-----------------------------------------------------*/ switch (polhData.POLH_CLASS_CODE) { case "9000": //TRAVEL polhData.INS_UDW_TRAVEL_RISK = (typeof (polhData.INS_UDW_TRAVEL_RISK) === "string" ? JSON.parse(polhData.INS_UDW_TRAVEL_RISK || "[]") : polhData.INS_UDW_TRAVEL_RISK) || []; if (polhData.INS_UDW_TRAVEL_RISK.Any(x => (parseFloat(x.TRA_AGE || 0) >= 66) && (x.TRA_STATUS !== "D"))) { documents.UDW_POL_DOCUMENTATION = (typeof (documents.UDW_POL_DOCUMENTATION) === "string" ? JSON.parse(documents.UDW_POL_DOCUMENTATION || "[]") : documents.UDW_POL_DOCUMENTATION) || []; if (!(documents.UDW_POL_DOCUMENTATION.Any())) { return u.growl_warning(`No checklist document has being set up!!!`); }; //documents.UDW_POL_DOCUMENTATION.ForEach(v => { v.MS_POL_DOC_CHKLIST = (typeof (v.MS_POL_DOC_CHKLIST) === "string" ? JSON.parse(v.MS_POL_DOC_CHKLIST || "{}") : v.MS_POL_DOC_CHKLIST) || {}; }); //if (!documents.UDW_POL_DOCUMENTATION.Any(c => c.MS_POL_DOC_CHKLIST.POLDOC_CHK_NAME == "Over Age Medical Report")) { // return u.growl_warning(`Over Age Medical Report checklist document has not being set up!!!`); //}; if (!documents.UDW_POL_DOCUMENTATION.Any(c => c.POL_DOC_CHK_NAME == "Over Age Medical Report")) { return u.growl_warning(`Over Age Medical Report checklist document has not being set up!!!`); }; let overAgeCheckList = documents.UDW_POL_DOCUMENTATION.Where(c => c.POL_DOC_CHK_NAME == "Over Age Medical Report").FirstOrDefault(); overAgeCheckList = (typeof (overAgeCheckList) === "string" ? JSON.parse(overAgeCheckList || "{}") : overAgeCheckList) || {}; overAgeCheckList.UDW_POL_DOCS = (typeof (overAgeCheckList.UDW_POL_DOCS) === "string" ? JSON.parse(overAgeCheckList.UDW_POL_DOCS || "[]") : overAgeCheckList.UDW_POL_DOCS) || []; if (!overAgeCheckList.UDW_POL_DOCS.Any()) { return u.growl_warning(`Please check document tab to upload document at the ${"Over Age Medical Report"}`); }; } break; default: break; } if (!(u.getGlobal("checkRequiredDocuments")(documents.UDW_POL_DOCUMENTATION))) { return u.growl_warning("Required Documentation not Added, Pls add required documents.."); } u.modalConfirmationAsync(isRenewal ? "Please save before continuing" : "Are you sure you want to save your changes?", async function () { /*----------------------------------- * GETS ALL REMAINING PRODUCT MODELS * IGNORE IF IT IS ENDORSEMENT STATE *---------------------------------*/ if (!isRenewal) { switch (polhData.POLH_CLASS_CODE) { case "1000": //PA case "9000": //TRAVEL case "3000": //FIRE case "6000": //MOTOR case "1200": //OILGAS case "5000": //MARINE if ((polhData.POLH_SUB_CLASS_CODE == "5003") || (polhData.POLH_SUB_CLASS_CODE == "5005")) { u.getGlobal("Product")(polhData); } else { if (!("EX").includes(polhData.POLH_TXN_STATE)) u.getGlobal("Product")(polhData); } break; default: u.getGlobal("Product")(polhData); break; } } /*------------------------------------------------------- * SET CONDITION AND CLAUSE ENDORSEMENT AND RENEWAL NUMBER *------------------------------------------------------*/ polhData.INS_UDW_POL_COND_CLAUSES = u.get_grid_data(u.getGlobal("udwClausesGrid")) || (typeof (polhData.INS_UDW_POL_COND_CLAUSES) === "string" ? JSON.parse(polhData.INS_UDW_POL_COND_CLAUSES || "[]") : polhData.INS_UDW_POL_COND_CLAUSES) || []; polhData.INS_UDW_POL_COND_CLAUSES.ForEach(h => { h.PCC_END_NO = polhData.POLH_END_NO; h.PCC_RNW_NO = polhData.POLH_RENEW_SER_NO; }); /*----------------------------------- * RESET BUSINESS SOURCES FOR DIRECT *----------------------------------*/ switch (polhData.POLH_BIZ_SOURCE) { case "DIR": //DIRECT polhData.POLH_POL_COMM_BC = 0; polhData.POLH_POL_COMM_FC = 0; polhData.INS_UWD_INTERMEDIARY_COMM = (typeof (polhData.INS_UWD_INTERMEDIARY_COMM) === "string" ? JSON.parse(polhData.INS_UWD_INTERMEDIARY_COMM || "[]") : polhData.INS_UWD_INTERMEDIARY_COMM) || []; polhData.INS_UWD_INTERMEDIARY_COMM = polhData.INS_UWD_INTERMEDIARY_COMM.Where(b => b.CMM_STATUS !== "U").ToList(); polhData.INS_UWD_INTERMEDIARY_COMM.ForEach(x => x.CMM_STATUS = "D"); break; default: break; } /*------------------------------------------------------------ * Documentation section only done when document is saving... *-----------------------------------------------------------**/ for (let i in documents.UDW_POL_DOCUMENTATION) { if (documents.UDW_POL_DOCUMENTATION[i].UDW_POL_DOCS.length > 0) { documents.UDW_POL_DOCUMENTATION[i].POL_DOC_COMPLETED = true; } else { documents.UDW_POL_DOCUMENTATION[i].POL_DOC_COMPLETED = false; } } polhData.UDW_POL_DOCUMENTATION = documents.UDW_POL_DOCUMENTATION; if (polhData.POLH_STATUS === "U") { polhData.POLH_CRTE_BY = u.getUserCode(); polhData.POLH_MOD_BY = u.getUserCode(); } else if (polhData.POLH_STATUS === "A" || polhData.POLH_STATUS === "D") { polhData.POLH_MOD_BY = u.getUserCode(); } /*-------------------------------------------------- * SET TREATY HEAD CURRENCY AND RATE AT ENDORSEMENT *------------------------------------------------*/ switch (polhData.POLH_TXN_STATE) { case "E": case "X": case "XS": polhData.INS_RI_TTY_HEAD = (typeof (polhData.INS_RI_TTY_HEAD) === "string" ? JSON.parse(polhData.INS_RI_TTY_HEAD || "[]") : polhData.INS_RI_TTY_HEAD) || []; polhData.INS_RI_TTY_HEAD.ForEach(h => { h.TTH_CURRENCY = h.TTH_CURRENCY || polhData.POLH_CURRENCY; h.TTH_CURRENCY_RATE = h.TTH_CURRENCY_RATE || polhData.POLH_CURRENCY_RATE; }); break; } /*------------------------------------------------------ * SET TREATY ALLOCATION CLOSE FLAG TO NO AT ENDORSEMENT *-----------------------------------------------------*/ switch (polhData.POLH_TXN_STATE) { case "E": case "X": case "XS": polhData.INS_RI_TTY_HEAD = (typeof (polhData.INS_RI_TTY_HEAD) === "string" ? JSON.parse(polhData.INS_RI_TTY_HEAD || "[]") : polhData.INS_RI_TTY_HEAD) || []; polhData.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.TTA_CLOSE_FLAG = "N"; g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(m => { m.TTS_CLOSE_FLAG = "N"; }); }); }); break; } /*----------------------------------------------- * SET TREATY HEAD DELETED FLAG X AT ENDORSEMENT *----------------------------------------------*/ switch (polhData.POLH_TXN_STATE) { case "E": polhData.INS_RI_TTY_HEAD = (typeof (polhData.INS_RI_TTY_HEAD) === "string" ? JSON.parse(polhData.INS_RI_TTY_HEAD || "[]") : polhData.INS_RI_TTY_HEAD) || []; polhData.INS_RI_TTY_HEAD.ForEach(h => { if (h.TTH_STATUS === "D") { h.TTH_RISK_DELETED = "X"; h.TTH_TOTAL_PREM_FC = 0; h.TTH_TOTAL_PREM_BC = 0; h.TTH_RI_SI_FC = 0; h.TTH_RI_SI_BC = 0; h.TTH_RI_PREM_FC = 0; h.TTH_RI_PREM_BC = 0; h.TTH_ACC_SI_FC = 0; h.TTH_ACC_SI_BC = 0; h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.TTA_TTY_PREM_FC = 0; g.TTA_TTY_PREM_BC = 0; g.TTA_TTY_COMM_FC = 0; g.TTA_TTY_COMM_BC = 0; g.TTA_TTY_SI_FC = 0; g.TTA_TTY_SI_BC = 0; g.TTA_TTY_SI_FC = 0; g.TTA_TTY_SI_BC = 0; g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(m => { m.TTS_SHARE_PREM_FC = 0; m.TTS_SHARE_PREM_BC = 0; m.TTS_RI_COMM_FC = 0; m.TTS_RI_COMM_BC = 0; m.TTS_TAX_BC = 0; m.TTS_TAX_FC = 0; m.TTS_SHARE_SI_FC = 0; m.TTS_SHARE_SI_BC = 0; }); }); } }); break; } /*-------------------------------------------------- * SET RI COLS TO 0 AT ENDORSEMENT FULL CANCELATION *-------------------------------------------------*/ switch (polhData.POLH_TXN_STATE) { case "X": case "XS": polhData.MS_UDW_ENDORSEMENTS = (typeof (polhData.MS_UDW_ENDORSEMENTS) === "string" ? JSON.parse(polhData.MS_UDW_ENDORSEMENTS || "[]") : polhData.MS_UDW_ENDORSEMENTS) || []; let endorsementNotDeleted = polhData.MS_UDW_ENDORSEMENTS.Where(d => d.END_STATUS !== "D").ToList() || []; let endorsement = endorsementNotDeleted.Where(v => (parseInt(v.END_NO) == parseInt(polhData.POLH_END_NO)) && (parseInt(v.END_RNW_NO) == parseInt(polhData.POLH_RENEW_SER_NO))).FirstOrDefault() || {}; if (("FC").includes(endorsement.END_FLAG)) { polhData.INS_RI_TTY_HEAD = (typeof (polhData.INS_RI_TTY_HEAD) === "string" ? JSON.parse(polhData.INS_RI_TTY_HEAD || "[]") : polhData.INS_RI_TTY_HEAD) || []; polhData.INS_RI_TTY_HEAD.ForEach(h => { h.TTH_TOTAL_PREM_FC = 0; h.TTH_TOTAL_PREM_BC = 0; h.TTH_RI_SI_FC = 0; h.TTH_RI_SI_BC = 0; h.TTH_RI_PREM_FC = 0; h.TTH_RI_PREM_BC = 0; h.TTH_ACC_SI_FC = 0; h.TTH_ACC_SI_BC = 0; h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.TTA_TTY_PREM_FC = 0; g.TTA_TTY_PREM_BC = 0; g.TTA_TTY_COMM_FC = 0; g.TTA_TTY_COMM_BC = 0; g.TTA_TTY_SI_FC = 0; g.TTA_TTY_SI_BC = 0; g.TTA_TTY_SI_FC = 0; g.TTA_TTY_SI_BC = 0; g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(m => { m.TTS_SHARE_PREM_FC = 0; m.TTS_SHARE_PREM_BC = 0; m.TTS_RI_COMM_FC = 0; m.TTS_RI_COMM_BC = 0; m.TTS_TAX_BC = 0; m.TTS_TAX_FC = 0; m.TTS_SHARE_SI_FC = 0; m.TTS_SHARE_SI_BC = 0; }); }); }); } break; } if (u.getGlobal("claimsMigrationApprove")) { alert("claims migration saving..."); var result = await s.saveClaimsMigrationAsync(polhData); if (result.state) { u.modalInfo("Claims migration completed. Please continue with claims process"); u.form_reset("#polheaderForm"); u.loc_del("migratedPolicy"); u.setGlobal("claimsMigrationApprove", false); } else { u.modalInfo(result.message); } return; } //polhData.POLH_TXN_STATE = polhData.POLH_TXN_STATE === "XR" ? "S" : polhData.POLH_TXN_STATE; var responseData = await s.savePolicyAsync(polhData); if (responseData.state) { u.loc_del("migratedPolicy"); var processId = ""; if (polhData.POLH_STATUS == "U") { /*------------------------------------ * Create workflow process * creating precess based on Schema *-----------------------------------*/ processId = responseData.result.POLH_UID; //const flag = WorkflowConstants.Underwriting; //await u.createProcessInstance(u.getUserId(), u.getUserFullName(), processId, "Underwriting", flag); // get policy details of newly saved policy and add to the grid. let newProduct = { Id: responseData.result.POLH_SYS_ID, PolicyNumber: responseData.result.POLH_DISPLAY_NO, Currency: responseData.result.POLH_CURRENCY, SI: responseData.result.POLH_POL_SI_BC, Premium: responseData.result.POLH_POL_PREM_BC, Status: responseData.result.POLH_TXN_STATE, Product: polhData["COB_NAME"], ProductCode: polhData["POLH_CLASS_CODE"], SubClass: polhData["PDT_NAME"], CustomerId: polhData["POLH_CUST_CODE"], CustomerName: polhData["POLH_CUST_NAME"], StartDate: polhData["POLH_POL_START_DATE"], EndDate: polhData["POLH_POL_END_DATE"], SubClassCode: polhData["POLH_SUB_CLASS_CODE"], CreatedBy: polhData["POLH_CRTE_BY"], PassedEndorsement: false }; if (u.getGlobal("TransactionStatuses")().hasOwnProperty(newProduct.Status)) { newProduct = u.getGlobal("TransactionStatus")(newProduct); } let polsearchInfo = u.get_grid_data(u.getGlobal("udwPolSearchGrid")); polsearchInfo.unshift(newProduct); u.clear_grid_data(u.getGlobal("udwPolSearchGrid")); u.bigDataPopulate(u.getGlobal("udwPolSearchGrid"), polsearchInfo); } else if ($("#POLH_TXN_STATE").val() === "R" && polhData.POLH_STATUS !== "D") { const data = {}; data.userCode = u.getUserCode(); data.userName = u.getUserName(); data.processId = $("#POLH_UID").val(); data.command = "Endorse"; data.userId = u.getUserId(); data.comment = "RENEWAL"; data.flag = WorkflowConstants.Underwriting; data.startDate = polhData["POLH_POL_START_DATE"]; data.endDate = polhData["POLH_POL_END_DATE"]; data.isSystem = true; data.identityId = u.getUserId(); data.notify = "N"; //await u.executeCommand(data); } if (polhData.POLH_STATUS === "D") { const grid = u.getGlobal("udwPolSearchGrid"); const rowId = u.getSelRow(grid); u.delRow(grid, rowId); $("#PolicyModal").modal("hide"); } else { let product = u.getGlobal("getSelTransaction")(u.getGlobal("udwPolSearchGrid")); let polsearchInfo = u.get_grid_data(u.getGlobal("udwPolSearchGrid")); polsearchInfo.ForEach(x => { x.Status = (x.PolicyNumber == product.PolicyNumber) ? polhData.POLH_TXN_STATE : x.Status; x.PassedEndorsement = (x.PolicyNumber == product.PolicyNumber) ? (parseFloat(polhData.POLH_END_NO || 0) > 0) : x.PassedEndorsement; u.getGlobal("TransactionStatus")(x); }); u.clear_grid_data(u.getGlobal("udwPolSearchGrid")); u.bigDataPopulate(u.getGlobal("udwPolSearchGrid"), polsearchInfo); } //saving policy Id to used for execution of selected commands $("#POLH_UID").val(processId); /*----------------------------------- * POPULATE ALL REMAINING PRODUCT MODELS *---------------------------------*/ //u.getGlobal("PopulateProduct")(responseData.result); u.getGlobal("ProductPopulate")(responseData.result); if (responseData.result.UDW_POL_DOCUMENTATION) { u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION = responseData.result.UDW_POL_DOCUMENTATION; u.getGlobal("resetDocumentationView")("#PolDocumentationView"); u.getGlobal("renderDocumentations")("#PolDocumentationView", u.getGlobal("policyDocuments")); } u.fill_form(responseData.result, "#polheaderForm", false); $("#POLH_CRTE_BY").val(responseData.result.POLH_CRTE_BY); /*---------------------------------------------------- * Set txtPolNumber txtRefNumber to the policy number *---------------------------------------------------*/ responseData.result = responseData.result ? responseData.result : {}; $("#txtPolNumber").val(responseData.result.POLH_DISPLAY_NO || "POLICY NUMBER"); $("#txtRefNumber").val(responseData.result.POLH_QUT_SER_NO || "REF"); callback.call(this, responseData.result); u.growl_success(responseData.message); u.setGlobal("policyChanges", false); } else { u.growl_error(responseData.message); } }); }); u.setGlobal("searchFill", async function (policy, callback) { //rest forms u.form_reset("#polheaderForm"); u.form_reset("#coverForm"); u.form_reset("#motorRiskForm"); u.form_reset("#policyFilesForm"); u.form_reset("#driverDetailsForm"); $("#POLH_SUSPND_YN").val(" "); $("#POLH_CUST_AMLCHECK").val(" "); $("#POLH_MIGRATED").val(false); /** * set claims count badge, payment count badge, and endorsement count badge to 0 when resetting form * **/ $("#claimsCountBadge").html("0"); $("#paymentCountBadge").html("0"); $("#endorsementsCountBadge").html("0"); // Check if the 'POLH_MIGRATED' property exists before accessing it if (typeof policy?.POLH_MIGRATED !== 'undefined') { if (policy.POLH_MIGRATED) { $("#migrationInputs").show(0); } else { $("#migrationInputs").hide(0); } } else { // Handle the case when 'POLH_MIGRATED' is undefined (fallback behavior) // For example, hide the migrationInputs element if the property is missing $("#migrationInputs").hide(0); } policy.MS_UDW_CUSTOMERS = (typeof (policy.MS_UDW_CUSTOMERS) === "string" ? JSON.parse(policy.MS_UDW_CUSTOMERS || "{}") : policy.MS_UDW_CUSTOMERS) || {}; policy.POLH_CUST_AMLCHECK = policy.MS_UDW_CUSTOMERS.CUS_AML_YN || policy.POLH_CUST_AMLCHECK /*|| "N"*/; /*-------------------------- * Global Fill Policy Header *-------------------------*/ switch (policy.POLH_CLASS_CODE) { case "1000": //PA case "9000": //TRAVEL case "3000": //FIRE case "1200": //OILGAS case "5000": //MARINE if ((policy.POLH_SUB_CLASS_CODE == "5003") || (policy.POLH_SUB_CLASS_CODE == "5005")) { u.fill_form(policy, "#polheaderForm"); } else { u.fill_form(policy, "#polheaderForm", false); $("#POLH_BIZ_SOURCE").trigger("change"); u.getGlobal("InsView")(policy.POLH_INS_SOURCE); } break; default: u.fill_form(policy, "#polheaderForm"); break; }; /*-------------------------------- * CHECK FOR ANTI MONEY LAUNDERING *-------------------------------*/ $("#POLH_CUST_AMLCHECK").trigger("change"); /*-------------------------------- * CHECK FOR SALES REPRESENTATIVES *-------------------------------*/ $("#POLH_SAP_YN").trigger("change"); /*-------------------------==============------------- * Set txtPolNumber txtRefNumber to the policy number *---------------------------------------------------*/ $("#txtPolNumber").val(policy.POLH_DISPLAY_NO || "POLICY NUMBER"); $("#txtRefNumber").val(policy.POLH_QUT_SER_NO || "REF"); $("#POLH_CRTE_BY").val(policy.POLH_CRTE_BY); /*-------------------- * SUB PRODUCT DETAILS *-------------------*/ //let productDetails = u.getGlobal("productDetails") || {}; //productDetails = (typeof (productDetails) === "string" ? JSON.parse(productDetails || "{}") : productDetails) || {}; policy.MST_UWD_PRODUCT = (typeof (policy.MST_UWD_PRODUCT) === "string" ? JSON.parse(policy.MST_UWD_PRODUCT || "{}") : policy.MST_UWD_PRODUCT) || {}; if (Object.keys(policy.MST_UWD_PRODUCT).length) { u.setGlobal("productDetails", policy.MST_UWD_PRODUCT); } /*---------- * RI badge *--------*/ u.getGlobal("pendingRiCheck")(); //retrieve the treaty data and set it in a global variable var treatyResult = await s.getProductTreatyAsync($("#POLH_SUB_CLASS_CODE").val(), $("#POLH_POL_UW_YEAR").val(), $("#POLH_CURRENCY").val()); if (treatyResult.state && treatyResult.data) { u.setGlobal("treatyData", treatyResult.data); } else { u.growl_warning(`Treaty has not been setup for the product with code ${$("#POLH_SUB_CLASS_CODE").val()} for the underwriting year ${$("#POLH_POL_UW_YEAR").val()} and currency ${$("#POLH_CURRENCY").val()}`); } //check if the policy is in the endorsed state if (policy.POLH_TXN_STATE == "E") { await u.getGlobal("fetchPolicyHistory")(policy.POLH_SYS_ID, (parseFloat(policy.POLH_END_NO) - 1), (parseFloat(policy.POLH_RENEW_SER_NO))); } if (policy["POLH_TXN_STATE"] === "S" || policy["POLH_TXN_STATE"] === "R") { //SAVED var str = $("#POLH_DISPLAY_NO").val(); var polNo = $("#POLH_DISPLAY_NO").val(); var displayNo = `${str.substring(-1, polNo.length)}`; $("#POLH_DISPLAY_NO").val(displayNo); u.formReadWrite(); u.form_text_Black_color(); } if (policy["POLH_TXN_STATE"] === "X") { let cancelationHistory = await u.getGlobal("fetchPolicyHistory")(policy.POLH_SYS_ID, (parseFloat(policy.POLH_END_NO) - 1), (parseFloat(policy.POLH_RENEW_SER_NO))); u.setGlobal("cancelationHistory", cancelationHistory); u.form_text_Red_color(); } if (policy["POLH_TXN_STATE"] === "C") { var str = $("#POLH_DISPLAY_NO").val(); var polNo = $("#POLH_DISPLAY_NO").val(); var displayNo = `${str.substring(-1, polNo.length)}`; $("#POLH_DISPLAY_NO").val(displayNo); // disable inputs if confirmed //$(".can-disable").prop("disabled", true); //$(".form-control").prop("disabled", true); u.getGlobal("DisableFields")(true); // method can be used to disable inputs and certain buttons //confirmed u.form_text_Blue_color(); //u.form_readonly(); } if (policy["POLH_TXN_STATE"] === "P") { //approved var str = $("#POLH_DISPLAY_NO").val(); var polNo = $("#POLH_DISPLAY_NO").val(); var displayNo = `${str.substring(-1, polNo.length)}`; $("#POLH_DISPLAY_NO").val(displayNo); //u.form_readonly(); u.form_text_Green_color(); // disable inputs if approved //$(".can-disable").prop("disabled", true); //$(".form-control").prop("disabled", true); u.getGlobal("DisableFields")(true); // method can be used to disable inputs and certain buttons } if (policy["POLH_TXN_STATE"] === "E") { //endorsed var str = $("#POLH_DISPLAY_NO").val(); var polNo = $("#POLH_DISPLAY_NO").val(); var displayNo = `${str.substring(-1, polNo.length)}`; $("#POLH_DISPLAY_NO").val(displayNo); u.form_text_Gold_color(); u.formReadWrite(); } /*------------------------------ * Default Global GRID POPULATE *----------------------------*/ u.getGlobal("ProductPopulate")(policy); /*----------------------- * DOCUMENTATION SECTION *---------------------*/ if (policy.UDW_POL_DOCUMENTATION) { u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION = policy.UDW_POL_DOCUMENTATION; u.getGlobal("resetDocumentationView")("#PolDocumentationView"); u.getGlobal("renderDocumentations")("#PolDocumentationView", u.getGlobal("policyDocuments")); } /*------------- * CLAIMS INFO *-----------*/ if (policy.CLM_EST_HEAD) { u.clear_grid_data(u.getGlobal("udwClaimsGrid")); policy.CLM_EST_HEAD.ForEach(c => { c.CLM_EST_DTLS = JSON.stringify(c.CLM_EST_DTLS); }); u.grid_populate(u.getGlobal("udwClaimsGrid"), "", policy.CLM_EST_HEAD); } if (!u.field_empty("#POLH_SYS_ID")) { var polId = $("#POLH_SYS_ID").val(); s.getPolicyPayments(polId, function (response) { if (response.state) { u.clear_grid_data(u.getGlobal("udwPaymentGrid")); u.gridPopulate(u.getGlobal("udwPaymentGrid"), response.data); var paymentCount = u.get_grid_data(u.getGlobal("udwPaymentGrid"))?.length || 0; $("#paymentCountBadge").text(paymentCount); /** * get endorsement count and set it on the payment count badge * */ var endorsementCount = u.get_grid_data(u.getGlobal("udwEndsmntGrid"))?.length || 0; $("#endorsementsCountBadge").html(endorsementCount); } }); } u.setGlobal("customer", policy.MS_UDW_CUSTOMERS); callback.call(this, policy); u.setGlobal("policyChanges", false); }); u.setGlobal("max100", function (id) { if ($(`#${id}`).val() > 100) { u.growl_warning("Value cannot exceed 100"); $(`#${id}`).val(""); } }); var interval = null; u.setGlobal("setStorePolicyInterval", function () { interval = setInterval(function () { const policyData = u.parse_form("#polheaderForm"); policyData["INS_UWD_DRIVER_DETAILS"] = [u.parse_form("#driverDetailsForm")]; policyData["MS_UDW_ENDORSEMENTS"] = u.get_grid_data(u.getGlobal("udwEndsmntGrid")); policyData["INS_UWD_VEHICLE_RISK"] = u.get_grid_data(u.getGlobal("vehicleRiskGrid"), true); policyData["INS_UDW_HOME_OWNERS"] = u.get_grid_data(u.getGlobal("homeOwnersRiskGrid"), true); policyData["INS_UWD_FIRE_LOCRISK"] = u.get_grid_data(u.getGlobal("fireRiskGrid"), true); policyData["INS_UDW_TRAVEL_RISK"] = u.get_grid_data(u.getGlobal("travelRiskGrid"), true); policyData["INS_UDW_PERSONAL_ACCIDENT"] = u.get_grid_data(u.getGlobal("udwPAGrid"), true); policyData["INS_UDW_LIABILITY"] = u.get_grid_data(u.getGlobal("liabilityRiskGrid"), true); policyData["COVER_GRID"] = u.get_grid_data(u.getGlobal("udwCoverGrid"), true); //WILL LOOK INTO IT policyData["INS_UWD_INTERMEDIARY_COMM"] = u.get_grid_data(u.getGlobal("udwAgntCommGrid"), true); policyData["INS_UDW_POL_WORDING"] = u.get_grid_data(u.getGlobal("udwPolDocsGrid"), true); //policyData["MOTOR_RISK_FORM"] = u.parse_form("#motorRiskForm"); u.loc_set_json("storedPolicy", policyData); ////////console.log(policyData); }, 10000); }); u.setGlobal("storePolicy", function () { clearInterval(interval); const modalurl = `${window.location.href}#PolicyModal`; window.history.pushState({}, "", modalurl); u.getGlobal("setStorePolicyInterval")(); }); u.setGlobal("clearPolicy", function () { clearInterval(interval); u.loc_del("storedPolicy"); const url = window.location.href.split("#")[0]; window.history.pushState({}, "", url); }); u.setGlobal("pad", function (number, length) { let str = `${number}`; while (str.length < length) { str = `0${str}`; } return str; }); u.setGlobal("RiCalculations", function (riItems, treatyData, policy = null) { u.setGlobal("pendingRiCount", 0); //obtain the policy header object var polHead = policy == null ? u.parse_form("#polheaderForm") : policy; /*------------------------------------------ * CONDITIONAL PARSE OF REINSURANCE ITEMS *-----------------------------------------*/ riItems = (typeof (riItems) === "string" ? JSON.parse(riItems || "[]") : riItems) || []; riItems.ForEach(x => { x.RI_CURRENCY = $("#POLH_CURRENCY").val(); x.RI_CURRENCY_RATE = $("#POLH_CURRENCY_RATE").val(); }) //don't perform ri allocations if the policy is approved or confirmed if (policy == null) { if (polHead.POLH_TXN_STATE === "P" || polHead.POLH_TXN_STATE == "C") { return false; } } var coinsInvalid = false; //check if the insurance source of the policy is of co-insurance type var rate = 1; if (polHead.POLH_INS_SOURCE !== "DIR") { switch (polHead.POLH_INS_SOURCE) { case "COL": { const coins = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")); if (!coins.Any()) return false; const coinsLeader = coins[0]; if (coinsLeader) { rate = parseFloat(coinsLeader.CIL_OUR_PERC / 100); } else { coinsInvalid = true; } } break; case "COM": case "FIN": { const coins = u.get_grid_data(u.getGlobal("udwFacInwGrid")); if (!coins.Any()) return false; const coinsMember = coins[0]; if (coinsMember) { //rate = parseFloat(coinsMember.FINW_SHARE_PERC / 100); } else { coinsInvalid = true; } } break; } } if (coinsInvalid) { return u.growl_info("Co Insurance setup invalid, please check it for correct ReInsurance calculations."); } var riData = []; if (polHead.POLH_TXN_STATE === "E") { const oldPolicy = u.getGlobal("oldPolicy"); var oldRi = []; var siDiff = 0; var premiumDifference = 0; const newItems = []; const currentRiItems = u.get_grid_data(u.getGlobal("udwRIGrid")) || []; currentRiItems.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; }); }); window.jQuery.extend(true, oldRi, oldPolicy.INS_RI_TTY_HEAD); //add items that exist in the current ri to old ri data currentRiItems.ForEach(item => { if (!oldRi.Any(t => t.TTH_RISK_SYS_ID == item.TTH_RISK_SYS_ID)) { oldRi.Add(item); } }); riItems.ForEach(item => { //check for new items that have been added to the policy if (!oldRi.Any(t => t.TTH_RISK_SYS_ID == item.RISK_ID)) { newItems.Add(item); } var totalSiFc = parseFloat((parseFloat(rate * item.TOT_SI_FC)).toFixed(2)); var totalSiBc = parseFloat((parseFloat(rate * item.TOT_SI_BC)).toFixed(2)); var totalPremiumBc = parseFloat((parseFloat(rate * item.RI_PREM_BC)).toFixed(2)); var totalPremiumFc = parseFloat((parseFloat(rate * item.RI_PREM_FC)).toFixed(2)); //var riSiFc = (parseFloat(rate * item.TOT_SI_FC)).toFixed(2); //var riSiBc = (parseFloat(rate * item.TOT_SI_BC)).toFixed(2); var excessSiFc = (parseFloat(rate * item.TOT_SI_FC)).toFixed(2); var excessSiBc = (parseFloat(rate * item.TOT_SI_BC)).toFixed(2); var riskRi = oldRi.Where(t => t.TTH_RISK_SYS_ID == item.RISK_ID).ToArray(); //check if the endorsement has exceeded the historical total sum insured const historicalSumInsuredFc = riskRi.Sum(h => parseFloat(h.INS_RI_TTY_ALLOCATION.Sum(a => parseFloat(a.TTA_TTY_SI_FC || a.TTA_TTY_LIMIT_FC)))); const historicalSumInsuredBc = riskRi.Sum(h => parseFloat(h.INS_RI_TTY_ALLOCATION.Sum(a => parseFloat(a.TTA_TTY_SI_BC || a.TTA_TTY_LIMIT_BC)))); const isExcess = totalSiFc > historicalSumInsuredFc; const excessAmountFc = totalSiFc - historicalSumInsuredFc; const excessAmountBc = totalSiBc - historicalSumInsuredBc; riskRi.ForEach(header => { siDiff = totalSiFc - header.TTH_RI_SI_FC; premiumDifference = totalPremiumFc - header.TTH_RI_PREM_FC; header.TTH_POLH_END_NO = $("#POLH_END_NO").val(); header.TTH_POLH_RNW_NO = $("#POLH_RENEW_SER_NO").val(); header.TTH_INS_SRCE = $("#POLH_INS_SOURCE").val(); header.TTH_RI_SI_FC = totalSiFc; header.TTH_RI_SI_BC = totalSiBc; header.TTH_ACC_SI_FC = totalSiFc; header.TTH_ACC_SI_BC = totalSiBc; header.TTH_RI_PREM_FC = totalPremiumFc; header.TTH_RI_PREM_BC = totalPremiumBc; //determine if we have a forward or a reverse transaction //if ((siDiff > 0 || siDiff < 0) || (premiumDifference > 0 || premiumDifference < 0)) {//forward transaction // /*---------------------- // * apportion for treaty // *--------------------*/ // header.INS_RI_TTY_ALLOCATION.OrderBy(a => parseInt(a.TTA_SEQ_NO)).forEach(allocation => { // if (allocation.TTA_TTY_TYPE == "FX" || allocation.TTA_TTY_TYPE == "FO") return; // var limitFc = 0; // var limitBc = 0; // //check if limit is zero // if (!allocation.TTA_TTY_LIMIT_FC || allocation.TTA_TTY_LIMIT_FC == 0) { // //use allocation si as Limit // limitFc = allocation.TTA_TTY_SI_FC; // limitBc = allocation.TTA_TTY_SI_BC; // } else { // //use limit on allocation // limitFc = allocation.TTA_TTY_LIMIT_FC; // limitBc = allocation.TTA_TTY_LIMIT_BC; // } // if (excessSiFc > limitFc) { // allocation.TTA_TTY_SI_BC = parseFloat(limitBc).toFixed(2); // allocation.TTA_TTY_SI_FC = parseFloat(limitFc); // excessSiFc = (excessSiFc - limitFc).toFixed(2); // excessSiBc = (excessSiBc - limitBc).toFixed(2); // } else { // allocation.TTA_TTY_LIMIT_BC = parseFloat(limitBc).toFixed(2); // allocation.TTA_TTY_LIMIT_FC = parseFloat(limitFc); // allocation.TTA_TTY_SI_BC = excessSiBc; // allocation.TTA_TTY_SI_FC = excessSiFc; // excessSiFc = 0; // excessSiBc = 0; // } // allocation.TTA_ALLOC_PERC = (parseFloat(parseFloat(parseFloat(allocation.TTA_TTY_SI_FC) / parseFloat(totalSiFc)) * 100) || 0).toFixed(5); // allocation.TTA_TTY_PREM_BC = (parseFloat(parseFloat(totalPremiumBc) * parseFloat(parseFloat(allocation.TTA_ALLOC_PERC) / 100)) || 0).toFixed(2) || 0; // allocation.TTA_TTY_PREM_FC = (parseFloat(parseFloat(totalPremiumFc) * parseFloat(parseFloat(allocation.TTA_ALLOC_PERC) / 100)) || 0).toFixed(2) || 0; // //treaty share update // allocation.INS_RI_TTY_SHARE.forEach(share => { // const newAllocationPercentage = parseFloat((parseFloat(allocation.TTA_ALLOC_PERC) * parseFloat(parseFloat(share.TTS_SHARE_PERC) * 0.01)) || 0); // share.TTS_RI_COMM_BC = (totalPremiumBc * (newAllocationPercentage / 100) * parseFloat(parseFloat(share.TTS_RI_COMM_PERC) / 100)).toFixed(2); // share.TTS_RI_COMM_FC = (totalPremiumFc * (newAllocationPercentage / 100) * parseFloat(parseFloat(share.TTS_RI_COMM_PERC) / 100)).toFixed(2); // share.TTS_SHARE_PREM_BC = (totalPremiumBc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_PREM_FC = (totalPremiumFc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_SI_BC = (totalSiBc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_SI_FC = (totalSiFc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_ALLOC_PERC = newAllocationPercentage; // }); // }); // /*------------------------------------------- // * perform apportionment for FAC placements // * check if there is excess // *-----------------------------------------*/ // const excessPercentage = isExcess ? ((excessSiFc / totalSiFc) * 100).toFixed(5) : 0; // const outStandingSharePercentage = (100 - excessPercentage) - header.INS_RI_TTY_ALLOCATION.Sum(a => { // return a.TTA_TTY_TYPE == "FX" || a.TTA_TTY_TYPE == "FO" ? 0 : parseFloat(a.TTA_ALLOC_PERC); // }); // const totalFacOutSharePercentage = header.INS_RI_TTY_ALLOCATION.Sum(a => { // return a.TTA_TTY_TYPE == "FO" ? parseFloat(a.TTA_ALLOC_PERC) : 0; // }); // header.INS_RI_TTY_ALLOCATION.ForEach(fac => { // if (fac.TTA_TTY_TYPE != "FO") return; // fac.TTA_TTY_LIMIT_BC = fac.TTA_TTY_LIMIT_BC || fac.TTA_TTY_SI_BC; // fac.TTA_TTY_LIMIT_FC = fac.TTA_TTY_LIMIT_FC || fac.TTA_TTY_SI_FC; // //calculate proportion for current fac placement // var newSharePercentage = parseFloat((outStandingSharePercentage * (fac.TTA_ALLOC_PERC / totalFacOutSharePercentage)) || 0); // fac.TTA_ALLOC_PERC = newSharePercentage.toFixed(5); // fac.TTA_TTY_SI_FC = (totalSiFc * (newSharePercentage / 100)).toFixed(2); // fac.TTA_TTY_SI_BC = (totalSiBc * (newSharePercentage / 100)).toFixed(2); // fac.TTA_TTY_PREM_FC = (totalPremiumFc * (newSharePercentage / 100)).toFixed(2); // fac.TTA_TTY_PREM_BC = (totalPremiumBc * (newSharePercentage / 100)).toFixed(2); // fac.INS_RI_TTY_SHARE.forEach(share => { // const newAllocationPercentage = parseFloat((fac.TTA_ALLOC_PERC * (share.TTS_SHARE_PERC * 0.01)) || 0); // share.TTS_RI_COMM_BC = (totalPremiumBc * (newAllocationPercentage / 100) * (share.TTS_RI_COMM_PERC / 100)).toFixed(2); // share.TTS_RI_COMM_FC = (totalPremiumFc * (newAllocationPercentage / 100) * (share.TTS_RI_COMM_PERC / 100)).toFixed(2); // share.TTS_SHARE_PREM_BC = (totalPremiumBc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_PREM_FC = (totalPremiumFc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_SI_BC = (totalSiBc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_SHARE_SI_FC = (totalSiFc * (newAllocationPercentage / 100)).toFixed(2); // share.TTS_ALLOC_PERC = newAllocationPercentage.toFixed(5); // }); // }); // /*---------------------- // * apportion for excess // *---------------------*/ // header.INS_RI_TTY_ALLOCATION.Where(t => t.TTA_TTY_TYPE == "FX").ForEach(excess => { // if (isExcess) {//Bug: update excess percentage with remaining excess % // excess.TTA_ALLOC_PERC = excessPercentage; // //Update FAC Excess record // excess.TTA_TTY_SI_FC = excessSiFc || 0; // excess.TTA_TTY_SI_BC = excessSiBc || 0; // excess.TTA_TTY_PREM_BC = (totalPremiumBc * (excess.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; // excess.TTA_TTY_PREM_FC = (totalPremiumFc * (excess.TTA_ALLOC_PERC / 100)).toFixed(2) || 0; // } // }); //$scope.endorsementRiReCalc(header, totalSiBc, totalSiFc, totalPremiumBc, totalPremiumFc, riSiBc, riSiFc); // } }); }); //generate apportionment for new items and add to old ri newItems.ForEach(item => { //calculate ri on each location var locationRiAllocationData = u.locationRiAllocation(polHead, { "RI_SI_FC": rate * item.RI_SI_FC, "RI_SI_BC": rate * item.RI_SI_BC, "RI_PREM_BC": rate * item.RI_PREM_BC, "RI_PREM_FC": rate * item.RI_PREM_FC }, treatyData); //pending ri check if (locationRiAllocationData.Any(a => (a.TTA_TTY_TYPE == "FX" && a.TTA_ALLOC_PERC > 0) || ((a.TTA_TTY_TYPE == "SP" || a.TTA_TTY_TYPE == "QS") && a.TTA_CLOSE_FLAG == "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } oldRi.Add({ TTH_DESCRIPTION: item.RI_DESCRIPTION, TTH_CURRENCY: item.RI_CURRENCY || polHead.POLH_CURRENCY, TTH_CURRENCY_RATE: item.RI_CURRENCY_RATE || polHead.POLH_CURRENCY_RATE, TTH_ACC_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_ADJ_YN: item.RI_ADJ_YN || "N", TTH_CLASS_CODE: polHead.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: item.EML_PERC, TTH_FROM_DATE: item.FROM_DATE, TTH_INS_SRCE: polHead.POLH_INS_SOURCE, TTH_LOC_END_NO: polHead.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: polHead.POLH_END_NO || 0, TTH_POLH_RNW_NO: polHead.POLH_RENEW_SER_NO || 0, TTH_POLH_SYS_ID: polHead.POLH_SYS_ID, TTH_POLNUM: polHead.POLH_DISPLAY_NO, TTH_REF_ID: item.RISK_ID, TTH_RISK_END_NO: polHead.POLH_END_NO, TTH_RISK_SYS_ID: item.RISK_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (rate * item.RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (rate * item.RI_PREM_FC).toFixed(2), TTH_RI_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_RI_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_SC_CODE: polHead.POLH_SUB_CLASS_CODE, TTH_STATUS: "U", TTH_TOTAL_PREM_BC: (rate * item.TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (rate * item.TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (rate * item.TOT_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (rate * item.TOT_SI_FC).toFixed(2), TTH_TO_DATE: item.TO_DATE, TTH_UW_YEAR: item.UW_YEAR, INS_RI_TTY_ALLOCATION: JSON.stringify(locationRiAllocationData) }); }); u.getGlobal("riCheckDeletion")(riItems, oldRi.ToArray()); return oldRi; } else { riItems.ForEach(item => { //calculate ri on each location var locationRiAllocationData = u.locationRiAllocation(polHead, { "RI_SI_FC": rate * item.RI_SI_FC, "RI_SI_BC": rate * item.RI_SI_BC, "RI_PREM_BC": rate * item.RI_PREM_BC, "RI_PREM_FC": rate * item.RI_PREM_FC }, treatyData); //pending ri check if (locationRiAllocationData.Any(a => (a.TTA_TTY_TYPE == "FX" && a.TTA_ALLOC_PERC > 0) || ((a.TTA_TTY_TYPE == "SP" || a.TTA_TTY_TYPE == "QS") && a.TTA_CLOSE_FLAG == "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } riData.Add({ TTH_DESCRIPTION: item.RI_DESCRIPTION, TTH_CURRENCY: item.RI_CURRENCY || polHead.POLH_CURRENCY, TTH_CURRENCY_RATE: item.RI_CURRENCY_RATE || polHead.POLH_CURRENCY_RATE, TTH_ACC_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_ADJ_YN: item.RI_ADJ_YN || "N", TTH_CLASS_CODE: polHead.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: item.EML_PERC, TTH_FROM_DATE: item.FROM_DATE, TTH_INS_SRCE: polHead.POLH_INS_SOURCE, TTH_LOC_END_NO: polHead.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: polHead.POLH_END_NO || 0, TTH_POLH_RNW_NO: polHead.POLH_RENEW_SER_NO || 0, TTH_POLH_SYS_ID: polHead.POLH_SYS_ID, TTH_POLNUM: polHead.POLH_DISPLAY_NO, TTH_REF_ID: item.RISK_ID, TTH_RISK_END_NO: polHead.POLH_END_NO, TTH_RISK_SYS_ID: item.RISK_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (rate * item.RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (rate * item.RI_PREM_FC).toFixed(2), TTH_RI_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_RI_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_SC_CODE: polHead.POLH_SUB_CLASS_CODE, TTH_STATUS: "U", TTH_TOTAL_PREM_BC: (rate * item.TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (rate * item.TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (rate * item.TOT_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (rate * item.TOT_SI_FC).toFixed(2), TTH_TO_DATE: item.TO_DATE, TTH_UW_YEAR: item.UW_YEAR, INS_RI_TTY_ALLOCATION: JSON.stringify(locationRiAllocationData) }); }); const userCode = u.getUserCode(); if (polHead.POLH_STATUS == "A") { riData.ForEach(ri => { u.setGridColumn(u.getGlobal("udwRIGrid"), { "INS_RI_TTY_ALLOCATION": function (value, row) { if (row.TTH_RISK_SYS_ID == ri.TTH_RISK_SYS_ID) { ri.TTH_SYS_ID = row.TTH_SYS_ID; ri.TTH_STATUS = row.TTH_STATUS; ri.TTH_CRTE_BY = row.TTH_CRTE_BY; ri.TTH_ADJ_YN = row.TTH_ADJ_YN || "N"; ri.TTH_MOD_BY = userCode; //const allocations = u.parseJson([...value]); const allocations = u.parseJson(value); var newAllocations = JSON.parse(ri.INS_RI_TTY_ALLOCATION || "[]"); allocations.ForEach(aloc => { //find the allocation that needs to be updated newAllocations.ForEach(a => { if (a.TTA_TTY_CODE == aloc.TTA_TTY_CODE && a.TTA_TTY_TYPE == aloc.TTA_TTY_TYPE) { a.TTA_SYS_ID = aloc.TTA_SYS_ID; //a.TTA_STATUS = "A"; a.TTA_STATUS = row.TTH_STATUS; a.TTA_CRTE_BY = aloc.TTA_CRTE_BY; a.TTA_MOD_BY = userCode; var newShares = a.INS_RI_TTY_SHARE; //update share sys ids TTS_RI_COMP //console.log("aloc", aloc); aloc.INS_RI_TTY_SHARE = (typeof (aloc.INS_RI_TTY_SHARE) === "string" ? JSON.parse(aloc.INS_RI_TTY_SHARE || "[]") : aloc.INS_RI_TTY_SHARE) || []; aloc.INS_RI_TTY_SHARE.ForEach(s => { newShares.ForEach(share => { if (share.TTS_RI_COMP == s.TTS_RI_COMP) { share.TTS_SYS_ID = s.TTS_SYS_ID; share.TTS_TTA_SYS_ID = s.TTS_TTA_SYS_ID; //share.TTS_STATUS = "A"; share.TTS_STATUS = row.TTH_STATUS; share.TTS_CRTE_BY = s.TTS_CRTE_BY; share.TTS_MOD_BY = userCode; } }); }); a.INS_RI_TTY_SHARE = newShares.ToArray(); } }); }); ri.INS_RI_TTY_ALLOCATION = JSON.stringify(newAllocations); } } }); }); } u.getGlobal("riCheckDeletion")(riItems, riData); return riData.ToArray(); } }); /*------------------ * Save/Update Data *-----------------*/ u.setGlobal("getRIItems", async function (policy) { const treaty = await u.getGlobal("getTreaty")(policy); const locations = (typeof (policy.INS_UWD_FIRE_RISK) === "string" ? JSON.parse(policy.INS_UWD_FIRE_RISK || "[]") : policy.INS_UWD_FIRE_RISK) || []; const combined = locations.Where(loc => loc.PLOC_RIC_YN === "Y"); const distinctCombined = combined.DistinctBy(loc => loc.PLOC_RIC_CODE); const riData = []; //Perform RI allocations for none combined locations locations.Where(loc => loc.PLOC_RIC_YN === "N").ForEach(location => { riData.Add({ RI_SI_FC: location.PLOC_RI_SI_FC || 0, RI_SI_BC: location.PLOC_RI_SI_BC || 0, RI_PREM_BC: location.PLOC_RI_PREM_BC || 0, RI_PREM_FC: location.PLOC_RI_PREM_FC || 0, RISK_ID: location.PLOC_SYS_ID, EML_PERC: location.PLOC_EML || 0, FROM_DATE: location.PLOC_START_DATE, TO_DATE: location.PLOC_END_DATE, TOT_SI_FC: location.PLOC_SI_FC || 0, TOT_SI_BC: location.PLOC_SI_BC || 0, TOT_PREM_BC: location.PLOC_TOT_PREM_BC || 0, TOT_PREM_FC: location.PLOC_TOT_PREM_FC || 0, UW_YEAR: location.PLOC_UW_YEAR, STATUS: location.PLOC_STATUS }); }); //perform ri allocations for combined locations distinctCombined.ForEach(function (location) { const riSiFcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_RI_SI_FC)).toFixed(2); const riSiBcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_RI_SI_BC)).toFixed(2); const siFcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_SI_FC)).toFixed(2); const siBcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_SI_BC)).toFixed(2); const riPremFcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_RI_PREM_FC)).toFixed(2); const riPremBcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_RI_PREM_BC)).toFixed(2); const premFcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_TOT_PREM_BC)).toFixed(2); const premBcTotal = combined.Where(loc => loc.PLOC_RIC_CODE == location.PLOC_RIC_CODE).Sum(loc => parseFloat(loc.PLOC_TOT_PREM_BC)).toFixed(2); riData.Add({ RI_SI_FC: riSiFcTotal || 0, RI_SI_BC: riSiBcTotal || 0, RI_PREM_BC: riPremBcTotal || 0, RI_PREM_FC: riPremFcTotal || 0, RISK_ID: location.PLOC_SYS_ID, EML_PERC: location.PLOC_EML || 0, FROM_DATE: location.PLOC_START_DATE || 0, TO_DATE: location.PLOC_END_DATE || 0, TOT_SI_FC: siFcTotal || 0, TOT_SI_BC: siBcTotal || 0, TOT_PREM_BC: premBcTotal || 0, TOT_PREM_FC: premFcTotal || 0, UW_YEAR: location.PLOC_UW_YEAR }); }); u.getGlobal("getReInsurance")(riData, treaty); }); u.setGlobal("getTreaty", async function (policy) { const treatyData = u.getGlobal("treatyData"); // if theres treatydata and the data has the same uw year and currency and subclass code return that // treaty data otherwise fetch new treaty data with the parameters. if((treatyData && treatyData.TH_UWYR == policy.POLH_POL_UW_YEAR && treatyData?.MS_RI_GROUP_HEAD?.MS_RI_GROUP_DETL?.Any(x => x.GD_CUR_CODE == policy.POLH_CURRENCY) && treatyData?.MS_RI_PTTY_DETL?.Any(d => d.MS_RI_PTTY_SUBCLASS?.Any(x => x.TSC_SCLASS_CODE == policy.POLH_SUB_CLASS_CODE)) )) return treatyData; const treaty = await s.getProductTreatyAsync(policy.POLH_SUB_CLASS_CODE || $("#POLH_SUB_CLASS_CODE").val(), policy.POLH_POL_UW_YEAR || $("#POLH_POL_UW_YEAR").val(), policy.POLH_CURRENCY || $("#POLH_CURRENCY").val()); if (treaty.state && treaty.data) { u.setGlobal("treatyData", treaty.data); return treaty.data; } else { u.growl_error("Treaty not setup for the current underwriting year."); return null; } }); u.setGlobal("getReInsurance", function (riItems, treatyData) { u.setGlobal("pendingRiCount", 0); const polHead = u.parse_form("#polheaderForm"); /*--------------------------------------------------------------------- * Don't perform RI allocations if the policy is Approved or Confirmed *-------------------------------------------------------------------*/ if (polHead.POLH_TXN_STATE == "P" || polHead.POLH_TXN_STATE == "C") { return false; } var coinsInvalid = false; var rate = 1; if (polHead.POLH_INS_SOURCE != "DIR") { switch (polHead.POLH_INS_SOURCE) { case "COL": var coinsLeader = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")).Where(l => l.CIL_COMP_CODE == u.getUserCompanyCode()).FirstOrDefault(); if (coinsLeader) { rate = coinsLeader.CIL_OUR_PERC / 100; } else { coinsInvalid = true; } break; case "COM": case "FIN": var coinsMember = u.get_grid_data(u.getGlobal("udwFacInwGrid")).Where(m => m.FINW_CEDANT_CODE == u.getUserCompanyCode()).FirstOrDefault(); if (coinsMember) { rate = coinsMember.FINW_SHARE_PERC / 100; } else { coinsInvalid = true; } break; default: } } if (coinsInvalid) { return u.growl_info("CoInsurance setup invalid, please check it for correct ReInsurance calculations."); } var riData = []; if (polHead.POLH_TXN_STATE === "E") { const oldPolicy = u.getGlobal("oldPolicy"); var oldRi = oldPolicy.INS_RI_TTY_HEAD; var siDiff = 0; var premDiff = 0; let ReInsuranceList = []; riItems.ForEach(i => { var totalSiFc = rate * i.TOT_SI_FC; var totalSiBc = rate * i.TOT_SI_BC; var totalPremBc = rate * i.RI_PREM_BC; var totalPremFc = rate * i.RI_PREM_FC; var riSiFc = rate * i.TOT_SI_FC; var riSiBc = rate * i.TOT_SI_BC; if (i.STATUS !== "U") { oldRi = (typeof (oldRi) === "string" ? JSON.parse(oldRi || "[]") : oldRi) || []; oldRi.Where(t => t.TTH_RISK_SYS_ID == i.RISK_ID).ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; }); siDiff = totalSiFc - h.TTH_RI_SI_FC; premDiff = totalPremFc - h.TTH_RI_PREM_FC; h.TTH_POLH_END_NO = $("#POLH_END_NO").val(); h.TTH_POLH_RNW_NO = $("#POLH_RENEW_SER_NO").val(); //////console.log(siDiff, premDiff, totalSiFc, h.TTH_RI_SI_FC); //determine if we have a forward or a reverse transaction if ((siDiff > 0 || siDiff < 0) || (premDiff > 0 || premDiff < 0)) { //forward transaction //////console.log(h, totalSiBc); let ri = $scope.endorsementRiReCalcNew(h, totalSiBc, totalSiFc, totalPremBc, totalPremFc, riSiBc, riSiFc) || {}; ReInsuranceList.Add(ri); } }); }; if (i.STATUS === "U") { if (treatyData !== null) { //calculate ri on each location //--------------------------------------------------------------- var locationRiAllocationData = u.locationRiAllocation(polHead, { "RI_SI_FC": rate * i.RI_SI_FC, "RI_SI_BC": rate * i.RI_SI_BC, "RI_PREM_BC": rate * i.RI_PREM_BC, "RI_PREM_FC": rate * i.RI_PREM_FC, "RI_STATUS": i.STATUS }, treatyData) || []; //--------------------------------------------------------------- //pending ri check if (locationRiAllocationData.Any(a => (a.TTA_TTY_TYPE === "FX" && a.TTA_ALLOC_PERC > 0) || (a.TTA_TTY_TYPE === "SP" || a.TTA_TTY_TYPE === "QS" && a.TTA_CLOSE_FLAG === "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } ReInsuranceList.Add({ TTH_ACC_SI_BC: (rate * i.RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (rate * i.RI_SI_FC).toFixed(2), TTH_ADJ_YN: "", TTH_CLASS_CODE: polHead.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: i.EML_PERC, TTH_FROM_DATE: i.FROM_DATE, TTH_INS_SRCE: polHead.POLH_INS_SOURCE, TTH_LOC_END_NO: polHead.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: polHead.POLH_END_NO || 0, TTH_POLH_SYS_ID: polHead.POLH_SYS_ID, TTH_POLNUM: polHead.POLH_DISPLAY_NO, TTH_REF_ID: i.RISK_ID, TTH_RISK_END_NO: polHead.POLH_END_NO, TTH_RISK_SYS_ID: i.RISK_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (rate * i.RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (rate * i.RI_PREM_FC).toFixed(2), TTH_RI_SI_BC: (rate * i.RI_SI_BC).toFixed(2), TTH_RI_SI_FC: (rate * i.RI_SI_FC).toFixed(2), TTH_SC_CODE: polHead.POLH_SUB_CLASS_CODE, TTH_STATUS: i.STATUS || "U", TTH_TOTAL_PREM_BC: (rate * i.TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (rate * i.TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (rate * i.TOT_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (rate * i.TOT_SI_FC).toFixed(2), TTH_TO_DATE: i.TO_DATE, TTH_UW_YEAR: i.UW_YEAR, INS_RI_TTY_ALLOCATION: locationRiAllocationData }); } } }); //oldRi = ReInsuranceList; //u.clear_grid_data(u.getGlobal("udwRIGrid")); //u.gridPopulate(u.getGlobal("udwRIGrid"), ReInsuranceList.ToArray()); //////console.log(ReInsuranceList, oldPolicy); return ReInsuranceList; } else { riItems.ForEach(item => { if (treatyData !== null) { //calculate ri on each location //--------------------------------------------------------------- var locationRiAllocationData = u.locationRiAllocation(polHead, { "RI_SI_FC": rate * item.RI_SI_FC, "RI_SI_BC": rate * item.RI_SI_BC, "RI_PREM_BC": rate * item.RI_PREM_BC, "RI_PREM_FC": rate * item.RI_PREM_FC, "RI_STATUS": item.STATUS }, treatyData) || []; //--------------------------------------------------------------- //pending ri check if (locationRiAllocationData.Any(a => (a.TTA_TTY_TYPE === "FX" && a.TTA_ALLOC_PERC > 0) || (a.TTA_TTY_TYPE === "SP" || a.TTA_TTY_TYPE === "QS" && a.TTA_CLOSE_FLAG === "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } riData.Add({ TTH_ACC_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_ADJ_YN: "", TTH_CLASS_CODE: polHead.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: item.EML_PERC, TTH_FROM_DATE: item.FROM_DATE, TTH_INS_SRCE: polHead.POLH_INS_SOURCE, TTH_LOC_END_NO: polHead.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: polHead.POLH_END_NO || 0, TTH_POLH_SYS_ID: polHead.POLH_SYS_ID, TTH_POLNUM: polHead.POLH_DISPLAY_NO, TTH_REF_ID: item.RISK_ID, TTH_RISK_END_NO: polHead.POLH_END_NO, TTH_RISK_SYS_ID: item.RISK_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (rate * item.RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (rate * item.RI_PREM_FC).toFixed(2), TTH_RI_SI_BC: (rate * item.RI_SI_BC).toFixed(2), TTH_RI_SI_FC: (rate * item.RI_SI_FC).toFixed(2), TTH_SC_CODE: polHead.POLH_SUB_CLASS_CODE, TTH_STATUS: item.STATUS || "U", TTH_TOTAL_PREM_BC: (rate * item.TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (rate * item.TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (rate * item.TOT_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (rate * item.TOT_SI_FC).toFixed(2), TTH_TO_DATE: item.TO_DATE, TTH_UW_YEAR: item.UW_YEAR, INS_RI_TTY_ALLOCATION: JSON.stringify(locationRiAllocationData) }); } }); if (polHead.POLH_STATUS == "A") { riData.ForEach(ri => { u.setGridColumn(u.getGlobal("udwRIGrid"), { "INS_RI_TTY_ALLOCATION": function (value, row) { if (row.TTH_RISK_SYS_ID == ri.TTH_RISK_SYS_ID) { ri.TTH_SYS_ID = row.TTH_SYS_ID; ri.TTH_STATUS = row.TTH_STATUS; const allocations = (typeof (value) === "string" ? JSON.parse(value) : value) || []; var newAllocations = (typeof (ri.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(ri.INS_RI_TTY_ALLOCATION || "[]") : ri.INS_RI_TTY_ALLOCATION) || []; allocations.ForEach(aloc => { //find the allocation that needs to be updated aloc.INS_RI_TTY_SHARE = (typeof (aloc.INS_RI_TTY_SHARE) === "string" ? JSON.parse(aloc.INS_RI_TTY_SHARE) : aloc.INS_RI_TTY_SHARE) || []; newAllocations.ForEach(a => { if ((a.TTA_TTY_CODE == aloc.TTA_TTY_CODE) && (a.TTA_TTY_TYPE == aloc.TTA_TTY_TYPE)) { a.TTA_SYS_ID = aloc.TTA_SYS_ID; //a.TTA_STATUS = "A"; a.TTA_STATUS = aloc.TTA_STATUS; var newShares = a.INS_RI_TTY_SHARE; //update share sys ids TTS_RI_COMP //////console.log(aloc); aloc.INS_RI_TTY_SHARE.ForEach(s => { newShares.ForEach(share => { if (share.TTS_RI_COMP === s.TTS_RI_COMP) { share.TTS_SYS_ID = s.TTS_SYS_ID; share.TTS_TTA_SYS_ID = s.TTS_TTA_SYS_ID; //////console.log(s.TTS_STATUS); share.TTS_STATUS = s.TTS_STATUS; //share.TTS_STATUS = "A"; } }); }); a.INS_RI_TTY_SHARE = newShares.ToArray(); } }); ri.INS_RI_TTY_ALLOCATION = newAllocations.ToArray(); //////console.log(newAllocations); }); } } }); }); } u.clear_grid_data(u.getGlobal("udwRIGrid")); u.gridPopulate(u.getGlobal("udwRIGrid"), riData.ToArray()); } }); u.setGlobal("GetCommission", function (com) { const product = u.parse_form("#polheaderForm") || {}; //console.log(product); let rate = parseFloat($("#POLH_CURRENCY_RATE").val() || 0).toFixed(2) || 0; let commission = (typeof (com) === "string" ? JSON.parse(com || "[]") : com) || []; commission.ForEach(x => { x.CMM_CRTE_BY = u.getUserCode(); x.CMM_CRTE_DATE = u.get_date(); x.CMM_POL_SYS_ID = $("#POLH_SYS_ID").val(); x.CMM_END_NO = $("#POLH_END_NO").val(); x.CMM_COB_CODE = $("#POLH_CLASS_CODE").val(); x.CMM_OFFICE = $("#POLH_OFF_CODE").val(); x.CMM_RNW_NO = $("#POLH_RENEW_SER_NO").val(); x.CMM_PREM_AMT_FC = parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0) - parseFloat(product.POLH_ADDON_BENEFIT_FC || 0); x.CMM_PREM_AMT_BC = parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0) - parseFloat(product.POLH_ADDON_BENEFIT_BC || 0); x.CMM_COM_AMT_FC = parseFloat(parseFloat(x.CMM_PREM_AMT_FC || 0) * parseFloat(x.CMM_COM_PERC || 0) * 0.01).toFixed(2) || 0; x.CMM_COM_AMT_BC = parseFloat(parseFloat(x.CMM_PREM_AMT_BC || 0) * parseFloat(x.CMM_COM_PERC || 0) * 0.01).toFixed(2) || 0; }); return commission; }); u.setGlobal("Commission", function (policy) { let product = (typeof (policy) === "string" ? JSON.parse(policy || "{}") : policy) || {}; product.INS_UWD_INTERMEDIARY_COMM.ForEach(c => { c.CMM_PREM_AMT_FC = parseFloat(product.POLH_NET_PREM_FC || 0) || 0; c.CMM_PREM_AMT_BC = parseFloat(product.POLH_NET_PREM_BC || 0) || 0; c.CMM_COM_AMT_FC = parseFloat(c.CMM_PREM_AMT_FC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; c.CMM_COM_AMT_BC = parseFloat(c.CMM_PREM_AMT_BC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; c.CMM_END_NO = product.POLH_END_NO; c.CMM_RNW_NO = product.POLH_RENEW_SER_NO; }); product.POLH_POL_COMM_FC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Where(c => c.CMM_STATUS !== "D").Sum(y => parseFloat(y.CMM_COM_AMT_FC || 0))).toFixed(2) || 0; product.POLH_POL_COMM_BC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Where(c => c.CMM_STATUS !== "D").Sum(y => parseFloat(y.CMM_COM_AMT_BC || 0))).toFixed(2) || 0; return product; }); u.setGlobal("AllPolicyElement", function (flag) { $("#btn_remove_location_details").prop("disabled", flag); $("#btn_open_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", flag); $("#btn_risk_cover").prop("disabled", flag); u.getGlobal("GeneralElement")(flag); }); //Policy Modal u.setGlobal("PolicyElement", function (flag) { $("#btn_remove_location_details").prop("disabled", flag); $("#btn_open_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", !flag); }); //Location Modal u.setGlobal("LocationElement", function (flag) { $("#btn_add_location_details").prop("disabled", flag); $("#btn_update_location_details").prop("disabled", flag); $("#btn_Loc_Onclose").prop("disabled", flag); //btn_add_location, btn_edit_location, btn_remove_location_details, btn_open_location_interest }); //Interest Modal u.setGlobal("InterestElement", function (flag) { $("#btn_add_interest").prop("disabled", flag); $("#btn_update_interest").prop("disabled", flag); $("#btn_remove_interest").prop("disabled", flag); //$("#btn_open_interest_discloading").prop("disabled", flag); $("#btn_risk_cover").prop("disabled", !flag); }); //Cover Modal u.setGlobal("CoverElement", function (flag) { $("#btn_add_cover").prop("disabled", flag); $("#btn_update_cover").prop("disabled", !flag); $("#btn_remove_cover").prop("disabled", flag); $("#btn_cv_discloading").prop("disabled", flag); $("#RCOV_RATE").prop("disabled", flag); }); u.setGlobal("NonEndorseState", function (flag) { $("#btn_remove_location_details").prop("disabled", flag); $("#btn_open_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", flag); u.getGlobal("GeneralElement")(flag); $("#btn_add_cover").prop("disabled", flag); $("#btn_update_cover").prop("disabled", flag); $("#btn_remove_cover").prop("disabled", flag); $("#btn_cv_discloading").prop("disabled", flag); $("#RCOV_RATE").prop("disabled", flag); $("#btn_add_interest").prop("disabled", flag); $("#btn_update_interest").prop("disabled", flag); $("#btn_remove_interest").prop("disabled", flag); $("#btn_risk_cover").prop("disabled", flag); $("#btn_add_location_details").prop("disabled", flag); $("#btn_update_location_details").prop("disabled", flag); $("#btn_Loc_Onclose").prop("disabled", flag); $("#btn_open_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", flag); }); // Specifically For Fire u.setGlobal("GetFees", async function (fees) { const riskFees = await s.getRiskFeeAsync(fees) || []; riskFees.ForEach(x => { x.FIRE_FEE_CODE = x.PRF_FEE_CODE; x.FIRE_FEE_FC_AMOUNT = x.PRF_FEE_AMOUNT; x.FIRE_FEE_BC_AMOUNT = x.PRF_FEE_AMOUNT; x.FIRE_FEE_RK_NO = x.PRF_SYS_ID; x.FIRE_FEE_NAME = x.FEE_NAME; x.FIRE_FEE_RK_CODE = $("#FIRE_RISK_CODE").val(); x.FIRE_FEE_RK_SYS_ID = $("#FIRE_SYS_ID").val(); x.FIRE_FEE_CRTE_BY = u.getUserCode(); x.FIRE_FEE_CRTE_DATE = Date.now(); x.FIRE_FEE_STATUS = "U"; x.FIRE_FEE_END_NO = 0; }); return riskFees; }); //------------------------------------------------ u.setGlobal("GeneralElement", function (flag) { $("#btn_add_file").prop("disabled", flag); $("#btn_remove_file").prop("disabled", flag); $("#add_clause_setup").prop("disabled", flag); $("#remove_clause_setup").prop("disabled", flag); $("#btnProcessPolicy").prop("disabled", flag); $("#btn_Save").prop("disabled", flag); $("#btn_Reset").prop("disabled", flag); $("#txtSearch").prop("disabled", flag); }); u.setGlobal("EndorsementElement", function (flag) { $("#polheaderForm").find("input, select, textarea, .btn_lov").not(".readonly-proof").prop("disabled", false); $("#polheaderForm").find(".endorseAction").find("input, select, textarea, .btn_lov").not(".readonly-proof").prop("disabled", flag); }); // disable all fields u.setGlobal("DisableFields", function (flag) { $("input, select, textarea, .btn_lov").not(".noWriting").prop("disabled", flag); // $("#confirmationModal button").prop("disabled", false); // set buttons whose ids contains the following's disabled state to that of the flag.. $("button[id*='remove']").prop("disabled", flag); $("button[id*='add']").prop("disabled", flag); $("button[id*='update']").prop("disabled", flag); //$("button[id*='open']").prop("disabled", flag); //$("button[id*='edit']").prop("disabled", flag); //$("button[id*='cover']").prop("disabled", flag); $("#SelPolicyProcess").prop("disabled", false); }); //set fields which cannot be disable u.setGlobal("setFieldsCanBeDisabled", function () { $("body").find("input:disabled").addClass("noWriting"); // do not allow disabling of confirmation form.. $("#confirmationForm").find("input, select, button, textarea").addClass("noWriting"); }); //Fire Location Modal u.setGlobal("FireLocationElement", function (flag) { $("#btn_add_location").prop("disabled", flag); $("#btn_edit_location").prop("disabled", flag); $("#btn_remove_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", flag); }); //------------------------------------------------ u.setGlobal("LocationElement", function (flag) { $("#btn_add_location").prop("disabled", flag); $("#btn_edit_location").prop("disabled", flag); $("#btn_remove_location_details").prop("disabled", flag); $("#btn_open_location_interest").prop("disabled", flag); }); u.setGlobal("RawTravelCalculation1", function (product) { product.POLH_GROSS_PREM_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_RISK_PREM_FC || 0))).toFixed(2) || 0; product.POLH_GROSS_PREM_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_RISK_PREM_BC || 0))).toFixed(2) || 0; product.POLH_FEE_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(y => parseFloat(y.TRA_FEES_FC || 0)) || 0).toFixed(2) || 0; product.POLH_FEE_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(y => parseFloat(y.TRA_FEES_BC || 0)) || 0).toFixed(2) || 0; product.POLH_POL_DISC_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_DISC_FC || 0)) || 0).toFixed(2) || 0; product.POLH_POL_DISC_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_DISC_BC || 0)) || 0).toFixed(2) || 0; product.POLH_POL_LOAD_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_LOAD_FC || 0)) || 0).toFixed(2) || 0; product.POLH_POL_LOAD_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_LOAD_BC || 0)) || 0).toFixed(2) || 0; product.POLH_NET_PREM_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_NET_PREM_FC || 0))).toFixed(2) || 0; product.POLH_NET_PREM_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_NET_PREM_BC || 0))).toFixed(2) || 0; product.POLH_POL_PREM_FC = parseFloat(product.POLH_NET_PREM_FC || 0) /*+ parseFloat(product.POLH_FEE_FC || 0)*/; product.POLH_POL_PREM_BC = parseFloat(product.POLH_NET_PREM_BC || 0) /*+ parseFloat(product.POLH_FEE_BC || 0)*/; product.POLH_POL_SI_FC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_SI_FC || 0)) || 0).toFixed(2); product.POLH_POL_SI_BC = parseFloat(product.INS_UDW_TRAVEL_RISK.Where(d => d.TRA_STATUS !== "D").Sum(r => parseFloat(r.TRA_SI_BC || 0)) || 0).toFixed(2); switch (product.POLH_INS_SOURCE) { case "COL": product.INS_COINS_LEADER.ForEach(c => { c.INS_SOURCE = product.POLH_INS_SOURCE; c.CIL_POL_SI_FC = product.POLH_POL_SI_FC || 0; c.CIL_POL_SI_BC = product.POLH_POL_SI_BC || 0; c.CIL_POL_PREM_FC = product.POLH_POL_PREM_FC || 0; c.CIL_POL_PREM_BC = product.POLH_POL_PREM_BC || 0; u.getGlobal("InsuranceSourse")(c); }); product.COINS_LEADER_SINGLE = product.INS_COINS_LEADER.FirstOrDefault() || {}; product.POLH_COINS_SI_FC = parseFloat(parseFloat(product.COINS_LEADER_SINGLE.CIL_SHARE_SI_FC || 0) /*- parseFloat(product.COINS_LEADER_SINGLE.CIL_MEMBERS_SI_FC || 0)*/).toFixed(2); product.POLH_COINS_SI_BC = parseFloat(parseFloat(product.COINS_LEADER_SINGLE.CIL_SHARE_SI_BC || 0) /*- parseFloat(product.COINS_LEADER_SINGLE.CIL_MEMBERS_SI_BC || 0)*/).toFixed(2); product.POLH_COINS_PREM_FC = parseFloat(parseFloat(product.COINS_LEADER_SINGLE.CIL_SHARE_PREM_FC || 0) /*- parseFloat(product.COINS_LEADER_SINGLE.CIL_MEMBERS_PREM_FC || 0)*/).toFixed(2); product.POLH_COINS_PREM_BC = parseFloat(parseFloat(product.COINS_LEADER_SINGLE.CIL_SHARE_PREM_BC || 0) /*- parseFloat(product.COINS_LEADER_SINGLE.CIL_MEMBERS_PREM_BC || 0)*/).toFixed(2); break; case "FIN": case "COM": product.INS_RI_FAC_INWARD.ForEach(c => { c.INS_SOURCE = product.POLH_INS_SOURCE; c.FINW_SI_FC = product.POLH_POL_SI_FC || 0; c.FINW_SI_BC = product.POLH_POL_SI_BC || 0; c.FINW_PREM_FC = parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0); c.FINW_PREM_BC = parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0); u.getGlobal("InsuranceSourse")(c); }); product.POLH_COINS_SI_FC = parseFloat(product.INS_RI_FAC_INWARD.Where(d => d.FINW_STATUS !== "D").Sum(r => parseFloat(r.FINW_SI_FC || 0)) || 0).toFixed(2) || 0; product.POLH_COINS_SI_BC = parseFloat(product.INS_RI_FAC_INWARD.Where(d => d.FINW_STATUS !== "D").Sum(r => parseFloat(r.FINW_SI_BC || 0)) || 0).toFixed(2) || 0; product.POLH_COINS_PREM_FC = parseFloat(product.INS_RI_FAC_INWARD.Where(d => d.FINW_STATUS !== "D").Sum(r => parseFloat(r.FINW_PREM_FC || 0)) || 0).toFixed(2) || 0; product.POLH_COINS_PREM_BC = parseFloat(product.INS_RI_FAC_INWARD.Where(d => d.FINW_STATUS !== "D").Sum(r => parseFloat(r.FINW_PREM_BC || 0)) || 0).toFixed(2) || 0; break; default: product.POLH_COINS_SI_FC = 0; product.POLH_COINS_SI_BC = 0; product.POLH_COINS_PREM_FC = 0; product.POLH_COINS_PREM_BC = 0; break; } product.INS_UWD_INTERMEDIARY_COMM.ForEach(c => { c.CMM_PREM_AMT_FC = parseFloat(product.POLH_NET_PREM_FC || 0) || 0; c.CMM_PREM_AMT_BC = parseFloat(product.POLH_NET_PREM_BC || 0) || 0; c.CMM_COM_AMT_FC = parseFloat(c.CMM_PREM_AMT_FC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; c.CMM_COM_AMT_BC = parseFloat(c.CMM_PREM_AMT_BC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; }); product.POLH_POL_COMM_FC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Where(c => c.CMM_STATUS !== "D").Sum(y => parseFloat(y.CMM_COM_AMT_FC || 0))).toFixed(2) || 0; product.POLH_POL_COMM_BC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Where(c => c.CMM_STATUS !== "D").Sum(y => parseFloat(y.CMM_COM_AMT_BC || 0))).toFixed(2) || 0; return product; }); u.setGlobal("RawTravelPremium", function (product) { /*-------------------------------------- * SET ALL THE POLICY FEES STATUS TO D *-------------------------------------*/ product.INS_UDW_POL_FEES.Where(v => v.POL_FEE_STATUS === "A").ForEach(x => { x.POL_FEE_STATUS = "D"; x.POL_FEE_FC_AMOUNT = 0; x.POL_FEE_BC_AMOUNT = 0; }); product.PremiumSummary = []; product.DiscLoadSummary = []; product.FeeSummary = []; product.INS_UDW_TRAVEL_RISK = (typeof (product.INS_UDW_TRAVEL_RISK) === "string" ? JSON.parse(product.INS_UDW_TRAVEL_RISK || "[]") : product.INS_UDW_TRAVEL_RISK) || []; product.INS_UDW_TRAVEL_RISK.Where(g => g.TRA_STATUS !== "D").ForEach(z => { z.INS_UDW_TRAVEL_FEES = (typeof (z.INS_UDW_TRAVEL_FEES) === "string" ? JSON.parse(z.INS_UDW_TRAVEL_FEES || "[]") : z.INS_UDW_TRAVEL_FEES) || []; z.INS_UDW_TRAVEL_FEES.Where(c => c.TRA_FEE_STATUS !== "D").ForEach(v => { product.FeeSummary.Add(v); }); z.INS_UDW_RISK_DISCLOAD = (typeof (z.INS_UDW_RISK_DISCLOAD) === "string" ? JSON.parse(z.INS_UDW_RISK_DISCLOAD || "[]") : z.INS_UDW_RISK_DISCLOAD) || []; z.INS_UDW_RISK_DISCLOAD.Where(c => c.DL_STATUS !== "D").ForEach(v => { product.DiscLoadSummary.Add(v); }); }); product.PremiumSummary.Add({ CODE: "GRSPREM", DESCRIPTION: "Gross Premiums", FC_AMOUNT: product.POLH_GROSS_PREM_FC, BC_AMOUNT: product.POLH_GROSS_PREM_BC, TYPE: "P" }); product.DiscLoadSummary.GroupBy(e => e.DL_CODE).Select(b => { return { CODE: b.Key(), DESCRIPTION: b.source[0]["DL_NAME"], FC_AMOUNT: b.Where(c => c.DL_STATUS !== "D").Sum(y => parseFloat(y.DL_AMT_FC || 0)).toFixed(2), BC_AMOUNT: b.Where(c => c.DL_STATUS !== "D").Sum(y => parseFloat(y.DL_AMT_BC || 0)).toFixed(2), TYPE: b.source[0]["DL_TYPE"] }; }).ToArray().ForEach(h => product.PremiumSummary.Add(h)); product.INS_UDW_POL_FEES = !product.FeeSummary.Any() ? product.INS_UDW_POL_FEES.Where(x => x.POL_FEE_STATUS !== "U").ToList() : product.INS_UDW_POL_FEES; product.FeeSummary.GroupBy(e => e.TRA_FEE_CODE).Select(q => { return { POL_FEE_CODE: q.Key(), POL_FEE_NAME: q.source[0]["TRA_FEE_NAME"], POL_FEE_FC_AMOUNT: parseFloat(q.Where(c => c.TRA_FEE_STATUS !== "D").Sum(y => parseFloat(y.TRA_FEE_FC_AMOUNT || 0))).toFixed(2) || 0, POL_FEE_BC_AMOUNT: parseFloat(q.Where(c => c.TRA_FEE_STATUS !== "D").Sum(y => parseFloat(y.TRA_FEE_BC_AMOUNT || 0))).toFixed(2) || 0, POL_FEE_STATUS: q.Any(x => x.TRA_FEE_RK_SYS_ID === "A") ? "A" : "U", POL_FEE_CRTE_DATE: q.source[0]["TRA_FEE_CRTE_DATE"], POL_FEE_CRTE_BY: q.source[0]["TRA_FEE_CRTE_BY"], POL_FEE_MOD_BY: q.source[0]["TRA_FEE_MOD_BY"], POL_FEE_POL_SYS_ID: product.POLH_SYS_ID, POL_FEE_MOD_DATE: q.source[0]["TRA_FEE_MOD_DATE"], POL_FEE_FEE_END_NO: q.source[0]["TRA_FEE_END_NO"], POL_RNW_NO: q.source[0]["TRA_FEE_RNW_NO"] }; }).ToArray().ForEach(h => { product.INS_UDW_POL_FEES.Where(b => b.POL_FEE_CODE == h.POL_FEE_CODE).FirstOrDefault(v => { v.POL_FEE_NAME = h.POL_FEE_NAME; v.POL_FEE_FC_AMOUNT = h.POL_FEE_FC_AMOUNT; v.POL_FEE_BC_AMOUNT = h.POL_FEE_BC_AMOUNT; v.POL_FEE_STATUS = v.POL_FEE_SYS_ID ? "A" : h.POL_FEE_STATUS; }); if (!product.INS_UDW_POL_FEES.Where(b => b.POL_FEE_CODE == h.POL_FEE_CODE).ToList().Any()) { product.INS_UDW_POL_FEES.Add(h); } }); product.INS_UDW_POL_FEES.GroupBy(e => e.POL_FEE_CODE).Select(b => { return { CODE: b.Key(), DESCRIPTION: b.source[0]["POL_FEE_NAME"], FC_AMOUNT: b.Where(c => c.POL_FEE_STATUS !== "D").Sum(y => parseFloat(y.POL_FEE_FC_AMOUNT || 0)).toFixed(2), BC_AMOUNT: b.Where(c => c.POL_FEE_STATUS !== "D").Sum(y => parseFloat(y.POL_FEE_BC_AMOUNT || 0)).toFixed(2), TYPE: "F" }; }).ToArray().ForEach(h => product.PremiumSummary.Add(h)); product.PremiumSummary = product.PremiumSummary.GroupBy(x => x.CODE).Select(d => { return { CODE: d.Key(), DESCRIPTION: d.source[0]["DESCRIPTION"], FC_AMOUNT: d.Sum(y => parseFloat(y.FC_AMOUNT || 0)).toFixed(2), BC_AMOUNT: d.Sum(y => parseFloat(y.BC_AMOUNT || 0)).toFixed(2), TYPE: d.source[0]["TYPE"] }; }); product.PremiumSummary.Add({ CODE: "SI", DESCRIPTION: "Sum Issured", FC_AMOUNT: product.POLH_POL_SI_FC || 0, BC_AMOUNT: product.POLH_POL_SI_BC || 0, TYPE: "S" }); return product; }); u.setGlobal("EndorsedPremium", function (Product, endorsement) { /*----------------------- * Endorsement Properties *-----------------------*/ let PassedEndorsement = parseFloat(policy.POLH_END_NO || 0) > 0; let EndorsementNotDeleted = policy.MS_UDW_ENDORSEMENTS.Where(d => d.END_STATUS !== "D").ToList() || []; let Endorsement = EndorsementNotDeleted.Where(v => v.END_NO == EndorsementNotDeleted.Max(x => parseFloat(x.END_NO))).FirstOrDefault() || {}; let STATE = PassedEndorsement; $("#netCustomerFc").parent().parent().addClass(STATE ? "m-hide" : "").removeClass(STATE ? "" : "m-hide").find("#netCustomerFc").empty().append(` ${policy.POLH_CURRENCY || ""} ${parseFloat(policy.POLH_POL_PREM_FC || 0).toFixed(2)}`); $("#endPremSummary").removeClass(STATE ? "m-hide" : "").addClass(STATE ? "" : "m-hide").find("#endNetCustomerFc").empty().append(` ${policy.POLH_CURRENCY || ""} ${(parseFloat(Endorsement.END_PREM_DIFF_FC || 0) + parseFloat(Endorsement.END_FEE_FC || 0)).toFixed(2)}`); }); u.setGlobal("getRIItemsTravel", async function (policy) { let RI_DATA = []; policy.INS_UDW_TRAVEL_RISK = (typeof (policy.INS_UDW_TRAVEL_RISK) === "string" ? JSON.parse(policy.INS_UDW_TRAVEL_RISK || "[]") : policy.INS_UDW_TRAVEL_RISK) || []; policy.INS_UDW_TRAVEL_RISK.ForEach(x => { RI_DATA.Add({ RI_SI_FC: x.TRA_RI_SI_FC || 0, RI_SI_BC: x.TRA_RI_SI_BC || 0, RI_PREM_BC: x.TRA_RI_PREM_BC || 0, RI_PREM_FC: x.TRA_RI_PREM_FC || 0, RISK_ID: x.TRA_SYS_ID, EML_PERC: x.TRA_EML || 0, FROM_DATE: x.TRA_START_DATE || x.TRAH_START_DATE, TO_DATE: x.TRA_END_DATE || x.TRAH_END_DATE, TOT_SI_FC: x.TRA_SI_FC || 0, TOT_SI_BC: x.TRA_SI_BC || 0, TOT_PREM_BC: x.TRA_TOT_PREM_BC || 0, TOT_PREM_FC: x.TRA_TOT_PREM_FC || 0, UW_YEAR: x.TRA_UW_YEAR || x.TRAH_UW_YEAR || policy.POLH_POL_UW_YEAR, STATUS: x.TRA_STATUS }); }); const treaty = await u.getGlobal("getTreaty")(policy) /*|| {}*/; return u.getGlobal("getReInsurance")(RI_DATA, treaty); }); $scope.endorsementRiReCalcNew = function (t, totalSiBc, totalSiFc, totalPremBc, totalPremFc, riSiBc, riSiFc) { let siDiff = totalSiFc - t.TTH_RI_SI_FC; let premDiff = totalPremFc - t.TTH_RI_PREM_FC; totalSiBc = parseFloat(totalSiBc); totalSiFc = parseFloat(totalSiFc); totalPremBc = parseFloat(totalPremBc); totalPremFc = parseFloat(totalPremFc); riSiBc = parseFloat(riSiBc); riSiFc = parseFloat(riSiFc); //////console.log(totalSiBc, t.TTH_ACC_SI_BC); t.TTH_ACC_SI_BC = ((totalSiBc).toFixed(2) - t.TTH_ACC_SI_BC) || 0; t.TTH_ACC_SI_FC = ((totalSiFc).toFixed(2) - t.TTH_ACC_SI_FC) || 0; t.TTH_RI_SI_BC = ((totalSiBc).toFixed(2) - t.TTH_RI_SI_BC) || 0; t.TTH_RI_SI_FC = ((totalSiFc).toFixed(2) - t.TTH_RI_SI_FC) || 0; t.TTH_TOTAL_SI_BC = ((totalSiBc).toFixed(2) - t.TTH_TOTAL_SI_BC) || 0; t.TTH_TOTAL_SI_FC = ((totalSiFc).toFixed(2) - t.TTH_TOTAL_SI_FC) || 0; t.TTH_RI_PREM_BC = ((totalPremBc).toFixed(2) - t.TTH_RI_PREM_BC) || 0; t.TTH_RI_PREM_FC = ((totalPremFc).toFixed(2) - t.TTH_RI_PREM_FC) || 0; t.TTH_TOTAL_PREM_BC = ((totalPremBc).toFixed(2) - t.TTH_TOTAL_PREM_BC) || 0; t.TTH_TOTAL_PREM_FC = ((totalPremFc).toFixed(2) - t.TTH_TOTAL_PREM_FC) || 0; //check if the limit of the allocation exceeds zero //if the limit of the allocation exceeds zero then we can apportion with the limit //if the limit of the allocation does not exceed zero then we use the specified sum insured as the limit //if the sum insured of the allocation record is zero skip allocation //after all apportionments check if riSiFc is greater than zero. if riSiFc is greater than zero then set that amount as excess var processingSiFc = 0; var processingSiBc = 0; var limitFc; var limitBc; t.INS_RI_TTY_ALLOCATION = (typeof (t.INS_RI_TTY_ALLOCATION) === "string" ? u.parseJson(t.INS_RI_TTY_ALLOCATION || "[]") : t.INS_RI_TTY_ALLOCATION) || []; t.INS_RI_TTY_ALLOCATION.ForEach(a => { if (a.TTA_TTY_LIMIT_FC > 0) { //allocation limit is greater than zero limitFc = a.TTA_TTY_LIMIT_FC || 0; limitBc = a.TTA_TTY_LIMIT_BC || 0; } else { //allocation limit is less than zero if (a.TTA_TTY_SI_FC > 0) { //sum insured of allocation is more than zero limitFc = a.TTA_TTY_SI_FC; limitBc = a.TTA_TTY_SI_BC; } else { return false; } } if (limitFc > riSiFc) { //allocation absorbs all sum insured processingSiFc = parseFloat(riSiFc || 0); processingSiBc = parseFloat(riSiBc || 0); riSiFc = 0; riSiBc = 0; } else { processingSiFc = parseFloat(limitFc || 0); processingSiBc = parseFloat(limitBc || 0); riSiFc -= limitFc; riSiBc -= limitBc; } var allocRate = parseFloat(processingSiFc / totalSiFc) || 1; a.TTA_TTY_SI_BC = (parseFloat(totalSiBc * allocRate)).toFixed(2) || 0; a.TTA_TTY_SI_FC = (parseFloat(totalSiFc * allocRate)).toFixed(2) || 0; a.TTA_TTY_PREM_BC = (parseFloat(totalPremBc * allocRate) - parseFloat(a.TTA_TTY_PREM_BC)).toFixed(2) || 0; a.TTA_TTY_PREM_FC = (parseFloat(totalPremFc * allocRate) - parseFloat(a.TTA_TTY_PREM_FC)).toFixed(2) || 0; //////console.log(a, a.TTA_TTY_PREM_FC, processingSiFc, totalSiFc); //allocation share re apportionment a.INS_RI_TTY_SHARE = (typeof (a.INS_RI_TTY_SHARE) === "string" ? JSON.parse(a.INS_RI_TTY_SHARE || "[]") : a.INS_RI_TTY_SHARE) || []; a.INS_RI_TTY_SHARE.ForEach(share => { var propRate = parseFloat(share.TTS_ALLOC_PERC / a.TTA_ALLOC_PERC) || 0; var shareAllocPerc = parseFloat(propRate * allocRate) || 0; var newShareRate = parseFloat(shareAllocPerc || 0); share.TTS_SHARE_SI_BC = (parseFloat(totalSiBc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_SI_FC = (parseFloat(totalSiFc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_PREM_BC = (parseFloat(parseFloat(totalPremBc * newShareRate) - parseFloat(share.TTS_SHARE_PREM_BC)).toFixed(2)) || 0; share.TTS_SHARE_PREM_FC = ((parseFloat(totalPremFc * newShareRate) - parseFloat(share.TTS_SHARE_PREM_FC)).toFixed(2)) || 0; share.TTS_RI_COMM_BC = ((parseFloat(share.TTS_SHARE_PREM_BC || 0) * parseFloat(share.TTS_RI_COMM_PERC * 0.01)).toFixed(2)) || 0; share.TTS_RI_COMM_FC = (parseFloat(share.TTS_SHARE_PREM_FC || 0) * parseFloat(share.TTS_RI_COMM_PERC * 0.01)).toFixed(2) || 0; share.TTS_TAX_BC = (parseFloat(share.TTS_RI_COMM_BC) * (parseFloat(share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_TAX_FC = (parseFloat(share.TTS_RI_COMM_FC) * (parseFloat(share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_SHARE_PERC = (parseFloat(shareAllocPerc / allocRate) * 100).toFixed(5) || 0; share.TTS_ALLOC_PERC = (parseFloat(shareAllocPerc * 100)).toFixed(5) || 0; }); a.TTA_ALLOC_PERC = (allocRate * 100).toFixed(5) || 0; //a.INS_RI_TTY_SHARE = a.INS_RI_TTY_SHARE.ToJson(); }); //check for excess record if (riSiFc > 0) { //assign excess amount const excsAlloc = t.INS_RI_TTY_ALLOCATION.First(a => a.TTA_TTY_TYPE === "FX"); const allocRate = (riSiFc / totalSiFc) || 0; excsAlloc.TTA_TTY_SI_BC = ((totalSiBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_SI_FC = ((totalSiFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_BC = ((totalPremBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_FC = ((totalPremFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_ALLOC_PERC = (allocRate * 100).toFixed(5) || 0; } return t; }; /*------------------------- * Default Global Function *-----------------------*/ u.setGlobal("riCheckDeletion", function (risk, reInsurance) { risk = (typeof (risk) === "string" ? JSON.parse(risk || "[]") : risk) || []; reInsurance = (typeof (reInsurance) === "string" ? JSON.parse(reInsurance || "[]") : reInsurance.ToArray()) || []; reInsurance.ForEach(x => { if (x.TTH_STATUS !== "U") { x.TTH_STATUS = "D"; x.INS_RI_TTY_ALLOCATION = (typeof (x.INS_RI_TTY_ALLOCATION) == "string" ? JSON.parse(x.INS_RI_TTY_ALLOCATION || "[]") : x.INS_RI_TTY_ALLOCATION) || []; x.INS_RI_TTY_ALLOCATION.ForEach(z => { z.TTA_STATUS = x.TTH_STATUS; z.INS_RI_TTY_SHARE = (typeof (z.INS_RI_TTY_SHARE) == "string" ? JSON.parse(z.INS_RI_TTY_SHARE || "[]") : z.INS_RI_TTY_SHARE) || []; z.INS_RI_TTY_SHARE.ForEach(c => { c.TTS_STATUS = z.TTA_STATUS; }); }); } }); risk.ForEach(x => { let findRi = reInsurance.Where(b => b.TTH_RISK_SYS_ID == x.RISK_ID).FirstOrDefault(); if (findRi.TTH_STATUS !== "U") { findRi.TTH_STATUS = x.RI_STATUS; findRi.INS_RI_TTY_ALLOCATION = (typeof (findRi.INS_RI_TTY_ALLOCATION) == "string" ? JSON.parse(findRi.INS_RI_TTY_ALLOCATION || "[]") : findRi.INS_RI_TTY_ALLOCATION) || []; findRi.INS_RI_TTY_ALLOCATION.ForEach(z => { z.TTA_STATUS = findRi.TTH_STATUS; z.INS_RI_TTY_SHARE = (typeof (z.INS_RI_TTY_SHARE) == "string" ? JSON.parse(z.INS_RI_TTY_SHARE || "[]") : z.INS_RI_TTY_SHARE) || []; z.INS_RI_TTY_SHARE.ForEach(c => { c.TTS_STATUS = z.TTA_STATUS; }); }); } }); /*------------------------- * REMOVE IF NEW RISK ADDED *------------------------*/ let copyreInsurance = JSON.parse(JSON.stringify(reInsurance)) || []; copyreInsurance.ForEach(n => { let i = reInsurance.findIndex(x => (!x.TTH_SYS_ID && x.TTH_STATUS == "D") || (parseInt(x.TTH_POLH_END_NO || 0) !== parseInt(reInsurance.Max(x => x.TTH_POLH_END_NO) || 0) && x.TTH_STATUS == "D")); (i !== -1) ? reInsurance.splice(i, 1) : null; }); let check1 = reInsurance.findIndex(x => (parseInt(x.TTH_POLH_END_NO || 0) !== parseInt(reInsurance.Max(x => x.TTH_POLH_END_NO) || 0) && x.TTH_STATUS == "D")); //console.log("check1", check1); let index = reInsurance.findIndex(x => (!x.TTH_SYS_ID && x.TTH_STATUS == "D") || (parseInt(x.TTH_POLH_END_NO || 0) !== parseInt(reInsurance.Max(x => x.TTH_POLH_END_NO) || 0) && x.TTH_STATUS == "D")); //let index = parseInt(reInsurance.findIndex(x => (!x.TTH_SYS_ID && x.TTH_STATUS == "D"))) || -1; //(index !== -1) ? reInsurance.splice(index, 1) : null; //console.log("nerr----", reInsurance, index, index !== -1); //console.log("nerr----", reInsurance, index, index !== -1); }); u.setGlobal("productTerms", function () { let productDetails = u.getGlobal("productDetails") || {}; productDetails = (typeof (productDetails) === "string" ? JSON.parse(productDetails || "{}") : productDetails) || {}; let productYears = parseInt(productDetails.PDT_TERM || 1) || 1; return parseInt(productYears * 366); }); u.setGlobal("setTreatyEndorsementCloseFlag", function (product) { switch (product.POLH_TXN_STATE) { case "E": product.INS_RI_TTY_HEAD = (typeof (product.INS_RI_TTY_HEAD) === "string" ? JSON.parse(product.INS_RI_TTY_HEAD || "[]") : product.INS_RI_TTY_HEAD) || []; product.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.TTA_CLOSE_FLAG = "N"; g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(m => { m.TTS_CLOSE_FLAG = "N"; }); }); }); break; } }); u.setGlobal("setEndorsementNumber", function (product) { /*----------------- * PREMIUM REGISTER *-----------------*/ u.setGridColumn(u.getGlobal("udwPremRegGrid"), { "PR_END_NO": product.POLH_END_NO }); /*------- * WORDING *-------*/ product.INS_UDW_POL_WORDING.ForEach(x => { x.PW_PH_END_NO = product.POLH_END_NO; }); /*------ * FEES *------*/ product.INS_UDW_POL_FEES.ForEach(x => { x.POL_FEE_FEE_END_NO = product.POLH_END_NO; }); /*----------------------- * INTERMEDIARY COMMISSION *----------------------*/ product.INS_UWD_INTERMEDIARY_COMM.ForEach(x => { x.CMM_END_NO = product.POLH_END_NO; }); /*----------------------- * INTERMEDIARY COMMISSION *----------------------*/ product.INS_COINS_LEADER.ForEach(x => { x.CIL_POLH_END_NO = product.POLH_END_NO; }); /*----------------------- * REINSURANCE *-----------------------*/ product.INS_RI_TTY_HEAD.ForEach(h => { h.TTH_POLH_END_NO = product.POLH_END_NO; h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) == "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.TTA_POLH_END_NO = h.TTH_POLH_END_NO; g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) == "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(l => { l.TTS_END_NO = g.TTA_POLH_END_NO; }); }); }); /*----------------------------------------- * FACULCATIVE INWARDS & COINSURANCE MEMBER *-----------------------------------------*/ product.INS_RI_FAC_INWARD.ForEach(c => { c.FINW_POLH_END_NO = product.POLH_END_NO; c.INS_RI_FAC_INW_COMPANY = (typeof (c.INS_RI_FAC_INW_COMPANY) === "string" ? JSON.parse(c.INS_RI_FAC_INW_COMPANY || "[]") : c.INS_RI_FAC_INW_COMPANY) || []; c.INS_RI_FAC_INW_COMPANY.ForEach(v => { v.FINW_PAP_END_NO = c.FINW_POLH_END_NO; }); }); }); u.setGlobal("ProductPopulate", function (policy) { /*----- * FEES *-----*/ u.clear_grid_data(u.getGlobal("udwPolFeesGrid")); policy.INS_UDW_POL_FEES = (typeof (policy.INS_UDW_POL_FEES) === "string" ? JSON.parse(policy.INS_UDW_POL_FEES || "[]") : policy.INS_UDW_POL_FEES) || []; u.bigDataPopulate(u.getGlobal("udwPolFeesGrid"), policy.INS_UDW_POL_FEES); /*----------------- * AGENT COMMISSION *-----------------*/ u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); policy.INS_UWD_INTERMEDIARY_COMM = (typeof (policy.INS_UWD_INTERMEDIARY_COMM) === "string" ? JSON.parse(policy.INS_UWD_INTERMEDIARY_COMM || "[]") : policy.INS_UWD_INTERMEDIARY_COMM) || []; u.bigDataPopulate(u.getGlobal("udwAgntCommGrid"), policy.INS_UWD_INTERMEDIARY_COMM); /*---------- * DOCUMENTS *---------*/ u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); policy.INS_UDW_POL_WORDING = (typeof (policy.INS_UDW_POL_WORDING) === "string" ? JSON.parse(policy.INS_UDW_POL_WORDING || "[]") : policy.INS_UDW_POL_WORDING) || []; u.bigDataPopulate(u.getGlobal("udwPolDocsGrid"), policy.INS_UDW_POL_WORDING); /*---------------------- * CONDITIONS AND CLAUSES *----------------------*/ u.clear_grid_data(u.getGlobal("udwClausesGrid")); policy.INS_UDW_POL_COND_CLAUSES = (typeof (policy.INS_UDW_POL_COND_CLAUSES) === "string" ? JSON.parse(policy.INS_UDW_POL_COND_CLAUSES || "[]") : policy.INS_UDW_POL_COND_CLAUSES) || []; u.bigDataPopulate(u.getGlobal("udwClausesGrid"), policy.INS_UDW_POL_COND_CLAUSES); /*------------ * REINSURANCE *------------*/ u.clear_grid_data(u.getGlobal("udwRIGrid")); policy.INS_RI_TTY_HEAD = (typeof (policy.INS_RI_TTY_HEAD) === "string" ? JSON.parse(policy.INS_RI_TTY_HEAD || "[]") : policy.INS_RI_TTY_HEAD) || []; policy.INS_RI_TTY_HEAD.ForEach(c => { c.INS_RI_TTY_ALLOCATION = (typeof (c.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(c.INS_RI_TTY_ALLOCATION || "[]") : c.INS_RI_TTY_ALLOCATION) || []; }); u.bigDataPopulate(u.getGlobal("udwRIGrid"), policy.INS_RI_TTY_HEAD); // $("#riBadge").text(policy.INS_RI_TTY_HEAD.Where(x => x.TTH_STATUS !== "D").Count() || 0); /*----------------------------------------- * FACULCATIVE INWARDS & COINSURANCE MEMBER *-----------------------------------------*/ u.clear_grid_data(u.getGlobal("udwFacInwGrid")); policy.INS_RI_FAC_INWARD = (typeof (policy.INS_RI_FAC_INWARD) === "string" ? JSON.parse(policy.INS_RI_FAC_INWARD || "[]") : policy.INS_RI_FAC_INWARD) || []; policy.INS_RI_FAC_INWARD.ForEach(c => { c.INS_RI_FAC_INW_COMPANY = (typeof (c.INS_RI_FAC_INW_COMPANY) === "string" ? JSON.parse(c.INS_RI_FAC_INW_COMPANY || "[]") : c.INS_RI_FAC_INW_COMPANY) || []; }); u.bigDataPopulate(u.getGlobal("udwFacInwGrid"), policy.INS_RI_FAC_INWARD); policy.RI_FAC_INWARD_SINGLE = policy.INS_RI_FAC_INWARD.FirstOrDefault() || {}; u.fill_form({ FINW_SI_FC: policy.RI_FAC_INWARD_SINGLE.FINW_SI_FC, FINW_SI_BC: policy.RI_FAC_INWARD_SINGLE.FINW_SI_BC, FINW_PREM_FC: policy.RI_FAC_INWARD_SINGLE.FINW_PREM_FC, FINW_PREM_BC: policy.RI_FAC_INWARD_SINGLE.FINW_PREM_BC, } || {}, "#facInwardForm", false); /*------------ * ENDORSEMENT *------------*/ u.clear_grid_data(u.getGlobal("udwEndsmntGrid")); policy.MS_UDW_ENDORSEMENTS = (typeof (policy.MS_UDW_ENDORSEMENTS) === "string" ? JSON.parse(policy.MS_UDW_ENDORSEMENTS || "[]") : policy.MS_UDW_ENDORSEMENTS) || []; u.bigDataPopulate(u.getGlobal("udwEndsmntGrid"), policy.MS_UDW_ENDORSEMENTS); /*------------------- * COINSURANCE LEADER *------------------*/ u.clear_grid_data(u.getGlobal("udwCoInsLdrGrid")); policy.INS_COINS_LEADER = (typeof (policy.INS_COINS_LEADER) === "string" ? JSON.parse(policy.INS_COINS_LEADER || "[]") : policy.INS_COINS_LEADER) || []; u.bigDataPopulate(u.getGlobal("udwCoInsLdrGrid"), policy.INS_COINS_LEADER); u.form_reset("#CoinsLeaderForm"); u.fill_form(policy.INS_COINS_LEADER.FirstOrDefault() || {}, "#CoinsLeaderForm", false); /*-------- * CLAIMS *--------*/ u.clear_grid_data(u.getGlobal("udwClaimsGrid")); policy.CLM_EST_HEAD = (typeof (policy.CLM_EST_HEAD) === "string" ? JSON.parse(policy.CLM_EST_HEAD || "[]") : policy.CLM_EST_HEAD) || []; u.bigDataPopulate(u.getGlobal("udwClaimsGrid"), policy.CLM_EST_HEAD); //FACOUTWARDS //u.clear_grid_data(u.getGlobal("udwClausesGrid")); //policy.INS_RI_FAC_OUTWARD = (typeof (policy.INS_RI_FAC_OUTWARD) === "string" ? JSON.parse(policy.INS_RI_FAC_OUTWARD || "[]") : policy.INS_RI_FAC_OUTWARD) || []; //policy.INS_RI_FAC_OUTWARD.ForEach(w => { // u.getGlobal("udwClausesGrid").addRowData(undefined, w); //}); u.getGlobal("showRICount")(); }); u.setGlobal("SummaryPopulate", function (policy) { /*----------------------- * Endorsement Properties *-----------------------*/ let PassedEndorsement = parseFloat(policy.POLH_END_NO || 0) > 0; let EndorsementNotDeleted = policy.MS_UDW_ENDORSEMENTS.Where(d => d.END_STATUS !== "D").ToList() || []; //let Endorsement = EndorsementNotDeleted.Where(v => v.END_NO == EndorsementNotDeleted.Max(x => parseFloat(x.END_NO))).FirstOrDefault() || {}; let Endorsement = EndorsementNotDeleted.Where(v => (parseInt(v.END_NO) == parseInt(policy.POLH_END_NO)) && (parseInt(v.END_RNW_NO) == parseInt(policy.POLH_RENEW_SER_NO))).FirstOrDefault() || {}; u.clear_grid_data(u.getGlobal("udwPremSumGrid")); policy.PremiumSummary = (typeof (policy.PremiumSummary) === "string" ? JSON.parse(policy.PremiumSummary || "[]") : policy.PremiumSummary) || []; policy.PremiumSummary.ForEach(w => { u.getGlobal("udwPremSumGrid").addRowData(undefined, w); }); let STATE = PassedEndorsement && ("EX").includes(policy.POLH_TXN_STATE); // Function to format a numeric value as currency with thousand separators function formatAsCurrency(amount, currencyCode) { if (!isNaN(amount)) { return amount.toLocaleString(undefined, { /*style: "currency",*/ currency: currencyCode, minimumFractionDigits: 2, }); } else { return amount; } } //Changes made to the netCustomerFc $("#netCustomerFc") .parent() .parent() .addClass(STATE ? "m-hide" : "") .removeClass(STATE ? "" : "m-hide") .find("#netCustomerFc") .empty() .append(`${policy.POLH_CURRENCY || ""} ${formatAsCurrency(parseFloat(policy.POLH_POL_PREM_FC || 0), policy.POLH_CURRENCY || "")}`); /*$("#netCustomerFc").parent().parent().addClass(STATE ? "m-hide" : "").removeClass(STATE ? "" : "m-hide").find("#netCustomerFc").empty().append(` ${policy.POLH_CURRENCY || ""} ${parseFloat(policy.POLH_POL_PREM_FC *//*policy.POLH_NET_PREM_FC*//* || 0).toFixed(2)}`);*/ $("#endPremSummary").removeClass(STATE ? "m-hide" : "").addClass(STATE ? "" : "m-hide").find("#endNetCustomerFc").empty().append(` ${policy.POLH_CURRENCY || ""} ${(parseFloat(Endorsement.END_PREM_DIFF_FC || 0)).toFixed(2)}`); }); u.setGlobal("TransactionStatuseColor", function () { return [ { value: u.getGlobal("TransactionStatuses")()["P"], field: "StatusDescription", color: "green" }, { value: u.getGlobal("TransactionStatuses")()["D"], field: "StatusDescription", color: "green" }, { value: u.getGlobal("TransactionStatuses")()["C"], field: "StatusDescription", color: "blue" }, { value: u.getGlobal("TransactionStatuses")()["S"], field: "StatusDescription", color: "black" }, { value: u.getGlobal("TransactionStatuses")()["E"], field: "StatusDescription", color: "goldenrod" }, { value: u.getGlobal("TransactionStatuses")()["R"], field: "StatusDescription", color: "black" }, { value: u.getGlobal("TransactionStatuses")()["X"], field: "StatusDescription", color: "red" }, { value: u.getGlobal("TransactionStatuses")()["E01"], field: "StatusDescription", color: "goldenrod" }, { value: u.getGlobal("TransactionStatuses")()["C01"], field: "StatusDescription", color: "blue" } ]; }); u.setGlobal("TransactionStatuses", function () { return { "P": "Approved", "D": "Approved", "C": "Pending Approval", //"S": "Pending Confirmation", "S": "Pending Approval", "E": "Endorsed", "R": "Pending Renewal", "X": "Cancelled", "E01": "Endorsed Pending Approval", "C01": "Endorsed Pending Approval" }; }); u.setGlobal("TransactionColors", function () { return { "P": "green", "D": "green", "C": "blue", "S": "black", "E": "goldenrod", "R": "black", "X": "red", "E01": "goldenrod", "C01": "blue" }; }); u.setGlobal("getTransactionIndicator", function (data) { return { color: u.getGlobal("TransactionColors")()[data || "S"], statusDescription: u.getGlobal("TransactionStatuses")()[data || "S"] }; }); u.setGlobal("TransactionStatus", function (result) { let response = {}; switch (result.Status) { case "E": response = u.getGlobal("getTransactionIndicator")(result.PassedEndorsement ? "E01" : result.Status); result.StatusDescription = response.statusDescription; result.color = response.color; break; case "C": response = u.getGlobal("getTransactionIndicator")(result.PassedEndorsement ? "C01" : result.Status); result.StatusDescription = response.statusDescription; result.color = response.color; break; default: response = u.getGlobal("getTransactionIndicator")(result.Status); result.StatusDescription = response.statusDescription; result.color = response.color; break; } return result; }); u.setGlobal("SetTransactionStatus", function (status, grid) { ////console.log(status); const row_id = u.getSelRow(grid) || $("#grdSearch").find("tr:eq(1)").data("uid"); if (row_id) grid.jqGrid("setCell", row_id, "StatusDescription", status); }); u.setGlobal("getSelTransaction", function (grid) { const row_id = u.getSelRow(grid) || $("#grdSearch").find("tr:eq(1)").data("uid"); if (row_id) return u.getRow(row_id, grid) || {}; return {}; }); u.setGlobal("Control", function (result) { u.form_reset("#polheaderForm"); //-----Will take it to fire------ u.form_reset("#locationForm"); u.form_reset("#interestForm"); //------------------------------- u.form_reset("#policyFilesForm"); u.form_reset("#condtionClauseForm"); //COINSURANCE LEADER FORM u.form_reset("#CoinsLeaderForm"); u.form_reset("#CoInsuranceLeaderParticipantsForm"); //$scope.location_grid u.clear_grid_data(u.getGlobal("fireRiskGrid")); //$scope.riskFees_grid u.clear_grid_data(u.getGlobal("udwfireFeeGrid")); //$scope.interest_grid u.clear_grid_data(u.getGlobal("fireIntGrid")); //$scope.cover_grid u.clear_grid_data(u.getGlobal("udwCoverGrid")); //$scope.PremSummary_grid u.clear_grid_data(u.getGlobal("udwPremSumGrid")); //$scope.cliams_grid u.clear_grid_data(u.getGlobal("udwClaimsGrid")); //$scope.reinsurance_grid u.clear_grid_data(u.getGlobal("udwRIGrid")); //$scope.treatyApportionmentGrid u.clear_grid_data(u.getGlobal("udwTtyApporGrid")); //$scope.treatyShareGrid u.clear_grid_data(u.getGlobal("udwTtyShareGrid")); //$scope.polfees_grid u.clear_grid_data(u.getGlobal("udwPolFeesGrid")); //$scope.riskdiscload_grid u.clear_grid_data(u.getGlobal("udwRskDiscLoadGrid")); //$scope.prodRisks_grid u.clear_grid_data(u.getGlobal("udwSubClassGrid")); //$scope.polFileGrid u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); //$scope.endorsementGrid u.clear_grid_data(u.getGlobal("udwEndsmntGrid")); //$scope.grdCoinsLeader_grid u.clear_grid_data(u.getGlobal("udwCoInsLdrGrid")); //$scope.grdfacInward_grid u.clear_grid_data(u.getGlobal("udwFacInwGrid")); //$scope.interComm_grid u.clear_grid_data(u.getGlobal("udwAgntComsnGrid")); //$scope.intermCom_grid correct u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); u.clear_grid_data(u.getGlobal("udwCustSearchGrid")); switch (result.POLH_STATUS) { case "U": { $("#txtSearch").val(""); $("#riBadge").html(""); let STATE = ("EX").includes(result.POLH_TXN_STATE); $("#netCustomerFc").parent().parent().addClass(STATE ? "m-hide" : "").removeClass(STATE ? "" : "m-hide").find("#netCustomerFc").empty().append(` ${result.POLH_CURRENCY || ""} `); $("#endPremSummary").removeClass(STATE ? "m-hide" : "").addClass(STATE ? "" : "m-hide").find("#endNetCustomerFc").empty().append(` ${result.POLH_CURRENCY || ""} `); /*------------------------------------------------------- * Hides intermediary inputs, clears agent commission grid *--------------------------------------------------------*/ $(".option").find("label").removeClass(); $(".option").prop("hidden", true).find("input").prop("required", false); u.form_text_Black_color(); /*---------------------------------------- * Hides Insurance type button and inputs *----------------------------------------*/ u.getGlobal("InsView")(undefined); $("#aml_notification").hide(); } break; } u.fill_form(result, "#polheaderForm", false); $("#PolicyModal").modal(); }); u.setGlobal("GlobalCurrencyReCalculate", function (Product) { Product.INS_UDW_POL_FEES = (typeof (Product.INS_UDW_POL_FEES) === "string" ? JSON.parse(Product.INS_UDW_POL_FEES || "[]") : Product.INS_UDW_POL_FEES) || []; Product.INS_UDW_POL_FEES.ForEach(w => { w.POL_FEE_FC_AMOUNT = parseFloat(parseFloat(w.POL_FEE_BC_AMOUNT || 0) / Product.POLH_CURRENCY_RATE).toFixed(2) || 0; }); Product.INS_RI_FAC_INWARD = (typeof (Product.INS_RI_FAC_INWARD) === "string" ? JSON.parse(Product.INS_RI_FAC_INWARD || "[]") : Product.INS_RI_FAC_INWARD) || []; Product.INS_RI_FAC_INWARD.ForEach(w => { w.FINW_SI_BC = parseFloat(parseFloat(w.FINW_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FINW_PREM_BC = parseFloat(parseFloat(w.FINW_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FINW_ORIG_SI_BC = parseFloat(parseFloat(w.FINW_ORIG_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FINW_ORIG_PREM_BC = parseFloat(parseFloat(w.FINW_ORIG_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FINW_COMM_BC = parseFloat(parseFloat(w.FINW_COMM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; }); Product.INS_RI_FAC_OUTWARD = (typeof (Product.INS_RI_FAC_OUTWARD) === "string" ? JSON.parse(Product.INS_RI_FAC_OUTWARD || "[]") : Product.INS_RI_FAC_OUTWARD) || []; Product.INS_RI_FAC_OUTWARD.ForEach(w => { w.FOTW_SHARE_SI_BC = parseFloat(parseFloat(w.FOTW_SHARE_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FOTW_SHARE_PREM_BC = parseFloat(parseFloat(w.FOTW_SHARE_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FOTW_MEM_SI_BC = parseFloat(parseFloat(w.FOTW_MEM_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.FOTW_MEM_PREM_BC = parseFloat(parseFloat(w.FOTW_MEM_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; }); Product.INS_COINS_LEADER = (typeof (Product.INS_COINS_LEADER) === "string" ? JSON.parse(Product.INS_COINS_LEADER || "[]") : Product.INS_COINS_LEADER) || []; Product.INS_COINS_LEADER.ForEach(w => { w.CIL_SHARE_SI_BC = parseFloat(parseFloat(w.CIL_SHARE_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.CIL_SHARE_PREM_BC = parseFloat(parseFloat(w.CIL_SHARE_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.CIL_MEMBERS_SI_BC = parseFloat(parseFloat(w.CIL_MEMBERS_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.CIL_COMP_SI_BC = parseFloat(parseFloat(w.CIL_COMP_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.CIL_COMP_PREM_BC = parseFloat(parseFloat(w.CIL_COMP_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; w.CIL_COMP_COMM_BC = parseFloat(parseFloat(w.CIL_COMP_COMM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; }); //Product.MS_UDW_ENDORSEMENTS = (typeof (Product.MS_UDW_ENDORSEMENTS) === "string" ? JSON.parse(Product.MS_UDW_ENDORSEMENTS || "[]") : Product.MS_UDW_ENDORSEMENTS) || []; //Product.MS_UDW_ENDORSEMENTS.Where(x => x.END_TXN_STATE === "O").ForEach(w => { // w.END_PREM_DIFF_BC = parseFloat(parseFloat(w.END_PREM_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.END_SI_DIFF_BC = parseFloat(parseFloat(w.END_SI_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.END_FEE_DIFF_BC = parseFloat(parseFloat(w.END_FEE_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.END_DISC_DIFF_BC = parseFloat(parseFloat(w.END_DISC_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.END_LOAD_DIFF_BC = parseFloat(parseFloat(w.END_LOAD_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.END_COINS_DIFF_BC = parseFloat(parseFloat(w.END_COINS_DIFF_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; //}); //Product.INS_RI_TTY_HEAD = (typeof (Product.INS_RI_TTY_HEAD) === "string" ? JSON.parse(Product.INS_RI_TTY_HEAD || "[]") : Product.INS_RI_TTY_HEAD) || []; //Product.INS_RI_TTY_HEAD.ForEach(c => { // c.TTH_ACC_SI_BC = parseFloat(parseFloat(c.TTH_ACC_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // c.TTH_RI_PREM_BC = parseFloat(parseFloat(c.TTH_RI_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // c.TTH_RI_SI_BC = parseFloat(parseFloat(c.TTH_RI_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // c.TTH_TOTAL_PREM_BC = parseFloat(parseFloat(c.TTH_TOTAL_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // c.TTH_TOTAL_SI_BC = parseFloat(parseFloat(c.TTH_TOTAL_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // c.INS_RI_TTY_ALLOCATION = (typeof (c.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(c.INS_RI_TTY_ALLOCATION || "[]") : c.INS_RI_TTY_ALLOCATION) || []; // c.INS_RI_TTY_ALLOCATION.ForEach(p => { // p.TTA_TTY_LIMIT_BC = parseFloat(parseFloat(p.TTA_TTY_LIMIT_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // p.TTA_TTY_SI_BC = parseFloat(parseFloat(p.TTA_TTY_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // p.TTA_TTY_PREM_BC = parseFloat(parseFloat(p.TTA_TTY_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // p.TTA_TTY_COMM_BC = parseFloat(parseFloat(p.TTA_TTY_COMM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // p.INS_RI_TTY_SHARE = (typeof (p.INS_RI_TTY_SHARE) === "string" ? JSON.parse(p.INS_RI_TTY_SHARE || "[]") : p.INS_RI_TTY_SHARE) || []; // p.INS_RI_TTY_SHARE.ForEach(h => { // h.TTS_SHARE_SI_BC = parseFloat(parseFloat(h.TTS_SHARE_SI_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // h.TTS_SHARE_PREM_BC = parseFloat(parseFloat(h.TTS_SHARE_PREM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // h.TTS_RI_COMM_BC = parseFloat(parseFloat(h.TTS_RI_COMM_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // h.TTS_TAX_BC = parseFloat(parseFloat(h.TTS_TAX_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // }); // }); //}); //Product.PremiumSummary = (typeof (Product.PremiumSummary) === "string" ? JSON.parse(Product.PremiumSummary || "[]") : Product.PremiumSummary) || []; //Product.PremiumSummary.ForEach(w => { // w.BC_AMOUNT = parseFloat(parseFloat(w.FC_AMOUNT || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; //}); //Product.INS_UWD_INTERMEDIARY_COMM = (typeof (Product.INS_UWD_INTERMEDIARY_COMM) === "string" ? JSON.parse(Product.INS_UWD_INTERMEDIARY_COMM || "[]") : Product.INS_UWD_INTERMEDIARY_COMM) || []; //Product.INS_UWD_INTERMEDIARY_COMM.ForEach(w => { // w.CMM_PREM_AMT_BC = parseFloat(parseFloat(w.CMM_PREM_AMT_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; // w.CMM_COM_AMT_BC = parseFloat(parseFloat(w.CMM_COM_AMT_FC || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; //}); //Product.INS_UDW_POL_FEES = (typeof (Product.INS_UDW_POL_FEES) === "string" ? JSON.parse(Product.INS_UDW_POL_FEES || "[]") : Product.INS_UDW_POL_FEES) || []; //Product.INS_UDW_POL_FEES.ForEach(w => { // w.POL_FEE_BC_AMOUNT = parseFloat(parseFloat(w.POL_FEE_FC_AMOUNT || 0) * Product.POLH_CURRENCY_RATE).toFixed(2) || 0; //}); }); u.setGlobal("GetDefaultCovers", async function (covers) { const riskCovers = await s.getRiskDefaulCoversAsync(covers) || []; riskCovers.ForEach(x => { x.MS_UDW_COVERS = (typeof (x.MS_UDW_COVERS) === "string" ? JSON.parse(x.MS_UDW_COVERS || "{}") : x.MS_UDW_COVERS) || {}; x.RCOV_NAME = x.RCOV_NAME || x.MS_UDW_COVERS.CVR_NAME; x.RCOV_CRTE_BY = u.getUserCode(); }); return riskCovers; }); u.setGlobal("GetCovers", async function (covers) { let Covers = []; let riskCovers = {}; let InsuranceType = $("#POLH_INS_SOURCE").val(); switch (InsuranceType) { case "COL": case "DIR": riskCovers = { PRD_CODE: $("#POLH_SUB_CLASS_CODE").val(), CUR_RATE: parseFloat($("#POLH_CURRENCY_RATE").val()) }; Covers = await u.getGlobal("GetDefaultCovers")(riskCovers) || []; break; case "COM": riskCovers = { PRD_CODE: $("#POLH_SUB_CLASS_CODE").val(), CUR_RATE: parseFloat($("#POLH_CURRENCY_RATE").val()), RCOV_CODE: "60010" }; Covers = await s.getRiskCoverByProduct(riskCovers) || []; break; case "FIN": riskCovers = { PRD_CODE: $("#POLH_SUB_CLASS_CODE").val(), CUR_RATE: parseFloat($("#POLH_CURRENCY_RATE").val()), RCOV_CODE: "60008" }; Covers = await s.getRiskCoverByProduct(riskCovers) || []; break; }; return Covers; }); u.setGlobal("CoverDiscountLoading", function (discLoad, premium) { let Premium = parseFloat(premium || 0); let SameLevelAccumulator = 0; discLoad = (typeof (discLoad) === "string" ? JSON.parse(discLoad || "[]") : discLoad) || []; let discLoadFilter = discLoad.Where(c => c.DL_STATUS !== "D").OrderBy(v => parseFloat(v.DL_LEVEL)).ToList(); let discLoadFilterDeleted = discLoad.Where(c => c.DL_STATUS === "D").OrderBy(v => parseFloat(v.DL_LEVEL)).ToList(); discLoadFilter.ForEach((x, i) => { x.DL_PREM_FC = parseFloat(Premium || 0).toFixed(2); x.DL_PREM_BC = parseFloat(x.DL_PREM_FC * parseFloat($("#POLH_CURRENCY_RATE").val() || 1)).toFixed(2); x.DL_AMT_FC = parseFloat(parseFloat(x.DL_RATE * 0.01) * x.DL_PREM_FC).toFixed(2); x.DL_AMT_BC = parseFloat(parseFloat(x.DL_RATE * 0.01) * x.DL_PREM_BC).toFixed(2); let next = discLoadFilter[i + 1] || {}; if (next.DL_LEVEL != x.DL_LEVEL) { let Amount = x.DL_TYPE === "D" ? -parseFloat(x.DL_AMT_FC || 0) : parseFloat(x.DL_AMT_FC || 0); Premium += (parseFloat(Amount || 0) + parseFloat(SameLevelAccumulator || 0)); SameLevelAccumulator = 0; } else { let Accumulator = x.DL_TYPE === "D" ? -parseFloat(x.DL_AMT_FC || 0) : parseFloat(x.DL_AMT_FC || 0); SameLevelAccumulator += parseFloat(Accumulator || 0); }; }); discLoadFilter = [...discLoadFilter, ...discLoadFilterDeleted]; return discLoadFilter; }); u.setGlobal("RICode", function (productSummary, RIData) { let ri = JSON.parse(JSON.stringify(RIData || []) || "[]") || []; ri.ForEach(x => { let Orih = productSummary.INS_RI_TTY_HEAD ? (Object.assign({}, productSummary.INS_RI_TTY_HEAD.Where(b => b.TTH_RISK_SYS_ID == x.TTH_RISK_SYS_ID).FirstOrDefault()) || {}) : {}; x.TTH_SYS_ID = Orih.TTH_SYS_ID; x.TTH_POLH_SYS_ID = productSummary.POLH_SYS_ID; x.TTH_POLH_END_NO = productSummary.POLH_END_NO; x.TTH_POLH_RNW_NO = productSummary.POLH_RENEW_SER_NO; x.TTH_STATUS = Orih.TTH_STATUS; x.TTH_CRTE_BY = Orih.TTH_CRTE_BY; x.TTH_ADJ_YN = Orih.TTH_ADJ_YN || "N"; x.INS_RI_TTY_ALLOCATION = (typeof (x.INS_RI_TTY_ALLOCATION) == "string" ? JSON.parse(x.INS_RI_TTY_ALLOCATION || "[]") : x.INS_RI_TTY_ALLOCATION) || []; x.INS_RI_TTY_ALLOCATION.ForEach(z => { let OriA = Orih.INS_RI_TTY_ALLOCATION ? (Object.assign({}, Orih.INS_RI_TTY_ALLOCATION.Where(c => c.TTA_TTY_CODE == z.TTA_TTY_CODE).FirstOrDefault()) || {}) : {}; z.TTA_SYS_ID = OriA.TTA_SYS_ID; z.TTA_TTH_SYS_ID = x.TTH_SYS_ID; z.TTA_POLH_END_NO = x.TTH_POLH_END_NO; z.TTA_POLH_RNW_NO = x.TTH_POLH_RNW_NO; z.INS_RI_TTY_SHARE = (typeof (z.INS_RI_TTY_SHARE) == "string" ? JSON.parse(z.INS_RI_TTY_SHARE || "[]") : z.INS_RI_TTY_SHARE) || []; z.INS_RI_TTY_SHARE.ForEach(c => { let OriS = OriA.INS_RI_TTY_SHARE ? (Object.assign({}, OriA.INS_RI_TTY_SHARE.Where(u => u.TTS_RI_COMP == c.TTS_RI_COMP).FirstOrDefault()) || {}) : {}; c.TTS_SYS_ID = OriS.TTS_SYS_ID; c.TTS_TTA_SYS_ID = z.TTA_SYS_ID; c.TTS_END_NO = z.TTA_POLH_END_NO; c.TTS_RNW_NO = z.TTA_POLH_RNW_NO; }); }); }); return ri; }); u.setGlobal("policyHeadEndorsment", function (nPol, oPol, end) { end.END_PREM_DIFF_FC = parseFloat(parseFloat(nPol.POLH_NET_PREM_FC || 0) - parseFloat(oPol.POLH_NET_PREM_FC || 0) + parseFloat(end.END_FEE_FC || 0)).toFixed(2); end.END_PREM_DIFF_BC = parseFloat(parseFloat(nPol.POLH_NET_PREM_BC || 0) - parseFloat(oPol.POLH_NET_PREM_BC || 0) + parseFloat(end.END_FEE || 0)).toFixed(2); end.END_COMMSSN_DIFF_FC = parseFloat(parseFloat(nPol.POLH_POL_COMM_FC || 0) - parseFloat(oPol.POLH_POL_COMM_FC || 0)).toFixed(2); end.END_COMMSSN_DIFF_BC = parseFloat(parseFloat(nPol.POLH_POL_COMM_BC || 0) - parseFloat(oPol.POLH_POL_COMM_BC || 0)).toFixed(2); end.END_ADDON_BENEFIT_DIFF_FC = parseFloat(parseFloat(nPol.POLH_ADDON_BENEFIT_FC || 0) - parseFloat(oPol.POLH_ADDON_BENEFIT_FC || 0)).toFixed(2); end.END_ADDON_BENEFIT_DIFF_BC = parseFloat(parseFloat(nPol.POLH_ADDON_BENEFIT_BC || 0) - parseFloat(oPol.POLH_ADDON_BENEFIT_BC || 0)).toFixed(2); end.END_FEE_DIFF_FC = parseFloat(parseFloat(nPol.POLH_FEE_FC || 0) - parseFloat(oPol.POLH_FEE_FC || 0)).toFixed(2); end.END_FEE_DIFF_BC = parseFloat(parseFloat(nPol.POLH_FEE_BC || 0) - parseFloat(oPol.POLH_FEE_BC || 0)).toFixed(2); end.END_DISC_DIFF_FC = parseFloat(parseFloat(nPol.POLH_POL_DISC_FC || 0) - parseFloat(oPol.POLH_POL_DISC_FC || 0)).toFixed(2); end.END_DISC_DIFF_BC = parseFloat(parseFloat(nPol.POLH_POL_DISC_BC || 0) - parseFloat(oPol.POLH_POL_DISC_BC || 0)).toFixed(2); end.END_LOAD_DIFF_FC = parseFloat(parseFloat(nPol.POLH_POL_LOAD_FC || 0) - parseFloat(oPol.POLH_POL_LOAD_FC || 0)).toFixed(2); end.END_LOAD_DIFF_BC = parseFloat(parseFloat(nPol.POLH_POL_LOAD_BC || 0) - parseFloat(oPol.POLH_POL_LOAD_BC || 0)).toFixed(2); end.END_SI_DIFF_FC = parseFloat(parseFloat(nPol.POLH_POL_SI_FC || 0) - parseFloat(oPol.POLH_POL_SI_FC || 0)).toFixed(2); end.END_SI_DIFF_BC = parseFloat(parseFloat(nPol.POLH_POL_SI_BC || 0) - parseFloat(oPol.POLH_POL_SI_BC || 0)).toFixed(2); end.END_COINS_DIFF_FC = parseFloat(parseFloat(nPol.POLH_COINS_PREM_FC || 0) - parseFloat(oPol.POLH_COINS_PREM_FC || 0)).toFixed(2); end.END_COINS_DIFF_BC = parseFloat(parseFloat(nPol.POLH_COINS_PREM_BC || 0) - parseFloat(oPol.POLH_COINS_PREM_BC || 0)).toFixed(2); end.END_COINS_COMM_DIFF_FC = parseFloat(nPol.POLH_COINS_COM_FC || 0) - parseFloat(oPol.POLH_COINS_COM_FC || 0); end.END_COINS_COMM_DIFF_BC = parseFloat(nPol.POLH_COINS_COM_BC || 0) - parseFloat(oPol.POLH_COINS_COM_BC || 0); }); u.setGlobal("CoInsuranceLeaderEndorsment", function (nPol, oPol, endorsement) { endorsement.MS_COL_ENDORSEMENT = (typeof (endorsement.MS_COL_ENDORSEMENT) === "string" ? JSON.parse(endorsement.MS_COL_ENDORSEMENT || "[]") : endorsement.MS_COL_ENDORSEMENT) || []; endorsement.MS_COL_ENDORSEMENT = endorsement.MS_COL_ENDORSEMENT.Any() ? endorsement.MS_COL_ENDORSEMENT.filter(b => b.CED_SYS_ID) : []; endorsement.MS_COL_ENDORSEMENT.ForEach(x => { x.CED_STATUS = "X" }); nPol.INS_COINS_LEADER = (typeof (nPol.INS_COINS_LEADER) === "string" ? JSON.parse(nPol.INS_COINS_LEADER || "[]") : nPol.INS_COINS_LEADER) || []; oPol.INS_COINS_LEADER = (typeof (oPol.INS_COINS_LEADER) === "string" ? JSON.parse(oPol.INS_COINS_LEADER || "[]") : oPol.INS_COINS_LEADER) || []; let polCLeader = (nPol.INS_COINS_LEADER.Count() > oPol.INS_COINS_LEADER.Count() ? nPol.INS_COINS_LEADER : nPol.INS_COINS_LEADER) || []; polCLeader.ForEach(x => { let oloc = oPol.INS_COINS_LEADER.Where(v => v.CIL_SYS_ID == x.CIL_SYS_ID).FirstOrDefault() || {}; let nloc = nPol.INS_COINS_LEADER.Where(v => v.CIL_SYS_ID == x.CIL_SYS_ID).FirstOrDefault() || {}; endorsement.MS_COL_ENDORSEMENT.Add({ CED_POL_SYS_ID: nPol.POLH_SYS_ID, CED_CIL_SYS_ID: nPol.CIL_SYS_ID, CED_END_NO: nPol.POLH_END_NO, CED_RNW_NO: nPol.POLH_RNW_NO, CED_COMP_CODE: nloc.CIL_COMP_CODE, CED_PRE_COMP_PERC: oloc.CIL_COMP_PERC, CED_NOW_COMP_PERC: nloc.CIL_COMP_PERC, CED_DIF_COMP_PERC: parseFloat(nloc.CIL_COMP_PERC || 0) - parseFloat(oloc.CIL_COMP_PERC || 0), CED_PRE_COMP_SI_FC: oloc.CIL_COMP_SI_FC, CED_NOW_COMP_SI_FC: nloc.CIL_COMP_SI_FC, CED_DIF_COMP_SI_FC: parseFloat(nloc.CIL_COMP_SI_FC || 0) - parseFloat(oloc.CIL_COMP_SI_FC || 0), CED_PRE_COMP_SI_BC: oloc.CIL_COMP_SI_BC, CED_NOW_COMP_SI_BC: nloc.CIL_COMP_SI_BC, CED_DIF_COMP_SI_BC: parseFloat(nloc.CIL_COMP_SI_BC || 0) - parseFloat(oloc.CIL_COMP_SI_BC || 0), CED_PRE_COMP_PREM_FC: oloc.CIL_COMP_PREM_FC, CED_NOW_COMP_PREM_FC: nloc.CIL_COMP_PREM_FC, CED_DIF_COMP_PREM_FC: parseFloat(nloc.CIL_COMP_PREM_FC || 0) - parseFloat(oloc.CIL_COMP_PREM_FC || 0), CED_PRE_COMP_PREM_BC: oloc.CIL_COMP_PREM_BC, CED_NOW_COMP_PREM_BC: nloc.CIL_COMP_PREM_BC, CED_DIF_COMP_PREM_BC: parseFloat(nloc.CIL_COMP_PREM_BC || 0) - parseFloat(oloc.CIL_COMP_PREM_BC || 0), CED_PRE_COMP_COMM_FC: oloc.CIL_COMP_COMM_FC, CED_NOW_COMP_COMM_FC: nloc.CIL_COMP_COMM_FC, CED_DIF_COMP_COMM_FC: parseFloat(nloc.CIL_COMP_COMM_FC || 0) - parseFloat(oloc.CIL_COMP_COMM_FC || 0), CED_PRE_COMP_COMM_BC: oloc.CIL_COMP_COMM_BC, CED_NOW_COMP_COMM_BC: nloc.CIL_COMP_COMM_BC, CED_DIF_COMP_COMM_BC: parseFloat(nloc.CIL_COMP_COMM_BC || 0) - parseFloat(oloc.CIL_COMP_COMM_BC || 0), CED_CRTE_BY: u.getUserCode(), CED_STATUS: "U" }); }); }); u.setGlobal("TreatyShareEndorsement", function (nPol, oPol, endorsement) { endorsement.MS_RI_SHARE_ENDORSEMENT = (typeof (endorsement.MS_RI_SHARE_ENDORSEMENT) === "string" ? JSON.parse(endorsement.MS_RI_SHARE_ENDORSEMENT || "[]") : endorsement.MS_RI_SHARE_ENDORSEMENT) || []; endorsement.MS_RI_SHARE_ENDORSEMENT = endorsement.MS_RI_SHARE_ENDORSEMENT.Any() ? endorsement.MS_RI_SHARE_ENDORSEMENT.filter(b => b.TSE_SYS_ID) : []; endorsement.MS_RI_SHARE_ENDORSEMENT.ForEach(x => { x.TSE_STATUS = "X" }); let newTreatySharedTemp = []; nPol.INS_RI_TTY_HEAD = (typeof (nPol.INS_RI_TTY_HEAD) === "string" ? JSON.parse(nPol.INS_RI_TTY_HEAD || "[]") : nPol.INS_RI_TTY_HEAD) || []; nPol.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(s => { newTreatySharedTemp.Add(s); }); }); }); let oldTreatySharedTemp = []; oPol.INS_RI_TTY_HEAD = (typeof (oPol.INS_RI_TTY_HEAD) === "string" ? JSON.parse(oPol.INS_RI_TTY_HEAD || "[]") : oPol.INS_RI_TTY_HEAD) || []; oPol.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(s => { oldTreatySharedTemp.Add(s); }); }); }); if (newTreatySharedTemp.Count() < oldTreatySharedTemp.Count()) { //u.growl_warning("Total history share record count is more than the current share record, Please see adminstrator!!!"); } else if (newTreatySharedTemp.Count() < oldTreatySharedTemp.Count()) { //u.growl_warning("Total current share record count is more than the history share record, Please see adminstrator!!!"); } let polTShared = (newTreatySharedTemp.Count() >= oldTreatySharedTemp.Count() ? newTreatySharedTemp : oldTreatySharedTemp) || []; polTShared.ForEach(x => { //let nloc = newTreatySharedTemp.Where(v => v.TTS_SYS_ID == x.TTS_SYS_ID).FirstOrDefault() || {}; //let oloc = oldTreatySharedTemp.Where(v => v.TTS_SYS_ID == x.TTS_SYS_ID).FirstOrDefault() || {}; let nloc = x.TTS_SYS_ID ? (newTreatySharedTemp.Where(v => v.TTS_SYS_ID == x.TTS_SYS_ID).FirstOrDefault() || {}) : x; let oloc = oldTreatySharedTemp.Where(v => v.TTS_SYS_ID == x.TTS_SYS_ID).FirstOrDefault() || {}; endorsement.MS_RI_SHARE_ENDORSEMENT.Add({ TSE_POL_SYS_ID: nPol.POLH_SYS_ID || endorsement.END_POL_SYS_ID, TSE_END_NO: nloc.TTS_END_NO || endorsement.END_NO, TSE_RNW_NO: nloc.TTS_RNW_NO || endorsement.END_RNW_NO, TSE_TTS_SYS_ID: nloc.TTS_SYS_ID, TSE_TTA_SYS_ID: nloc.TTS_TTA_SYS_ID, TSE_RI_COMP: nloc.TTS_RI_COMP, TSE_TTY_TYPE: nloc.TTS_TTY_TYPE, TSE_PRE_SHARE_PERC: oloc.TTS_SHARE_PERC || 0, TSE_NOW_SHARE_PERC: nloc.TTS_SHARE_PERC || 0, TSE_DIF_SHARE_PERC: parseFloat(nloc.TTS_SHARE_PERC || 0) - parseFloat(oloc.TTS_SHARE_PERC || 0), TSE_PRE_ALLOC_PERC: oloc.TTS_ALLOC_PERC || 0, TSE_NOW_ALLOC_PERC: nloc.TTS_ALLOC_PERC || 0, TSE_DIF_ALLOC_PERC: parseFloat(nloc.TTS_ALLOC_PERC || 0) - parseFloat(oloc.TTS_ALLOC_PERC || 0), TSE_PRE_SHARE_SI_FC: oloc.TTS_SHARE_SI_FC || 0, TSE_NOW_SHARE_SI_FC: nloc.TTS_SHARE_SI_FC || 0, TSE_DIF_SHARE_SI_FC: parseFloat(nloc.TTS_SHARE_SI_FC || 0) - parseFloat(oloc.TTS_SHARE_SI_FC || 0), TSE_PRE_SHARE_SI_BC: oloc.TTS_SHARE_SI_BC || 0, TSE_NOW_SHARE_SI_BC: nloc.TTS_SHARE_SI_BC || 0, TSE_DIF_SHARE_SI_BC: parseFloat(nloc.TTS_SHARE_SI_BC || 0) - parseFloat(oloc.TTS_SHARE_SI_BC || 0), TSE_PRE_SHARE_PREM_FC: oloc.TTS_SHARE_PREM_FC || 0, TSE_NOW_SHARE_PREM_FC: nloc.TTS_SHARE_PREM_FC || 0, TSE_DIF_SHARE_PREM_FC: parseFloat(nloc.TTS_SHARE_PREM_FC || 0) - parseFloat(oloc.TTS_SHARE_PREM_FC || 0), TSE_PRE_SHARE_PREM_BC: oloc.TTS_SHARE_PREM_BC || 0, TSE_NOW_SHARE_PREM_BC: nloc.TTS_SHARE_PREM_BC || 0, TSE_DIF_SHARE_PREM_BC: parseFloat(nloc.TTS_SHARE_PREM_BC || 0) - parseFloat(oloc.TTS_SHARE_PREM_BC || 0), TSE_PRE_RI_COMM_PERC: oloc.TTS_RI_COMM_PERC || 0, TSE_NOW_RI_COMM_PERC: nloc.TTS_RI_COMM_PERC || 0, TSE_DIF_RI_COMM_PERC: parseFloat(nloc.TTS_RI_COMM_PERC || 0) - parseFloat(oloc.TTS_RI_COMM_PERC || 0), TSE_PRE_RI_COMM_FC: oloc.TTS_RI_COMM_FC || 0, TSE_NOW_RI_COMM_FC: nloc.TTS_RI_COMM_FC || 0, TSE_DIF_RI_COMM_FC: parseFloat(nloc.TTS_RI_COMM_FC || 0) - parseFloat(oloc.TTS_RI_COMM_FC || 0), TSE_PRE_RI_COMM_BC: oloc.TTS_RI_COMM_BC || 0, TSE_NOW_RI_COMM_BC: nloc.TTS_RI_COMM_BC || 0, TSE_DIF_RI_COMM_BC: parseFloat(nloc.TTS_RI_COMM_BC || 0) - parseFloat(oloc.TTS_RI_COMM_BC || 0), TSE_PRE_RI_TAX_PERC: oloc.TTS_RI_TAX_PERC || 0, TSE_NOW_RI_TAX_PERC: nloc.TTS_RI_TAX_PERC || 0, TSE_DIF_RI_TAX_PERC: parseFloat(nloc.TTS_RI_TAX_PERC || 0) - parseFloat(oloc.TTS_RI_TAX_PERC || 0), TSE_PRE_TAX_BC: oloc.TTS_TAX_BC || 0, TSE_NOW_TAX_BC: nloc.TTS_TAX_BC || 0, TSE_DIF_TAX_BC: parseFloat(nloc.TTS_TAX_BC || 0) - parseFloat(oloc.TTS_TAX_BC || 0), TSE_PRE_TAX_FC: oloc.TTS_TAX_FC || 0, TSE_NOW_TAX_FC: nloc.TTS_TAX_FC || 0, TSE_DIF_TAX_FC: parseFloat(nloc.TTS_TAX_FC || 0) - parseFloat(oloc.TTS_TAX_FC || 0), TSE_CRTE_BY: u.getUserCode(), TSE_STATUS: "U", }); }); //console.log(endorsement.MS_RI_SHARE_ENDORSEMENT); //console.log("new", newTreatySharedTemp, "old", oldTreatySharedTemp, newTreatySharedTemp.Count() >= oldTreatySharedTemp.Count()); //console.log("new", nPol, "old", oPol); }); u.setGlobal("RIReCalculation", async function (product, riItems) { const treaty = await u.getGlobal("getTreaty")(product); u.setGlobal("pendingRiCount", 0); let rate = 1; const result = []; if (product.POLH_TXN_STATE === "P" || product.POLH_TXN_STATE === "C") return result; switch (product.POLH_INS_SOURCE) { case "COL": { if (product.INS_COINS_LEADER.FirstOrDefault()) { rate = parseFloat(product.INS_COINS_LEADER.FirstOrDefault().CIL_OUR_PERC || 1) * 0.01; } else { //u.growl_info("Co Insurance Leader setup is invalid, please check it for correct ReInsurance calculations."); } } break; case "COM": case "FIN": { if (product.INS_RI_FAC_INWARD.FirstOrDefault()) { rate = parseFloat(product.INS_RI_FAC_INWARD.FirstOrDefault().FINW_SHARE_PERC || 1) * 0.01; } else { //u.growl_info("Co Insurance Member or Fac setup is invalid, please check it for correct ReInsurance calculations."); } } break; default: rate = 1; break; } riItems.ForEach(x => { if ($("#POLH_STATUS").val() === "A" && $("#POLH_TXN_STATE").val() === "R" && u.grid_empty(u.getGlobal("udwRIGrid"))) { x.RI_STATUS = "U"; } let RIInfo = { "RI_SI_FC": rate * parseFloat(x.RI_SI_FC || 0), "RI_SI_BC": rate * parseFloat(x.RI_SI_BC || 0), "RI_PREM_FC": rate * parseFloat(x.RI_PREM_FC || 0), "RI_PREM_BC": rate * parseFloat(x.RI_PREM_BC || 0), "RI_STATUS": x.RI_STATUS }; let RIAllocation = u.locationRiAllocation(product, RIInfo, treaty) || []; if (RIAllocation.Any(a => (a.TTA_TTY_TYPE === "FX" && a.TTA_ALLOC_PERC > 0) || (a.TTA_TTY_TYPE === "SP" || a.TTA_TTY_TYPE === "QS" && a.TTA_CLOSE_FLAG === "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } result.Add({ TTH_ACC_SI_BC: (rate * x.RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (rate * x.RI_SI_FC).toFixed(2), TTH_ADJ_YN: "", TTH_CLASS_CODE: product.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: x.EML_PERC, TTH_FROM_DATE: x.FROM_DATE, TTH_INS_SRCE: product.POLH_INS_SOURCE, TTH_LOC_END_NO: product.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: product.POLH_END_NO || 0, TTH_POLH_SYS_ID: product.POLH_SYS_ID, TTH_POLNUM: product.POLH_DISPLAY_NO, TTH_REF_ID: x.RISK_ID, TTH_RISK_END_NO: product.POLH_END_NO, TTH_RISK_SYS_ID: x.RISK_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (rate * x.RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (rate * x.RI_PREM_FC).toFixed(2), TTH_RI_SI_FC: (rate * x.RI_SI_FC).toFixed(2), TTH_RI_SI_BC: (rate * x.RI_SI_BC).toFixed(2), TTH_SC_CODE: product.POLH_SUB_CLASS_CODE, TTH_STATUS: x.RI_STATUS, TTH_TOTAL_PREM_BC: (rate * x.TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (rate * x.TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (rate * x.TOT_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (rate * x.TOT_SI_FC).toFixed(2), TTH_TO_DATE: x.TO_DATE, TTH_UW_YEAR: x.UW_YEAR, INS_RI_TTY_ALLOCATION: RIAllocation }); }); return result; }); u.setGlobal("ShortPeriod", async function (subClassCode) { let response = await s.getShortPeriodsAsync(subClassCode); if (response.state) { if (response.data.Any()) { u.setGlobal("shortPeriods", response.data || []); return response.data || []; } else { u.growl_info(`No short periods has been setup for ${$("#PDT_NAME").val()}`); u.setGlobal("shortPeriods", []); return []; } } else { u.growl_error(response.message); u.setGlobal("shortPeriods", []); return []; } }); u.setGlobal("SP", async function (subClassCode, days) { let response = await s.getShortPeriodAsync(subClassCode, days); if (response.state) { return (response.data) ? response.data : 0; } else { u.growl_error(response.message); return 0; } }); u.setGlobal("getRating", async function (Product) { Product.POLH_POL_DAYS = parseFloat(Product.POLH_POL_DAYS || 0) || 0; let result = 0; switch (Product.POLH_PREM_BASIS) { case "PR": result = (Product.POLH_POL_DAYS === 364 || Product.POLH_POL_DAYS === 366) ? 1 : Product.POLH_POL_DAYS / 365; break; case "SP": result = (Product.POLH_SUB_CLASS_CODE && Product.POLH_POL_DAYS) ? (await u.getGlobal("SP")(Product.POLH_SUB_CLASS_CODE, Product.POLH_POL_DAYS) * 0.01) : 0; break; case "FP": result = 1; break; default: reslt = 0; break; } //console.log(result); return result; }); u.setGlobal("getMotorRating", async function (v) { v.VEH_PERIOD_DAYS = parseFloat(v.VEH_PERIOD_DAYS || 0) || 0; let subClass = $("#POLH_SUB_CLASS_CODE").val(); let result = 0; switch (v.VEH_PREMIUM_BASIS) { case "PR": result = (v.VEH_PERIOD_DAYS === 365) ? 1 : v.VEH_PERIOD_DAYS / 365; break; case "SP": result = (subClass && v.VEH_PERIOD_DAYS) ? (await u.getGlobal("SP")(subClass, v.VEH_PERIOD_DAYS) * 0.01) : 0; break; case "FP": result = 1; break; default: reslt = 0; break; }; /*---------------------------------------- * if the policy has been suspended *--------------------------------------*/ let polSusYN = $("#POLH_SUSPND_YN").val(); let polSusPeriod = (parseFloat($("#POLH_SUSPND_PERIOD").val() || 0) || 0) / 365; /*---------------------------------------- * if the vehicle has been suspended *--------------------------------------*/ v.VEH_SUSPND_PERIOD = (parseFloat(v.VEH_SUSPND_PERIOD || 0) || 0) / 365; result = polSusYN === "Y" ? polSusPeriod : v.VEH_SUSPND_YN === "Y" ? v.VEH_SUSPND_PERIOD : result; return result; }); u.setGlobal("InsuranceSourse", function (c) { /*-------------------- * SETS AT THE PARENT *------------------**/ switch (c.INS_SOURCE) { case "COL": /*-------------------- * SETS AT THE PARENT *------------------**/ c.CIL_POL_SI_FC = parseFloat(c.CIL_POL_SI_FC || 0) || 0; c.CIL_POL_SI_BC = parseFloat(c.CIL_POL_SI_BC || 0) || 0; c.CIL_POL_PREM_FC = parseFloat(c.CIL_POL_PREM_FC || 0) || 0; c.CIL_POL_PREM_BC = parseFloat(c.CIL_POL_PREM_BC || 0) || 0; /*----------------------- * THIS IS GENERIC TO ALL *---------------------**/ c.CIL_OUR_PERC = parseFloat(c.CIL_OUR_PERC || 0) || 0; c.CIL_MEMBER_PERC = parseFloat(100 - c.CIL_OUR_PERC); c.CIL_SHARE_SI_FC = parseFloat(c.CIL_POL_SI_FC * c.CIL_OUR_PERC * 0.01).toFixed(2) || 0; c.CIL_SHARE_SI_BC = parseFloat(c.CIL_POL_SI_BC * c.CIL_OUR_PERC * 0.01).toFixed(2) || 0; c.CIL_SHARE_PREM_FC = parseFloat(c.CIL_POL_PREM_FC * c.CIL_OUR_PERC * 0.01).toFixed(2) || 0; c.CIL_SHARE_PREM_BC = parseFloat(c.CIL_POL_PREM_BC * c.CIL_OUR_PERC * 0.01).toFixed(2) || 0; //c.CIL_MEMBERS_SI_FC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_SHARE_SI_FC).toFixed(2) || 0; //c.CIL_MEMBERS_SI_BC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_SHARE_SI_BC).toFixed(2) || 0; //c.CIL_MEMBERS_PREM_FC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_SHARE_PREM_FC).toFixed(2) || 0; //c.CIL_MEMBERS_PREM_BC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_SHARE_PREM_BC).toFixed(2) || 0; c.CIL_MEMBERS_SI_FC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_POL_SI_FC).toFixed(2) || 0; c.CIL_MEMBERS_SI_BC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_POL_SI_BC).toFixed(2) || 0; c.CIL_MEMBERS_PREM_FC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_POL_PREM_FC).toFixed(2) || 0; c.CIL_MEMBERS_PREM_BC = parseFloat(c.CIL_MEMBER_PERC * 0.01 * c.CIL_POL_PREM_BC).toFixed(2) || 0; /*------------------------------ * THIS IS SPECIFIC TO A RECORD *---------------------------**/ c.CIL_COMP_PERC = parseFloat(c.CIL_COMP_PERC || 0) || 0; c.CIL_COMP_COMM_PERC = parseFloat(c.CIL_COMP_COMM_PERC || 0) || 0; //c.CIL_COMP_SI_FC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_SHARE_SI_FC).toFixed(2) || 0; //c.CIL_COMP_SI_BC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_SHARE_SI_BC).toFixed(2) || 0; //c.CIL_COMP_PREM_FC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_SHARE_PREM_FC).toFixed(2) || 0; //c.CIL_COMP_PREM_BC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_SHARE_PREM_BC).toFixed(2) || 0; c.CIL_COMP_SI_FC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_POL_SI_FC).toFixed(2) || 0; c.CIL_COMP_SI_BC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_POL_SI_BC).toFixed(2) || 0; c.CIL_COMP_PREM_FC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_POL_PREM_FC).toFixed(2) || 0; c.CIL_COMP_PREM_BC = parseFloat(c.CIL_COMP_PERC * 0.01 * c.CIL_POL_PREM_BC).toFixed(2) || 0; c.CIL_COMP_COMM_FC = parseFloat(c.CIL_COMP_COMM_PERC * 0.01 * c.CIL_COMP_PREM_FC).toFixed(2) || 0; c.CIL_COMP_COMM_BC = parseFloat(c.CIL_COMP_COMM_PERC * 0.01 * c.CIL_COMP_PREM_BC).toFixed(2) || 0; break; case "FIN": case "COM": /*-------------------- * SETS AT THE PARENT *------------------**/ c.FINW_SI_FC = parseFloat(c.FINW_SI_FC || 0) || 0; c.FINW_SI_BC = parseFloat(c.FINW_SI_BC || 0) || 0; c.FINW_PREM_FC = parseFloat(c.FINW_PREM_FC || 0) || 0; c.FINW_PREM_BC = parseFloat(c.FINW_PREM_BC || 0) || 0; /*----------------------- * THIS IS GENERIC TO ALL *---------------------**/ c.FINW_SHARE_PERC = parseFloat(c.FINW_SHARE_PERC || 0) || 0; c.FINW_COMM_PERC = parseFloat(c.FINW_COMM_PERC || 0) || 0; c.FINW_MEMBER_PERC = parseFloat(100 - c.FINW_SHARE_PERC); c.FINW_ORIG_SI_FC = c.FINW_SHARE_PERC !== 0 ? parseFloat(parseFloat(c.FINW_SI_FC * parseFloat(100 / c.FINW_SHARE_PERC) || 0)).toFixed(2) : 0; c.FINW_ORIG_SI_BC = c.FINW_SHARE_PERC !== 0 ? parseFloat(parseFloat(c.FINW_SI_BC * parseFloat(100 / c.FINW_SHARE_PERC) || 0)).toFixed(2) : 0; c.FINW_ORIG_PREM_FC = c.FINW_SHARE_PERC !== 0 ? parseFloat(parseFloat(c.FINW_PREM_FC * parseFloat(100 / c.FINW_SHARE_PERC) || 0)).toFixed(2) : 0; c.FINW_ORIG_PREM_BC = c.FINW_SHARE_PERC !== 0 ? parseFloat(parseFloat(c.FINW_PREM_BC * parseFloat(100 / c.FINW_SHARE_PERC) || 0)).toFixed(2) : 0; c.FINW_COMM_FC = parseFloat(c.FINW_PREM_FC * c.FINW_COMM_PERC * 0.01).toFixed(2) || 0; c.FINW_COMM_BC = parseFloat(c.FINW_PREM_BC * c.FINW_COMM_PERC * 0.01).toFixed(2) || 0; c.INS_RI_FAC_INW_COMPANY = (typeof (c.INS_RI_FAC_INW_COMPANY) === "string" ? JSON.parse(c.INS_RI_FAC_INW_COMPANY || "[]") : c.INS_RI_FAC_INW_COMPANY) || []; c.INS_RI_FAC_INW_COMPANY.ForEach(b => { b.FINW_PAP_SHARE_PERC = parseFloat(b.FINW_PAP_SHARE_PERC || 0) || 0; b.FINW_PAP_SHARE_SI = parseFloat(c.FINW_ORIG_SI_FC * b.FINW_PAP_SHARE_PERC * 0.01).toFixed(2) || 0; b.FINW_PAP_SHARE_SI_BC = parseFloat(c.FINW_ORIG_SI_BC * b.FINW_PAP_SHARE_PERC * 0.01).toFixed(2) || 0; b.FINW_PAP_SHARE_PREM = parseFloat(c.FINW_ORIG_PREM_FC * b.FINW_PAP_SHARE_PERC * 0.01).toFixed(2) || 0; b.FINW_PAP_SHARE_PREM_BC = parseFloat(c.FINW_ORIG_SI_BC * b.FINW_PAP_SHARE_PERC * 0.01).toFixed(2) || 0; }); break; } }); u.setGlobal("LastSuspendedEndorsement", function (data) { data = (typeof (data) == "string" ? JSON.parse(data || "[]") : data) || []; let closedSuspendedEndorsementNo = parseInt(data.Where(x => (x.END_TXN_STATE === "C") && (x.END_FLAG === "TS")).Max(b => parseInt(b.END_NO))) || 0; data = data.Where(x => (x.END_NO == closedSuspendedEndorsementNo)).FirstOrDefault() || {} return data; }); u.setGlobal("InsView", function (data) { switch (data) { case "FIN": $("#btnFACInward").show(); $("#btnCoInsMember").hide(); $("#btnCoInsLeader").hide(); break; case "COM": $("#btnFACInward").hide(); $("#btnCoInsMember").show(); $("#btnCoInsLeader").hide(); break; case "COL": $("#btnFACInward").hide(); $("#btnCoInsMember").hide(); $("#btnCoInsLeader").show(); break; default: $("#btnFACInward").hide(); $("#btnCoInsMember").hide(); $("#btnCoInsLeader").hide(); break; } }); u.setGlobal("riDiscriptionConcat", function (data) { let result = []; data = (typeof (data) === "string" ? JSON.parse(data || "{}") : data) || {}; for (let i in data) { let tempResult = `${i}: ${data[i]}`; result.push(tempResult); } return result.join(", "); }); u.setGlobal("endorsementRiReCalcNew", function (t, totalSiBc, totalSiFc, totalPremBc, totalPremFc, riSiBc, riSiFc) { let siDiff = totalSiFc - t.TTH_RI_SI_FC; let premDiff = totalPremFc - t.TTH_RI_PREM_FC; totalSiBc = parseFloat(totalSiBc); totalSiFc = parseFloat(totalSiFc); totalPremBc = parseFloat(totalPremBc); totalPremFc = parseFloat(totalPremFc); riSiBc = parseFloat(riSiBc); riSiFc = parseFloat(riSiFc); t.TTH_ACC_SI_BC = ((totalSiBc).toFixed(2) - parseFloat(t.TTH_ACC_SI_BC || 0)) || 0; t.TTH_ACC_SI_FC = ((totalSiFc).toFixed(2) - parseFloat(t.TTH_ACC_SI_FC || 0)) || 0; t.TTH_RI_SI_BC = ((totalSiBc).toFixed(2) - parseFloat(t.TTH_RI_SI_BC || 0)) || 0; t.TTH_RI_SI_FC = ((totalSiFc).toFixed(2) - parseFloat(t.TTH_RI_SI_FC || 0)) || 0; t.TTH_TOTAL_SI_BC = ((totalSiBc).toFixed(2) - parseFloat(t.TTH_TOTAL_SI_BC || 0)) || 0; t.TTH_TOTAL_SI_FC = ((totalSiFc).toFixed(2) - parseFloat(t.TTH_TOTAL_SI_FC || 0)) || 0; t.TTH_RI_PREM_BC = ((totalPremBc).toFixed(2) - parseFloat(t.TTH_RI_PREM_BC || 0)) || 0; t.TTH_RI_PREM_FC = ((totalPremFc).toFixed(2) - parseFloat(t.TTH_RI_PREM_FC || 0)) || 0; t.TTH_TOTAL_PREM_BC = ((totalPremBc).toFixed(2) - parseFloat(t.TTH_TOTAL_PREM_BC || 0)) || 0; t.TTH_TOTAL_PREM_FC = ((totalPremFc).toFixed(2) - parseFloat(t.TTH_TOTAL_PREM_FC || 0)) || 0; //check if the limit of the allocation exceeds zero //if the limit of the allocation exceeds zero then we can apportion with the limit //if the limit of the allocation does not exceed zero then we use the specified sum insured as the limit //if the sum insured of the allocation record is zero skip allocation //after all apportionments check if riSiFc is greater than zero. if riSiFc is greater than zero then set that amount as excess var processingSiFc = 0; var processingSiBc = 0; var limitFc; var limitBc; t.INS_RI_TTY_ALLOCATION = (typeof (t.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(t.INS_RI_TTY_ALLOCATION || "[]") : t.INS_RI_TTY_ALLOCATION) || []; t.INS_RI_TTY_ALLOCATION.ForEach(a => { if (a.TTA_TTY_LIMIT_FC > 0) { //allocation limit is greater than zero limitFc = a.TTA_TTY_LIMIT_FC || 0; limitBc = a.TTA_TTY_LIMIT_BC || 0; } else { //allocation limit is less than zero if (a.TTA_TTY_SI_FC > 0) { //sum insured of allocation is more than zero limitFc = a.TTA_TTY_SI_FC || 0; limitBc = a.TTA_TTY_SI_BC || 0; } else { return false; } } if (limitFc > riSiFc) { //allocation absorbs all sum insured processingSiFc = riSiFc || 0; processingSiBc = riSiBc || 0; riSiFc = 0; riSiBc = 0; } else { processingSiFc = limitFc || 0; processingSiBc = limitBc || 0; riSiFc -= limitFc; riSiBc -= limitBc; } var allocRate = (processingSiFc / totalSiFc) || 1; a.TTA_TTY_SI_BC = ((totalSiBc * allocRate)).toFixed(2) || 0; a.TTA_TTY_SI_FC = ((totalSiFc * allocRate)).toFixed(2) || 0; a.TTA_TTY_PREM_BC = ((totalPremBc * allocRate) - a.TTA_TTY_PREM_BC).toFixed(2) || 0; a.TTA_TTY_PREM_FC = ((totalPremFc * allocRate) - a.TTA_TTY_PREM_FC).toFixed(2) || 0; //////console.log(a, a.TTA_TTY_PREM_FC, processingSiFc, totalSiFc); //allocation share re apportionment a.INS_RI_TTY_SHARE = (typeof (a.INS_RI_TTY_SHARE) === "string" ? JSON.parse(a.INS_RI_TTY_SHARE || "[]") : a.INS_RI_TTY_SHARE) || []; a.INS_RI_TTY_SHARE.ForEach(share => { var propRate = (share.TTS_ALLOC_PERC / a.TTA_ALLOC_PERC) || 0; var shareAllocPerc = (propRate * allocRate) || 0; var newShareRate = shareAllocPerc || 0; share.TTS_SHARE_SI_BC = ((totalSiBc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_SI_FC = ((totalSiFc * newShareRate)).toFixed(2) || 0; share.TTS_SHARE_PREM_BC = (((totalPremBc * newShareRate) - share.TTS_SHARE_PREM_BC).toFixed(2)) || 0; share.TTS_SHARE_PREM_FC = (((totalPremFc * newShareRate) - share.TTS_SHARE_PREM_FC).toFixed(2)) || 0; share.TTS_RI_COMM_BC = (((share.TTS_SHARE_PREM_BC || 0) * (share.TTS_RI_COMM_PERC * 0.01)).toFixed(2)) || 0; share.TTS_RI_COMM_FC = ((share.TTS_SHARE_PREM_FC || 0) * (share.TTS_RI_COMM_PERC * 0.01)).toFixed(2) || 0; share.TTS_TAX_BC = (share.TTS_RI_COMM_BC * ((share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_TAX_FC = (share.TTS_RI_COMM_FC * ((share.TTS_RI_TAX_PERC || 0) * 0.01)).toFixed(2) || 0; share.TTS_SHARE_PERC = ((shareAllocPerc / allocRate) * 100).toFixed(5) || 0; share.TTS_ALLOC_PERC = (shareAllocPerc * 100).toFixed(5) || 0; }); a.TTA_ALLOC_PERC = (allocRate * 100).toFixed(5) || 0; //a.INS_RI_TTY_SHARE = a.INS_RI_TTY_SHARE.ToJson(); }); //check for excess record if (riSiFc > 0) { //assign excess amount const excsAlloc = t.INS_RI_TTY_ALLOCATION.First(a => a.TTA_TTY_TYPE === "FX"); const allocRate = (riSiFc / totalSiFc) || 0; excsAlloc.TTA_TTY_SI_BC = ((totalSiBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_SI_FC = ((totalSiFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_BC = ((totalPremBc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_TTY_PREM_FC = ((totalPremFc * allocRate)).toFixed(2) || 0; excsAlloc.TTA_ALLOC_PERC = (allocRate * 100).toFixed(5) || 0; } return t; }); u.setGlobal("endorsementRiReCalculationNew", async function (Product) { const treaty = await u.getGlobal("getTreaty")(Product); u.setGlobal("pendingRiCount", 0); let Rate = 1; let Result = []; Product.INS_UWD_FIRE_RISK = (typeof (Product.INS_UWD_FIRE_RISK) === "string" ? JSON.parse(Product.INS_UWD_FIRE_RISK || "[]") : Product.INS_UWD_FIRE_RISK) || []; Product.INS_UWD_FIRE_RISK.ForEach(x => { let RIInfo = { "RI_SI_FC": Rate * parseFloat(x.PLOC_RI_SI_FC || 0), "RI_SI_BC": Rate * parseFloat(x.PLOC_RI_SI_BC || 0), "RI_PREM_BC": Rate * parseFloat(x.PLOC_RI_PREM_BC || 0), "RI_PREM_FC": Rate * parseFloat(x.PLOC_RI_PREM_FC || 0), "RI_STATUS": x.PLOC_STATUS }; let locationRiAllocationData = u.locationRiAllocation(Product, RIInfo, treaty) || []; if (locationRiAllocationData.Any(a => (a.TTA_TTY_TYPE === "FX" && a.TTA_ALLOC_PERC > 0) || (a.TTA_TTY_TYPE === "SP" || a.TTA_TTY_TYPE === "QS" && a.TTA_CLOSE_FLAG === "N"))) { u.setGlobal("pendingRiCount", u.getGlobal("pendingRiCount") + 1); } Result.Add({ TTH_ACC_SI_BC: (Rate * x.PLOC_RI_SI_BC).toFixed(2), TTH_ACC_SI_FC: (Rate * x.PLOC_RI_SI_FC).toFixed(2), TTH_ADJ_YN: "", TTH_CLASS_CODE: Product.POLH_CLASS_CODE, TTH_COMB_LOC_ID: "", TTH_CRTE_BY: u.getUserCode(), TTH_CRTE_DATE: u.get_date(), TTH_EML_PERC: x.PLOC_EML, TTH_FROM_DATE: x.PLOC_START_DATE, TTH_INS_SRCE: Product.POLH_INS_SOURCE, TTH_LOC_END_NO: Product.POLH_END_NO, TTH_LOC_SYS_ID: "", TTH_MOD_BY: "", TTH_MOD_DATE: "", TTH_POLH_END_NO: Product.POLH_END_NO || 0, TTH_POLH_SYS_ID: Product.POLH_SYS_ID, TTH_POLNUM: Product.POLH_DISPLAY_NO, TTH_REF_ID: x.PLOC_SYS_ID, TTH_RISK_END_NO: Product.POLH_END_NO, TTH_RISK_SYS_ID: x.PLOC_SYS_ID, TTH_RI_ACC_YN: "", TTH_RI_PREM_BC: (Rate * x.PLOC_RI_PREM_BC).toFixed(2), TTH_RI_PREM_FC: (Rate * x.PLOC_RI_PREM_BC).toFixed(2), TTH_RI_SI_BC: (Rate * x.PLOC_RI_SI_BC).toFixed(2), TTH_RI_SI_FC: (Rate * x.PLOC_RI_SI_FC).toFixed(2), TTH_SC_CODE: Product.POLH_SUB_CLASS_CODE, TTH_STATUS: x.PLOC_STATUS, TTH_TOTAL_PREM_BC: (Rate * x.PLOC_TOT_PREM_BC).toFixed(2), TTH_TOTAL_PREM_FC: (Rate * x.PLOC_TOT_PREM_FC).toFixed(2), TTH_TOTAL_SI_BC: (Rate * x.PLOC_SI_BC).toFixed(2), TTH_TOTAL_SI_FC: (Rate * x.PLOC_SI_FC).toFixed(2), TTH_TO_DATE: x.PLOC_END_DATE, TTH_UW_YEAR: x.PLOC_UW_YEAR, INS_RI_TTY_ALLOCATION: locationRiAllocationData }); }); return Result; }); /* * EXCESS GLOBAL FUNCTIONS */ u.setGlobal("excessMinMaxBlur", function (id, narr, minMaxtype) { const currency = $(`#POLH_CURRENCY`).val(); const narration = $(`#${narr}`).val(); const minMaxAmt = $(`#${id}`).val(); const minMax = minMaxtype === "Min" ? "Min." : "Max."; if (minMaxAmt === "" || minMaxAmt === "0") return; if (parseFloat(minMaxAmt) <= 0) { $(`#${narr}`).val(`${narration}`); return; }; var minMaxText = `${minMax} amount: ${currency} ${minMaxAmt}`; if (narration.includes(minMaxText)) { $(`#${narr}`).val(`${narration}`); } else { $(`#${narr}`).val(`${narration}, ${minMaxText}`); } }); u.setGlobal("excessAmtBlur", function (id, narr, type, minId, maxId) { const currency = $(`#POLH_CURRENCY`).val(); const perc = $(`#${id}`).val(); if (perc === "") return; const excessType = $(`#${type}`).val(); if (excessType === "") return; if ($(`#${narr}`).val() !== "") return; switch (excessType) { case "FA": { $(`#${narr}`).val(`Fixed amount: ${currency} ${perc}`); } break; case "CA": { $(`#${narr}`).val(`${perc} % of claim`); } break; case "TE": { $(`#${narr}`).val(`${perc} days`); } break; } u.getGlobal("excessMinMaxBlur")(`${minId}`, `${narr}`, "Min"); u.getGlobal("excessMinMaxBlur")(`${maxId}`, `${narr}`, "Max"); }); u.setGlobal("excessTypeChange", async function (typeId, amountId, minId, maxId, narrId) { const excessType = $(`#${typeId}`).val(); if (excessType === "") { $(`#${minId}`).val(""); $(`#${maxId}`).val(""); $(`#${narrId}`).val(""); $(`#${amountId}`).val(""); return; } //if ($(`#${narrId}`).val() !== "") return; if (u.getGlobal("excessChange")) return; $(`#${minId}`).val(""); $(`#${maxId}`).val(""); $(`#${narrId}`).val(""); $(`#${amountId}`).val(""); var response = await s.get_PExcessAsync(excessType); if (response.state) { if (excessType === "FA") { $(`#${minId}`).val(""); //$(`#${minId}`).attr("readonly", "readonly"); $(`#${minId}`).prop("readonly", false); $(`#${maxId}`).val(""); // $(`#${maxId}`).attr("readonly", "readonly"); $(`#${maxId}`).prop("readonly", false); $(`#${narrId}`).val(""); } if (excessType === "CA") { $(`#${minId}`).val(""); $(`#${minId}`).val(response.data.EXS_MIN_AMOUNT); $(`#${minId}`).prop("readonly", false); $(`#${maxId}`).val(""); $(`#${maxId}`).val(response.data.EXS_MAX_AMOUNT); $(`#${maxId}`).prop("readonly", false); $(`#${narrId}`).val(""); $(`#${narrId}`).val(`${response.data.EXS_VALUE} ${response.data.EXS_NART}`); $(`#${amountId}`).val(""); $(`#${amountId}`).val(response.data.EXS_VALUE); $(`#${amountId}`).prop("disabled", false); } if (excessType === "TE") { $(`#${minId}`).val(""); $(`#${minId}`).attr("readonly", "readonly"); $(`#${maxId}`).val(""); $(`#${maxId}`).attr("readonly", "readonly"); $(`#${narrId}`).val(""); } u.getGlobal("excessAmtBlur")(`${amountId}`, `${narrId}`, `${typeId}`, `${minId}`, `${maxId}`); } else { u.growl_error("Error fetching excess data"); } }); /* * Endorsements Pending RI Check */ u.setGlobal("endPendingRiCheck", function (riDetails = []) { var check = false; var riData = riDetails.Any() ? riDetails : u.get_grid_data(u.getGlobal("udwRIGrid")); riData.ForEach(ri => { var allocations = u.parseJson(ri.INS_RI_TTY_ALLOCATION); allocations.ForEach(alloc => { if (alloc.TTA_TTY_TYPE === "FX") { if (alloc.TTA_ALLOC_PERC > 0) { check = true; } } if (alloc.TTA_TTY_TYPE === "SP" || alloc.TTA_TTY_TYPE === "QS" || alloc.TTA_TTY_TYPE === "FO") { if (alloc.TTA_ALLOC_PERC > 0) { if (alloc.TTA_CLOSE_FLAG === "N") { check = true; } } } }); //if (!allocations.Any(a => parseFloat(a.TTA_ALLOC_PERC) == 0)) { // if (allocations.Any(a => // (a.TTA_TTY_TYPE === "FX" && a.TTA_ALLOC_PERC > 0) || // ((a.TTA_TTY_TYPE === "SP" || a.TTA_TTY_TYPE === "QS" || a.TTA_TTY_TYPE === "FO") && a.TTA_CLOSE_FLAG === "N"))) { // check = true; // } //} }); return check; }); // add a badge to motor risk tab indicating no of risks.. u.setGlobal("ShowFleetNumberBadge", function () { const grid = u.getGlobal("vehicleRiskGrid"); const risks = u.get_grid_data(grid); let count = 0; for (let i in risks) { if (risks[i].VEH_STATUS !== "D") { count = count + 1; } } $("#riskdetailBadge").html(count); }); u.setGlobal("showRiskCount", function (risks) { // if (risks.length <= 0) return; var count = risks.length; $("#riskdetailBadge").html(count); }); u.setGlobal("showRICount", function () { var ri = u.get_grid_data(u.getGlobal("udwRIGrid")).Where(x => x.TTH_STATUS !== "D"); var count = ri.length $("#riBadge").html(count); $("#riBadge").removeClass("m-hide"); /** * get claim count and set it on the claim count badge * */ var claimCount = u.get_grid_data(u.getGlobal("udwClaimsGrid")).Where(x => x.CLM_STATUS !== "D")?.length || 0; $("#claimsCountBadge").html(claimCount) /** * get payment count and set it on the payment count badge * */ var paymentCount = u.get_grid_data(u.getGlobal("udwPaymentGrid"))?.length || 0; $("#paymentCountBadge").text(paymentCount); /** * get endorsement count and set it on the payment count badge * */ var endorsementCount = u.get_grid_data(u.getGlobal("udwEndsmntGrid"))?.length || 0; $("#endorsementsCountBadge").html(endorsementCount); }); /*-------------------------------- * RECALCULATE INSURANCE SOURCE *------------------------------**/ u.setGlobal("facOutwardCalUpdate", function () { var sharePremFc = ""; var sharePremBc = ""; var shareSifc = ""; var shareSibc = ""; //var memberSiFc = ""; //var memberSiBc = ""; //var memberPremFc = ""; //var memberPremBc = ""; //var memCommPercFc = ""; //var memCommPercBc = ""; if ($("#POLH_INS_SOURCE").val() === "COL") { if (!u.grid_empty(u.getGlobal("udwCoInsLdrGrid"))) { //policy si var policySiFc = parseFloat($("#POLH_POL_SI_FC").val()); var policySiBc = parseFloat($("#POLH_POL_SI_BC").val()); //policy premium var policyPremiumFc = parseFloat($("#POLH_POL_PREM_FC").val()); var policyPremiumBc = parseFloat($("#POLH_POL_PREM_BC").val()); //obtain leader share const leaderShare = parseFloat($("#CIL_OUR_PERC").val()); $("#CIL_SHARE_SI_FC").val((policySiFc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_SI_BC").val((policySiBc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_PREM_FC").val((policyPremiumFc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_PREM_BC").val((policyPremiumBc * (leaderShare / 100)).toFixed(2)); $("#CIL_MEMBER_PERC").val(100 - leaderShare);//CIL_SHARE_SI_FC shareSifc = (($("#CIL_MEMBER_PERC").val() / 100) * policySiFc); shareSibc = (($("#CIL_MEMBER_PERC").val() / 100) * policySiBc); //sharePremFc = (($("#CIL_MEMBER_PERC").val() / 100) * $("#CIL_SHARE_PREM_FC").val()); sharePremFc = (($("#CIL_MEMBER_PERC").val() / 100) * policyPremiumFc); sharePremBc = (($("#CIL_MEMBER_PERC").val() / 100) * policyPremiumBc); //memberSiFc = (($("#CIL_COMP_PERC").val() / 100) * $("#CIL_SHARE_SI_FC").val()); //memberSiFc = (($("#CIL_COMP_PERC").val() / 100) * policySiFc); //memberSiBc = (($("#CIL_COMP_PERC").val() / 100) * policySiBc); //memberPremFc = (($("#CIL_COMP_PERC").val() / 100) * policyPremiumFc); //memberPremBc = (($("#CIL_COMP_PERC").val() / 100) * policyPremiumBc); //memCommPercFc = (($("#CIL_COMP_COMM_PERC").val() / 100) * memberPremFc); //memCommPercBc = (($("#CIL_COMP_COMM_PERC").val() / 100) * memberPremBc); $("#CIL_MEMBERS_SI_FC").val(shareSifc.toFixed(2)); $("#CIL_MEMBERS_SI_BC").val(shareSibc.toFixed(2)); $("#CIL_MEMBERS_PREM_FC").val(sharePremFc.toFixed(2)); $("#CIL_MEMBERS_PREM_BC").val(sharePremBc.toFixed(2)); //$("#CIL_COMP_SI_FC").val(memberSiFc.toFixed(2)); //$("#CIL_COMP_SI_BC").val(memberSiBc.toFixed(2)); //$("#CIL_COMP_PREM_FC").val(memberPremFc.toFixed(2)); //$("#CIL_COMP_PREM_BC").val(memberPremBc.toFixed(2)); //$("#CIL_COMP_COMM_FC").val(memCommPercFc.toFixed(2)); //$("#CIL_COMP_COMM_BC").val(memCommPercBc.toFixed(2)); var data = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")); data.ForEach(d => { d.CIL_COMP_SI_FC = (parseFloat(d.CIL_COMP_PERC * 0.01) * policySiFc).toFixed(2); d.CIL_COMP_SI_BC = (parseFloat(d.CIL_COMP_PERC * 0.01) * policySiBc).toFixed(2); d.CIL_COMP_PREM_FC = (parseFloat(d.CIL_COMP_PERC * 0.01) * policyPremiumFc).toFixed(2); d.CIL_COMP_PREM_BC = (parseFloat(d.CIL_COMP_PERC * 0.01) * policyPremiumBc).toFixed(2); d.CIL_COMP_COMM_FC = (parseFloat(d.CIL_COMP_COMM_PERC * 0.01) * d.CIL_COMP_PREM_FC).toFixed(2); d.CIL_COMP_COMM_BC = (parseFloat(d.CIL_COMP_COMM_PERC * 0.01) * d.CIL_COMP_PREM_BC).toFixed(2); d.CIL_SHARE_SI_FC = (parseFloat(leaderShare * 0.01) * policySiFc).toFixed(2); d.CIL_SHARE_SI_BC = (parseFloat(leaderShare * 0.01) * policySiBc).toFixed(2); d.CIL_SHARE_PREM_FC = (parseFloat(leaderShare * 0.01) * policyPremiumFc).toFixed(2); d.CIL_SHARE_PREM_BC = (parseFloat(leaderShare * 0.01) * policyPremiumBc).toFixed(2); d.CIL_MEMBERS_SI_FC = (shareSifc).toFixed(2); d.CIL_MEMBERS_SI_BC = (shareSibc).toFixed(2); d.CIL_MEMBERS_PREM_FC = (sharePremFc).toFixed(2); d.CIL_MEMBERS_PREM_FC = (sharePremBc).toFixed(2); }); u.clear_grid_data(u.getGlobal("udwCoInsLdrGrid")); u.grid_populate(u.getGlobal("udwCoInsLdrGrid"), "", data); //u.setGridColumn(u.getGlobal("udwCoInsLdrGrid"), // { // "CIL_SHARE_SI_FC": (policySiFc * (leaderShare / 100)).toFixed(2), // "CIL_SHARE_SI_BC": (policySiBc * (leaderShare / 100)).toFixed(2), // "CIL_SHARE_PREM_FC": (policyPremiumFc * (leaderShare / 100)).toFixed(2), // "CIL_SHARE_PREM_BC": (policyPremiumBc * (leaderShare / 100)).toFixed(2), // "CIL_MEMBERS_SI_FC": shareSifc.toFixed(2), // "CIL_MEMBERS_SI_BC": shareSibc.toFixed(2), // "CIL_MEMBERS_PREM_FC": sharePremFc.toFixed(2), // "CIL_MEMBERS_PREM_BC": sharePremBc.toFixed(2), // "CIL_COMP_SI_FC": memberSiFc.toFixed(2), // "CIL_COMP_SI_BC": memberSiBc.toFixed(2), // "CIL_COMP_PREM_FC": memberPremFc.toFixed(2), // "CIL_COMP_PREM_BC": memberPremBc.toFixed(2), // "CIL_COMP_COMM_FC": memCommPercFc.toFixed(2), // "CIL_COMP_COMM_BC": memCommPercBc.toFixed(2), // }); } } }); /******************************************************************************** * POLICY DOCUMENTATION CHECKLIST FUNCTIONS ********************************************************************************/ u.setGlobal("policyDocuments", { UDW_POL_DOCUMENTATION: [] }); u.setGlobal("renderDocumentation", function (view, document) { if (!document.id) { document.id = u.getGlobal("getDocumentId")(document); } { //////console.log(document); const item = `
${document.POL_DOC_CH_DESC || ""}
`; $(view).append(item); $(`#${document.id}`).data(document); } return document; }); u.setGlobal("resetDocumentationView", function (view) { $(`${view} .removable`).remove(); }); u.setGlobal("getDocumentId", function (document) { return document.POLDOC_CH_SYS_ID || u.randomNumber(); }); u.setGlobal("renderDocumentations", function (view, object) { // Check if object and UDW_POL_DOCUMENTATION are defined and UDW_POL_DOCUMENTATION is an array if (object || Array.isArray(object.UDW_POL_DOCUMENTATION)) { object.UDW_POL_DOCUMENTATION.forEach(d => { if (d) { // Ensure renderDocumentation function is correctly called d = u.getGlobal("renderDocumentation")(view, d); } else { u.growl_info("Encountered undefined document entry in UDW_POL_DOCUMENTATION"); } }); u.setGridHeight(view, 100); } else { u.growl_info("UDW_POL_DOCUMENTATION is not defined or is not an array"); // Uncomment if you want to show an error message // u.growl_error("Documentation could not be found."); } }); u.disableViaElement("#RCOV_RATE_CHANGE", "#RCOV_RATE"); u.disableViaElement("#RCOV_SI_CHANGE", "#RCOV_SI_FC"); u.setGlobal("checkRequiredDocuments", function (policyDocumentation) { let valid = true; if (policyDocumentation) { policyDocumentation.forEach(document => { if (document.POL_DOC_CH_REQD && !document.UDW_POL_DOCS.Any()) { valid = false; } }); } return valid; }); u.setGlobal("renewalProcess", async function (policy) { var renNo = policy.POLH_RENEW_SER_NO; renNo += 1; var date = policy.POLH_POL_END_DATE; const startDate = u.dateFastForward(date, 1, "day"); const endDate = u.dateFastForward(u.subtract(startDate, 1, "d"), 1, "years"); policy.POLH_POL_START_DATE = u.dbDate(startDate); policy.POLH_POL_END_DATE = u.dbDate(endDate); policy.POLH_POL_UW_YEAR = u.getYear(startDate); policy.POLH_POL_DAYS = u.totalDays(policy.POLH_POL_END_DATE, policy.POLH_POL_START_DATE) + 1; policy.POLH_RENEW_SER_NO = renNo; policy.POLH_END_NO = 0; policy.POLH_PREM_BASIS = "FP"; policy.POLH_TXN_STATE = "R"; $("#POLH_POL_START_DATE").val(startDate); $("#POLH_POL_RETRO_DATE").val(startDate); $("#POLH_POL_END_DATE").val(endDate); policy.POLH_POL_RETRO_DATE = u.dbDate(startDate); // set policy level fees to deleted policy.INS_UDW_POL_FEES = u.parseJson(policy.INS_UDW_POL_FEES); policy.INS_UDW_POL_FEES.ForEach(f => { f.POL_FEE_STATUS = "D" }); // set policy level fees to deleted policy.INS_UDW_POL_FEES = u.parseJson(policy.INS_UDW_POL_FEES); policy.INS_UDW_POL_FEES.ForEach(f => { f.POL_FEE_STATUS = "D" }); // defaulting currency rate to prevailing rate; const currencies = await s.getLovCurrencyAsync(); if (currencies && currencies.length) { const polCurrency = currencies.filter(x => x.CODE == policy.POLH_CURRENCY)[0] if (!polCurrency) return u.growInfo(`Prevailing rate for currency ${policy.POLH_CURRENCY} not found, please contact system administrator.`); policy.POLH_CURRENCY_RATE = polCurrency.NAME; } else { u.grow_info(`Prevailing rate for currency ${policy.POLH_CURRENCY} not found, please contact system administrator.`); } return policy; }); u.setGlobal("setChannel", function () { const channel = u.getUserChannelCode(); $("#POLH_CHANNEL_CODE").val(channel); s.check_channel_code(channel, function (result) { if (result.state) { $('input[name="MSC_NAME"]').val(result.name); } }); }); u.setGlobal("policyChanges", false); u.setGlobal("endorsementDifferencesCalculation", function (newPolicy, oldPolicy, endorsementData) { var ed = endorsementData; $scope.oldPolicy = oldPolicy || u.getGlobal("oldPolicy"); var proRata = u.totalDbDateDays(endorsementData["END_TERM_DATE"], endorsementData["END_EFCTV_DATE"]) + 1; var days = $("#POLH_POL_DAYS").val(); var proRataValue = parseFloat(proRata / days); ed.END_PREM_DIFF_FC = ed.END_FLAG === "FC" ? -parseFloat($scope.oldPolicy["POLH_POL_PREM_FC"] || 0) + parseFloat(ed.END_FEE_FC || 0) : parseFloat(newPolicy["POLH_POL_PREM_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_PREM_FC"] || 0) + parseFloat(ed.END_FEE_FC || 0); ed.END_PREM_DIFF_BC = ed.END_FLAG === "FC" ? -parseFloat($scope.oldPolicy["POLH_POL_PREM_BC"] || 0) + parseFloat(ed.END_FEE || 0) : parseFloat(newPolicy["POLH_POL_PREM_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_PREM_BC"] || 0) + parseFloat(ed.END_FEE || 0); ed.END_PREM_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_PREM_DIFF_FC : (parseFloat(ed.END_PREM_DIFF_FC * proRataValue)).toFixed(2); ed.END_PREM_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_PREM_DIFF_BC : (parseFloat(ed.END_PREM_DIFF_BC * proRataValue)).toFixed(2); //obtain commission differences ed.END_COMMSSN_DIFF_FC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_COMM_FC"] || 0) : parseFloat(newPolicy["POLH_POL_COMM_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_COMM_FC"] || 0); ed.END_COMMSSN_DIFF_BC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_COMM_BC"] || 0) : parseFloat(newPolicy["POLH_POL_COMM_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_COMM_BC"] || 0); ed.END_COMMSSN_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COMMSSN_DIFF_FC : (parseFloat(ed.END_COMMSSN_DIFF_FC * proRataValue)).toFixed(2); ed.END_COMMSSN_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COMMSSN_DIFF_BC : (parseFloat(ed.END_COMMSSN_DIFF_BC * proRataValue)).toFixed(2); //obtain fee differences ed.END_FEE_DIFF_FC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_FEE_FC"] || 0) : parseFloat(newPolicy["POLH_FEE_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_FEE_FC"] || 0); ed.END_FEE_DIFF_BC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_FEE_BC"] || 0) : parseFloat(newPolicy["POLH_FEE_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_FEE_BC"] || 0); ed.END_FEE_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_FEE_DIFF_FC : (parseFloat(ed.END_FEE_DIFF_FC * proRataValue)).toFixed(2); ed.END_FEE_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_FEE_DIFF_BC : (parseFloat(ed.END_FEE_DIFF_BC * proRataValue)).toFixed(2); //obtain discount differences ed.END_DISC_DIFF_FC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_DISC_FC"] || 0) : parseFloat(newPolicy["POLH_POL_DISC_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_DISC_FC"] || 0); ed.END_DISC_DIFF_BC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_DISC_BC"] || 0) : parseFloat(newPolicy["POLH_POL_DISC_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_DISC_BC"] || 0); ed.END_DISC_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_DISC_DIFF_FC : (parseFloat(ed.END_DISC_DIFF_FC * proRataValue)).toFixed(2); ed.END_DISC_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_DISC_DIFF_BC : (parseFloat(ed.END_DISC_DIFF_BC * proRataValue)).toFixed(2); //obtain loading differences ed.END_LOAD_DIFF_FC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_LOAD_FC"] || 0) : parseFloat(newPolicy["POLH_POL_LOAD_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_LOAD_FC"] || 0); ed.END_LOAD_DIFF_BC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_POL_LOAD_BC"] || 0) : parseFloat(newPolicy["POLH_POL_LOAD_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_LOAD_BC"] || 0); ed.END_LOAD_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_LOAD_DIFF_FC : (parseFloat(ed.END_LOAD_DIFF_FC * proRataValue)).toFixed(2); ed.END_LOAD_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_LOAD_DIFF_BC : (parseFloat(ed.END_LOAD_DIFF_BC * proRataValue)).toFixed(2); //obtain suminsured differences ed.END_SI_DIFF_FC = parseFloat(newPolicy["POLH_POL_SI_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_SI_FC"] || 0); ed.END_SI_DIFF_BC = parseFloat(newPolicy["POLH_POL_SI_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_POL_SI_BC"] || 0); //ed.END_SI_DIFF_FC = (parseFloat(ed.END_SI_DIFF_FC * proRataValue)).toFixed(2); //ed.END_SI_DIFF_BC = (parseFloat(ed.END_SI_DIFF_BC * proRataValue)).toFixed(2); //obtain coins differences ed.END_COINS_DIFF_FC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_COINS_PREM_FC"] || 0) : parseFloat(newPolicy["POLH_COINS_PREM_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_COINS_PREM_FC"] || 0); ed.END_COINS_DIFF_BC = ed.END_FLAG === "FC" ? - parseFloat($scope.oldPolicy["POLH_COINS_PREM_BC"] || 0) : parseFloat(newPolicy["POLH_COINS_PREM_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_COINS_PREM_BC"] || 0); ed.END_COINS_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COINS_DIFF_FC : (parseFloat(ed.END_COINS_DIFF_FC * proRataValue)).toFixed(2); ed.END_COINS_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COINS_DIFF_BC : (parseFloat(ed.END_COINS_DIFF_BC * proRataValue)).toFixed(2); // coins commission difference ed.END_COINS_COMM_DIFF_FC = ed.END_FLAG == "FC" ? - parseFloat($scope.oldPolicy["POLH_COINS_COM_FC"] || 0) : parseFloat(newPolicy["POLH_COINS_COM_FC"] || 0) - parseFloat($scope.oldPolicy["POLH_COINS_COM_FC"] || 0); ed.END_COINS_COMM_DIFF_BC = ed.END_FLAG == "FC" ? - parseFloat($scope.oldPolicy["POLH_COINS_COM_BC"] || 0) : parseFloat(newPolicy["POLH_COINS_COM_BC"] || 0) - parseFloat($scope.oldPolicy["POLH_COINS_COM_BC"] || 0); ed.END_COINS_COMM_DIFF_FC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COINS_COMM_DIFF_FC : (parseFloat(ed.END_COINS_COMM_DIFF_FC * proRataValue)).toFixed(2); ed.END_COINS_COMM_DIFF_BC = $("#POLH_PREM_BASIS").val() === "FP" ? ed.END_COINS_COMM_DIFF_BC : (parseFloat(ed.END_COINS_COMM_DIFF_BC * proRataValue)).toFixed(2); return ed; }); /* * Undo debit endorsement function */ u.setGlobal("undoDebitEndorsement", function (pol, endorsement) { if (!endorsement) return u.modalInfo("Could not find endorsement information, please make sure the policy is in the endorsed state"); let end = Object.assign({}, endorsement) || {}; end.END_PREM_DIFF_FC = -(parseFloat(pol.POLH_NET_PREM_FC || 0)); end.END_PREM_DIFF_BC = -(parseFloat(pol.POLH_NET_PREM_BC || 0)); end.END_COMMSSN_DIFF_FC = -(parseFloat(pol.POLH_POL_COMM_FC || 0)); end.END_COMMSSN_DIFF_BC = -(parseFloat(pol.POLH_POL_COMM_BC || 0)); end.END_ADDON_BENEFIT_DIFF_FC = -(parseFloat(pol.POLH_ADDON_BENEFIT_FC || 0)); end.END_ADDON_BENEFIT_DIFF_BC = -(parseFloat(pol.POLH_ADDON_BENEFIT_BC || 0)); end.END_FEE_DIFF_FC = -(parseFloat(pol.POLH_FEE_FC || 0)); end.END_FEE_DIFF_BC = -(parseFloat(pol.POLH_FEE_BC || 0)); end.END_DISC_DIFF_FC = -(parseFloat(pol.POLH_POL_DISC_FC || 0)); end.END_DISC_DIFF_BC = -(parseFloat(pol.POLH_POL_DISC_BC || 0)); end.END_LOAD_DIFF_FC = -(parseFloat(pol.POLH_POL_LOAD_FC || 0)); end.END_LOAD_DIFF_BC = -(parseFloat(pol.POLH_POL_LOAD_BC || 0)); end.END_SI_DIFF_FC = -(parseFloat(pol.POLH_POL_SI_FC || 0)); end.END_SI_DIFF_BC = -(parseFloat(pol.POLH_POL_SI_BC || 0)); end.END_COINS_DIFF_FC = -(parseFloat(pol.POLH_COINS_PREM_FC || 0)); end.END_COINS_DIFF_BC = -(parseFloat(pol.POLH_COINS_PREM_BC || 0)); end.END_COINS_COMM_DIFF_FC = -(pol.POLH_COINS_COM_FC || 0); end.END_COINS_COMM_DIFF_BC = -(pol.POLH_COINS_COM_BC || 0); //console.log(end.UDW_RISK_ENDSMNT_DTLS); end.UDW_RISK_ENDSMNT_DTLS = []; if (pol.INS_UWD_VEHICLE_RISK) { //Motor pol.INS_UWD_VEHICLE_RISK = u.parseJson(pol.INS_UWD_VEHICLE_RISK || "[]"); let polRisk = pol.INS_UWD_VEHICLE_RISK || []; polRisk.ForEach(x => { x.VEH_POLH_END_NO = end.END_NO; x.INS_UDW_VEHICLE_FEES.ForEach(f => { f.VEH_FEE_END_NO = end.END_NO; }); x.INS_UWD_RISK_COVERS.ForEach(c => { c.RPCOV_END_NO = end.END_NO; }); end.UDW_RISK_ENDSMNT_DTLS.Add({ RED_VEH_SYS_ID: x.VEH_SYS_ID, RED_POL_SYS_ID: pol.POLH_SYS_ID, RED_END_NO: pol.POLH_END_NO, RED_ADDON_BENEFIT_FC: - parseFloat(x.VEH_ADDON_BENEFIT_FC || 0), RED_ADDON_BENEFIT_BC: - parseFloat(x.VEH_ADDON_BENEFIT_BC || 0), RED_SI_DIFF_FC: - parseFloat(x.VEH_SI_FC || 0), RED_SI_DIFF_BC: - parseFloat(x.VEH_SI_BC || 0), RED_PREM_DIFF_FC: - parseFloat(x.VEH_TOT_PREM_FC || 0), RED_PREM_DIFF_BC: - parseFloat(x.VEH_TOT_PREM_BC || 0), RED_FEE_DIFF_FC: - parseFloat(x.VEH_FEES_FC || 0), RED_FEE_DIFF_BC: - parseFloat(x.VEH_FEES_BC || 0), RED_LOAD_DIFF_FC: - parseFloat(x.VEH_LOAD_FC || 0), RED_LOAD_DIFF_BC: - parseFloat(x.VEH_LOAD_BC || 0), RED_DISC_DIFF_FC: - parseFloat(x.VEH_DISC_FC || 0), RED_DISC_DIFF_BC: - parseFloat(x.VEH_DISC_BC || 0), RED_CRTE_BY: u.getUserCode(), RED_STATUS: "U" }); }); } /*------------------------------- * CO-INSURANCE LEADER ENDORSEMENT *------------------------------*/ u.getGlobal("CoInsuranceLeaderUndoDebitEndorsment")(pol, end); /*------------------------------- * TREATY SHARE ENDORSEMENT *------------------------------*/ u.getGlobal("TreatyShareUndoDebitEndorsement")(pol, end); u.setGlobal("policyChanges", true); pol.MS_UDW_ENDORSEMENTS = pol.MS_UDW_ENDORSEMENTS.Where(x => x.END_TXN_STATE !== "O"); pol.MS_UDW_ENDORSEMENTS.Add(end); return pol; }); /* * Undo debit endorsement function for Co-Insurance Leader */ u.setGlobal("CoInsuranceLeaderUndoDebitEndorsment", function (pol, endorsement) { endorsement.MS_COL_ENDORSEMENT = (typeof (endorsement.MS_COL_ENDORSEMENT) === "string" ? JSON.parse(endorsement.MS_COL_ENDORSEMENT || "[]") : endorsement.MS_COL_ENDORSEMENT) || []; endorsement.MS_COL_ENDORSEMENT = endorsement.MS_COL_ENDORSEMENT.Any() ? endorsement.MS_COL_ENDORSEMENT.filter(b => b.CED_SYS_ID) : []; endorsement.MS_COL_ENDORSEMENT.ForEach(x => { x.CED_STATUS = "X" }); pol.INS_COINS_LEADER = (typeof (pol.INS_COINS_LEADER) === "string" ? JSON.parse(pol.INS_COINS_LEADER || "[]") : pol.INS_COINS_LEADER) || []; pol.INS_COINS_LEADER.ForEach(x => { endorsement.MS_COL_ENDORSEMENT.Add({ CED_POL_SYS_ID: pol.POLH_SYS_ID, CED_CIL_SYS_ID: x.CIL_SYS_ID, CED_END_NO: pol.POLH_END_NO, CED_RNW_NO: pol.POLH_RNW_NO, CED_COMP_CODE: x.CIL_COMP_CODE, CED_PRE_COMP_PERC: x.CIL_COMP_PERC, CED_NOW_COMP_PERC: 0, CED_DIF_COMP_PERC: -parseFloat(x.CIL_COMP_PERC || 0), CED_PRE_COMP_SI_FC: x.CIL_COMP_SI_FC, CED_NOW_COMP_SI_FC: 0, CED_DIF_COMP_SI_FC: - parseFloat(x.CIL_COMP_SI_FC || 0), CED_PRE_COMP_SI_BC: x.CIL_COMP_SI_BC, CED_NOW_COMP_SI_BC: 0, CED_DIF_COMP_SI_BC: - parseFloat(x.CIL_COMP_SI_BC || 0), CED_PRE_COMP_PREM_FC: x.CIL_COMP_PREM_FC, CED_NOW_COMP_PREM_FC: 0, CED_DIF_COMP_PREM_FC: - parseFloat(x.CIL_COMP_PREM_FC || 0), CED_PRE_COMP_PREM_BC: x.CIL_COMP_PREM_BC, CED_NOW_COMP_PREM_BC: 0, CED_DIF_COMP_PREM_BC: - parseFloat(x.CIL_COMP_PREM_BC || 0), CED_PRE_COMP_COMM_FC: x.CIL_COMP_COMM_FC, CED_NOW_COMP_COMM_FC: 0, CED_DIF_COMP_COMM_FC: - parseFloat(x.CIL_COMP_COMM_FC || 0), CED_PRE_COMP_COMM_BC: x.CIL_COMP_COMM_BC, CED_NOW_COMP_COMM_BC: 0, CED_DIF_COMP_COMM_BC: - parseFloat(x.CIL_COMP_COMM_BC || 0), CED_CRTE_BY: u.getUserCode(), CED_STATUS: "U" }); }); }); /* * Undo debit endorsement function for treaty share */ u.setGlobal("TreatyShareUndoDebitEndorsement", function (pol, endorsement) { endorsement.MS_RI_SHARE_ENDORSEMENT = (typeof (endorsement.MS_RI_SHARE_ENDORSEMENT) === "string" ? JSON.parse(endorsement.MS_RI_SHARE_ENDORSEMENT || "[]") : endorsement.MS_RI_SHARE_ENDORSEMENT) || []; endorsement.MS_RI_SHARE_ENDORSEMENT = endorsement.MS_RI_SHARE_ENDORSEMENT.Any() ? endorsement.MS_RI_SHARE_ENDORSEMENT.filter(b => b.TSE_SYS_ID) : []; endorsement.MS_RI_SHARE_ENDORSEMENT.ForEach(x => { x.TSE_STATUS = "X" }); let oldTreatySharedTemp = []; pol.INS_RI_TTY_HEAD = (typeof (pol.INS_RI_TTY_HEAD) === "string" ? JSON.parse(pol.INS_RI_TTY_HEAD || "[]") : pol.INS_RI_TTY_HEAD) || []; pol.INS_RI_TTY_HEAD.ForEach(h => { h.INS_RI_TTY_ALLOCATION = (typeof (h.INS_RI_TTY_ALLOCATION) === "string" ? JSON.parse(h.INS_RI_TTY_ALLOCATION || "[]") : h.INS_RI_TTY_ALLOCATION) || []; h.INS_RI_TTY_ALLOCATION.ForEach(g => { g.INS_RI_TTY_SHARE = (typeof (g.INS_RI_TTY_SHARE) === "string" ? JSON.parse(g.INS_RI_TTY_SHARE || "[]") : g.INS_RI_TTY_SHARE) || []; g.INS_RI_TTY_SHARE.ForEach(s => { oldTreatySharedTemp.Add(s); }); }); }); oldTreatySharedTemp.ForEach(x => { endorsement.MS_RI_SHARE_ENDORSEMENT.Add({ TSE_POL_SYS_ID: pol.POLH_SYS_ID || endorsement.END_POL_SYS_ID, TSE_END_NO: endorsement.END_NO, TSE_RNW_NO: x.TTS_RNW_NO || endorsement.END_RNW_NO, TSE_TTS_SYS_ID: x.TTS_SYS_ID, TSE_TTA_SYS_ID: x.TTS_TTA_SYS_ID, TSE_RI_COMP: x.TTS_RI_COMP, TSE_TTY_TYPE: x.TTS_TTY_TYPE, TSE_PRE_SHARE_PERC: x.TTS_SHARE_PERC || 0, TSE_NOW_SHARE_PERC: 0, TSE_DIF_SHARE_PERC: - parseFloat(x.TTS_SHARE_PERC || 0), TSE_PRE_ALLOC_PERC: x.TTS_ALLOC_PERC || 0, TSE_NOW_ALLOC_PERC: 0, TSE_DIF_ALLOC_PERC: - parseFloat(x.TTS_ALLOC_PERC || 0), TSE_PRE_SHARE_SI_FC: x.TTS_SHARE_SI_FC || 0, TSE_NOW_SHARE_SI_FC: 0, TSE_DIF_SHARE_SI_FC: - parseFloat(x.TTS_SHARE_SI_FC || 0), TSE_PRE_SHARE_SI_BC: x.TTS_SHARE_SI_BC || 0, TSE_NOW_SHARE_SI_BC: 0, TSE_DIF_SHARE_SI_BC: - parseFloat(x.TTS_SHARE_SI_BC || 0), TSE_PRE_SHARE_PREM_FC: x.TTS_SHARE_PREM_FC || 0, TSE_NOW_SHARE_PREM_FC: 0, TSE_DIF_SHARE_PREM_FC: - parseFloat(x.TTS_SHARE_PREM_FC || 0), TSE_PRE_SHARE_PREM_BC: x.TTS_SHARE_PREM_BC || 0, TSE_NOW_SHARE_PREM_BC: 0, TSE_DIF_SHARE_PREM_BC: - parseFloat(x.TTS_SHARE_PREM_BC || 0), TSE_PRE_RI_COMM_PERC: x.TTS_RI_COMM_PERC || 0, TSE_NOW_RI_COMM_PERC: 0, TSE_DIF_RI_COMM_PERC: - parseFloat(x.TTS_RI_COMM_PERC || 0), TSE_PRE_RI_COMM_FC: x.TTS_RI_COMM_FC || 0, TSE_NOW_RI_COMM_FC: 0, TSE_DIF_RI_COMM_FC: - parseFloat(x.TTS_RI_COMM_FC || 0), TSE_PRE_RI_COMM_BC: x.TTS_RI_COMM_BC || 0, TSE_NOW_RI_COMM_BC: 0, TSE_DIF_RI_COMM_BC: - parseFloat(x.TTS_RI_COMM_BC || 0), TSE_PRE_RI_TAX_PERC: x.TTS_RI_TAX_PERC || 0, TSE_NOW_RI_TAX_PERC: 0, TSE_DIF_RI_TAX_PERC: - parseFloat(x.TTS_RI_TAX_PERC || 0), TSE_PRE_TAX_BC: x.TTS_TAX_BC || 0, TSE_NOW_TAX_BC: 0, TSE_DIF_TAX_BC: - parseFloat(x.TTS_TAX_BC || 0), TSE_PRE_TAX_FC: x.TTS_TAX_FC || 0, TSE_NOW_TAX_FC: 0, TSE_DIF_TAX_FC: - parseFloat(x.TTS_TAX_FC || 0), TSE_CRTE_BY: u.getUserCode(), TSE_STATUS: "U" }); }); }); /** * Validates if there is FAC placed and closed on the RI of a policy * @param {Array} riDetails - An optional array of RI details. * @returns {boolean} True if any RI allocations meet the conditions, otherwise false. */ u.setGlobal("riFacPlacedCheck", function (riDetails = []) { var check = false; var riData = riDetails.Any() ? riDetails : u.get_grid_data(u.getGlobal("udwRIGrid")); riData.ForEach(ri => { var allocations = u.parseJson(ri.INS_RI_TTY_ALLOCATION); check = allocations.Any(alloc => alloc.TTA_TTY_TYPE === "FO" && parseFloat(alloc.TTA_ALLOC_PERC || 0) > 0 && alloc.TTA_CLOSE_FLAG === "Y"); }); return check; }); u.setGlobal("endorsementRIUpdates", function(endNo) { var riHead = u.get_grid_data(u.getGlobal("udwRIGrid")); riHead.ForEach(ri => { ri.TTH_POLH_END_NO = endNo; ri.INS_RI_TTY_ALLOCATION = u.parseJson(ri.INS_RI_TTY_ALLOCATION); ri.INS_RI_TTY_ALLOCATION.ForEach(alloc => { alloc.TTA_POLH_END_NO = endNo; alloc.TTA_CLOSE_FLAG = "N"; alloc.INS_RI_TTY_SHARE = u.parseJson(alloc.INS_RI_TTY_SHARE); alloc.INS_RI_TTY_SHARE.ForEach(share => { share.TTS_END_NO = endNo; }); }); }); u.clear_grid_data(u.getGlobal("udwRIGrid")); u.grid_populate(u.getGlobal("udwRIGrid"), "", riHead); }); /** * Validates if the policy is a coinsurance policy and if the coinsurance details are valid. */ u.setGlobal("CoinsurancePremiumValidations", function (policy) { switch (policy.POLH_INS_SOURCE) { case 'FIN': case 'COM': { var source = policy.POLH_INS_SOURCE === 'FIN' ? 'Facultative Inward' : 'Coinsurance Member'; var inward = (policy.INS_RI_FAC_INWARD || []).find(f => "AU".includes(f.FINW_STATUS)); // Make sure we have the inward details. if (!inward) { u.growl_warning(`${source} details not found`); return false; } // Make sure we have the inward share percentage. if (inward.FINW_SHARE_PERC == null) { u.growl_warning(`${source} share percentage is not set`); return false; } if (inward.FINW_PREM_FC == null) { u.growl_warning(`${source} premium is not set`); return false; } if (inward.FINW_SI_FC == null) { u.growl_warning(`${source} sum insured is not set`); return false; } if (policy.POLH_COINS_PREM_FC != inward.FINW_PREM_FC) { u.growl_warning(`Policy premium of ${policy.POLH_COINS_PREM_FC} does not match ${source} premium of ${inward.FINW_PREM_FC}.` + ` Click recalculate premium on the premium tab and try again, check ${source} details or contact admin.`); return false; } return true; } break; case 'COL': { var leader = (policy.INS_COINS_LEADER || []).find(f => "AU".includes(f.CIL_STATUS)); if (!leader) { u.growl_warning("Coinsurance leader details not found."); return false; } //if (leader.CIL_POL_PREM_FC == null) { u.growl_warning("Coinsurance leader premium is not set"); return false; } if (leader.CIL_OUR_PERC == null) { u.growl_warning("Coinsurance leader share percentage is not set"); return false; } if (policy.POLH_COINS_PREM_FC != leader.CIL_SHARE_PREM_FC) { u.growl_warning(`Coinsurance leader share premium ${leader.CIL_SHARE_PREM_FC} does not match policy coinsurance premium of ${policy.POLH_COINS_PREM_FC}`); return false; } //if (policy.POLH_POL_PREM_FC != leader.CIL_POL_PREM_FC) { // u.growl_warning(`Policy premium on coinsurance leader form of ${leader.CIL_POL_PREM_FC} does not match policy premium of ${policy.POLH_POL_PREM_FC}`); //return false; //} return true; } break; default: return true; } return true; }); })(window.jQuery, window.service, window.utility, {}); (function($,s,u,$scope) { $(function() { //Policy Documents Modal $("#btnViewDocuments").on("click", function () { $("#PolicyDocsModal").modal(); }); //Client Balance Enquiry $("#btnCustomer").on("click", function () { const CleintCode = $("#POLH_CUST_CODE").val(); const reportName = "rptClientStatementTxn"; window.open(`${s.app}ClientStatement/Index?reportName=${reportName}&CleintCode=${CleintCode}`, "result", "toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); }); //Endorsement Schedule $("#btn_endorsement_Print").on("click", function () { const endorsement = u.getRow(u.getSelRow(u.getGlobal("udwEndsmntGrid")), u.getGlobal("udwEndsmntGrid")); //get parameters const polState = $("#POLH_TXN_STATE").val(); const endNumber = endorsement.END_NO; const polSysID = endorsement.END_POL_SYS_ID; const renewalNo = endorsement.END_RNW_NO || 0; const urlLogo = `${s.app}Content/Images/logos/LogoStar.jpg`; const urlSignature = ""; const reportName = "EndorsementSchedule"; window.open(`${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); }); /** * Method to check if user has rights to approve */ $scope.doesUserHaveRights = async function () { let hasRights = false; let limits = []; const productCode = $("#POLH_SUB_CLASS_CODE").val(); var response = await s.getUserLimitsAsync(u.getUserId()); if (!response.state) return u.growl_error(response.message); if (response.data.length <= 0) { u.modalWarning( "Your account does not have functional groups and rights setup correctly. Please contact system admin"); return 0; } response.data.ForEach(group => { if (group.MS_INS_FUNCTIONAL_GROUP.MS_UDW_RI_USRS_LIMIT.Any(x => (x.URL_PRINT_UNAPPROVED_YN == "Y") && x.URL_PROD_CODE == productCode)) { hasRights = true; } }); return hasRights; }; //Policy Documents $("#btnRunReports").on("click", function () { const hasRights = $scope.doesUserHaveRights(); //get parameters var polReports = $("#Viewpolicyreports").val(); var poltxnst = $("#POLH_TXN_STATE").val(); const polState = $("#POLH_TXN_STATE").val(); const endNumber = $("#POLH_END_NO").val(); const polSysID = $("#POLH_SYS_ID").val(); const renewalNo = $("#POLH_RENEW_SER_NO").val(); const urlLogo = `${s.app}Content/Images/logos/LogoStar.jpg`; const urlSignature = ""; $scope.runReport = () => { if (!u.field_empty("#POLH_SYS_ID")) { window.open( `${s.app}/staticreport/GetPolicyScheduleAsync?policyId=${polSysID}&endNo=${endNumber}&renewalNo=${renewalNo}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes,popup=yes"); } else { u.modalWarning("Policy Not Saved"); } } if (polReports === "") { u.growl_warning("Nothing selected, Please select to view report"); } //Policy Debit or Credit Note else if (polReports === "DebitCredit") { if (poltxnst == "P" || poltxnst == "E" || poltxnst == "X") { if (!u.field_empty("#POLH_SYS_ID")) { const reportName = "DebiteCrediteNotes"; window.open(`${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } else { u.modalWarning("There is no Debit/Credit to view"); } } else { u.modalWarning("Policy is not Approved!"); } } else if (polReports === "DebitCreditTrial") { if (!u.field_empty("#POLH_SYS_ID")) { window.open( `${s.app}/staticreport/GetAccountTxnDocument?policyId=${polSysID}&endNo=${endNumber}&renewalNo=${renewalNo}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes,popup=yes"); } else { u.modalWarning("There is no Debit/Credit to view"); } } //Policy Invoice else if (polReports === "Invoice") { if (poltxnst == "P") { u.modalWarning("Policy Approved, You cannot Print Invoice, Print Debit or Credit Note instead!"); } else { //get report name const reportName = "PremiumInvoice"; window.open(`${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } //Endorsement else if (polReports === "Endorsement") { if (poltxnst == "P" || poltxnst == "E") { if (!u.field_empty("#POLH_SYS_ID")) { //get report name const reportName = "EndorsementSchedule"; window.open(`${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } else { u.modalWarning("There is no Endorsement to view"); } } else { u.modalWarning("Policy is not Approved!"); } } //Motor Certificate Schedule else if (polReports === "Certificate") { if (poltxnst == "P" || poltxnst == "E" || hasRights) { if (!u.field_empty("#POLH_SYS_ID")) { //get report name const vehicleCount = u.get_grid_data(u.getGlobal("vehicleRiskGrid")).Count(); const reportName = "motorCertificate"; //if (!u.form_validation("#policyDocsForm")) return u.growl_info("All fields are required"); window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID }&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState }&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); //window.open( // `${s.app}CrystalReports/Index?FromVehSysID=${$("#fromVehId").val()}&ToVehSysID=${$("#toVehId").val()}&EndNo=${endNumber}&RenewNo=${renewalNo}&reportName=${reportName}`, // "result", // "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } else { u.modalWarning("There is no Motor Certificate"); } } else { u.modalWarning("Policy is not Approved!"); } } else if (polReports === "policySchedule") { if (!u.field_empty("#POLH_SYS_ID")) { if ($("#POLH_CLASS_CODE").val() === "9000") { let reportName = ""; //S=Shegen Normal //G=Shegen-German //N = Non-Shegen let travelPlan = $("#TRAH_COVERAGE").val(); if (!travelPlan) { u.modalWarning("There is no Schedule to view"); } //else if (poltxnst == "P") { if (travelPlan == "G") { reportName = "TravelShegenGerman"; //return $scope.runReport(); } if (travelPlan == "S") { reportName = "TravelShegenNormal"; //return $scope.runReport(); } if (travelPlan == "N") { reportName = "TravelShegenNormal"; //return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID }&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState }&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } else { window.open( `${s.app}/staticreport/GetPolicyScheduleAsync?policyId=${polSysID}&endNo=${endNumber}&renewalNo=${renewalNo}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes,popup=yes"); } } else { u.modalWarning("Policy Not Saved"); } } //Policy Schedule else if (polReports == "Schedule") { var subClass = $("#POLH_SUB_CLASS_CODE").val(); var COB = $("#POLH_CLASS_CODE").val(); if (!u.field_empty("#POLH_SYS_ID")) { // determine Product to run documents switch (COB) { //Motor case "6000": { //get report name const vehicleCount = u.get_grid_data(u.getGlobal("vehicleRiskGrid")).Count(); let reportName = ""; if (vehicleCount <= 2) { reportName = "motorSchedule"; //return $scope.runReport(); } else if (vehicleCount > 2) { //reportName = "motorFleetSchedule"; return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); //window.open( // `${s.app}StaticReport/MotorScheduleSingle?policyNo=${$("#POLH_DISPLAY_NO").val()}&endNo=${endNumber}&renewalNo=${renewalNo}`, // "result", // "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } break; //Fire case "3000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Fire and allied perils if (subClass == "3001") { reportName = "FireSchedule"; //return $scope.runReport(); } //Combined Fire & Burglary if (subClass == "3002") { reportName = "FireSchedule"; //return $scope.runReport(); } // Assets All Risks if (subClass == "3003") { reportName = "AssetAllRiskSchedule"; //return $scope.runReport(); } // Home Owners if (subClass == "3004") { reportName = "HomeOwnersSchedule"; //return $scope.runReport(); } if (subClass == "3005") { reportName = "StarStockAssure"; } if (subClass == "3007") { reportName = "HomeOwnersXtraSchedule"; } if (subClass == "3006") { reportName = "StoreBanBo"; } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; //General Accident case "8000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Cash in Trasit and allied perils if (subClass == "8001") { reportName = "CashInTransitSchedule"; //return $scope.runReport(); } //Fidelity Guarante if (subClass == "8002") { reportName = "FidelityGuarante"; //return $scope.runReport(); } // Burglary & Housebreaking if (subClass == "8003") { reportName = "Prof.Indemnity"; //return $scope.runReport(); } // Combined Fire and Burglary ==-----== // if (subClass == "8004") { reportName = "BankersIndemnity"; //return $scope.runReport(); } // Bankers Indemnity if (subClass == "8009") { reportName = "BankersIndemnity"; //return $scope.runReport(); } // Goods In Transit if (subClass == "8010") { reportName = "GoodsInTransit"; //return $scope.runReport(); } // Hotel/Guest House if (subClass == "8012") { reportName = "HomeOwnersSchedule"; //return $scope.runReport(); } //Medical Insurance if (subClass == "8014") { reportName = "HomeOwnersSchedule"; //return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; //Liability case "4000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Public Liability if (subClass == "4001") { reportName = "PublicLibSchedule"; //return $scope.runReport(); } //Workmen's Compensation if (subClass == "4002") { reportName = "WorkmenCompensation"; //return $scope.runReport(); } // Product Liability if (subClass == "4003") { reportName = "PublicLibSchedule"; //return $scope.runReport(); } // Directors and Officers if (subClass == "4004") { reportName = "PublicLibSchedule"; //return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; //Travel case "9000": { let reportName = ""; //S=Shegen Normal //G=Shegen-German //N = Non-Shegen var travelPlan = $("#TRAH_COVERAGE").val(); if (!travelPlan) { u.modalWarning("There is no Schedule to view"); } //else if (poltxnst == "P") { if (travelPlan == "G") { reportName = "TravelShegenGerman"; //return $scope.runReport(); } if (travelPlan == "S") { reportName = "TravelShegenNormal"; //return $scope.runReport(); } if (travelPlan == "N") { reportName = "TravelShegenNormal"; //return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID }&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState }&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); ////} ////else { //// u.modalWarning("You cannot View Travel Certificate because the Policy is not Approved"); ////} } break; //Engineering case "2000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Contractors All Risk if (subClass == "2001") { reportName = "EngCAR"; //return $scope.runReport(); } //Erection All Risks if (subClass == "2002") { reportName = "EngEAR"; //return $scope.runReport(); } //Plant & Machinery if (subClass == "2003") { reportName = "PlantandMachinery"; //return $scope.runReport(); } // Loss of Profit(LOP) if (subClass == "2004") { reportName = "LossOfProfit"; //return $scope.runReport(); } // Electronics Equipments Insurance if (subClass == "2006") { reportName = "ElectronicEquipmentIns"; //return $scope.runReport(); } // Boiler & Pressure Plants if (subClass == "2007") { reportName = "BoilerNPressurePlants"; //return $scope.runReport(); } // Deterioration of Stock if (subClass == "2008") { reportName = "DeteriorationOfStock"; //return $scope.runReport(); } // Machiery Break Down if (subClass == "2009") { reportName = "MachineryBreakdown"; //return $scope.runReport(); } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo }&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; //Personal Accident case "1000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Individual PA if (subClass == "1001") { reportName = "PAIndividual"; } //Group PA - Named if (subClass == "1002") { reportName = "PAGroupNamed"; } //Group PA - Family if (subClass == "1003") { reportName = "PAGroupNamed"; } // Group PA - Un-Named if (subClass == "1004") { reportName = "PAGroupUnNamed"; } // PA - Bolt if (subClass == "1005") { reportName = "BoltTaxifySchedule"; } if (subClass == "1007") { reportName = "StarPersonalGuard"; } if (subClass == "1008") { reportName = "StarPersonalGuard"; } if (subClass == "1009") { reportName = "StarPersonalGuard"; } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${ endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; //Marine case "5000": { let reportName = ""; if (!subClass) { u.modalWarning("There is no Schedule to view"); } else { //Marine Open if (subClass == "5004") { reportName = "marineOpenDeclaration"; } //Marine Open Individual if (subClass == "5003") { reportName = "marineOpenIndividual"; } //Marine Hall if (subClass == "5005") { reportName = "marineHall"; } window.open( `${s.app}PolicySchedule/Index?product=${reportName}&polSysID=${polSysID}&endNumber=${endNumber}&renewalNo=${renewalNo}&username=Admin&polState=${polState}&urlLogo=${urlLogo}&urlLogo=${urlSignature}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } } break; } } else { u.modalWarning("There is no Schedule to view"); } } // motor fleet schedule else if (polReports == "MotorFleetSchedule") { let polNo = $("#POLH_DISPLAY_NO").val(); window.open( `${s.app}StaticReport/FleetSchedule?policyNo=${polNo}&endNo=${endNumber}&renewalNo=${renewalNo}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); //window.open( // `${s.app}CrystalReports/MotorFleetSchedule?PolId=${polSysID}&EndNo=${endNumber}&RenewNo=${renewalNo}`, // "result", // "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } // motor fleet certificate else if (polReports == "MotorFleetCertificate") { window.open( `${s.app}StaticReport/FleetCertificate?policyId=${polSysID}&endNo=${endNumber}&renewalNo=${renewalNo}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); } }); //$("#Viewpolicyreports").change(() => { // if ($("#Viewpolicyreports").val() === "Certificate") { // $("#vehIdsDiv").removeClass("m-hide"); // $("#fromVehId").attr("required", "required"); // $("#toVehId").attr("required", "required"); // $("#fromVehId").prop("disabled", false); // $("#toVehId").prop("disabled", false); // $(".veh-removable").remove(); // u.get_grid_data(u.getGlobal("vehicleRiskGrid")).ForEach(v => { // $("#fromVehId").append(``); // $("#toVehId").append(``); // }); // } else { // $("#vehIdsDiv").addClass("m-hide"); // $("#fromVehId").prop("required", false); // $("#toVehId").prop("required", false); // } //}); }); })(window.jQuery, window.service, window.utility, {}); (function (s, u) { s.add({ getClausesLovSearch: function (product, success, error) { u.get(`${this.backend}api/conditionsclauses/productcclov_search/` + product, success, error); }, getClausesLov: function (success, error) { u.get(`${this.backend}api/conditionsclauses/lov`, success, error); }, checkApprovalRights: function (json, success, error) { u.post(`${this.backend}api/userrightscheck/approval`, json, success, error); }, getProductClauses: function (code, success, error) { u.get(`${this.backend}api/product/clauses/${code}`, success, error); }, savePolicyAsync: async function (data) { return await u.postAsync(`${this.app}api/underwriting/save`, data); }, saveRawPolicyAsync: async function (data) { return await u.postAsync(`${this.app}api/underwriting/policy/save`, data); }, searchPolicyAsync: async function (query, classCode) { return await u.getAsync(`${this.app}api/underwriting/search/${query}/${classCode}`); }, confirmPolicyAsync: async function (data) { return await u.postAsync(`${this.app}api/confirmation/confirmpolicy`, data); }, getSequenceAsync: async function (name) { return await u.postAsync(`${this.app}api/getSequenceNo`, { seq: [{ oraSeqName: name }] }); }, getProductFeesAsync: async function (data) { return await u.postAsync(`${this.app}api/productriskfee/RiskFees`, data); }, getRiskDefaulCoversAsync: async function (data) { return await u.postAsync(`${this.app}api/RisksCovers/defaultCovers`, data); }, unConfirm_Motor: function (polId, endNo, userCode, success, error) { u.get(`${this.backend}api/Confirmation/unconfirm/${polId}/${endNo}/${userCode}`, success, error); }, getPolicyHstoryAsync: async function (polId, endNo, rnwNo) { return await u.getAsync(`${this.app}api/underwriting/policy/history/${polId}/${endNo}/${rnwNo}`); }, getUnderwritingWorkflowUsers: function (role, success, error) { u.get(`${this.wf}wf/userroles/users/${role}`, success, error); }, getUnderwritingProcessCommands: function (processId, userCode, success, error) { u.get(`${this.wf}wf/process/commands/${processId}/${userCode}`, success, error); }, unConfirmPolicy: function (polId, endNo, renewNo, userCode, success, error) { u.get(`${this.backend}api/Confirmation/unconfirm/${polId}/${endNo}/${renewNo}/${userCode}`, success, error); }, getPolicyPayments: function (id, success, error) { u.get(`${this.backend}api/underwriting/policypayment/${id}`, success, error); }, getPolicyClaims: function (id, success, error) { u.get(`${this.backend}api/underwriting/policyclaims/${id}`, success, error); }, queryOpenEntry: function (query, success, error) { u.get(`${this.backend}api/policy/receiptsearch/${query}`, success, error); }, paymentNotification: function (data, success, error) { u.post(`${this.backend}api/epayment/notification`, data, success, error); }, //get_lov_sub_intermediary_Type: function (query, success, error) { // u.get(this.backend + "api/intermediary/lov/" + query, success, error); //}, //get_lov_sub_intermediary_Type: function (query, success, error) { // let json = {}; // /**---------------------------------------------------------------------- // * IF USER IS NOT RESTRICTED THE ALLOW USER TO VIEW ALL POLICIES OTHERWISE // * FILTER ONLY THOSE THAT BELONG TO THE SPECIFIC CHANNEL CODE.. // *--------------------------------------------------------------------- **/ // let channelCode = ""; // if (u.isUserRestricted()) { channelCode = u.getUserChannelCode() }; // json.CHANNELCODE = channelCode; // json.QUERY = query; // u.post(this.backend + "api/intermediary/chlov", json, success, error); //}, get_sales_personnel_lov: function (success, error) { u.get(this.backend + "api/salepersonnel/lov", success, error); }, check_sales_personnel_code: function (code, success, error) { u.get(this.backend + "api/salepersonnel/check/" + code, success, error); }, get_lov_sub_intermediary_Type: function (query, success, error) { /**---------------------------------------------------------------------- * IF USER IS NOT RESTRICTED THE ALLOW USER TO VIEW ALL POLICIES OTHERWISE * FILTER ONLY THOSE THAT BELONG TO THE SPECIFIC CHANNEL CODE.. *--------------------------------------------------------------------- **/ let json = { CHANNELCODE: u.isUserRestricted() ? u.getUserChannelCode() : "", QUERY: query }; u.post(this.backend + "api/intermediary/chlov", json, success, error); }, get_lov_sub_intermediary_With_Commission: function (query, success, error) { /**---------------------------------------------------------------------- * IF USER IS NOT RESTRICTED THE ALLOW USER TO VIEW ALL POLICIES OTHERWISE * FILTER ONLY THOSE THAT BELONG TO THE SPECIFIC CHANNEL CODE.. *--------------------------------------------------------------------- **/ let json = { CHANNELCODE: u.isUserRestricted() ? u.getUserChannelCode() : "", QUERY: query, SUBCLASS: $("#POLH_SUB_CLASS_CODE").val(), SOURCE: $("#POLH_BIZ_SOURCE").val() }; u.post(this.backend + "api/intermediary/lov/withCommission", json, success, error); }, get_compulsoryFeeAsync: async function (code, endNo, rnwNo) { return await u.getAsync(`${this.app}api/CompulsoryFee/${code}`); }, getShortPeriodAsync: async function (subClassCode, days) { return await u.getAsync(`${this.app}api/shortperiod/${subClassCode}/${days}`); }, get_intermediary: function (code, success, error) { u.get(this.backend + "api/intermediary/" + code, success, error); }, get_intermediaryAsync: async function (code) { return await u.getAsync(`${this.app}api/intermediary/${code}`); }, get_intermediary_comm: function (code, success, error) { u.get(this.backend + "api/intermediarycommission/intCode/" + code.COM_INT_CODE + "/" + code.COM_PROD_CODE, success, error); }, get_customertype_comm: function (code, success, error) { u.get(this.backend + "api/customertypecommission/" + code.DEF_CTP_CODE + "/" + code.DEF_PROD_CODE, success, error); }, getLovStrategicBusinessUnitsAsync: async function (success, error) { return await u.get(`${this.backend}api/strategic/business/unit/lov`, success, error); }, get_lov_bank: function (success, error) { u.get(this.backend + "api/bank/lov", success, error); }, get_lov_office: function (success, error) { u.get(this.backend + "api/office/lov", success, error); }, get_lov_bnk_branch: function (code, success, error) { u.get(this.backend + "api/bank/branch/lov/" + code, success, error); }, getRiskFeeAsync: async function (data) { return await u.postAsync(`${this.backend}api/productriskfee/RiskFees`, data); }, getOfficeSbuLov: function (officeCode, success, error) { u.get(`${this.backend}api/office/sbu/lov/${officeCode}`, success, error); }, getSbuBusinessSourceLov: function (sbuCode, success, error) { u.get(`${this.backend}api/strategic/business/unit/sbusoblov/${sbuCode}`, success, error); }, deleteCoverRisksAsync: async function (data) { return await u.postAsync(`${this.backend}api/RisksCovers/delCoverRisk`, data); }, getProductDiscloadAsync: async function (data) { return await u.getAsync(`${this.backend}api/product/DiscountLoad/lov/${data}`); }, delIntermediaryAsync: async function (data) { return await u.postAsync(`${this.backend}api/underwriting/delIntermediary`, data); }, delIntermediaryAtEndorsementAsync: async function (data) { return await u.postAsync(`${this.backend}api/underwriting/endorsement/delete/intermediary`, data); }, getIntermediaryAsync: async function (data) { return await u.getAsync(`${this.backend}api/underwriting/intermediary/${data.code}/${data.subclass}`); }, get_product: function (query, success, error) { u.get(`${this.backend}api/product/udw?code=${query}`, success, error); }, getUserLog: function (productid, success, error) { return u.get(`${this.backend}api/audit/query/underwriting/policychanges/${productid}`, success, error); }, getChanges: async function (id) { return await u.getAsync(`${this.backend}api/audit/query/underwriting/changes/${id}`); }, get_lov_ricustomer: function (success, error) { u.get(this.backend + "api/customer/rilov", success, error); }, getShortPeriodsAsync: async function (classCode) { return await u.getAsync(`${this.app}api/shortperiod/class/${classCode}`); }, getRiskCoverByProduct: async function (data) { return await u.postAsync(`${this.backend}api/RisksCovers/product/cover`, data); }, SetRiskCover: async function (data) { return await u.postAsync(`${this.backend}api/RisksCovers/SetRiskCover`, data); }, getPolicyDocumentsAsync: async function (Code) { return await u.getAsync(`${this.backend}api/policydoc/chk/fetch/${Code}`); }, getDefaultDiscountLoadAsync: async function (data) { return await u.postAsync(`${this.app}api/discountloading/defaultDiscountLoad`, data); }, getDiscountLoadAsync: async function (Code, Product) { return await u.getAsync(`${this.app}api/product/DiscountLoad/${Code}/${Product}`); }, check_channel_code: function (code, success, error) { u.get(this.backend + "api/channel/check/" + code, success, error); }, sendPaymentNotice: function (data, success, error) { u.post(this.backend + "api/epayment/send/payment", data, success, error); }, getRiskCoversLovAsync: async function (data) { return await u.postAsync(`${this.backend}api/RisksCovers/lov`, data); }, getRiskFeesLovAsync: async function (data) { return await u.postAsync(`${this.backend}api/productriskfee/riskfeelov`, data); }, getRiskFeesAsync: async function (data) { return await u.postAsync(`${this.backend}api/productriskfee/getriskfees`, data); }, policyUnendorseAsync: async function (data) { return await u.postAsync(`${this.backend}api/policy/UndoEndorsement/${data.polSysId}/${data.endNo}/${data.rnwNo}`); }, policyScheduleAsync: async function (data) { return await u.postAsync(`${this.backend}api/policyapproval/schedule`, data); }, getApprovalCheckList: async function (code) { return await u.getAsync(`${this.backend}api/udwapproval/chk/fetch/` + code); }, saveClaimsMigrationAsync: async function (data) { return await u.postAsync(`${this.app}api/underwriting/saveClaimsMigration`, data); }, getLovSelectAmlCategoryAsync: async function () { return await u.getAsync(`${this.app}api/amlCategory/selectLov`); }, getLovSelectAmlStatusAsync: async function () { return await u.getAsync(`${this.app}api/amlStatus/selectLov`); }, getCheckAmls: function (success, error) { u.get(this.app + "api/aml", success, error); }, searchCheckAml: function (q, success, error) { u.get(this.app + `api/antiMoneyLaundering/search/${q}`, success, error); }, searchCheckAmlByPostAsync: async function (data) { return await u.postAsync(`${this.app}api/antiMoneyLaundering/searchByPost`, data); }, getEngOtherRiskSeq: async function () { return await u.getAsync(`${this.backend}api/policyengother/riskSeq`); }, logPolicyRejectionAsync: async function (log) { return await u.postAsync(`${this.backend}api/logging/logpolicyrejection`, log); }, getDeferReasonByPolicyState: async function (policyState) { return await u.postAsync(this.backend + "api/premiumpaymentstatus/getreasonbypolicy", policyState); }, saveReasonAsync: async function (query) { return await u.postAsync(this.backend + "api/premiumpaymentstatus/savereason", query); }, getSubProductGroupingLovAsync: async function (code) { return await u.getAsync(`${this.app}api/subproductGrouping/subProductGroupingLov/${code}`); }, getSubProduct: function (data, success, error) { u.get(`${this.backend}api/product/${data}`, success, error); }, getReceiptbyDocNo: async function (query, success, error) { return await u.getAsync(`${this.backend}api/AccountTransactions/receipt/searchdocno/${query}`, success, error); }, getIntermediaryByBranchLov: function (data, success, error) { /**---------------------------------------------------------------------- * IF USER IS NOT RESTRICTED THE ALLOW USER TO VIEW ALL POLICIES OTHERWISE * FILTER ONLY THOSE THAT BELONG TO THE SPECIFIC CHANNEL CODE.. *--------------------------------------------------------------------- **/ let json = { CHANNELCODE: u.isUserRestricted() ? u.getUserChannelCode() : "", QUERY: data.biz, BRANCH: data.branch }; u.post(this.backend + "api/intermediary/branchlov", json, success, error); }, getClaimHeadAsync: async function (id) { return await u.getAsync(`${this.app}api/claimestimation/${id}`); }, getUserDetailsAsync: async function (id) { return await u.getAsync(`${this.auth}/api/account/user/${id}`); }, sendTaskAssignmentEmailAsync: async function (json) { return await u.postAsync(`${this.backend}/api/workflowservice/notify/task/assignment`, json); }, undoRenewalAsync: async function(policyId, renewalNo) { return await u.getAsync(`${this.backend}api/renewal/undo-renewal/${policyId}/${renewalNo}`); }, checkPolicyApprovalAsync: async function (policyId, endorsementNo, renewalNo) { return await u.getAsync(`${this.backend}api/policyapproval/check/approval/${policyId}/${endorsementNo}/${renewalNo}`); }, setPolicyRenewableStatusAsync: async function (json) { return await u.postAsync(`${this.backend}api/underwriting/renewable/status/log`, json); }, getPolicyRenewableStatusReportAsync: async function (json) { return await u.postAsync(`${this.backend}api/underwriting/renewable/status/report`, json); }, getPolicyNonRenewableReasonLov: function (success, error) { u.get(`${this.backend}/api/policy/nonrenewable/lov`, success, error); }, sendPolicyDocumentsAsync: async function (json) { return await u.postAsync(`${this.backend}api/underwriting/policy/documents/send`, json); }, getFireUsageTypeLov: function (success, error) { u.get(this.backend + "api/fireusagetype/lov", success, error); }, }); })(window.service, window.utility); (function ($, s, u, $scope) { $(function () { u.setGlobal("amlCheckGrid", u.default_grid("#gridamlCheck", "#gridamlCheckPager", "AML List", [" Name", "Dob", "Nationality", "ID", "Entry", "AML Status", "Source Of Fund", "Created By", "Created Date", "Modified By", "MOdified Date", "Status", "ID", "Documents"], [ { name: "ICA_CUST_NAME", index: "ICA_CUST_NAME" }, { name: "ICA_CUST_DOB", index: "ICA_CUST_DOB" }, { name: "ICA_CUST_NATIONALITY", index: "ICA_CUST_NATIONALITY" }, { name: "ICA_CUST_ID", index: "ICA_CUST_ID" }, { name: "ICA_CUST_Entry", index: "ICA_CUST_Entry" }, { name: "ICA_CUST_STATUS", index: "ICA_CUST_STATUS" }, { name: "ICA_CUST_SOUFUND", index: "ICA_CUST_SOUFUND" }, { name: "ICA_CRTE_BY", index: "ICA_CRTE_BY" }, u.dateTimeColumn("ICA_CRTE_DATE"), { name: "ICA_MOD_BY", index: "ICA_MOD_BY" }, u.dateTimeColumn("ICA_MOD_DATE"), { name: "ICA_STATUS", index: "ICA_STATUS" }, { name: "ICA_SYS_ID", index: "ICA_SYS_ID", id: true }, { name: "AML_DOCS", index: "AML_DOCS" }, ], function (id) { var grid = u.getGlobal("amlCheckGrid"); let result = u.getRow(id, grid); u.fill_form(result, "#amlForm"); }, function (id) { var grid = u.getGlobal("amlCheckGrid"); let data = u.getRow(id, grid); data = (typeof (data) == "string" ? JSON.parse(data || "{}") : data) || {}; u.form_reset("#amlCheckViewForm"); u.fill_form(data, "#amlCheckViewForm"); //u.getGlobal("fileGrid").jqGrid("clearGridData"); //u.bigDataPopulate(u.getGlobal("fileGrid"), data.AML_DOCS || []); $("#amlCheckViewModal").modal(); }, )); u.setGlobal("partialRenewalGrid", u.multiselect_grid("#gridPartialRenewal", "#gridPartialRenewalPager", "Vehicle List", [ "Risk Code", "Risk Name", "Veh Reg. No", "No. Of Seats", "Sum Insured FC", "Sum Insured BC", "Total Premium FC", "Total Premium BC", "Currency", "Exchange Rate", "Risk Start date", "Risk End date", "Period Days", "UW Year", "Id" ], [ { name: "VEH_RISK_CODE", index: "VEH_RISK_CODE", width: 150, sorttype: "int" }, { name: "VEH_RISK_NAME", index: "VEH_RISK_NAME", width: 150 }, { name: "VEH_VEH_REG_NO", index: "VEH_VEH_REG_NO", width: 150 }, { name: "VEH_PASSENGERS", index: "VEH_PASSENGERS", width: 150 }, u.currencyColumn("VEH_SI_FC"), u.currencyColumn("VEH_SI_BC"), u.currencyColumn("VEH_TOT_PREM_FC"), u.currencyColumn("VEH_TOT_PREM_BC"), { name: "VEH_CURRENCY", index: "VEH_CURRENCY", width: 150 }, { name: "VEH_CURR_RATE", index: "VEH_CURR_RATE", width: 150 }, u.dateColumn("VEH_START_DATE"), u.dateColumn("VEH_END_DATE"), u.integerColumn("VEH_PERIOD_DAYS"), { name: "VEH_UW_YEAR", index: "VEH_UW_YEAR", width: 150 }, u.integerColumn("VEH_SYS_ID") ], //Retrieve Grid data into form input fields on row click.. function () { })); u.setGlobal("udwSchedulePaymentGrid", u.multiselect_grid("#gridSchedulePayment", "#gridSchedulePaymentPager", "Schedule Payment List", [ "Schedule Status", "Code", "Risk Code", "Risk Name", "Veh Reg. No", "Amount FC", "Amount BC", "Premium FC", "Premium BC", "Sequence No", "Posted", "Division","Start Date", "End Date", "Total Days", "Sys Id", "Risk Id", "Select", "Selected", "Selected Amount FC", "Selected Amount BC", "End No", "Renewal No", "Cover Id", "Created By", "Created Date", "Modified By", "Modified Date", "Status" ], [ { name: "SPM_SCHDL_STATUS", index: "SPM_SCHDL_STATUS"/*, sorttype: "int"*/ }, { name: "SPM_CODE", index: "SPM_CODE"/*, sorttype: "int"*/ }, { name: "SPM_RISK_CODE", index: "SPM_RISK_CODE" }, { name: "SPM_RISK_NAME", index: "SPM_RISK_NAME" }, { name: "SPM_REG_NO", index: "SPM_REG_NO" }, u.currencyColumn("SPM_AMT_FC"), u.currencyColumn("SPM_AMT_BC"), u.currencyColumn("SPM_PREM_FC"), u.currencyColumn("SPM_PREM_BC"), { name: "SPM_SEQ_NO", index: "SPM_SEQ_NO" }, { name: "SPM_SCHDL_POSTED", index: "SPM_SCHDL_POSTED" }, { name: "SPM_DIVISION", index: "SPM_DIVISION" }, u.dateColumn("SPM_START_DATE"), u.dateColumn("SPM_END_DATE"), { name: "SPM_DAYS", index: "SPM_DAYS" }, { name: "SPM_SYS_ID", index: "SPM_SYS_ID" }, { name: "SPM_RISK_SYS_ID", index: "SPM_RISK_SYS_ID" }, { name: "SPM_SELECT", index: "SPM_SELECT" }, { name: "SPM_SELECTED", index: "SPM_SELECTED" }, u.currencyColumn("SPM_ALL_AMT_FC"), u.currencyColumn("SPM_ALL_AMT_BC"), { name: "SPM_END_NO", index: "SPM_END_NO" }, { name: "SPM_RNW_NO", index: "SPM_RNW_NO" }, { name: "SPM_RCOV_SYS_ID", index: "SPM_RCOV_SYS_ID" }, { name: "SPM_CRTE_BY", index: "SPM_CRTE_BY" }, u.dateTimeColumn("SPM_CRTE_DATE"), { name: "SPM_MOD_BY", index: "SPM_MOD_BY" }, u.dateTimeColumn("SPM_MOD_DATE"), { name: "SPM_STATUS", index: "SPM_STATUS" }, ], function (id) { u.fill_form(u.getRow(id, u.getGlobal("udwSchedulePaymentGrid")), "#schedulePaymentForm"); }, function (id) { }, true, "SPM_CODE" )); /*--------------------------- * Risk Covers Lov *--------------------------*/ //u.setGlobal("udwRiskCoversGrid", u.default_grid("#gridAddNewCover", "#gridAddNewCoverPager", "Risk Covers", // ["Code", "Name", "Sum Insured", "Deft Rate", "Deft Premium", "Covers"], // [ // { name: "RCOV_CODE", index: "RCOV_CODE", width: 150 }, // { name: "RCOV_NAME", index: "RCOV_NAME", width: 150 }, // { name: "RCOV_SI_FC", index: "RCOV_SI_FC", width: 150 }, // { name: "RCOV_RATE", index: "RCOV_RATE", width: 150 }, // { name: "RCOV_GROSS_PREM_FC", index: "RCOV_GROSS_PREM_FC", width: 150 }, // ], // function (selId) { }, // function (selId) { // const grid = u.getGlobal("udwRiskCoversGrid"); // let data = u.getRow(selId, grid) || {}; // u.fill_form(data, "#coverForm"); // $("#AddNewCoverModal").modal("hide"); // })); //u.setGlobal("liabilityRiskGrid", u.default_grid("#gridLiabilityRisks", // "#gridLiabilityRisksPager", "Liability Policy", // [ // //"Object", "Object Name", // "Item", "Description", // "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", // "Location Name", "Address", "Eq Zone", // "Geographical limit", "No. Persons", "No. Years", "Labour Type", "Aggregate Limit FC", // "Aggregate Limit BC", // "Annual Est Salary FC", "Annual Est Salary BC", // "Limit Occurance FC", "Limit Occurance BC", "Premium FC", "Premium BC", "SI FC", "SI BC", // "Total Prm FC", "Total Prm BC", // // // "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", // // // "Discount FC", "Discount BC", "Load FC", "Load BC", "Currrency", "Exchange Rate", "Start Date", // "End Date", "Period Days", // "Uw Year", "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", // "Compulsory Fee FC", "Compulsory Fee BC", "Commossion FC", "Commission BC", // //"EML YN", "EML_Perc", // "RI SI FC", "RI SI BC", // "RI Prem FC", "RI Prem BC", "Txn Status", "Risk State", "Risk ID", "PolID", "polDocNo", // "Endorsement No.", "Risk No", "Product code", // "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", // "Create by", "Create Date", "Modified By", "Modified Date", "Status", // "Sys ID" // //"Combine RI?", "Combination Flag" // ], // [ // //{ name: "LIA_OBJECT", index: "LIA_OBJECT", width: 150 }, // //{ name: "LIA_OBJECT_NAME", index: "LIA_OBJECT_NAME", width: 150 }, // { name: "LIA_ITEM", index: "LIA_ITEM", width: 150 }, // { name: "LIA_ITEM_DESC", index: "LIA_ITEM_DESC", width: 150 }, // { name: "LIA_REG_CODE", index: "LIA_REG_CODE", width: 150 }, // { name: "LIA_REG_NAME", index: "LIA_REG_NAME", width: 150 }, // { name: "LIA_AREA_CODE", index: "LIA_AREA_CODE", width: 150 }, // { name: "LIA_AREA_NAME", index: "LIA_AREA_NAME", width: 150 }, // { name: "LIA_LOC_CODE", index: "LIA_AREA_CODE", width: 150 }, // { name: "LIA_LOC_NAME", index: "LIA_AREA_NAME", width: 150 }, // { name: "LIA_LOC_ADDRS", index: "LIA_LOC_ADDRS", width: 150 }, // { name: "LIA_EARTHQ_ZONE", index: "LIA_EARTHQ_ZONE", width: 150 }, // { name: "LIA_GEO_LIMIT", index: "LIA_GEO_LIMIT", width: 150 }, // { name: "LIA_NO_PERSONS", index: "LIA_NO_PERSONS", width: 150 }, // { name: "LIA_NO_YEARS", index: "LIA_NO_YEARS", width: 150 }, // { name: "LIA_LABOUR_TYPE", index: "LIA_LABOUR_TYPE", width: 150 }, // { name: "LIA_AGG_LIM_FC", index: "LIA_AGG_LIM_FC", width: 150 }, // { name: "LIA_AGG_LIM_BC", index: "LIA_AGG_LIM_BC", width: 150 }, // { name: "LIA_ANNUAL_EST_SAL_FC", index: "LIA_ANNUAL_EST_SAL_FC", width: 150 }, // { name: "LIA_ANNUAL_EST_SAL_BC", index: "LIA_ANNUAL_EST_SAL_BC", width: 150 }, // { name: "LIA_LIM_OCCUR_FC", index: "LIA_LIM_OCCUR_FC", width: 150 }, // { name: "LIA_LIM_OCCUR_BC", index: "LIA_LIM_OCCUR_BC", width: 150 }, // { name: "LIA_PREMIUM_FC", index: "LIA_PREMIUM_FC", width: 150, }, // { name: "LIA_PREMIUM_BC", index: "LIA_PREMIUM_BC", width: 150 }, // { name: "LIA_SI_FC", index: "LIA_SI_FC", width: 150 }, // { name: "LIA_SI_BC", index: "LIA_SI_BC", width: 150 }, // { name: "LIA_TOT_PREM_FC", index: "LIA_TOT_PREM_FC", width: 150 }, // { name: "LIA_TOT_PREM_BC", index: "LIA_TOT_PREM_BC", width: 150 }, // { name: "LIA_DISC_FC", index: "LIA_DISC_FC", width: 150 }, // { name: "LIA_DISC_BC", index: "LIA_DISC_BC", width: 150 }, // { name: "LIA_LOAD_FC", index: "LIA_LOAD_FC", width: 150 }, // { name: "LIA_LOAD_BC", index: "LIA_LOAD_BC", width: 150 }, // { name: "LIA_EXCESS_APP", index: "LIA_EXCESS_APP", width: 150 }, // { name: "LIA_EXCESS_PERC", index: "LIA_EXCESS_PERC", width: 150 }, // { name: "LIA_EXCESS_MIN", index: "LIA_EXCESS_MIN", width: 150 }, // { name: "LIA_EXCESS_MAX", index: "LIA_EXCESS_MAX", width: 150 }, // { name: "LIA_EXCESS_FIX", index: "LIA_EXCESS_FIX", width: 150 }, // { name: "LIA_EXCESS_NAR", index: "LIA_EXCESS_NAR", width: 150 }, // { name: "LIA_CURRENCY", index: "LIA_CURRENCY", width: 150, }, // { name: "LIA_CURRENCY_RATE", index: "LIA_CURRENCY_RATE", width: 150 }, // { name: "LIA_START_DATE", index: "LIA_START_DATE", width: 150 }, // { name: "LIA_END_DATE", index: "LIA_END_DATE", width: 150 }, // { name: "LIA_PERIOD_DAYS", index: "LIA_PERIOD_DAYS", width: 150 }, // { name: "LIA_UW_YEAR", index: "LIA_UW_YEAR", width: 150 }, // { name: "LIA_RISK_PREM_FC", index: "LIA_RISK_PREM_FC", width: 150 }, // { name: "LIA_RISK_PREM_BC", index: "LIA_RISK_PREM_BC", width: 150 }, // { name: "LIA_ADJ_PREM_FC", index: "LIA_ADJ_PREM_FC", width: 150 }, // { name: "LIA_ADJ_PREM_BC", index: "LIA_ADJ_PREM_BC", width: 150 }, // { name: "LIA_COMP_FEE_FC", index: "LIA_COMP_FEE_FC", width: 150 }, // { name: "LIA_COMP_FEE_BC", index: "LIA_COMP_FEE_BC", width: 150 }, // { name: "LIA_COMMISSION_FC", index: "LIA_COMMISSION_FC", width: 150 }, // { name: "LIA_COMMISSION_BC", index: "LIA_COMMISSION_BC", width: 150 }, // //{ name: "LIA_EML_YN", index: "LIA_EML_YN", width: 150 }, // //{ name: "LIA_EML_PERC", index: "LIA_EML_PERC", width: 150 }, // { name: "LIA_RI_SI_FC", index: "LIA_RI_SI_FC", width: 150 }, // { name: "LIA_RI_SI_BC", index: "LIA_RI_SI_BC", width: 150 }, // { name: "LIA_RI_PREM_FC", index: "LIA_RI_PREM_FC", width: 150 }, // { name: "LIA_RI_PREM_BC", index: "LIA_RI_PREM_BC", width: 150 }, // { name: "LIA_TXN_STATUS", index: "LIA_TXN_STATUS", width: 150 }, // { name: "LIA_RISK_STATE", index: "LIA_RISK_STATE", width: 150 }, // { name: "LIA_RISK_ID", index: "LIA_RISK_ID", width: 150, sorttype: "int" }, // { name: "LIA_POLH_SYS_ID", index: "LIA_POLH_SYS_ID", width: 150 }, // { name: "LIA_POLH_DOC_NO", index: "LIA_POLH_DOC_NO", width: 150 }, // { name: "LIA_POLH_END_NO", index: "LIA_POLH_END_NO", width: 150 }, // { name: "LIA_RISK_NO", index: "LIA_RISK_NO", width: 150 }, // { name: "LIA_PDT_CODE", index: "LIA_PDT_CODE", width: 150 }, // { name: "LIA_CVR_CODE", index: "LIA_CVR_CODE", width: 150 }, // { name: "LIA_RENEWAL_STATUS", index: "LIA_RENEWAL_STATUS", width: 150 }, // { name: "LIA_END_TYPE", index: "LIA_END_TYPE", width: 150 }, // { name: "LIA_LIAROVE_DATE", index: "LIA_LIAROVE_DATE", width: 150 }, // { name: "LIA_ACCT_DATE", index: "LIA_ACCT_DATE", width: 150 }, // { name: "LIA_CRTE_BY", index: "LIA_CRTE_BY", width: 150 }, // { name: "LIA_CRTE_DATE", index: "LIA_CRTE_DATE", width: 150 }, // { name: "LIA_MOD_BY", index: "LIA_MOD_BY", width: 150 }, // { name: "LIA_MOD_DATE", index: "LIA_MOD_DATE", width: 150 }, // { name: "LIA_STATUS", index: "LIA_STATUS", width: 150 }, // { name: "LIA_SYS_ID", index: "LIA_SYS_ID", width: 150 }, // //{ name: "LIA_RIC_YN", index: "LIA_RIC_YN" }, // //{ name: "LIA_RIC_CODE", index: "LIA_RIC_CODE" } // ], // //Retrive Grid data into form input fields on row click.. // function (selId) { // const grid = u.getGlobal("liabilityRiskGrid"); // $("form input[name='LIA_SYS_ID']").data("update", true); // u.fill_form(u.getRow(selId, grid), "#interestForm"); // u.fill_form(u.getRow(selId, grid), "#blockForm"); // u.fill_form({ // RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "LIA_SYS_ID"), // }, "#coverForm"); // u.fill_form({ // FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "LIA_SI_FC"), // FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "LIA_SI_BC"), // FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "LIA_TOT_PREM_FC"), // FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "LIA_TOT_PREM_BC"), // }, // "#facInwardForm"); // u.fill_form({ // FOTW_SHARE_SI_FC: grid.jqGrid("getCell", selId, "LIA_SI_FC"), // FOTW_SHARE_SI_BC: grid.jqGrid("getCell", selId, "LIA_SI_BC"), // FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "LIA_TOT_PREM_FC"), // FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "LIA_TOT_PREM_BC"), // }, "#CoinsLeaderForm"); // u.clear_grid_data($scope.cover_grid); // var covers = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UWD_RISK_COVERS") || "[]"); // if (covers.Any()) { // u.grid_populate($scope.cover_grid, "", covers); // } // }, // function (id) { // const grid = u.getGlobal("liabilityRiskGrid"); // const bondRiskId = grid.jqGrid("getCell", id, "LIA_SYS_ID"); // if (bondRiskId == $("#LIA_SYS_ID").val()) { // $("#LiabilityModal").modal(); // // $("#RiskCoverModal").modal(); // //Hide covers not related to selected risk // } else { // u.growl_warning("No Liability Risk selected, Please check and try again"); // }; // })); u.setGlobal("bondRiskGrid", u.default_grid("#gridBondRisks", "#gridBondRisksPager", "Bond Policy", [ "Description", "Principal", "Wording", "Validity Period", "Beneficiary Bank", "SI FC", "SI BC", "Total Prm FC", "Total Prm BC", "Discount FC", "Discount BC", "Loading FC", "Loading BC", //"Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", "Currrency", "Exchange Rate", "Start Date", "End Date", "Period Days", "Uw Year", // // "Sum Insured", "Premium", // "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "Compulsory Fee FC", "Compulsory Fee BC", "Commossion FC", "Commission BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Txn Status", "Risk State", // "Risk ID", "PolID", "polDocNo", "Endorsement No.", "Risk No", "Product code", "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Sys ID", "Risk Covers", "INS_UDW_RISK_DISCLOAD", "Bond Fees" ], [ { name: "BOND_DESCRIPTION", index: "BOND_DESCRIPTION", width: 150 }, { name: "BOND_PRINCIPAL", index: "BOND_PRINCIPAL", width: 150 }, { name: "BOND_WORDING", index: "BOND_WORDING", width: 150 }, { name: "BOND_VALIDITY_PERIOD", index: "BOND_VALIDITY_PERIOD", width: 150 }, { name: "BOND_BENEFICIARY", index: "BOND_BENEFICIARY", width: 150 }, u.currencyColumn("BOND_SI_FC"), u.currencyColumn("BOND_SI_BC"), u.currencyColumn("BOND_TOT_PREM_FC"), u.currencyColumn("BOND_TOT_PREM_BC"), u.currencyColumn("BOND_DISC_FC"), u.currencyColumn("BOND_DISC_BC"), u.currencyColumn("BOND_LOAD_FC"), u.currencyColumn("BOND_LOAD_BC"), //{ name: "BOND_EXCESS_APP", index: "BOND_EXCESS_APP", width: 150 }, //{ name: "BOND_EXCESS_PERC", index: "BOND_EXCESS_PERC", width: 150 }, //{ name: "BOND_EXCESS_MIN", index: "BOND_EXCESS_MIN", width: 150 }, //{ name: "BOND_EXCESS_MAX", index: "BOND_EXCESS_MAX", width: 150 }, //{ name: "BOND_EXCESS_FIX", index: "BOND_EXCESS_FIX", width: 150 }, //{ name: "BOND_EXCESS_NAR", index: "BOND_EXCESS_NAR", width: 150 }, { name: "BOND_CURRENCY", index: "BOND_CURRENCY", width: 150 }, { name: "BOND_CURRENCY_RATE", index: "BOND_CURRENCY_RATE", width: 150 }, u.dateColumn("BOND_START_DATE"), u.dateColumn("BOND_END_DATE"), { name: "BOND_PERIOD_DAYS", index: "BOND_PERIOD_DAYS", width: 150 }, { name: "BOND_UW_YEAR", index: "BOND_UW_YEAR", width: 150 }, // { name: "BOND_SUM_INSURED", index: "BOND_SUM_INSURED", width: 150 }, // { name: "BOND_PREMIUM_FC", index: "BOND_PREMIUM_FC", width: 150 }, u.currencyColumn("BOND_RISK_PREM_FC"), u.currencyColumn("BOND_RISK_PREM_BC"), u.currencyColumn("BOND_ADJ_PREM_FC"), u.currencyColumn("BOND_ADJ_PREM_BC"), u.currencyColumn("BOND_COMP_FEE_FC"), u.currencyColumn("BOND_COMP_FEE_BC"), u.currencyColumn("BOND_COMMISSION_FC"), u.currencyColumn("BOND_COMMISSION_BC"), u.currencyColumn("BOND_RI_SI_FC"), u.currencyColumn("BOND_RI_SI_BC"), u.currencyColumn("BOND_RI_PREM_FC"), u.currencyColumn("BOND_RI_PREM_BC"), { name: "BOND_TXN_STATUS", index: "BOND_TXN_STATUS", width: 150 }, { name: "BOND_RISK_STATE", index: "BOND_RISK_STATE", width: 150 }, { name: "BOND_RISK_ID", index: "BOND_RISK_ID", width: 150, sorttype: "int" }, { name: "BOND_POLH_SYS_ID", index: "BOND_POLH_SYS_ID", width: 150 }, { name: "BOND_POLH_DOC_NO", index: "BOND_POLH_DOC_NO", width: 150 }, { name: "BOND_POLH_END_NO", index: "BOND_POLH_END_NO", width: 150 }, { name: "BOND_RISK_NO", index: "BOND_RISK_NO", width: 150 }, { name: "BOND_PDT_CODE", index: "BOND_PDT_CODE", width: 150 }, { name: "BOND_CVR_CODE", index: "BOND_CVR_CODE", width: 150 }, { name: "BOND_RENEWAL_STATUS", index: "BOND_RENEWAL_STATUS", width: 150 }, { name: "BOND_END_TYPE", index: "BOND_END_TYPE", width: 150 }, { name: "BOND_BONDROVE_DATE", index: "BOND_BONDROVE_DATE" }, u.dateColumn("BOND_ACCT_DATE"), { name: "BOND_SUSPND_YN", index: "BOND_SUSPND_YN", width: 150 }, u.dateColumn("BOND_SUS_FROM_DATE"), u.dateColumn("BOND_SUS_TO_DATE"), { name: "BOND_SUSPND_PERIOD", index: "BOND_SUSPND_PERIOD", width: 150 }, { name: "BOND_CRTE_BY", index: "BOND_CRTE_BY", width: 150 }, u.dateTimeColumn("BOND_CRTE_DATE"), { name: "BOND_MOD_BY", index: "BOND_MOD_BY", width: 150 }, u.dateTimeColumn("BOND_MOD_DATE"), { name: "BOND_STATUS", index: "BOND_STATUS", width: 150 }, { name: "BOND_SYS_ID", index: "BOND_SYS_ID", width: 150 }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, { name: "INS_UDW_BOND_FEES", index: "INS_UDW_BOND_FEES", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { var grid = u.getGlobal("bondRiskGrid"); var selId = grid.jqGrid("getGridParam", "selrow"); $("form input[name='BOND_SYS_ID']").data("update", true); u.fill_form({ BOND_SYS_ID: grid.jqGrid("getCell", selId, "BOND_SYS_ID"), BOND_POLH_SYS_ID: grid.jqGrid("getCell", selId, "BOND_POLH_SYS_ID"), BOND_POLH_DOC_NO: grid.jqGrid("getCell", selId, "BOND_POLH_DOC_NO"), BOND_POLH_END_NO: grid.jqGrid("getCell", selId, "BOND_POLH_END_NO"), BOND_PDT_CODE: grid.jqGrid("getCell", selId, "BOND_PDT_CODE"), BOND_RISK_ID: grid.jqGrid("getCell", selId, "BOND_RISK_ID"), BOND_CVR_CODE: grid.jqGrid("getCell", selId, "BOND_CVR_CODE"), BOND_RENEWAL_STATUS: grid.jqGrid("getCell", selId, "BOND_RENEWAL_STATUS"), BOND_PRINCIPAL: grid.jqGrid("getCell", selId, "BOND_PRINCIPAL"), BOND_WORDING: grid.jqGrid("getCell", selId, "BOND_WORDING"), BOND_VALIDITY_PERIOD: grid.jqGrid("getCell", selId, "BOND_VALIDITY_PERIOD"), BOND_BENEFICIARY: grid.jqGrid("getCell", selId, "BOND_BENEFICIARY"), BOND_CURRENCY: grid.jqGrid("getCell", selId, "BOND_CURRENCY"), BOND_CURRENCY_RATE: grid.jqGrid("getCell", selId, "BOND_CURRENCY_RATE"), BOND_START_DATE: grid.jqGrid("getCell", selId, "BOND_START_DATE"), BOND_END_DATE: grid.jqGrid("getCell", selId, "BOND_END_DATE"), BOND_SI_FC: grid.jqGrid("getCell", selId, "BOND_SI_FC"), BOND_SI_BC: grid.jqGrid("getCell", selId, "BOND_SI_BC"), BOND_TOT_PREM_FC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_FC"), BOND_TOT_PREM_BC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_BC"), BOND_RISK_PREM_FC: grid.jqGrid("getCell", selId, "BOND_RISK_PREM_FC"), BOND_RISK_PREM_BC: grid.jqGrid("getCell", selId, "BOND_RISK_PREM_BC"), BOND_ADJ_PREM_FC: grid.jqGrid("getCell", selId, "BOND_ADJ_PREM_FC"), BOND_ADJ_PREM_BC: grid.jqGrid("getCell", selId, "BOND_ADJ_PREM_BC"), BOND_DISC_FC: grid.jqGrid("getCell", selId, "BOND_DISC_FC"), BOND_DISC_BC: grid.jqGrid("getCell", selId, "BOND_DISC_BC"), BOND_LOAD_FC: grid.jqGrid("getCell", selId, "BOND_LOAD_FC"), BOND_LOAD_BC: grid.jqGrid("getCell", selId, "BOND_LOAD_BC"), BOND_COMP_FEE_FC: grid.jqGrid("getCell", selId, "BOND_COMP_FEE_FC"), BOND_COMP_FEE_BC: grid.jqGrid("getCell", selId, "BOND_COMP_FEE_BC"), BOND_COMMISSION_FC: grid.jqGrid("getCell", selId, "BOND_COMMISSION_FC"), BOND_COMMISSION_BC: grid.jqGrid("getCell", selId, "BOND_COMMISSION_BC"), BOND_TXN_STATUS: grid.jqGrid("getCell", selId, "BOND_TXN_STATUS"), BOND_RISK_STATE: grid.jqGrid("getCell", selId, "BOND_RISK_STATE"), BOND_END_TYPE: grid.jqGrid("getCell", selId, "BOND_END_TYPE"), BOND_BONDROVE_DATE: grid.jqGrid("getCell", selId, "BOND_BONDROVE_DATE"), BOND_ACCT_DATE: grid.jqGrid("getCell", selId, "BOND_ACCT_DATE"), BOND_CRTE_BY: grid.jqGrid("getCell", selId, "BOND_CRTE_BY"), BOND_CRTE_DATE: grid.jqGrid("getCell", selId, "BOND_CRTE_DATE"), BOND_PERIOD_DAYS: grid.jqGrid("getCell", selId, "BOND_PERIOD_DAYS"), BOND_RISK_NO: grid.jqGrid("getCell", selId, "BOND_RISK_NO"), BOND_SUM_INSURED: grid.jqGrid("getCell", selId, "BOND_SUM_INSURED"), BOND_PREMIUM_FC: grid.jqGrid("getCell", selId, "BOND_PREMIUM_FC"), BOND_DESCRIPTION: grid.jqGrid("getCell", selId, "BOND_DESCRIPTION"), BOND_STATUS: grid.jqGrid("getCell", selId, "BOND_STATUS"), }, "#bondForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "BOND_SYS_ID"), }, "#coverForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "BOND_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "BOND_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ FOTW_SHARE_SI_FC: grid.jqGrid("getCell", selId, "BOND_SI_FC"), FOTW_SHARE_SI_BC: grid.jqGrid("getCell", selId, "BOND_SI_BC"), FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_FC"), FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "BOND_TOT_PREM_BC"), }, "#CoinsLeaderForm"); // cover var covers = grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || "[]"; var discLoads = grid.jqGrid("getCell", selId, "INS_UDW_RISK_DISCLOAD") || "[]"; covers = u.parseJson(covers); discLoads = u.parseJson(discLoads); u.clear_grid_data(u.getGlobal("udwCoverGrid")); u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); u.clear_grid_data(u.getGlobal("udwRskDiscLoadingGrid")); u.grid_populate(u.getGlobal("udwRskDiscLoadingGrid"), "", discLoads); }, function (id) { const grid = u.getGlobal("bondRiskGrid"); const selId = grid.jqGrid("getGridParam", "selrow"); const bondRiskId = grid.jqGrid("getCell", selId, "BOND_SYS_ID"); if (bondRiskId == $("#BOND_SYS_ID").val()) { $("#BondModal").modal(); // $("#RiskCoverModal").modal(); //Hide covers not related to selected risk } else { u.growl_warning("No Bond Risk selected, Please check and try again"); }; })); u.setGlobal("travelRiskGrid", u.default_grid("#gridTravelRisks", "#gridTravelRisksPager", "Travel Details", [ "ID", "Full-Name", "Date of Birth", "Age", "Gender", "Occupation", "Nationality", "National ID ", "Passport Number", "Address", // "Issuing Country", "Issuing Country Name", "Expiry Date", "Country of Visit", "Country of Visit Name", "Destination Address", "Destination Phone", "Beneficiary Name", "Relationship", "Contact", "Declaration", "Declaration Details", // "Sum Insured FC", "Sum Insured BC", "Net Premium FC", "Net Premium BC", "Total Premium FC", "Total Premium BC", "Risk Premium FC", "Risk Premium BC", "DL Amount FC", "DL Amount BC", "Discount FC", "Discount BC", "Loading FC", "Loading BC", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", // "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "Compulsory Fee FC", "Compulsory Fee BC", "Commossion FC", "Commission BC", "Fees FC", "Fees BC", //RI "RI_Applicable", "RI Eff Date", "RI SI FC", "RI SI BC", "RI Premium FC", "RI Premium BC", // "Txn Status", "Risk State", // "Product code", "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Policy Cancelled", "Cancelled Reason", "Travel Head ID", "Polh Sys ID", "Polh Doc No", " Polh End No", "Travel No", "Multi Country", "Multi Country List", "Countries", "INS_UWD_RISK_COVERS", "INS_UDW_TRAVEL_FEES", "TXN_CUST_DOCS" ], [ { name: "TRA_SYS_ID", ID: true, index: "TRA_SYS_ID", width: 150 }, { name: "TRA_FULL_NAME", index: "TRA_FULL_NAME", width: 150 }, { name: "TRA_DOB", index: "TRA_DOB", width: 150 }, { name: "TRA_AGE", index: "TRA_AGE", width: 150 }, { name: "TRA_GENDER", index: "TRA_GENDER", width: 150 }, { name: "TRA_OCCUPATION", index: "TRA_OCCUPATION", width: 150 }, { name: "TRA_NATIONALITY", index: "TRA_NATIONALITY", width: 150 }, { name: "TRA_NATIONAL_ID", index: "TRA_NATIONAL_ID", width: 150 }, { name: "TRA_PASSPORT_NO", index: "TRA_PASSPORT_NO", width: 150 }, { name: "TRA_ADDRESS", index: "TRA_ADDRESS", width: 150 }, { name: "TRA_CNT_CODE", index: "TRA_CNT_CODE", width: 150 }, { name: "TRA_CNT_NAME", index: "TRA_CNT_NAME", width: 150 }, u.dateColumn("TRA_EXPIRY_DATE"), { name: "TRA_CNT_VISIT_CODE", index: "TRA_CNT_VISIT_CODE", width: 150 }, { name: "TRA_CNT_VISIT_NAME", index: "TRA_CNT_VISIT_NAME", width: 150 }, { name: "TRA_DESTIN_ADDRESS", index: "TRA_DESTIN_ADDRESS", width: 150 }, { name: "TRA_DESTIN_PHONE", index: "TRA_DESTIN_PHONE", width: 150 }, { name: "TRA_BENFI_NAME", index: "TRA_BENFI_NAME", width: 150 }, { name: "TRA_RELATIONSHIP", index: "TRA_RELATIONSHIP", width: 150 }, { name: "TRA_CONTACT", index: "TRA_CONTACT", width: 150 }, { name: "TRA_DECLARATION", index: "TRA_DECLARATION", width: 150 }, { name: "TRA_DECLARATION_DTS", index: "TRA_DECLARATION_DTS", width: 150 }, u.currencyColumn("TRA_SI_FC"), u.currencyColumn("TRA_SI_BC"), u.currencyColumn("TRA_NET_PREM_FC"), u.currencyColumn("TRA_NET_PREM_BC"), u.currencyColumn("TRA_TOT_PREM_FC"), u.currencyColumn("TRA_TOT_PREM_BC"), u.currencyColumn("TRA_RISK_PREM_FC"), u.currencyColumn("TRA_RISK_PREM_BC"), u.currencyColumn("TRA_DL_AMT_FC"), u.currencyColumn("TRA_DL_AMT_BC"), u.currencyColumn("TRA_DISC_FC"), u.currencyColumn("TRA_DISC_BC"), u.currencyColumn("TRA_LOAD_FC"), u.currencyColumn("TRA_LOAD_BC"), { name: "TRA_EXCESS_APP", index: "TRA_EXCESS_APP", width: 150 }, { name: "TRA_EXCESS_PERC", index: "TRA_EXCESS_PERC", width: 150 }, { name: "TRA_EXCESS_MIN", index: "TRA_EXCESS_MIN", width: 150 }, { name: "TRA_EXCESS_MAX", index: "TRA_EXCESS_MAX", width: 150 }, { name: "TRA_EXCESS_FIX", index: "TRA_EXCESS_FIX", width: 150 }, { name: "TRA_EXCESS_NAR", index: "TRA_EXCESS_NAR", width: 150 }, u.currencyColumn("TRA_RISK_PREM_FC"), u.currencyColumn("TRA_RISK_PREM_BC"), u.currencyColumn("TRA_ADJ_PREM_FC"), u.currencyColumn("TRA_ADJ_PREM_BC"), u.currencyColumn("TRA_COMP_FEE_FC"), u.currencyColumn("TRA_COMP_FEE_BC"), u.currencyColumn("TRA_COMMISSION_FC"), u.currencyColumn("TRA_COMMISSION_BC"), u.currencyColumn("TRA_FEES_FC"), u.currencyColumn("TRA_FEES_BC"), { name: "TRA_RI_APPLICABLE", index: "TRA_RI_APPLICABLE", width: 150 }, u.dateColumn("TRA_RI_EFF_DATE"), u.currencyColumn("TRA_RI_SI_FC"), u.currencyColumn("TRA_RI_SI_BC"), u.currencyColumn("TRA_RI_PREM_FC"), u.currencyColumn("TRA_RI_PREM_BC"), { name: "TRA_TXN_STATUS", index: "TRA_TXN_STATUS", width: 150 }, { name: "TRA_RISK_STATE", index: "TRA_RISK_STATE", width: 150 }, { name: "TRA_PDT_CODE", index: "TRA_PDT_CODE", width: 150 }, { name: "TRA_CVR_CODE", index: "TRA_CVR_CODE", width: 150 }, { name: "TRA_RENEWAL_STATUS", index: "TRA_RENEWAL_STATUS", width: 150 }, { name: "TRA_END_TYPE", index: "TRA_END_TYPE", width: 150 }, u.dateColumn("TRA_APPROVE_DATE"), u.dateColumn("TRA_ACCT_DATE"), { name: "TRA_CRTE_BY", index: "TRA_CRTE_BY", width: 150 }, u.dateTimeColumn("TRA_CRTE_DATE"), { name: "TRA_MOD_BY", index: "TRA_MOD_BY", width: 150 }, u.dateTimeColumn("TRA_MOD_DATE"), { name: "TRA_STATUS", index: "TRA_STATUS", width: 150 }, { name: "TRA_POL_CANCELLED", index: "TRA_POL_CANCELLED", width: 150 }, { name: "TRA_CANCELLED_REASON", index: "TRA_CANCELLED_REASON", width: 150 }, { name: "TRA_TRAH_SYS_ID", index: "TRA_TRAH_SYS_ID", width: 150 }, { name: "TRA_POLH_SYS_ID", index: "TRA_POLH_SYS_ID", width: 200 }, { name: "TRA_POLH_DOC_NO", index: "TRA_POLH_DOC_NO", width: 200 }, { name: "TRA_POLH_END_NO", index: "TRA_POLH_END_NO", width: 200 }, { name: "TRA_RISK_NO", index: "TRA_RISK_NO", hidden: true, width: 150, sorttype: "int" }, { name: "TRA_MULT_COUNTRY_YN", index: "TRA_MULT_COUNTRY_YN", width: 150 }, { name: "TRA_COUNTRY_LIST", index: "TRA_COUNTRY_LIST", width: 150 }, { name: "TRA_COUNTRIES", index: "TRA_COUNTRIES", width: 150 }, { name: "INS_UWD_RISK_COVERS", ID: true, index: "INS_UWD_RISK_COVERS", width: 150 }, { name: "INS_UDW_TRAVEL_FEES", ID: true, index: "INS_UDW_TRAVEL_FEES", width: 150 }, { name: "TXN_CUST_DOCS", ID: true, index: "TXN_CUST_DOCS", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { $("form input[name='TRA_RISK_NO']").data("update", true); $("#btnTravelDetailReset").hide(); $("#btn_add_travel_details").hide(); $("#btn_update_travel_details").show(); if (selId) { u.form_reset("#travelForm"); let data = u.getRow(selId, u.getGlobal("travelRiskGrid")); u.fill_form(data, "#travelForm"); } u.fill_form({RCOV_RISK_NO: u.getGlobal("travelRiskGrid").jqGrid("getCell", selId, "TRA_SYS_ID") }, "#coverForm"); }, function (selId) { $("form input[name='TRA_RISK_NO']").data("update", true); if (selId) { let data = u.getRow(selId, u.getGlobal("travelRiskGrid")); if (data.TRA_STATUS === "D") { u.growl_warning("Deleted records can not be edited"); } else { //$("#travellerDetailModal").modal(); } } } )); u.setGlobal("homeOwnersRiskGrid", u.default_grid("#gridHomeOwnersRisks", "#gridHomeOwnersRisksPager", "Home Owners Policy", [ "Section Code", "Section Name", "Description", "Sum Insured FC", "Sum Insured BC", "Risk Premium FC", "Risk Premium BC", "Geograhical Limit", "SI FC", "SI BC", "Total Prm FC", "Total Prm BC", "Currency", "Currrency Rate", "Start Date", "End Date", "Period Days", "Uw Year", "Adj Premium FC", "Adj Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", // "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", "Compulsory Fee FC", "Compulsory Fee BC", "Commission FC", "Commission BC", "RI EML YN", "EML Perc", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Txn Status", "Risk State", // "Risk ID", "PolID", "polDocNo", "Endorsement No.", "Risk No", "Product code", "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Sys ID", "Location ID", "Compulsory YN", //"Combine RI?", "RI Combination Flag" "INS_UWD_RISK_COVERS", /*"INS_UDW_RISK_DISCLOAD",*/ "Content Details", "INS_UDW_HOME_OWNERS_FEES", "Beneficiary", "Owner Type", "Date Of Birth", "Beneficiary Contact", "Relationship", "Trustee", "Trustee Contact", "Trustee Relationship" ], [ { name: "HOP_SEC_CODE", index: "HOP_SEC_CODE", width: 150 }, { name: "HOP_SEC_NAME", index: "HOP_SEC_NAME", width: 150 }, { name: "HOP_DESC", index: "HOP_DESC", width: 150 }, //{ name: "HOP_LOC_CODE", index: "HOP_LOC_CODE", width: 150 }, //{ name: "HOP_LOC_NAME", index: "HOP_LOC_NAME", width: 150 }, u.currencyColumn("HOP_SUM_INSURED_FC"), u.currencyColumn("HOP_SUM_INSURED_BC"), u.currencyColumn("HOP_RISK_PREM_FC"), u.currencyColumn("HOP_RISK_PREM_BC"), { name: "HOP_GEO_LIM", index: "HOP_GEO_LIM", width: 150 }, u.currencyColumn("HOP_SI_FC"), u.currencyColumn("HOP_SI_BC"), u.currencyColumn("HOP_TOT_PREM_FC"), u.currencyColumn("HOP_TOT_PREM_BC"), { name: "HOP_CURRENCY", index: "HOP_CURRENCY", width: 150, }, { name: "HOP_CURRENCY_RATE", index: "HOP_CURRENCY_RATE", width: 150 }, u.dateColumn("HOP_START_DATE"), u.dateColumn("HOP_END_DATE"), { name: "HOP_PERIOD_DAYS", index: "HOP_PERIOD_DAYS", width: 150 }, { name: "HOP_UW_YEAR", index: "HOP_UW_YEAR", width: 150 }, u.currencyColumn("HOP_ADJ_PREM_FC"), u.currencyColumn("HOP_ADJ_PREM_BC"), u.currencyColumn("HOP_DISC_FC"), u.currencyColumn("HOP_DISC_BC"), u.currencyColumn("HOP_LOAD_FC"), u.currencyColumn("HOP_LOAD_BC"), { name: "HOP_EXCESS_APP", index: "HOP_EXCESS_APP", width: 150 }, { name: "HOP_EXCESS_PERC", index: "HOP_EXCESS_PERC", width: 150 }, { name: "HOP_EXCESS_MIN", index: "HOP_EXCESS_MIN", width: 150 }, { name: "HOP_EXCESS_MAX", index: "HOP_EXCESS_MAX", width: 150 }, { name: "HOP_EXCESS_FIX", index: "HOP_EXCESS_FIX", width: 150 }, { name: "HOP_EXCESS_NAR", index: "HOP_EXCESS_NAR", width: 150 }, u.currencyColumn("HOP_COMP_FEE_FC"), u.currencyColumn("HOP_COMP_FEE_BC"), u.currencyColumn("HOP_COMMISSION_FC"), u.currencyColumn("HOP_COMMISSION_BC"), { name: "HOP_RIPML", index: "HOP_RIPML", width: 150 }, { name: "HOP_PML", index: "HOP_PML", width: 150 }, u.currencyColumn("HOP_RI_SI_FC"), u.currencyColumn("HOP_RI_SI_BC"), u.currencyColumn("HOP_RI_PREM_FC"), u.currencyColumn("HOP_RI_PREM_BC"), { name: "HOP_TXN_STATUS", index: "HOP_TXN_STATUS", width: 150 }, { name: "HOP_RISK_STATE", index: "HOP_RISK_STATE", width: 150 }, { name: "HOP_RISK_ID", index: "HOP_RISK_ID", width: 150, sorttype: "int" }, { name: "HOP_POLH_SYS_ID", index: "HOP_POLH_SYS_ID", width: 150 }, { name: "HOP_POLH_DOC_NO", index: "HOP_POLH_DOC_NO", width: 150 }, { name: "HOP_POLH_END_NO", index: "HOP_POLH_END_NO", width: 150 }, { name: "HOP_RISK_NO", index: "HOP_RISK_NO", width: 150 }, { name: "HOP_PDT_CODE", index: "HOP_PDT_CODE", width: 150 }, { name: "HOP_CVR_CODE", index: "HOP_CVR_CODE", width: 150 }, { name: "HOP_RENEWAL_STATUS", index: "HOP_RENEWAL_STATUS", width: 150 }, { name: "HOP_END_TYPE", index: "HOP_END_TYPE", width: 150 }, u.dateColumn("HOP_APHOPVE_DATE"), u.dateColumn("HOP_ACCT_DATE"), { name: "HOP_SUSPND_YN", index: "HOP_SUSPND_YN" }, u.dateColumn("HOP_SUS_FROM_DATE"), u.dateColumn("HOP_SUS_TO_DATE"), { name: "HOP_SUSPND_PERIOD", index: "HOP_SUSPND_PERIOD" }, { name: "HOP_CRTE_BY", index: "HOP_CRTE_BY", width: 150 }, u.dateTimeColumn("HOP_CRTE_DATE"), { name: "HOP_MOD_BY", index: "HOP_MOD_BY", width: 150 }, u.dateTimeColumn("HOP_MOD_DATE"), { name: "HOP_STATUS", index: "HOP_STATUS", width: 150 }, { name: "HOP_SYS_ID", index: "HOP_SYS_ID", width: 150 }, { name: "HOP_LOC_SYS_ID", index: "HOP_LOC_SYS_ID", width: 150 }, { name: "HOP_COMPULSORY_YN", index: "HOP_COMPULSORY_YN" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, //{ name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, { name: "INS_UDW_HOME_OWNERS_DETAILS", index: "INS_UDW_HOME_OWNERS_DETAILS", hidden: true }, { name: "INS_UDW_HOME_OWNERS_FEES", index: "INS_UDW_HOME_OWNERS_FEES", hidden: true }, { name: "HOP_BENEFICIARY", index: "HOP_BENEFICIARY" }, { name: "HOP_OWNER_TYPE", index: "HOP_OWNER_TYPE" }, { name: "HOP_DOB", index: "HOP_DOB" }, { name: "HOP_BENEFICIARY_CONTACT", index: "HOP_BENEFICIARY_CONTACT" }, { name: "HOP_BENEFICIARY_RELATIONSHIP", index: "HOP_BENEFICIARY_RELATIONSHIP" }, { name: "HOP_TRUSTEE", index: "HOP_TRUSTEE" }, { name: "HOP_TRUSTEE_CONTACT", index: "HOP_TRUSTEE_CONTACT" }, { name: "HOP_TRUSTEE_RELATIONSHIP", index: "HOP_TRUSTEE_RELATIONSHIP" }, ], //Retrive Grid data into form input fields on row click.. function (selId) { u.setGlobal("excessChange", true); const grid = u.getGlobal("homeOwnersRiskGrid"); $("form input[name='HOP_SYS_ID']").data("update", true); u.fill_form(u.getRow(selId, grid), "#homeForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "HOP_SYS_ID"), }, "#coverForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "HOP_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "HOP_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "HOP_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "HOP_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ FOTW_SHARE_SI_FC: grid.jqGrid("getCell", selId, "HOP_SI_FC"), FOTW_SHARE_SI_BC: grid.jqGrid("getCell", selId, "HOP_SI_BC"), FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "HOP_TOT_PREM_FC"), FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "HOP_TOT_PREM_BC"), }, "#CoinsLeaderForm"); u.fill_form({ HODT_HOP_SYS_ID: grid.jqGrid("getCell", selId, "HOP_SYS_ID"), }, "#secdetailsForm"); var covers = u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || "[]"); var discLoads = u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_RISK_DISCLOAD") || "[]"); var secDetails = u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_HOME_OWNERS_DETAILS") || "[]"); if (covers.length > 0) { u.clear_grid_data(u.getGlobal("udwCoverGrid")); u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } if (discLoads.length > 0) { u.clear_grid_data(u.getGlobal("udwRskDiscLoadingGrid")); u.grid_populate(u.getGlobal("udwRskDiscLoadingGrid"), "", discLoads); } if (secDetails.length > 0) { u.clear_grid_data(u.getGlobal("homeSectionGrid")); u.grid_populate(u.getGlobal("homeSectionGrid"), "", secDetails); } u.setGlobal("excessChange", true); }, function (id) { //const grid = u.getGlobal("homeOwnersRiskGrid"); //const homeOwnersRiskId = grid.jqGrid("getCell", id, "HOP_SYS_ID"); //if (homeOwnersRiskId == $("#HOP_SYS_ID").val()) { // $("#HomeOwnersModal").modal(); // // $("#RiskCoverModal").modal(); // //Hide covers not related to selected risk //} //else { // u.growl_warning("No Home Owners Risk selected, Please check and try again"); //}; })); /*---------------------------------- * HOME OWNERS SECTION DETAILS GRID *--------------------------------*/ u.setGlobal("homeSectionGrid", u.default_grid("#gridSecDetails", "#gridSecDetailsPager", "Risk Section Details", [ "Risk sys ID", "Sys ID", "Item Name", "Sum Insured", "Quantity", "Description", "Serial No", "Manufacture Year", "Created by", "Created Date", "Modified by", "Modified Date", "Status" ], [ { name: "HODT_HOP_SYS_ID", index: "HODT_HOP_SYS_ID", width: 200 }, { name: "HODT_SYS_ID", index: "HODT_SYS_ID", width: 200 }, { name: "HODT_ITEM_NAME", index: "HODT_ITEM_NAME", width: 200 }, u.currencyColumn("HODT_SUM_INSURED"), { name: "HODT_QTY", index: "HODT_QTY", width: 200 }, { name: "HODT_DESC", index: "HODT_DESC", width: 200 }, { name: "HODT_SERIAL_NO", index: "HODT_SERIAL_NO", width: 200 }, { name: "HODT_MANUFACTURE_YEAR", index: "HODT_MANUFACTURE_YEAR", width: 200 }, { name: "HODT_CRTE_BY", index: "HODT_CRTE_BY", width: 200 }, u.dateTimeColumn("HODT_CRTE_DATE"), { name: "HODT_MOD_BY", index: "HODT_MOD_BY", width: 200 }, u.dateTimeColumn("HODT_MOD_DATE"), { name: "HODT_STATUS", index: "HODT_STATUS", width: 200 }, ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("homeSectionGrid"); // var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='HODT_SYS_ID']").data("update", true); u.fill_form({ HODT_ITEM_NAME: grid.jqGrid("getCell", sel_id, "HODT_ITEM_NAME"), HODT_SUM_INSURED: grid.jqGrid("getCell", sel_id, "HODT_SUM_INSURED"), HODT_QTY: grid.jqGrid("getCell", sel_id, "HODT_QTY"), HODT_DESC: grid.jqGrid("getCell", sel_id, "HODT_DESC"), HODT_MANUFACTURE_YEAR: grid.jqGrid("getCell", sel_id, "HODT_MANUFACTURE_YEAR"), HODT_SERIAL_NO: grid.jqGrid("getCell", sel_id, "HODT_SERIAL_NO") }, "#secdetailsForm"); })); u.setGlobal("fireRiskGrid", u.default_grid("#gridPLoc", "#gridPLocPager", "Location Details", [ "ID", "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", "Location Name", /*"Location Desc",*/ "Location Address", "Combine RI?", "RI Combination Flag", "Sum Insured FC", "Sum Insured BC", "Total Premium FC", "Total Premium BC", "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Net Premium FC", "Net Premium BC", "Fee FC", "Fee BC", "Compulsory Fee FC", "Compulsory Fee BC", "Commission FC", "Commission BC", "Terorism Prm FC", "Terorism Prm BC", "Txn Status", "Risk State", //RI "RI_Applicable", "RI Eff Date", "RI SI FC", "RI SI BC", "RI Premium FC", "RI Premium BC", // "Loc No.", "Occupancy Code", "Occupancy Name", "Occupancy Section", "Earthquake", "Flood", "RI EML", "EML Perc", "Start Date", "End Date", "UW Year", "Policy Cancelled", "Cancelled Reason", "Product code", "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Polh Sys ID", "PolDocNo", "Endorsement No.", "Digital Address", "INS_UWD_FIRE_LOCINT" ], [ { name: "PLOC_SYS_ID", index: "PLOC_SYS_ID", width: 150 }, { name: "PLOC_REG_CODE", index: "PLOC_REG_CODE", width: 150, hidden: true }, { name: "PLOC_REG_NAME", index: "PLOC_REG_NAME", width: 150 }, { name: "PLOC_AREA_CODE", index: "PLOC_AREA_CODE", width: 150, hidden: true }, { name: "PLOC_AREA_NAME", index: "PLOC_AREA_NAME", width: 150 }, { name: "PLOC_LOC_CODE", index: "PLOC_LOC_CODE", width: 150, hidden: true }, { name: "PLOC_LOC_NAME", index: "PLOC_LOC_NAME", width: 150 }, //{ name: "PLOC_LOC_DESC", index: "PLOC_LOC_DESC", width: 150 }, { name: "PLOC_LOC_ADDRS", index: "PLOC_LOC_ADDRS", width: 150 }, { name: "PLOC_RIC_YN", index: "PLOC_RIC_YN", width: 150 }, { name: "PLOC_RIC_CODE", index: "PLOC_RIC_CODE", width: 150 }, u.currencyColumn("PLOC_SI_FC"), u.currencyColumn("PLOC_SI_BC"), u.currencyColumn("PLOC_TOT_PREM_FC"), u.currencyColumn("PLOC_TOT_PREM_BC"), u.currencyColumn("PLOC_RISK_PREM_FC"), u.currencyColumn("PLOC_RISK_PREM_BC"), u.currencyColumn("PLOC_ADJ_PREM_FC"), u.currencyColumn("PLOC_ADJ_PREM_BC"), u.currencyColumn("PLOC_DISC_FC"), u.currencyColumn("PLOC_DISC_BC"), u.currencyColumn("PLOC_LOAD_FC"), u.currencyColumn("PLOC_LOAD_BC"), u.currencyColumn("PLOC_NET_PREM_FC"), u.currencyColumn("PLOC_NET_PREM_BC"), u.currencyColumn("PLOC_FEES_FC"), u.currencyColumn("PLOC_FEES_BC"), u.currencyColumn("PLOC_COMP_FEE_FC"), u.currencyColumn("PLOC_COMP_FEE_BC"), u.currencyColumn("PLOC_COMMISSION_FC"), u.currencyColumn("PLOC_COMMISSION_BC"), u.currencyColumn("PLOC_TRISM_PREM_FC"), u.currencyColumn("PLOC_TRISM_PREM_BC"), { name: "PLOC_TXN_STATUS", index: "PLOC_TXN_STATUS", width: 150 }, { name: "PLOC_RISK_STATE", index: "PLOC_RISK_STATE", width: 150 }, { name: "PLOC_RI_APPLICABLE", index: "PLOC_RI_APPLICABLE", width: 150 }, u.dateColumn("PLOC_RI_EFF_DATE"), u.currencyColumn("PLOC_RI_SI_FC"), u.currencyColumn("PLOC_RI_SI_BC"), u.currencyColumn("PLOC_RI_PREM_FC"), u.currencyColumn("PLOC_RI_PREM_BC"), { name: "PLOC_RISK_NO", index: "PLOC_RISK_NO", width: 150 }, { name: "PLOC_OCCUP_CODE", index: "PLOC_OCCUP_CODE", width: 150 }, { name: "PLOC_OCCUP_NAME", index: "PLOC_OCCUP_NAME", width: 150 }, { name: "PLOC_OCCUP_SECTION", index: "PLOC_OCCUP_SECTION", width: 150 }, { name: "PLOC_EQZONE", index: "PLOC_EQZONE", width: 150 }, { name: "PLOC_FDZONE", index: "PLOC_FDZONE", width: 150 }, { name: "PLOC_RIEML", index: "PLOC_RIEML", width: 150 }, { name: "PLOC_EML", index: "PLOC_EML", width: 150 }, u.dateColumn("PLOC_START_DATE"), u.dateColumn("PLOC_END_DATE"), { name: "PLOC_UW_YEAR", index: "PLOC_UW_YEAR", width: 150 }, { name: "PLOC_POL_CANCELLED", index: "PLOC_POL_CANCELLED", width: 150 }, { name: "PLOC_CANCELLED_REASON", index: "PLOC_CANCELLED_REASON", width: 150 }, { name: "PLOC_PDT_CODE", index: "PLOC_PDT_CODE", width: 150 }, { name: "PLOC_CVR_CODE", index: "PLOC_CVR_CODE", width: 150 }, { name: "PLOC_RENEWAL_STATUS", index: "PLOC_RENEWAL_STATUS", width: 150 }, { name: "PLOC_END_TYPE", index: "PLOC_END_TYPE", width: 150 }, u.dateColumn("PLOC_APPROVE_DATE"), u.dateColumn("PLOC_ACCT_DATE"), { name: "PLOC_CRTE_BY", index: "PLOC_CRTE_BY", width: 150 }, u.dateTimeColumn("PLOC_CRTE_DATE"), { name: "PLOC_MOD_BY", index: "PLOC_MOD_BY", width: 150 }, u.dateTimeColumn("PLOC_MOD_DATE"), { name: "PLOC_STATUS", index: "PLOC_STATUS", width: 150 }, { name: "PLOC_POLH_SYS_ID", index: "PLOC_POLH_SYS_ID", width: 150 }, { name: "PLOC_POLH_DOC_NO", index: "PLOC_POLH_DOC_NO", width: 150 }, { name: "PLOC_POLH_END_NO", index: "PLOC_POLH_END_NO", width: 150 }, { name: "PLOC_GPS", index: "PLOC_GPS", width: 150 }, { name: "INS_UWD_FIRE_LOCINT", index: "INS_UWD_FIRE_LOCINT", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("fireRiskGrid"); let locationData = u.getRow(selId, grid) || {}; u.form_reset("#locationForm"); u.fill_form(locationData, "#locationForm"); u.fill_form({ LINT_PLOC_SYS_ID: grid.jqGrid("getCell", selId, "PLOC_SYS_ID"), }, "#interestForm"); //u.fill_form({ // FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "PLOC_SI_FC"), // FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "PLOC_SI_BC"), // FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "PLOC_TOT_PREM_FC"), // FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "PLOC_TOT_PREM_BC"), //}, "#facInwardForm"); //u.fill_form({ // CIL_SHARE_SI_FC: grid.jqGrid("getCell", selId, "PLOC_SI_FC"), // CIL_SHARE_SI_BC: grid.jqGrid("getCell", selId, "PLOC_SI_BC"), // CIL_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "PLOC_TOT_PREM_FC"), // CIL_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "PLOC_TOT_PREM_BC"), //}, "#CoinsLeaderForm"); }, function (id) { const grid = u.getGlobal("fireRiskGrid"); const plocRiskId = grid.jqGrid("getCell", id, "PLOC_SYS_ID"); if (plocRiskId == $("#PLOC_SYS_ID").val()) { //$("#LocationModal").modal(); } else { u.growl_warning("No Location Risk selected, Please check and try again"); }; })); u.setGlobal("fireIntGrid", u.default_grid("#gridInterest", "#gridInterestPager", "Location Interest", [ "Risk Code", "Risk Name", "SI FC", "SI BC ", "Net Premium FC", "Net Premium BC ", "Fees FC", "Fees BC", "Total Premium FC", "Total Premium BC ", "Gross Premium FC", "Gross Premium BC ", "RI SI FC", "RI SI BC ", "Loading FC", "Loading BC", "Discount FC", "Discount BC", "DL Amount FC", "DL Amount BC", "Start Date", "End Date", "Days", "Year", "Premium Basis", "Description", "Roofing Type", "Security", "Sub Const ", "RI EML", "EML SI", "Cover Limit", "Fees App", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", "Excess Description", "Excess Code", "Excess Name", "Excess Value", "Excess Value Type", "Sys ID", "Risk No", "Location ID", "Polh Sys ID", "Polh Doc No", "Endorsement No.", "Renewal No.", "TXN Status", "Int State", "Int Status", "INS_UDW_RISK_DISCLOAD", "INS_UWD_RISK_COVERS", "INS_UDW_FIRE_FEES" ], [ { name: "LINT_RISK_CODE", index: "LINT_RISK_CODE", width: 150 }, { name: "LINT_RISK_NAME", index: "LINT_RISK_NAME", width: 150 }, u.currencyColumn("LINT_SI_FC"), u.currencyColumn("LINT_SI_BC"), u.currencyColumn("LINT_NET_PREM_FC"), u.currencyColumn("LINT_NET_PREM_BC"), u.currencyColumn("LINT_FEES_FC"), u.currencyColumn("LINT_FEES_BC"), u.currencyColumn("LINT_PRM_FC"), u.currencyColumn("LINT_PRM_BC"), u.currencyColumn("LINT_GROSS_PRM_FC"), u.currencyColumn("LINT_GROSS_PRM_BC"), u.currencyColumn("LINT_RI_SI_FC"), u.currencyColumn("LINT_RI_SI_BC"), u.currencyColumn("LINT_LOAD_FC"), u.currencyColumn("LINT_LOAD_BC"), u.currencyColumn("LINT_DISC_FC"), u.currencyColumn("LINT_DISC_BC"), u.currencyColumn("LINT_DL_AMT_FC"), u.currencyColumn("LINT_DL_AMT_BC"), u.dateColumn("LINT_START_DATE"), u.dateColumn("LINT_END_DATE"), { name: "LINT_PERIOD_DAYS", index: "LINT_PERIOD_DAYS", width: 150 }, { name: "LINT_UW_YEAR", index: "LINT_UW_YEAR", width: 150 }, { name: "LINT_PREMIUM_BASIS", index: "LINT_PREMIUM_BASIS", width: 150 }, { name: "LINT_DESC", index: "LINT_DESC", width: 150 }, { name: "LINT_ROOF_TYPE", index: "LINT_ROOF_TYPE", width: 150 }, { name: "LINT_SEC_TYPE", index: "LINT_SEC_TYPE", width: 150 }, { name: "LINT_CONS_TYPE", index: "LINT_CONS_TYPE", width: 150 }, { name: "LINT_RI_EML", index: "LINT_RI_EML", width: 150 }, { name: "LINT_EML_SI", index: "LINT_EML_SI", width: 150 }, { name: "LINT_CVLIMIT", index: "LINT_CVLIMIT", width: 150 }, { name: "LINT_FEES_YN", index: "LINT_FEES_YN", width: 150 }, { name: "LINT_EXCESS_APP", index: "LINT_EXCESS_APP", width: 150 }, { name: "LINT_EXCESS_PERC", index: "LINT_EXCESS_PERC", width: 150 }, { name: "LINT_EXCESS_MIN", index: "LINT_EXCESS_MIN", width: 150 }, { name: "LINT_EXCESS_MAX", index: "LINT_EXCESS_MAX", width: 150 }, { name: "LINT_EXCESS_FIX", index: "LINT_EXCESS_FIX", width: 150 }, { name: "LINT_EXCESS_NAR", index: "LINT_EXCESS_NAR", width: 150 }, { name: "LINT_EXCESS_DESC", index: "LINT_EXCESS_DESC", width: 150 }, { name: "LINT_EXCESS_CODE", index: "LINT_EXCESS_CODE", width: 150 }, { name: "LINT_EXCESS_NAME", index: "LINT_EXCESS_NAME", width: 150 }, { name: "LINT_EXCESS_VALUE", index: "LINT_EXCESS_VALUE", width: 150 }, { name: "LINT_EXCESS_VALUE_TYPE", index: "LINT_EXCESS_VALUE_TYPE", width: 150 }, { name: "LINT_SYS_ID", index: "LINT_SYS_ID", width: 150 }, { name: "LINT_RISK_NO", index: "LINT_RISK_NO", width: 150, sorttype: "int" }, { name: "LINT_FPLOC_SYS_ID", index: "LINT_FPLOC_SYS_ID", width: 150 }, { name: "LINT_POLH_SYS_ID", index: "LINT_POLH_SYS_ID", width: 150 }, { name: "LINT_POLH_DOC_NO", index: "LINT_POLH_DOC_NO", width: 150 }, { name: "LINT_POLH_END_NO", index: "LINT_POLH_END_NO", width: 150 }, { name: "LINT_POLH_RNW_NO", index: "LINT_POLH_RNW_NO", width: 150 }, { name: "LINT_TXN_STATUS", index: "LINT_TXN_STATUS", width: 150 }, { name: "LINT_RISK_STATE", index: "LINT_RISK_STATE", width: 150 }, { name: "LINT_STATUS", index: "LINT_STATUS", width: 150 }, { name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_FIRE_FEES", index: "INS_UDW_FIRE_FEES", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("fireIntGrid"); $("form input[name='LINT_RISK_CODE']").data("update", true); u.form_reset("#interestForm"); u.fill_form(u.getRow(selId, grid), "#interestForm"); //u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "LINT_SYS_ID") }, "#coverForm"); }, function (id) { //const grid = u.getGlobal("fireIntGrid"); //const inteRiskId = grid.jqGrid("getCell", id, "LINT_SYS_ID"); //if (inteRiskId == $("#LINT_SYS_ID").val()) { // $("#RiskCoverModal").modal(); //} else { // u.growl_warning("No Risk selected, Please check and try again"); //} })); u.setGlobal("vehicleRiskGrid", u.default_grid("#gridVehRisks", "#gridVehRisksPager", "Motor Risk", [ "VehID", "Risk Code", "Risk Name", "Veh Reg. No", "Net Premium", "Fees", "Sum Insured", "Gross Premium", "Risk Premium", "Net Premium BC", "Fees BC", "Sum Insured BC", "Gross Premium BC", "Risk Premium BC", "Comprehensive Premium FC", "Comprehensive Premium BC", "Schedule Payment Prem FC", "Schedule Payment Prem BC", "No. Of Seats", "Extra Seat Charge FC", "Extra Seat Charge BC", "Addon Benefit FC", "Addon Benefit BC", "Currency", "Exchange Rate", "Risk Start date", "Risk End date", "Period Days", "UW Year", "Make", "Model", "Body Type", "Body Type Code", "Color", "Registration Year", "Manufacture Year", "Chassis No.", "Engine No.", "Cubic Capacity", "CCl", "Excess", "Excess Percentage", "Min Excess", "Max Excess", "Excess Narration", "Fix Excess", "Additional TPPD", "TPPD Amount", "TP Interest", "TP Details", "Declined Y/N", "Declined Reasons", "Canceled Y/N", "Canceled Reason", "Already Insured Y/N", "Insured Description", "Premium Basis", "RI Applicable", "RI Effective Date", "RI SI FC", "RI SI BC", "RI Premium FC", "RI Premium BC", "Adj Premium FC", "Adj Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Excess Premium FC", "Excess Premium BC", "Compulsory Fee FC", "Compulsory Fee BC", "Commission FC", "Commission BC", "Txn Status", "Risk State", "Reg No. Unlckd Y/N", "Reg No. Unlckd By", "Reg No. Unlck Reason", "Chassis Unlckd Y/N", "Chassis Unlckd By", "Chassis Unlkd Reason", "Age Load", "Age Load FC", "Age Load BC", "Vehicle Value", "Vehicle Rate", "TTPD YN", "TTPD Value", "TTPD Rate", "Extra Seat Load", "Seat Load", "Usage code", "Risk No", "PolID", "PolDocNo", "Endorsement No.", "Issue Date", "Retrospective Date", "Product code", "Cover Code", " Renewal No.", "Endorsement Type", "Approval Date", "Account Date", "NCD Unlock YN", "NCD Unlock By", "NCD Desc", "NCD YRS", "NCD Percentage", "NCD Amount FC", "NCD Amount BC", "Min Seats", /*"Seat Load",*/ "Vehicle Sticker No.", "GIA No", "Brown Card No.", "Cover Note", "Processed for Claims", "Suspended?", "Suspended Period", "Suspended From", "Suspended To", "Created By", "Create Date", "Modified By", "Modified Date", "Status", "discount and loadings", "covers", "fees", "addon benefit", "schedule payment" ], [ //This is where we are in the refactoring of the amount, BC, FC, and the like code. { name: "VEH_SYS_ID", index: "VEH_SYS_ID", width: 150 }, { name: "VEH_RISK_CODE", index: "VEH_RISK_CODE", width: 150 }, { name: "VEH_RISK_NAME", index: "VEH_RISK_NAME", width: 150 }, { name: "VEH_VEH_REG_NO", index: "VEH_VEH_REG_NO", width: 150 }, u.currencyColumn("VEH_NET_PREM_FC"), u.currencyColumn("VEH_FEES_FC"), u.currencyColumn("VEH_SI_FC"), u.currencyColumn("VEH_TOT_PREM_FC"), u.currencyColumn("VEH_RISK_PREM_FC"), u.currencyColumn("VEH_NET_PREM_BC"), u.currencyColumn("VEH_FEES_BC"), u.currencyColumn("VEH_SI_BC"), u.currencyColumn("VEH_TOT_PREM_BC"), u.currencyColumn("VEH_RISK_PREM_BC"), u.currencyColumn("VEH_COMP_PREM_FC"), u.currencyColumn("VEH_COMP_PREM_BC"), u.currencyColumn("VEH_SCHD_PMT_PREM_FC"), u.currencyColumn("VEH_SCHD_PMT_PREM_BC"), { name: "VEH_PASSENGERS", index: "VEH_PASSENGERS", width: 150 }, u.currencyColumn("VEH_SEAT_CHRGE_FC"), u.currencyColumn("VEH_SEAT_CHRGE_BC"), u.currencyColumn("VEH_ADDON_BENEFIT_FC"), u.currencyColumn("VEH_ADDON_BENEFIT_BC"), { name: "VEH_CURRENCY", index: "VEH_CURRENCY", width: 150 }, { name: "VEH_CURR_RATE", index: "VEH_CURR_RATE", width: 150 }, u.dateColumn("VEH_START_DATE"), u.dateColumn("VEH_END_DATE"), u.integerColumn("VEH_PERIOD_DAYS"), { name: "VEH_UW_YEAR", index: "VEH_UW_YEAR", width: 150 }, { name: "VEH_MAKE", index: "VEH_MAKE", width: 150 }, { name: "VEH_MODEL", index: "VEH_MODEL", width: 150 }, { name: "VEH_BODY_TYPE", index: "VEH_BODY_TYPE", width: 150 }, { name: "VEH_BODY_TYPE_CODE", index: "VEH_BODY_TYPE_CODE", width: 150 }, { name: "VEH_COLOR", index: "VEH_COLOR", width: 150 }, { name: "VEH_REGISTRATION_YR", index: "VEH_REGISTRATION_YR", width: 150 }, { name: "VEH_MANUFACTURE_YR", index: "VEH_MANUFACTURE_YR", width: 150 }, { name: "VEH_CHASSIS_NO", index: "VEH_CHASSIS_NO", width: 150 }, { name: "VEH_ENGINE_NO", index: "VEH_ENGINE_NO", width: 150 }, { name: "VEH_CUBIC_CAP", index: "VEH_CUBIC_CAP", width: 150 }, { name: "VEH_CCL_PERC", index: "VEH_CCL_PERC", width: 150 }, { name: "VEH_EXCESS_APP", index: "VEH_EXCESS_APP", width: 150 }, { name: "VEH_EXCESS_PERC", index: "VEH_EXCESS_PERC", width: 150 }, { name: "VEH_EXCESS_MIN", index: "VEH_EXCESS_MIN", width: 150 }, { name: "VEH_EXCESS_MAX", index: "VEH_EXCESS_MAX", width: 150 }, { name: "VEH_EXCESS_NAR", index: "VEH_EXCESS_NAR", width: 150 }, { name: "VEH_EXCESS_FIX", index: "VEH_EXCESS_FIX", width: 150 }, { name: "VEH_EXTRA_TPPD", index: "VEH_EXTRA_TPPD", width: 150 }, { name: "VEH_ADD_TPPD", index: "VEH_ADD_TPPD", width: 150 }, { name: "VEH_TP_INTEREST", index: "VEH_TP_INTEREST", width: 150 }, { name: "VEH_TP_DETAILS", index: "VEH_TP_DETAILS", width: 150 }, { name: "VEH_DECLINED_YN", index: "VEH_DECLINED_YN", width: 150 }, { name: "VEH_DECLINED_REASON", index: "VEH_DECLINED_REASON", width: 150 }, { name: "VEH_CANCELED_YN", index: "VEH_CANCELED_YN", width: 100 }, { name: "VEH_CANCELLED_REASON", index: "VEH_CANCELLED_REASON", width: 150 }, { name: "VEH_INSURED_YN", index: "VEH_INSURED_YN", width: 100 }, { name: "VEH_INSURED_DESC", index: "VEH_INSURED_DESC", width: 150 }, { name: "VEH_PREMIUM_BASIS", index: "VEH_PREMIUM_BASIS", width: 150 }, { name: "VEH_RI_APPLICABLE", index: "VEH_RI_APPLICABLE", width: 150 }, u.dateColumn("VEH_RI_EFF_DATE"), u.currencyColumn("VEH_RI_SI_FC"), u.currencyColumn("VEH_RI_SI_BC"), u.currencyColumn("VEH_RI_PREM_FC"), u.currencyColumn("VEH_RI_PREM_BC"), u.currencyColumn("VEH_ADJ_PREM_FC"), u.currencyColumn("VEH_ADJ_PREM_BC"), u.currencyColumn("VEH_DISC_FC"), u.currencyColumn("VEH_DISC_BC"), u.currencyColumn("VEH_LOAD_FC"), u.currencyColumn("VEH_LOAD_BC"), u.currencyColumn("VEH_EXCESS_PREM_FC"), u.currencyColumn("VEH_EXCESS_PREM_BC"), u.currencyColumn("VEH_COMP_FEE_FC"), u.currencyColumn("VEH_COMP_FEE_BC"), u.currencyColumn("VEH_COMMISSION_FC"), u.currencyColumn("VEH_COMMISSION_BC"), { name: "VEH_TXN_STATUS", index: "VEH_TXN_STATUS", width: 150 }, { name: "VEH_RISK_STATE", index: "VEH_RISK_STATE", width: 150 }, { name: "VEH_REG_UNLOCK_YN", index: "VEH_REG_UNLOCK_YN", width: 150 }, { name: "VEH_REG_UNLOCK_BY", index: "VEH_REG_UNLOCK_BY", width: 150 }, { name: "VEH_REG_UNLOCK_DESC", index: "VEH_REG_UNLOCK_DESC", width: 150 }, { name: "VEH_CHAS_UNLOCK_YN", index: "VEH_CHAS_UNLOCK_YN", width: 150 }, { name: "VEH_CHAS_UNLOCK_BY", index: "VEH_CHAS_UNLOCK_BY", width: 150 }, { name: "VEH_CHAS_UNLOCK_DESC", index: "VEH_CHAS_UNLOCK_DESC", width: 150 }, { name: "VEH_AGE_PERC", index: "VEH_AGE_PERC", width: 150 }, u.currencyColumn("VEH_AGE_LOAD_FC"), u.currencyColumn("VEH_AGE_LOAD_BC"), { name: "VEH_VALUE", index: "VEH_VALUE", width: 150 }, { name: "VEH_RATE", index: "VEH_RATE", width: 150 }, { name: "VEH_TTPD_YN", index: "VEH_TTPD_YN", width: 150 }, { name: "VEH_TTPD_VALUE", index: "VEH_TTPD_VALUE", width: 150 }, { name: "VEH_TTPD_RATE", index: "VEH_TTPD_RATE", width: 150 }, { name: "VEH_EXTRA_SEAT_LOAD", index: "VEH_EXTRA_SEAT_LOAD", width: 150 }, { name: "VEH_MIN_SEAT_CHRGE", index: "VEH_MIN_SEAT_CHRGE", width: 150 }, { name: "VEH_USAGE_CODE", index: "VEH_USAGE_CODE", width: 150 }, { name: "VEH_RISK_NO", index: "VEH_RISK_NO", width: 150, sorttype: "int" }, { name: "VEH_POLH_SYS_ID", index: "VEH_POLH_SYS_ID", width: 150 }, { name: "VEH_POLH_DOC_NO", index: "VEH_POLH_DOC_NO", width: 150 }, { name: "VEH_POLH_END_NO", index: "VEH_POLH_END_NO", width: 150 }, u.dateColumn("VEH_ISSUE_DATE"), u.dateColumn("VEH_RETROS_DATE"), { name: "VEH_PRODUCT_CODE", index: "VEH_PRODUCT_CODE", width: 150 }, { name: "VEH_COVER_CODE", index: "VEH_COVER_CODE", width: 150 }, { name: "VEH_POLH_RNW_NO", index: "VEH_POLH_RNW_NO", width: 150 }, { name: "VEH_END_TYPE", index: "VEH_END_TYPE", width: 150 }, u.dateColumn("VEH_APPROVE_DATE"), u.dateColumn("VEH_ACCT_DATE"), { name: "VEH_NCD_UNLOCK_YN", index: "VEH_NCD_UNLOCK_YN", width: 150 }, { name: "VEH_NCD_UNLOCK_BY", index: "VEH_NCD_UNLOCK_BY", width: 150 }, { name: "VEH_NCD_UNLOCK_DESC", index: "VEH_NCD_UNLOCK_DESC", width: 150 }, { name: "VEH_NCD_YRS", index: "VEH_NCD_YRS", width: 150 }, u.floatingColumn("VEH_NCD_PERC", 150, 2), u.currencyColumn("VEH_NCD_AMNT_FC"), u.currencyColumn("VEH_NCD_AMNT_BC"), u.integerColumn("VEH_MIN_SEAT"), //u.floatingColumn("VEH_MIN_SEAT_CHRGE", 150, 2), { name: "VEH_STICKER_NO", index: "VEH_STICKER_NO", width: 150 }, { name: "VEH_GIA_NO", index: "VEH_GIA_NO", width: 150 }, { name: "VEH_BROWN_CARD_NO", index: "VEH_BROWN_CARD_NO", width: 150 }, { name: "VEH_COVER_NOTE", index: "VEH_COVER_NOTE", width: 150 }, { name: "VEH_CLM_YN", index: "VEH_CLM_YN", width: 150 }, { name: "VEH_SUSPND_YN", index: "VEH_SUSPND_YN", width: 150 }, { name: "VEH_SUSPND_PERIOD", index: "VEH_SUSPND_PERIOD", width: 150 }, //, u.dateColumn("VEH_SUS_FROM_DATE"), u.dateColumn("VEH_SUS_TO_DATE"), { name: "VEH_CRTE_BY", index: "VEH_CRTE_BY", width: 150 }, u.dateTimeColumn("VEH_CRTE_DATE"), { name: "VEH_MOD_BY", index: "VEH_MOD_BY", width: 150 }, u.dateTimeColumn("VEH_MOD_DATE"), { name: "VEH_STATUS", index: "VEH_STATUS", width: 150/*, formatter: u.gridRowColorFormatter*/ }, { name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_VEHICLE_FEES", index: "INS_UDW_VEHICLE_FEES", hidden: true }, { name: "INS_UWD_RISK_ADDON_BENEFIT", index: "INS_UWD_RISK_ADDON_BENEFIT", hidden: true }, { name: "INS_UDW_SCHEDULE_PMT", index: "INS_UDW_SCHEDULE_PMT", hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("vehicleRiskGrid"); let data = u.getRow(selId, grid); $("form input[name='VEH_RISK_CODE']").data("update", true); //u.fill_form(data, "#motorRiskForm", false); u.fill_form(u.getRow(selId, grid), "#additionalForm"); u.fill_form({ RCOV_RISK_NO: grid.jqGrid("getCell", selId, "VEH_RISK_CODE") }, "#coverForm"); //u.fill_form({ // FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "VEH_SI_FC"), // FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "VEH_SI_BC"), // FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "VEH_TOT_PREM_FC"), // FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "VEH_TOT_PREM_BC") //}, "#facInwardForm"); //u.fill_form({ // CIL_SHARE_SI_FC: grid.jqGrid("getCell", selId, "VEH_SI_FC"), // CIL_SHARE_SI_BC: grid.jqGrid("getCell", selId, "VEH_SI_BC"), // CIL_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "VEH_TOT_PREM_FC"), // CIL_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "VEH_TOT_PREM_BC") //}, "#CoinsLeaderForm"); $scope.riskInfo = u.getRow(selId, grid); }, function () { }, //{ // "A": { textColor: "#000000" },//active record - BLACK // "U": { textColor: "#000000" },//new record - BLACK // "D": { textColor: "#ff0000" },//deleted record - RED // "S": { textColor: "#ff5b00" } //suspended record - ORANGE //} )); /*---------------------- * OIL GAS LOCATION GRID *--------------------*/ u.setGlobal("oilgasLocationgrid", u.default_grid("#gridoilgasRisks", "#gridoilgasRisksPager", "oilgas Policy", [ "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", "Location Name", "Location Description", "Location Address", "Occupancy Code", "Occupancy Name", "Section", "Earthquake Zone", "No. Floors", "Floor No.", "Structure Height", "Year Built", "Process Block", "Degree", "Minutes", "Seconds", "RI EML YN", "EML Perc", "Type of Work", "Water Depth", "Commencement of Operation", "Gross Footage", "Terrirism SI FC", "Terrirism SI BC", "Terrirism Premium FC", "Terrirism Premium FC", "SI FC", "SI BC", "Total Prm FC", "Total Prm BC", "Currrency", "Currrency Rate", "Start Date", "End Date", "Period Days", "Uw Year", // "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "EML YN", "EML Perc", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", "Compulsory Fee FC", "Compulsory Fee BC", "Commossion FC", "Commission BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Txn Status", "Risk State", // "Risk ID", "PolID", "polDocNo", "Endorsement No.", "Risk No", "Product code", "Cover Code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Sys ID", "Combine RI?", "RI Combination Flag", "INS_UDW_OIL_GAS_INTEREST" ], [ { name: "OLS_REGION_CODE", index: "OLS_REGION_CODE", width: 150 }, { name: "OLS_REGION_NAME", index: "OLS_REGION_NAME", width: 150 }, { name: "OLS_AREA_CODE", index: "OLS_AREA_CODE", width: 150 }, { name: "OLS_AREA_NAME", index: "OLS_AREA_NAME", width: 150 }, { name: "OLS_LOC_CODE", index: "OLS_LOC_CODE", width: 150 }, { name: "OLS_LOC_NAME", index: "OLS_LOC_NAME", width: 150 }, { name: "OLS_LOC_DESC", index: "OLS_LOC_DESC", width: 150 }, { name: "OLS_LOC_ADDRS", index: "OLS_LOC_ADDRS", width: 150 }, { name: "OLS_OCCUP_CODE", index: "OLS_OCCUP_CODE", width: 150 }, { name: "OLS_OCCUP_NAME", index: "OLS_OCCUP_NAME", width: 150 }, { name: "OLS_SECTION", index: "OLS_SECTION", width: 150 }, { name: "OLS_EQ_ZONE", index: "OLS_EQ_ZONE", width: 150 }, { name: "OLS_NO_FLOORS", index: "OLS_NO_FLOORS", width: 150 }, { name: "OLS_FLOOR_NO", index: "OLS_FLOOR_NO", width: 150 }, { name: "OLS_STR_HT", index: "OLS_STR_HT", width: 150 }, { name: "OLS_YR_BUILT", index: "OLS_YR_BUILT", width: 150 }, { name: "OLS_PRSS_BLK", index: "OLS_PRSS_BLK", width: 150 }, { name: "OLS_DEGREE", index: "OLS_DEGREE", width: 150 }, { name: "OLS_MINS", index: "OLS_MINS", width: 150 }, { name: "OLS_SECONDS", index: "OLS_SECONDS", width: 150 }, { name: "OLS_RI_EML_BASIS", index: "OLS_RI_EML_BASIS", width: 150 }, { name: "OLS_EML", index: "OLS_EML", width: 150 }, { name: "OLS_TYPE_WORK", index: "OLS_TYPE_WORK", width: 150 }, { name: "OLS_WATER_DEPTH", index: "OLS_WATER_DEPTH", width: 150 }, { name: "OLS_COM_OPRN", index: "OLS_COM_OPRN", width: 150 }, { name: "OLS_GROSS_FOOTAGE", index: "OLS_GROSS_FOOTAGE", width: 150 }, u.currencyColumn("OLS_TRISM_SI_FC"), u.currencyColumn("OLS_TRISM_SI_BC"), u.currencyColumn("OLS_TRISM_PRM_FC"), u.currencyColumn("OLS_TRISM_PRM_BC"), u.currencyColumn("OLS_SI_FC"), u.currencyColumn("OLS_SI_BC"), u.currencyColumn("OLS_TOT_PREM_FC"), u.currencyColumn("OLS_TOT_PREM_BC"), { name: "OLS_CURRENCY", index: "OLS_CURRENCY", width: 150, }, { name: "OLS_CURRENCY_RATE", index: "OLS_CURRENCY_RATE", width: 150 }, u.dateColumn("OLS_START_DATE"), u.dateColumn("OLS_END_DATE"), { name: "OLS_PERIOD_DAYS", index: "OLS_PERIOD_DAYS", width: 150 }, { name: "OLS_UW_YEAR", index: "OLS_UW_YEAR", width: 150 }, u.currencyColumn("OLS_RISK_PREM_FC"), u.currencyColumn("OLS_RISK_PREM_BC"), u.currencyColumn("OLS_ADJ_PREM_FC"), u.currencyColumn("OLS_ADJ_PREM_BC"), u.currencyColumn("OLS_DISC_FC"), u.currencyColumn("OLS_DISC_BC"), u.currencyColumn("OLS_LOAD_FC"), u.currencyColumn("OLS_LOAD_BC"), { name: "OLS_EML_YN", index: "OLS_EML_YN", width: 150 }, { name: "OLS_EML_PERC", index: "OLS_EML_PERC", width: 150 }, { name: "OLS_EXCESS_APP", index: "OLS_EXCESS_APP", width: 150 }, { name: "OLS_EXCESS_PERC", index: "OLS_EXCESS_PERC", width: 150 }, { name: "OLS_EXCESS_MIN", index: "OLS_EXCESS_MIN", width: 150 }, { name: "OLS_EXCESS_MAX", index: "OLS_EXCESS_MAX", width: 150 }, { name: "OLS_EXCESS_FIX", index: "OLS_EXCESS_FIX", width: 150 }, { name: "OLS_EXCESS_NAR", index: "OLS_EXCESS_NAR", width: 150 }, u.currencyColumn("OLS_COMP_FEE_FC"), u.currencyColumn("OLS_COMP_FEE_BC"), u.currencyColumn("OLS_COMMISSION_FC"), u.currencyColumn("OLS_COMMISSION_BC"), u.currencyColumn("OLS_RI_SI_FC"), u.currencyColumn("OLS_RI_SI_BC"), u.currencyColumn("OLS_RI_PREM_FC"), { name: "OLS_RI_PREM_BC", index: "OLS_RI_PREM_BC", width: 150 }, { name: "OLS_TXN_STATUS", index: "OLS_TXN_STATUS", width: 150 }, { name: "OLS_RISK_STATE", index: "OLS_RISK_STATE", width: 150 }, { name: "OLS_RISK_ID", index: "OLS_RISK_ID", width: 150, sorttype: "int" }, { name: "OLS_POLH_SYS_ID", index: "OLS_POLH_SYS_ID", width: 150 }, { name: "OLS_POLH_DOC_NO", index: "OLS_POLH_DOC_NO", width: 150 }, { name: "OLS_POLH_END_NO", index: "OLS_POLH_END_NO", width: 150 }, { name: "OLS_RISK_NO", index: "OLS_RISK_NO", width: 150 }, { name: "OLS_PDT_CODE", index: "OLS_PDT_CODE", width: 150 }, { name: "OLS_CVR_CODE", index: "OLS_CVR_CODE", width: 150 }, { name: "OLS_RENEWAL_STATUS", index: "OLS_RENEWAL_STATUS", width: 150 }, { name: "OLS_END_TYPE", index: "OLS_END_TYPE", width: 150 }, u.dateColumn("OLS_APPROVE_DATE"), u.dateColumn("OLS_ACCT_DATE"), { name: "OLS_CRTE_BY", index: "OLS_CRTE_BY", width: 150 }, u.dateTimeColumn("OLS_CRTE_DATE"), { name: "OLS_MOD_BY", index: "OLS_MOD_BY", width: 150 }, u.dateTimeColumn("OLS_MOD_DATE"), { name: "OLS_STATUS", index: "OLS_STATUS", width: 150 }, { name: "OLS_SYS_ID", index: "OLS_SYS_ID", width: 150 }, { name: "OLS_RIC_YN", index: "OLS_RIC_YN" }, { name: "OLS_RIC_CODE", index: "OLS_RIC_CODE" }, { name: "INS_UDW_OIL_GAS_INTEREST", index: "INS_UDW_OIL_GAS_INTEREST" } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("oilgasLocationgrid"); u.form_reset("#oilgasForm"); let data = u.getRow(selId, grid) || {}; u.fill_form(data, "#oilgasForm"); }, function (id) { })); /*---------------------- * OIL GAS INTEREST GRID *--------------------*/ u.setGlobal("oilgasInterestgrid", u.default_grid("#gridOLINTDetails", "#gridOLINTDetailsPager", "Oil & Gas Interest Details", [ "ID", "Risk Code", "Risk Name", "Description", "SI FC", "SI BC", "Premium FC", "Premium BC", "Fees FC", "Fees BC", "Gross Premium FC", "Gross Premium BC", "Loading FC", "Loading BC", "Discount FC", "Discount BC", "RI SI FC", "RI SI BC", "RI Premium FC", "RI Premium BC", "EML YN", "EML PERC", "Substandard Construction", "Plinth Foundation", "Plinth Foundation Amount", "Escalation", "Escalation Amount", "Multiplier", "Risk ID", "Created by", "Post Date", "Modified by", "Modified Date", "Status", "INS_UWD_RISK_COVERS" ], [ { name: "OLINT_SYS_ID", index: "OLINT_SYS_ID", width: 200 }, { name: "OLINT_RISK_CODE", index: "OLINT_RISK_CODE", width: 200 }, { name: "OLINT_RISK_NAME", index: "OLINT_RISK_NAME", width: 200 }, { name: "OLINT_DESC", index: "OLINT_DESC", width: 200 }, u.currencyColumn("OLINT_SI_FC"), u.currencyColumn("OLINT_SI_BC"), u.currencyColumn("OLINT_NET_PREM_FC"), u.currencyColumn("OLINT_NET_PREM_BC"), u.currencyColumn("OLINT_FEES_FC"), u.currencyColumn("OLINT_FEES_BC"), u.currencyColumn("OLINT_GROSS_PRM_FC"), u.currencyColumn("OLINT_GROSS_PRM_BC"), u.currencyColumn("OLINT_LOAD_FC"), u.currencyColumn("OLINT_LOAD_BC"), u.currencyColumn("OLINT_DISC_FC"), u.currencyColumn("OLINT_DISC_BC"), u.currencyColumn("OLINT_RI_SI_FC"), u.currencyColumn("OLINT_RI_SI_BC"), u.currencyColumn("OLINT_RI_PREM_FC"), u.currencyColumn("OLINT_RI_PREM_BC"), { name: "OLINT_RI_EML", index: "OLINT_RI_EML", width: 200 }, u.currencyColumn("OLINT_EML_SI"), { name: "OLINT_SUBS_CONS", index: "OLINT_SUBS_CONS", width: 200 }, { name: "OLINT_PLINTH_FND", index: "OLINT_PLINTH_FND", width: 200 }, u.currencyColumn("OLINT_PLINTH_FND_AMT"), { name: "OLINT_ESC", index: "OLINT_ESC", width: 200 }, { name: "OLINT_ESC_PERC", index: "OLINT_ESC_PERC", width: 200 }, { name: "OLINT_MULTIPLIER", index: "OLINT_MULTIPLIER", width: 200 }, { name: "OLINT_OLS_SYS_ID", index: "OLINT_OLS_SYS_ID", width: 200 }, { name: "OLINT_CRTE_BY", index: "OLINT_CRTE_BY", width: 200 }, u.dateColumn("OLINT_CRTE_DATE"), { name: "OLINT_MOD_BY", index: "OLINT_MOD_BY", width: 200 }, u.dateColumn("OLINT_MOD_DATE"), { name: "OLINT_STATUS", index: "OLINT_STATUS", width: 200 }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", width: 200 }, ], function (selId) { const grid = u.getGlobal("oilgasInterestgrid"); u.form_reset("#olintDetailsForm"); let data = u.getRow(selId, grid) || {}; u.fill_form(data, "#olintDetailsForm"); if (data.OLINT_ESC && data.OLINT_ESC === "Y") { $("#OLINT_ESC").prop("checked", true); $("#OLINT_ESC").trigger("change"); } if (data.OLINT_PLINTH_FND && data.OLINT_PLINTH_FND === "Y") { $("#OLINT_PLINTH_FND").prop("checked", true); $("#OLINT_PLINTH_FND").trigger("change"); } })), /*---------------------- * policy search grid *--------------------*/ u.setGlobal("policySearchGrid", u.default_grid("#grdSearchResults", "#grdSearchResultsPager", "Policy Search Results", ["Policy No.", "Policy Document No.", "Proposal No.", "index"], [ { name: "POLH_SYS_ID", index: "POLH_SYS_ID" }, { name: "POLH_DISPLAY_NO", index: "POLH_DISPLAY_NO" }, { name: "POLH_STATUS", index: "POLH_STATUS" }, { name: "index", id: true, index: "index", hidden: true } ], function (index) { $scope.selected_index = index; if (u.getGlobal("searchResult")) { u.getGlobalStatic("productSearchFill")(u.getGlobal("searchResult")[index]); } }, function () { u.clear_grid_data($scope.search_grid); $("#mySearchResultModal").modal("hide"); })); /* * Conditions and clauses LOV grid */ u.setGlobal("udwClausesLovGrid", u.default_grid("#gridClausesLov", "#gridClausesLovPager", "Condition and Clauses List", ["Clause Code", "Clause Name" /*, "Type", "Description"*/], [ { name: "PCC_CLAU_CODE", id: true, index: "PCC_CLAU_CODE" }, { name: "CCL_NAME", index: "CCL_NAME" }, //{ name: "CCL_TYPE", index: "CCL_TYPE" }, { name: "PCC_DDESCRIPTION", index: "PCC_DDESCRIPTION" } ], function (selId) { const grid = u.getGlobal("udwClausesLovGrid"); u.fill_form({ PCC_CCL_CODE: grid.jqGrid("getCell", selId, "PCC_CLAU_CODE"), PCC_CCL_NAME: grid.jqGrid("getCell", selId, "CCL_NAME"), PCC_CCL_DESCRIPTION: grid.jqGrid("getCell", selId, "PCC_DDESCRIPTION"), //CCL_DESCRIPTION: grid.jqGrid("getCell", selId, "CCL_DESCRIPTION") }, "#condtionClauseForm"); }, function () { $("#clausesLovModal").modal("hide")})); /* * Conditions and clauses grid */ u.setGlobal("udwClausesGrid", u.default_grid("#grdCondClauses", "#grdCondClausesPager", "Condition and Clauses List", ["Clause Code", "Clause Name", "Description","Clause Created By", "Clause Modified By", "Clause Created Date", "Clause Modified Date", "Clause Status", "Clause System Id", "Clause Policy Id" /*,"Description"*/], [ { name: "PCC_CCL_CODE", index: "PCC_CCL_CODE" }, { name: "PCC_CCL_NAME", index: "PCC_CCL_NAME" }, { name: "PCC_CCL_DESCRIPTION", index: "PCC_CCL_DESCRIPTION" }, { name: "PCC_CRTE_BY", index: "PCC_CRTE_BY" }, { name: "PCC_MOD_BY", index: "PCC_MOD_BY" }, u.dateTimeColumn("PCC_CRTE_DATE"), u.dateTimeColumn("PCC_MOD_DATE"), { name: "PCC_STATUS", index: "PCC_STATUS" }, { name: "PCC_SYS_ID", index: "PCC_SYS_ID", hidden: true }, { name: "PCC_POLH_SYS_ID", index: "PCC_POLH_SYS_ID", hidden: true } //{ name: "CCL_DESCRIPTION", index: "CCL_DESCRIPTION" } ], function (selId) { const grid = u.getGlobal("udwClausesGrid"); u.fill_form({ PCC_SYS_ID: grid.jqGrid("getCell", selId, "PCC_SYS_ID"), PCC_POLH_SYS_ID: grid.jqGrid("getCell", selId, "PCC_POLH_SYS_ID"), PCC_CCL_NAME: grid.jqGrid("getCell", selId, "PCC_CCL_NAME"), PCC_CCL_CODE: grid.jqGrid("getCell", selId, "PCC_CCL_CODE"), PCC_CRTE_BY: grid.jqGrid("getCell", selId, "PCC_CRTE_BY"), PCC_MOD_BY: grid.jqGrid("getCell", selId, "PCC_MOD_BY"), PCC_CRTE_DATE: grid.jqGrid("getCell", selId, "PCC_CRTE_DATE"), PCC_MOD_DATE: grid.jqGrid("getCell", selId, "PCC_MOD_DATE"), PCC_STATUS: grid.jqGrid("getCell", selId, "PCC_STATUS"), PCC_CCL_DESCRIPTION: grid.jqGrid("getCell", selId, "PCC_CCL_DESCRIPTION") //CCL_DESCRIPTION: grid.jqGrid("getCell", selId, "CCL_DESCRIPTION") }, "#condtionClauseForm"); })); /* * Policy Documents Grid */ u.setGlobal("udwPolDocsGrid", u.default_grid("#grdPolicyFiles", "#grdPolicyFilesPager", "Policy Document List", [ "File Name","Description" ,/* "Content",*/ " Code", "Created By", "Created date", "Status", "Id", "PolId", "FileId" ], [ { name: "PW_NAME", index: "PW_NAME" }, { name: "PW_DESC", index: "PW_DESC" }, // { name: "PW_TEMPLATE", index: "PW_TEMPLATE", hidden: true }, { name: "PW_CODE", index: "PW_CODE" }, { name: "PW_CRTE_BY", index: "PW_CRTE_BY" }, u.dateTimeColumn("PW_CRTE_DATE"), { name: "PW_STATUS", index: "PW_STATUS" }, { name: "PW_SYS_ID", index: "PW_SYS_ID", hidden: true }, { name: "PW_PH_SYS_ID", index: "PW_PH_SYS_ID", hidden: true }, //{ name: "PF_MSF_SYS_ID", index: "PF_MSF_SYS_ID", hidden: true } ], //Retrieve Grid data into form input fields on row click... function (selId) { const grid = u.getGlobal("udwPolDocsGrid"); u.fill_form({ PW_CODE: u.getCell(grid, selId, "PW_CODE"), PW_NAME: u.getCell(grid, selId, "PW_NAME") }, "#policyFilesForm"); }, //preview file on double click function (id) { const grid = u.getGlobal("udwPolDocsGrid"); const rowId = u.getSelRow(grid); if (!rowId) return u.growl_warning("Please select document row to update."); let content = grid.jqGrid("getCell", rowId, "PW_TEMPLATE"); u.form_reset("#memoForm"); // content = u.getGlobal("setTemplateParameters")(content) tinymce.get("editor").setContent(content); $scope.newMemo = false; $("#memoModal").modal(); })); /* * UNDERWRITING CUSTOMER SETUP GRID */ u.setGlobal("udwCustomerGrid", u.default_grid("#grdCustomer", "#grdCustomerPager", "Customer List", ["Code", "Customer Type", "Customer Name", "Title", "First Name", "Last Name", "Other Name", "Official Name", "Home Address", "Postal Address", "Gender", "DOB", "Email Address", "Profession", "Pin No.", "Phone No", "Mobile No", "Bank Name", "Account Number", "Branch", "Status", "Created by", "Created Date", "ID1 Type", "ID1 No", "ID2 Type", "ID2 No"], [ { name: "CUS_CODE", id: true, index: "CUS_CODE" }, { name: "CUS_TYPE_CODE", index: "CUS_TYPE_CODE", hidden: true }, { name: "CUS_TYPE_NAME", index: "CUS_TYPE_NAME", hidden: true }, { name: "CUS_TITLE", index: "CUS_TITLE" }, { name: "CUS_FIRST_NAME", index: "CUS_FIRST_NAME" }, { name: "CUS_LAST_NAME", index: "CUS_LAST_NAME" }, { name: "CUS_OTHER_NAME", index: "CUS_OTHER_NAME" }, { name: "CUS_OFFICIAL_NAME", index: "CUS_OFFICIAL_NAME" }, { name: "CUS_ADDRS1", index: "CUS_ADDRS1" }, { name: "CUS_ADDRS2", index: "CUS_ADDRS2" }, { name: "CUS_GENDER", index: "CUS_GENDER" }, { name: "CUS_DOB", index: "CUS_DOB" }, { name: "CUS_EMAIL", index: "CUS_EMAIL" }, { name: "CUS_PROFESSION", index: "CUS_PROFESSION" }, { name: "CUS_PIN_NO", index: "CUS_PIN_NO" }, { name: "CUS_PHONE1", index: "CUS_PHONE1" }, { name: "CUS_MOBILE", index: "CUS_MOBILE" }, { name: "CUS_BANK_NAME", index: "CUS_BANK_NAME" }, { name: "CUS_ACC_NUM", index: "CUS_ACC_NUM" }, { name: "CUS_BANK_BRANCH", index: "CUS_BANK_BRANCH" }, { name: "CUS_STATUS", index: "CUS_STATUS" }, { name: "CUS_CRTE_BY", index: "CUS_CRTE_BY" }, u.dateTimeColumn("CUS_CRTE_DATE"), { name: 'CUS_ID1_TYPE', index: 'CUS_ID1_TYPE' }, { name: 'CUS_ID1_TYPE_NO', index: 'CUS_ID1_TYPE_NO' }, { name: 'CUS_ID2_TYPE', index: 'CUS_ID2_TYPE' }, { name: 'CUS_ID2_TYPE_NO', index: 'CUS_ID2_TYPE_NO' } ], //Retrieve Grid data into form input fields on row click.. function (selId) { $("form input[name='CUS_CODE']").data("update", true); const result = u.getRow(selId, u.getGlobal("udwCustomerGrid")); u.fill_form(result, "#customerForm"); $("#CUS_CODE").val(result.CUS_CODE); })); /* * SUB CLASS LOV GRID */ u.setGlobal("udwSubClassGrid", u.default_grid("#gridProdRisk", "#gridProdRiskPager", "Sub Class", ["Code", "Name"], [ { name: "RISK_CODE", index: "RISK_CODE", width: 150 }, { name: "RISK_NAME", index: "RISK_NAME", width: 400 }, ], function (selId) { //const grid = u.getGlobal("udwSubClassGrid"); //u.fill_form({ // POLH_SUB_CLASS_CODE: grid.jqGrid("getCell", selId, "RISK_CODE"), // PDT_NAME: grid.jqGrid("getCell", selId, "RISK_NAME") //}, "#polheaderForm"); }, async function (selId) { const grid = u.getGlobal("udwSubClassGrid"); const data = u.getRow(selId, grid); u.fill_form({ POLH_SUB_CLASS_CODE: data.RISK_CODE, PDT_NAME: data.RISK_NAME }, "#polheaderForm"); let ClassProduct = $("#POLH_CLASS_CODE").val(); switch (ClassProduct) { case "6000": if ($("#isPvtPolicy").val() === "true") return; await u.getGlobalStatic("subProductChange")(); break; } $("#prodRiskLovModal").modal("hide"); })); /*------------------------- * ADDON BENEFIT LOV GRID *------------------------*/ u.setGlobal("udwAddonBenefitLovGrid", u.default_grid("#gridAddonBenefitLov", "#gridAddonBenefitLovPager", "Addon Benefit", ["Code", "Name"], [ { name: "CODE", index: "CODE", width: 150 }, { name: "NAME", index: "NAME", width: 400 }, { name: "ID", index: "ID", width: 400 }, ], function (selId) {}, function (selId) { let data = selId ? u.getRow(selId, u.getGlobal("udwAddonBenefitLovGrid")) : {}; u.fill_form({ RAB_CODE: data.CODE, RAB_NAME: data.NAME }, "#AddonBenefitForm", false); $("#RAB_CODE").trigger("change"); $("#addonBenefitLovModal").modal("hide"); })); /* * INT COMM GRID */ u.setGlobal("udwAgntComsnGrid", u.default_grid("#gridinterComm", "#gridinterCommPager", "Intermediary Commission Percentage", ["Code", "Name", "Commission %"], [ { name: "COM_INT_CODE", index: "COM_INT_CODE", width: 150 }, { name: "COM_NAME", index: "COM_NAME", width: 250 }, { name: "COM_DFT_PERC", index: "COM_DFT_PERC", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. //Retrieve Grid data into form input fields on row click.. motorRisks_grid function (selId) { const grid = u.getGlobal("udwAgntComsnGrid"); $("form input[name='DL_CODE']").data("update", true); u.fill_form({ CMM_INT_CODE: grid.jqGrid("getCell", selId, "COM_INT_CODE"), CMM_INT_NAME: grid.jqGrid("getCell", selId, "COM_NAME"), CMM_COM_PERC: grid.jqGrid("getCell", selId, "COM_DFT_PERC"), }, "#agencycommForm"); }, function (selId) { const grid = u.getGlobal("udwAgntComsnGrid"); $("form input[name='DL_CODE']").data("update", true); u.fill_form({ CMM_INT_CODE: grid.jqGrid("getCell", selId, "COM_INT_CODE"), CMM_INT_NAME: grid.jqGrid("getCell", selId, "COM_NAME"), CMM_COM_PERC: grid.jqGrid("getCell", selId, "COM_DFT_PERC") }, "#agencycommForm"); $("#interCommLovModal").modal("hide"); })); /*-------------- * INT COMM GRID *-------------*/ u.setGlobal("udwAgntCommGrid", u.default_grid("#grdIntermediaryComm", "#grdIntermediaryCommPager", "Agent/Broker Commission", [ "Intermediary Code", "Name", "Premium Amt FC", "Premium Amt BC", "Comm Per(%)", "Comm. Amount FC", "Comm. Amount BC", "Status", "Pols_sysID", "Endorsement No.", "Renewal No.", "Class of Business", "Office", "Comm Date", "Created_By", "Created Date", "Modified Date", "Modified By", "Com_sys_ID" ], [ { name: "CMM_INT_CODE", index: "CMM_INT_CODE", width: 150 }, { name: "CMM_INT_NAME", index: "CMM_INT_NAME", width: 150 }, u.currencyColumn("CMM_PREM_AMT_FC"), u.currencyColumn("CMM_PREM_AMT_BC"), { name: "CMM_COM_PERC", index: "CMM_COM_PERC", width: 150 }, u.currencyColumn("CMM_COM_AMT_FC"), u.currencyColumn("CMM_COM_AMT_BC"), { name: "CMM_STATUS", index: "CMM_STATUS", hidden: false, width: 200 }, { name: "CMM_POL_SYS_ID", index: "CMM_POL_SYS_ID", hidden: true, width: 200 }, { name: "CMM_END_NO", index: "CMM_END_NO", hidden: false, width: 200 }, { name: "CMM_RNW_NO", index: "CMM_RNW_NO", hidden: false, width: 200 }, { name: "CMM_COB_CODE", index: "CMM_COB_CODE", hidden: false, width: 200 }, { name: "CMM_OFFICE", index: "CMM_OFFICE", hidden: false, width: 200 }, u.dateColumn("CMM_COM_DATE"), { name: "CMM_CRTE_BY", index: "CMM_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("CMM_CRTE_DATE"), u.dateTimeColumn("CMM_MOD_DATE"), { name: "CMM_SYS_ID", index: "CMM_SYS_ID", hidden: true, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwAgntCommGrid"); $("form input[name='CMM_INT_CODE']").data("update", true); u.fill_form({ CMM_INT_CODE: grid.jqGrid("getCell", selId, "CMM_INT_CODE"), CMM_INT_NAME: grid.jqGrid("getCell", selId, "CMM_INT_NAME"), CMM_COM_PERC: grid.jqGrid("getCell", selId, "CMM_COM_PERC") }, "#agencycommForm"); })); /*-------------------- * MULTI COUNTRY GRID *------------------*/ u.setGlobal("udwMultCountryGrid", u.default_grid("#grdMultCountry", "#grdMultCountryPager", "Agent/Broker Commission", [ "Country Code", "Country Name", "Country Rate", "MIN RATE", "MAX RATE", "Created_By", "Created Date", "Risk ID", "Endorsement No.", "Renewal No.", "Modified Date", "Modified By", "Status" ], [ { name: "COU_CODE", index: "COU_CODE", width: 150 }, { name: "COU_NAME", index: "COU_NAME", width: 150 }, { name: "COU_RATE", index: "COU_RATE", width: 150 }, { name: "COU_RATE_MIN", index: "COU_RATE_MIN", width: 150 }, { name: "COU_RATE_MAX", index: "COU_RATE_MAX", width: 150 }, { name: "COU_CRTE_BY", index: "COU_CRTE_BY", hidden: false, width: 200 }, { name: "COU_CRTE_DATE", index: "COU_CRTE_DATE", hidden: false }, { name: "COU_RISK_SYS_ID", index: "COU_RISK_SYS_ID", hidden: true, width: 200 }, { name: "COU_END_NO", index: "COU_END_NO", hidden: false, width: 200 }, { name: "COU_RNW_NO", index: "COU_RNW_NO", hidden: false, width: 200 }, u.dateTimeColumn("COU_MOD_DATE"), { name: "COU_MOD_BY", index: "COU_MOD_BY", hidden: false, width: 200 }, { name: "COU_STATUS", index: "COU_STATUS", hidden: false, width: 200 }, ], function (selId) { const grid = u.getGlobal("udwMultCountryGrid"); const data = u.getRow(selId, grid); u.fill_form(data, "#countryForm"); /*--------------------- * SET MIN AND MAX RATE *------------------**/ $("#COU_RATE").attr({ "min": (data.COU_RATE_MIN || 0), "max": (data.COU_RATE_MAX || 100)}); //let classCode = $("#POLH_CLASS_CODE").val(); //switch (classCode) { // case "9000": // $("#COU_CODE").val(data.COU_CODE); // $("#COU_CODE").trigger("change"); // break; // default: // u.fill_form(data, "#countryForm"); // break; //} })); ///* // * RISK DISC LOAD GRID // */ //u.setGlobal("udwRskDiscLoadGrid", u.default_grid("#gridRiskDiscLoad", "#gridRiskDiscLoadPager", "Risk Discount/Loading", // [" Code", "Name", "Default Percentage", "Default Amount", "Type"], // [ // { name: "DL_CODE", index: "DL_CODE", width: 100 }, // { name: "DL_NAME", index: "DL_NAME", width: 250 }, // ], // function (selId) { }, // function (selId) { // const grid = u.getGlobal("udwRskDiscLoadGrid"); // const discLoad = u.getRow(selId, grid); // /*------------------- // * THIS IS IMPORTANT // *-------------------*/ // let Product = $("#POLH_CLASS_CODE").val(); // switch (Product) { // case "9000": // $("#RSK_DL_CODE").val(discLoad.DL_CODE); // $("#RSK_DL_CODE").trigger("change"); // break; // default: // u.fill_form(discLoad, "#riskdiscloadingForm"); // break; // } // $("#RiskDiscLoadModal").modal("hide"); // } //)); u.setGlobal("udwAgntIntGrid", u.default_grid("#grdIntComm", "#grdIntCommPager", "Agent/Broker Commission", [ "Intermediary Code", "Name", "Premium Amt FC", "Premium Amt BC", "Comm Per(%)", "Comm. Amount FC", "Comm. Amount BC" ], [ { name: "SUB_CODE", index: "SUB_CODE", width: 150 }, { name: "SUB_OFFICIAL_NAME", index: "SUB_OFFICIAL_NAME", width: 150 }, u.currencyColumn("CMM_PREM_AMT_FC"), u.currencyColumn("CMM_PREM_AMT_BC"), { name: "SUB_COM_PERC", index: "SUB_COM_PERC", width: 150 }, u.currencyColumn("CMM_COM_AMT_FC"), u.currencyColumn("CMM_COM_AMT_BC") ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwAgntCommGrid"); $("form input[name='CMM_INT_CODE']").data("update", true); u.fill_form({ CMM_INT_CODE: grid.jqGrid("getCell", selId, "CMM_INT_CODE"), CMM_INT_NAME: grid.jqGrid("getCell", selId, "CMM_INT_NAME"), CMM_COM_PERC: grid.jqGrid("getCell", selId, "CMM_COM_PERC") }, "#agencycommForm"); })); /*------------------------- * POLICY ENDORSEMENTS GRID *------------------------*/ u.setGlobal("udwEndsmntGrid", u.default_grid("#grdEndorsement", "#grdEndorsementPager", "Policy Endorsement Details", [ "ID", "ENDORSEMENT CODE", "ENDORSEMENT NAME", "ENDORSEMENT NO.", "RENEWAL NO.", "FEE FC", "FEE BC", "EFFECTIVE DATE", "END DATE", "NOT LIABLE FROM", "NOT LIABLE TO", "DESCRIPTION", "REASON", "FLAG", "FEE CANC", "ADDON BENEFIT CANC", "POLICY PREMIUM CHANGE FC", "POLICY PREMIUM CHANGE BC", "POLICY SI CHANGE FC", "POLICY SI CHANGE BC", "POLICY COMMISSION CHANGE FC", "POLICY COMMISSION CHANGE BC", "POLICY FEE CHANGE FC", "POLICY FEE CHANGE BC", "POLICY DISCOUNT CHANGE FC", "POLICY DISCOUNT CHANGE BC", "POLICY LOAD CHANGE FC", "POLICY LOAD CHANGE BC", "POLICY COINS CHANGE FC", "POLICY COINS CHANGE BC", "POLICY COINS COMMISSION CHANGE FC", "POLICY COINS COMMISSION CHANGE FC", "POLICY ADDON BENEFIT FC", "POLICY ADDON BENEFIT BC","POLICY ID", "CREATED BY", "CREATE DATE", "STATUS", "MODIFIED BY", "MODIFIED DATE", "ENDORSEMENT STATE", "RISK ENDORSEMENT DETAILS" ], [ { name: "END_SYS_ID", index: "END_SYS_ID", hidden: true }, { name: "END_END_CODE", index: "END_END_CODE" }, { name: "END_NAME", index: "END_NAME", width: 250 }, { name: "END_NO", index: "END_NO", hidden: false, width: 250 }, { name: "END_RNW_NO", index: "END_RNW_NO", hidden: false, width: 250 }, u.currencyColumn("END_FEE_FC"), { name: "END_FEE", index: "END_FEE", hidden: false }, u.dateColumn("END_EFCTV_DATE"), u.dateColumn("END_TERM_DATE"), { name: "END_NOT_LIAB_FROM", index: "END_NOT_LIAB_FROM", hidden: true }, { name: "END_NOT_LIAB_TO", index: "END_NOT_LIAB_TO", hidden: true }, { name: "END_TEXT_DESC", index: "END_TEXT_DESC", width: 500 }, { name: "END_REASON", index: "END_REASON", width: 500 }, { name: "END_FLAG", index: "END_FLAG" }, { name: "END_POL_FEE_CANC_YN", index: "END_POL_FEE_CANC_YN" }, { name: "END_POL_ADDON_BENEFIT_CANC_YN", index: "END_POL_ADDON_BENEFIT_CANC_YN" }, u.currencyColumn("END_PREM_DIFF_FC"), u.currencyColumn("END_PREM_DIFF_BC"), u.currencyColumn("END_SI_DIFF_FC"), u.currencyColumn("END_SI_DIFF_BC"), u.currencyColumn("END_COMMSSN_DIFF_FC"), u.currencyColumn("END_COMMSSN_DIFF_BC"), u.currencyColumn("END_FEE_DIFF_FC"), u.currencyColumn("END_FEE_DIFF_BC"), u.currencyColumn("END_DISC_DIFF_FC"), u.currencyColumn("END_DISC_DIFF_BC"), u.currencyColumn("END_LOAD_DIFF_FC"), u.currencyColumn("END_LOAD_DIFF_BC"), u.currencyColumn("END_COINS_DIFF_FC"), u.currencyColumn("END_COINS_DIFF_BC"), u.currencyColumn("END_COINS_COMM_DIFF_FC"), u.currencyColumn("END_COINS_COMM_DIFF_BC"), u.currencyColumn("END_ADDON_BENEFIT_DIFF_FC"), u.currencyColumn("END_ADDON_BENEFIT_DIFF_BC"), { name: "END_POL_SYS_ID", index: "END_POL_SYS_ID", hidden: false }, { name: "END_CRTE_BY", index: "END_CRTE_BY", hidden: false }, u.dateTimeColumn("END_CRTE_DATE"), { name: "END_STATUS", index: "END_STATUS", hidden: false }, { name: "END_MOD_BY", index: "END_MOD_BY", hidden: false }, u.dateTimeColumn("END_MOD_DATE"), { name: "END_TXN_STATE", index: "END_TXN_STATE", width: 200 }, { name: "UDW_RISK_ENDSMNT_DTLS", index: "UDW_RISK_ENDSMNT_DTLS", hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEndsmntGrid"); let rowId = u.getSelRow(grid); let data = u.getRow(rowId, grid); u.fill_form(data, "#endorsementForm"); }, function (id) { var grid = u.getGlobal("udwEndsmntGrid"); /*---------------------------------------- * set currency and net to customer amount ----------------------------------------*/ $("#currency").text(u.fieldVal("#POLH_CURRENCY")); $("#net_end_prem").text(u.getCell(grid, id, "END_PREM_DIFF_FC").toFixed(2)); const summaries = u.get_grid_data(u.getGlobal("udwEndsmntSumGrid")); u.clear_grid_data(u.getGlobal("udwEndsmntSumGrid")); const endorsementSummaryGrid = u.getGlobal("udwEndsmntSumGrid"); if (summaries.Any()) { summaries.ForEach(e => { switch (e.CODE) { case "PREM": e.AMOUNT_FC = u.getCell(grid, id, "END_PREM_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_PREM_DIFF_BC"); break; case "DISC": e.AMOUNT_FC = u.getCell(grid, id, "END_DISC_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_DISC_DIFF_FC"); break; case "LOD": e.AMOUNT_FC = u.getCell(grid, id, "END_LOAD_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_LOAD_DIFF_BC"); break; case "FEE": e.AMOUNT_FC = u.getCell(grid, id, "END_FEE_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_FEE_DIFF_BC"); break; case "COMM": e.AMOUNT_FC = u.getCell(grid, id, "END_COMMSSN_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_COMMSSN_DIFF_BC"); break; case "COINS": e.AMOUNT_FC = u.getCell(grid, id, "END_COINS_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_COINS_DIFF_BC"); break; case "SI": e.AMOUNT_FC = u.getCell(grid, id, "END_SI_DIFF_FC"); e.AMOUNT_BC = u.getCell(grid, id, "END_SI_DIFF_BC"); break; default: } }); u.gridPopulate(u.getGlobal("udwEndsmntSumGrid"), summaries); } else { endorsementSummaryGrid.addRowData(grid.ID, { CODE: "PREM", NAME: "Premium", AMOUNT_FC: u.getCell(grid, id, "END_PREM_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_PREM_DIFF_BC")}); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "DISC", NAME: "Discounts", AMOUNT_FC: u.getCell(grid, id, "END_DISC_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_DISC_DIFF_BC") }); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "LOD", NAME: "Loadings", AMOUNT_FC: u.getCell(grid, id, "END_LOAD_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_LOAD_DIFF_FC") }); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "FEE", NAME: "Fees", AMOUNT_FC: u.getCell(grid, id, "END_FEE_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_FEE_DIFF_BC") }); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "COMM", NAME: "Commission", AMOUNT_FC: u.getCell(grid, id, "END_COMMSSN_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_COMMSSN_DIFF_BC") }); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "COINS", NAME: "RI", AMOUNT_FC: u.getCell(grid, id, "END_COINS_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_COINS_DIFF_BC") }); endorsementSummaryGrid.addRowData(grid.ID, { CODE: "SI", NAME: "Sum Insured", AMOUNT_FC: u.getCell(grid, id, "END_SI_DIFF_FC"), AMOUNT_BC: u.getCell(grid, id, "END_SI_DIFF_FC") }); } //show endorsement summary modal $("#endorsementSummaryModal").modal(); })); /* * ENDORSEMENT SUMMARY GRID */ u.setGlobal("udwEndsmntSumGrid", u.default_grid("#gridEndorsementSummary", "#gridEndorsementSummaryPager", "Policy Endorsement Summary", ["Code", "Description", "FC_Amount", "BC_Amount", "Type"], [ { name: "CODE", index: "CODE", width: 150 }, { name: "NAME", index: "NAME", width: 350 }, u.currencyColumn("AMOUNT_FC"), u.currencyColumn("AMOUNT_BC"), { name: "TYPE", index: "TYPE", width: 150, hidden: true } ])); /* * PREMIUM SUMMARY GRID */ u.setGlobal("udwPremSumGrid", u.default_grid("#gridPolPremSummary", "#gridPolPremSummaryPager", "Policy Premium Summary", ["Code", "Description", "FC_Amount", "BC_Amount", "Type"], [ { name: "CODE", index: "CODE", width: 150 }, { name: "DESCRIPTION", index: "DESCRIPTION", width: 350 }, u.currencyColumn ("FC_AMOUNT"), u.currencyColumn ("BC_AMOUNT"), { name: "TYPE", index: "TYPE", width: 150, hidden: true } ])); /* * CUSTOMER SEARCH GRID */ u.setGlobal("udwCustSearchGrid", u.default_grid("#gridCustomer", "#gridCustomerPager", "Customer", ["Code", "Full Name", "Date of Birth", "Address", "Tel no", "Mobile", "AML Check", "Created date", "Created by"], [ { name: "CUS_CODE", index: "CUS_CODE", width: 150 }, { name: "CUS_OFFICIAL_NAME", index: "CUS_OFFICIAL_NAME", width: 150 }, { name: "CUS_DOB", index: "CUS_DOB", width: 150 }, { name: "CUS_ADDRS1", index: "CUS_ADDRS1", width: 150 }, { name: "CUS_PHONE1", index: "CUS_PHONE1", width: 150 }, { name: "CUS_AML_YN", index: "CUS_AML_YN", width: 150 }, { name: "CUS_MOBILE", index: "CUS_MOBILE", width: 150 }, u.dateTimeColumn("CUS_CRTE_DATE"), { name: "CUS_CRTE_BY", index: "CUS_CRTE_BY", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwCustSearchGrid"); $("form input[name='CUS_CODE']").data("update", true); u.fill_form({ POLH_CUST_CODE: grid.jqGrid("getCell", selId, "CUS_CODE"), POLH_CUST_NAME: grid.jqGrid("getCell", selId, "CUS_OFFICIAL_NAME"), POLH_CUST_ADRS: grid.jqGrid("getCell", selId, "CUS_ADDRS1"), POLH_CUST_TEL: grid.jqGrid("getCell", selId, "CUS_PHONE1"), POLH_CUST_AMLCHECK: grid.jqGrid("getCell", selId, "CUS_AML_YN"), CUS_DOB: grid.jqGrid("getCell", selId, "CUS_DOB"), CUS_MOBILE: grid.jqGrid("getCell", selId, "CUS_MOBILE"), CUS_CRTE_DATE: grid.jqGrid("getCell", selId, "CUS_CRTE_DATE"), CUS_CRTE_BY: grid.jqGrid("getCell", selId, "CUS_CRTE_BY") }, "#polheaderForm"); $("#POLH_CUST_AMLCHECK").trigger("change"); //ownership field should also update to selected customer $("#POLH_OWNSHIP").val(grid.jqGrid("getCell", selId, "CUS_OFFICIAL_NAME")); }, //Retrieve Grid data into form input fields on row double click.... XXX function (selId) { const grid = u.getGlobal("udwCustSearchGrid"); $("form input[name='CUS_CODE']").data("update", true); u.fill_form({ POLH_CUST_CODE: grid.jqGrid("getCell", selId, "CUS_CODE"), POLH_CUST_AMLCHECK: grid.jqGrid("getCell", selId, "CUS_AML_YN"), CUS_OFFICIAL_NAME: grid.jqGrid("getCell", selId, "CUS_OFFICIAL_NAME"), CUS_ADDRS1: grid.jqGrid("getCell", selId, "CUS_ADDRS1"), CUS_PHONE1: grid.jqGrid("getCell", selId, "CUS_PHONE1"), CUS_MOBILE: grid.jqGrid("getCell", selId, "CUS_MOBILE"), CUS_CRTE_DATE: grid.jqGrid("getCell", selId, "CUS_CRTE_DATE"), CUS_CRTE_BY: grid.jqGrid("getCell", selId, "CUS_CRTE_BY"), }, "#polheaderForm"); $("#POLH_CUST_AMLCHECK").trigger("change"); $("#customerLovModal").modal("hide"); })); /* * COVER GRID */ //u.setGlobal("udwCoverGrid", u.default_grid("#gridAppCovers", "#gridAppCoversPager", "Cover", // [ // "Cover Code", "Cover Name", "Sum Insured FC", "Sum Insured BC", "Rate", // "Gross Premium FC", "Gross Premium BC", "Annual Premium FC", "Annual Premium BC", "Net Premium FC", // "Net Premium BC", // "Discount Applicable", // "Discount FC", // "Discount BC", "Load Applicable", "Load FC", "Load BC", "Cover id", "Risk id", // "Risk no", "Pol doc no", "End. no", "Cover Type", "RI SI YN", "RI Premium YN", // "Rate Change", "SI Change", "Cover Level", "Premium Refund", "RI App", "User Premium", // "Txn State", "Create By", "Create Date", "Modified By", "Modified Date", // "Record Status", "INS_UDW_COVER_DISCLOAD" // ], // [ // //This is where we've reached with the currency // { name: "RCOV_CODE", index: "RCOV_CODE", width: 150 }, // { name: "RCOV_NAME", index: "RCOV_NAME", width: 150 }, // u.currencyColumn("RCOV_SI_FC"), // u.currencyColumn("RCOV_SI_BC"), // { name: "RCOV_RATE", index: "RCOV_RATE", width: 150 }, // u.currencyColumn("RCOV_GROSS_PREM_FC"), // u.currencyColumn("RCOV_GROSS_PREM_BC"), // u.currencyColumn("RCOV_ANNL_PREM_FC"), // u.currencyColumn("RCOV_ANNL_PREM_BC"), // u.currencyColumn("RCOV_NET_PREM_FC"), // u.currencyColumn("RCOV_NET_PREM_BC"), // u.currencyColumn("RCOV_DISC_FC"), // u.currencyColumn("RCOV_DISC_BC"), // u.currencyColumn("RCOV_LOAD_FC"), // u.currencyColumn("RCOV_LOAD_BC"), // { name: "RCOV_DISC_YN", index: "RCOV_DISC_YN", width: 150 }, // { name: "RCOV_LOAD_YN", index: "RCOV_LOAD_YN", width: 150 }, // { name: "RCOV_SYS_ID", index: "RCOV_SYS_ID", hidden: false, width: 150, sorttype: "int", id: true, key: true }, // { name: "RCOV_RISK_SYS_ID", index: "RCOV_RISK_SYS_ID", hidden: false, width: 150 }, // { name: "RCOV_RISK_NO", index: "RCOV_RISK_NO", hidden: false, width: 150 }, // { name: "RCOV_POLH_DOC_NO", index: "RCOV_POLH_DOC_NO", width: 150 }, // { name: "RPCOV_END_NO", index: "RPCOV_END_NO", width: 150 }, // { name: "RCOV_TYPE", index: "RCOV_TYPE", width: 150 }, // { name: "RCOV_RI_SI_YN", index: "RCOV_RI_SI_YN", hidden: false, width: 150 }, // { name: "RCOV_RI_PREM_YN", index: "RCOV_RI_PREM_YN", hidden: false, width: 150 }, // { name: "RCOV_RATE_CHANGE", index: "RCOV_RATE_CHANGE", width: 150 }, // { name: "RCOV_SI_CHANGE", index: "RCOV_SI_CHANGE", width: 150 }, // { name: "RCOV_COVER_LEVEL", index: "RCOV_COVER_LEVEL", width: 150 }, // { name: "RCOV_PREM_REFUND", index: "RCOV_PREM_REFUND", width: 150 }, // { name: "RCOV_RI_YN", index: "RCOV_RI_YN", width: 150 }, // { name: "RCOV_USER_PREM", index: "RCOV_USER_PREM", width: 150 }, // // // { name: "RCOV_TXN_STATE", index: "RCOV_TXN_STATE", width: 150 }, // { name: "RCOV_CRTE_BY", index: "RCOV_CRTE_BY", width: 150 }, // { name: "RCOV_CRTE_DATE", index: "RCOV_CRTE_DATE", width: 150 }, // { name: "RCOV_MOD_BY", index: "RCOV_MOD_BY", width: 150 }, // { name: "RCOV_MOD_DATE", index: "RCOV_MOD_DATE", width: 150 }, // { name: "RCOV_STATUS", index: "RCOV_STATUS", width: 150 }, // { name: "INS_UDW_COVER_DISCLOAD", index: "INS_UDW_COVER_DISCLOAD", hidden:true } // ], // //Retrieve Grid data into form input fields on row click.. // function (selId) { // const grid = u.getGlobal("udwCoverGrid"); // u.fill_form({ // RCOV_SYS_ID: grid.jqGrid("getCell", selId, "RCOV_SYS_ID"), // RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "RCOV_RISK_SYS_ID"), // RCOV_RISK_NO: grid.jqGrid("getCell", selId, "RCOV_RISK_NO"), // RCOV_POLH_DOC_NO: grid.jqGrid("getCell", selId, "RCOV_POLH_DOC_NO"), // RPCOV_END_NO: grid.jqGrid("getCell", selId, "RPCOV_END_NO"), // RCOV_CODE: grid.jqGrid("getCell", selId, "RCOV_CODE"), // RCOV_NAME: grid.jqGrid("getCell", selId, "RCOV_NAME"), // RCOV_SI_FC: grid.jqGrid("getCell", selId, "RCOV_SI_FC"), // RCOV_SI_BC: grid.jqGrid("getCell", selId, "RCOV_SI_BC"), // RCOV_RATE: grid.jqGrid("getCell", selId, "RCOV_RATE"), // RCOV_GROSS_PREM_FC: grid.jqGrid("getCell", selId, "RCOV_GROSS_PREM_FC"), // RCOV_GROSS_PREM_BC: grid.jqGrid("getCell", selId, "RCOV_GROSS_PREM_BC"), // RCOV_NET_PREM_FC: grid.jqGrid("getCell", selId, "RCOV_NET_PREM_FC"), // RCOV_NET_PREM_BC: grid.jqGrid("getCell", selId, "RCOV_NET_PREM_BC"), // RCOV_RI_SI_YN: grid.jqGrid("getCell", selId, "RCOV_RI_SI_YN"), // RCOV_RI_PREM_YN: grid.jqGrid("getCell", selId, "RCOV_RI_PREM_YN"), // RCOV_TYPE: grid.jqGrid("getCell", selId, "RCOV_TYPE"), // RCOV_DISC_YN: grid.jqGrid("getCell", selId, "RCOV_DISC_YN"), // RCOV_DISC_FC: grid.jqGrid("getCell", selId, "RCOV_DISC_FC"), // RCOV_DISC_BC: grid.jqGrid("getCell", selId, "RCOV_DISC_BC"), // RCOV_LOAD_YN: grid.jqGrid("getCell", selId, "RCOV_LOAD_YN"), // RCOV_LOAD_FC: grid.jqGrid("getCell", selId, "RCOV_LOAD_FC"), // RCOV_SI_CHANGE: grid.jqGrid("getCell", selId, "RCOV_SI_CHANGE"), // RCOV_RATE_CHANGE: grid.jqGrid("getCell", selId, "RCOV_RATE_CHANGE"), // RCOV_LOAD_BC: grid.jqGrid("getCell", selId, "RCOV_LOAD_BC"), // RCOV_TXN_STATE: grid.jqGrid("getCell", selId, "RCOV_TXN_STATE"), // RCOV_CRTE_BY: grid.jqGrid("getCell", selId, "RCOV_CRTE_BY"), // RCOV_CRTE_DATE: grid.jqGrid("getCell", selId, "RCOV_CRTE_DATE"), // RCOV_MOD_BY: grid.jqGrid("getCell", selId, "RCOV_MOD_BY"), // RCOV_MOD_DATE: grid.jqGrid("getCell", selId, "RCOV_MOD_DATE"), // RCOV_STATUS: grid.jqGrid("getCell", selId, "RCOV_STATUS"), // RCOV_ANNL_PREM_FC: grid.jqGrid("getCell", selId, "RCOV_ANNL_PREM_FC"), // RCOV_ANNL_PREM_BC: grid.jqGrid("getCell", selId, "RCOV_ANNL_PREM_BC") // }, "#coverForm"); // }, // //On double click // function (id) { // //alert("am double clicked") // }, // //On row complete function: // function (cov) { // //alert("am double clicked"); // // hideShowCovers(); // // $scope.SumCoverRiskValues(); // } //)); /* * EXCESS GRID */ u.setGlobal("udwExcessGrid", u.default_grid("#grdPolhExcess", "#grdPolhExcessPager", "Policy Excess", [ " Code", "Type", "Narration", "Rate", "Amount", "Min Amount", "Max Amount", "Created by", "Created date", "Status" ], [ { name: "EXS_CODE", index: "EXS_CODE", width: 150 }, { name: "EXS_TYPE", index: "EXS_TYPE", width: 150 }, { name: "EXS_NART", index: "EXS_NART", width: 150 }, { name: "EXS_RATE", index: "EXS_RATE", hidden: false, width: 200 }, u.currencyColumn("EXS_AMOUNT"), u.currencyColumn("EXS_MIN_AMOUNT"), u.currencyColumn("EXS_MAX_AMOUNT"), { name: "EXS_CRTE_BY", index: "EXS_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("EXS_CRTE_DATE"), { name: "EXS_STATUS", index: "EXS_STATUS", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwExcessGrid"); $("form input[name='EXS_CODE']").data("update", true); u.fill_form({ EXS_CODE: grid.jqGrid("getCell", selId, "EXS_CODE"), EXS_TYPE: grid.jqGrid("getCell", selId, "EXS_TYPE"), EXS_NART: grid.jqGrid("getCell", selId, "EXS_NART"), EXS_RATE: grid.jqGrid("getCell", selId, "EXS_RATE"), EXS_AMOUNT: grid.jqGrid("getCell", selId, "EXS_AMOUNT"), EXS_MIN_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MIN_AMOUNT"), EXS_MAX_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MAX_AMOUNT"), }, "#polhexcessForm"); })); /* * RISK EXCESS GRID */ u.setGlobal("udwRiskExcessGrid", u.default_grid("#grdRiskExcess", "#grdRiskExcessPager", "Risk Excess", [ "Code", "Type", "Narration", "Rate", "Amount", "Min Amount", "Max Amount", "Created by", "Created date", "Status" ], [ { name: "EXS_CODE", index: "EXS_CODE", width: 150 }, { name: "EXS_TYPE", index: "EXS_TYPE", width: 150 }, { name: "EXS_NART", index: "EXS_NART", width: 150 }, { name: "EXS_RATE", index: "EXS_RATE", hidden: false, width: 200 }, u.currencyColumn("EXS_AMOUNT"), u.currencyColumn("EXS_MIN_AMOUNT"), u.currencyColumn("EXS_MAX_AMOUNT"), { name: "EXS_CRTE_BY", index: "EXS_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("EXS_CRTE_DATE"), { name: "EXS_STATUS", index: "EXS_STATUS", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.... function (selId) { const grid = $scope.riskexcess_grid; $("form input[name='EXS_CODE']").data("update", true); u.fill_form({ EXS_CODE: grid.jqGrid("getCell", selId, "EXS_CODE"), EXS_TYPE: grid.jqGrid("getCell", selId, "EXS_TYPE"), EXS_NART: grid.jqGrid("getCell", selId, "EXS_NART"), EXS_RATE: grid.jqGrid("getCell", selId, "EXS_RATE"), EXS_AMOUNT: grid.jqGrid("getCell", selId, "EXS_AMOUNT"), EXS_MIN_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MIN_AMOUNT"), EXS_MAX_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MAX_AMOUNT"), }, "#riskexcessForm"); })); /* * EXCESS */ u.setGlobal("udwCoverExcessGrid", u.default_grid("#grdCoverExcess", "#grdCoverExcessPager", "Cover Excess", [ " Code", "Type", "Narration", "Rate", "Amount", "Min Amount", "Max Amount", "Created by", "Created date", "Status" ], [ { name: "EXS_CODE", index: "EXS_CODE", width: 150 }, { name: "EXS_TYPE", index: "EXS_TYPE", width: 150 }, { name: "EXS_NART", index: "EXS_NART", width: 150 }, { name: "EXS_RATE", index: "EXS_RATE", hidden: false, width: 200 }, u.currencyColumn("EXS_AMOUNT"), u.currencyColumn("EXS_MIN_AMOUNT"), u.currencyColumn("EXS_MAX_AMOUNT"), { name: "EXS_CRTE_BY", index: "EXS_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("EXS_CRTE_DATE"), { name: "EXS_STATUS", index: "EXS_STATUS", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwCoverExcessGrid"); $("form input[name='EXS_CODE']").data("update", true); u.fill_form({ EXS_CODE: grid.jqGrid("getCell", selId, "EXS_CODE"), EXS_TYPE: grid.jqGrid("getCell", selId, "EXS_TYPE"), EXS_NART: grid.jqGrid("getCell", selId, "EXS_NART"), EXS_RATE: grid.jqGrid("getCell", selId, "EXS_RATE"), EXS_AMOUNT: grid.jqGrid("getCell", selId, "EXS_AMOUNT"), EXS_MIN_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MIN_AMOUNT"), EXS_MAX_AMOUNT: grid.jqGrid("getCell", selId, "EXS_MAX_AMOUNT"), }, "#coverexcessForm"); })); /* * POLICY DISC LOADING GRID */ u.setGlobal("udwPolDiscLoadingGrid", u.default_grid("#grdPolhDiscloading", "#grdPolhDiscloadingPager", "Policy Discount/Loading", [ " Code", "Name", "Rate", "Deft. Amount", "DL Amount FC", "DL Amount BC", "Premium FC", "Premium BC", "Type", "Created by", "Created date", "Update by", "Update date", "Status" ], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 200 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, u.currencyColumn("DL_DEFT_AMT"), u.currencyColumn("DL_AMT_FC"), u.currencyColumn("DL_AMT_BC"), u.currencyColumn("DL_PREM_BC"), u.currencyColumn("DL_PREM_FC"), { name: "DL_TYPE", index: "DL_TYPE", width: 150 }, { name: "DL_CRTE_BY", index: "DL_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_CRTE_DATE"), { name: "DL_MOD_BY", index: "DL_MOD_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_MOD_DATE"), { name: "DL_STATUS", index: "DL_STATUS", hidden: false, width: 200 } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwPolDiscLoadingGrid"); u.fill_form(u.getRow(selId, grid), "#polhdiscloadingForm"); })); /* * RISK DISC LOAD GRID */ u.setGlobal("udwRskDiscLoadGrid", u.default_grid("#gridRiskDiscLoad", "#gridRiskDiscLoadPager", "Risk Discount/Loading", [" Code", "Name", "Default Percentage", "Min Percentage", "Max Percentage", "Rate Change YN", "User Premium YN", "Level", "Default YN", "Default Amount", "Type", "Fleet YN"], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 250 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, { name: "DL_MIN_RATE", index: "DL_MIN_RATE", width: 100 }, { name: "DL_MAX_RATE", index: "DL_MAX_RATE", width: 100 }, { name: "DL_RATE_CHANGE", index: "DL_RATE_CHANGE", width: 100 }, { name: "DL_USER_PREMIUM_YN", index: "DL_USER_PREMIUM_YN", width: 100 }, { name: "DL_LEVEL", index: "DL_LEVEL", width: 100 }, { name: "DL_DFT", index: "DL_DFT", width: 100 }, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_TYPE", index: "DL_TYPE", width: 100 }, { name: "DL_FLEET_YN", index: "DL_FLEET_YN", width: 100 } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwRskDiscLoadGrid"); u.fill_form({ //COVER_DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), //COVER_DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), //COVER_DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), //COVER_DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), //COVER_DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT") DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT"), DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_FC").val()), DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_BC").val()) }, "#coverdiscloadingForm"); u.fill_form({ DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT"), DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_FC").val()), DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_BC").val()) }, "#engCovDiscLoadingForm"); }, function (selId) { const grid = u.getGlobal("udwRskDiscLoadGrid"); const discLoad = u.getRow(selId, grid); //u.fill_form(discLoad, "#riskdiscloadingForm"); /*------------------- * THIS IS IMPORTANT *-------------------*/ let Product = $("#POLH_CLASS_CODE").val(); u.form_reset("#riskdiscloadingForm"); $("#RSK_DL_FLEET_YN").val(" "); $("#RSK_DL_FLEET_MIN").val(" "); $("#RSK_DL_FLEET_MAX").val(" "); switch (Product) { case "3000": //FIRE case "9000": //TRAVEL case "6000": //MOTOR u.fill_form(discLoad, "#riskdiscloadingForm"); $("#RSK_DL_CODE").trigger("change"); break; default: u.fill_form(discLoad, "#riskdiscloadingForm"); break; } u.fill_form({ //COVER_DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), //COVER_DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), //COVER_DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), //COVER_DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), //COVER_DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT") //DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT"), DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_FC").val()), DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_BC").val()), }, "#coverdiscloadingForm"); u.fill_form({ //COVER_DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), //COVER_DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), //COVER_DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), //COVER_DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), //COVER_DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT") //DL_AMT: grid.jqGrid("getCell", selId, "DL_DEFT_AMT"), DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_FC").val()), DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_BC").val()) }, "#engCovDiscLoadingForm"); // hide modal on double click $("#RiskDiscLoadModal").modal("hide"); } )); /* * FLEET DISC LOAD GRID */ u.setGlobal("udwFleetDiscLoadGrid", u.default_grid("#gridFleetDiscLoad", "", "Fleet Discount/Loading", [" Code", "Name", "Default Percentage", "Min Percentage", "Max Percentage", "Rate Change YN", "User Premium YN", "Level", "Default YN", "Default Amount", "Type", "Fleet YN"], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 250 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, { name: "DL_MIN_RATE", index: "DL_MIN_RATE", width: 100 }, { name: "DL_MAX_RATE", index: "DL_MAX_RATE", width: 100 }, { name: "DL_RATE_CHANGE", index: "DL_RATE_CHANGE", width: 100 }, { name: "DL_USER_PREMIUM_YN", index: "DL_USER_PREMIUM_YN", width: 100 }, { name: "DL_LEVEL", index: "DL_LEVEL", width: 100 }, { name: "DL_DFT", index: "DL_DFT", width: 100 }, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_TYPE", index: "DL_TYPE", width: 100 }, { name: "DL_FLEET_YN", index: "DL_FLEET_YN", width: 100 } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwFleetDiscLoadGrid"); var row = u.getRow(selId, grid) u.fill_form({ FLT_DL_CODE: row.DL_CODE, FLT_DL_NAME: row.DL_NAME, FLT_DL_TYPE: row.DL_TYPE, FLT_DL_TYPE: row.DL_TYPE, FLT_DL_RATE: row.DL_RATE, }, "#fleetdiscloadingForm"); }, function (selId) { // hide modal on double click $("#FleetDiscLoadModal").modal("hide"); } )); /* * COVER DISC LOADING GRID */ u.setGlobal("udwCoverDiscLoading", u.default_grid("#grdCoverDiscloading", "#grdCoverDiscloadingPager", "Cover Discount/Loading", [ " Code", "Name", "Type", "Rate", "Amount FC", "Amount BC", "Premium FC", "Premium BC", "Created by", "Created date", "Status" ], [ { name: "DL_CODE", index: "DL_CODE" }, { name: "DL_NAME", index: "DL_NAME" }, //{ name: "COVER_DL_CODE", index: "COVER_DL_CODE" }, { name: "DL_TYPE", index: "DL_TYPE" }, //{ name: "COVER_DL_TYPE", index: "COVER_DL_TYPE" }, { name: "DL_RATE", index: "DL_RATE" }, //{ name: "COVER_DL_RATE", index: "COVER_DL_RATE" }, u.currencyColumn("DL_AMT_FC"), //u.currencyColumn("COVER_DL_AMT_BC"), u.currencyColumn("DL_AMT_BC"), //u.currencyColumn("COVER_DL_AMT_FC"), u.currencyColumn("DL_PREM_FC"), //u.currencyColumn("COVER_DL_PREM_BC"), u.currencyColumn("DL_PREM_BC"), //u.currencyColumn("COVER_DL_PREM_FC"), { name: "DL_CRTE_BY", index: "DL_CRTE_BY" }, //{ name: "COVER_DL_CRTE_BY", index: "COVER_DL_CRTE_BY" }, { name: "DL_CRTE_DATE", index: "DL_CRTE_DATE" }, //{ name: "COVER_DL_CRTE_DATE", index: "COVER_DL_CRTE_DATE" }, { name: "DL_STATUS", index: "DL_STATUS" } //{ name: "COVER_DL_STATUS", index: "COVER_DL_STATUS" } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwCoverDiscLoading"); $("form input[name='DL_CODE']").data("update", true); //$("form input[name='COVER_DL_CODE']").data("update", true); u.fill_form({ DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), //COVER_DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), //COVER_DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), //COVER_DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_AMT_BC: grid.jqGrid("getCell", selId, "DL_AMT_BC"), //COVER_DL_AMT_BC: grid.jqGrid("getCell", selId, "DL_AMT_BC"), DL_AMT_FC: grid.jqGrid("getCell", selId, "DL_AMT_FC"), //COVER_DL_AMT_FC: grid.jqGrid("getCell", selId, "DL_AMT_FC"), DL_PREM_BC: grid.jqGrid("getCell", selId, "DL_PREM_BC"), //COVER_DL_PREM_BC: grid.jqGrid("getCell", selId, "DL_PREM_BC"), DL_PREM_FC: grid.jqGrid("getCell", selId, "DL_PREM_FC"), //COVER_DL_PREM_FC: grid.jqGrid("getCell", selId, "DL_PREM_FC"), //DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_FC").val()), //DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#DL_PREM_BC").val()) }, "#coverdiscloadingForm"); })); /* * ENGINERRING TPL & LOP DISCLOADINGS GRID */ u.setGlobal("udwEngCoverDiscLoading", u.default_grid("#grdEngCoverDiscloading", "#grdEngCoverDiscloadingPager", "Cover Discount/Loading", [ " Code", "Name", "Type", "Rate", "Amount FC", "Amount BC", "Premium FC", "Premium BC", "Created by", "Created date", "Status" ], [ { name: "DL_CODE", index: "DL_CODE" }, { name: "DL_NAME", index: "DL_NAME" }, { name: "DL_TYPE", index: "DL_TYPE" }, { name: "DL_RATE", index: "DL_RATE" }, u.currencyColumn("DL_AMT_FC"), u.currencyColumn("DL_AMT_BC"), u.currencyColumn("DL_PREM_FC"), u.currencyColumn("DL_PREM_BC"), { name: "DL_CRTE_BY", index: "DL_CRTE_BY" }, { name: "DL_CRTE_DATE", index: "DL_CRTE_DATE" }, { name: "DL_STATUS", index: "DL_STATUS" } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngCoverDiscLoading"); $("form input[name='DL_CODE']").data("update", true); u.fill_form({ DL_CODE: grid.jqGrid("getCell", selId, "DL_CODE"), DL_NAME: grid.jqGrid("getCell", selId, "DL_NAME"), DL_TYPE: grid.jqGrid("getCell", selId, "DL_TYPE"), DL_RATE: grid.jqGrid("getCell", selId, "DL_RATE"), DL_AMT_FC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_FC").val()), DL_AMT_BC: (parseFloat(grid.jqGrid("getCell", selId, "DL_RATE")) / 100) * parseFloat($("#ENG_DL_PREM_BC").val()), DL_PREM_BC: grid.jqGrid("getCell", selId, "DL_PREM_BC"), DL_PREM_FC: grid.jqGrid("getCell", selId, "DL_PREM_FC"), }, "#engCovDiscLoadingForm"); })); /* * RISK ACCESSORIES GRID */ u.setGlobal("udwRiskAccessoriesGrid", u.default_grid("#grdRiskAccessories", "#grdRiskAccessoriesPager", "Risk Accessories", [ " Code", "Name", "Value", "Rate", "Premium BC", "Premium FC", "Created by", "Created date", "Status" ], [ { name: "ACC_CODE", index: "ACC_CODE" }, { name: "ACC_NAME", index: "ACC_NAME" }, { name: "ACC_VALUE", index: "ACC_VALUE" }, { name: "ACC_RATE", index: "ACC_RATE" }, u.currencyColumn("ACC_PREM_BC"), u.currencyColumn("ACC_PREM_FC"), { name: "ACC_CRTE_BY", index: "ACC_CRTE_BY" }, u.dateTimeColumn("ACC_CRTE_DATE"), { name: "ACC_STATUS", index: "ACC_STATUS" }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwRiskAccessoriesGrid"); $("form input[name='ACC_CODE']").data("update", true); u.fill_form({ ACC_CODE: grid.jqGrid("getCell", selId, "ACC_CODE"), ACC_NAME: grid.jqGrid("getCell", selId, "ACC_NAME"), ACC_VALUE: grid.jqGrid("getCell", selId, "ACC_VALUE"), ACC_RATE: grid.jqGrid("getCell", selId, "ACC_RATE"), ACC_PREM_BC: grid.jqGrid("getCell", selId, "ACC_PREM_BC"), ACC_PREM_FC: grid.jqGrid("getCell", selId, "ACC_PREM_FC"), }, "#riskaccessoriesForm"); })); /* * PREM REG GRID */ u.setGlobal("udwPremRegGrid", u.default_grid("#gridPremReg", "#gridPremRegPager", "Policy Premium Register Summary", [ "Pol sys ID", "Pol Doc. No.", "END No.", " COB", "Customer ID", "Office", "Insurance Source", "Business Source", "Treaty source", "UW Accounts Type", "Currency", "Rate", "FC Amount", "BC Amount", "Reference No.", "Acct Posting", "Post Date", "Created by", "Post Date", "Modified by", "Modified Date", "Status", "Customer Acct" ], [ { name: "PR_POL_SYS_ID", index: "PR_POL_SYS_ID", width: 200 }, { name: "PR_POL_DOC_NO", index: "PR_POL_DOC_NO", width: 200 }, { name: "PR_END_NO", index: "PR_END_NO", width: 200 }, { name: "PR_COB", index: "PR_COB", width: 200 }, { name: "PR_CUST_CODE", index: "PR_CUST_CODE", width: 200 }, { name: "PR_OFFICE", index: "PR_OFFICE", width: 200 }, { name: "PR_INS_SOURCE", index: "PR_INS_SOURCE", width: 200 }, { name: "PR_BUS_SOURCE", index: "PR_BUS_SOURCE", width: 200 }, { name: "PR_TTY_SOURCE", index: "PR_TTY_SOURCE", width: 200 }, { name: "PR_UWD_ACCT_TYPE", index: "PR_UWD_ACCT_TYPE", width: 200 }, { name: "PR_CURRENCY", index: "PR_CURRENCY", width: 200 }, { name: "PR_FX_RATE", index: "PR_FX_RATE", width: 200 }, u.currencyColumn("PR_FC_AMOUNT"), u.currencyColumn("PR_BC_AMOUNT"), { name: "PR_TXN_REF", index: "PR_TXN_REF", width: 200 }, { name: "PR_ACCT_YN", index: "PR_ACCT_YN", width: 200 }, u.dateColumn("PR_POST_DATE"), { name: "PR_CRTE_BY", index: "PR_CRTE_BY", width: 200 }, u.dateTimeColumn("PR_CRTE_DATE"), { name: "PR_MOD_BY", index: "PR_MOD_BY", width: 200 }, u.dateTimeColumn("PR_MOD_DATE"), { name: "PR_STATUS", index: "PR_STATUS", width: 200 }, { name: "PR_CUST_ACCT", index: "PR_CUST_ACCT", width: 200 } ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /*-------------------- * APPLICABLE FESS GRID *--------------------*/ u.setGlobal("udwPolFeesGrid", u.default_grid("#gridPolFees", "#gridPolFeesPager", "Policy Fees Summary", [ "FEE CODE", "FEE NAME", "FC AMOUNT", "BC AMOUNT", "POL SYS id", "END NO.", "RNW NO.", "STATUS", "DEFAULT", "CREATED BY", "CREATED DATE", "MOD BY", "MOD DATE", "FEE SYS ID" ], [ { name: "POL_FEE_CODE", index: "POL_FEE_CODE", width: 150 }, { name: "POL_FEE_NAME", index: "POL_FEE_NAME", width: 200 }, u.currencyColumn("POL_FEE_FC_AMOUNT"), u.currencyColumn("POL_FEE_BC_AMOUNT"), { name: "POL_FEE_POL_SYS_ID", index: "POL_FEE_POL_SYS_ID", width: 150 }, { name: "POL_FEE_FEE_END_NO", index: "POL_FEE_FEE_END_NO", width: 150 }, { name: "POL_RNW_NO", index: "POL_RNW_NO", width: 150 }, { name: "POL_FEE_STATUS", index: "POL_FEE_STATUS", width: 150 }, { name: "POL_FEE_DEFT", index: "POL_FEE_DEFT", width: 150 }, { name: "POL_FEE_CRTE_BY", index: "POL_FEE_CRTE_BY", width: 150 }, u.dateTimeColumn("POL_FEE_CRTE_DATE"), { name: "POL_FEE_MOD_BY", index: "POL_FEE_MOD_BY", width: 150 }, u.dateTimeColumn("POL_FEE_MOD_DATE"), { name: "POL_FEE_SYS_ID", index: "POL_FEE_SYS_ID", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /* * PREM PAYMENT SUMMARY GRID */ u.setGlobal("udwPaymentGrid", u.default_grid("#gridPremPmt", "#gridPremPmtPager", "Premium Payment Summary", ["Receipt No.", "FC_Amount", "BC_Amount", "Payment Date"], [ { name: "MA_TXN_DOC_NO", index: "MA_TXN_DOC_NO", width: 200 }, u.currencyColumn("MA_MATCHED_FC_AMT"), u.currencyColumn("MA_MATCHED_BC_AMT"), { name: "MA_CRTE_DATE", index: "MA_CRTE_DATE" } ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /* * TREATY SHARE GRID */ u.setGlobal("udwTtyShareGrid", u.default_grid("#gridTreatyShare", "#gridTreatySharePager", "Reinsurance Share", [ "TREATY TYPE", "RI COMPANY", "SHARE %", "ALLOCATION %", "SHARE_SI_BC", "SHARE_SI_FC", "SHARE_PREM_BC", "SHARE_PREM_FC", "COMM_PERC", "RI_COMM_BC", "RI_COMM_FC", "TAX_PERC", "TAX_BC", "TAX_FC", "CREATED BY", "CREATED DATE", "MODIFIED BY", "MODIFIED DATE", "STATUS", "SEQ NO", "TTA_SYS_ID", "TTS_SYS_ID", "Endorsement", "Renewal" ], [ { name: "TTS_TTY_TYPE", index: "TTS_TTY_TYPE", width: 150 }, { name: "TTS_RI_COMP", index: "TTS_RI_COMP", width: 150 }, { name: "TTS_SHARE_PERC", index: "TTS_SHARE_PERC", width: 150 }, { name: "TTS_ALLOC_PERC", index: "TTS_ALLOC_PERC", width: 150 }, u.currencyColumn("TTS_SHARE_SI_BC"), u.currencyColumn("TTS_SHARE_SI_FC"), u.currencyColumn("TTS_SHARE_PREM_BC"), u.currencyColumn("TTS_SHARE_PREM_FC"), { name: "TTS_RI_COMM_PERC", index: "TTS_RI_COMM_PERC", width: 150 }, u.currencyColumn("TTS_RI_COMM_BC"), u.currencyColumn("TTS_RI_COMM_FC"), { name: "TTS_RI_TAX_PERC", index: "TTS_RI_TAX_PERC", width: 150 }, u.currencyColumn("TTS_TAX_BC"), u.currencyColumn("TTS_TAX_FC"), { name: "TTS_CRTE_BY", index: "TTS_CRTE_BY", width: 150 }, u.dateTimeColumn("TTS_CRTE_DATE"), { name: "TTS_MOD_BY", index: "TTS_MOD_BY", width: 150 }, u.dateTimeColumn("TTS_MOD_DATE"), { name: "TTS_STATUS", index: "TTS_STATUS", width: 150 }, { name: "TTS_TTA_SEQ_NO", index: "TTS_TTA_SEQ_NO", width: 150 }, { name: "TTS_TTA_SYS_ID", index: "TTS_TTA_SYS_ID", width: 150, hidden: true }, { name: "TTS_SYS_ID", index: "TTS_SYS_ID", width: 150, hidden: true }, { name: "TTS_END_NO", index: "TTS_END_NO", width: 150, hidden: true }, { name: "TTS_RNW_NO", index: "TTS_RNW_NO", width: 150, hidden: true }, ], //Retrieve Grid data into form input fields on row click.. function () { })); /* * TREATY APPORTIONMENT GRID */ u.setGlobal("udwTtyApporGrid", u.default_grid("#gridTreatAppor", "#gridTreatApporPager", "Treaty Apportionment", [ "TREATY CODE", "TREATY TYPE", "CLOSE FLAG", "UNDERWRTING YEAR", "LIMIT FC", "LIMIT BC", "SI FC", "SI BC", "ALLOCATION PERCENTAGE", "PREMIUM FC", "PREMIUM BC", "COMMISSION FC", "COMMISSION BC", "SEQ NO", "SLIP NO", "CREATED BY", "CREATED DATE", "MODIFIED BY", "MODIFIED DATE", "TTA_STATUS", "TTA_TTH_SYS_ID", "TTA_POLH_END_NO", "TTA_POLH_SYS_ID", "SHARES", "TTA_SYS_ID" ], [ { name: "TTA_TTY_CODE", index: "TTA_TTY_CODE", width: 150 }, { name: "TTA_TTY_TYPE", index: "TTA_TTY_TYPE", width: 150 }, { name: "TTA_CLOSE_FLAG", index: "TTA_CLOSE_FLAG", width: 150 }, { name: "TTA_UW_YEAR", index: "TTA_UW_YEAR", width: 150 }, u.currencyColumn("TTA_TTY_LIMIT_FC"), u.currencyColumn("TTA_TTY_LIMIT_BC"), u.currencyColumn("TTA_TTY_SI_FC"), u.currencyColumn("TTA_TTY_SI_BC"), { name: "TTA_ALLOC_PERC", index: "TTA_ALLOC_PERC", width: 150 }, u.currencyColumn("TTA_TTY_PREM_FC"), u.currencyColumn("TTA_TTY_PREM_BC"), u.currencyColumn("TTA_TTY_COMM_FC"), u.currencyColumn("TTA_TTY_COMM_BC"), { name: "TTA_SEQ_NO", index: "TTA_SEQ_NO", width: 150 }, { name: "TTA_SLIPNO", index: "TTA_SLIPNO", width: 150 }, { name: "TTA_CRTE_BY", index: "TTA_CRTE_BY", width: 150 }, u.dateTimeColumn("TTA_CRTE_DATE"), { name: "TTA_MOD_BY", index: "TTA_MOD_BY", width: 150 }, u.dateTimeColumn("TTA_MOD_DATE"), { name: "TTA_STATUS", index: "TTA_STATUS", width: 150 }, { name: "TTA_TTH_SYS_ID", index: "TTA_TTH_SYS_ID", width: 150, hidden: true }, { name: "TTA_POLH_END_NO", index: "TTA_POLH_END_NO", width: 150 }, { name: "TTA_POLH_SYS_ID", index: "TTA_POLH_SYS_ID", width: 150 }, { name: "INS_RI_TTY_SHARE", index: "INS_RI_TTY_SHARE", width: 150, hidden: true }, { name: "TTA_SYS_ID", index: "TTA_SYS_ID", width: 150, hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwTtyApporGrid"); let data = u.getRow(selId, grid); data.INS_RI_TTY_SHARE = (typeof (data.INS_RI_TTY_SHARE) === "string" ? u.parseJson(data.INS_RI_TTY_SHARE) : data.INS_RI_TTY_SHARE) || []; //clear the contents of the treaty shares grid u.clear_grid_data(u.getGlobal("udwTtyShareGrid")); u.gridPopulate(u.getGlobal("udwTtyShareGrid"), data.INS_RI_TTY_SHARE); })); /* * REINSURANCE GRID */ u.setGlobal("udwRIGrid", u.default_grid("#gridRISummary", "#gridRISummaryPager", "Reinsurance Summary", [ "POLICY NUM", "CLASS CODE", "SC CODE", "UW YEAR", "REF ID", "RI PREMIUM FC", "RI PREMIUM BC", "RI SI FC", "RI SI BC", /*"TOTAL PREM FC", "TOTAL PREM BC",*/ /*"TOTAL SI FC", "TOTAL SI BC",*/ "EML PERC", "ACC SI FC", "ACC SI BC", "ADJUSTED(Y/N)", "CURRENCY", "CURRENCY RATE", "COMBINATION LOC ID", "FROM DATE", "INSURANCE SRCE", "LOCATION END NO", "LOCATION ID", "POLICY END NO", "POLICY ID", "RISK END NO.", "RISK ID", "ACC(Y/N)", "TO DATE", "CREATED BY", "CREATED DATE", "MODIFIED BY", "MODIFIED DATE", "STATUS", "ALLOCATIONS", "ID" ], [ { name: "TTH_POLNUM", index: "TTH_POLNUM", width: 150 }, { name: "TTH_CLASS_CODE", index: "TTH_CLASS_CODE", width: 150 }, { name: "TTH_SC_CODE", index: "TTH_SC_CODE", width: 150 }, { name: "TTH_UW_YEAR", index: "TTH_UW_YEAR", width: 150 }, { name: "TTH_REF_ID", index: "TTH_REF_ID", width: 150 }, u.currencyColumn("TTH_RI_PREM_FC"), u.currencyColumn("TTH_RI_PREM_BC"), u.currencyColumn("TTH_RI_SI_FC"), u.currencyColumn("TTH_RI_SI_BC"), //u.currencyColumn("TTH_TOTAL_PREM_FC"), //u.currencyColumn("TTH_TOTAL_PREM_BC"), //u.currencyColumn("TTH_TOTAL_SI_FC"), //u.currencyColumn("TTH_TOTAL_SI_BC"), { name: "TTH_EML_PERC", index: "TTH_EML_PERC", width: 150 }, u.currencyColumn("TTH_ACC_SI_FC"), u.currencyColumn("TTH_ACC_SI_BC"), { name: "TTH_ADJ_YN", index: "TTH_ADJ_YN", width: 150 }, { name: "TTH_CURRENCY", index: "TTH_CURRENCY", width: 150 }, { name: "TTH_CURRENCY_RATE", index: "TTH_CURRENCY_RATE", width: 150 }, { name: "TTH_COMB_LOC_ID", index: "TTH_COMB_LOC_ID", width: 150 }, u.dateColumn("TTH_FROM_DATE"), { name: "TTH_INS_SRCE", index: "TTH_INS_SRCE", width: 150 }, { name: "TTH_LOC_END_NO", index: "TTH_LOC_END_NO", width: 150 }, { name: "TTH_LOC_SYS_ID", index: "TTH_LOC_SYS_ID", width: 150 }, { name: "TTH_POLH_END_NO", index: "TTH_POLH_END_NO", width: 150 }, { name: "TTH_POLH_SYS_ID", index: "TTH_POLH_SYS_ID", width: 150 }, { name: "TTH_RISK_END_NO", index: "TTH_RISK_END_NO", width: 150 }, { name: "TTH_RISK_SYS_ID", index: "TTH_RISK_SYS_ID", width: 150 }, { name: "TTH_RI_ACC_YN", index: "TTH_RI_ACC_YN", width: 150 }, u.dateColumn("TTH_TO_DATE"), { name: "TTH_CRTE_BY", index: "TTH_CRTE_BY", width: 150 }, u.dateTimeColumn("TTH_CRTE_DATE"), { name: "TTH_MOD_BY", index: "TTH_MOD_BY", width: 150 }, u.dateTimeColumn("TTH_MOD_DATE"), { name: "TTH_STATUS", index: "TTH_STATUS", width: 150 }, { name: "INS_RI_TTY_ALLOCATION", index: "INS_RI_TTY_ALLOCATION", width: 150, hidden: true }, { name: "TTH_SYS_ID", index: "TTH_SYS_ID", width: 150, hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwRIGrid"); let data = u.getRow(selId, grid); data.INS_RI_TTY_ALLOCATION = (typeof (data.INS_RI_TTY_ALLOCATION) === "string" ? u.parseJson(data.INS_RI_TTY_ALLOCATION) : data.INS_RI_TTY_ALLOCATION) || []; //clear the contents of the allocations grid u.clear_grid_data(u.getGlobal("udwTtyApporGrid")); u.gridPopulate(u.getGlobal("udwTtyApporGrid"), data.INS_RI_TTY_ALLOCATION); })); /*----------- * CLAIMS GRID *-----------*/ u.setGlobal("udwClaimsGrid", u.default_grid("#gridClaimsSummary", "#gridClaimsSummaryPager", "Policy Claim Summary", ["Claim No", "Loss Date", "Loss Place", "Discovery Date", "Reported Date", "Remarks", "Created By", "Created Date", "Id", "Estimate Details"], [ { name: "CLM_NO", index: "CLM_NO", width: 150 }, u.dateColumn("CLM_LOSS_DATE"), { name: "CLM_LOSS_PLACE", index: "CLM_LOSS_PLACE" }, u.dateColumn("CLM_DISC_DATE"), u.dateColumn("CLM_REP_DATE"), { name: "CLM_REMARKS", index: "CLM_REMARKS" }, { name: "CLM_CRTE_BY", index: "CLM_CRTE_BY" }, u.dateTimeColumn("CLM_CRTE_DATE"), { name: "CLM_SYS_ID", index: "CLM_SYS_ID" }, { name: "CLM_EST_DTLS", index: "CLM_EST_DTLS" } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwClaimsGrid"); var estDetails = grid.jqGrid("getCell", selId, "CLM_EST_DTLS"); if (estDetails) { estDetails = u.parseJson(estDetails); u.clear_grid_data(u.getGlobal("udwClaimsEstGrid")); u.gridPopulate(u.getGlobal("udwClaimsEstGrid"), estDetails); } })); /*--------------------- * CLAIMS ESTIMATE GRID *---------------------*/ u.setGlobal("udwClaimsEstGrid", u.default_grid("#gridEstimateSummary", "#gridEstimateSummaryPager", "Claim Estimate", ["Estimate Name", "Estimate Amount FC", "Estimate Amount BC", "Settled Amount FC", "Settled Amount BC", "Created By", "Created Date", "Id"], [ { name: "CLM_EST_NAME", index: "CLM_EST_NAME", width: 150 }, u.currencyColumn("CLM_EST_AMT_FC"), u.currencyColumn("CLM_EST_AMT_BC"), u.currencyColumn("CLM_EST_STLD_AMT_FC"), u.currencyColumn("CLM_EST_STLD_AMT_BC"), { name: "CLM_EST_CRTE_BY", index: "CLM_EST_CRTE_BY" }, u.dateTimeColumn("CLM_EST_CRTE_DATE"), { name: "CLM_EST_SYS_ID", index: "CLM_EST_SYS_ID", id: true, hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /* * FAC INWARD GRID */ u.setGlobal("udwFacInwGrid", u.default_grid("#grdfacInward", "#grdfacInwardPager", "FAC Inward Details", [ "Cedant Code", "Cedant Name", "Referential No.", "Acceptance No.", "Comment", "Original SI FC", "Original SI BC", "Original Premium FC", "Original Premium BC", "Share %", "Member %", "Commission %", "FAC Inward SI FC", "FAC Inward SI BC", "FAC Inward Premium FC", "FAC Inward Premium BC", "FAC Inward Comm FC", "FAC Inward Comm FC", "Sys ID", "Polh ID", "Created by", "Created date", "Status", "Companies" ], [ { name: "FINW_CEDANT_CODE", index: "FINW_CEDANT_CODE", width: 150 }, { name: "FINW_CEDANT_NAME", index: "FINW_CEDANT_NAME", width: 150 }, { name: "FINW_REF_NO", index: "FINW_REF_NO", width: 150 }, { name: "FINW_ACCPT_NO", index: "FINW_ACCPT_NO", hidden: false, width: 200 }, { name: "FINW_COMMENT", index: "FINW_COMMENT", width: 150 }, u.currencyColumn("FINW_ORIG_SI_FC"), u.currencyColumn("FINW_ORIG_SI_BC"), u.currencyColumn("FINW_ORIG_PREM_FC"), u.currencyColumn("FINW_ORIG_PREM_BC"), { name: "FINW_SHARE_PERC", index: "FINW_SHARE_PERC", hidden: false, width: 200 }, { name: "FINW_MEMBER_PERC", index: "FINW_MEMBER_PERC", hidden: false, width: 200 }, { name: "FINW_COMM_PERC", index: "FINW_COMM_PERC", width: 150 }, u.currencyColumn("FINW_SI_FC"), u.currencyColumn("FINW_SI_BC"), u.currencyColumn("FINW_PREM_FC"), u.currencyColumn("FINW_PREM_BC"), u.currencyColumn("FINW_COMM_FC"), u.currencyColumn("FINW_COMM_BC"), { name: "FINW_SYS_ID", index: "FINW_SYS_ID", hidden: true, width: 150 }, { name: "FINW_POLH_SYS_ID", index: "FINW_POLH_SYS_ID", hidden: true, width: 150 }, { name: "FINW_CRTE_BY", index: "FINW_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("FINW_CRTE_DATE"), { name: "FINW_STATUS", index: "FINW_STATUS", hidden: false, width: 200 }, { name: "INS_RI_FAC_INW_COMPANY", index: "INS_RI_FAC_INW_COMPANY", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwFacInwGrid"); let data = u.getRow(selId, grid); u.fill_form(data, "#facInwardForm", false); u.fill_form({ FINW_PAP_FINW_SYS_ID: grid.jqGrid("getCell", selId, "FINW_SYS_ID") }, "#InwardParticipantsForm"); //var companies = grid.jqGrid("getCell", selId, "INS_RI_FAC_INW_COMPANY"); //if (companies !== false && !jQuery.isEmptyObject(companies)) { // u.clear_grid_data(u.getGlobal("udwInwdPartGrid")); // u.gridPopulate(u.getGlobal("udwInwdPartGrid"), u.parseJson(companies)); //} })); /* * FAC INWARD PARTICIPANTS GRID */ u.setGlobal("udwInwdPartGrid", u.default_grid("#grdInwdParticipants", "#grdInwdParticipantsPager", "FAC Inward Details", [ " Code", "Name", "Share %", "Share SI", "Share Premium", "Sys ID", "Fac Inward ID", "Created by", "Created date", "Status" ], [ { name: "FINW_PAP_CODE", index: "FINW_PAP_CODE", width: 150 }, { name: "FINW_PAP_NAME", index: "FINW_PAP_NAME", width: 150 }, { name: "FINW_PAP_SHARE_PERC", index: "FINW_PAP_SHARE_PERC", width: 150 }, { name: "FINW_PAP_SHARE_SI", index: "FINW_PAP_SHARE_SI", hidden: false, width: 200 }, u.currencyColumn("FINW_PAP_SHARE_PREM"), { name: "FINW_PAP_SYS_ID", index: "FINW_PAP_SYS_ID", width: 150 }, { name: "FINW_PAP_FINW_SYS_ID", index: "FINW_PAP_FINW_SYS_ID", width: 150 }, { name: "FINW_PAP_CRTE_BY", index: "FINW_PAP_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("FINW_PAP_CRTE_DATE"), { name: "FINW_PAP_STATUS", index: "FINW_PAP_STATUS", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwInwdPartGrid"); $("form input[name='FINW_PAP_CODE']").data("update", true); u.fill_form({ FINW_PAP_CODE: grid.jqGrid("getCell", selId, "FINW_PAP_CODE"), FINW_PAP_NAME: grid.jqGrid("getCell", selId, "FINW_PAP_NAME"), FINW_PAP_SHARE_PERC: grid.jqGrid("getCell", selId, "FINW_PAP_SHARE_PERC"), FINW_PAP_SHARE_SI: grid.jqGrid("getCell", selId, "FINW_PAP_SHARE_SI"), FINW_PAP_SHARE_PREM: grid.jqGrid("getCell", selId, "FINW_PAP_SHARE_PREM"), }, "#InwardParticipantsForm"); })); /*-------------------- * COINS LEADER GRID *-------------------*/ u.setGlobal("udwCoInsLdrGrid", u.default_grid("#grdCoinsLeader", "#grdCoinsLeaderPager", "FAC Inward Details", [ "Our Share %", "Our Share SI FC", "Our Share SI BC", "Our Share Premium FC", "Our Share Premium BC", "Member Share %", "Member Share SI FC", "Member Share SI BC", "Member Share Premium FC", "Member Share Premium BC", "RI Code", "RI Name", "RI Share %", "RI Share Comm", "RI Share SI FC", "RI Share SI BC", "RI Share Premium FC", "RI Share Premium BC", "RI Share Comm FC", "RI Share Comm BC", "Sys ID", "Polh ID", "Risk ID", "Created by", "Created date", "Status" ], [ { name: "CIL_OUR_PERC", index: "CIL_OUR_PERC", width: 150 }, u.currencyColumn("CIL_SHARE_SI_FC"), u.currencyColumn("CIL_SHARE_SI_BC"), u.currencyColumn("CIL_SHARE_PREM_FC"), u.currencyColumn("CIL_SHARE_PREM_BC"), { name: "CIL_MEMBER_PERC", index: "CIL_MEMBER_PERC", width: 150 }, u.currencyColumn("CIL_MEMBERS_SI_FC"), u.currencyColumn("CIL_MEMBERS_SI_BC"), u.currencyColumn("CIL_MEMBERS_PREM_FC"), u.currencyColumn("CIL_MEMBERS_PREM_BC"), { name: "CIL_COMP_CODE", index: "CIL_COMP_CODE", width: 150 }, { name: "CIL_RI_MEM_NAME", index: "CIL_RI_MEM_NAME", width: 150 }, { name: "CIL_COMP_PERC", index: "CIL_COMP_PERC", width: 150 }, { name: "CIL_COMP_COMM_PERC", index: "CIL_COMP_COMM_PERC", width: 150 }, u.currencyColumn("CIL_COMP_SI_FC"), u.currencyColumn("CIL_COMP_SI_BC"), u.currencyColumn("CIL_COMP_PREM_FC"), u.currencyColumn("CIL_COMP_PREM_BC"), u.currencyColumn("CIL_COMP_COMM_FC"), u.currencyColumn("CIL_COMP_COMM_BC"), { name: "CIL_SYS_ID", index: "CIL_SYS_ID", width: 150 }, { name: "CIL_POLH_SYS_ID", index: "CIL_POLH_SYS_ID", width: 150 }, { name: "CIL_RISK_SYS_ID", index: "CIL_RISK_SYS_ID", width: 150 }, { name: "CIL_CRTE_BY", index: "CIL_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("CIL_CRTE_DATE"), { name: "CIL_STATUS", index: "CIL_STATUS", hidden: false, width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwCoInsLdrGrid")), "#CoinsLeaderForm"); u.fill_form(u.getRow(selId, u.getGlobal("udwCoInsLdrGrid")), "#CoInsuranceLeaderParticipantsForm"); })); /* * POLICY INTERMEDIARY GRID */ u.setGlobal("udwPolIntermGrid", u.default_grid("#gridPolhInterm", "#gridPolhIntermPager", "Agents/Brokers", ["Code", "Name"], [ { name: "INT_CODE", index: "INT_CODE", width: 150 }, { name: "INT_OFFICIAL_NAME", index: "INT_OFFICIAL_NAME", width: 400 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwPolIntermGrid"); $("form input[name='POLH_INTERMIDIARY']").data("update", true); u.fill_form({ POLH_INTERMIDIARY: grid.jqGrid("getCell", selId, "INT_CODE"), INT_OFFICIAL_NAME: grid.jqGrid("getCell", selId, "INT_OFFICIAL_NAME"), }, "#polheaderForm"); }, //Retrieve Grid data into form input fields on row double click.... XXX function (selId) { const grid = u.getGlobal("udwPolIntermGrid"); $("form input[name='POLH_INTERMIDIARY']").data("update", true); u.fill_form({ POLH_INTERMIDIARY: grid.jqGrid("getCell", selId, "INT_CODE"), INT_OFFICIAL_NAME: grid.jqGrid("getCell", selId, "INT_OFFICIAL_NAME"), }, "#polheaderForm"); // hide modal on double click $("#prodRiskLovModal").modal("hide"); })); /* * USERS GRID */ u.setGlobal("udwUsersGrid", u.default_grid("#grdUserRILimit", "#grdUserRILimitPager", "Users Underwriting Limit List", ["ID", "User Code", "Product Code", "Udw SI Limit", "Udw Prem Limit", "Canc. SI Limit", "Canc. Prem Limit", "RI Allowed YN", "Adjusted RI"], [ { name: "URL_SYS_ID", index: "URL_SYS_ID", width: 100, hidden: true }, { name: "URL_USR_CODE", index: "URL_USR_CODE", width: 100 }, { name: "URL_PROD_CODE", index: "URL_PROD_CODE", width: 200 }, u.currencyColumn("URL_UDW_SI_LIM"), u.currencyColumn("URL_UDW_PREM_LIM"), // u.currencyColumn("URL_CANL_SI_LIM"), u.currencyColumn("URL_CANL_PREM_LIM"), { name: "URL_RI_ALL_YN", index: "URL_RI_ALL_YN", width: 150 }, { name: "URL_ADJ_RI_YN", index: "URL_ADJ_RI_YN", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /* * GENERAL ACCIDENT LOC GRID */ u.setGlobal("udwGALocGrid", u.default_grid("#gridLoc", "#gridLocPager", "Location", ["Code", "Name"], [ { name: "LOC_CODE", index: "LOC_CODE", width: 150 }, { name: "LOC_NAME", index: "LOC_NAME", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwGALocGrid"); $("form input[name='TRANS_LOC_CODE']").data("update", true); u.fill_form({ TRANS_LOC_CODE: grid.jqGrid("getCell", selId, "LOC_CODE"), TRANS_LOC_NAME: grid.jqGrid("getCell", selId, "LOC_NAME"), }, "#genaccidentForm"); }, //Retrieve Grid data into form input fields on row double click.... function (selId) { const grid = u.getGlobal("udwGALocGrid"); $("form input[name='TRANS_LOC_CODE']").data("update", true); u.fill_form({ TRANS_LOC_CODE: grid.jqGrid("getCell", selId, "LOC_CODE"), TRANS_LOC_NAME: grid.jqGrid("getCell", selId, "LOC_NAME"), }, "#genaccidentForm"); // hide modal on double click $("#locationLovModal").modal("hide"); })); /* * GA AREA GRID */ u.setGlobal("udwGAAreaGrid", u.default_grid("#gridArea", "#gridAreaPager", "Area", ["Code", "Name"], [ { name: "ARE_CODE", index: "ARE_CODE", width: 150 }, { name: "ARE_NAME", index: "ARE_NAME", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwGAAreaGrid"); $("form input[name='TRANS_AREA_CODE']").data("update", true); u.fill_form({ TRANS_AREA_CODE: grid.jqGrid("getCell", selId, "ARE_CODE"), TRANS_AREA_NAME: grid.jqGrid("getCell", selId, "ARE_NAME"), }, "#genaccidentForm"); }, //Retrieve Grid data into form input fields on row double click.... function (selId) { const grid = u.getGlobal("udwGAAreaGrid"); $("form input[name='TRANS_AREA_CODE']").data("update", true); u.fill_form({ TRANS_AREA_CODE: grid.jqGrid("getCell", selId, "ARE_CODE"), TRANS_AREA_NAME: grid.jqGrid("getCell", selId, "ARE_NAME"), }, "#genaccidentForm"); // hide modal on double click $("#areaLovModal").modal("hide"); })); /* * FEES GRID */ u.setGlobal("udwFeesGrid", u.default_grid("#gridPremRegFees", "#gridPremRegFeesPager", "Policy Premium Fees Summary", [ "Pol sys ID", "Pol Doc. No.", "END No.", " COB", "Customer ID", "Office", "Insurance Source", "Business Source", "Treaty source", "UW Accounts Type", "Currency", "Rate", "FC Amount", "BC Amount", "Reference No.", "Acct Posting", "Post Date", "Created by", "Post Date", "Modified by", "Modified Date", "Status", "Customer Acct" ], [ { name: "PR_POL_SYS_ID", index: "PR_POL_SYS_ID", width: 200 }, { name: "PR_POL_DOC_NO", index: "PR_POL_DOC_NO", width: 200 }, { name: "PR_END_NO", index: "PR_END_NO", width: 200 }, { name: "PR_COB", index: "PR_COB", width: 200 }, { name: "PR_CUST_CODE", index: "PR_CUST_CODE", width: 200 }, { name: "PR_OFFICE", index: "PR_OFFICE", width: 200 }, { name: "PR_INS_SOURCE", index: "PR_INS_SOURCE", width: 200 }, { name: "PR_BUS_SOURCE", index: "PR_BUS_SOURCE", width: 200 }, { name: "PR_TTY_SOURCE", index: "PR_TTY_SOURCE", width: 200 }, { name: "PR_UWD_ACCT_TYPE", index: "PR_UWD_ACCT_TYPE", width: 200 }, { name: "PR_CURRENCY", index: "PR_CURRENCY", width: 200 }, { name: "PR_FX_RATE", index: "PR_FX_RATE", width: 200 }, u.currencyColumn("PR_FC_AMOUNT"), u.currencyColumn("PR_BC_AMOUNT"), { name: "PR_TXN_REF", index: "PR_TXN_REF", width: 200 }, { name: "PR_ACCT_YN", index: "PR_ACCT_YN", width: 200 }, u.dateColumn("PR_POST_DATE"), { name: "PR_CRTE_BY", index: "PR_CRTE_BY", width: 200 }, u.dateTimeColumn("PR_CRTE_DATE"), { name: "PR_MOD_BY", index: "PR_MOD_BY", width: 200 }, u.dateTimeColumn("PR_MOD_DATE"), { name: "PR_STATUS", index: "PR_STATUS", width: 200 }, { name: "PR_CUST_ACCT", index: "PR_CUST_ACCT", width: 200 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { })); /* * ENG AREA GRID */ u.setGlobal("udwEngAreaGrid", u.default_grid("#gridArea", "#gridAreaPager", "Area", ["Code", "Name"], [ { name: "ARE_CODE", index: "ARE_CODE", width: 150 }, { name: "ARE_NAME", index: "ARE_NAME", width: 350 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngAreaGrid"); $("form input[name='ENG_AREA_CODE']").data("update", true); u.fill_form({ ENG_AREA_CODE: grid.jqGrid("getCell", selId, "ARE_CODE"), ENG_AREA_NAME: grid.jqGrid("getCell", selId, "ARE_NAME"), }, "#engineeringForm"); }, //Retrieve Grid data into form input fields on row double click.... function (selId) { const grid = u.getGlobal("udwEngAreaGrid"); $("form input[name='ENG_AREA_CODE']").data("update", true); u.fill_form({ ENG_AREA_CODE: grid.jqGrid("getCell", selId, "ARE_CODE"), ENG_AREA_NAME: grid.jqGrid("getCell", selId, "ARE_NAME"), }, "#engineeringForm"); // hide modal on double click $("#areaLovModal").modal("hide"); })); /* * ENG LOC GRID */ u.setGlobal("udwEngLocGrid", u.default_grid("#gridLoc", "#gridLocPager", "Location", ["Code", "Name"], [ { name: "LOC_CODE", index: "LOC_CODE", width: 150 }, { name: "LOC_NAME", index: "LOC_NAME", width: 350 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngLocGrid"); $("form input[name='ENG_LOC_CODE']").data("update", true); u.fill_form({ ENG_LOC_CODE: grid.jqGrid("getCell", selId, "LOC_CODE"), ENG_LOC_NAME: grid.jqGrid("getCell", selId, "LOC_NAME"), }, "#engineeringForm"); }, //Retrieve Grid data into form input fields on row double click.... function (selId) { const grid = u.getGlobal("udwEngLocGrid"); $("form input[name='ENG_LOC_CODE']").data("update", true); u.fill_form({ ENG_LOC_CODE: grid.jqGrid("getCell", selId, "LOC_CODE"), ENG_LOC_NAME: grid.jqGrid("getCell", selId, "LOC_NAME"), }, "#engineeringForm"); // hide modal on double click $("#locationLovModal").modal("hide"); })); /* * ENG RISK FEE GRID */ u.setGlobal("udwEngRskFeeGrid", u.default_grid("#gridEngiCompFees", "#gridEngiCompFeesPager", "Applicable Fees Summary", [ " Code", "Fee Name", "FC Amount", "BC Amount", "Polh SYS ID", "Risk SYS ID", "Risk N0", "Risk Code", "Polh End No.", "Status", "Fee SYS ID" ], [ { name: "ENG_FEE_CODE", index: "ENG_FEE_CODE", width: 150 }, { name: "ENG_FEE_NAME", index: "ENG_FEE_NAME", width: 200 }, u.currencyColumn("ENG_FEE_FC_AMOUNT"), u.currencyColumn("ENG_FEE_BC_AMOUNT"), { name: "ENG_FEE_POL_SYS_ID", index: "ENG_FEE_POL_SYS_ID", width: 150 }, { name: "ENG_FEE_RK_SYS_ID", index: "ENG_FEE_RK_SYS_ID", width: 150 }, { name: "ENG_FEE_RK_NO", index: "ENG_FEE_RK_NO", width: 150 }, { name: "ENG_FEE_RK_CODE", index: "ENG_FEE_RK_CODE", width: 150 }, { name: "ENG_FEE_END_NO", index: "ENG_FEE_END_NO", width: 150 }, { name: "ENG_FEE_STATUS", index: "ENG_FEE_STATUS", width: 150 }, { name: "ENG_FEE_SYS_ID", index: "ENG_FEE_SYS_ID", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (sel_id) { u.fill_form(u.getRow(sel_id, u.getGlobal("udwEngRskFeeGrid")), "#riskfeessForm"); })); /* * PA GRID */ u.setGlobal("udwPAGrid", u.default_grid("#gridPa", "#gridPaPager", " Personal Accident", [ "ID", "Risk Code", "Risk Name", "Insured Name", " Date of Birth", "Age", "Gender", "Earning", "Monthly Income", "Job Type", "Weekly Benefit", "Description", "Currency", "Currency Rate", "Start Date", "End Date", "Pol Days", "Uw Year", "Weeks", "Nominee", "Relation", "Monthly Income", "Term Limit", "Multiplier", "Capital Benefit", "Sum Insured FC", "Sum Insured BC", "Total Premium FC", "Total Premium BC", "Risk Premium FC", "Risk Premium BC", "DL Amount FC", "DL Amount BC", "Fees FC", "Fees BC", "Discount FC", "Discount BC", "Loading FC", "Loading BC", "Commission FC", "Commission BC", "RI SI FC", "RI SI BC", "RI PREM FC", "RI PREM BC", "Net Premium FC", "Net Premium BC", "Job Category", "Add Job Category", "Group ID", "Group Name", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Excess Narration", "Issue Date", "Retro Date", "Rate", "Exclusions", "Txn Status", "Risk State", "Created By", "Created Date", "Status", "Risk No", "Policy ID", "Policy Doc NO", "Policy End No", "Combine RI?", "RI Combination Flag", "INS_UWD_RISK_COVERS", "INS_UDW_PA_FEES" ], [ { name: "PA_SYS_ID", index: "PA_SYS_ID", width: 200 }, { name: "PA_RISK_CLASSCODE", index: "PA_RISK_CLASSCODE", width: 200 }, { name: "PA_RISK_CLASSNAME", index: "PA_RISK_CLASSNAME", width: 200 }, { name: "PA_NAME_INSURED", index: "PA_NAME_INSURED", width: 200 }, { name: "PA_DOB", index: "PA_DOB", width: 200 }, { name: "PA_AGE", index: "PA_AGE", width: 200 }, { name: "PA_GENDER", index: "PA_GENDER", width: 200 }, { name: "PA_EARNING", index: "PA_EARNING", width: 200 }, { name: "PA_MONTHLY_INCOME", index: "PA_MONTHLY_INCOME", width: 200 }, { name: "PA_JOB_TYPE", index: "PA_IND_JOB_TYPE", width: 200 }, { name: "PA_WEEKLY_BENEFIT", index: "PA_WEEKLY_BENEFIT", width: 200 }, { name: "PA_DESCRIPTION", index: "PA_DESCRIPTION", width: 200 }, { name: "PA_CURRENCY", index: "PA_CURRENCY", width: 200 }, { name: "PA_CURR_RATE", index: "PA_CURR_RATE", width: 200 }, u.dateColumn("PA_START_DATE"), u.dateColumn("PA_END_DATE"), { name: "PA_DAYS", index: "PA_DAYS", width: 200 }, { name: 'PA_UW_YEAR', index: 'PA_UW_YEAR', width: 200 }, { name: "PA_WEEKS", index: "PA_WEEKS", width: 200 }, { name: "PA_NAME_NOMINEE", index: "PA_NAME_NOMINEE", width: 200 }, { name: "PA_RELATION", index: "PA_RELATION", width: 200 }, { name: "PA_MONTHLY_INCOME", index: "PA_MONTHLY_INCOME", width: 200 }, { name: 'PA_TERM_LIMIT', index: 'PA_TERM_LIMIT', width: 200 }, { name: "PA_MULTIPLIER", index: "PA_MULTIPLIER", width: 200 }, { name: "PA_CAPITAL_BENEFIT", index: "PA_CAPITAL_BENEFIT", width: 200 }, u.currencyColumn("PA_SI_FC"), u.currencyColumn("PA_SI_BC"), u.currencyColumn("PA_TOT_PREM_FC"), u.currencyColumn("PA_TOT_PREM_BC"), u.currencyColumn("PA_RISK_PREM_FC"), u.currencyColumn("PA_RISK_PREM_BC"), u.currencyColumn("PA_DL_AMT_FC"), u.currencyColumn("PA_DL_AMT_BC"), u.currencyColumn("PA_FEES_FC"), u.currencyColumn("PA_FEES_BC"), u.currencyColumn("PA_DISC_FC"), u.currencyColumn("PA_DISC_BC"), u.currencyColumn("PA_LOAD_FC"), u.currencyColumn("PA_LOAD_BC"), u.currencyColumn("PA_COMMISSION_FC"), u.currencyColumn("PA_COMMISSION_BC"), u.currencyColumn("PA_RI_SI_FC"), u.currencyColumn("PA_RI_SI_BC"), u.currencyColumn("PA_RI_PREM_FC"), u.currencyColumn("PA_RI_PREM_BC"), u.currencyColumn("PA_NET_PREM_FC"), u.currencyColumn("PA_NET_PREM_BC"), { name: "PA_CATEGORY", index: "PA_CATEGORY", width: 200, hidden: true }, { name: "PA_CATEGORY_OPTION", index: "PA_CATEGORY_OPTION", width: 200, hidden: true }, { name: "PA_GRP_ID", index: "PA_GRP_ID", width: 200, hidden: true }, { name: "PA_GRP_NAME", index: "PA_GRP_NAME", width: 200, hidden: true }, { name: "PA_EXCESS_APP", index: "PA_EXCESS_APP", width: 150 }, { name: "PA_EXCESS_PERC", index: "PA_EXCESS_PERC", width: 150 }, { name: "PA_EXCESS_MIN", index: "PA_EXCESS_MIN", width: 150 }, { name: "PA_EXCESS_MAX", index: "PA_EXCESS_MAX", width: 150 }, { name: "PA_EXCESS_FIX", index: "PA_EXCESS_FIX", width: 150 }, { name: "PA_EXCESS_NAR", index: "PA_EXCESS_NAR", width: 150 }, u.dateColumn("PA_ISSUE_DATE"), u.dateColumn("PA_RETRO_DATE"), { name: "PA_RATE", index: "PA_RATE", width: 200 }, { name: "PA_EXCLUSIONS", index: "PA_EXCLUSIONS", width: 200 }, { name: 'PA_TXN_STATUS', index: 'PA_TXN_STATUS', width: 200 }, { name: 'PA_RISK_STATE', index: 'PA_RISK_STATE', width: 200 }, { name: "PA_CRTE_BY", index: "PA_CRTE_BY", width: 200 }, u.dateColumn("PA_CRTE_DATE"), { name: "PA_STATUS", index: "PA_STATUS", width: 200 }, { name: "PA_RISK_NO", index: "PA_RISK_NO", width: 200 }, { name: "PA_POLH_SYS_ID", index: "PA_POLH_SYS_ID", width: 200 }, { name: "PA_POLH_DOC_NO", index: "PA_POLH_DOC_NO", width: 200 }, { name: "PA_POLH_END_NO", index: "PA_POLH_END_NO", width: 200 }, { name: "PA_RIC_YN", index: "PA_RIC_YN" }, { name: "PA_RIC_CODE", index: "PA_RIC_CODE" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", width: 150 }, { name: "INS_UDW_PA_FEES", index: "INS_UDW_PA_FEES", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwPAGrid"); let data = u.getRow(selId, grid); u.fill_form(data, "#PaForm", false); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", selId, "PA_SYS_ID"), }, "#coverForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "PA_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "PA_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "PA_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "PA_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ FOTW_SHARE_SI_FC: grid.jqGrid("getCell", selId, "PA_SI_FC"), FOTW_SHARE_SI_BC: grid.jqGrid("getCell", selId, "PA_SI_BC"), FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "PA_TOT_PREM_FC"), FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "PA_TOT_PREM_BC"), }, "#CoinsLeaderForm"); }, function (id) { const grid = u.getGlobal("udwPAGrid"); const paRiskId = grid.jqGrid("getCell", id, "PA_SYS_ID"); if (paRiskId == $("#PA_SYS_ID").val()) { //$("#PaModal").modal(); } else { u.growl_warning("No Pa Risk selected, Please check and try again"); }; })); /* * ENGINEERING LOCATION GRID */ u.setGlobal("udwEngGrid", u.default_grid("#gridELoc", "#gridELocPager", "Location Details", [ "Start Date", "End Date", "UW Year", "Days", "SI FC", "SI BC", "Total Prem FC", "Total Prem BC", "Risk Prem FC", "Risk Prem BC", // "Adj Premium FC", "Adj Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Compulsory Fee FC", "Compulsory Fee BC", "Commission FC", "Commission BC", "Txn Status", "Risk State", "RI SI FC", "RI SI BC", "RI Premium FC", "RI Premium BC", // "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", "Location Name", "Location Desc", /*"Location Address",*/ //"Combine RI?", "RI Combination Flag", "Loc No.", "Earthquake ", "Flood Zone", "Project Code", "Project Name", "Construction Site", "Construction Title", "Construction From", "Construction To", "Construction Days", "Maintenance YN", "Maintenance From", "Maintenance To", "Maintenance Days", "Test From", "Test To", "Test Days", "Escalation Percentage", // "EML YN", "EML PERC", // "Product code", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Sys ID", "Polh Sys ID", "PolDocNo", "Endorsement No.", "ENG_TYPE", "Main ST Date", "Main END Date", "Main Days", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "CAR", "EAR", "ENG_OTHER", "FEES" ], [ u.dateColumn("ENG_START_DATE"), u.dateColumn("ENG_END_DATE"), { name: "ENG_UW_YEAR", index: "ENG_UW_YEAR", width: 150 }, { name: "ENG_PERIOD_DAYS", index: "ENG_PERIOD_DAYS", width: 150 }, u.currencyColumn("ENG_SI_FC"), u.currencyColumn("ENG_SI_BC"), u.currencyColumn("ENG_TOT_PREM_FC"), u.currencyColumn("ENG_TOT_PREM_BC"), u.currencyColumn("ENG_RISK_PREM_FC"), u.currencyColumn("ENG_RISK_PREM_BC"), u.currencyColumn("ENG_ADJ_PREM_FC"), u.currencyColumn("ENG_ADJ_PREM_BC"), u.currencyColumn("ENG_DISC_FC"), u.currencyColumn("ENG_DISC_BC"), u.currencyColumn("ENG_LOAD_FC"), u.currencyColumn("ENG_LOAD_BC"), u.currencyColumn("ENG_COMP_FEE_FC"), u.currencyColumn("ENG_COMP_FEE_BC"), u.currencyColumn("ENG_COMMISSION_FC"), u.currencyColumn("ENG_COMMISSION_BC"), { name: "ENG_TXN_STATUS", index: "ENG_TXN_STATUS", width: 150 }, { name: "ENG_RISK_STATE", index: "ENG_RISK_STATE", width: 150 }, u.currencyColumn("ENG_RI_SI_FC"), u.currencyColumn("ENG_RI_SI_BC"), u.currencyColumn("ENG_RI_PREM_FC"), u.currencyColumn("ENG_RI_PREM_BC"), { name: "ENG_REGION_CODE", index: "ENG_REGION_CODE", width: 150, hidden: true }, { name: "ENG_REGION_NAME", index: "ENG_REGION_NAME", width: 150 }, { name: "ENG_AREA_CODE", index: "ENG_AREA_CODE", width: 150, hidden: true }, { name: "ENG_AREA_NAME", index: "ENG_AREA_NAME", width: 150 }, { name: "ENG_LOC_CODE", index: "ENG_LOC_CODE", width: 150, hidden: true }, { name: "ENG_LOC_NAME", index: "ENG_LOC_NAME", width: 150 }, { name: "ENG_DESC", index: "ENG_DESC", width: 150 }, { name: "ENG_RISK_NO", index: "ENG_RISK_NO", width: 150 }, { name: "ENG_EARTHQ_ZONE", index: "ENG_EARTHQ_ZONE", width: 150 }, { name: "ENG_FDZONE", index: "ENG_FDZONE", width: 150 }, { name: "ENG_PROJ_CODE", index: "ENG_PROJ_CODE", width: 150 }, { name: "ENG_PROJ_NAME", index: "ENG_PROJ_NAME", width: 150 }, { name: "ENG_CONST_SITE", index: "ENG_CONST_SITE", width: 150 }, { name: "ENG_CONST_TITLE", index: "ENG_CONST_TITLE", width: 150 }, u.dateColumn("ENG_CONST_FROM"), u.dateColumn("ENG_CONST_TO"), { name: "ENG_CONST_DAYS", index: "ENG_CONST_DAYS", width: 150 }, { name: "ENG_MAINT_YN", index: "ENG_MAINT_YN" }, u.dateColumn("ENG_MAINT_FROM"), u.dateColumn("ENG_MAINT_TO"), { name: "ENG_MAINT_DAYS", index: "ENG_MAINT_DAYS", width: 150 }, { name: "ENG_TEST_FROM", index: "ENG_TEST_FROM", width: 150 }, { name: "ENG_TEST_TO", index: "ENG_TEST_TO", width: 150 }, { name: "ENG_TEST_DAYS", index: "ENG_TEST_DAYS", width: 150 }, { name: "ENG_ESC_PERC", index: "ENG_ESC_PERC", width: 150 }, // { name: "ENG_EML_YN", index: "ENG_EML_YN", width: 150 }, { name: "ENG_EML_PERC", index: "ENG_EML_PERC", width: 150 }, { name: "ENG_PDT_CODE", index: "ENG_PDT_CODE", width: 150 }, //{ name: "PLOC_CVR_CODE", index: "PLOC_CVR_CODE", width: 150 }, { name: "ENG_RENEWAL_STATUS", index: "ENG_RENEWAL_STATUS", width: 150 }, { name: "ENG_END_TYPE", index: "ENG_END_TYPE", width: 150 }, u.dateColumn("ENG_APPROVE_DATE"), u.dateColumn("ENG_ACCT_DATE"), { name: "ENG_CRTE_BY", index: "ENG_CRTE_BY", width: 150 }, u.dateTimeColumn("ENG_CRTE_DATE"), { name: "ENG_MOD_BY", index: "ENG_MOD_BY", width: 150 }, u.dateTimeColumn("ENG_MOD_DATE"), { name: "ENG_STATUS", index: "ENG_STATUS", width: 150 }, { name: "ENG_SYS_ID", index: "ENG_SYS_ID", width: 150 }, { name: "ENG_POLH_SYS_ID", index: "ENG_POLH_SYS_ID", width: 150 }, { name: "ENG_POLH_DOC_NO", index: "ENG_POLH_DOC_NO", width: 150 }, { name: "ENG_POLH_END_NO", index: "ENG_POLH_END_NO", width: 150 }, { name: "ENG_END_TYPE", index: "ENG_END_TYPE", width: 150 }, { name: "ENG_MAIN_STDATE", index: "ENG_MAIN_STDATE" }, { name: "ENG_MAIN_ENDDATE", index: "ENG_MAIN_ENDDATE" }, { name: "ENG_MAIN_DAYS", index: "ENG_MAIN_DAYS", width: 150 }, { name: "ENG_SUSPND_YN", index: "ENG_SUSPND_YN" }, u.dateColumn("ENG_SUS_FROM_DATE"), u.dateColumn("ENG_SUS_TO_DATE"), { name: "ENG_SUSPND_PERIOD", index: "ENG_SUSPND_PERIOD" }, { name: "INS_UDW_CAR_RISK", index: "INS_UDW_CAR_RISK", hidden: true }, { name: "INS_UDW_EAR_RISK", index: "INS_UDW_EAR_RISK", hidden: true }, { name: "INS_UDW_ENG_OTHER", index: "INS_UDW_ENG_OTHER", hidden: true }, { name: "INS_UDW_ENGINEER_FEES", index: "INS_UDW_ENGINEER_FEES", hidden: true }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngGrid"); u.fill_form(u.getRow(selId, grid), "#engineeringForm"); //$("#ENG_REGION_CODE").trigger("change"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", selId, "ENG_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", selId, "ENG_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", selId, "ENG_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", selId, "ENG_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ CIL_SHARE_SI_FC: grid.jqGrid("getCell", selId, "ENG_SI_FC"), CIL_SHARE_SI_BC: grid.jqGrid("getCell", selId, "ENG_SI_BC"), CIL_SHARE_PREM_FC: grid.jqGrid("getCell", selId, "ENG_TOT_PREM_FC"), CIL_SHARE_PREM_BC: grid.jqGrid("getCell", selId, "ENG_TOT_PREM_BC"), }, "#CoinsLeaderForm"); var carRisk = grid.jqGrid("getCell", selId, "INS_UDW_CAR_RISK"); var earRisk = grid.jqGrid("getCell", selId, "INS_UDW_EAR_RISK"); var otherEngRisk = grid.jqGrid("getCell", selId, "INS_UDW_ENG_OTHER"); u.clear_grid_data(u.getGlobal("udwEngCarGrid")); if (carRisk !== false && !jQuery.isEmptyObject(carRisk)) { u.grid_populate(u.getGlobal("udwEngCarGrid"), "", u.parseJson(carRisk)); } u.clear_grid_data(u.getGlobal("udwEngEarGrid")); if (earRisk !== false && !jQuery.isEmptyObject(earRisk)) { u.grid_populate(u.getGlobal("udwEngEarGrid"), "", u.parseJson(earRisk)); } u.clear_grid_data(u.getGlobal("udwEngOtherGrid")); if (otherEngRisk !== false && !jQuery.isEmptyObject(otherEngRisk)) { u.grid_populate(u.getGlobal("udwEngOtherGrid"), "", u.parseJson(otherEngRisk)); } }, function (selId) { })); /* * ENGINEERING CAR GRID */ u.setGlobal("udwEngCarGrid", u.default_grid("#gridCARInterest", "#gridCARInterestPager", "Contractor All Risk List", [ "Risk Type", "Risk Name", " Description", //"Contract Price FC", "Contract Price BC", //"Items Supplied FC", "Items Supplied BC", "Debris FC", "Debris BC", "Total SI FC", "Total SI BC", "Total Prem. FC", " Total Prem. BC", "Risk Prem. FC", " Risk Prem. BC", //"Adjusted Premium FC", "Adjusted Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Fees FC", "Fees BC", "Commsn FC", "Commsn BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Excess App", "Excess Perc", "Excess MIN", "Excess Max", "Excess Narration", "EML", "EML Perc", "Period Days", "UW Year", "Currency", "Currency Rate", " Start Date", " End Date", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Status", "Created by", "Created date", "Modified by", "Modified date", "Sys ID", "Polh Sys ID", "ENG SYS ID","Endorsement No.","Renewal No." ,"COVERS", "CPM", "TPL", "LOP" ], [ { name: "CAR_RISK_TYPE", index: "CAR_RISK_TYPE", width: 100 }, { name: "CAR_RISK_NAME", index: "CAR_RISK_NAME", width: 200 }, { name: "CAR_DESCRIPTION", index: "CAR_DESCRIPTION", width: 300 }, //{ name: "CAR_CON_PRICE_FC", index: "CAR_CON_PRICE_FC", width: 200 }, //{ name: "CAR_CON_PRICE_BC", index: "CAR_CON_PRICE_BC", width: 200 }, //{ name: "CAR_ITEMS_SUPPLIED_FC", index: "CAR_ITEMS_SUPPLIED_FC", width: 150 }, //{ name: "CAR_ITEMS_SUPPLIED_BC", index: "CAR_ITEMS_SUPPLIED_BC", width: 150 }, //{ name: "CAR_DEBRIS_FC", index: "CAR_DEBRIS_FC", width: 150 }, //{ name: "CAR_DEBRIS_BC", index: "CAR_DEBRIS_BC", width: 150 }, u.currencyColumn("CAR_SI_FC"), u.currencyColumn("CAR_SI_BC"), u.currencyColumn("CAR_TOT_PREM_FC"), u.currencyColumn("CAR_TOT_PREM_BC"), // u.currencyColumn("CAR_RISK_PREM_FC"), u.currencyColumn("CAR_RISK_PREM_BC"), // { name: "CAR_ADJ_PREM_FC", index: "CAR_ADJ_PREM_FC", width: 150 }, // { name: "CAR_ADJ_PREM_BC", index: "CAR_ADJ_PREM_BC", width: 150 }, u.currencyColumn("CAR_DISC_FC"), u.currencyColumn("CAR_DISC_BC"), u.currencyColumn("CAR_LOAD_FC"), u.currencyColumn("CAR_LOAD_BC"), u.currencyColumn("CAR_COMP_FEE_FC"), u.currencyColumn("CAR_COMP_FEE_BC"), u.currencyColumn("CAR_COMMISSION_FC"), u.currencyColumn("CAR_COMMISSION_BC"), u.currencyColumn("CAR_RI_SI_FC"), u.currencyColumn("CAR_RI_SI_BC"), u.currencyColumn("CAR_RI_PREM_FC"), { name: "CAR_RI_PREM_BC", index: "CAR_RI_PREM_BC", width: 150 }, { name: "CAR_EXCESS_APP", index: "CAR_EXCESS_APP", width: 150 }, { name: "CAR_EXCESS_PERC", index: "CAR_EXCESS_PERC", width: 150 }, { name: "CAR_EXCESS_MIN", index: "CAR_EXCESS_MIN", width: 150 }, { name: "CAR_EXCESS_MAX", index: "CAR_EXCESS_MAX", width: 350 }, { name: "CAR_EXCESS_NAR", index: "CAR_EXCESS_NAR", width: 150 }, { name: "CAR_EML_YN", index: "CAR_EML_YN", width: 150 }, { name: "CAR_EML_PERC", index: "CAR_EML_PERC", width: 100 }, { name: "CAR_PERIOD_DAYS", index: "CAR_PERIOD_DAYS", width: 100 }, { name: "CAR_UW_YEAR", index: "CAR_UW_YEAR", width: 200 }, { name: "CAR_CURRENCY", index: "CAR_CURRENCY", width: 100 }, { name: "CAR_CURRENCY_RATE", index: "CAR_CURRENCY_RATE", width: 200 }, u.dateColumn("CAR_START_DATE"), u.dateColumn("CAR_END_DATE"), { name: "CAR_SUSPND_YN", index: "CAR_SUSPND_YN", width: 100 }, u.dateColumn("CAR_SUS_FROM_DATE"), u.dateColumn("CAR_SUS_TO_DATE"), { name: "CAR_SUSPND_PERIOD", index: "CAR_SUSPND_PERIOD", width: 100 }, { name: "CAR_STATUS", index: "CAR_STATUS", width: 150 }, { name: "CAR_CRTE_BY", index: "CAR_CRTE_BY", width: 150 }, u.dateTimeColumn("CAR_CRTE_DATE"), { name: "CAR_MOD_BY", index: "CAR_MOD_BY", width: 150 }, u.dateTimeColumn("CAR_MOD_DATE"), { name: "CAR_SYS_ID", index: "CAR_SYS_ID", hidden: true }, { name: "CAR_POLH_SYS_ID", index: "CAR_POLH_SYS_ID", hidden: true }, { name: "CAR_ENG_SYS_ID", index: "CAR_ENG_SYS_ID", hidden: true }, { name: "CAR_POLH_END_NO", index: "CAR_POLH_END_NO", hidden: true }, { name: "CAR_POLH_RNW_NO", index: "CAR_POLH_RNW_NO", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_CPM_RISK", index: "INS_UDW_CPM_RISK", hidden: true }, { name: "INS_UDW_TPL", index: "INS_UDW_TPL", hidden: true }, { name: "INS_UDW_LOP", index: "INS_UDW_LOP", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngCarGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#carinterestForm"); ////console.log(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")); var covers = typeof grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) : grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || []; ////console.log(covers); var cpm = typeof (grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK")) : grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK") || []; var tpl = typeof (grid.jqGrid("getCell", selId, "INS_UDW_TPL")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_TPL")) : grid.jqGrid("getCell", selId, "INS_UDW_TPL") || []; var lop = typeof grid.jqGrid("getCell", selId, "INS_UDW_LOP") === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_LOP")) : grid.jqGrid("getCell", selId, "INS_UDW_LOP") || []; u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (covers !== null && covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } u.clear_grid_data(u.getGlobal("udwEngCpmGrid")); if (cpm !== null && cpm.length > 0) { u.grid_populate(u.getGlobal("udwEngCpmGrid"), "", cpm); } u.clear_grid_data(u.getGlobal("udwEngTplRiskGrid")); if (tpl !== null && tpl.length > 0) { u.grid_populate(u.getGlobal("udwEngTplRiskGrid"), "", tpl); } u.clear_grid_data(u.getGlobal("udwEngLopRiskGrid")); if (lop !== null && lop.length > 0) { u.grid_populate(u.getGlobal("udwEngLopRiskGrid"), "", lop); } u.setGlobal("excessChange", false); })); /* * ENGINEERING EAR GRID */ u.setGlobal("udwEngEarGrid", u.default_grid("#gridEARInterest", "#gridEARInterestPager", "Erection All Risk List", [ "Risk Type", "Risk Name", " Description", "Period Days", "UW Year", "Currency", "Currency Rate", " Start Date", " End Date", "Contract Price FC", "Contract Price BC", "Items Supplied FC", "Items Supplied BC", "Debris FC", "Debris BC", "Total Sum Insured FC", "Total Sum Insured BC", "Total Premium FC", " Total Premium BC", "Risk Premium FC", " Risk Premium BC", "Adjusted Premium FC", "Adjusted Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Fees FC", "Fees BC", "Commsn FC", "Commsn BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Excess Type", "Excess App", "Excess Perc", "Excess MIN", "Excess Max", "Excess Narration", "EML", "EML Perc", "Status", "Created By", "Created Date", "Modified By", "Modified Date", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Sys ID", "Polh Sys ID", "ENG SYS ID", "COVERS", "CPM", "TPL", "LOP" ], [ { name: "EAR_RISK_TYPE", index: "EAR_RISK_TYPE", width: 100 }, { name: "EAR_RISK_NAME", index: "EAR_RISK_NAME", width: 200 }, { name: "EAR_DESCRIPTION", index: "EAR_DESCRIPTION", width: 300 }, { name: "EAR_PERIOD_DAYS", index: "EAR_PERIOD_DAYS", width: 100 }, { name: "EAR_UW_YEAR", index: "EAR_UW_YEAR", width: 200 }, { name: "EAR_CURRENCY", index: "EAR_CURRENCY", width: 100 }, { name: "EAR_CURRENCY_RATE", index: "EAR_CURRENCY_RATE", width: 200 }, { name: "EAR_START_DATE", index: "EAR_START_DATE"}, { name: "EAR_END_DATE", index: "EAR_END_DATE" }, u.currencyColumn("EAR_CON_PRICE_FC"), u.currencyColumn("EAR_CON_PRICE_BC"), u.currencyColumn("EAR_ITEMS_SUPPLIED_FC"), u.currencyColumn("EAR_ITEMS_SUPPLIED_BC"), u.currencyColumn("EAR_DEBRIS_FC"), u.currencyColumn("EAR_DEBRIS_BC"), u.currencyColumn("EAR_SI_FC"), u.currencyColumn("EAR_SI_BC"), u.currencyColumn("EAR_TOT_PREM_FC"), u.currencyColumn("EAR_TOT_PREM_BC"), // u.currencyColumn("EAR_RISK_PREM_FC"), u.currencyColumn("EAR_RISK_PREM_BC"), u.currencyColumn("EAR_ADJ_PREM_FC"), u.currencyColumn("EAR_ADJ_PREM_BC"), u.currencyColumn("EAR_DISC_FC"), u.currencyColumn("EAR_DISC_BC"), u.currencyColumn("EAR_LOAD_FC"), u.currencyColumn("EAR_LOAD_BC"), u.currencyColumn("EAR_COMP_FEE_FC"), u.currencyColumn("EAR_COMP_FEE_BC"), u.currencyColumn("EAR_COMMISSION_FC"), u.currencyColumn("EAR_COMMISSION_BC"), u.currencyColumn("EAR_RI_SI_FC"), u.currencyColumn("EAR_RI_SI_BC"), u.currencyColumn("EAR_RI_PREM_FC"), u.currencyColumn("EAR_RI_PREM_BC"), { name: "EAR_EXCESS_TYPE", index: "EAR_EXCESS_TYPE", width: 150 }, { name: "EAR_EXCESS_APP", index: "EAR_EXCESS_APP", width: 150 }, { name: "EAR_EXCESS_PERC", index: "EAR_EXCESS_PERC", width: 150 }, { name: "EAR_EXCESS_MIN", index: "EAR_EXCESS_MIN", width: 150 }, { name: "EAR_EXCESS_MAX", index: "EAR_EXCESS_MAX", width: 350 }, { name: "EAR_EXCESS_NAR", index: "EAR_EXCESS_NAR", width: 150 }, { name: "EAR_EML_YN", index: "EAR_EML_YN", width: 150 }, { name: "EAR_EML_PERC", index: "EAR_EML_PERC", width: 100 }, { name: "EAR_STATUS", index: "EAR_STATUS", width: 150 }, { name: "EAR_CRTE_BY", index: "EAR_CRTE_BY", width: 150 }, u.dateTimeColumn("EAR_CRTE_DATE"), { name: "EAR_MOD_BY", index: "EAR_MOD_BY", width: 150 }, u.dateTimeColumn("EAR_MOD_DATE"), { name: "EAR_SUSPND_YN", index: "EAR_SUSPND_YN", width: 150 }, u.dateColumn("EAR_SUS_FROM_DATE"), u.dateColumn("EAR_SUS_TO_DATE"), { name: "EAR_SUSPND_PERIOD", index: "EAR_SUSPND_PERIOD", width: 150 }, { name: "EAR_SYS_ID", index: "EAR_SYS_ID", hidden: true }, { name: "EAR_POLH_SYS_ID", index: "EAR_POLH_SYS_ID", hidden: true }, { name: "EAR_ENG_SYS_ID", index: "EAR_ENG_SYS_ID", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_CPM_RISK", index: "INS_UDW_CPM_RISK", hidden: true }, { name: "INS_UDW_TPL", index: "INS_UDW_TPL", hidden: true }, { name: "INS_UDW_LOP", index: "INS_UDW_LOP", hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngEarGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#carinterestForm"); var covers = typeof grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) : grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || []; // //console.log(covers); var cpm = typeof (grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK")) : grid.jqGrid("getCell", selId, "INS_UDW_CPM_RISK") || []; var tpl = typeof (grid.jqGrid("getCell", selId, "INS_UDW_TPL")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_TPL")) : grid.jqGrid("getCell", selId, "INS_UDW_TPL") || []; var lop = typeof grid.jqGrid("getCell", selId, "INS_UDW_LOP") === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UDW_LOP")) : grid.jqGrid("getCell", selId, "INS_UDW_LOP") || []; u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (covers !== null && covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } u.clear_grid_data(u.getGlobal("udwEngCpmGrid")); if (cpm !== null && cpm.length > 0) { u.grid_populate(u.getGlobal("udwEngCpmGrid"), "", cpm); } u.clear_grid_data(u.getGlobal("udwEngTplRiskGrid")); if (tpl !== null && tpl.length > 0) { u.grid_populate(u.getGlobal("udwEngTplRiskGrid"), "", tpl); } u.clear_grid_data(u.getGlobal("udwEngLopRiskGrid")); if (lop !== null && lop.length > 0) { u.grid_populate(u.getGlobal("udwEngLopRiskGrid"), "", lop); } u.setGlobal("excessChange", false); })); /* * ENGINEERING OTHER GRID */ u.setGlobal("udwEngOtherGrid", u.default_grid("#gridEngOthers", "#gridEngOthersPager", "Other Engineering Policy", [ "Object Type", "Object Name", "Description", "SI FC", "SI BC", "Total Prm FC", "Total Prm BC", "Risk Prem. FC", "Risk Prem. BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Discount FC", "Discount BC", "Load FC", "Laod BC", "Serial No", "Make & Model", "Manufacture", "Manufacturing Year", "Stand by", "Capacity", "Location", "Escalation", "Excess Type", "Excess App", "Excess Percentage", "Min. Excess", "Max. Excess", "Fixed Excess", "Excess Narration", "Currrency", "Exchange Rate", "Start Date", "End Date", "Period Days", "Uw Year", // "Txn Status", "Risk State", // "Risk ID", "PolID", "polDocNo", "Endorsement No.", "Risk No", " Renewal Status", "Endorsement Type", "Approval Date", "Account Date", "Create by", "Create Date", "Modified By", "Modified Date", "Status", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Sys ID", "Location Id", "Risk Sequence", "INS_UWD_RISK_COVERS" ], [ { name: "ENG_OTHER_OBJECT", index: "ENG_OTHER_OBJECT", width: 150 }, { name: "ENG_OTHER_OBJECT_NAME", index: "ENG_OTHER_OBJECT_NAME", width: 150 }, { name: "ENG_OTHER_DESC", index: "ENG_OTHER_DESC", width: 150 }, u.currencyColumn("ENG_OTHER_SI_FC"), u.currencyColumn("ENG_OTHER_SI_BC"), u.currencyColumn("ENG_OTHER_TOT_PREM_FC"), u.currencyColumn("ENG_OTHER_TOT_PREM_BC"), u.currencyColumn("ENG_OTHER_RISK_PREM_FC"), u.currencyColumn("ENG_OTHER_RISK_PREM_BC"), u.currencyColumn("ENG_OTHER_RI_SI_FC"), u.currencyColumn("ENG_OTHER_RI_SI_BC"), u.currencyColumn("ENG_OTHER_RI_PREM_FC"), u.currencyColumn("ENG_OTHER_RI_PREM_BC"), u.currencyColumn("ENG_OTHER_DISC_FC"), u.currencyColumn("ENG_OTHER_DISC_BC"), u.currencyColumn("ENG_OTHER_LOAD_FC"), u.currencyColumn("ENG_OTHER_LOAD_BC"), { name: "ENG_OTHER_SERL_NO", index: "ENG_OTHER_SERL_NO", width: 150 }, { name: "ENG_OTHER_MK_MODEL", index: "ENG_OTHER_MK_MODEL", width: 150 }, { name: "ENG_OTHER_MANUF", index: "ENG_OTHER_MANUF", width: 150 }, { name: "ENG_OTHER_MANUF_YR", index: "ENG_OTHER_MANUF_YR", width: 150, }, { name: "ENG_OTHER_STND_BY", index: "ENG_OTHER_STND_BY", width: 150 }, { name: "ENG_OTHER_CAP", index: "ENG_OTHER_CAP", width: 150 }, { name: "ENG_OTHER_LOC", index: "ENG_OTHER_LOC", width: 150 }, { name: "ENG_OTHER_ESCL", index: "ENG_OTHER_ESCL", width: 150 }, { name: "ENG_OTHER_EXCESS_TYPE", index: "ENG_OTHER_EXCESS_TYPE", width: 150 }, { name: "ENG_OTHER_EXCESS_APP", index: "ENG_OTHER_EXCESS_APP", width: 150 }, { name: "ENG_OTHER_EXCESS_PERC", index: "ENG_OTHER_EXCESS_PERC", width: 150 }, { name: "ENG_OTHER_EXCESS_MIN", index: "ENG_OTHER_EXCESS_MIN", width: 150 }, { name: "ENG_OTHER_EXCESS_MAX", index: "ENG_OTHER_EXCESS_MAX", width: 150 }, { name: "ENG_OTHER_EXCESS_FIX", index: "ENG_OTHER_EXCESS_FIX", width: 150 }, { name: "ENG_OTHER_EXCESS_NAR", index: "ENG_OTHER_EXCESS_NAR", width: 150 }, { name: "ENG_OTHER_CURRENCY", index: "ENG_OTHER_CURRENCY", width: 150, }, { name: "ENG_OTHER_CURRENCY_RATE", index: "ENG_OTHER_CURRENCY_RATE", width: 150 }, u.dateColumn("ENG_OTHER_START_DATE"), u.dateColumn("ENG_OTHER_END_DATE"), { name: "ENG_OTHER_PERIOD_DAYS", index: "ENG_OTHER_PERIOD_DAYS", width: 150 }, { name: "ENG_OTHER_UW_YEAR", index: "ENG_OTHER_UW_YEAR", width: 150 }, { name: "ENG_OTHER_TXN_STATUS", index: "ENG_OTHER_TXN_STATUS", width: 150 }, { name: "ENG_OTHER_RISK_STATE", index: "ENG_OTHER_RISK_STATE", width: 150 }, { name: "ENG_OTHER_RISK_ID", index: "ENG_OTHER_RISK_ID", width: 150, sorttype: "int" }, { name: "ENG_OTHER_POLH_SYS_ID", index: "ENG_OTHER_POLH_SYS_ID", width: 150 }, { name: "ENG_OTHER_POLH_DOC_NO", index: "ENG_OTHER_POLH_DOC_NO", width: 150 }, { name: "ENG_OTHER_POLH_END_NO", index: "ENG_OTHER_POLH_END_NO", width: 150 }, { name: "ENG_OTHER_RISK_NO", index: "ENG_OTHER_RISK_NO", width: 150 }, { name: "ENG_OTHER_RENEWAL_STATUS", index: "ENG_OTHER_RENEWAL_STATUS", width: 150 }, { name: "ENG_OTHER_END_TYPE", index: "ENG_OTHER_END_TYPE", width: 150 }, u.dateColumn("ENG_OTHER_ENG_APPROVE_DATE"), u.dateColumn("ENG_OTHER_ACCT_DATE"), { name: "ENG_OTHER_CRTE_BY", index: "ENG_OTHER_CRTE_BY", width: 150 }, u.dateTimeColumn("ENG_OTHER_CRTE_DATE"), { name: "ENG_OTHER_MOD_BY", index: "ENG_OTHER_MOD_BY", width: 150 }, u.dateTimeColumn("ENG_OTHER_MOD_DATE"), { name: "ENG_OTHER_STATUS", index: "ENG_OTHER_STATUS", width: 150 }, { name: "ENG_OTHER_SUSPND_YN", index: "ENG_OTHER_SUSPND_YN", width: 150 }, u.dateColumn("ENG_OTHER_SUS_FROM_DATE"), u.dateColumn("ENG_OTHER_SUS_TO_DATE"), { name: "ENG_OTHER_SUSPND_PERIOD", index: "ENG_OTHER_SUSPND_PERIOD", width: 150 }, { name: "ENG_OTHER_SYS_ID", index: "ENG_OTHER_SYS_ID" }, { name: "ENG_OTHER_ENG_SYS_ID", index: "ENG_OTHER_ENG_SYS_ID" }, { name: "ENG_OTHER_SEQUENCE", index: "ENG_OTHER_SEQUENCE" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("udwEngOtherGrid"); // var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='ENG_OTHER_SYS_ID']").data("update", true); u.setGlobal("excessChange", true); u.fill_form(u.getRow(sel_id, grid), "#engForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", sel_id, "ENG_OTHER_SYS_ID"), }, "#coverForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ FOTW_SHARE_SI_FC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_SI_FC"), FOTW_SHARE_SI_BC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_SI_BC"), FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_TOT_PREM_FC"), FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", sel_id, "ENG_OTHER_TOT_PREM_BC"), }, "#CoinsLeaderForm"); var covers = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UWD_RISK_COVERS") || "[]"); u.clear_grid_data(u.getGlobal("udwCoverGrid")); u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); u.setGlobal("excessChange", false); }, function (id) { var grid = u.getGlobal("udwEngOtherGrid"); var sel_id = grid.jqGrid("getGridParam", "selrow"); var engRiskID = grid.jqGrid("getCell", sel_id, "ENG_OTHER_SYS_ID"); if (engRiskID == $("#ENG_OTHER_SYS_ID").val()) { $("#otherEngModal").modal(); // $("#RiskCoverModal").modal(); //Hide covers not related to selected risk } else { u.growl_warning("No Other Engineering Risk selected, Please check and try again"); }; })); /* * ENGINEERING CPM GRID */ u.setGlobal("udwEngCpmGrid", u.default_grid("#gridCARCPMInterest", "#gridCARCPMInterestPager", "Contractor Plant Machinery Risk List", [ "Sys ID", "Risk type", "Risk Name", " Description", "Currency", "Currency Rate", "Start Date", " End Date", "Total Sum Insured FC", "Total Sum Insured BC", "Total Premium FC", "Total Premium BC", "Adjusted Premium FC", "Adjusted Premium BC", "Risk Premium FC", "Risk SPremium BC", "RI Sum Insured FC", "RI Sum Insured BC", "RI Premium FC", "RI Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Fees FC", "Fees BC", "Commsn FC", "Commsn BC", "Excess App", "Excess Perc", "Excess Min", "Excess Max", "Excess Narration", //"EML YN", "EML Perc", "Make Model", "Manufacturer", "Serial No,", "Location", "Manufacture Year", "Capacity", "Escalation", "Status", "Created by", "Created date", "Modified by", "Modified date", "Eng Loc ID", "Polh Sys ID", "COVERS" ], [ { name: "CPM_SYS_ID", index: "CPM_SYS_ID", width: 100 }, { name: "CPM_RISK_TYPE", index: "CPM_RISK_TYPE", width: 300 }, { name: "CPM_RISK_NAME", index: "CPM_RISK_NAME", width: 300 }, { name: "CPM_DESCRIPTION", index: "CPM_DESCRIPTION", width: 300 }, { name: "CPM_CURRENCY", index: "CPM_CURRENCY", width: 100 }, { name: "CPM_CURRENCY_RATE", index: "CPM_CURRENCY_RATE", width: 300 }, { name: "CPM_START_DATE", index: "CPM_START_DATE" }, { name: "CPM_END_DATE", index: "CPM_END_DATE" }, u.currencyColumn("CPM_SI_FC"), u.currencyColumn("CPM_SI_BC"), u.currencyColumn("CPM_TOT_PREM_FC"), u.currencyColumn("CPM_TOT_PREM_BC"), u.currencyColumn("CPM_ADJ_PREM_FC"), u.currencyColumn("CPM_ADJ_PREM_BC"), u.currencyColumn("CPM_RISK_PREM_FC"), u.currencyColumn("CPM_RISK_PREM_BC"), u.currencyColumn("CPM_RI_SI_FC"), u.currencyColumn("CPM_RI_SI_BC"), u.currencyColumn("CPM_RI_PREM_FC"), u.currencyColumn("CPM_RI_PREM_BC"), u.currencyColumn("CPM_DISC_FC"), u.currencyColumn("CPM_DISC_BC"), u.currencyColumn("CPM_LOAD_FC"), u.currencyColumn("CPM_LOAD_BC"), u.currencyColumn("CPM_COMP_FEE_FC"), u.currencyColumn("CPM_COMP_FEE_BC"), u.currencyColumn("CPM_COMMISSION_FC"), u.currencyColumn("CPM_COMMISSION_BC"), { name: "CPM_EXCESS_APP", index: "CPM_EXCESS_APP", width: 100 }, { name: "CPM_EXCESS_PERC", index: "CPM_EXCESS_PERC", width: 300 }, { name: "CPM_EXCESS_MIN", index: "CPM_EXCESS_MIN", width: 300 }, { name: "CPM_EXCESS_MAX", index: "CPM_EXCESS_MAX", width: 300 }, { name: "CPM_EXCESS_NAR", index: "CPM_EXCESS_NAR", width: 300 }, //{ name: "CPM_EML_YN", index: "CPM_EML_YN", width: 300 }, //{ name: "CPM_EML_PERC", index: "CPM_EML_PERC", width: 300 }, { name: "CPM_MK_MODEL", index: "CPM_MK_MODEL", width: 300 }, { name: "CPM_MANUF", index: "CPM_MANUF", width: 300 }, { name: "CPM_SERL_NO", index: "CPM_SERL_NO", width: 300 }, { name: "CPM_LOC", index: "CPM_LOC", width: 300 }, { name: "CPM_MANUF_YR", index: "CPM_MANUF_YR", width: 300 }, { name: "CPM_CAP", index: "CPM_CAP", width: 300 }, { name: "CPM_ESCL", index: "CPM_ESCL", width: 300 }, { name: "CPM_STATUS", index: "CPM_STATUS", width: 100 }, { name: "CPM_CRTE_BY", index: "CPM_CRTE_BY", width: 150 }, u.dateTimeColumn("CPM_CRTE_DATE"), { name: "CPM_MOD_BY", index: "CPM_MOD_BY", width: 150 }, u.dateTimeColumn("CPM_MOD_DATE"), { name: "CPM_ENG_SYS_ID", index: "CPM_ENG_SYS_ID", hidden: true }, { name: "CPM_POLH_SYS_ID", index: "CPM_POLH_SYS_ID", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwEngCpmGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#carcpmForm"); var covers = u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || "[]"); u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } //u.gridPopulate("gridAppCovers", covers); u.setGlobal("excessChange", false); })); /* * ENGINEERING TPL GRID */ u.setGlobal("udwEngTplGrid", u.default_grid("#gridTpl", "#gridTplPager", "Contractor All Risk Third Party Loss Cover List", [ "Sys id", "TPL Code", "TPL Name", "TPL Type", "Sum Insured FC", "Sum Insured BC", "Rate", "Annual Prem FC", "Annual Prem BC", "Gross Premium FC", "Gross Premium BC", "Net Premium FC", "Net Premium BC", "Discount Applicable", "Discount FC", "Discount BC", "Load Apllicable", "Load FC", "Load BC", "Risk id", "Risk no", "Pol doc no", "End. no", "RI SI YN", "RI Premium YN", "Rate Change", "SI Change", "Cover Level", "Premium Refund", "RI App", "User Premium", "Txn State", "Create By", "Create Date", "Modified By", "Modified Date", "Record Status", "INS_UDW_COVER_DISCLOAD" ], [ { name: "UAC_SYS_ID", index: "UAC_SYS_ID", hidden: true }, { name: "UAC_CVR_CODE", index: "UAC_CVR_CODE", width: 150 }, { name: "UAC_CVR_NAME", index: "UAC_CVR_NAME", width: 150 }, { name: "UAC_CVR_TYPE", index: "UAC_CVR_TYPE", width: 150 }, u.currencyColumn("UAC_CVR_SI_FC"), u.currencyColumn("UAC_CVR_SI_BC"), { name: "UAC_CVR_RATE", index: "UAC_CVR_RATE", width: 150 }, u.currencyColumn("UAC_CVR_ANNUAL_PREM_FC"), u.currencyColumn("UAC_CVR_ANNUAL_PREM_BC"), u.currencyColumn("UAC_CVR_GROSS_PREM_FC"), u.currencyColumn("UAC_CVR_GROSS_PREM_BC"), u.currencyColumn("UAC_CVR_NET_PREM_FC"), u.currencyColumn("UAC_CVR_NET_PREM_BC"), { name: "UAC_CVR_DISC_YN", index: "UAC_CVR_DISC_YN", hidden: true }, u.currencyColumn("UAC_CVR_DISC_FC"), u.currencyColumn("UAC_CVR_DISC_BC"), { name: "UAC_CVR_LOAD_YN", index: "UAC_CVR_LOAD_YN", hidden: true }, u.currencyColumn("UAC_CVR_LOAD_FC"), u.currencyColumn("UAC_CVR_LOAD_BC"), { name: "UAC_CVR_LOC_SYS_ID", index: "UAC_CVR_LOC_SYS_ID", hidden: true }, { name: "UAC_CVR_RISK_NO", index: "UAC_CVR_RISK_NO", hidden: true }, { name: "UAC_CVR_POLH_DOC_NO", index: "UAC_CVR_POLH_DOC_NO", hidden: true }, { name: "UAC_CVR_END_NO", index: "UAC_CVR_END_NO", hidden: true }, { name: "UAC_CVR_RI_SI_YN", index: "UAC_CVR_RI_SI_YN", hidden: true }, { name: "UAC_CVR_RI_PREM_YN", index: "UAC_CVR_RI_PREM_YN", hidden: true }, // { name: "UAC_CVR_RATE_CHANGE", index: "UAC_CVR_RATE_CHANGE", hidden: true }, u.currencyColumn("UAC_CVR_SI_CHANGE"), { name: "UAC_CVR_COVER_LEVEL", index: "UAC_CVR_COVER_LEVEL", hidden: true }, u.currencyColumn("UAC_CVR_PREM_REFUND"), { name: "UAC_CVR_RI_YN", index: "UAC_CVR_RI_YN", hidden: true }, u.currencyColumn("UAC_CVR_USER_PREM"), // { name: "UAC_CVR_TXN_STATE", index: "UAC_CVR_TXN_STATE", hidden: true }, { name: "UAC_CVR_CRTE_BY", index: "UAC_CVR_CRTE_BY", width: 150 }, u.dateTimeColumn("UAC_CVR_CRTE_DATE"), { name: "UAC_CVR_MOD_BY", index: "UAC_CVR_MOD_BY", width: 150 }, u.dateTimeColumn("UAC_CVR_MOD_DATE"), { name: "UAC_CVR_STATUS", index: "UAC_CVR_STATUS", width: 150 }, { name: "INS_UDW_COVER_DISCLOAD", index: "INS_UDW_COVER_DISCLOAD" } ], //Retrive Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwEngTplGrid")), "#cartplForm"); var discLoadings = u.getGlobal("udwEngTplGrid").jqGrid("getCell", selId, "INS_UDW_COVER_DISCLOAD") || "[]"; discLoadings = u.parseJson(discLoadings); u.clear_grid_data(u.getGlobal("udwCoverDiscLoading")); if (discLoadings.length > 0) { u.grid_populate(u.getGlobal("udwCoverDiscLoading"), "", discLoadings); } })); /* * ENGINEERING */ u.setGlobal("udwEngLopGrid", u.default_grid("#gridCARLOSSOP", "#gridCARLOSSOPPager", "Contractor All Risk Loss Of Profit Cover List", [ "Sys id", "TPL Code", "TPL Name", "TPL Type", "Sum Insured FC", "Sum Insured BC", "Rate", "Annual Prem FC", "Annual Prem BC", "Gross Premium FC", "Gross Premium BC", "Net Premium FC", "Net Premium BC", "Discount Applicable", "Discount FC", "Discount BC", "Load Apllicable", "Load FC", "Load BC", "Risk id", "Risk no", "Pol doc no", "End. no", "RI SI YN", "RI Premium YN", "Rate Change", "SI Change", "Cover Level", "Premium Refund", "RI App", "User Premium", "Txn State", "Create By", "Create Date", "Modified By", "Modified Date", "Record Status", "INS_UDW_COVER_DISCLOAD" ], [ { name: "UAC_SYS_ID", index: "UAC_SYS_ID", hidden: true }, { name: "UAC_CVR_CODE", index: "UAC_CVR_CODE", width: 150 }, { name: "UAC_CVR_NAME", index: "UAC_CVR_NAME", width: 150 }, { name: "UAC_CVR_TYPE", index: "UAC_CVR_TYPE", width: 150 }, u.currencyColumn("UAC_CVR_SI_FC"), u.currencyColumn("UAC_CVR_SI_BC"), { name: "UAC_CVR_RATE", index: "UAC_CVR_RATE", width: 150 }, u.currencyColumn("UAC_CVR_ANNUAL_PREM_FC"), u.currencyColumn("UAC_CVR_ANNUAL_PREM_BC"), u.currencyColumn("UAC_CVR_GROSS_PREM_FC"), u.currencyColumn("UAC_CVR_GROSS_PREM_BC"), u.currencyColumn("UAC_CVR_NET_PREM_FC"), u.currencyColumn("UAC_CVR_NET_PREM_BC"), { name: "UAC_CVR_DISC_YN", index: "UAC_CVR_DISC_YN", hidden: true }, u.currencyColumn("UAC_CVR_DISC_FC"), u.currencyColumn("UAC_CVR_DISC_BC"), { name: "UAC_CVR_LOAD_YN", index: "UAC_CVR_LOAD_YN", hidden: true }, u.currencyColumn("UAC_CVR_LOAD_FC"), u.currencyColumn("UAC_CVR_LOAD_BC"), { name: "UAC_CVR_LOC_SYS_ID", index: "UAC_CVR_LOC_SYS_ID", hidden: true }, { name: "UAC_CVR_RISK_NO", index: "UAC_CVR_RISK_NO", hidden: true }, { name: "UAC_CVR_POLH_DOC_NO", index: "UAC_CVR_POLH_DOC_NO", hidden: true }, { name: "UAC_CVR_END_NO", index: "UAC_CVR_END_NO", hidden: true }, { name: "UAC_CVR_RI_SI_YN", index: "UAC_CVR_RI_SI_YN", hidden: true }, { name: "UAC_CVR_RI_PREM_YN", index: "UAC_CVR_RI_PREM_YN", hidden: true }, // { name: "UAC_CVR_RATE_CHANGE", index: "UAC_CVR_RATE_CHANGE", hidden: true }, { name: "UAC_CVR_SI_CHANGE", index: "UAC_CVR_SI_CHANGE", hidden: true }, { name: "UAC_CVR_COVER_LEVEL", index: "UAC_CVR_COVER_LEVEL", hidden: true }, u.currencyColumn("UAC_CVR_PREM_REFUND"), { name: "UAC_CVR_RI_YN", index: "UAC_CVR_RI_YN", hidden: true }, u.currencyColumn("UAC_CVR_USER_PREM"), // { name: "UAC_CVR_TXN_STATE", index: "UAC_CVR_TXN_STATE", hidden: true }, { name: "UAC_CVR_CRTE_BY", index: "UAC_CVR_CRTE_BY", width: 150 }, u.dateTimeColumn("UAC_CVR_CRTE_DATE"), { name: "UAC_CVR_MOD_BY", index: "UAC_CVR_MOD_BY", width: 150 }, u.dateTimeColumn("UAC_CVR_MOD_DATE"), { name: "UAC_CVR_STATUS", index: "UAC_CVR_STATUS", width: 150 }, { name: "INS_UDW_COVER_DISCLOAD", index: "INS_UDW_COVER_DISCLOAD" } ], //Retrive Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwEngLopGrid")), "#carlossopForm"); var discLoadings = u.getGlobal("udwEngLopGrid").jqGrid("getCell", selId, "INS_UDW_COVER_DISCLOAD") || "[]"; discLoadings = u.parseJson(discLoadings); u.clear_grid_data(u.getGlobal("udwCoverDiscLoading")); if (discLoadings.length > 0) { u.grid_populate(u.getGlobal("udwCoverDiscLoading"), "", discLoadings); } })); /*-------------------------- * UNDERWRITING SEARCH GRID --------------------------*/ u.setGlobal("udwPolSearchGrid", u.default_grid("#grdSearch", "#grdSearchPager", "Policy Listing - Double click on a policy to view its details", ["Status", "Type", "Policy Number", "Underwriter", "SubClass", "Customer Code", "Customer Name", "Intermidiary Code", "Intermidiary Name", "Currency", "Sum Insured", "Premium", "Business Source", "Insurance Source", "Endorsement Number", "Renewal Serial Number", "Start Date", "End Date" /*"ProductCode", "Id", "SubClassCode", "Currency", "PVT Ref Id"*/ ], [ { name: "StatusDescription", index: "StatusDescription", width: 200 }, { name: "Type", index: "Type", width: 200 }, { name: "PolicyNumber", index: "PolicyNumber", width: 250 }, { name: "CreatedBy", index: "CreatedBy" }, { name: "SubClass", index: "Subclass" }, { name: "CustomerId", index: "CustomerId" }, { name: "CustomerName", index: "CustomerName", width: 300 }, { name: "Intermidiary", index: "Intermidiary", width: 300 }, { name: "IntermidiaryName", index: "IntermidiaryName", width: 300 }, { name: "Currency", index: "Currency", width: 300 }, //{ name: "SI", index: "SI" }, u.currencyColumn("SI"), // { name: "Premium", index: "Premium" }, u.currencyColumn("Premium"), { name: "BusinessSource", index: "BusinessSource", width: 300 }, { name: "InsuranceSource", index: "InsuranceSource", width: 300 }, { name: "EndorsementNumber", index: "EndorsementNumber", width: 300 }, { name: "RenewalSerialNumber", index: "RenewalSerialNumber", width: 300 }, u.dateColumn("StartDate"), u.dateColumn("EndDate"), /*{ name: "ProductCode", index: "ProductCode", hidden: true }, { name: "Id", index: "Id", hidden: true }, { name: "SubClassCode", index: "SubClassCode", hidden: true }, { name: "Currency", index: "Currency", hidden: true }, { name: "PvtRefId", index: "Currency", hidden: true }*/ ], function () {}, function (selRowId) { const grid = u.getGlobal("udwPolSearchGrid"); const id = grid.jqGrid("getCell", selRowId, "Id"); s.getPolicy(id, function (result) { u.getGlobalStatic("productSearchFill")(result.data); //u.getGlobal("storePolicy")(); $("#PolicyModal").modal({ keyboard: false, backdrop: 'static'}); }); $("#tabs").tabs({ active: 0 }); } )); /*----------------------- * RISK DISC LOADING GRID ------------------------*/ u.setGlobal("udwRskDiscLoadingGrid", u.default_grid("#grdRiskDiscloading", "#grdRiskDiscloadingPager", "Risk Discount/Loading", [ "Code", "Name", "Rate", "Premium FC", "Premium BC", "DL Amount FC", "DL Amount BC", "Type", "Min Rate", "Max Rate","Level", "Deft. Amount", "Default", "User Premium", "Rate Change", "Created by", "Created date", "Modified by", "Modified date", "End No", "Status", "Fleet YN", "Fleet Min", "Fleet Max", "ID", "RISK_SYS_ID" ], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 200 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, u.currencyColumn("DL_PREM_FC"), u.currencyColumn("DL_PREM_BC"), u.currencyColumn("DL_AMT_FC"), u.currencyColumn("DL_AMT_BC"), { name: "DL_TYPE", index: "DL_TYPE", width: 150 }, u.currencyColumn("DL_MIN_RATE"), u.currencyColumn("DL_MAX_RATE"), {name: "DL_LEVEL", index: "DL_LEVEL", width: 100}, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_DFT", index: "DL_DFT", hidden: false, width: 200 }, { name: "DL_USER_PREMIUM_YN", index: "DL_USER_PREMIUM_YN", hidden: false, width: 200 }, { name: "DL_RATE_CHANGE", index: "DL_RATE_CHANGE", hidden: false, width: 200 }, { name: "DL_CRTE_BY", index: "DL_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_CRTE_DATE"), { name: "DL_MOD_BY", index: "DL_MOD_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_MOD_DATE"), { name: "DL_END_NO", index: "DL_END_NO", width: 100 }, { name: "DL_STATUS", index: "DL_STATUS", hidden: false, width: 200 }, { name: "DL_FLEET_YN", index: "DL_FLEET_YN", hidden: false, width: 200 }, { name: "DL_FLEET_MIN", index: "DL_FLEET_MIN", hidden: true, id: true }, { name: "DL_FLEET_MAX", index: "DL_FLEET_MAX", width: 100 }, { name: "DL_SYS_ID", index: "DL_SYS_ID", hidden: true, id: true }, { name: "DL_RISK_SYS_ID", index: "DL_RISK_SYS_ID", hidden: true }, ], function (selId) { const grid = u.getGlobal("udwRskDiscLoadingGrid"); u.form_reset("#riskdiscloadingForm"); $("#RSK_DL_FLEET_YN").val(" "); $("#RSK_DL_FLEET_MIN").val(" "); $("#RSK_DL_FLEET_MAX").val(" "); let data = u.getRow(selId, grid) || {}; u.fill_form(data, "#riskdiscloadingForm", false); })); /*----------- * COVER GRID *----------*/ u.setGlobal("udwCoverGrid", u.default_grid("#gridAppCovers", "#gridAppCoversPager", "Cover List", [ "Cover Code", "Cover Name", "Sum Insured FC", "Sum Insured BC", "Rate", "Gross Premium FC", "Gross Premium BC", "Annual Premium FC", "Annual Premium BC", "Net Premium FC", "Net Premium BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "Discount Applicable", "Load Applicable", "Interest id", "Cover id", "Risk id", "Risk no", "Pol doc no", "End. no", "Rnw. no", "Cover Type", "RI SI YN", "RI Premium YN", "Rate Change", "SI Change", "Premium Refund YN", "User Premium YN", "Default", "Default SI YN", "Default PREM YN", "Rated YN", "Excess Applicable?", "Excess %", "Excess Narration", "Txn State", "Create By", "Create Date", "Modified By", "Modified Date", "Status", "INS_UDW_COVER_DISCLOAD", "INS_UDW_SCHEDULE_PMT" ], [ { name: "RCOV_CODE", index: "RCOV_CODE", width: 150 }, { name: "RCOV_NAME", index: "RCOV_NAME", width: 150 }, u.currencyColumn("RCOV_SI_FC"), u.currencyColumn("RCOV_SI_BC"), { name: "RCOV_RATE", index: "RCOV_RATE", width: 150 }, u.currencyColumn("RCOV_GROSS_PREM_FC"), u.currencyColumn("RCOV_GROSS_PREM_BC"), u.currencyColumn("RCOV_ANNL_PREM_FC"), u.currencyColumn("RCOV_ANNL_PREM_BC"), u.currencyColumn("RCOV_NET_PREM_FC"), u.currencyColumn("RCOV_NET_PREM_BC"), u.currencyColumn("RCOV_DISC_FC"), u.currencyColumn("RCOV_DISC_BC"), u.currencyColumn("RCOV_LOAD_FC"), u.currencyColumn("RCOV_LOAD_BC"), { name: "RCOV_DISC_YN", index: "RCOV_DISC_YN", width: 150 }, { name: "RCOV_LOAD_YN", index: "RCOV_LOAD_YN", width: 150 }, { name: "RCOV_LINT_SYS_ID", index: "RCOV_LINT_SYS_ID", hidden: false, width: 150 }, { name: "RCOV_SYS_ID", index: "RCOV_SYS_ID", hidden: false, width: 150, sorttype: "int", id: true, key: true }, { name: "RCOV_RISK_SYS_ID", index: "RCOV_RISK_SYS_ID", hidden: false, width: 150 }, { name: "RCOV_RISK_NO", index: "RCOV_RISK_NO", hidden: false, width: 150 }, { name: "RCOV_POLH_DOC_NO", index: "RCOV_POLH_DOC_NO", width: 150 }, { name: "RPCOV_END_NO", index: "RPCOV_END_NO", width: 150 }, { name: "RPCOV_RNW_NO", index: "RPCOV_RNW_NO", width: 150 }, { name: "RCOV_TYPE", index: "RCOV_TYPE", width: 150 }, { name: "RCOV_RI_SI_YN", index: "RCOV_RI_SI_YN", hidden: false, width: 150 }, { name: "RCOV_RI_PREM_YN", index: "RCOV_RI_PREM_YN", hidden: false, width: 150 }, { name: "RCOV_RATE_CHANGE", index: "RCOV_RATE_CHANGE", width: 150 }, { name: "RCOV_SI_CHANGE", index: "RCOV_SI_CHANGE", width: 150 }, { name: "RCOV_PREM_REFUND_YN", index: "RCOV_PREM_REFUND_YN", width: 150 }, { name: "RCOV_USER_PREM_YN", index: "RCOV_USER_PREM_YN", width: 150 }, { name: "RCOV_DFT", index: "RCOV_DFT", width: 150 }, { name: "RCOV_BASE_SI_YN", index: "RCOV_BASE_SI_YN", width: 150 }, { name: "RCOV_BASE_PREM_YN", index: "RCOV_BASE_PREM_YN", width: 150 }, { name: "RCOV_RATED_YN", index: "RCOV_RATED_YN", width: 150 }, // { name: "RCOV_SCHED_PMT_YN", index: "RCOV_SCHED_PMT_YN", width: 150 }, { name: "RCOV_EXCESS_YN", index: "RCOV_EXCESS_YN" }, { name: "RCOV_EXCESS_PERC", index: "RCOV_EXCESS_PERC" }, { name: "RCOV_EXCESS_NARRATION", index: "RCOV_EXCESS_NARRATION", width: 150 }, { name: "RCOV_TXN_STATE", index: "RCOV_TXN_STATE", width: 150 }, { name: "RCOV_CRTE_BY", index: "RCOV_CRTE_BY", width: 150 }, u.dateTimeColumn("RCOV_CRTE_DATE"), { name: "RCOV_MOD_BY", index: "RCOV_MOD_BY", width: 150 }, u.dateTimeColumn("RCOV_MOD_DATE"), { name: "RCOV_STATUS", index: "RCOV_STATUS", width: 150 }, { name: "INS_UDW_COVER_DISCLOAD", index: "INS_UDW_COVER_DISCLOAD", hidden: true }, { name: "INS_UDW_SCHEDULE_PMT", index: "INS_UDW_SCHEDULE_PMT", hidden: true } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwCoverGrid"); let data = u.getRow(selId, grid); //u.form_reset("#coverForm"); $("#RCOV_SI_FC").val("0.00"); $("#RCOV_RATE").val("0.00"); $("#RCOV_GROSS_PREM_FC").val("0.00"); $("#RCOV_GROSS_PREM_FC").val("0.00"); //let RCOV_SI_FC = data.RCOV_SI_FC; //let RCOV_SI_BC = data.RCOV_SI_BC; //data.RCOV_SI_FC = data.RCOV_BASE_SI_YN === "Y" ? RCOV_SI_BC : data.RCOV_SI_FC; //data.RCOV_SI_BC = data.RCOV_BASE_SI_YN === "Y" ? RCOV_SI_FC : data.RCOV_SI_BC; u.fill_form(data, "#coverForm"); var riskDiscLoads = grid.jqGrid("getCell", selId, "INS_UDW_RISK_DISCLOAD") || "[]"; var coverDiscLoads = grid.jqGrid("getCell", selId, "INS_UDW_COVER_DISCLOAD") || "[]"; riskDiscLoads = (typeof (riskDiscLoads) === "string" ? u.parseJson(riskDiscLoads) : coverDiscLoads) || []; coverDiscLoads = (typeof (coverDiscLoads) === "string" ? u.parseJson(coverDiscLoads) : coverDiscLoads) || []; if (riskDiscLoads.length > 0) { u.gridPopulate(u.getGlobal("udwRskDiscLoadGrid"), riskDiscLoads); } if (coverDiscLoads.length > 0) { u.gridPopulate(u.getGlobal("udwCoverDiscLoading"), coverDiscLoads); } }, //On double click function (id) { }, //On row complete function: //function (cov) { } )); /*-------------------- * ADDON BENEFIT GRID *------------------*/ u.setGlobal("udwAddOnBenefitGrid", u.default_grid("#gridAddonBenefit", "#gridAddonBenefitPager", "Addon Benefit List", [ "Code", "Name", "Total Amount FC", "Total Amount BC", "Default Frequency", "Default Amount FC", "Default Amount BC", "Minimum Frequency", "Maximum Frequency", "Minimum Amount", "Maximum Amount", "Default YN", "NCD YN", "Change Amount", "Change Frequency", "Sys Id", "Risk Id", "End No", "Renewal No", "Create By", "Create Date", "Modified By", "Modified Date", "Status", ], [ { name: "RAB_CODE", index: "RAB_CODE", width: 150 }, { name: "RAB_NAME", index: "RAB_NAME", width: 150 }, u.currencyColumn("RAB_AMOUNT_FC"), u.currencyColumn("RAB_AMOUNT_BC"), { name: "RAB_FREQ_DFT", index: "RAB_FREQ_DFT", width: 150 }, u.currencyColumn("RAB_DFT_AMOUNT_FC"), u.currencyColumn("RAB_DFT_AMOUNT_BC"), { name: "RAB_FREQ_MIN", index: "RAB_FREQ_MIN", width: 150 }, { name: "RAB_FREQ_MAX", index: "RAB_FREQ_MAX", width: 150 }, u.currencyColumn("RAB_MIN_AMOUNT"), u.currencyColumn("RAB_MAX_AMOUNT"), { name: "RAB_DFT_YN", index: "RAB_DFT_YN", width: 150 }, { name: "RAB_NCD_YN", index: "RAB_NCD_YN", width: 150 }, u.currencyColumn("RAB_CHANGE_AMOUNT_YN"), { name: "RAB_CHANGE_FREQUENCY_YN", index: "RAB_CHANGE_FREQUENCY_YN", width: 150 }, { name: "RAB_SYS_ID", index: "RAB_SYS_ID" }, { name: "RAB_RISK_SYS_ID", index: "RAB_RISK_SYS_ID" }, { name: "RAB_END_NO", index: "RAB_END_NO" }, { name: "RAB_RNW_NO", index: "RAB_RNW_NO" }, { name: "RAB_CRTE_BY", index: "RAB_CRTE_BY", width: 150 }, u.dateTimeColumn("RAB_CRTE_DATE"), { name: "RAB_MOD_BY", index: "RAB_MOD_BY", width: 150 }, u.dateTimeColumn("RAB_MOD_DATE"), { name: "RAB_STATUS", index: "RAB_STATUS", width: 150 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwAddOnBenefitGrid"); let data = u.getRow(selId, grid); u.fill_form(data, "#AddonBenefitForm", false); }, //On double click function (id) { }, //On row complete function: //function (cov) { } )); /*--------------------------------- * RISK COVER DISCOUNT LOADING GRID --------------------------------*/ u.setGlobal("RskCvDiscLoadingGrid", u.default_grid("#grdRiskCoverDiscloading", "#grdRiskCoverDiscloadingPager", "Risk Cover Discount/Loading", [ "Code", "Name", "Rate", "PremiumFC", "PremiumBC", "DL Amount FC", "DL Amount BC", "Type", "Level", "Deft. Amount", "Created by", "Created date", "Modified by", "Modified date", "Status", "ID", "DL Cover ID" ], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 200 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, u.currencyColumn("DL_PREM_BC"), u.currencyColumn("DL_PREM_FC"), u.currencyColumn("DL_AMT_FC"), u.currencyColumn("DL_AMT_BC"), { name: "DL_TYPE", index: "DL_TYPE", width: 150 }, { name: "DL_LEVEL", index: "DL_LEVEL", width: 150 }, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_CRTE_BY", index: "DL_CRTE_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_CRTE_DATE"), { name: "DL_MOD_BY", index: "DL_MOD_BY", hidden: false, width: 200 }, u.dateTimeColumn("DL_MOD_DATE"), { name: "DL_STATUS", index: "DL_STATUS", hidden: false, width: 200 }, { name: "DL_SYS_ID", index: "DL_SYS_ID", hidden: true, width: 200, key: true }, { name: "DL_RCOV_SYS_ID", index: "DL_RCOV_SYS_ID", width: 200 } ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("RskCvDiscLoadingGrid"); u.fill_form(u.getRow(selId, grid), "#riskcoverdiscloadingForm"); })); /*-------------------------- * RISK COVER DISC LOAD GRID LOV ---------------------------*/ u.setGlobal("RskCvDiscLoadLOVGrid", u.default_grid("#gridRiskCvDiscLoadLOV", "#gridRiskCvDiscLoadLOVPager", "Risk Cover Discount/Loading", [" Code", "Name", "Level", "Default Percentage", "Default Amount", "Type"], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 250 }, { name: "DL_LEVEL", index: "DL_LEVEL", width: 100 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_TYPE", index: "DL_TYPE", width: 100 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("RskCvDiscLoadLOVGrid"); let data = u.getRow(selId, grid); /*-------------------------------------------------------------------------------------------------------------------------- * Selecting the type of discload comes with it own (DL_LEVEL), depending on the type of level will determine its premium * to be used in calculating the amount. This code resolved and calculate the correct premium at the point of its level to * be used in calculating the amount *--------------------------------------------------------------------------------------------------------------------------*/ const discLoadgrid = u.getGlobal("RskCvDiscLoadingGrid"); const result = u.get_grid_data(discLoadgrid) || []; const dlTypes = result.Where(x => x.DL_STATUS !== "D").map(x => x.DL_LEVEL).Where(b => parseInt(b) <= data.DL_LEVEL).ToList(); const dlObjectTypes = result.Where(x => x.DL_STATUS !== "D").Where(b => parseInt(b.DL_LEVEL) <= data.DL_LEVEL).ToList(); //console.log(dlTypes, dlObjectTypes); let PremiumFC = 0; if (dlTypes.length) { let currentTypeForPremium = dlTypes.Max(c => parseInt(c)); let discLoadResult = result.Where(x => (x.DL_STATUS !== "D") && (x.DL_LEVEL == currentTypeForPremium)).FirstOrDefault(); let discLoadObjectResult = dlObjectTypes.Where(x => x.DL_LEVEL == parseFloat(dlObjectTypes.Max(c => parseInt(c.DL_LEVEL)))).FirstOrDefault(); //console.log(discLoadResult, discLoadObjectResult); PremiumFC = (discLoadResult.DL_LEVEL == data.DL_LEVEL) ? parseFloat(discLoadResult.DL_PREM_FC || 0) : parseFloat(discLoadResult.DL_PREM_FC || 0) + ((discLoadResult.DL_TYPE === "D") ? -parseFloat(discLoadResult.DL_AMT_FC || 0) : parseFloat(discLoadResult.DL_AMT_FC || 0)); } else { const selId = u.getSelRow(u.getGlobal("udwCoverGrid")); PremiumFC = parseFloat(u.getRow(selId, u.getGlobal("udwCoverGrid")).RCOV_GROSS_PREM_FC || 0); }; data.DL_PREM_FC = PremiumFC || 0; //------------------------------------------------------------------------------------------------------------- u.fill_form(data, "#riskcoverdiscloadingForm"); }, function (selId) { const grid = u.getGlobal("RskCvDiscLoadLOVGrid"); u.fill_form(u.getRow(selId, grid), "#riskcoverdiscloadingForm"); $("#RiskCvDiscLoadModal").modal("hide"); })); /*-------------------------- * RISK COVER DISC LOAD GRID LOV ---------------------------*/ u.setGlobal("qteRskCvDiscLoadGrid", u.default_grid("#gridQuoteRiskCvDiscLoad", "#gridQuoteRiskCvDiscLoadPager", "Risk Cover Discount/Loading", [" Code", "Name", "Level", "Default Percentage", "Default Amount", "Type"], [ { name: "DL_CODE", index: "DL_CODE", width: 100 }, { name: "DL_NAME", index: "DL_NAME", width: 250 }, { name: "DL_LEVEL", index: "DL_LEVEL", width: 100 }, { name: "DL_RATE", index: "DL_RATE", width: 100 }, u.currencyColumn("DL_DEFT_AMT"), { name: "DL_TYPE", index: "DL_TYPE", width: 100 }, ], //Retrieve Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("qteRskCvDiscLoadGrid"); u.fill_form(u.getRow(selId, grid), "#riskcoverdiscloadingForm"); var amountFc = (parseFloat($("#RSK_CDL_RATE").val()) / 100) * parseFloat($("#RSK_CDL_PREM_FC").val()); var amountBc = (parseFloat($("#RSK_CDL_RATE").val()) / 100) * parseFloat($("#RSK_CDL_PREM_BC").val()); $("#RSK_CDL_AMT_FC").val(amountFc); $("#RSK_CDL_AMT_BC").val(amountBc); }, function (selId) { const grid = u.getGlobal("qteRskCvDiscLoadGrid"); u.fill_form(u.getRow(selId, grid), "#riskcoverdiscloadingForm"); var amountFc = (parseFloat($("#RSK_CDL_RATE").val()) / 100) * parseFloat($("#RSK_CDL_PREM_FC").val()); var amountBc = (parseFloat($("#RSK_CDL_RATE").val()) / 100) * parseFloat($("#RSK_CDL_PREM_BC").val()); $("#RSK_CDL_AMT_FC").val(amountFc); $("#RSK_CDL_AMT_BC").val(amountBc); $("#RiskCvDiscLoadModal").modal("hide"); })); /* * GENERAL ACCIDENT GRIDS */ u.setGlobal("udwGenAccLocGrid", u.default_grid("#gridGenAccLoc", "#gridGenAccLocPager", "General Accident Location", ["Start Date", "End Date", "Period Days", "Total Prem FC", "Total Prem BC", "SI FC", "SI BC", "Risk Prem FC", "Risk Prem BC", "Discounts FC", "Discounts BC", "Loadings FC", "Loading BC", "RI Prem FC", "RI Prem BC", "RI SI FC", "RI SI BC", "ADJ Prem FC", "ADJ Prem BC", "Currency", "Currency Rate", "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", "Location Name", "Description", "Loc. Address", "Earthquake zone", "Flood Prone", "Uderwriting Year", "EML Appl YN", "EML Perc.", "Doc No.", "Endorsement No.", "Renewal No.", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Created By", "Created Date", "Modified By", "Modified Date", "Status", "Location Sys Id", "Policy Sys Id", /*"INS_UDW_GA_ASSET_ALL_RISK", "INS_UDW_GA_PROF_INDEMNITY",*/ "INS_UDW_GA_TRANSIT"], [ u.dateColumn("GAL_START_DATE"), u.dateColumn("GAL_END_DATE"), { name: "GAL_PERIOD_DAYS", index: "GAL_PERIOD_DAYS" }, u.currencyColumn("GAL_TOT_PREM_FC"), u.currencyColumn("GAL_TOT_PREM_BC"), u.currencyColumn("GAL_SI_FC"), u.currencyColumn("GAL_SI_BC"), u.currencyColumn("GAL_RISK_PREM_FC"), u.currencyColumn("GAL_RISK_PREM_BC"), u.currencyColumn("GAL_DISC_FC"), u.currencyColumn("GAL_DISC_BC"), u.currencyColumn("GAL_LOAD_FC"), u.currencyColumn("GAL_LOAD_BC"), u.currencyColumn("GAL_RI_PREM_FC"), u.currencyColumn("GAL_RI_PREM_BC"), u.currencyColumn("GAL_RI_SI_FC"), u.currencyColumn("GAL_RI_SI_BC"), u.currencyColumn("GAL_ADJ_PREM_FC"), u.currencyColumn("GAL_ADJ_PREM_BC"), { name: "GAL_CURRENCY", index: "GAL_CURRENCY" }, { name: "GAL_CURRENCY_RATE", index: "GAL_CURRENCY_RATE" }, { name: "GAL_REGION_CODE", index: "GAL_REGION_CODE" }, { name: "GAL_REGION_NAME", index: "GAL_REGION_NAME" }, { name: "GAL_AREA_CODE", index: "GAL_AREA_CODE" }, { name: "GAL_AREA_NAME", index: "GAL_AREA_NAME" }, { name: "GAL_LOC_CODE", index: "GAL_LOC_CODE" }, { name: "GAL_LOC_NAME", index: "GAL_LOC_NAME" }, { name: "GAL_DESC", index: "GAL_DESC" }, { name: "GAL_LOC_ADDRS", index: "GAL_LOC_ADDRS" }, { name: "GAL_EARTHQ_ZONE", index: "GAL_EARTHQ_ZONE" }, { name: "GAL_FDZONE", index: "GAL_FDZONE" }, { name: "GAL_UW_YEAR", index: "GAL_UW_YEAR" }, { name: "GAL_EML_YN", index: "GAL_EML_YN" }, { name: "GAL_EML_PERC", index: "GAL_EML_PERC" }, { name: "GAL_POLH_DOC_NO", index: "GAL_POLH_DOC_NO" }, { name: "GAL_POLH_END_NO", index: "GAL_POLH_END_NO" }, { name: "GAL_POLH_RNW_NO", index: "GAL_POLH_RNW_NO" }, { name: "GAL_SUSPND_YN", index: "GAL_SUSPND_YN" }, u.dateColumn("GAL_SUS_FROM_DATE"), u.currencyColumn("GAL_SUS_TO_DATE"), { name: "GAL_SUSPND_PERIOD", index: "GAL_SUSPND_PERIOD" }, { name: "GAL_CRTE_BY", index: "GAL_CRTE_BY" }, u.dateTimeColumn("GAL_CRTE_DATE"), { name: "GAL_MOD_BY", index: "GAL_MOD_BY" }, u.dateTimeColumn("GAL_MOD_DATE"), { name: "GAL_STATUS", index: "GAL_STATUS" }, { name: "GAL_SYS_ID", index: "GAL_SYS_ID", hidden: true, Id: true }, { name: "GAL_POLH_SYS_ID", index: "GAL_POLH_SYS_ID", hidden: true }, //{ name: "INS_UDW_GA_ASSET_ALL_RISK", index: "INS_UDW_GA_ASSET_ALL_RISK", hidden: true }, //{ name: "INS_UDW_GA_PROF_INDEMNITY", index: "INS_UDW_GA_PROF_INDEMNITY", hidden: true }, { name: "INS_UDW_GA_TRANSIT", index: "INS_UDW_GA_TRANSIT", hidden: true } ], function (sel_id) { var grid = u.getGlobal("udwGenAccLocGrid"); u.fill_form(u.getRow(sel_id, grid), "#genAccLocationForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", sel_id, "GAL_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", sel_id, "GAL_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", sel_id, "GAL_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", sel_id, "GAL_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ CIL_SHARE_SI_FC: grid.jqGrid("getCell", sel_id, "GAL_SI_FC"), CIL_SHARE_SI_BC: grid.jqGrid("getCell", sel_id, "GAL_SI_BC"), CIL_SHARE_PREM_FC: grid.jqGrid("getCell", sel_id, "GAL_TOT_PREM_FC"), CIL_SHARE_PREM_BC: grid.jqGrid("getCell", sel_id, "GAL_TOT_PREM_BC"), }, "#CoinsLeaderForm"); var transit = grid.jqGrid("getCell", sel_id, "INS_UDW_GA_TRANSIT"); transit = u.parseJson(transit); if (transit.length > 0) { u.clear_grid_data(u.getGlobal("udwTransitGrid")); u.grid_populate(u.getGlobal("udwTransitGrid"), "", transit); } })); u.setGlobal("udwAARGrid", u.default_grid("#gridAar", "#gridAarPager", "General Accident Policy - Transit", [ "Risk Code", "Risk Name", "Description", /*"Interest",*/ "Currency", "Currency Rate", "Start Date", "End Date", "Pol Days", "Uw Year", "Sum Insured FC", "Sum Insured BC", "Premium FC", "Premium BC", "Limit Loss FC", "Limit Loss BC", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Narration", "EML Y/N", "EML %", "Annual Turnover FC", "Annual Turnover BC", "Destination From", "Destination To", "Distance", "EQ Zone", "Sum Insured FC", "Sum Insured BC", "Premium FC", "Premium BC", "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "RI Sum Insured FC", "RI Sum Insured BC", "RI Premium FC", "RI Premium BC", "Discount FC", "Discount BC", "Loadings FC", "Loadings BC", "Comm FC", "Comm BC", "Created by", "Created date", "Sys Id", "Polh Sys Id", "Polh Doc No", " Polh End No", "Combine RI?", "Combine Flag", "Status", "INS_UWD_RISK_COVERS", /*"INS_UDW_GA_RISK_FEES"*/ ], [ { name: "AAR_RISK_TYPE", index: "AAR_RISK_TYPE", width: 100 }, { name: "AAR_RISK_NAME", index: "AAR_RISK_NAME", width: 200 }, { name: "AAR_DESCRIPTION", index: "AAR_DESCRIPTION", width: 200 }, //{ name: "AAR_INTEREST", index: "AAR_INTEREST", width: 200 }, { name: "AAR_CURRENCY", index: "AAR_CURRENCY", width: 100 }, { name: "AAR_CURR_RATE", index: "AAR_CURR_RATE", width: 100 }, u.dateColumn("AAR_START_DATE"), u.dateColumn("AAR_END_DATE"), { name: "AAR_PERIOD_DAYS", index: "AAR_PERIOD_DAYS", width: 100 }, { name: "AAR_UW_YEAR", index: "AAR_UW_YEAR", width: 100 }, u.currencyColumn("AAR_SUM_INSURED_FC"), u.currencyColumn("AAR_SUM_INSURED_BC"), u.currencyColumn("AAR_PREMIUM_FC"), u.currencyColumn("AAR_PREMIUM_BC"), u.currencyColumn("AAR_LIMIT_LOSS_FC"), u.currencyColumn("AAR_LIMIT_LOSS_BC"), { name: "AAR_EXCESS_APP", index: "AAR_EXCESS_APP", width: 150 }, { name: "AAR_EXCESS_PERC", index: "AAR_EXCESS_PERC", width: 150 }, { name: "AAR_EXCESS_MIN", index: "AAR_EXCESS_MIN", width: 150 }, { name: "AAR_EXCESS_MAX", index: "AAR_EXCESS_MAX", width: 150 }, { name: "AAR_EXCESS_FIX", index: "AAR_EXCESS_FIX", width: 150 }, { name: "AAR_EXCESS_NAR", index: "AAR_EXCESS_NAR", width: 150 }, { name: "AAR_EML_YN", index: "AAR_EML_YN", width: 150 }, { name: "AAR_EML_PERC", index: "AAR_EML_PERC", width: 150 }, u.currencyColumn("AAR_ANN_TURNOVER_FC"), u.currencyColumn("AAR_ANN_TURNOVER_BC"), { name: "AAR_DENT_FROM", index: "AAR_DENT_FROM", width: 150 }, { name: "AAR_DENT_TO", index: "AAR_DENT_TO", width: 150 }, { name: "AAR_DISTANCE", index: "AAR_DISTANCE", width: 150 }, { name: "AAR_EARTHQ_ZONE", index: "AAR_EARTHQ_ZONE", width: 150 }, { name: "AAR_SI_FC", index: "AAR_SI_FC", width: 100 }, { name: "AAR_SI_BC", index: "AAR_SI_BC", width: 100 }, u.currencyColumn("AAR_TOT_PREM_FC"), u.currencyColumn("AAR_TOT_PREM_BC"), u.currencyColumn("AAR_RISK_PREM_FC"), u.currencyColumn("AAR_RISK_PREM_BC"), u.currencyColumn("AAR_ADJ_PREM_FC"), u.currencyColumn("AAR_ADJ_PREM_BC"), u.currencyColumn("AAR_RI_SI_FC"), u.currencyColumn("AAR_RI_SI_BC"), u.currencyColumn("AAR_RI_PREM_FC"), u.currencyColumn("AAR_RI_PREM_BC"), u.currencyColumn("AAR_DISC_FC"), u.currencyColumn("AAR_DISC_BC"), u.currencyColumn("AAR_LOAD_FC"), u.currencyColumn("AAR_LOAD_BC"), u.currencyColumn("AAR_COMM_FC"), u.currencyColumn("AAR_COMM_BC"), { name: "AAR_CRTE_BY", index: "AAR_CRTE_BY", width: 100 }, u.dateColumn("AAR_CRTE_DATE"), { name: "AAR_SYS_ID", index: "AAR_SYS_ID", width: 100 }, { name: "AAR_POLH_SYS_ID", index: "AAR_POLH_SYS_ID", width: 100 }, { name: "AAR_POLH_DOC_NO", index: "AAR_POLH_DOC_NO", width: 100 }, { name: "AAR_POLH_END_NO", index: "AAR_POLH_END_NO", width: 100 }, //{ name: 'INS_UWD_RISK_COVERS', index: 'INS_UWD_RISK_COVERS', width: 150 }, { name: "AAR_RIC_YN", index: "AAR_RIC_YN" }, { name: "AAR_RIC_CODE", index: "AAR_RIC_CODE" }, { name: "AAR_STATUS", index: "AAR_STATUS" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, //{ name: "INS_UDW_GA_RISK_FEES", index: "INS_UDW_GA_RISK_FEES", hidden:true } ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("udwAARGrid"); //var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='AAR_SYS_ID']").data("update", true); u.fill_form({ AAR_SYS_ID: grid.jqGrid("getCell", sel_id, "AAR_SYS_ID"), AAR_RISK_TYPE: grid.jqGrid("getCell", sel_id, "AAR_RISK_TYPE"), AAR_RISK_NAME: grid.jqGrid("getCell", sel_id, "AAR_RISK_NAME"), AAR_INTEREST: grid.jqGrid("getCell", sel_id, "AAR_INTEREST"), AAR_DESCRIPTION: grid.jqGrid("getCell", sel_id, "AAR_DESCRIPTION"), AAR_EXCESS_APP: grid.jqGrid("getCell", sel_id, "AAR_EXCESS_APP"), AAR_EXCESS_PERC: grid.jqGrid("getCell", sel_id, "AAR_EXCESS_PERC"), AAR_EXCESS_NAR: grid.jqGrid("getCell", sel_id, "AAR_EXCESS_NAR"), AAR_EML_YN: grid.jqGrid("getCell", sel_id, "AAR_EML_YN"), AAR_EML_PERC: grid.jqGrid("getCell", sel_id, "AAR_EML_PERC"), AAR_RIC_YN: grid.jqGrid("getCell", sel_id, "AAR_RIC_YN"), AAR_RIC_CODE: grid.jqGrid("getCell", sel_id, "AAR_RIC_CODE") }, "#genaccidentForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", sel_id, "AAR_SYS_ID"), }, "#coverForm"); u.fill_form({ FINW_ORIG_SI_FC: grid.jqGrid("getCell", sel_id, "AAR_SI_FC"), FINW_ORIG_SI_BC: grid.jqGrid("getCell", sel_id, "AAR_SI_BC"), FINW_ORIG_PREM_FC: grid.jqGrid("getCell", sel_id, "AAR_TOT_PREM_FC"), FINW_ORIG_PREM_BC: grid.jqGrid("getCell", sel_id, "AAR_TOT_PREM_BC"), }, "#facInwardForm"); u.fill_form({ FOTW_SHARE_SI_FC: grid.jqGrid("getCell", sel_id, "AAR_SI_FC"), FOTW_SHARE_SI_BC: grid.jqGrid("getCell", sel_id, "AAR_SI_BC"), FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", sel_id, "AAR_TOT_PREM_FC"), FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", sel_id, "AAR_TOT_PREM_BC"), }, "#CoinsLeaderForm"); }, function (id) { var grid = u.getGlobal("udwAARGrid"); var sel_id = grid.jqGrid("getGridParam", "selrow"); var RiskID = grid.jqGrid("getCell", sel_id, "AAR_SYS_ID"); if (RiskID == $("#AAR_SYS_ID").val()) { $("#garModal").modal(); // $("#RiskCoverModal").modal(); //Hide covers not related to selected risk } else { u.growl_warning("No Risk selected, Please check and try again"); }; })); u.setGlobal("udwTransitGrid", u.default_grid("#gridTrans", "#gridTransPager", "General Accident Policy - Transit", [ "Risk Code", "Risk Name", "Description", "SI FC", "SI BC", "Total Prem. FC", "Total Prem. BC", "Risk Prem. FC", "Risk Prem. BC", "Transit Type", "Route", "Distance", "RI SI FC", "RI SI BC", "RI Prem. FC", "RI Prem. BC", "Disc. FC", "Disc. BC", "Loadings FC", "Loadings BC", "Currency", "Currency Rate", "Start Date", "End Date", "Pol Days", "Uw Year", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess","Excess Narration", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Created by", "Created date", "Sys Id","Loc Sys Id", "Polh Doc No", " Polh End No","Status", "INS_UWD_RISK_COVERS","Fees" ], [ { name: "TRANS_RISK_TYPE", index: "TRANS_RISK_TYPE", width: 100 }, { name: "TRANS_RISK_NAME", index: "TRANS_RISK_NAME", width: 200 }, { name: "TRANS_RISK_DESC", index: "TRANS_RISK_DESC", width: 100 }, u.currencyColumn("TRANS_SI_FC"), u.currencyColumn("TRANS_SI_BC"), u.currencyColumn("TRANS_TOT_PREM_FC"), u.currencyColumn("TRANS_TOT_PREM_BC"), u.currencyColumn("TRANS_RISK_PREM_FC"), u.currencyColumn("TRANS_RISK_PREM_BC"), { name: "TRANS_TYPE", index: "TRANS_TYPE", width: 150 }, { name: "TRANS_ROUTE", index: "TRANS_ROUTE", width: 150 }, { name: "TRANS_DISTANCE", index: "TRANS_DISTANCE", width: 150 }, u.currencyColumn("TRANS_RI_SI_FC"), u.currencyColumn("TRANS_RI_SI_BC"), u.currencyColumn("TRANS_RI_PREM_FC"), u.currencyColumn("TRANS_RI_PREM_BC"), u.currencyColumn("TRANS_DISC_FC"), u.currencyColumn("TRANS_DISC_BC"), u.currencyColumn("TRANS_LOAD_FC"), u.currencyColumn("TRANS_LOAD_BC"), { name: "TRANS_CURRENCY", index: "TRANS_CURRENCY", width: 100 }, { name: "TRANS_CURR_RATE", index: "TRANS_CURR_RATE", width: 100 }, u.dateColumn("TRANS_START_DATE"), u.dateColumn("TRANS_END_DATE"), { name: "TRANS_PERIOD_DAYS", index: "TRANS_PERIOD_DAYS", width: 100 }, { name: "TRANS_UW_YEAR", index: "TRANS_UW_YEAR", width: 100 }, { name: "TRANS_EXCESS_APP", index: "TRANS_EXCESS_APP", width: 150 }, { name: "TRANS_EXCESS_PERC", index: "TRANS_EXCESS_PERC", width: 150 }, { name: "TRANS_EXCESS_MIN", index: "TRANS_EXCESS_MIN", width: 150 }, { name: "TRANS_EXCESS_MAX", index: "TRANS_EXCESS_MAX", width: 150 }, { name: "TRANS_EXCESS_NAR", index: "TRANS_EXCESS_NAR", width: 150 }, { name: "TRANS_SUSPND_YN", index: "TRANS_SUSPND_YN" }, u.dateColumn("TRANS_SUS_FROM_DATE"), u.dateColumn("TRANS_SUS_TO_DATE"), { name: "TRANS_SUSPND_PERIOD", index: "TRANS_SUSPND_PERIOD" }, { name: "TRANS_CRTE_BY", index: "TRANS_CRTE_BY", width: 150 }, u.dateColumn("TRANS_CRTE_DATE"), { name: "TRANS_SYS_ID", index: "TRANS_SYS_ID", width: 150 }, { name: "TRANS_LOC_SYS_ID", index: "TRANS_LOC_SYS_ID", width: 150 }, { name: "TRANS_POLH_DOC_NO", index: "TRANS_POLH_DOC_NO", width: 150 }, { name: "TRANS_POLH_END_NO", index: "TRANS_POLH_END_NO", width: 150 }, { name: "TRANS_STATUS", index: "TRANS_STATUS", width: 150 }, { name: 'INS_UWD_RISK_COVERS', index: 'INS_UWD_RISK_COVERS', hidden: true }, //{ name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, { name: "INS_UDW_GA_RISK_FEES", index: "INS_UDW_GA_RISK_FEES", hidden:true } ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("udwTransitGrid"); // var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='TRANS_SYS_ID']").data("update", true); u.setGlobal("excessChange", true); u.fill_form(u.getRow(sel_id, grid), "#genaccidentForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", sel_id, "TRANS_SYS_ID"), }, "#coverForm"); //u.fill_form({ // FINW_ORIG_SI_FC: grid.jqGrid("getCell", sel_id, "TRANS_SI_FC"), // FINW_ORIG_SI_BC: grid.jqGrid("getCell", sel_id, "TRANS_SI_BC"), // FINW_ORIG_PREM_FC: grid.jqGrid("getCell", sel_id, "TRANS_TOT_PREM_FC"), // FINW_ORIG_PREM_BC: grid.jqGrid("getCell", sel_id, "TRANS_TOT_PREM_BC"), //}, // "#facInwardForm"); //u.fill_form({ // FOTW_SHARE_SI_FC: grid.jqGrid("getCell", sel_id, "TRANS_SI_FC"), // FOTW_SHARE_SI_BC: grid.jqGrid("getCell", sel_id, "TRANS_SI_BC"), // FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", sel_id, "TRANS_TOT_PREM_FC"), // FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", sel_id, "TRANS_TOT_PREM_BC"), //}, // "#CoinsLeaderForm"); u.clear_grid_data(u.getGlobal("udwCoverGrid")); var covers = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UWD_RISK_COVERS") || "[]"); //var riskDiscLoads = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UDW_RISK_DISCLOAD") || "[]"); if (covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } //if (riskDiscLoads.length > 0) { // u.grid_populate(u.getGlobal("udwRskDiscLoadingGrid"), "", riskDiscLoads); //} u.setGlobal("excessChange", false); }, function (id) { var grid = u.getGlobal("udwTransitGrid"); var sel_id = grid.jqGrid("getGridParam", "selrow"); var RiskID = grid.jqGrid("getCell", sel_id, "TRANS_SYS_ID"); if (RiskID == $("#TRANS_SYS_ID").val()) { $("#garModal").modal(); // $("#RiskCoverModal").modal(); //Hide covers not related to selected risk } else { u.growl_warning("No Risk selected, Please check and try again"); }; })); u.setGlobal("udwProfIndGrid", u.default_grid("#gridGa", "#gridGaPager", "General Accident Policy", [ "Item Code", "Item Name", "Aggregate Limit FC", "Aggregate Limit BC", "Limit Occurance FC", "Limit Occurance BC", "Premium FC", "Premium BC", "Currency", "Currency Rate", "Start Date", "End Date", "Pol Days", "Uw Year", "Sum Insured FC", "Sum Insured BC", "Premium FC", "Premium BC", "Discount FC", "Discount BC", "Loadings FC", "Loadings BC", "EML YN", "EML Perc", "Excess Applicable", "Excess %", "Min. Excess", "Max. Excess", "Fix Excess", "Narration", "Risk Premium FC", "Risk Premium BC", "Adj Premium FC", "Adj Premium BC", "RI Sum Insured FC", "RI Sum Insured BC", "RI Premium FC", "RI Premium BC", "Comm FC", "Comm BC", "Created by", "Created date", "Status", "Sys Id", "Polh Sys Id", "Polh Doc No", " Polh End No", "INS_UWD_RISK_COVERS", "INS_UDW_RISK_DISCLOAD", /*"INS_UDW_GA_RISK_FEES"*/ ], [ { name: "PRO_ITEM", index: "PRO_ITEM", width: 100 }, { name: "PRO_ITEM_DESC", index: "PRO_ITEM_DESC", width: 300 }, u.currencyColumn("PRO_AGGRET_LIMIT_FC"), u.currencyColumn("PRO_AGGRET_LIMIT_BC"), u.currencyColumn("PRO_LIMIT_OCCUR_FC"), u.currencyColumn("PRO_LIMIT_OCCUR_BC"), u.currencyColumn("PRO_PREM_FC"), u.currencyColumn("PRO_PREM_BC"), { name: "PRO_CURRENCY", index: "PRO_CURRENCY", width: 150 }, { name: "PRO_CURR_RATE", index: "PRO_CURR_RATE", width: 150 }, u.dateColumn("PRO_START_DATE"), u.dateColumn("PRO_END_DATE"), { name: "PRO_PERIOD_DAYS", index: "PRO_PERIOD_DAYS", width: 150 }, { name: "PRO_UW_YEAR", index: "PRO_UW_YEAR", width: 150 }, u.currencyColumn("PRO_SI_FC"), u.currencyColumn("PRO_SI_BC"), u.currencyColumn("PRO_TOT_PREM_FC"), u.currencyColumn("PRO_TOT_PREM_BC"), u.currencyColumn("PRO_DISC_FC"), u.currencyColumn("PRO_DISC_BC"), u.currencyColumn("PRO_LOAD_FC"), u.currencyColumn("PRO_LOAD_BC"), { name: "PRO_EML_YN", index: "PRO_EML_YN", width: 150 }, { name: "PRO_EML_PERC", index: "PRO_EML_PERC", width: 150 }, { name: "PRO_EXCESS_APP", index: "PRO_EXCESS_APP", width: 150 }, { name: "PRO_EXCESS_PERC", index: "PRO_EXCESS_PERC", width: 150 }, { name: "PRO_EXCESS_MIN", index: "PRO_EXCESS_MIN", width: 150 }, { name: "PRO_EXCESS_MAX", index: "PRO_EXCESS_MAX", width: 150 }, { name: "PRO_EXCESS_FIX", index: "PRO_EXCESS_FIX", width: 150 }, { name: "PRO_EXCESS_NAR", index: "PRO_EXCESS_NAR", width: 150 }, u.currencyColumn("PRO_RISK_PREM_FC"), u.currencyColumn("PRO_RISK_PREM_BC"), u.currencyColumn("PRO_ADJ_PREM_FC"), u.currencyColumn("PRO_ADJ_PREM_BC"), u.currencyColumn("PRO_RI_SI_FC"), u.currencyColumn("PRO_RI_SI_BC"), u.currencyColumn("PRO_RI_PREM_FC"), u.currencyColumn("PRO_RI_PREM_BC"), u.currencyColumn("PRO_COMM_FC"), u.currencyColumn("PRO_COMM_BC"), { name: "PRO_CRTE_BY", index: "PRO_CRTE_BY", width: 150 }, u.dateColumn("PRO_CRTE_DATE"), { name: "PRO_STATUS", index: "PRO_STATUS", width: 150 }, { name: "PRO_SYS_ID", index: "PRO_SYS_ID", width: 150 }, { name: "PRO_POLH_SYS_ID", index: "PRO_POLH_SYS_ID", width: 150 }, { name: "PRO_POLH_DOC_NO", index: "PRO_POLH_DOC_NO", width: 150 }, { name: "PRO_POLH_END_NO", index: "PRO_POLH_END_NO", width: 150 }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true }, { name: "INS_UDW_RISK_DISCLOAD", index: "INS_UDW_RISK_DISCLOAD", hidden: true }, //{ name: "INS_UDW_GA_RISK_FEES", index: "INS_UDW_GA_RISK_FEES", hidden:true } ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("udwProfIndGrid"); //var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='PRO_SYS_ID']").data("update", true); //u.fill_form({ // PRO_SYS_ID: grid.jqGrid("getCell", sel_id, "PRO_SYS_ID"), // PRO_ITEM: grid.jqGrid("getCell", sel_id, "PRO_ITEM"), // PRO_ITEM_DESC: grid.jqGrid("getCell", sel_id, "PRO_ITEM_DESC"), // PRO_AGGRET_LIMIT_FC: grid.jqGrid("getCell", sel_id, "PRO_AGGRET_LIMIT_FC"), // PRO_AGGRET_LIMIT_BC: grid.jqGrid("getCell", sel_id, "PRO_AGGRET_LIMIT_BC"), // PRO_LIMIT_OCCUR_FC: grid.jqGrid("getCell", sel_id, "PRO_LIMIT_OCCUR_FC"), // PRO_LIMIT_OCCUR_BC: grid.jqGrid("getCell", sel_id, "PRO_LIMIT_OCCUR_BC"), // PRO_PREM_FC: grid.jqGrid("getCell", sel_id, "PRO_PREM_FC"), // PRO_PREM_BC: grid.jqGrid("getCell", sel_id, "PRO_PREM_BC"), // PRO_EML_YN: grid.jqGrid("getCell", sel_id, "PRO_EML_YN"), // PRO_EML_PERC: grid.jqGrid("getCell", sel_id, "PRO_EML_PERC"), // PRO_EXCESS_APP: grid.jqGrid("getCell", sel_id, "PRO_EXCESS_APP"), // PRO_EXCESS_PERC: grid.jqGrid("getCell", sel_id, "PRO_EXCESS_PERC"), // PRO_EXCESS_NAR: grid.jqGrid("getCell", sel_id, "PRO_EXCESS_NAR"), // PRO_RIC_YN: grid.jqGrid("getCell", sel_id, "PRO_RIC_YN"), // PRO_RIC_CODE: grid.jqGrid("getCell", sel_id, "PRO_RIC_CODE") //}, "#genaccidentForm"); u.fill_form(u.getRow(sel_id, grid), "#genaccidentForm"); u.fill_form({ RCOV_RISK_SYS_ID: grid.jqGrid("getCell", sel_id, "PRO_SYS_ID"), }, "#coverForm"); //u.fill_form({ // FINW_ORIG_SI_FC: grid.jqGrid("getCell", sel_id, "PRO_SI_FC"), // FINW_ORIG_SI_BC: grid.jqGrid("getCell", sel_id, "PRO_SI_BC"), // FINW_ORIG_PREM_FC: grid.jqGrid("getCell", sel_id, "PRO_TOT_PREM_FC"), // FINW_ORIG_PREM_BC: grid.jqGrid("getCell", sel_id, "PRO_TOT_PREM_BC"), //}, "#facInwardForm"); //u.fill_form({ // FOTW_SHARE_SI_FC: grid.jqGrid("getCell", sel_id, "PRO_SI_FC"), // FOTW_SHARE_SI_BC: grid.jqGrid("getCell", sel_id, "PRO_SI_BC"), // FOTW_SHARE_PREM_FC: grid.jqGrid("getCell", sel_id, "PRO_TOT_PREM_FC"), // FOTW_SHARE_PREM_BC: grid.jqGrid("getCell", sel_id, "PRO_TOT_PREM_BC"), //}, "#CoinsLeaderForm"); var covers = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UWD_RISK_COVERS") || "[]"); var riskDiscLoads = u.parseJson(grid.jqGrid("getCell", sel_id, "INS_UDW_RISK_DISCLOAD") || "[]"); if (covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } if (riskDiscLoads.length > 0) { u.grid_populate(u.getGlobal("udwRskDiscLoadingGrid"), "", riskDiscLoads); } }, function (id) { var grid = u.getGlobal("udwProfIndGrid"); var sel_id = grid.jqGrid("getGridParam", "selrow"); var bondRiskID = grid.jqGrid("getCell", sel_id, "PRO_SYS_ID"); if (bondRiskID == $("#PRO_SYS_ID").val()) { $("#garModal").modal(); // $("#RiskCoverModal").modal(); //Hide covers not related to selected risk } else { u.growl_warning("No Professional Indemnity Risk selected, Please check and try again"); }; })); u.setGlobal("genAccFeesGrid", u.default_grid("#gridGaCompFees", "#gridGaCompFeesPager", "Applicable Fees Summary", [ " Code", "Fee Name", "FC Amount", "BC Amount", "Polh SYS ID", "Risk SYS ID", "Risk N0", "Risk Code", "Polh End No.", "Status", "Fee SYS ID" ], [ { name: "GAR_FEE_CODE", index: "GAR_FEE_CODE", width: 150 }, { name: "GAR_FEE_NAME", index: "GAR_FEE_NAME", width: 200 }, u.currencyColumn("GAR_FEE_FC_AMOUNT"), u.currencyColumn("GAR_FEE_BC_AMOUNT"), { name: "GAR_FEE_POL_SYS_ID", index: "GAR_FEE_POL_SYS_ID", width: 150 }, { name: "GAR_FEE_RISK_SYS_ID", index: "GAR_FEE_RISK_SYS_ID", width: 150 }, { name: "GAR_FEE_RK_NO", index: "GAR_FEE_RK_NO", width: 150 }, { name: "GAR_FEE_RK_CODE", index: "GAR_FEE_RK_CODE", width: 150 }, { name: "GAR_FEE_END_NO", index: "GAR_FEE_END_NO", width: 150 }, { name: "GAR_FEE_STATUS", index: "GAR_FEE_STATUS", width: 150 }, { name: "GAR_FEE_SYS_ID", index: "GAR_FEE_SYS_ID", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { var grid = u.getGlobal("genAccFeesGrid"); u.fill_form(u.getRow(selId, grid), "#riskfeesForm"); })); u.setGlobal("udwEngTplRiskGrid", u.default_grid("#gridTplRisk", "#gridTplRiskPager", "TPL List", [ "Description", "Excess Type", "Excess %", "Min. Excess", "Max. Excess", "Excess Narration", "Created By", "Created Date", "Modified By", "Modified Date", "Status", "TPL ID", "Risk ID", "TPL Covers" ], [ { name: "TPL_DESCRIPTION", index: "TPL_DESCRIPTION", width: 150 }, { name: "TPL_EXCESS_TYPE", index: "TPL_EXCESS_TYPE", width: 200 }, { name: "TPL_EXCESS_PERC", index: "TPL_EXCESS_PERC"}, { name: "TPL_EXCESS_MIN", index: "TPL_EXCESS_MIN" }, { name: "TPL_EXCESS_MAX", index: "TPL_EXCESS_MAX" }, { name: "TPL_EXCESS_NAR", index: "TPL_EXCESS_NAR", width: 200 }, { name: "TPL_CRTE_BY", index: "TPL_CRTE_BY" }, u.dateColumn("TPL_CRTE_DATE"), { name: "TPL_MOD_BY", index: "TPL_MOD_BY" }, u.dateColumn("TPL_MOD_DATE"), { name: "TPL_STATUS", index: "TPL_STATUS" }, { name: "TPL_SYS_ID", index: "TPL_SYS_ID" }, { name: "TPL_STATUS", index: "TPL_STATUS" }, { name: "TPL_SYS_ID", index: "TPL_SYS_ID", id:true }, { name: "TPL_RISK_SYS_ID", index: "TPL_RISK_SYS_ID" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true } ], //Retrieve Grid data into form input fields on row click.. function(selId) { var grid = u.getGlobal("udwEngTplRiskGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#tplRiskForm"); var tpl = typeof (grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) : grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || []; u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (tpl.length > 0) { //tpl.ForEach(t => { // tpl.UAC_CVR_CODE = t.UAC_CVR_CODE.split('.')[0]; //}); u.grid_populate(u.getGlobal("udwCoverGrid"), "", tpl); } u.setGlobal("excessChange", false); })); u.setGlobal("udwEngLopRiskGrid", u.default_grid("#gridLopRisk", "#gridLopRiskPager", "LOP List", [ "Description", "Excess Type", "Excess %", "Min. Excess", "Max. Excess", "Excess Narration", "Created By", "Created Date", "Modified By", "Modified Date", "Status", "TPL ID", "Risk ID", "TPL Covers" ], [ { name: "LOP_DESCRIPTION", index: "LOP_DESCRIPTION", width: 150 }, { name: "LOP_EXCESS_TYPE", index: "LOP_EXCESS_TYPE", width: 200 }, { name: "LOP_EXCESS_PERC", index: "LOP_EXCESS_PERC" }, { name: "LOP_EXCESS_MIN", index: "LOP_EXCESS_MIN" }, { name: "LOP_EXCESS_MAX", index: "LOP_EXCESS_MAX" }, { name: "LOP_EXCESS_NAR", index: "LOP_EXCESS_NAR", width: 200 }, { name: "LOP_CRTE_BY", index: "LOP_CRTE_BY" }, u.dateColumn("LOP_CRTE_DATE"), { name: "LOP_MOD_BY", index: "LOP_MOD_BY" }, u.dateColumn("LOP_MOD_DATE"), { name: "LOP_STATUS", index: "LOP_STATUS" }, { name: "LOP_SYS_ID", index: "LOP_SYS_ID" }, { name: "LOP_STATUS", index: "LOP_STATUS" }, { name: "LOP_SYS_ID", index: "LOP_SYS_ID", id: true }, { name: "LOP_RISK_SYS_ID", index: "LOP_RISK_SYS_ID" }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { var grid = u.getGlobal("udwEngLopRiskGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#lopRiskForm"); var lop = typeof (grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) === "string" ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) : grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || []; //u.clear_grid_data(u.getGlobal("udwEngLopGrid")); u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (lop.length > 0) { //lop.ForEach(l => { // l.UAC_CVR_CODE = l.UAC_CVR_CODE.split('.')[0]; //}); u.grid_populate(u.getGlobal("udwCoverGrid"), "", lop); } u.setGlobal("excessChange", false); })); u.setGlobal("udwUserLogGrid", u.default_grid("#gridUserLog", "#gridUserLogPager", "User Log", [ "User", "Action", "Date", ], [ { name: "USER", index: "USER", width: 150 }, { name: "ACTION", index: "ACTION", width: 150 }, { name: "DATE", index: "DATE" }, { name: "AUDIT_ID", index: "AUDIT_ID", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { })); u.setGlobal("renderDocumentGrid", function (id, caption) { const grid = u.default_grid(`${id}`, ``, `${caption} Files`, [ "Code", "File Name", /*"Sys Path", "Web URL", "File Size",*/ "Customer Code", /*"Txn Id",*/ "Description", /*"Mime Type",*/ "Status", "Created By", "Created Date" ], [ { name: "CD_SYS_ID", index: "CD_SYS_ID", hidden: true }, { name: "CD_FILE_NAME", index: "CD_FILE_NAME" }, { name: "CD_CUST_CODE", index: "CD_CUST_CODE" }, { name: "CD_TAG", index: "CD_TAG" }, { name: "CD_STATUS", index: "CD_STATUS" }, { name: "CD_CRETE_BY", index: "CD_CRETE_BY" }, u.dateTimeColumn("CD_CRTE_DATE"), ], () => { }, function (id) { const file = u.getRow(id, grid); if (!file.CD_SYS_ID) return u.growl_warning("File has not been saved, please save changes and try again."); s.getTxnFileTokenAsync(file.CD_SYS_PATH, function (response) { if (response.state) { window.OpenDocument(response.data); } else { u.growl_error(response.message); } }); }); return grid; }); /* * PVT GRID */ u.setGlobal("udwPvtGrid", u.default_grid("#gridPvt", "#gridPvtPager", "PVT Risk List", [ "Period Days", "UW Year", "Currency", "Currency Rate", " Start Date", " End Date", "Total SI FC", "Total SI BC", "Total Prem FC", " Total Prem BC", "Risk Prem FC", " Risk Prem BC", "Discount FC", "Discount BC", "Load FC", "Load BC", "RI SI FC", "RI SI BC", "RI Prem FC", "RI Prem BC", "Excess App", "Excess Perc", "Excess MIN", "Excess Max", "Excess Narration", "EML", "EML Perc", "Region Code", "Region Name", "Area Code", "Area Name", "Location Code", "Location Name", "Risk desc.", "Location desc.", "Suspended?", "Suspended From", "Suspended To", "Suspension Period", "Status", "Created by", "Created date", "Modified by", "Modified date", "Sys ID", "Polh Sys ID", "Endorsement No.", "Renewal No.", "COVERS" ], [ { name: "PVT_PERIOD_DAYS", index: "PVT_PERIOD_DAYS", width: 100 }, { name: "PVT_UW_YEAR", index: "PVT_UW_YEAR", width: 200 }, { name: "PVT_CURRENCY", index: "PVT_CURRENCY", width: 100 }, { name: "PVT_CURRENCY_RATE", index: "PVT_CURRENCY_RATE", width: 200 }, { name: "PVT_START_DATE", index: "PVT_START_DATE" }, { name: "PVT_END_DATE", index: "PVT_END_DATE" }, u.currencyColumn("PVT_SI_FC"), u.currencyColumn("PVT_SI_BC"), u.currencyColumn("PVT_TOT_PREM_FC"), u.currencyColumn("PVT_TOT_PREM_BC"), u.currencyColumn("PVT_RISK_PREM_FC"), u.currencyColumn("PVT_RISK_PREM_BC"), u.currencyColumn("PVT_DISC_FC"), u.currencyColumn("PVT_DISC_BC"), u.currencyColumn("PVT_LOAD_FC"), u.currencyColumn("PVT_LOAD_BC"), u.currencyColumn("PVT_RI_SI_FC"), u.currencyColumn("PVT_RI_SI_BC"), u.currencyColumn("PVT_RI_PREM_FC"), u.currencyColumn("PVT_RI_PREM_BC"), { name: "PVT_EXCESS_TYPE", index: "PVT_EXCESS_TYPE", width: 150 }, { name: "PVT_EXCESS_AMT", index: "PVT_EXCESS_AMT", width: 150 }, { name: "PVT_MIN_EXCESS", index: "PVT_MIN_EXCESS", width: 150 }, { name: "PVT_MAX_EXCESS", index: "PVT_MAX_EXCESS", width: 350 }, { name: "PVT_EXCESS_NARRATION", index: "PVT_EXCESS_NARRATION", width: 150 }, { name: "PVT_EML_YN", index: "PVT_EML_YN", width: 150 }, { name: "PVT_EML_PERC", index: "PVT_EML_PERC", width: 100 }, { name: "PVT_REGION_CODE", index: "PVT_REGION_CODE", width: 150 }, { name: "PVT_REGION_NAME", index: "PVT_REGION_NAME", width: 150 }, { name: "PVT_AREA_CODE", index: "PVT_AREA_CODE", width: 150 }, { name: "PVT_AREA_NAME", index: "PVT_AREA_NAME", width: 150 }, { name: "PVT_LOC_CODE", index: "PVT_LOC_CODE", width: 150 }, { name: "PVT_LOC_NAME", index: "PVT_LOC_NAME", width: 150 }, { name: "PVT_RISK_DESC", index: "PVT_RISK_DESC", width: 150 }, { name: "PVT_LOCATION_DESC", index: "PVT_LOCATION_DESC", width: 150 }, { name: "PVT_SUSPND_YN", index: "PVT_SUSPND_YN", width: 100 }, u.dateColumn("PVT_SUS_FROM_DATE"), u.dateColumn("PVT_SUS_TO_DATE"), { name: "PVT_SUSPND_PERIOD", index: "PVT_SUSPND_PERIOD", width: 100 }, { name: "PVT_STATUS", index: "PVT_STATUS", width: 150 }, { name: "PVT_CRTE_BY", index: "PVT_CRTE_BY", width: 150 }, u.dateColumn("PVT_CRTE_DATE"), { name: "PVT_MOD_BY", index: "PVT_MOD_BY", width: 150 }, u.dateColumn("PVT_MOD_DATE"), { name: "PVT_SYS_ID", index: "PVT_SYS_ID", hidden: true }, { name: "PVT_POLH_SYS_ID", index: "PVT_POLH_SYS_ID", hidden: true }, { name: "PVT_POLH_END_NO", index: "PVT_POLH_END_NO", hidden: true }, { name: "PVT_POLH_RNW_NO", index: "PVT_POLH_RNW_NO", hidden: true }, { name: "INS_UWD_RISK_COVERS", index: "INS_UWD_RISK_COVERS", hidden: true } ], //Retrive Grid data into form input fields on row click.. function (selId) { const grid = u.getGlobal("udwPvtGrid"); u.setGlobal("excessChange", true); u.fill_form(u.getRow(selId, grid), "#pvtForm"); //var covers = typeof grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") === "string" // ? u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")) || "[]" // : grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS") || []; var covers = u.parseJson(grid.jqGrid("getCell", selId, "INS_UWD_RISK_COVERS")); u.clear_grid_data(u.getGlobal("udwCoverGrid")); if (covers !== null && covers.length > 0) { u.grid_populate(u.getGlobal("udwCoverGrid"), "", covers); } u.setGlobal("excessChange", false); })); /* * SHIPPING ITEMS GRID */ u.setGlobal("udwShippingItemsGrid", u.default_grid("#gridItemsDetails", "#gridItemsDetailsPager", "User Log", [ "Item Code", "Item Name", "Package Code", "Package Name", "Cost", "ICC Code", "ICC Name", "ICC Rate", "Freight Amount", "Mark Up Rate", "Duty Rate", "Description", "Created Date", "Created By", "Status", "FK ID", "ID" ], [ { name: "SI_CODE", index: "SI_CODE", width: 150 }, { name: "SI_NAME", index: "SI_NAME", width: 150 }, { name: "SI_PACKAGE_CODE", index: "SI_PACKAGE_CODE", width: 150 }, { name: "SI_PACKAGE_NAME", index: "SI_PACKAGE_NAME", width: 150 }, { name: "SI_COST", index: "SI_COST", width: 150 }, { name: "SI_ICC_CODE", index: "SI_ICC_CODE", width: 150 }, { name: "SI_ICC_NAME", index: "SI_ICC_NAME", width: 150 }, { name: "SI_ICC_RATE", index: "SI_ICC_RATE", width: 150 }, u.currencyColumn("SI_FREIGHT_AMOUNT"), { name: "SI_MARK_UP_RATE", index: "SI_MARK_UP_RATE" }, { name: "SI_DUTY_RATE", index: "SI_DUTY_RATE", width: 150 }, { name: "SI_DESCRIPTION", index: "SI_DESCRIPTION", width: 150 }, u.dateTimeColumn("SI_CRTE_DATE"), { name: "SI_CRTE_BY", index: "SI_CRTE_BY", width: 150 }, { name: "SI_STATUS", index: "SI_STATUS", width: 150 }, { name: "SI_FK_SYS_ID", index: "SI_FK_SYS_ID", width: 150 }, { name: "SI_SYS_ID", index: "SI_SYS_ID", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwShippingItemsGrid")), "#itemsForm"); })); /* * SHIPPING TRANSITS GRID */ u.setGlobal("udwShippingTransitsGrid", u.default_grid("#gridTransitsDetails", "#gridTransitsDetailsPager", "User Log", [ "Location From", "Location To", "Stage", "Rate", "Comments", "Created Date", "Created By", "Status", "FK ID", "ID" ], [ { name: "ST_LOCATION_FROM", index: "ST_LOCATION_FROM", width: 150 }, { name: "ST_LOCATION_TO", index: "ST_LOCATION_TO", width: 150 }, { name: "ST_STAGE", index: "ST_STAGE", width: 150 }, { name: "ST_RATE", index: "ST_RATE", width: 150 }, { name: "ST_COMMENTS", index: "ST_COMMENTS", width: 150 }, u.dateTimeColumn("ST_CRTE_DATE"), { name: "ST_CRTE_BY", index: "ST_CRTE_BY", width: 150 }, { name: "ST_STATUS", index: "ST_STATUS", width: 150 }, { name: "ST_FK_SYS_ID", index: "ST_FK_SYS_ID", width: 150 }, { name: "ST_SYS_ID", index: "ST_SYS_ID", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwShippingTransitsGrid")), "#transitsForm"); })); /* * TRANS SHIPMENT GRID */ u.setGlobal("udwShippingTransGrid", u.default_grid("#gridTransDetails", "#gridTransDetailsPager", "User Log", [ "Country From Code", "Country From Name", "Country To Code", "Country To NAme", "Stage", "Rate", "Comments", "Created Date", "Created By", "Status", "FK ID", "ID" ], [ { name: "TS_COUNTRY_FROM_CODE", index: "TS_COUNTRY_FROM_CODE", width: 150 }, { name: "TS_COUNTRY_FROM_NAME", index: "TS_COUNTRY_FROM_NAME", width: 150 }, { name: "TS_COUNTRY_TO_CODE", index: "TS_COUNTRY_TO_CODE", width: 150 }, { name: "TS_COUNTRY_TO_NAME", index: "TS_COUNTRY_TO_NAME", width: 150 }, { name: "TS_STAGE", index: "TS_STAGE", width: 150 }, { name: "TS_RATE", index: "TS_RATE", width: 150 }, { name: "TS_COMMENTS", index: "TS_COMMENTS", width: 150 }, u.dateTimeColumn("TS_CRTE_DATE"), { name: "TS_CRTE_BY", index: "TS_CRTE_BY", width: 150 }, { name: "TS_STATUS", index: "TS_STATUS", width: 150 }, { name: "TS_FK_SYS_ID", index: "TS_FK_SYS_ID", width: 150 }, { name: "TS_SYS_ID", index: "TS_SYS_ID", width: 150 }, ], //Retrive Grid data into form input fields on row click.. function (selId) { u.fill_form(u.getRow(selId, u.getGlobal("udwShippingTransGrid")), "#transForm"); })); u.setGlobal("shippingItemsLovGrid", u.default_grid("#grdShippingItemsList", "#grdShippingItemsListPager", "Items", [ "Code", "Name" ], [ { name: "code", index: "code", width: 150 }, { name: "name", index: "name", width: 150 } ], //Retrive Grid data into form input fields on row click.. function (selId) { var selected = u.getRow(selId, u.getGlobal("shippingItemsLovGrid")) switch (u.getGlobal("shippingLov")) { case "items": $("#SI_CODE").val(selected.code); $("#SI_NAME").val(selected.name); break; case "packages": $("#SI_PACKAGE_CODE").val(selected.code); $("#SI_PACKAGE_NAME").val(selected.name); break; case "cargoclauses": $("#SI_ICC_CODE").val(selected.code); $("#SI_ICC_NAME").val(selected.name); break; case "countriesFrom": $("#TS_COUNTRY_FROM_CODE").val(selected.code); $("#TS_COUNTRY_FROM_NAME").val(selected.name); break; case "countriesTo": $("#TS_COUNTRY_TO_CODE").val(selected.code); $("#TS_COUNTRY_TO_NAME").val(selected.name); break; case "carriers": $("#MAC_CARRIER_CODE").val(selected.code); $("#MAC_CARRIER_NAME").val(selected.name); break; case "countriesImportFrom": $("#MAC_COUNTRY_OF_IMPORT_CODE").val(selected.code); $("#MAC_COUNTRY_OF_IMPORT_NAME").val(selected.name); $("#MAC_VD_COUNTRY_OF_IMPORT_CODE").val(selected.code); $("#MAC_VD_COUNTRY_OF_IMPORT_NAME").val(selected.name); break; case "countriesDestination": $("#MAC_COUNTRY_OF_DEST_CODE").val(selected.code); $("#MAC_COUNTRY_OF_DEST_NAME").val(selected.name); $("#MAC_VD_COUNTRY_OF_DEST_CODE").val(selected.code); $("#MAC_VD_COUNTRY_OF_DEST_NAME").val(selected.name); break; case "portsLoad": $("#MAC_PORT_OF_LOAD_CODE").val(selected.code); $("#MAC_PORT_OF_LOAD_NAME").val(selected.name); $("#MAC_VD_PORT_OF_LOAD_CODE").val(selected.code); $("#MAC_VD_PORT_OF_LOAD_NAME").val(selected.name); break; case "portsDest": $("#MAC_PORT_OF_DEST_CODE").val(selected.code); $("#MAC_PORT_OF_DEST_NAME").val(selected.name); $("#MAC_VD_PORT_OF_DEST_CODE").val(selected.code); $("#MAC_VD_PORT_OF_DEST_NAME").val(selected.name); break; case "letterofcredit": $("#MAC_LETTER_OF_CREDIT_CODE").val(selected.code); $("#MAC_LETTER_OF_CREDIT").val(selected.name); $("#MAC_LETTER_OF_CREDIT_BANK_CODE").val(selected.code); $("#MAC_LETTER_OF_CREDIT_BANK_NAME").val(selected.name); break; } }, function (selId) { var selected = u.getRow(selId, u.getGlobal("shippingItemsLovGrid")) switch (u.getGlobal("shippingLov")) { case "items": $("#SI_CODE").val(selected.code); $("#SI_NAME").val(selected.name); break; case "packages": $("#SI_PACKAGE_CODE").val(selected.code); $("#SI_PACKAGE_NAME").val(selected.name); break; case "cargoclauses": $("#SI_ICC_CODE").val(selected.code); $("#SI_ICC_NAME").val(selected.name); break; case "countriesFrom": $("#TS_COUNTRY_FROM_CODE").val(selected.code); $("#TS_COUNTRY_FROM_NAME").val(selected.name); break; case "countriesTo": $("#TS_COUNTRY_TO_CODE").val(selected.code); $("#TS_COUNTRY_TO_NAME").val(selected.name); break; case "carriers": $("#MAC_CARRIER_CODE").val(selected.code); $("#MAC_CARRIER_NAME").val(selected.name); break; case "countriesImport": $("#MAC_COUNTRY_OF_IMPORT_CODE").val(selected.code); $("#MAC_COUNTRY_OF_IMPORT_NAME").val(selected.name); $("#MAC_VD_COUNTRY_OF_IMPORT_CODE").val(selected.code); $("#MAC_VD_COUNTRY_OF_IMPORT_NAME").val(selected.name); break; case "countriesDestination": $("#MAC_COUNTRY_OF_DEST_CODE").val(selected.code); $("#MAC_COUNTRY_OF_DEST_NAME").val(selected.name); $("#MAC_VD_COUNTRY_OF_DEST_CODE").val(selected.code); $("#MAC_VD_COUNTRY_OF_DEST_NAME").val(selected.name); break; case "portsLoad": $("#MAC_PORT_OF_LOAD_CODE").val(selected.code); $("#MAC_PORT_OF_LOAD_NAME").val(selected.name); $("#MAC_VD_PORT_OF_LOAD_CODE").val(selected.code); $("#MAC_VD_PORT_OF_LOAD_NAME").val(selected.name); break; case "portsDest": $("#MAC_PORT_OF_DEST_CODE").val(selected.code); $("#MAC_PORT_OF_DEST_NAME").val(selected.name); $("#MAC_VD_PORT_OF_DEST_CODE").val(selected.code); $("#MAC_VD_PORT_OF_DEST_NAME").val(selected.name); break; case "letterOfCredit": $("#MAC_LETTER_OF_CREDIT_BANK_CODE").val(selected.code); $("#MAC_LETTER_OF_CREDIT_BANK_NAME").val(selected.name); $("#MAC_LETTER_OF_CREDIT_CODE").val(selected.code); $("#MAC_LETTER_OF_CREDIT").val(selected.name); break; } $("#ItemsListModal").modal("hide"); } )); u.setGlobal("contractingClauseGrid", u.default_grid("#grdConClauseListPager", "#grdConClauseListPager", "Contracting Clause", [ "Code", "Name", "Description" ], [ { name: "PCC_CLAU_CODE", index: "PCC_CLAU_CODE", width: 150 }, { name: "CCL_NAME", index: "CCL_NAME", width: 150 }, { name: "PCC_DDESCRIPTION", index: "name", width: 150 } ], //Retrive Grid data into form input fields on row click.. function (selId) { var selected = u.getRow(selId, u.getGlobal("contractingClauseGrid")); $("#MAC_CON_CLAUSE_CODE").val(selected.PCC_CLAU_CODE); $("#MAC_CON_CLAUSE_NAME").val(selected.CCL_NAME); $("#MAC_CON_CLAUSE_DESC").val(selected.PCC_DDESCRIPTION); }, function (selId) { var selected = u.getRow(selId, u.getGlobal("contractingClauseGrid")); $("#MAC_CON_CLAUSE_CODE").val(selected.PCC_CLAU_CODE); $("#MAC_CON_CLAUSE_NAME").val(selected.CCL_NAME); $("#MAC_CON_CLAUSE_DESC").val(selected.PCC_DDESCRIPTION); $("#ContractingClauseModal").modal("hide"); } )); u.setGlobal("customer_duplicates_grid", u.default_grid("#grdCustomerDuplicate", "#grdCustomerDuplicatePager", "Customer List", [/*'Code',*/ 'Customer Type', 'Official Name', 'Postal Address', 'Phone No', 'Physical Address', 'Email Address', 'Pin No.', 'Mobile No', 'Bank Code', 'Bank Name', 'Account Number', 'Branch', 'Last Name', 'Other Name', 'Title', 'Gender', 'DOB', 'Occupation', "ID1 Type", "ID1 No", "ID2 Type", "ID2 No", 'Status', 'Created by', 'Created Date', 'Document' ], [ // { name: 'CUS_CODE', id: true, index: 'CUS_CODE' }, //{ name: 'CUS_TYPE_CODE', index: 'CUS_TYPE_CODE', hidden: true }, { name: 'MS_SYS_CUST_TYPES.CTP_NAME', index: 'MS_SYS_CUST_TYPES.CTP_NAME' }, { name: 'CUS_OFFICIAL_NAME', index: 'CUS_OFFICIAL_NAME' }, { name: 'CUS_ADDRS2', index: 'CUS_ADDRS2' }, { name: 'CUS_PHONE1', index: 'CUS_PHONE1' }, { name: 'CUS_ADDRS1', index: 'CUS_ADDRS1' }, ], //Retrive Grid data into form input fields on row click.. function() {}, function () { })); u.setGlobal("fleetDicountVehRiskGrid", u.multiselect_grid("#fleetDiscountRiskGrid", "", "Motor Risk", [ "VehID", "Risk Code", "Risk Name", "Veh Reg. No", "Net Premium", "Fees", "Sum Insured", "Gross Premium", "Risk Premium", "Net Premium Local", "Fees Local", "Sum Insured Local", "Gross Premium Local", "Risk Premium Local", "Comprehensive Premium Foreign", "Comprehensive Premium Local", "Schedule Payment Prem Foreign", "Schedule Payment Prem Local", "No. Of Seats", "Extra Seat Charge Foreign", "Extra Seat Charge Local", "Addon Benefit Foreign", "Addon Benefit Local", "Currency", "Exchange Rate", "Risk Start date", "Risk End date", "Period Days", "UW Year", "Make", "Model", "Body Type", "Body Type Code", "Color", "Registration Year", "Manufacture Year", "Chassis No.", "Engine No.", "Cubic Capacity", "CCl", "Excess", "Excess Percentage", "Min Excess", "Max Excess", "Excess Narration", "Fix Excess", "Additional TPPD", "TPPD Amount", "TP Interest", "TP Details", "Declined Y/N", "Declined Reasons", "Canceled Y/N", "Canceled Reason", "Already Insured Y/N", "Insured Description", "Premium Basis", "RI Applicable", "RI Effective Date", "RI SI Foreign", "RI SI Local", "RI Premium Foreign", "RI Premium Local", "Adj Premium Foreign", "Adj Premium Local", "Discount Foreign", "Discount Local", "Load Foreign", "Load Local", "Excess Premium Foreign", "Excess Premium Local", "Compulsory Fee Foreign", "Compulsory Fee Local", "Commission Foreign", "Commission Local", "Txn Status", "Risk State", "Reg No. Unlckd Y/N", "Reg No. Unlckd By", "Reg No. Unlck Reason", "Chassis Unlckd Y/N", "Chassis Unlckd By", "Chassis Unlkd Reason", "Age Load", "Age Load Foreign", "Age Load Local", "Vehicle Value", "Vehicle Rate", "TTPD YN", "TTPD Value", "TTPD Rate", "Extra Seat Load", "Seat Load", "Usage code", "Risk No", "PolID", "PolDocNo", "Endorsement No.", "Issue Date", "Retrospective Date", "Product code", "Cover Code", " Renewal No.", "Endorsement Type", "Approval Date", ], [ //This is where we are in the refactoring of the amount, BC, FC, and the like code. { name: "VEH_SYS_ID", index: "VEH_SYS_ID", width: 150 }, { name: "VEH_RISK_CODE", index: "VEH_RISK_CODE", width: 150 }, { name: "VEH_RISK_NAME", index: "VEH_RISK_NAME", width: 150 }, { name: "VEH_VEH_REG_NO", index: "VEH_VEH_REG_NO", width: 150 }, u.currencyColumn("VEH_NET_PREM_FC"), u.currencyColumn("VEH_FEES_FC"), u.currencyColumn("VEH_SI_FC"), u.currencyColumn("VEH_TOT_PREM_FC"), u.currencyColumn("VEH_RISK_PREM_FC"), u.currencyColumn("VEH_NET_PREM_BC"), u.currencyColumn("VEH_FEES_BC"), u.currencyColumn("VEH_SI_BC"), u.currencyColumn("VEH_TOT_PREM_BC"), u.currencyColumn("VEH_RISK_PREM_BC"), u.currencyColumn("VEH_COMP_PREM_FC"), u.currencyColumn("VEH_COMP_PREM_BC"), u.currencyColumn("VEH_SCHD_PMT_PREM_FC"), u.currencyColumn("VEH_SCHD_PMT_PREM_BC"), { name: "VEH_PASSENGERS", index: "VEH_PASSENGERS", width: 150 }, u.currencyColumn("VEH_SEAT_CHRGE_FC"), u.currencyColumn("VEH_SEAT_CHRGE_BC"), u.currencyColumn("VEH_ADDON_BENEFIT_FC"), u.currencyColumn("VEH_ADDON_BENEFIT_BC"), { name: "VEH_CURRENCY", index: "VEH_CURRENCY", width: 150 }, { name: "VEH_CURR_RATE", index: "VEH_CURR_RATE", width: 150 }, u.dateColumn("VEH_START_DATE"), u.dateColumn("VEH_END_DATE"), u.integerColumn("VEH_PERIOD_DAYS"), { name: "VEH_UW_YEAR", index: "VEH_UW_YEAR", width: 150 }, { name: "VEH_MAKE", index: "VEH_MAKE", width: 150 }, { name: "VEH_MODEL", index: "VEH_MODEL", width: 150 }, { name: "VEH_BODY_TYPE", index: "VEH_BODY_TYPE", width: 150 }, { name: "VEH_BODY_TYPE_CODE", index: "VEH_BODY_TYPE_CODE", width: 150 }, { name: "VEH_COLOR", index: "VEH_COLOR", width: 150 }, { name: "VEH_REGISTRATION_YR", index: "VEH_REGISTRATION_YR", width: 150 }, { name: "VEH_MANUFACTURE_YR", index: "VEH_MANUFACTURE_YR", width: 150 }, { name: "VEH_CHASSIS_NO", index: "VEH_CHASSIS_NO", width: 150 }, { name: "VEH_ENGINE_NO", index: "VEH_ENGINE_NO", width: 150 }, { name: "VEH_CUBIC_CAP", index: "VEH_CUBIC_CAP", width: 150 }, { name: "VEH_CCL_PERC", index: "VEH_CCL_PERC", width: 150 }, { name: "VEH_EXCESS_APP", index: "VEH_EXCESS_APP", width: 150 }, { name: "VEH_EXCESS_PERC", index: "VEH_EXCESS_PERC", width: 150 }, { name: "VEH_EXCESS_MIN", index: "VEH_EXCESS_MIN", width: 150 }, { name: "VEH_EXCESS_MAX", index: "VEH_EXCESS_MAX", width: 150 }, { name: "VEH_EXCESS_NAR", index: "VEH_EXCESS_NAR", width: 150 }, { name: "VEH_EXCESS_FIX", index: "VEH_EXCESS_FIX", width: 150 }, { name: "VEH_EXTRA_TPPD", index: "VEH_EXTRA_TPPD", width: 150 }, { name: "VEH_ADD_TPPD", index: "VEH_ADD_TPPD", width: 150 }, { name: "VEH_TP_INTEREST", index: "VEH_TP_INTEREST", width: 150 }, { name: "VEH_TP_DETAILS", index: "VEH_TP_DETAILS", width: 150 }, { name: "VEH_DECLINED_YN", index: "VEH_DECLINED_YN", width: 150 }, { name: "VEH_DECLINED_REASON", index: "VEH_DECLINED_REASON", width: 150 }, { name: "VEH_CANCELED_YN", index: "VEH_CANCELED_YN", width: 100 }, { name: "VEH_CANCELLED_REASON", index: "VEH_CANCELLED_REASON", width: 150 }, { name: "VEH_INSURED_YN", index: "VEH_INSURED_YN", width: 100 }, { name: "VEH_INSURED_DESC", index: "VEH_INSURED_DESC", width: 150 }, { name: "VEH_PREMIUM_BASIS", index: "VEH_PREMIUM_BASIS", width: 150 }, { name: "VEH_RI_APPLICABLE", index: "VEH_RI_APPLICABLE", width: 150 }, u.dateColumn("VEH_RI_EFF_DATE"), u.currencyColumn("VEH_RI_SI_FC"), u.currencyColumn("VEH_RI_SI_BC"), u.currencyColumn("VEH_RI_PREM_FC"), u.currencyColumn("VEH_RI_PREM_BC"), u.currencyColumn("VEH_ADJ_PREM_FC"), u.currencyColumn("VEH_ADJ_PREM_BC"), u.currencyColumn("VEH_DISC_FC"), u.currencyColumn("VEH_DISC_BC"), u.currencyColumn("VEH_LOAD_FC"), u.currencyColumn("VEH_LOAD_BC"), u.currencyColumn("VEH_EXCESS_PREM_FC"), u.currencyColumn("VEH_EXCESS_PREM_BC"), u.currencyColumn("VEH_COMP_FEE_FC"), u.currencyColumn("VEH_COMP_FEE_BC"), u.currencyColumn("VEH_COMMISSION_FC"), u.currencyColumn("VEH_COMMISSION_BC"), { name: "VEH_TXN_STATUS", index: "VEH_TXN_STATUS", width: 150 }, { name: "VEH_RISK_STATE", index: "VEH_RISK_STATE", width: 150 }, { name: "VEH_REG_UNLOCK_YN", index: "VEH_REG_UNLOCK_YN", width: 150 }, { name: "VEH_REG_UNLOCK_BY", index: "VEH_REG_UNLOCK_BY", width: 150 }, { name: "VEH_REG_UNLOCK_DESC", index: "VEH_REG_UNLOCK_DESC", width: 150 }, { name: "VEH_CHAS_UNLOCK_YN", index: "VEH_CHAS_UNLOCK_YN", width: 150 }, { name: "VEH_CHAS_UNLOCK_BY", index: "VEH_CHAS_UNLOCK_BY", width: 150 }, { name: "VEH_CHAS_UNLOCK_DESC", index: "VEH_CHAS_UNLOCK_DESC", width: 150 }, { name: "VEH_AGE_PERC", index: "VEH_AGE_PERC", width: 150 }, u.currencyColumn("VEH_AGE_LOAD_FC"), u.currencyColumn("VEH_AGE_LOAD_BC"), { name: "VEH_VALUE", index: "VEH_VALUE", width: 150 }, { name: "VEH_RATE", index: "VEH_RATE", width: 150 }, { name: "VEH_TTPD_YN", index: "VEH_TTPD_YN", width: 150 }, { name: "VEH_TTPD_VALUE", index: "VEH_TTPD_VALUE", width: 150 }, { name: "VEH_TTPD_RATE", index: "VEH_TTPD_RATE", width: 150 }, { name: "VEH_EXTRA_SEAT_LOAD", index: "VEH_EXTRA_SEAT_LOAD", width: 150 }, { name: "VEH_MIN_SEAT_CHRGE", index: "VEH_MIN_SEAT_CHRGE", width: 150 }, { name: "VEH_USAGE_CODE", index: "VEH_USAGE_CODE", width: 150 }, { name: "VEH_RISK_NO", index: "VEH_RISK_NO", width: 150, sorttype: "int" }, { name: "VEH_POLH_SYS_ID", index: "VEH_POLH_SYS_ID", width: 150 }, { name: "VEH_POLH_DOC_NO", index: "VEH_POLH_DOC_NO", width: 150 }, { name: "VEH_POLH_END_NO", index: "VEH_POLH_END_NO", width: 150 }, u.dateColumn("VEH_ISSUE_DATE"), u.dateColumn("VEH_RETROS_DATE"), { name: "VEH_PRODUCT_CODE", index: "VEH_PRODUCT_CODE", width: 150 }, { name: "VEH_COVER_CODE", index: "VEH_COVER_CODE", width: 150 }, { name: "VEH_POLH_RNW_NO", index: "VEH_POLH_RNW_NO", width: 150 }, { name: "VEH_END_TYPE", index: "VEH_END_TYPE", width: 150 }, u.dateColumn("VEH_APPROVE_DATE"), ], //Retrieve Grid data into form input fields on row click.. function (selId) { }, function () { },true,"VEH_SYS_ID" )); /*---------------------------------- * FIRE INTEREST SECTION DETAILS GRID *--------------------------------*/ u.setGlobal("fireSectionGrid", u.default_grid("#gridFirSecDetails", "#gridFirSecDetailsPager", "Risk Section Details", [ "Risk sys ID", "Sys ID", "Item Name", "Sum Insured", "Quantity", "Description", "Serial No", "Manufacture Year", "Created by", "Created Date", "Modified by", "Modified Date", "Status" ], [ { name: "FIRD_RINT_SYS_ID", index: "FIRD_RINT_SYS_ID", width: 200 }, { name: "FIRD_SYS_ID", index: "FIRD_SYS_ID", width: 200 }, { name: "FIRD_ITEM_NAME", index: "FIRD_ITEM_NAME", width: 200 }, u.currencyColumn("FIRD_SUM_INSURED"), { name: "FIRD_QTY", index: "FIRD_QTY", width: 200 }, { name: "FIRD_DESC", index: "FIRD_DESC", width: 200 }, { name: "FIRD_SERIAL_NO", index: "FIRD_SERIAL_NO", width: 200 }, { name: "FIRD_MANUFACTURE_YEAR", index: "FIRD_MANUFACTURE_YEAR", width: 200 }, { name: "CreatedBy", index: "CreatedBy", width: 200 }, u.dateTimeColumn("CreatedDate"), { name: "ModifiedBy", index: "ModifiedBy", width: 200 }, u.dateTimeColumn("ModifiedDate"), { name: "Status", index: "Statues", width: 200 }, ], //Retrive Grid data into form input fields on row click.. function (sel_id) { var grid = u.getGlobal("fireSectionGrid"); // var sel_id = grid.jqGrid("getGridParam", "selrow"); $("form input[name='FIRD_SYS_ID']").data("update", true); u.fill_form({ FIRD_ITEM_NAME: grid.jqGrid("getCell", sel_id, "FIRD_ITEM_NAME"), FIRD_SUM_INSURED: grid.jqGrid("getCell", sel_id, "FIRD_SUM_INSURED"), FIRD_QTY: grid.jqGrid("getCell", sel_id, "FIRD_QTY"), FIRD_DESC: grid.jqGrid("getCell", sel_id, "FIRD_DESC"), FIRD_MANUFACTURE_YEAR: grid.jqGrid("getCell", sel_id, "FIRD_MANUFACTURE_YEAR"), FIRD_SERIAL_NO: grid.jqGrid("getCell", sel_id, "FIRD_SERIAL_NO") }, "#secdetailsForm"); })); /* * PREMIUM REVERSAL ENDORSEMENT SUMMARY GRID */ u.setGlobal("udwPRevEndsmntSumGrid", u.default_grid("#gridPRevEndorsementSummary", "", "Policy Endorsement Summary", ["Code", "Description", "FC_Amount", "BC_Amount", "Type"], [ { name: "CODE", index: "CODE", width: 150 }, { name: "NAME", index: "NAME", width: 350 }, u.currencyColumn("AMOUNT_FC"), u.currencyColumn("AMOUNT_BC"), { name: "TYPE", index: "TYPE", width: 150, hidden: true } ])); }); })(window.jQuery, window.service, window.utility, {}); (function ($, s, u, $scope) { u.setGlobal("tabsInit", function() { /*------------------------ * delete Clause *-----------------------*/ // $("#remove_clause_setup").click(u.getGlobal("udwRemoveClause")); /*------------------------ * delete Clause *-----------------------*/ // $("#update_clause_setup").click(u.getGlobal("udwUpdateClause")); //adding a clause $("#add_clause_setup").click(u.getGlobal("udwAddClause")); //LOV $("#btnClauses").click(u.getGlobal("udwGetClausesLov")); /*------------------------------------ * add file to policy documents grid *----------------------------------*/ $("#btn_add_file").click(u.getGlobal("udwAddFile")); /*------------------------------------------- * remove file from the poliy documents grid *------------------------------------------*/ $("#btn_remove_file").click(u.getGlobal("udwRemoveFile")); /*-------------------------------------------------- * Policy Excess *------------------------------------------------*/ // $("#btn_add_polhexcess").on("click", function () { if (u.form_validation("#polhexcessForm")) { //if ($("input[name='EXS_CODE']").val() === "") return u.modalAlert("Please Enter Policy Excess No"); u.modal_confirmation("Are you sure you want to add the Policy Excess Details?", function () { var rowIds = u.getGlobal("udwExcessGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwExcessGrid").jqGrid("getCell", currRow, "EXS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#EXS_CODE").val(), code) < 0) { var formData = u.parse_form("#polhexcessForm"); formData.EXS_STATUS = "U"; formData.EXS_CRTE_BY = u.getUserCode(); formData.EXS_CRTE_DATE = u.get_date(); u.getGlobal("udwExcessGrid").addRowData(formData.EXS_CODE, formData); u.hide_confirm(); u.growl_success("Policy Excess successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Policy Excess with code ${cellValue} Already exists`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); // Deleting $("#btn_remove_polhexcess").on("click", function () { if (u.grid_empty(u.getGlobal("udwExcessGrid"))) return u.modalAlert("Grid is empty!!!"); var grid = u.getGlobal("udwExcessGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "EXS_STATUS"); var code = grid.jqGrid("getCell", rowId, "EXS_CODE"); var message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "EXS_STATUS", "D"); $(`#${rowId}`, "#grdPolhExcess").css({ color: "red" }); u.hide_confirm(); u.hide_confirm("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdPolhExcess").css({ color: "black" }); grid.jqGrid("setCell", rowId, "EXS_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } }); }); // Updating $("#btn_update_polhexcess").on("click", function () { if (u.grid_empty(u.getGlobal("udwExcessGrid"))) return u.growl_info("Excess grid is empty"); if (u.form_validation("#polhexcessForm")) { u.modal_confirmation("Are you sure you want to update the selected Excess?", function () { var grid = u.getGlobal("udwExcessGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var code = grid.jqGrid("getCell", rowId, "EXS_CODE"); if (code === $("input[name='EXS_CODE']").val()) { var data = u.parse_form("#polhexcessForm"); for (var i in data) { grid.jqGrid("setCell", rowId, i, data[i]); } u.hide_confirm(); u.growl_success("Policy Excess updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); /*-------------------------------------------------- * Policy Discount/Loading *------------------------------------------------*/ // $("#btn_add_polhdisloading").on("click", function () { if (u.form_validation("#polhdiscloadingForm")) { //if ($("input[name='DL_CODE']").val() === "") return u.modalAlert("Please Enter Policy Excess No"); u.modal_confirmation("Are you sure you want to add the Policy Discount/Loading Details?", function () { var rowIds = u.getGlobal("udwPolDiscLoadingGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwPolDiscLoadingGrid").jqGrid("getCell", currRow, "DL_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#DL_CODE").val(), code) < 0) { var formData = u.parse_form("#polhdiscloadingForm"); formData.DL_STATUS = "U"; formData.DL_CRTE_BY = u.getUserCode(); formData.DL_CRTE_DATE = u.get_date(); u.getGlobal("udwPolDiscLoadingGrid").addRowData(formData.DL_CODE, formData); u.hide_confirm(); u.growl_success("Policy Discount/Loading successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Policy Discount/Loading with code ${cellValue} Already exists`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); // Deleting $("#btn_remove_polhdisloadings").on("click", function () { if (u.grid_empty(u.getGlobal("udwPolDiscLoadingGrid"))) return u.modalAlert("Grid is empty!!!"); var grid = u.getGlobal("udwPolDiscLoadingGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "DL_STATUS"); var code = grid.jqGrid("getCell", rowId, "DL_CODE"); var message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "DL_STATUS", "D"); $(`#${rowId}`, "#grdPolhDiscloading").css({ color: "red" }); u.hide_confirm(); u.hide_confirm("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdPolhDiscloading").css({ color: "black" }); grid.jqGrid("setCell", rowId, "DL_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } }); }); // Updating $("#btn_update_polhdisloading").on("click", function () { if (u.grid_empty(u.getGlobal("udwPolDiscLoadingGrid"))) return u.growl_info("Excess grid is empty"); if (u.form_validation("#polhdiscloadingForm")) { u.modal_confirmation("Are you sure you want to update the selected Discount/Loading?", function () { var grid = u.getGlobal("udwPolDiscLoadingGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var code = grid.jqGrid("getCell", rowId, "DL_CODE"); if (code === $("input[name='DL_CODE']").val()) { var data = u.parse_form("#polhdiscloadingForm"); for (var i in data) { grid.jqGrid("setCell", rowId, i, data[i]); } u.hide_confirm(); u.growl_success("Policy Discount/Loading updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); /*-------------------------------------------------- * Cover Excess *------------------------------------------------*/ // $("#btn_add_coverexcess").on("click", function () { if (u.form_validation("#coverexcessForm")) { //if ($("input[name='EXS_CODE']").val() === "") return u.modalAlert("Please Enter Policy Excess No"); u.modal_confirmation("Are you sure you want to add the Cover Excess Details?", function () { var rowIds = u.getGlobal("udwCoverExcessGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCoverExcessGrid").jqGrid("getCell", currRow, "EXS_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#EXS_CODE").val(), code) < 0) { var formData = u.parse_form("#coverexcessForm"); formData.EXS_STATUS = "U"; formData.EXS_CRTE_BY = u.getUserCode(); formData.EXS_CRTE_DATE = u.get_date(); u.getGlobal("udwCoverExcessGrid").addRowData(formData.EXS_CODE, formData); u.hide_confirm(); u.growl_success("Cover Excess successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Cover Excess with code ${cellValue} Already exists`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); // Deleting $("#btn_remove_coverexcess").on("click", function () { if (u.grid_empty(u.getGlobal("udwCoverExcessGrid"))) return u.modalAlert("Grid is empty!!!"); var grid = u.getGlobal("udwCoverExcessGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "EXS_STATUS"); var code = grid.jqGrid("getCell", rowId, "EXS_CODE"); var message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "EXS_STATUS", "D"); $(`#${rowId}`, "#grdCoverExcess").css({ color: "red" }); u.hide_confirm(); u.hide_confirm("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdCoverExcess").css({ color: "black" }); grid.jqGrid("setCell", rowId, "EXS_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } }); }); // Updating $("#btn_update_coverexcess").on("click", function () { if (u.grid_empty(u.getGlobal("udwCoverExcessGrid"))) return u.growl_info("Excess grid is empty"); if (u.form_validation("#coverexcessForm")) { u.modal_confirmation("Are you sure you want to update the selected Excess?", function () { var grid = u.getGlobal("udwCoverExcessGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var code = grid.jqGrid("getCell", rowId, "EXS_CODE"); if (code === $("input[name='EXS_CODE']").val()) { var data = u.parse_form("#coverexcessForm"); for (var i in data) { grid.jqGrid("setCell", rowId, i, data[i]); } u.hide_confirm(); u.growl_success("Cover Excess updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); /*-------------------------------------------------- * Cover Discount/Loading *------------------------------------------------*/ // $("#btn_add_coverdisloading").on("click", function () { if (u.form_validation("#coverdiscloadingForm")) { //if ($("input[name='DL_CODE']").val() === "") return u.modalAlert("Please Enter Policy Excess No"); u.modal_confirmation("Are you sure you want to add the Cover Discount/Loading Details?", function () { var rowIds = u.getGlobal("udwCoverDiscLoading").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwCoverDiscLoading").jqGrid("getCell", currRow, "DL_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#DL_CODE").val(), code) < 0) { var formData = u.parse_form("#coverdiscloadingForm"); formData.DL_STATUS = "U"; formData.DL_CRTE_BY = u.getUserCode(); formData.DL_CRTE_DATE = u.get_date(); u.getGlobal("udwCoverDiscLoading").addRowData(formData.DL_CODE, formData); u.hide_confirm(); u.growl_success("Cover Discount/Loading successfully added to grid"); u.form_reset("#coverdiscloadingForm"); } else { u.hide_confirm(); u.growl_warning(`Cover Discount/Loading with code ${cellValue} Already exists`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); // Deleting $("#btn_remove_coverdisloadings").on("click", function () { if (u.grid_empty(u.getGlobal("udwCoverDiscLoading"))) return u.modalAlert("Grid is empty!!!"); var grid = u.getGlobal("udwCoverDiscLoading"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "DL_STATUS"); var code = grid.jqGrid("getCell", rowId, "DL_CODE"); var message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "DL_STATUS", "D"); $(`#${rowId}`, "#grdCoverDiscloading").css({ color: "red" }); u.hide_confirm(); u.hide_confirm("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdCoverDiscloading").css({ color: "black" }); grid.jqGrid("setCell", rowId, "DL_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } u.form_reset("#coverdiscloadingForm"); }); }); // Updating $("#btn_update_coverdisloading").on("click", function () { if (u.grid_empty(u.getGlobal("udwCoverDiscLoading"))) return u.growl_info("Excess grid is empty"); if (u.form_validation("#coverdiscloadingForm")) { u.modal_confirmation("Are you sure you want to update the selected Discount/Loading?", function () { var grid = u.getGlobal("udwCoverDiscLoading"); var rowId = grid.jqGrid("getGridParam", "selrow"); var code = grid.jqGrid("getCell", rowId, "DL_CODE"); if (code === $("input[name='DL_CODE']").val()) { var data = u.parse_form("#riskdiscloadingForm"); for (var i in data) { grid.jqGrid("setCell", rowId, i, data[i]); } u.hide_confirm(); u.growl_success("Cover Discount/Loading updated"); u.form_reset("#coverdiscloadingForm"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); $("#btn_cover_type").on("click", function () { $("#RiskDiscLoadModal").modal(); var grid = u.getGlobal("udwRskDiscLoadGrid"); var rowIds = grid.jqGrid("getDataIDs"); //send parameters and get from the database s.discountloadingList(function (result) { if (result && result.length && result.length > 0) { //clear Grid u.getGlobal("udwRskDiscLoadGrid").jqGrid("clearGridData"); //fill grid for (var i in result) { u.getGlobal("udwRskDiscLoadGrid").addRowData(result[i]["MMO_CODE"], result[i]); } } }); }); $("#btnEstDetails").click(function() { var grid = u.getGlobal("udwClaimsGrid"); var sel_id = u.getSelRow(grid); if (!sel_id) return u.growl_info("Select a claim from the list"); $("#estimateModal").modal(); }); $("#closeEstimateModal").click(function() { $("#estimateModal").modal("hide"); }); $("#export_estimate_btn").click(function() { u.excel_export(u.getGlobal("udwClaimsEstGrid"), ["CLM_EST_SYS_ID"], "Estimate_List_Excel"); }); $("#export_claims_btn").click(function () { u.excel_export(u.getGlobal("udwClaimsGrid"), ["Id"], "Policy_Claims_List_Excel"); }); $("#btn_cover_discloading").click(function () { //Open Modal if ($("#RCOV_SYS_ID").val() === "") return u.growl_info("Please select the cover for which you want to apply discounts/loadings"); var discLoadGrid = u.getGlobal("udwCoverDiscLoading"); u.clear_grid_data(discLoadGrid); var coverGrid = u.getGlobal("udwCoverGrid"); var selectedCover = u.getSelRow(coverGrid); var coverDiscLoads = coverGrid.jqGrid("getCell", selectedCover, "INS_UDW_COVER_DISCLOAD") || "[]"; coverDiscLoads = JSON.parse(coverDiscLoads); console.log(coverDiscLoads); if (coverDiscLoads.length > 0) { u.gridPopulate(discLoadGrid, coverDiscLoads); } var grossPremFc = coverGrid.jqGrid("getCell", selectedCover, "RCOV_GROSS_PREM_FC"); var grossPremBc = coverGrid.jqGrid("getCell", selectedCover, "RCOV_GROSS_PREM_BC"); u.fill_form({ DL_PREM_BC: grossPremBc, DL_PREM_FC: grossPremFc }, "#coverdiscloadingForm"); $("#coverDiscloadingModal").modal(); }); $("#coverDiscloadModalOK").click(function() { var discLoadGrid = u.getGlobal("udwCoverDiscLoading"); if (!u.grid_empty(discLoadGrid)) { var discLoads = u.get_grid_data(discLoadGrid); console.log(discLoads); var coverGrid = u.getGlobal("udwCoverGrid"); var selectedCover = u.getSelRow(coverGrid); console.log(selectedCover); var totalDiscountsFc = discLoads.Where(d => d.DL_TYPE === "D").Sum(d => parseFloat(d.DL_AMT_FC)); var totalDiscountsBc = discLoads.Where(d => d.DL_TYPE === "D").Sum(d => parseFloat(d.DL_AMT_BC)); var totalLoadingsFc = discLoads.Where(d => d.DL_TYPE === "L").Sum(d => parseFloat(d.DL_AMT_FC)); var totalLoadingsBc = discLoads.Where(d => d.DL_TYPE === "L").Sum(d => parseFloat(d.DL_AMT_BC)); console.log(totalDiscountsFc); console.log(totalLoadingsFc); u.setCell(coverGrid, selectedCover, "RCOV_DISC_FC", totalDiscountsFc.toFixed(2)); u.setCell(coverGrid, selectedCover, "RCOV_DISC_BC", totalDiscountsBc.toFixed(2)); u.setCell(coverGrid, selectedCover, "RCOV_LOAD_FC", totalLoadingsFc.toFixed(2)); u.setCell(coverGrid, selectedCover, "RCOV_LOAD_BC", totalLoadingsBc.toFixed(2)); u.setCell(coverGrid, selectedCover, "INS_UDW_COVER_DISCLOAD", JSON.stringify(discLoads)); } u.clear_grid_data(discLoadGrid); $("#coverDiscloadingModal").modal("hide"); }); /*-------------------------------------------- * NEW RISK DISCOUNT/LOADINGS MODAL FUNCTIONS -------------------------------------------*/ $("#btn_add_riskcoverdiscloading").on("click", function () { if (u.form_validation("#riskcoverdiscloadingForm")) { u.modal_confirmation("Are you sure you want to add the Risk Cover Discount/Loading?", function () { const rowIds = u.getGlobal("RskCvDiscLoadingGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ for (let i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ var cellValue = u.getGlobal("RskCvDiscLoadingGrid").jqGrid("getCell", currRow, "DL_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ if ($.inArray($("#RSK_CDL_CODE").val(), code) < 0) { const formData = u.parse_form("#riskcoverdiscloadingForm"); console.log(formData); formData.DL_STATUS = "U"; formData.DL_CRTE_BY = u.getUserCode(); formData.DL_CRTE_DATE = u.get_date(); formData.DL_END_NO = 0; u.getGlobal("RskCvDiscLoadingGrid").addRowData(undefined, formData); u.hide_confirm(); u.growl_success("Record successfully added to grid"); u.form_reset("#riskcoverdiscloadingForm"); $("#RSK_CDL_PREM_FC").val(formData.DL_PREM_FC); $("#RSK_CDL_PREM_BC").val(formData.DL_PREM_BC); } else { u.hide_confirm(); u.growl_warning(`Risk Discount/Loading with code ${cellValue} Already exists`); } const selId = u.getSelRow(u.getGlobal("udwCoverGrid")); const PremiumFc = parseFloat(u.getRow(selId, u.getGlobal("udwCoverGrid")).RCOV_GROSS_PREM_FC || 0); let gridData = u.get_grid_data(u.getGlobal("RskCvDiscLoadingGrid")) || []; let cvDLCalLevel = $scope.riskCoverDisLoadLevelCal(gridData, PremiumFc); u.clear_grid_data(u.getGlobal("RskCvDiscLoadingGrid")); cvDLCalLevel = (typeof (cvDLCalLevel) == "string" ? JSON.parse(cvDLCalLevel || "[]") : cvDLCalLevel) || []; cvDLCalLevel.ForEach(x => { u.getGlobal("RskCvDiscLoadingGrid").addRowData(x.DL_SYS_ID, x); }); }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); $("#btn_remove_riskcoverdiscloading").on("click", function () { const grid = u.getGlobal("RskCvDiscLoadingGrid"); if (u.grid_empty(grid)) return u.modalAlert("Grid is empty!!!"); let rowId = grid.jqGrid("getGridParam", "selrow"); const code = grid.jqGrid("getCell", rowId, "DL_CODE"); if (code === $("#riskcoverdiscloadingForm").find("input[name='DL_CODE']").val()) { const recordStatus = grid.jqGrid("getCell", rowId, "DL_STATUS"); /*--------------------------------- * Display modal message *------------------------------*/ u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.growl_success("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "DL_STATUS", "D"); $(`#${rowId}`, "#grdRiskCoverDiscloading").css({ color: "red" }); u.hide_confirm(); u.growl_success("Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdRiskCoverDiscloading").css({ color: "black" }); grid.jqGrid("setCell", rowId, "DL_STATUS", "A"); u.hide_confirm(); u.growl_success("Data successfully restored"); } const selId = u.getSelRow(u.getGlobal("udwCoverGrid")); const PremiumFc = parseFloat(u.getRow(selId, u.getGlobal("udwCoverGrid")).RCOV_GROSS_PREM_FC || 0); let gridData = u.get_grid_data(u.getGlobal("RskCvDiscLoadingGrid")) || []; let cvDLCalLevel = $scope.riskCoverDisLoadLevelCal(gridData, PremiumFc); u.clear_grid_data(u.getGlobal("RskCvDiscLoadingGrid")); cvDLCalLevel = (typeof (cvDLCalLevel) == "string" ? JSON.parse(cvDLCalLevel || "[]") : cvDLCalLevel) || []; cvDLCalLevel.ForEach(x => { u.getGlobal("RskCvDiscLoadingGrid").addRowData(x.DL_SYS_ID, x); }); }); } }); $("#btnCoverDiscountLoadingOk").on("click", function () { const grid = u.getGlobal("RskCvDiscLoadingGrid"); if (/*u.grid_empty(grid)*/ false) { $("#riskCvDiscloadingModal").modal("hide"); } else { const result = u.get_grid_data(grid); $("#policyCalculationsModal").modal(); setTimeout(async function () { const rowId = u.getSelRow(u.getGlobal("udwCoverGrid")); let coverResult = u.getRow(rowId, u.getGlobal("udwCoverGrid")); coverResult.RCOV_DISC_FC = parseFloat(result.Where(x => x.DL_TYPE === "D" && x.DL_STATUS !== "D" /*&& x.DL_END_NO == "0"*/).Sum(x => parseFloat(x.DL_AMT_FC || 0)) || 0).toFixed(2); coverResult.RCOV_DISC_BC = parseFloat(result.Where(x => x.DL_TYPE === "D" && x.DL_STATUS !== "D" /*&& x.DL_END_NO == "0"*/).Sum(x => parseFloat(x.DL_AMT_BC || 0)) || 0).toFixed(2); coverResult.RCOV_LOAD_FC = parseFloat(result.Where(x => x.DL_TYPE === "L" && x.DL_STATUS !== "D" /*&& x.DL_END_NO == "0"*/).Sum(x => parseFloat(x.DL_AMT_FC || 0)) || 0).toFixed(2); coverResult.RCOV_LOAD_BC = parseFloat(result.Where(x => x.DL_TYPE === "L" && x.DL_STATUS !== "D" /*&& x.DL_END_NO == "0"*/).Sum(x => parseFloat(x.DL_AMT_BC || 0)) || 0).toFixed(2); coverResult.RCOV_NET_PREM_FC = parseFloat(parseFloat(coverResult.RCOV_GROSS_PREM_FC) - parseFloat(coverResult.RCOV_DISC_FC) + parseFloat(coverResult.RCOV_LOAD_FC)).toFixed(2); coverResult.RCOV_NET_PREM_BC = parseFloat(parseFloat(coverResult.RCOV_GROSS_PREM_BC) - parseFloat(coverResult.RCOV_DISC_BC) + parseFloat(coverResult.RCOV_LOAD_BC)).toFixed(2); coverResult.INS_UDW_COVER_DISCLOAD = (typeof (result) === "string" ? u.parseJson(result || "[]") : result) || []; coverResult.INS_UDW_RISK_DISCLOAD = (typeof (result) === "string" ? result : JSON.stringify(result || [])) || '[]'; for (let i in coverResult) u.getGlobal("udwCoverGrid").jqGrid("setCell", rowId, i, coverResult[i]); u.getGlobal("udwCoverGrid").refresh(); $("#riskCvDiscloadingModal").modal("hide"); $("#policyCalculationsModal").modal("hide"); u.form_reset("#riskcoverdiscloadingForm"); u.clear_grid_data(u.getGlobal("RskCvDiscLoadingGrid")); }, 500); } }); $("#btnRiskCvDLdLOV").on("click", async function () { $("#RiskCvDiscLoadModal").modal(); let product = $("#POLH_SUB_CLASS_CODE").val(); let result = await s.getProductDiscloadAsync(product) || []; if (result.state) { u.getGlobal("RskCvDiscLoadLOVGrid").jqGrid("clearGridData"); result.data.ForEach(x => { u.getGlobal("RskCvDiscLoadLOVGrid").addRowData(x.DL_CODE, x); }); } }); $("#btn_update_riskcoverdiscloading").on("click", function () { if (u.grid_empty(u.getGlobal("RskCvDiscLoadingGrid"))) return u.growl_info("Grid is empty"); if (u.form_validation("#riskcoverdiscloadingForm")) { u.modal_confirmation("Are you sure you want to update the selected Record?", function () { const grid = u.getGlobal("RskCvDiscLoadingGrid"); const rowId = u.getSelRow(grid); //const rowId = grid.jqGrid("getGridParam", "selrow"); if (rowId) { const code = grid.jqGrid("getCell", rowId, "DL_CODE"); if (code === $("#riskcoverdiscloadingForm").find("input[name='DL_CODE']").val()) { const data = u.parse_form("#riskcoverdiscloadingForm"); for (let i in data) grid.jqGrid("setCell", rowId, i, data[i]); u.hide_confirm(); u.growl_success("Risk Cover Discount/Loading updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } } const selId = u.getSelRow(u.getGlobal("udwCoverGrid")); const PremiumFc = parseFloat(u.getRow(selId, u.getGlobal("udwCoverGrid")).RCOV_GROSS_PREM_FC || 0); let gridData = u.get_grid_data(grid) || []; let cvDLCalLevel = $scope.riskCoverDisLoadLevelCal(gridData, PremiumFc); u.clear_grid_data(u.getGlobal("RskCvDiscLoadingGrid")); cvDLCalLevel = (typeof (cvDLCalLevel) == "string" ? JSON.parse(cvDLCalLevel || "[]") : cvDLCalLevel) || []; cvDLCalLevel.ForEach(x => { u.getGlobal("RskCvDiscLoadingGrid").addRowData(x.DL_SYS_ID, x); }); }); } }); $("#btnRiskDLdLOV").on("click", function () { $("#RiskDiscLoadModal").modal(); var grid = u.getGlobal("udwRskDiscLoadGrid"); var rowIds = grid.jqGrid("getDataIDs"); s.discountloadingList($("#POLH_SUB_CLASS_CODE").val(), function (result) { if (result && result.length && result.length > 0) { u.getGlobal("udwRskDiscLoadGrid").jqGrid("clearGridData"); for (var i in result) { u.getGlobal("udwRskDiscLoadGrid").addRowData(result[i]["MMO_CODE"], result[i]); } } }); }); $("#btnRiskDLOk").click(function () { const grid = u.getGlobal("udwRskDiscLoadGrid"); const selId = u.getSelRow(grid); let data = selId ? u.getRow(selId, grid) : {}; u.fill_form(data, "#riskdiscloadingForm"); $("#RSK_DL_CODE").trigger("change"); $("#RiskDiscLoadModal").modal("hide"); }); $("#RSK_CDL_RATE").change(function () { const amtFC = (parseFloat($("#RSK_CDL_PREM_FC").val()) * (parseFloat($(this).val()) / 100)).toFixed(2); const amtBC = (parseFloat($("#RSK_CDL_PREM_BC").val()) * (parseFloat($(this).val()) / 100)).toFixed(2); $("#RSK_CDL_AMT_FC").val(amtFC); $("#RSK_CDL_AMT_BC").val(amtBC); }); $scope.riskCoverDisLoadLevelCal = function (discLoad, premium) { let Premium = parseFloat(premium || 0); let SameLevelAccumulator = 0; discLoad = (typeof (discLoad) === 'string' ? JSON.parse(discLoad || '[]') : discLoad) || []; let discLoadFilter = discLoad.Where(c => c.DL_STATUS !== 'D').OrderBy(v => parseFloat(v.DL_LEVEL)).ToList(); let discLoadFilterDeleted = discLoad.Where(c => c.DL_STATUS === 'D').OrderBy(v => parseFloat(v.DL_LEVEL)).ToList(); discLoadFilter/*.Where(c => c.DL_STATUS !== 'D')*/.ForEach((x, i) => { x.DL_PREM_FC = parseFloat(Premium || 0).toFixed(2); x.DL_PREM_BC = parseFloat(x.DL_PREM_FC * parseFloat($("#POLH_CURRENCY_RATE").val() || 1)).toFixed(2); x.DL_AMT_FC = parseFloat(parseFloat(x.DL_RATE / 100) * x.DL_PREM_FC).toFixed(2); x.DL_AMT_BC = parseFloat(parseFloat(x.DL_RATE / 100) * x.DL_PREM_BC).toFixed(2); let next = discLoadFilter[i + 1] || {}; if (next.DL_LEVEL != x.DL_LEVEL) { let Amount = x.DL_TYPE === "D" ? -parseFloat(x.DL_AMT_FC || 0) : parseFloat(x.DL_AMT_FC || 0); Premium += (parseFloat(Amount || 0) + parseFloat(SameLevelAccumulator || 0)); SameLevelAccumulator = 0; } else { let Accumulator = x.DL_TYPE === "D" ? -parseFloat(x.DL_AMT_FC || 0) : parseFloat(x.DL_AMT_FC || 0); SameLevelAccumulator += parseFloat(Accumulator || 0); }; }); discLoadFilter = [...discLoadFilter, ...discLoadFilterDeleted]; return discLoadFilter; }; $("#RCOV_USER_PREM_YN").change(function () { if ($(this).val() === "Y") { $("#RCOV_ANNL_PREM_FC").prop("disabled", false); } else { $("#RCOV_ANNL_PREM_FC").attr("disabled", "disabled"); } }); $("#RCOV_RATE_CHANGE").change(function () { if ($(this).val() === "N") { $("#RCOV_RATE").attr("disabled", "disabled"); } else { $("#RCOV_RATE").prop("disabled", false); } }); $("#RCOV_ANNL_PREM_FC").blur(function () { const annualPrem = parseFloat($(this).val()); const currRate = parseFloat($("#POLH_CURRENCY_RATE").val()); // check for Premium pasis //const premBasis = $("#POLH_PREM_BASIS").val(); //var polNumDays = parseInt($("#POLH_POL_DAYS").val()); //var proRataPerc = 0; //switch (premBasis) { //case "SP": // var shortPeriod = u.getGlobal("shortPeriods").Where(s => s.days === polNumDays); // proRataPerc = parseFloat(shortPeriod[0].perc) / 100; // break; //case "PR": // //polNumDays = polNumDays === 364 || polNumDays < 365 ? 365 : polNumDays; // proRataPerc = parseFloat(polNumDays / 365); // break; //case "FP": // proRataPerc = 1; // break; //} $("#RCOV_ANNL_PREM_BC").val((annualPrem * currRate).toFixed(2)); $("#RCOV_GROSS_PREM_FC").val(parseFloat(annualPrem).toFixed(2)); $("#RCOV_GROSS_PREM_BC").val(parseFloat(annualPrem ).toFixed(2) * currRate); $("#RCOV_NET_PREM_FC").val(parseFloat(annualPrem).toFixed(2)); $("#RCOV_NET_PREM_BC").val(parseFloat(annualPrem).toFixed(2) * currRate); }); //$("#POLH_POL_SI_FC").change(function () { // if ($("#POLH_STATUS").val() !== "A") return; // u.setGlobal("policyChanges", true); //}); //$("#POLH_POL_PREM_FC").change(function () { // if ($("#POLH_STATUS").val() !== "A") return; // u.setGlobal("policyChanges", true); //}); $scope.determinePolicyRisk = function (claimHead) { $("#riskForm .m-hide .form-control").removeAttr("required"); u.form_reset("#riskForm"); $("#riskForm .m-hide").hide(); //motor risk check if (claimHead.CLM_EST_MOTOR_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_MOTOR_RISK_DTLS, "#riskForm", false); //show motor risk view $("#motor").show(); $("#motor .form-control").not(".not-required").prop("required", "required"); return true; } //fire risk check if (claimHead.CLM_EST_FIRE_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_FIRE_RISK_DTLS, "#riskForm", false); //show motor risk view $("#fire").show(); $("#fire .form-control").not(".not-required").prop("required", "required"); return true; } //aviation risk check if (claimHead.CLM_EST_AVIATION_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_AVIATION_RISK_DTLS, "#riskForm", false); //show motor risk view $("#aviation").show(); $("#aviation .form-control").not(".not-required").prop("required", "required"); return true; } //engineering risk check if (claimHead.CLM_EST_ENG_OTHER_RISK_DTLS) { //populate risk form u.fill_form(claimHead.CLM_EST_ENG_OTHER_RISK_DTLS, "#riskForm", false); //show motor risk view $("#engineering").show(); $("#engineering .form-control").not(".not-required").prop("required", "required"); return true; } //general accident asset all risk check if (claimHead.CLM_EST_GA_ASSETS_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_GA_ASSETS_RISK_DTLS, "#riskForm", false); //show motor risk view $("#assetAllRisk").show(); $("#assetAllRisk .form-control").not(".not-required").prop("required", "required"); return true; } //general accident professional indemnity if (claimHead.CLM_EST_GA_PROF_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_GA_PROF_RISK_DTLS, "#riskForm", false); //show motor risk view $("#indemnity").show(); $("#indemnity .form-control").not(".not-required").prop("required", "required"); return true; } //general accident transit if (claimHead.CLM_EST_GA_TRANSIT_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_GA_TRANSIT_RISK_DTLS, "#riskForm", false); //show motor risk view $("#goodsInTransit").show(); $("#goodsInTransit .form-control").not(".not-required").prop("required", "required"); return true; } //home owners check if (claimHead.CLM_EST_HOMEOWNERS_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_HOMEOWNERS_RISK_DTLS, "#riskForm", false); //show motor risk view $("#homeOwners").show(); $("#homeOwners .form-control").not(".not-required").prop("required", "required"); return true; } //workmen compensation risk check if (claimHead.CLM_EST_LIAB_WKCOM_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_LIAB_WKCOM_RISK_DTLS, "#riskForm", false); //show motor risk view $("#workmenCompensation").show(); $("#workmenCompensation .form-control").not(".not-required").prop("required", "required"); return true; } //liability risk check if (claimHead.CLM_EST_LIABILITY_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_LIABILITY_RISK_DTLS, "#riskForm", false); //show motor risk view $("#liability").show(); $("#liability .form-control").not(".not-required").prop("required", "required"); return true; } //marine cargo risk check if (claimHead.CLM_EST_MARINE_CARGO_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_MARINE_CARGO_RISK_DTLS, "#riskForm", false); //show motor risk view $("#marineCargo").show(); $("#marineCargo .form-control").not(".not-required").prop("required", "required"); return true; } //hull risk check if (claimHead.CLM_EST_MARINE_HULL_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_MARINE_HULL_RISK_DTLS, "#riskForm", false); //show motor risk view $("#marineHull").show(); $("#marineHull .form-control").not(".not-required").prop("required", "required"); return true; } //oil gas risk check if (claimHead.CLM_EST_OIL_GAS_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_OIL_GAS_RISK_DTLS, "#riskForm", false); //show motor risk view $("#oilGas").show(); $("#oilGas .form-control").not(".not-required").prop("required", "required"); return true; } //personal accident risk check if (claimHead.CLM_EST_PA_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_PA_RISK_DTLS, "#riskForm", false); //show motor risk view $("#personalAccident").show(); $("#personalAccident .form-control").not(".not-required").prop("required", "required"); return true; } //bonds risk check if (claimHead.CLM_EST_BONDS_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_BONDS_RISK_DTLS, "#riskForm", false); //show motor risk view $("#bond").show(); $("#bond .form-control").not(".not-required").prop("required", "required"); return true; } //travel risk check if (claimHead.CLM_EST_TRAVEL_RISK_DTLS) { //populate motor risk form u.fill_form(claimHead.CLM_EST_TRAVEL_RISK_DTLS, "#riskForm", false); //show motor risk view $("#travel").show(); $("#travel .form-control").not(".not-required").prop("required", "required"); return true; } return false; }; $scope.getSelectedClaim = async function (id) { //$scope.resetSalvageForm(); //$scope.selectedClaim = []; const response = await s.getClaimHeadAsync(id); if (response.state) { // store claim information $scope.selectedClaim = response.data; const claimData = response.data; // render documentations //if (claimData.INS_UWD_POLICY_HEAD.UDW_POL_DOCUMENTATION) { // u.getGlobal("RenderPolicyChecklist")(claimData.INS_UWD_POLICY_HEAD.UDW_POL_DOCUMENTATION); //} // fill salvage form automatically.. //u.fill_form(claimData, "#salvageForm") const salvageFormInfo = { CSH_CLM_NO: claimData.CLM_NO, CSH_POLH_NO: claimData.INS_UWD_POLICY_HEAD.POLH_DISPLAY_NO, CSH_CLM_SYS_ID: claimData.CLM_SYS_ID }; //u.fill_form(salvageFormInfo, "#salvageForm") $scope.determinePolicyRisk(claimData); // populate settlement information from claim head.. //if (claimData.CLM_CLAIMANTS) { // for (let i in claimData.CLM_CLAIMANTS) { // let settlements = claimData.CLM_CLAIMANTS[i].INS_CLM_SETTLEMENTS // if (settlements) { // for (let j in settlements) { // $scope.claimSettlementGrid.addRowData(undefined, settlements[j]); // } // } // } //} $("#claimDetailsModal").modal(); } else { u.growl_error(response.message); } }; $("#btnClaimDetails").click(async function() { var grid = u.getGlobal("udwClaimsGrid"); var sel_id = u.getSelRow(grid); if (!sel_id) return u.growl_info("Select a claim from the list"); var claim = u.getRow(sel_id, grid); $scope.getSelectedClaim(claim.CLM_SYS_ID); }); $("#closeClaimDetails").click(function () { $("#claimDetailsModal").modal("hide"); }); }); })(window.$, window.service, window.utility, {}); (function ($, s, u, $scope) { u.setGlobal("policyHeaderInit", function() { /*-------------------------------------------------- * GLOBAL Risk Discount/Loading *------------------------------------------------*/ $("#RSK_DL_RATE").blur(function() { $("#RSK_DL_AMT_FC") .val(parseFloat( parseFloat($("#RSK_DL_PREM_FC").val() || 0) * (parseFloat($(this).val() || 0) / 100)) .toFixed(2)); $("#RSK_DL_AMT_BC") .val(parseFloat( parseFloat($("#RSK_DL_AMT_FC").val() || 0) * (parseFloat($("#POLH_CURRENCY_RATE").val() || 0))) .toFixed(2)); }); // Coinsurance Member or FAC Inward Business Grid $scope.grdfacInward_grid = u.getGlobal("udwFacInwGrid"); // Coinsurance Member or FAC Inward Participants Grid $scope.grdInwdParticipant_grid = u.getGlobal("udwInwdPartGrid"); // Coinsurance Leader Business Grid $scope.grdCoinsLeader_grid = u.getGlobal("udwCoInsLdrGrid"); //- Premium Receipting Modal $("#btnPremReceipt").click(function() { //check if the policy is save if ($("#POLH_TXN_STATE").val() == "P") { //Open Premium Receipting Form //$("#paymentModal").modal(); window.location = s.app + `Home/PremiumReceipting?query=${$("#POLH_CUST_CODE").val()}`; } else { u.modalWarning("Policy is not Approved, Cannot view receipt form"); } }); /* * Checking URL for policy id and searching for policy */ $scope.query = $.url().param().id; if ($scope.query != null) { s.getPolicyById($scope.query, function(response) { if (response.state) { if (!jQuery.isEmptyObject(response.data)) { u.getGlobalStatic("productSearchFill")(response.data); /*$("#btn_Save").prop("disabled", "true"); $("#btnDelete").prop("disabled", "true"); $("#btnProcessPolicy").prop("disabled", "true");*/ u.growl_success("Policy details fetched successfully."); $("#PolicyModal").modal({ keyboard: false, backdrop: "static" }); window.history.pushState('object', document.title, location.href.split("?")[0]); } } else { u.growl_error(response.message); } }); } u.set_datepicker(".date"); u.set_datetimepicker(".datetime"); //check if there is a migration in local storage if (u.loc_get_json("migratedPolicy")) { var policy = u.loc_get_json("migratedPolicy"); setTimeout(() => { u.getGlobalStatic("productSearchFill")(policy); //set user channel $("#POLH_CHANNEL_CODE").val(u.getUserChannelCode()); u.growl_success("Policy successfully migrated."); $("#PolicyModal").modal(); var migrationType = parseInt($("#POLH_MIGRATION_TYPE").val()); var migrated = $("#POLH_MIGRATED").val(); var dsiplay = !u.field_empty($("#POLH_DISPLAY_NO")); var status = $("#POLH_STATUS").val(); if (migrationType == 3 && migrated == "true" && dsiplay && status == "A") { u.setGlobal("claimsMigrationApprove", true); u.modalInfo( "Please ensure all changes are made before saving. No changes will be allowed after saving"); } else { u.setGlobal("claimsMigrationApprove", false); } $("#POLH_DISPLAY_NO").val(policy.POLH_DISPLAY_NO); $("#POLH_STATUS").val(policy.POLH_STATUS); $("#POLH_MIGRATED").val(policy.POLH_MIGRATED); $("#POLH_QUT_SER_NO").val(policy.POLH_SYS_ID); $("#POLH_REF_CUST_POL_NUM").val(policy.POLH_REF_CUST_POL_NUM); $("#POLH_CHANNEL_CODE").val(u.getUserChannelCode()); }, 500); $("#POLH_CHANNEL_CODE").val(u.getUserChannelCode()); } //obtain the co getUnderwritingProcessCommands $("#btnViewWfState").click(function() { //check if the policy is save if ($("#POLH_STATUS").val() != "U") { //check if policy has a GUID if (!u.field_empty("#POLH_UID")) { u.viewProcess($("#POLH_UID").val()); } else { u.modalInfo("Policy is not attached to a workflow process instance."); } } else { u.modalWarning("Cannot view policy state, policy is not saved"); } }); $scope.fetching = false; u.lovInputToUpperCase(".btn_lov"); $scope.resetPolicyModal = function() { $("#txtPolNumber").val("POLICY NUMBER"); $("#txtRefNumber").val("REF"); u.setGlobal("treatyData", null); u.getGlobal("clearPolicy")(); $("#riBadge").html(""); $("#riskdetailBadge").html(""); /** * set claims count badge, endorsements count badge and payment count badge to 0 when resetting form * **/ $("#claimsCountBadge").html("0"); $("#paymentCountBadge").html("0"); $("#endorsementsCountBadge").html("0") $("#tabs").tabs({ active: 0 }); $("#netCustomerFc").html(""); $("#POLH_OWNSHIP").val(""); // enable policy date fields after endorsement..... $("#POLH_POL_START_DATE").prop("disabled", false); $("#POLH_POL_END_DATE").prop("disabled", false); u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); $scope.resetDocumentationView("#PolDocumentationView"); u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION = null; u.formReadWrite(); // reset disabled fields to original state.. u.getGlobal("DisableFields")(false); }; $("#btn_Cancel").on("click", function() { u.modal_confirmation( "Are you sure you want to close this form, All unsaved changes will be lost...", function() { $("#PolicyModal").modal("hide"); /*-------------------------------------- * Set txtPolNumber txtRefNumber to the policy number *-------------------------------------*/ $scope.resetPolicyModal(); }); }); // when policy modal is exited outside close button.. $("#PolicyModal").on("hidden.bs.modal", function() { $scope.resetPolicyModal(); $("#POLH_OWNSHIP").val(""); }); $("#btn_agent_comm").click(function() { const polbis = $("#POLH_BIZ_SOURCE").val(); const polInt = $("#POLH_INTERMIDIARY").val(); if (polbis === "") { u.growl_warning("Source of business is not selected!"); } else if (polbis === "DIR") { u.growl_info("The business is direct, no agency commissions applicable."); } else if (polbis === "BKM" || polbis === "AGM") { //$scope.intermediaryCommision(); if (polInt !== "") { $("#agentcommModal").modal(); } else { u.growl_warning("No intermediary is selected!"); } } }); /*------------------------------------------------------- * checks if the business source input changes to any other thing aside from DIR * Hides intermediary inputs, clears agent commission grid *--------------------------------------------------------*/ $("#POLH_BIZ_SOURCE").change(function() { const result = $(this).val() === "DIR"; $(".option").find("label").removeClass().addClass(!result ? "required" : ""); $(".option").prop("hidden", result).find("input").prop("required", !result) /*.val(" ")*/; if (result || !$("#INT_OFFICIAL_NAME").val().length) { $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); } u.form_reset("#agencycommForm"); //u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); }); /*--------------------------- * Policy Search *-------------------------*/ $("#btnQueryPolicy").click(async function() { const query = $("#txtSearch").val(); if (!u.field_empty("#txtSearch")) { const result = await s.searchPolicyAsync(query, $("#POLH_CLASS_CODE").val()); $scope.searched = true; u.setGlobal("searchResult", result); if (result.length > 0) { if (result.length > 1) { /*display result of the search to the user in a modal*/ for (let i in result) { if (!result[i]) continue; result[i].ID = i; u.getGlobal("policySearchGrid").addRowData(result[i].ID, result[i]); } $("#mySearchResultModal").modal(); } else { u.getGlobalStatic("productSearchFill")(result[0]); } } else { u.growl_info("Policy No. not found, please make sure you enter the correct Policy No!"); } } else { u.growl_info("Please check Policy No and try again!"); } }); $("#tabsClaims").tabs({ beforeLoad: function(event, ui) { ui.jqXHR.fail(function() { ui.panel.html( "Couldn't load this tab. We'll try to fix this as soon as possible. " + "If this wouldn't be a demo."); }); } }); /* * Prod Risk Modal OK */ $("#btnProdRiskOk").click( /*u.getGlobal("userRightsProductCheck")*/ function() { const grid = u.getGlobal("udwSubClassGrid"); const selId = grid.jqGrid("getGridParam", "selrow"); $("form input[name='DL_CODE']").data("update", true); u.fill_form({ POLH_SUB_CLASS_CODE: grid.jqGrid("getCell", selId, "RISK_CODE"), PDT_NAME: grid.jqGrid("getCell", selId, "RISK_NAME") }, "#polheaderForm"); $("#prodRiskLovModal").modal("hide"); } ); /*---------------------- * LOV initialization *--------------------*/ $scope.lov = u.lov_init("#myLOVModal", "#grdLOV", "#grdLOVPager"); /*----------------------------------------- * LOV button click event handling *---------------------------------------*/ $("body").delegate(".btn_lov", "click", function(e) { $scope.dialog_data = $(this).data("dialog"); if (!$scope.dialog_data) { return false; } switch ($scope.dialog_data.type) { case "btn_pol_file": $scope.lov.pcolName = ["Files", "Desccription"]; $scope.lov.pcolMdls = [ { name: "FILE", index: "FILE", hidden: true }, { name: "TAG", index: "TAG" } ]; $scope.lov.call_dialog("Select File", "getFileLov", $scope.dialog_data, null, function(data) { u.setFieldVal("#MS_SYS_FILES", data["FILE"]); }); break; case "btn_company": $scope.lov.call_dialog("Select Company", "get_lov_company", $scope.dialog_data); break; case "btn_channel": $scope.lov.call_dialog("Select Channel", "get_lov_channel", $scope.dialog_data); break; case "btn_office": $scope.lov.call_dialog("Select Office", "get_lov_office", $scope.dialog_data); break; case "btn_product_type": $scope.lov.call_dialog("Select Product Type", "get_lov_product_type", $scope.dialog_data); break; case "btn_Intermediary_Type": $scope.lov.call_dialog("Select Intermediary Type", "get_lov_Intermediary_Type", $scope.dialog_data); break; case "btn_business_source": // $scope.lov.call_dialog("Select Business Source", "get_lov_business_source", $scope.dialog_data); if (!u.field_empty("#POLH_SBU_CODE")) { $scope.lov.call_dialog("Select Business Source", "getSbuBusinessSourceLov", $scope.dialog_data, $("#POLH_SBU_CODE").val(), function() { //console.log(u.get_grid_data(u.getGlobal("udwAgntCommGrid"))); if (!u.field_empty("#POLH_INTERMIDIARY") && u.get_grid_data(u.getGlobal("udwAgntCommGrid")).Any() && ($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM")) { u.modalAlert("Please review commission details before saving"); } }); } else { u.growl_info("Please select an SBU."); } break; case "btn_sales_personnel": { $scope.lov.call_dialog("Select Sales Personnel Type", "get_sales_personnel_lov", $scope.dialog_data); } break; case "btn_intermediary": { // if (u.field_empty("#POLH_SUB_CLASS_CODE") || u.field_empty("#POLH_BIZ_SOURCE")) return u.growl_warning("Please select a product and business source"); if (u.field_empty("#POLH_OFF_CODE")) return u.growl_warning("Please select a branch."); if (($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM") && !u.field_empty("#POLH_INTERMIDIARY")) { u.modal_confirmation( "Your current action might change commissions already set on this policy, do you want to continue? SAVE policy after selecting YES!!!!", function() { //$scope.lov.call_dialog("Select Intermediary", "get_lov_sub_intermediary_Type", $scope.dialog_data, $("#POLH_BIZ_SOURCE").val(), $scope.intermediaryCommision); $scope.lov.call_dialog("Select Intermediary", "getIntermediaryByBranchLov", $scope.dialog_data, { branch: $("#POLH_OFF_CODE").val(), biz: $("#POLH_BIZ_SOURCE").val() }, $scope.intermediaryCommision); }); } else { //$scope.lov.call_dialog("Select Intermediary", "get_lov_sub_intermediary_Type", $scope.dialog_data, $("#POLH_BIZ_SOURCE").val(), $scope.intermediaryCommision); $scope.lov.call_dialog("Select Intermediary", "getIntermediaryByBranchLov", $scope.dialog_data, { branch: $("#POLH_OFF_CODE").val(), biz: $("#POLH_BIZ_SOURCE").val() }, $scope.intermediaryCommision); } } break; //case "btn_intermediary_main": // if (u.field_empty("#POLH_SUB_CLASS_CODE") || u.field_empty("#POLH_BIZ_SOURCE")) return u.growl_warning("Please select a product and business source"); // $scope.lov.call_dialog("Select Intermediary", "get_lov_sub_intermediary_Type", $scope.dialog_data, $("#POLH_BIZ_SOURCE").val()); // break; case "btn_intermediary_main": if (u.field_empty("#POLH_SUB_CLASS_CODE") || u.field_empty("#POLH_BIZ_SOURCE")) return u.growl_warning("Please select a product and business source"); $scope.lov.pcolName = ["Commission"]; $scope.lov.pcolMdls = [{ name: "COMMISSION", index: "COMMISSION" }]; $scope.lov.call_dialog("Select Intermediary", "get_lov_sub_intermediary_With_Commission", $scope.dialog_data, $("#POLH_BIZ_SOURCE").val(), function(data) { $("#CMM_COM_PERC").val(data.COMMISSION || ""); //console.log(data); }); break; case "btn_facinw_cedent": $scope.lov.call_dialog("Select Cedent Company", "get_lov_cedent", $scope.dialog_data); break; case "btn_pap_com": $scope.lov.call_dialog("Select Participating Company", "get_lov_com", $scope.dialog_data); break; case "btn_member_code": $scope.lov.call_dialog("Select RI Company", "get_lov_member_com", $scope.dialog_data); break; case "btn_customer": $scope.lov.call_dialog("Select Customer", "get_lov_customer", $scope.dialog_data); break; case "btn_base_currency": $scope.lov.call_dialog("Select Currency", "get_lov_currency", $scope.dialog_data, null, function() { let ClassCode = $("#POLH_CLASS_CODE").val(); switch (ClassCode) { case "6000": case "1200": case "5000": if ($("#isPvtPolicy").val() === "true") return; u.getGlobalStatic("CurrencyChanges")(); break; } }); break; case "btn_insurance_source": $scope.lov.call_dialog("Select Insurance Source", "get_lov_ins_source", $scope.dialog_data, null, /*$scope.insSrcChange*/ async function() { let ClassCode = $("#POLH_CLASS_CODE").val(); switch (ClassCode) { case "1000": case "3000": case "6000": case "1200": case "5000": if ($("#POLH_SUB_CLASS_CODE").val() !== "3004") { if ($("#isPvtPolicy").val() === "true") return; await u.getGlobalStatic("InsuranceSourceChange")(); } break; } }); break; case "btn_customer_type": $scope.lov.pcolName = ["Prefix"]; $scope.lov.pcolMdls = [{ name: "CTP_PREFIX", index: "CTP_PREFIX" }]; $scope.lov.call_dialog("Select Customer type", "get_lov_customertypes", $scope.dialog_data, null, $scope.custType); break; //added by toni 01-03-2017 case "btn_EndorsementType": $scope.lov.pcolName = ["Endorsement Description", "Flag", "Fee"]; $scope.lov.pcolMdls = [ { name: "TEXT", index: "TEXT" }, { name: "FLAG", index: "FLAG" }, { name: "FEE", index: "FEE" } ]; $scope.lov.call_dialog("Select Endorsement Type", "get_endorsementLov", $scope.dialog_data, $("#POLH_CLASS_CODE").val(), function(data) { if (data.CODE) { /*---------------------------------- * GET CURRENCY RATE FOR THE POLICY *--------------------------------*/ let currency = $("#POLH_CURRENCY").val(); let currencyRate = $("#POLH_CURRENCY_RATE").val(); u.setFieldVal("#END_TEXT_DESC", data.TEXT); u.setFieldVal("#END_FLAG", data.FLAG); u.setFieldVal("#END_FEE", data.FEE); u.setFieldVal("#END_FEE_FC", parseFloat(parseFloat(data.FEE || 0) / parseFloat(currencyRate || 0)) .toFixed(2)); $("#END_CURRENCY").text(`(${currency})`); $("#END_CRTE_DATE").val(u.get_datetime()); $("#END_POL_FEE_CANC_YN").prop("disabled", !("ICFCPC").includes(data.FLAG)); $("#END_POL_ADDON_BENEFIT_CANC_YN") .prop("disabled", !("ICFCPC").includes(data.FLAG)); $("#END_AUTO_ADJUST_YN").prop("disabled", !("ICFCPCCR").includes(data.FLAG)); /**----------------- * ENDORSEMENT FLAG *-----------------*/ switch (data.FLAG) { case "RI": { let policyEndDate = $("#POLH_POL_END_DATE").val(); let endEfctvDate = u.get_datetime(); let endTermDate = $("#END_TERM_DATE").val(); /*------------------ * ENDORSEMENT GRID *-----------------*/ let endorsementGrid = u.getGlobal("udwEndsmntGrid"); let endorsementGridData = u.get_grid_data(endorsementGrid) || []; /*--------------------------- * LAST SUSPENDED ENDORSEMENT *--------------------------*/ let lastSuspendedEndorsment = u.getGlobal("LastSuspendedEndorsement")(endorsementGridData); let polSusFromDate = lastSuspendedEndorsment.END_EFCTV_DATE || $("#POLH_SUS_FROM_DATE").val(); let polSusToDate = lastSuspendedEndorsment.END_TERM_DATE || $("#POLH_SUS_TO_DATE").val(); /*----------- * NOT IN USE *----------*/ //let polSusDays = parseFloat(u.totalDays(polSusToDate, polSusFromDate) || 0); //let polSusDays = parseFloat(u.totalDays(endEfctvDate, polSusFromDate) || 0); //let endTermDate = u.dateFastForward(endEfctvDate, polSusDays, "d"); if (u.dateBefore(endEfctvDate, polSusToDate)) { let polSusDays = parseFloat(u.totalDays(endEfctvDate, polSusFromDate) || 0); //END_TERM_DATE = u.dateFastForward(policyEndDate, polSusDays, "d"); endTermDate = u.dateFastForward(polSusToDate, polSusDays, "d"); } else { /*--------------- * POLICY EXPIRED *--------------*/ let polSusDays = parseFloat(u.totalDays(polSusToDate, polSusFromDate) || 0); endTermDate = u.dateFastForward(endEfctvDate, polSusDays, "d"); } $("#END_EFCTV_DATE").prop("disabled", false).val(endEfctvDate); $("#END_TERM_DATE").prop("disabled", true).val(endTermDate); } break; case "TS": $("#END_EFCTV_DATE").prop("disabled", false) .val($("#POLH_POL_START_DATE").val()); $("#END_TERM_DATE").prop("disabled", true).val($("#POLH_POL_END_DATE").val()); break; case "PC": $("#END_EFCTV_DATE").prop("disabled", false).val(u.get_datetime()); $("#END_TERM_DATE").prop("disabled", true).val($("#POLH_POL_END_DATE").val()); break; //case "DI": //CHANGE OF INTERMIDIARY // $("#END_EFCTV_DATE").prop("disabled", false).val(u.get_datetime()); // $("#END_TERM_DATE").prop("disabled", true).val($("#POLH_POL_END_DATE").val()); // break; //case "IM": //INTERMEDIARY MISTAKE // $("#END_EFCTV_DATE").prop("disabled", false).val(u.get_datetime()); // $("#END_TERM_DATE").prop("disabled", true).val($("#POLH_POL_END_DATE").val()); // break; default: $("#END_EFCTV_DATE").prop("disabled", false).val(u.get_datetime()); $("#END_TERM_DATE").prop("disabled", true).val($("#POLH_POL_END_DATE").val()); break; }; /**--------------------------------- * CALCULATE ENDORSEMENT TOTAL DAYS *---------------------------------*/ $("#END_TOTAL_DAYS").prop("disabled", true).val($scope.totalDaysEndorsement()); $("#POLH_POL_START_DATE").prop("disabled", ("EP").includes(data.FLAG)); s.get_endorsement(data.CODE, function(endorsement) { u.setGlobal("selectedEndorsement", endorsement); $("#END_FEE_CANC_YN").removeAttr("disabled"); }); } }); break; case "btn_ricustomer": $scope.lov.call_dialog("Select Customer", "get_lov_ricustomer", $scope.dialog_data); break; case "btn_file_category": $scope.lov.call_dialog("Select File Category", "getFileCategoryLov", $scope.dialog_data); break; // for strategic business unit case "btn_sbu": if (!u.field_empty("#POLH_OFF_CODE")) { $scope.lov.call_dialog("Select Strategic Business Unit", "getOfficeSbuLov", $scope.dialog_data, $("#POLH_OFF_CODE").val()); $("#POLH_BIZ_SOURCE").val(""); $("input[name='SRB_NAME']").val(""); } else { u.growl_info("Please select an Office/Branch."); } break; case "btn_bank_type": $scope.lov.call_dialog("Select Bank", "get_lov_bank", $scope.dialog_data); break; case "btn_branch_type": $scope.lov.call_dialog("Select Branch", "get_lov_office", $scope.dialog_data); break; case "btn_bnk_branch_type": if (u.field_empty("#CUS_BANK_CODE")) return u.growl_warning("Please select bank"); $scope.lov.call_dialog("Select Bank Branch", "get_lov_bnk_branch", $scope.dialog_data, $("#CUS_BANK_CODE").val()); break; case "btn_memo": { let product = $("#POLH_SUB_CLASS_CODE").val(); if (product === "") return u.growl_warning("please select Sub Product"); $scope.lov.pcolName = ["Template"]; $scope.lov.pcolMdls = [{ name: "TEMPLATE", index: "TEMPLATE" }]; $scope.lov.call_dialog("Select Memo", "fetchMemoByProduct", $scope.dialog_data, product, function(selected) { // store the data $scope.document = selected; let template = $scope.document.TEMPLATE; if ($("#POLH_DISPLAY_NO").val() !== "") { template = u.getGlobal("setTemplateParameters")(template); } u.form_reset("#memoForm"); tinymce.get("editor").setContent(template); $scope.newMemo = true; $("#memoModal").modal(); }); } break; case "btn_non_renewable_reason": $scope.lov.call_dialog("Select Reason", "getPolicyNonRenewableReasonLov", $scope.dialog_data); break; case "btn_fire_product_type": { $scope.lov.call_dialog("Select Product Type", "getFireUsageTypeLov", $scope.dialog_data); } break; } }); //OwnerShip defaulting th user.. // sbu blur validation $("#polheaderForm #POLH_SBU_CODE").blur(function() { if (!u.field_empty("#POLH_SBU_CODE")) { if (!u.field_empty("#POLH_OFF_CODE")) { //$scope.lov.call_dialog("Select Strategic Business Unit", "getOfficeSbuLov", $scope.dialog_data, $("#POLH_OFF_CODE").val()); let office = $("#POLH_OFF_CODE").val(); s.getOfficeSbuLov(office, function(result) { var datafound = false; for (let i in result) { if (result[i].CODE === $("#POLH_SBU_CODE").val()) { $('#polheaderForm input[name="SBU_NAME"]').val(result[i].NAME); datafound = true; $("#POLH_BIZ_SOURCE").val(""); $("input[name='SRB_NAME']").val(""); } } if (!datafound) { u.growl_warning($("#POLH_OFF_CODE").val() + " does not include SBU " + $("#polheaderForm #POLH_SBU_CODE").val()); $("#polheaderForm #POLH_SBU_CODE").val(""); $('input[name="SBU_NAME"]').val(""); $("#POLH_BIZ_SOURCE").val(""); $("input[name='SRB_NAME']").val(""); } }); } else { u.growl_info("Please select an Office/Branch."); } } }); $scope.fxnPolPeriodDays = function() { let startDate = $("#POLH_POL_START_DATE").val() || u.get_datetime(); const startDateTime = u.addTime(startDate); if (u.getGlobal("endorsementData") || $("#POLH_TXN_STATE").val() === "E") { if (u.getGlobal("oldPolicy")) { var oldPolicy = u.getGlobal("oldPolicy"); //console.log(oldPolicy); if (u.dateBefore(startDate, oldPolicy.POLH_POL_START_DATE)) { if (u.dateBefore(u.get_date(oldPolicy.POLH_POL_START_DATE), u.get_date(u.get_datetime())) || u.datesEqual(u.get_date(oldPolicy.POLH_POL_START_DATE), u.get_date(u.get_datetime()))) { $("#POLH_POL_START_DATE").val(oldPolicy.POLH_POL_START_DATE); $("#POLH_POL_DAYS").val(oldPolicy.POLH_POL_DAYS); return u.growl_warning( "Policy start date cannot be backdated for endorsement"); } } } } $("#POLH_POL_START_DATE").val(startDateTime); let endDate = $("#POLH_POL_END_DATE").val() || u.dateFastForward(u.subtract(startDate, 1, "d"), 1, "years"); let endDateTime = u.addTime(endDate); $("#POLH_POL_END_DATE").val(endDateTime); if (!$("#POLH_POL_END_DATE").val()) { $("#POLH_POL_END_DATE").val(endDateTime); } const polUwy = u.getYear(startDateTime); $("#POLH_POL_UW_YEAR").val(polUwy); $("#VEH_UW_YEAR").val(polUwy); const polPeriodDays = u.totalDays(endDate, startDate) + 1; // //console.log(polPeriodDays); $("#POLH_POL_DAYS").val(polPeriodDays); if (polPeriodDays > 0 && polPeriodDays <= 366) { if (polPeriodDays >= 363 || polPeriodDays === 366) { //$("#POLH_POL_DAYS").val(365); $("#VEH_PERIOD_DAYS").val(365); if ($("#POLH_STATUS").val() === "" || $("#POLH_STATUS").val() === "U") { if ($("#POLH_CLASS_CODE").val() === "7000") { $("#POLH_PREM_BASIS").val("FP"); } } } else { $("#POLH_POL_DAYS").val(polPeriodDays); $("#VEH_PERIOD_DAYS").val(polPeriodDays); if (polPeriodDays < 270) { if ($("#POLH_STATUS").val() === "" || $("#POLH_STATUS").val() === "U") { if ($("#POLH_CLASS_CODE").val() === "7000") { $("#POLH_PREM_BASIS").val("FP"); } else { //u.growl_info("Short Period defaulted as Premium Basis"); //$("#POLH_PREM_BASIS").val("SP"); } } } else { if ($("#POLH_STATUS").val() === "" || $("#POLH_STATUS").val() === "U") { if ($("#POLH_CLASS_CODE").val() === "7000" || $("#POLH_CLASS_CODE").val() === "2000") { $("#POLH_PREM_BASIS").val("FP"); } } } } } else if ((polPeriodDays <= 0 || polPeriodDays > 366)) { if (!jQuery.isEmptyObject(u.getGlobal("productData"))) { if (parseInt(u.getGlobal("productData").PDT_TERM) <= 1) { if ($("#POLH_STATUS").val() === "" || $("#POLH_STATUS").val() === "U") { if ($("#POLH_SUB_CLASS_CODE").val() !== "7001") { //Bid Bond //reset end date and no. of days $("#POLH_POL_END_DATE").val(""); $("#POLH_POL_DAYS").val(""); $("#VEH_END_DATE").val(""); $("#VEH_PERIOD_DAYS").val(""); return u.growl_warning( "Policy End date cannot be less than start date, equal to start date or more than 365 days"); } } } else { $("#POLH_POL_DAYS").val(polPeriodDays); if ($("#POLH_STATUS").val() === "" || $("#POLH_STATUS").val() === "U") { if ($("#POLH_CLASS_CODE").val() === "7000" || $("#POLH_CLASS_CODE").val() === "2000") { $("#POLH_PREM_BASIS").val("FP"); } } } } if (u.getGlobal("endorsementData") || $("#POLH_TXN_STATE").val() === "E") { if ($("#POLH_CLASS_CODE").val() !== "2000") { if (!jQuery.isEmptyObject(u.getGlobal("productData"))) { if (parseInt(u.getGlobal("productData").PDT_TERM) <= 1) { //$("#POLH_POL_END_DATE").val(""); //$("#POLH_POL_DAYS").val(""); return u.growl_warning( "Policy period cannot exceed 365 days for endorsement"); } } } } } $("#POLH_POL_DAYS").trigger("blur"); /** * RETRO DATE **/ if (u.dateBefore(startDate, u.get_date())) { $("#POLH_POL_RETRO_DATE").val(""); u.modalInfo("Kindly provide the retroactive date for the policy"); // $("#retroDateLabel").addClass("required"); // $("#POLH_POL_RETRO_DATE").attr("required", "required"); // $("#POLH_POL_RETRO_DATE").prop("readonly", false); } else { $("#POLH_POL_RETRO_DATE").val(startDate); //$("#POLH_POL_RETRO_DATE").prop("required", false); //$("#retroDateLabel").removeClass("required"); //$("#POLH_POL_RETRO_DATE").attr("readonly", "readonly"); } }; u.setGlobal("policyPeriods", $scope.fxnPolPeriodDays); $scope.custType = function(data) { $("#CUS_PREF").val(data.CTP_PREFIX); }; /* * Customer lov btn */ $("#btn_CustomersLov").on("click", function() { $("#customerLovModal").modal(); }); /*------------------------------------- * setting elements to disable via flag *------------------------------------*/ //u.disableViaElement("#RCOV_RATE_CHANGE", "#RCOV_RATE"); //u.disableViaElement("#RCOV_SI_CHANGE", "#RCOV_SI_FC"); u.percentFieldValidation("#RCOV_RATE"); u.percentFieldValidation("#CMM_COM_PERC"); //u.integralFieldValidation("#RCOV_SI_FC, #RCOV_ANNL_PREM_FC, #RCOV_GROSS_PREM_FC"); /*---------------------------- * Get Agent Broker commission *---------------------------*/ $("#btn_Intermediary_comm").on("click", function() { $("#interCommLovModal").modal(); }); /*------------------------------------------ * Tabs Layout function call using Jquery *----------------------------------------*/ // $("#tabs").tabs({ beforeLoad: function(event, ui) { ui.jqXHR.fail(function() { ui.panel.html( "Couldn't load this tab. We'll try to fix this as soon as possible. " + "If this wouldn't be a demo."); }); } }); /*----------------------------- * //Add new customer modal dialog form *---------------------------*/ $("#customerSetupBtn").click(function() { /*obtain the customer code*/ if (!u.field_empty("input[name='POLH_CUST_CODE']")) { s.get_customer($("input[name='POLH_CUST_CODE']").val(), function(response) { if (response !== null) { //u.clear_grid_data(u.getGlobal("udwCustomerGrid")); //u.form_reset("#customerForm"); if (response.MS_SYS_CUST_TYPES && response.MS_SYS_CUST_TYPES.CTP_NAME) { response.CUS_TYPE_NAME = response.MS_SYS_CUST_TYPES.CTP_NAME; } //u.getGlobal("udwCustomerGrid").addRowData(response.CUS_CODE, response); //u.fill_form(response, "#customerForm"); $scope.populate(response); //$("#CUS_CODE").val(response.CUS_CODE); } }); } else { //u.clear_grid_data(u.getGlobal("udwCustomerGrid")); //u.form_reset("#customerForm"); $scope.populate({ "CUS_STATUS": "U", "CUS_CODE": "" }); } /*open the customer setup modal*/ $("#customerSetupModal").modal(); }); $("#CUS_FIRST_NAME, #CUS_OTHER_NAME, #CUS_LAST_NAME").blur(function() { const firstname = $("#CUS_FIRST_NAME").val(); const othername = $("#CUS_OTHER_NAME").val(); const lastname = $("#CUS_LAST_NAME").val(); $("#CUS_OFFICIAL_NAME").val(firstname + " " + othername + " " + lastname); }); /*------------------------------------------------------- * Validation *--------------------------------------------------------*/ u.set_datepicker(".date"); //u.contactFieldValidation("#CUS_MOBILE, #CUS_PHONE1"); //u.emailFieldValidation("#CUS_EMAIL"); //u.lessThanNumber("#CUS_ACC_NUM", 0); // //$("#btn_Save_Customer").on("click", u.getGlobal("udwSaveCustomer")); /*------------------------------------------------------- * reset all the inputs with customer class and hide div with individual * if the individual customer type is selected *--------------------------------------------------------*/ $("#CUS_TYPE_CODE").change(function() { $(".customer").val(""); const result = $(this).val() === "1003"; $(".individual").attr("hidden", !result); }); /*----------------------------- * Helper Functions *-----------------------*/ $scope.populate = function(result) { if (result) { u.form_reset("#customerForm"); /*---------------------------------------------------- * populate product header Form with search results *--------------------------------------------------*/ u.fill_form(result, "#customerForm"); $("#CUS_CODE").val(result.CUS_CODE); $(".type").prop("disabled", result.CUS_STATUS == "A"); } else { u.growl_info("The record you are searching for is invalid please try a different Product"); } }; /*----------------------------- * Save customer *---------------------------*/ $("#btn_Save_Customer").on("click", function() { if (!u.form_validation("#customerForm")) return u.growl_info("Form is incomplete, please fill all fields that are marked red."); u.modalConfirmationAsync("Are you sure you want to save your changes?", async function() { const request = u.parse_form("#customerForm"); if (request.CUS_STATUS === "U") { request.CUS_CRTE_BY = u.getUserCode(); request.CUS_CODE = request.CUS_PREF + u.getGlobal("pad")(await s.getSequenceAsync("CUSTOMERS_SEQ"), 7); request.CUS_CRTE_DATE = u.get_date(); } else if (request.CUS_STATUS === "A") { request.CUS_MOD_BY = u.getUserCode(); } const response = await s.saveAsync([request]); if (response.state) { request.CUS_STATUS = "A"; $scope.populate(request); u.growl_success(response.message); } else { u.growl_error(response.message); } }); }); /*------------------------ * reset customer --------------------------*/ $("#btnResetCustomer").click(function() { u.modal_confirmation("Are you sure you want to clear all data from the form?", function(e) { $scope.populate({ "CUS_STATUS": "U", "CUS_CODE": "" }); //u.clear_grid_data(u.getGlobal("udwCustomerGrid")); u.hide_confirm(); u.growl_success("Form successfully Reset"); }); }); /*------------------- * Select new customer *-------------------*/ $("#btnSelectCustomer").click(u.getGlobal("udwSelectCustomer")); /*-------------------------------------------------- * call add function to add records to customer_grid *------------------------------------------------*/ // $("#btn_add_customer").on("click", u.getGlobal("udwAddCustomer")); /*---------------------------------------------------- * Remove record or Mark for deletion from City Grid *---------------------------------------------------*/ // $("#btn_remove_customer").on("click", u.getGlobal("udwRemoveCustomer")); /*-------------------------------- * Edit/Update Function *------------------------------*/ // $("#btn_update_customer").on("click", u.getGlobal("udwUpdateCustomer")); $("#btn_Cust_Reset").on("click", u.getGlobal("udwResetCustomer")); /*----------------------------------- * Agent/Broker Commission *----------------------------------*/ /*----------------------------- * Adding Agency/Broker Details *-----------------------------*/ $scope.intermediaryCommision = function(selected) { /*---------------------- * RAW POLICY HEAD DATA *--------------------*/ let policy = u.parse_form("#polheaderForm") || {}; if (policy.POLH_TXN_STATE !== "P") { const agents = u.get_grid_data(u.getGlobal("udwAgntCommGrid")) || []; const agentsList = agents.Where(x => x.CMM_STATUS != "U").ToList(); if (agentsList.Any()) { if (policy.POLH_TXN_STATE !== "E") { s.delIntermediaryAsync(agentsList).then(response => { if (response.state) { let request = { "code": selected.CODE, "subclass": $("#POLH_SUB_CLASS_CODE").val() }; s.getIntermediaryAsync(request).then(r => { u.form_reset("#agencycommForm"); u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); if (r.state && r.data.length) { let result = u.getGlobal("GetCommission")(r.data) || []; if (policy.POLH_CHANNEL_CODE == "01") { //Underwriting result = result.Where(b => !(b.CMM_INT_NAME.includes("FEE"))).ToList() || []; }; //u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); result.ForEach(x => { u.getGlobal("udwAgntCommGrid").addRowData(x.CMM_SYS_ID, x); }); } }); } }); } else if (policy.POLH_TXN_STATE === "E") { s.delIntermediaryAtEndorsementAsync(agentsList).then(response => { if (response.state) { let request = { "code": selected.CODE, "subclass": $("#POLH_SUB_CLASS_CODE").val() }; s.getIntermediaryAsync(request).then(r => { u.form_reset("#agencycommForm"); u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); if (r.state && r.data.length) { let result = u.getGlobal("GetCommission")(r.data) || []; if (policy.POLH_CHANNEL_CODE == "01") { //Underwriting result = result.Where(b => !(b.CMM_INT_NAME.includes("FEE"))).ToList() || []; }; result.ForEach(x => { u.getGlobal("udwAgntCommGrid").addRowData(x.CMM_SYS_ID, x); }); } }); } }); } } else { var request = { "code": selected.CODE, "subclass": $("#POLH_SUB_CLASS_CODE").val() }; s.getIntermediaryAsync(request).then(r => { u.form_reset("#agencycommForm"); u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); if (r.state && r.data.length) { let result = u.getGlobal("GetCommission")(r.data) || []; if (policy.POLH_CHANNEL_CODE == "01") { //Underwriting result = result.Where(b => !(b.CMM_INT_NAME.includes("FEE"))).ToList() || []; }; //u.clear_grid_data(u.getGlobal("udwAgntCommGrid")); result.ForEach(x => { u.getGlobal("udwAgntCommGrid").addRowData(x.CMM_SYS_ID, x); }); } }); } $("#agentcommModal").modal(); } else { u.growl_warning("The policy is already approved."); } }; $("#btn_add_agencycomm").on("click", function() { if (u.form_validation("#agencycommForm")) { //if ($("input[name='CMM_INT_CODE']").val() === "") return u.modalAlert("Please Enter Agency/Broker No"); u.modal_confirmation("Are you sure you want to add the Agency/Broker Details?", function() { var rowIds = u.getGlobal("udwAgntCommGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = u.getGlobal("udwAgntCommGrid") .jqGrid("getCell", currRow, "CMM_INT_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#CMM_INT_CODE").val(), code) < 0) { var formData = u.parse_form("#agencycommForm"); formData.CMM_END_NO = $("#POLH_END_NO").val(); formData.CMM_COB_CODE = $("#POLH_CLASS_CODE").val(); formData.CMM_OFFICE = $("#POLH_OFF_CODE").val(); formData.CMM_POL_SYS_ID = $("#POLH_SYS_ID").val(); formData.CMM_STATUS = "U"; formData.CMM_CRTE_BY = u.getUserCode(); formData.CMM_CRTE_DATE = u.get_date(); formData.CMM_PREM_AMT_FC = parseFloat($("#POLH_POL_PREM_FC").val() - $("#POLH_FEE_FC").val()).toFixed(2); formData.CMM_PREM_AMT_BC = parseFloat($("#POLH_POL_PREM_BC").val() - $("#POLH_FEE_BC").val()).toFixed(2); formData.CMM_COM_AMT_FC = (formData.CMM_PREM_AMT_FC * formData.CMM_COM_PERC * 0.01).toFixed(2); formData.CMM_COM_AMT_BC = (formData.CMM_PREM_AMT_FC * formData.CMM_COM_PERC * 0.01).toFixed(2); u.getGlobal("udwAgntCommGrid").addRowData(formData.CMM_INT_CODE, formData); $("#CMM_INT_CODE").val(""); $("#CMM_INT_NAME").val(""); $("#CMM_COM_PERC").val(""); u.hide_confirm(); //get commission Amounts //calculateIntermediaryComm(); u.form_reset("#agencycommForm"); u.growl_success("Intermediary successfully added to grid"); } else { u.hide_confirm(); u.growl_warning( `Intermediary with code ${$("#CMM_INT_CODE").val()} Already exists`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); $("#btn_remove_agencycomm").on("click", function() { if (u.grid_empty(u.getGlobal("udwAgntCommGrid"))) return u.modalAlert("Grid is empty!!!"); var grid = u.getGlobal("udwAgntCommGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "CMM_STATUS"); const code = grid.jqGrid("getCell", rowId, "CMM_INT_CODE"); const message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function(e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "CMM_STATUS", "D"); $(`#${rowId}`, "#grdIntermediaryComm").css({ color: "red" }); u.hide_confirm(); u.hide_confirm( "Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdIntermediaryComm").css({ color: "black" }); grid.jqGrid("setCell", rowId, "CMM_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } }); }); $("#btn_update_agencycomm").on("click", function() { if (u.grid_empty(u.getGlobal("udwAgntCommGrid"))) return u.growl_info("Commission grid is empty"); if (u.form_validation("#agencycommForm")) { u.modal_confirmation("Are you sure you want to update the selected Cover?", function() { const grid = u.getGlobal("udwAgntCommGrid"); const rowId = grid.jqGrid("getGridParam", "selrow"); const code = grid.jqGrid("getCell", rowId, "CMM_INT_CODE"); if (code == $("input[name='CMM_INT_CODE']").val()) { const data = u.parse_form("#agencycommForm"); let result = rowId ? u.getRow(rowId, grid) : {}; let x = u.objectSpread(result, data); x.CMM_COM_AMT_FC = parseFloat(parseFloat(x.CMM_PREM_AMT_FC || 0) * parseFloat(x.CMM_COM_PERC || 0) * 0.01).toFixed(2) || 0; x.CMM_COM_AMT_BC = parseFloat(parseFloat(x.CMM_PREM_AMT_BC || 0) * parseFloat(x.CMM_COM_PERC || 0) * 0.01).toFixed(2) || 0; for (let i in x) { grid.jqGrid("setCell", rowId, i, x[i]); } u.hide_confirm(); u.growl_success("Agency/Broker updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); $("#agencycommOk").on("click", function() { u.form_reset("#agencycommForm"); let product = u.parse_form("#polheaderForm") || {}; product.INS_UWD_INTERMEDIARY_COMM = u.get_grid_data(u.getGlobal("udwAgntCommGrid")) || []; product.INS_UWD_INTERMEDIARY_COMM.ForEach(c => { c.CMM_PREM_AMT_FC = parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0) - parseFloat(product.POLH_ADDON_BENEFIT_FC || 0); c.CMM_PREM_AMT_BC = parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0) - parseFloat(product.POLH_ADDON_BENEFIT_BC || 0); c.CMM_COM_AMT_FC = parseFloat(c.CMM_PREM_AMT_FC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; c.CMM_COM_AMT_BC = parseFloat(c.CMM_PREM_AMT_BC * (c.CMM_COM_PERC * 0.01)).toFixed(2) || 0; }); product.POLH_POL_COMM_FC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Sum( r => product.POLH_PURE_CALCULATE || r.CMM_STATUS !== "D" ? parseFloat(r.CMM_COM_AMT_FC || 0) : 0) || 0).toFixed(2) || 0; product.POLH_POL_COMM_BC = parseFloat(product.INS_UWD_INTERMEDIARY_COMM.Sum( r => product.POLH_PURE_CALCULATE || r.CMM_STATUS !== "D" ? parseFloat(r.CMM_COM_AMT_BC || 0) : 0) || 0).toFixed(2) || 0; $("#POLH_POL_COMM_FC").val(product.POLH_POL_COMM_FC); $("#POLH_POL_COMM_BC").val(product.POLH_POL_COMM_BC); u.growl_info("Remember to SAVE policy to persist changes!!!"); }); /*--------------------------- * Search Customers *-------------------------*/ $("#btnQueryCustomers").click(function() { const queryTxt = $("#custQuery").val(); if (queryTxt != null && queryTxt.length > 0) { s.search_customer(queryTxt, function(result) { /*----------------------------- * clear grid before populating *---------------------------*/ u.getGlobal("udwCustSearchGrid").jqGrid("clearGridData"); u.bigDataPopulate(u.getGlobal("udwCustSearchGrid"), result); }, function(err) { u.growl_error("Error fetching customer information"); }); } else { u.growl_info("Enter customer code or name"); } }); /*-------------------------------------------------- * Retrieving products on calling getProductRiskLov function *------------------------------------------------*/ //$("#btnQueryProductRisk").on("click", function () { // $scope.searchProductRisk(); //}); $("#btnQueryProductRisk").on("click", async function() { await $scope.searchProductRisk(); }); /*--------------- * Prod Risk Btn *--------------*/ //$("#btn_ProductRisk").on("click", function () { // if ($("#POLH_CLASS_CODE").val() == "") { // u.growl_warning("Product Code is empty, Please check and try again"); // } else { // if (($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM")) { // u.modal_confirmation("Your current action might change commissions already set on this policy, do you want to continue? RESELECT intermediary after selecting YES and SAVE!!!!", // function () { // $("#prodRiskLovModal").modal(); // $scope.searchProductRisk(); // $("#POLH_INTERMIDIARY").val(""); // $("#INT_OFFICIAL_NAME").val(""); // }); // } else { // $("#prodRiskLovModal").modal(); // $scope.searchProductRisk(); // } // } //}); $("#btn_ProductRisk").on("click", async function() { if ($("#POLH_CLASS_CODE").val() == "") { u.growl_warning("Product Code is empty, Please check and try again"); } else { if (($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM")) { u.modal_confirmation( "Your current action might change commissions already set on this policy, do you want to continue? RESELECT intermediary after selecting YES and SAVE!!!!", async function() { $("#prodRiskLovModal").modal(); await $scope.searchProductRisk(); $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }); } else { $("#prodRiskLovModal").modal(); await $scope.searchProductRisk(); } } }); $scope.searchProductRisk = function() { /*obtain parameter for our request*/ const prodRiskData = { PRD_CODE: $("#POLH_CLASS_CODE").val() }; var grid = u.getGlobal("udwSubClassGrid"); //send parameters and get motor Risks from the database s.getProdtRisk(prodRiskData, function(result) { if (result && result.length && result.length > 0) { u.clear_grid_data(grid); if ($("#POLH_CLASS_CODE").val() === "2000") { //if ($("#POLH_SUB_CLASS_CODE").val() === "") { // Other eng products for (let i in result) { if (result[i].RISK_CODE === "2001" || result[i].RISK_CODE === "2002") { delete result[i]; } } } if ($("#POLH_CLASS_CODE").val() === "8000") { for (let j in result) { if (result[j].RISK_CODE === "8007" || result[j].RISK_CODE === "8008" || result[j].RISK_CODE === "8004" || result[j].RISK_CODE === "8005") { delete result[j]; } } } if ($("#POLH_CLASS_CODE").val() === "3000") { result = result.Where(x => x.RISK_CODE !== "3004").ToList(); } if ($("#POLH_CLASS_CODE").val() === "9000") { result = result.Where(x => x.RISK_CODE !== "9002").ToList(); } if ($("#POLH_CLASS_CODE").val() === "4000") { for (let i in result) { if (result[i].RISK_CODE === "4002") { delete result[i]; } } } //fill grid for (let i in result) { grid.addRowData(result[i]["RISK_CODE"], result[i]); } } }); }; $scope.productsList = [ { ProductCode: "6000", ProductName: "Motor", SubProductCode: "6000", SubProductName: "Motor", Endorsement: 0, Renewal: 0, URL: "policysearch/motor", pageName: "motor" }, { ProductCode: "3000", ProductName: "Fire", SubProductCode: "3000", SubProductName: "Fire", Endorsement: 0, Renewal: 0, URL: "policysearch/fire", pageName: "fire" }, { ProductCode: "3000", ProductName: "Fire", SubProductCode: "3004", SubProductName: "Homeowners", Endorsement: 0, Renewal: 0, URL: "policysearch/homeowners", pageName: "homeowners" }, { ProductCode: "2000", ProductName: "Engineering", SubProductCode: "2001", SubProductName: "CAR", Endorsement: 0, Renewal: 0, URL: "policysearch/EngineerCAR", pageName: "EngineerCAR" }, { ProductCode: "2000", ProductName: "Engineering", SubProductCode: "2002", SubProductName: "EAR", Endorsement: 0, Renewal: 0, URL: "policysearch/EngineerEAR", pageName: "EngineerEAR" }, { ProductCode: "2000", ProductName: "Engineering", SubProductCode: "2000", SubProductName: "Others", Endorsement: 0, Renewal: 0, URL: "policysearch/EngineerOthers", pageName: "EngineerOthers" }, { ProductCode: "8000", ProductName: "General Accident", SubProductCode: "8000", SubProductName: "General Accident", Endorsement: 0, Renewal: 0, URL: "policysearch/GeneralAccident", pageName: "GeneralAccident" }, { ProductCode: "4000", ProductName: "Liability", SubProductCode: "4002", SubProductName: "WC", Endorsement: 0, Renewal: 0, URL: "policysearch/LiabilityWorksmenComp", pageName: "LiabilityWorksmenComp" }, { ProductCode: "4000", ProductName: "Liability", SubProductCode: "4001", SubProductName: "Liability", Endorsement: 0, Renewal: 0, URL: "policysearch/liability", pageName: "liability" }, { ProductCode: "7000", ProductName: "Bond", SubProductCode: "7000", SubProductName: "Bond", Endorsement: 0, Renewal: 0, URL: "policysearch/bond", pageName: "bond" }, { ProductCode: "1000", ProductName: "Personal Accident", SubProductCode: "1001", SubProductName: "PA Individual", Endorsement: 0, Renewal: 0, URL: "policysearch/paIndividual", pageName: "paIndividual", subProductCodeList: ["1001"] }, { ProductCode: "1000", ProductName: "Personal Accident", SubProductCode: "1002", SubProductName: "PA GroupNamed", Endorsement: 0, Renewal: 0, URL: "policysearch/paGroupNamed", pageName: "paGroupNamed", subProductCodeList: ["1002"] }, { ProductCode: "1000", ProductName: "Personal Accident", SubProductCode: "1004", SubProductName: "PA GroupUnNamed", Endorsement: 0, Renewal: 0, URL: "policysearch/paGroupUnNamed", pageName: "paGroupUnNamed", subProductCodeList: ["1004"] }, { ProductCode: "5000", ProductName: "Marine", SubProductCode: "5005", SubProductName: "Marine Hull", Endorsement: 0, Renewal: 0, URL: "policysearch/MarineHull", pageName: "MarineHull" }, { ProductCode: "5000", ProductName: "Marine", SubProductCode: "5001", SubProductName: "Marine Cargo", Endorsement: 0, Renewal: 0, URL: "policysearch/MarineCargo", pageName: "MarineCargo" }, { ProductCode: "9000", ProductName: "Travel", SubProductCode: "9000", SubProductName: "Travel", Endorsement: 0, Renewal: 0, URL: "policysearch/Travel", pageName: "Travel" }, { ProductCode: "1100", ProductName: "Aviation", SubProductCode: "1100", SubProductName: "Aviation", Endorsement: 0, Renewal: 0, URL: "policysearch/Aviation", pageName: "Aviation" } ] $scope.searchProductRisk = async function() { /*------------------ * SUB PRODUCT GRID *-----------------*/ let grid = u.getGlobal("udwSubClassGrid"); let productCode = $("#ProductCode").text().trim(); let subProductGroupingLov = await s.getSubProductGroupingLovAsync(productCode) || []; subProductGroupingLov = (typeof (subProductGroupingLov) === "string" ? JSON.parse(subProductGroupingLov) : subProductGroupingLov) || []; if (subProductGroupingLov.Any()) { u.clear_grid_data(grid); subProductGroupingLov.ForEach(x => { grid.addRowData(x.RISK_CODE, x); }); } else { let prodRiskData = { PRD_CODE: $("#POLH_CLASS_CODE").val() }; //send parameters and get motor Risks from the database s.getProdtRisk(prodRiskData, function(result) { if (result && result.length && result.length > 0) { u.clear_grid_data(grid); //if ($("#POLH_CLASS_CODE").val() === "2000") { // // Other eng products // for (let i in result) { // if (result[i].RISK_CODE === "2001" || result[i].RISK_CODE === "2002") { // delete result[i]; // } // } //} //if ($("#POLH_CLASS_CODE").val() === "8000") { // for (let j in result) { // if (result[j].RISK_CODE === "8007" || result[j].RISK_CODE === "8008" || result[j].RISK_CODE === "8004" || result[j].RISK_CODE === "8005") { // //delete result[j]; // } // } //} //if ($("#POLH_CLASS_CODE").val() === "3000") { // result = result/*.Where(x => x.RISK_CODE !== "3002" && x.RISK_CODE !== "3003")*/.ToList(); //} //if ($("#POLH_CLASS_CODE").val() === "9000") { result = result.Where(x => x.RISK_CODE !== "9002").ToList(); } if ($("#POLH_CLASS_CODE").val() === "2000") { //if ($("#POLH_SUB_CLASS_CODE").val() === "") { // Other eng products for (let i in result) { if (result[i].RISK_CODE === "2001" || result[i].RISK_CODE === "2002") { delete result[i]; } } } if ($("#POLH_CLASS_CODE").val() === "8000") { for (let j in result) { if (result[j].RISK_CODE === "8007" || result[j].RISK_CODE === "8008" || result[j].RISK_CODE === "8004" || result[j].RISK_CODE === "8005") { delete result[j]; } } } if ($("#POLH_CLASS_CODE").val() === "3000") { result = result.Where(x => x.RISK_CODE !== "3004").ToList(); } if ($("#POLH_CLASS_CODE").val() === "9000") { result = result.Where(x => x.RISK_CODE !== "9002").ToList(); } if ($("#POLH_CLASS_CODE").val() === "4000") { for (let i in result) { if (result[i].RISK_CODE === "4002") { delete result[i]; } } } ///*------------------ // * PERSONAL ACCIDENT // *-----------------*/ //if (prodRiskData.PRD_CODE === "1000") { // let query = location.href.split("/"); // let queryPageName = query[query.length - 1].split("?")[0]; // let pageName = $("#pageName").val() || queryPageName; // if (pageName) { // let selectedProduct = $scope.productsList.Where(x => x.pageName == pageName).FirstOrDefault() || {}; // selectedProduct.subProductCodeList = (typeof (selectedProduct.subProductCodeList) == "string" ? JSON.parse(selectedProduct.subProductCodeList || "[]") : selectedProduct.subProductCodeList) || []; // result = result.Where(x => selectedProduct.subProductCodeList.Any(b => b == x.RISK_CODE)).ToList(); // } else { // result = result.ToList(); // } //} //fill grid for (let i in result) { grid.addRowData(result[i]["RISK_CODE"], result[i]); } } }); } }; /* * Treaty Apportionments */ $("#btnTreatyAppor").click(function() { var r = u.get_grid_data(u.getGlobal("udwTtyApporGrid")); //if (u.grid_empty($scope.motor_grid)) return u.modalAlert("Motor Grid is empty!!!"); $("#treatyApportionmentModal").modal(); // }); $("#btnTreatyShare").click(function() { //if (u.grid_empty($scope.motor_grid)) return u.modalAlert("Motor Grid is empty!!!"); $("#treatyShareModal").modal(); }); $("#IntermCommLov").on("click", function() { // getInterCommLov(); /* obtain parameter for our request */ const interParamData = { PROD_CODE: $("#POLH_SUB_CLASS_CODE").val(), }; // gridinterComm const intgrid = u.getGlobal("udwAgntComsnGrid"); const rowIds = intgrid.jqGrid("getDataIDs"); //send parameters and get motor Risks from the database s.get_lov_Intermediary_Comm(interParamData, function(result) { if (result && result.length /*&& result.length*/ > 0) { //clear Grid u.getGlobal("udwAgntComsnGrid").jqGrid("clearGridData"); //console.log(result); //fill grid for (let i in result) { u.getGlobal("udwAgntComsnGrid").addRowData(result[i].ID, result[i]); } } else { u.growl_info("There is no intermediary commission"); } }); }); //Policy Process Modal $("#btnProcessPolicy").on("click", async function() { if (!u.field_empty("#POLH_SYS_ID")) { // claims migration check if (u.getGlobal("claimsMigrationApprove")) { u.modalInfo("Approval not allowed. Claims processing can continue without approval"); } if (u.getGlobal("policyChanges") && $("#POLH_TXN_STATE").val() !== "P") return u.growl_info("The policy may have unsaved changes. Save before continuing"); //getting commands // if (s.xw) { // $scope.commands = await u.workflowCommandsDropDownAsync("#SelPolicyProcess", $("#POLH_UID").val()); // } $("#PolicyProcessingModal").modal(); } else { u.growl_warning("There is no policy to Process, please check and try again"); } }); async function UnconfirmProcessState() { const dataPayload = { processId: $("#POLH_UID").val(), identityId: u.getUserId(), command: $("#SelPolicyProcess").val(), flag: WorkflowConstants.Underwriting, username: u.getUserFullName() }; //executing command const flowResponse = await u.executeCommand(dataPayload); if (flowResponse.state) { $("#POLH_TXN_STATE").val("S"); u.growl_success("Process state unconfirmed successfully"); /*------------------ * Set Policy Status *-----------------*/ let Product = { Status: $("#POLH_TXN_STATE").val(), PassedEndorsement: parseFloat($("#POLH_END_NO").val() || 0) > 0 }; Product.Status = u.getGlobal("TransactionStatus")(Product); u.getGlobal("SetTransactionStatus")(Product.Status, u.getGlobal("udwPolSearchGrid")); u.getGlobal("udwPolSearchGrid").ColorRows(u.getGlobal("TransactionStatuseColor")()); } else { u.growl_error(flowResponse.message); } } /* * Workflow command role delegations event handlers */ $("#btnDelegate").on("click", async function(e) { if (!$scope.commands.length) return u.growl_warning("No commands found"); u.comboBox("#delegateTo", "username", "userId"); //hide processing modal $("#PolicyProcessingModal").modal("hide"); //show delegation modal $("#delegateModal").modal(); }); $("#delegateForm").on("submit", async function(e) { e.preventDefault(); if (!u.form_validation("#delegateForm")) return u.growl_error("Please fill all required fields"); const formData = u.parse_form("#delegateForm"); formData["processId"] = $("#POLH_UID").val(); formData["from"] = u.getUserId(); formData["to"] = formData["delegateTo"]; formData["commands"] = JSON.stringify($scope.commands); const response = await u.delegateCommands(formData); if (response.state) { u.growl_success("Process command delegation successful"); //reset delegation form u.form_reset("#delegateForm"); //hide delegation modal $("#delegateModal").modal("hide"); } else { u.growl_error(response.message); } }); //Policy Process Options Modal $("#btnProcess").on("click", async function() { var e = $("#SelPolicyProcess"); var polProcess = e.val(); var polTxnState = $("#POLH_TXN_STATE").val(); if (polProcess === "") { return u.growl_warning("Nothing selected, please select a command to execute."); } else if (polProcess === "Confirm") { if (!u.field_empty("#POLH_SYS_ID") && $("#POLH_STATUS").val() === "A") { if (polTxnState === "C") return u.growl_warning("The Policy is already confirmed."); if (polTxnState === "P") return u.growl_warning("The Policy is approved."); if (polTxnState === "") return u.growl_warning("The Policy is not saved, please save before confirming."); /*if (polTxnState === "E" || polTxnState === "S" ) { $("#PolConfirmModal").modal(); }*/ /*await u.workflowUsersDropDownAsync("#confirmUsers"); const response = await u.fetchProcessUsers($("#POLH_UID").val(), polProcess); const userMultiComboBox = $("#confirmUsers").data("kendoMultiColumnComboBox"); if (response.length) { u.populateMultiComboBox(userMultiComboBox, response); }*/ u.form_reset("#PolconfirmationForm"); $("#PolConfirmModal").modal(); } else { u.modalWarning("There is no Policy to process"); } } else if (polProcess === "Unconfirm") { if (!u.field_empty("#POLH_SYS_ID")) { if (polTxnState === "P") return u.growl_warning("The policy is approved, you cannot unconfirm."); u.modal_confirmation("Are you sure you want to unConfirm this policy?", function() { //executing unconfirm command s.unConfirmPolicy($("#POLH_SYS_ID").val(), $("#POLH_END_NO").val(), $("#POLH_RENEW_SER_NO").val(), u.getUserCode(), function(result) { if (result.state) { u.growl_success("Policy successfully unconfirmed"); u.form_text_Black_color(); UnconfirmProcessState(); u.getGlobal("DisableFields")(false); } else { u.growl_error("Unable to unconfirm policy"); } }, function() { u.growl_error("Error unconfirming policy"); }); u.hide_confirm(); }); } else { u.modalWarning("There is no policy to process"); } } else if (polProcess === "Endorse") { if (polTxnState !== "P" && polTxnState !== "X") return u.growl_warning("The policy is not approved, you cannot endorse."); u.form_reset("#endorsementForm"); if (!u.field_empty("#POLH_SYS_ID")) { let EndorsementData = u.get_grid_data(u.getGlobal("udwEndsmntGrid")); //let isCancelled = EndorsementData.Any(e => ("ICFCPCVC").includes(e.END_FLAG)); //if (isCancelled) return u.growl_warning("Policy has been cancelled and cannot be endorsed."); /*---------------------------------------------------------------------------- * HIDE OR SHOW ENDORSEMENT BUTTONS BASE ON WHETHER YOU ARE VIEWING OR EDITING *---------------------------------------------------------------------------*/ $("#btnEndorse").show(); $("#endorsmentAssignment").find("select, input, textarea").prop("required", true); $("#endorsmentAssignment").show(); $("#btnEndorseOk").hide(); $("#PolicyEndorsementModal").modal(); u.getGlobal("DisableFields")(false); $scope.ReadOnlyEndormentForm(false, false); $("#PolicyProcessingModal").modal("hide"); var sysId = $("#POLH_SYS_ID").val(); var endNo = parseFloat($("#POLH_END_NO").val()) + 1; var premAmtFc = $("#POLH_POL_PREM_FC").val(); var premAmtBc = $("#POLH_POL_PREM_BC").val(); $("#APP_POLH_ID").val(sysId); /*check if this should be here*/ $("#APP_PREM_FC").val(premAmtFc); /*check if this should be here*/ $("#APP_PREM_BC").val(premAmtBc); $("#END_NO").val(endNo); /*check if this should be here*/ $("#END_CRTE_DATE").val(u.get_datetime()); //await u.workflowUsersDropDownAsync("#endorsementUsers"); //const response = await u.fetchProcessUsers($("#POLH_UID").val(), polProcess); //const userMultiComboBox = $("#endorsementUsers").data("kendoMultiColumnComboBox"); //if (response.length) { // u.populateMultiComboBox(userMultiComboBox, response); //} } else { u.modalWarning("There is no policy to process"); } } else if (polProcess === "Renew") { if (!u.field_empty("#POLH_SYS_ID")) { //check if a policy has been approved if ($("#POLH_TXN_STATE").val() != "P") return u.growl_warning("Policy is not approved"); $("#PolicyRenewalModal").modal(); $("#PolicyProcessingModal").modal("hide"); var startDate = u.dateFastForward($("#POLH_POL_END_DATE").val(), "day", 1); var endDate = u.dateFastForward(u.dateFastForward(startDate, "year", 1), "day", -1);; $("#EffectiveDate").val(startDate); $("#EndDate").val(endDate); } else { u.modalWarning("There is no policy to process"); } } //else if (polProcess === "UnEndorse") { // if (!u.field_empty("#POLH_SYS_ID")) { // if (polTxnState === "E") { // $("#EndmtDeletionModal").modal(); // $("#PolicyProcessingModal").modal("hide"); // var sysId = $("#POLH_SYS_ID").val(); // var endNo = $("#POL_END_NO").val(); // } else { // u.growl_warning("The Policy must be in the endorsement state before endorsement deletion, please check and try again"); // } // } // else { // u.modalWarning("There is no policy to process"); // } //} else if (polProcess?.toLowerCase() === "unendorse") { //$("#EndmtDeletionModal").modal(); //$("#PolicyProcessingModal").modal("hide"); if (!u.field_empty("#POLH_SYS_ID")) { switch (polTxnState) { case "X": case "E": { await u.getGlobalStatic("ProductUnendorse")(); } break; default: u.growl_warning( "The Policy must be in the endorsement state before endorsement deletion, please check and try again"); break; } } else { u.modalWarning("There is no policy to process"); } } else if (polProcess === "Approve" || polProcess === "Stage") { /*---------------------- * RAW POLICY HEAD DATA *--------------------*/ let policy = u.parse_form("#polheaderForm") || {}; if (!u.field_empty("#POLH_SYS_ID")) { if (polTxnState === "P") return u.growl_warning("The policy is already approved."); { /*------------------------------------------------------------------- * CHECKS IF SELECTED BUSINESS SOURCE GRID AND INTERMEDIARY IS EMPTY *-------------------------------------------------------------------*/ policy.INS_UWD_INTERMEDIARY_COMM = u.get_grid_data(u.getGlobal("udwAgntCommGrid")) || []; policy.INS_UWD_INTERMEDIARY_COMM = (typeof (policy.INS_UWD_INTERMEDIARY_COMM) === "string" ? JSON.parse(policy.INS_UWD_INTERMEDIARY_COMM || "[]") : policy.INS_UWD_INTERMEDIARY_COMM) || []; if (((policy.POLH_BIZ_SOURCE === "AGM") || (policy.POLH_BIZ_SOURCE === "BKM")) && !(policy.INS_UWD_INTERMEDIARY_COMM.Any())) { return u.growl_warning( "Agent is selected, please select or reselect intermediary to add intermediary details"); }; /*----------------------------------------------------------------------- * CHECKS IF SELECTED BUSINESS SOURCE GRID AND INTERMEDIARY IS NOT EMPTY *----------------------------------------------------------------------*/ if (((policy.POLH_BIZ_SOURCE === "AGM") || (policy.POLH_BIZ_SOURCE === "BKM")) && policy.INS_UWD_INTERMEDIARY_COMM.Any()) { /*---------------------------------------- * CHECKS IF SOME INTERMEDIARY STATUS IS U *----------------------------------------*/ if (policy.INS_UWD_INTERMEDIARY_COMM.some(x => x.CMM_STATUS == "U")) { return u.growl_warning("Save policy before approving!!"); }; /*---------------------------------------- * CHECKS IF ALL INTERMEDIARY STATUS IS X *----------------------------------------*/ if (policy.INS_UWD_INTERMEDIARY_COMM.every(x => x.CMM_STATUS == "X")) { return u.growl_warning( "Agent is selected, please select or reselect intermediary to add intermediary details"); } }; //u.bigDataPopulate(u.getGlobal("workflowUserGrid"), await u.fetchActionProcessUsers($(".processId").val(), polProcess)); u.form_reset("#PolApprovalForm"); var apprvDate = u.get_date(); var apprvSysId = $("#POLH_SYS_ID").val(); var apprvEndNo = $("#POLH_END_NO").val(); let apprvPremAmtFc = 0; let apprvPremAmtBc = 0; let endorsements = u.get_grid_data(u.getGlobal("udwEndsmntGrid", true)) || []; let latestEndorsement = endorsements .Where(v => (parseInt(v.END_NO) == parseInt(policy.POLH_END_NO)) && (parseInt(v.END_RNW_NO) == parseInt(policy.POLH_RENEW_SER_NO))) .FirstOrDefault() || {}; //let latestEndorsement = endorsements.Where(v => v.END_NO == endorsements.Max(x => parseFloat(x.END_NO))).FirstOrDefault() || {}; apprvPremAmtFc = parseFloat(apprvEndNo || 0) ? !("EX").includes($("#POLH_TXN_STATE") .val()) /*$("#POLH_TXN_STATE").val() !== "E"*/ ? $("#POLH_POL_PREM_FC").val() : parseFloat( (latestEndorsement.END_PREM_DIFF_FC || 0) /*+ (latestEndorsement.END_FEE_FC || 0)*/) : $("#POLH_POL_PREM_FC").val(); apprvPremAmtBc = parseFloat(apprvEndNo || 0) ? !("EX").includes($("#POLH_TXN_STATE") .val()) /*$("#POLH_TXN_STATE").val() !== "E"*/ ? $("#POLH_POL_PREM_BC").val() : parseFloat( (latestEndorsement.END_PREM_DIFF_BC || 0) /*+ (latestEndorsement.END_FEE || 0)*/) : $("#POLH_POL_PREM_BC").val(); $("#APP_POLH_ID").val(apprvSysId); $("#APP_END_NO").val(apprvEndNo); $("#APP_PREM_FC").val(apprvPremAmtFc); $("#APP_PREM_BC").val(apprvPremAmtBc); $("#APPROVE_DATE").val(apprvDate); // post to account to be defaulted as yes and grayed out.. $("#ACCT_POST").prop("disabled", true); $("#DeferPayment").val(""); if (apprvEndNo > 0) { var prmrqresponse = await s.validatePremiumReversalPolicyInfoAsync(apprvSysId); if (!prmrqresponse.state) { if (prmrqresponse.message.includes("PREM_REF_NONE")) { return u.modalConfirmationAsync(prmrqresponse.message.replaceAll("PREM_REF_NONE",""), async () => { $("#btnPremiumReversalRequest")[0].click(); }); } if (prmrqresponse.message.includes("PREM_REF_ERR")) { return u.growl_warning(prmrqresponse.message.replaceAll("PREM_REF_ERR", "")) } return u.growl_info(prmrqresponse.message) } } $scope.getApprovalCheckList(); $scope.prepApprovalSummary(); $("#PolicyApprovalModal").modal(); } } else { u.modalWarning("There is no policy to process."); } } else if (polProcess === "UndoRenewal") { if ($("#POLH_TXN_STATE").val() === "P") return u.growl_warning("Policy is already approved"); if ($("#POLH_TXN_STATE").val() !== "R") return u.growl_warning("Policy must be in the renewal state before renewal can be undone"); await u.modalConfirmationAsync("Are you sure you want to undo the current renewal?", async function() { let response = await s.undoRenewalAsync($("#POLH_SYS_ID").val(), $("#POLH_RENEW_SER_NO").val()); if (!response.state) return u.growl_error(response.message); u.growl_success( "Undo renewal process completed successfully. Click Reload to continue"); setTimeout(function() { return window.location.href = window.location.href + "?id=" + response.data.POLH_SYS_ID; }, 1500); }); } else { $("#Command") .replaceWith( ""); $("#Command").val(polProcess); //get workflow users await u.workflowUsersDropDownAsync("#approvalUsers", $("#POLH_UID").val(), polProcess); /*await u.workflowCommandsDropDownAsync("#Command", $("#POLH_UID").val()).then(async () => { $("#Command").val(polProcess); $("#Command").prop("disabled", true); /*const response = await u.fetchProcessUsers($("#POLH_UID").val(), polProcess); const userMultiComboBox = $("#Assignee").data("kendoMultiColumnComboBox"); if (response.length) { u.populateMultiComboBox(userMultiComboBox, response); }#1# });*/ $("#newTaskModal").modal(); } $("#PolicyProcessingModal").modal("hide"); }); // policy Confirmation process $("#btnConfirm").click(function() { if ($("#POLH_STATUS").val() !== "A") return u.growl_info("Please save policy before confirming"); if ($("#POLH_TXN_STATE") === "P") return u.growl_warning("The policy has already been approved, you cannot confirm."); if ($("#POLH_TXN_STATE") === "C") return u.growl_warning("The policy has already been confirmed, you cannot confirm."); if (!u.form_validation("#PolconfirmationForm")) return u.growl_warning("Fields marked red are required"); u.modalConfirmationAsync("Are you sure you want to Confirm?", async function() { if (!$scope.confirming) { $scope.confirming = true; const formData = u.parse_form("#PolconfirmationForm"); //updating workflow const dataPayload = { processId: $("#POLH_UID").val(), identityId: u.getUserId(), command: $("#SelPolicyProcess").val(), assignedTo: formData["USER"], flag: WorkflowConstants.Underwriting, comment: formData["NARRATION"], username: u.getUserFullName(), //startDate: $("#POLH_POL_START_DATE").val(), //endDate: $("#POLH_POL_END_DATE").val() }; //executing command const flowResponse = await u.executeCommand(dataPayload); if (flowResponse.state) { //u.growl_success("Process state updated"); //confirming policy const response = await s.confirmPolicyAsync({ processId: $("#POLH_UID").val(), polId: $("#POLH_SYS_ID").val(), endNo: $("#POLH_END_NO").val(), userCode: u.getUserCode(), postYn: formData["RI_POSTED_YN"], narration: formData["NARRATION"], assignedTo: formData["USER"], command: $("#SelPolicyProcess").val(), isProcess: true, notify: formData["EMAIL_YN"] == "Y" }); $scope.confirming = false; if (response.state) { //Change policy transaction state to Confirmed C const txnState = response.POLH_TXN_STATE; u.growl_success(response.message); $("#POLH_TXN_STATE").val(txnState); u.form_text_Blue_color(); $("#PolConfirmModal").modal("hide"); /*------------------ * Set Policy Status *-----------------*/ let product = u.getGlobal("getSelTransaction")(u.getGlobal("udwPolSearchGrid")); let polsearchInfo = u.get_grid_data(u.getGlobal("udwPolSearchGrid")); polsearchInfo.ForEach(x => { x.Status = (x.PolicyNumber == product.PolicyNumber) ? response.POLH_TXN_STATE : x.Status; x.PassedEndorsement = (x.PolicyNumber == product.PolicyNumber) ? (parseFloat($("#POLH_END_NO").val() || 0) > 0) : x.PassedEndorsement; u.getGlobal("TransactionStatus")(x); }); u.clear_grid_data(u.getGlobal("udwPolSearchGrid")); u.bigDataPopulate(u.getGlobal("udwPolSearchGrid"), polsearchInfo); // disable fields if approved u.getGlobal("DisableFields")(true); } else { //reverting workflow process await u.revertProcess($("#POLH_UID").val()); u.growl_error(response.message); } } else { u.growl_error("Process state failed"); } } u.hide_confirm(); }); }); $("#showWorkflowUsers").click(function() { $("#processUsersModal").modal(); }); //Approval Process $("#btnApproval").click(function() { if (u.field_empty("#POLH_SYS_ID")) return u.growl_warning("There is no Policy to Approve, Please check and try again"); //There has to be a rechecking of this line if ($("#POLH_SYS_ID").val() === "A") return u.growl_warning("There is no Policy to Approve, Please check and try again"); if ($("#POLH_TXN_STATE").val() === "P") return u.growl_warning("The policy has already been approved, you cannot approve."); const usernameEl = $("#username"); //check if its up for staging to toggle required property of username if ($("#SelPolicyProcess").val() === "Stage") { usernameEl.removeProp("required"); } else { usernameEl.prop("required", true); } if (!u.form_validation("#PolApprovalForm")) return u.growl_warning("Fields marked red are required"); u.modal_confirmation("Are you sure you want to approve?", async function() { const formData = u.parse_form("#PolApprovalForm"); // RI allowed user limit check // var treatyData = u.get_grid_data($scope.treatyApportionmentGrid); const riData = u.get_grid_data(u.getGlobal("udwRIGrid")); ////console.log(riData); // const treatyData = riData !== undefined ? JSON.parse(riData[0].INS_RI_TTY_ALLOCATION || "[]") : null; //check data types at this place const treatyData = riData !== undefined ? riData[0].INS_RI_TTY_ALLOCATION || "[]" : null; var riYn = false; if (treatyData != null) { for (let i in treatyData) { if (treatyData[i].TTA_TTY_TYPE === "OR") { riYn = parseFloat($("#POLH_POL_SI_BC").val()) > parseFloat(treatyData[i].TTA_TTY_LIMIT_BC) ? true : false; } } } //executing approval command to update server state // should not create a notification in users inbox on approval.. const payload = { processId: $("#POLH_UID").val(), identityId: u.getUserId(), assignedTo: /* formData["USER"]*/ "", command: $("#SelPolicyProcess").val(), comment: formData["COMMENTS"], username: u.getUserFullName(), flag: WorkflowConstants.Underwriting, startDate: new Date(), endDate: new Date(), self: $("#SelPolicyProcess").val() === "Staging" }; //const flowResult = await u.executeCommand(payload); if (true) { //u.growl_success("Policy process flow updated"); const response = await s.policyApprovalAsync({ POL_SYS_ID: $("#POLH_SYS_ID").val(), POL_END_NO: $("#POLH_END_NO").val(), POL_RNW_NO: $("#POLH_RENEW_SER_NO").val(), USER_ID: u.getUserId(), TXN_TYPE: 1, CRTE_BY: u.getUserCode(), POST_DATE: formData["APPROVE_DATE"], RI_YN: riYn, USER: u.getUserId(), POST_RI_YN: formData["POST_RI_YN"], Username: formData["USER"], narration: formData["COMMENTS"], command: $("#SelPolicyProcess").val(), IsProcess: true, Notify: formData["EMAIL_YN"] === "Y", processId: $("#POLH_UID").val() }); if (response.state) { /*--------------------------------------------------------------------- * SET ALL ENDORSEMENT STATE FROM 'O' TO 'C' AT AFTER APPROVAL *--------------------------------------------------------------------*/ u.setGridColumn(u.getGlobal("udwEndsmntGrid"), { "END_TXN_STATE": "C" }); /*--------------------------------------------------------------------*/ //set treaty close flag u.setGridColumn(u.getGlobal("udwRIGrid"), { "INS_RI_TTY_ALLOCATION": function(val) { var alloc = typeof (val) === "string" ? JSON.parse(val || "[]") : val || []; alloc.ForEach(allocation => { allocation.TTA_CLOSE_FLAG = "Y"; }); return JSON.stringify(alloc); } }); $scope.approving = false; u.growl_success("Policy successfully Approved"); $("#POLH_TXN_STATE").val(response.POLH_TXN_STATE); response.POLH_TXN_STATE === "P" ? u.form_text_Green_color() : u.form_text_Black_color(); //u.form_text_Green_color(); u.form_readonly(); u.form_reset("#PolApprovalForm"); $("#PolicyApprovalModal").modal("hide"); u.hide_confirm(); if (response.POLH_DISPLAY_NO != null) { $("#POLH_DISPLAY_NO").val(response.POLH_DISPLAY_NO); $("#POLH_POLICY_TYPE").val(1); } /*------------------ * Set Policy Status *-----------------*/ let product = u.getGlobal("getSelTransaction")(u.getGlobal("udwPolSearchGrid")); let polsearchInfo = u.get_grid_data(u.getGlobal("udwPolSearchGrid")); polsearchInfo.ForEach(x => { x.Status = (x.PolicyNumber == product.PolicyNumber) ? response.POLH_TXN_STATE : x.Status; x.PassedEndorsement = (x.PolicyNumber == product.PolicyNumber) ? (parseFloat($("#POLH_END_NO").val() || 0) > 0) : x.PassedEndorsement; u.getGlobal("TransactionStatus")(x); }); u.clear_grid_data(u.getGlobal("udwPolSearchGrid")); u.bigDataPopulate(u.getGlobal("udwPolSearchGrid"), polsearchInfo); /*---------------------------------- * Debit Reversal endorsement Update * --------------------------------- */ if (response.POLH_TXN_STATE === "S" && u.get_grid_data(u.getGlobal("udwEndsmntGrid")).OrderByDescending(x => x.END_SYS_ID) .FirstOrDefault().END_FLAG === "CR") { u.getGlobal("undoDebitEndorsementUpdate")(); /* * Create routine endorsement record */ u.getGlobal("udwEndsmntGrid").addRowData(undefined, { END_NO: $("#POLH_END_NO").val(), END_RNW_NO: $("#POLH_RENEW_SER_NO").val(), END_ADDON_BENEFIT_DIFF_BC: 0, END_ADDON_BENEFIT_DIFF_FC: 0, END_COINS_COMM_DIFF_BC: 0, END_COINS_COMM_DIFF_FC: 0, END_COINS_DIFF_BC: 0, END_COINS_DIFF_FC: 0, END_COMMSSN_DIFF_BC: 0, END_COMMSSN_DIFF_FC: 0, END_CRTE_BY: u.getUserCode(), END_CRTE_DATE: u.get_date(), END_DISC_DIFF_BC: 0, END_DISC_DIFF_FC: 0, END_EFCTV_DATE: u.get_date(), END_END_CODE: "RAR", END_FEE: 0, END_FEE_DIFF_BC: 0, END_FEE_DIFF_FC: 0, END_FEE_FC: 0, END_FLAG: "RAR", END_LOAD_DIFF_BC: 0, END_LOAD_DIFF_FC: 0, END_NAME: "Reinstatement after approval reversal", END_NOT_LIAB_FROM: u.get_date(), END_NOT_LIAB_TO: u.get_date(), END_POL_ADDON_BENEFIT_CANC_YN: "N", END_POL_FEE_CANC_YN: "N", END_PREM_CHANGE_YN: "N", END_PREM_DIFF_BC: 0, END_PREM_DIFF_FC: 0, END_REASON: "Reinstatement after approval reversal", END_SI_DIFF_BC: 0, END_SI_DIFF_FC: 0, END_STATUS: "U", END_TERM_DATE: $("#POLH_POL_END_DATE").val(), END_TEXT_DESC: "Reinstatement after approval reversal", END_TXN_STATE: "C", }); u.setGlobal("policyChanges", true); } } else { //await u.revertProcess($("#POLH_UID").val()); if (response.message.includes("risk or location RI")) { return u.modalInfo('Some validations returned an unexpected outcome, please save your policy and try again.') } else { u.modalError(response.message); } } } else { u.modalError("Policy process flow update failed"); } }); // update transaction state on search Grid. //setSearchGridTxnState = function (status) { // // set the transaction state on the search grid. // let searchGrid = u.getGlobal("udwPolSearchGrid"); // var row_id = searchGrid.jqGrid("getGridParam", "selrow"); // if (row_id) { // searchGrid.jqGrid("setCell", row_id, "Status", status); // } //}; $("#btnView").click(function() { const grid = u.getGlobal("udwPolSearchGrid"); const selRowId = u.getSelRow(u.getGlobal("udwPolSearchGrid")); if (selRowId === null) return u.growl_info("Select a policy from the grid"); const id = grid.jqGrid("getCell", selRowId, "Id"); s.getPolicy(id, function(result) { u.getGlobalStatic("productSearchFill")(result.data); $("#PolicyModal").modal(); }); }); }); $scope.editor = tinymce.init({ selector: "#paymentEditor", toolbar: "undo redo styleselect bold italic alignleft aligncenter alignright bullist numlist outdent indent image link forecolor backcolor", plugins: "table lists advlist code image link textcolor colorpicker emoticons contextmenu autolink help preview wordcount visualchars preview codesample", advlist_bullet_styles: "square circle", contextmenu: "link image inserttable | cell row column deletetable", height: "400px", contextmenu_never_use_native: true }); /* * PAYMENT NOTIFICATION */ $("#btnSendPayment").click(function() { if ($("#POLH_SYS_ID").val() === "") return u.growl_info("No policy available"); if ($("#POLH_TXN_STATE").val() !== "P") return u.growl_info("Policy is not approved."); $("#noticeType").prop("disabled", false); //$("#customer").prop("disabled", false); $("#phone").prop("disabled", false); $("#email").prop("disabled", false); //$("#customer").val($("#POLH_CUST_NAME").val()); $("#phone").val($("#POLH_CUST_TEL").val()); $("#paymentIntegrator").prop("disabled", false); if (u.getGlobal("customer")) { if (u.getGlobal("customer").CUS_EMAIL) { $("#email").val(u.getGlobal("customer").CUS_EMAIL); } } $scope.mailExample = `\t Dear ${$("#POLH_CUST_NAME").val()}, you can pay the premium of ${$("#netCustomerFc").text() } for your ${$("#PDT_NAME").val()} policy with policy number ${$("#POLH_DISPLAY_NO").val()}` + ` with this payment pin: [PaymentPin], using our USSD service on *713*222#, or click [Url] to pay.` + "\n Thank you.

2022 CIMG Insurance Company of The Year (General).

Kindly click https://zurl.co/RsBX to give us your feedback on our service."; $scope.kowriExample = `\t Dear ${$("#POLH_CUST_NAME").val()}, you can pay the premium of ${$("#netCustomerFc").text() } for your ${$("#PDT_NAME").val()} policy with policy number ${$("#POLH_DISPLAY_NO").val()}` + ` with this payment pin: [PaymentPin], using our USSD service on  *227*6#, or click [Url] to pay.` + "\n Thank you.

2022 CIMG Insurance Company of The Year (General).

Kindly click https://zurl.co/RsBX to give us your feedback on our service."; //$scope.whatsappHubtel = `\t Dear ${$("#POLH_CUST_NAME").val()}, you can pay the premium of ${$("#netCustomerFc").text()} for your ${$("#PDT_NAME").val()} policy with policy number ${$("#POLH_DISPLAY_NO").val()}` + // ` with this payment pin: [PaymentPin], using our USSD service on  *713*222#, or tap the button below.` + // " Thank you."; //$scope.whatsappKowri = `\t Dear ${$("#POLH_CUST_NAME").val()}, you can pay the premium of ${$("#netCustomerFc").text()} for your ${$("#PDT_NAME").val()} policy with policy number ${$("#POLH_DISPLAY_NO").val()}` + // ` with this payment pin: [PaymentPin], using our USSD service on  *227*6#, or tap the button below.` + // " Thank you."; $("#paymentNoticeModal").modal(); tinymce.activeEditor.setContent($scope.mailExample); }); $("#noticeType").change(function() { if ($(this).val() === "email") { $("#email").attr("required", "required"); $("#phone").prop("required", false); } else if ($(this).val() === "SMS") { $("#email").prop("required", false); $("#phone").attr("required", "required"); } else if ($(this).val() === "whatsapp") { $("#email").prop("required", false); $("#phone").attr("required", "required"); } else if ($(this).val() === "both") { $("#phone").attr("required", "required"); $("#email").attr("required", "required"); } else { $("#phone").prop("required", false); $("#email").prop("required", false); } }); $scope.sendPaymentData = {}; /* $("#btnSendPaymentNotice").click(function () { if (!u.form_validation("#noticeForm")) return u.growl_warning("All fields marked red are required"); u.modal_confirmation("Are you sure you want to send a payment notice for this policy?", function () { var data = u.parse_form("#noticeForm"); data.user = u.getUserCode(); data.policyId = $("#POLH_SYS_ID").val(); data.noticeMessage = tinyMCE.activeEditor.getContent({ format: "raw" }); $scope.sendPaymentData = data; s.sendPaymentNotice(data, function (response) { if (response.state) { u.growl_success(response.message); u.hide_confirm(); $("#paymentNoticeModal").modal("hide"); } else { u.growl_error(response.message); if (response.data != null && response.data === 1) { $("#sendPaymentEndModal").modal(); $("form input[name='renewalNo']").prop("disabled", false); $("form input[name='endNo']").prop("disabled", false); } } }); u.hide_confirm(); }); });*/ $("#btnSendPaymentNotice").click(function() { if (!u.form_validation("#noticeForm")) return u.growl_warning("All fields marked red are required"); u.modal_confirmation("Are you sure you want to send a payment notice for this policy?", function() { var data = u.parse_form("#noticeForm"); data.user = u.getUserCode(); data.policyId = $("#POLH_SYS_ID").val(); data.noticeMessage = tinyMCE.activeEditor.getContent({ format: "raw" }); // Transforming phone number value if it's defined and not empty var phoneValue = data.phone; if (phoneValue && phoneValue.startsWith("0")) { phoneValue = "233" + phoneValue.substr(1); data.phone = phoneValue; } $scope.sendPaymentData = data; s.sendPaymentNotice(data, function(response) { if (response.state) { u.growl_success(response.message); u.hide_confirm(); $("#paymentNoticeModal").modal("hide"); u.form_reset("#noticeForm") } else { u.growl_error(response.message); if (response.data != null && response.data === 1) { $("#sendPaymentEndModal").modal(); $("form input[name='renewalNo']").prop("disabled", false); $("form input[name='endNo']").prop("disabled", false); } } }); u.hide_confirm(); }); }); $("#btnSubmitPaymentNotice").click(function() { if (!u.form_validation("#paymentSubmitForm")) return u.growl_warning("All fields marked red are required"); u.modal_confirmation("Are you sure you want to perform this action?", function() { let data = u.parse_form("#paymentSubmitForm"); $scope.sendPaymentData.renewalNo = data.renewalNo; $scope.sendPaymentData.endorsementNo = data.endNo; s.sendPaymentNotice($scope.sendPaymentData, function(response) { if (response.state) { u.growl_success(response.message); u.hide_confirm(); $("#paymentNoticeModal").modal("hide"); $("#sendPaymentEndModal").modal("hide"); } else { u.growl_error(response.message); } }); u.hide_confirm(); }); }); $("#btnSendPay").click(function() { if (!u.form_validation("#paymentForm")) return u.growl_warning("All fields are required"); s.queryOpenEntry($("#POLH_SYS_ID").val(), function(response) { if (response.state) { s.paymentNotification({ polId: $("#POLH_SYS_ID").val(), noticeType: $("#noticeType").val(), noticeMsg: $("#noticeMsg").val(), user: u.getUserCode(), premFc: response.data[0].info.PREM_FC, premBc: response.data[0].info.PREM_BC }, function(result) { if (result.state) { u.growl_success(result.message); $("#paymentNoticeModal").modal("hide"); } else { u.growl_error(result.message); } }); } else { u.growl_error(response.message); } }); }); /* * SEND PAYMENT */ //$scope.mailExample = "\t Dear [Customer], you can pay the premium of GHS [Premium] for your [Class] policy with policy number [PolicyNo] " + // "with this payment pin: [PaymentPin] using our USSD service, or visit this link - [Url]." + // "\n Thank you."; //$scope.editor = tinymce.init({ // selector: "#paymentEditor", // toolbar: "undo redo styleselect bold italic alignleft aligncenter alignright bullist numlist outdent indent image link forecolor backcolor", // plugins: "table lists advlist code image link textcolor colorpicker emoticons contextmenu autolink help preview wordcount visualchars preview codesample", // advlist_bullet_styles: "square circle", // contextmenu: "link image inserttable | cell row column deletetable", // height: "400px", // contextmenu_never_use_native: true, //}); $("#btnAddTask").click(function() { if (!u.form_validation("#newTaskForm")) return u.growl_warning("Fields marked red are required"); u.modal_confirmation("Are you sure you want to proceed with the assignment ?", async function() { const formData = u.parse_form("#newTaskForm"); const dataPayload = { processId: $("#POLH_UID").val(), identityId: u.getUserId(), command: $("#Command").val(), assignedTo: formData["assignedTo"], flag: WorkflowConstants.Underwriting, comment: formData["comment"], username: u.getUserFullName(), startDate: formData["startDate"], endDate: formData["dueDate"] }; const flowResult = await u.executeCommand(dataPayload); if (flowResult.state) { if ($("#UT_SEND_EMAIL").is(":checked") && $scope.copyEmails.Any()) { let userResponse = await s.getUserDetailsAsync(formData["assignedTo"]); if (!userResponse.state) { $("#newTaskModal").modal("hide"); return u.growl_success("Task assignment successful"); } let json = { assignee: formData.assigneeName, assigner: u.getUserFullName(), action: formData.command, description: formData.comment, startDate: formData.startDate, endDate: formData.dueDate, copyEmails: $scope.copyEmails, email: userResponse.data.email }; let response = await s.sendTaskAssignmentEmailAsync(json); $("#newTaskModal").modal("hide"); u.growl_success("Task assignment successful"); } else { $("#newTaskModal").modal("hide"); u.growl_success("Task assignment successful"); } } else { u.growl_error("An error occured while assigning."); } }); }); $("#UT_SEND_EMAIL").change(function() { if ($(this).is(":checked")) { $("#emailCopyDiv").removeClass("m-hide"); } else { $("#emailCopyDiv").addClass("m-hide"); $("#copyEmailsDiv").addClass("m-hide"); $("#copyEmailsGrid").addClass("m-hide"); $("#emailTable").empty(); $scope.copyEmails = []; $("#copyEmails").val(""); } }); $("#copyEmail").change(function() { if ($(this).is(":checked")) { $("#copyEmailsDiv").removeClass("m-hide"); $("#copyEmailsGrid").removeClass("m-hide"); } else { $("#copyEmailsDiv").addClass("m-hide"); $("#copyEmailsGrid").addClass("m-hide"); $("#emailTable").empty(); $scope.copyEmails = []; $("#copyEmails").val(""); } }); $("#btnAddEmail").click(function() { if (u.field_empty("#copyEmails")) return u.growl_info("Email is required"); if ($scope.copyEmails.Any(x => x === $("#copyEmails").val())) return u.growl_info("Email already added to the list"); $("#emailTable").empty(); $scope.copyEmails.push($("#copyEmails").val()); $scope.copyEmails.ForEach(email => { $("#emailTable") .append( `${email}`); }); $("#copyEmails").val(""); }); $("#newTaskForm").delegate(".remove-email", "click", function() { $scope.copyEmails = $scope.copyEmails.Where(x => x !== $(this).data("email")); $("#emailTable").empty(); $scope.copyEmails.ForEach(email => { $("#emailTable") .append( `${email}`); }); }); $scope.copyEmails = []; function getProductRiskLov() { /* obtain parameter for our request */ const prodRiskData = { PRD_CODE: $("#POLH_CLASS_CODE").val(), }; // var grid = u.getGlobal("udwSubClassGrid"); const rowIds = grid.jqGrid("getDataIDs"); //send parameters and get motor Risks from the database s.getProdtRisk(prodRiskData, function(result) { if (result && result.length && result.length > 0) { //clear Grid grid.jqGrid("clearGridData"); //fill grid for (let i in result) { grid.addRowData(result[i]["RISK_CODE"], result[i]); } } }); }; //$("#POLH_CHANNEL_CODE").val(u.getUserChannelCode()); $("#POLH_CMP_CODE").val(u.getUserCompanyCode()); $("#CIL_SHARE_SI_FC").blur(function() { $("#CIL_SHARE_SI_BC") .val((parseFloat($(this).val()) * parseFloat($("#POLH_CURRENCY_RATE").val())).toFixed(2)); }); $("#CIL_SHARE_PREM_FC").blur(function() { $("#CIL_SHARE_PREM_BC") .val((parseFloat($(this).val()) * parseFloat($("#POLH_CURRENCY_RATE").val())).toFixed(2)); }); $("#CIL_MEMBERS_SI_FC").blur(function() { $("#CIL_MEMBERS_SI_BC") .val((parseFloat($(this).val()) * parseFloat($("#POLH_CURRENCY_RATE").val())).toFixed(2)); }); $("#CIL_MEMBERS_PREM_FC").blur(function() { $("#CIL_MEMBERS_PREM_BC") .val((parseFloat($(this).val()) * parseFloat($("#POLH_CURRENCY_RATE").val())).toFixed(2)); }); /*------------- * GET PRODUCT *-----------*/ s.get_product($("#POLH_SUB_CLASS_CODE").val(), function(response) { if (!jQuery.isEmptyObject(response)) { u.setGlobal("productData", response.Product); } }); $("#btn_UserLog").click(function() { s.getUserLog($("#POLH_SYS_ID").val(), function(response) { if (response.state) { u.bigDataPopulate(u.getGlobal("udwUserLogGrid"), response.data); $("#UserLogModal").modal(); } }, function(err) { u.growl_error(err.message); }); }); $("#viewChanges").click(async function() { var sel = u.getSelRow(u.getGlobal("udwUserLogGrid")); if (sel) { var response = await s.getChanges(u.getRow(sel, u.getGlobal("udwUserLogGrid")).AUDIT_ID); if (response.state) { $("#changes").val(response.data); $("#changesModal").modal(); } else { u.growl_error(response); } } else { u.growl_info("Please select a row."); } }); /*--------------------------- * Replace character on input *--------------------------*/ //u.replaceCharacter("#custQuery", [{ replacee: "%", replacer: "" }]); $scope.getShortPeriods = async function() { var set = false; if ($("#POLH_SUB_CLASS_CODE").val() !== "") { if ($("#POLH_CLASS_CODE").val() !== "6000") { const response = await s.getShortPeriodsAsync($("#POLH_SUB_CLASS_CODE").val()); if (response.state) { if (response.data && response.data.length > 0) { u.setGlobal("shortPeriods", response.data); set = true; } else { //u.growl_info(`No short periods has been setup for ${$("#PDT_NAME").val()}`); u.setGlobal("shortPeriods", []); } } } else { u.setGlobal("shortPeriods", []); } } else { u.setGlobal("shortPeriods", []); } return set; }; $scope.getShortPeriods(); /*-------------- * Validations *-------------*/ u.percentFieldValidation("#CIL_OUR_PERC"); u.percentFieldValidation("#CIL_COMP_COMM_PERC"); u.percentFieldValidation("#CIL_COMP_PERC"); u.percentFieldValidation("#FINW_SHARE_PERC"); u.percentFieldValidation("#FINW_MEMBER_PERC"); u.percentFieldValidation("#FINW_COMM_PERC"); u.percentFieldValidation("#FINW_PAP_SHARE_PERC"); /*------------------------------------ * ENDORSEMENT BUTTON EVENT FUNCTION * ----------------------------------*/ $("#btn_endorsement_summary").click(async function() { let grid = u.getGlobal("udwEndsmntGrid"); let gridSummary = u.getGlobal("udwEndsmntSumGrid"); if (u.grid_empty(grid)) return u.growl_info("Endorsement grid is empty"); let rowId = u.getSelRow(grid); if (!rowId) return u.growl_warning("Select a record to view endorsement summary"); let data = u.getRow(rowId, grid); $("#currency").text(u.fieldVal("#POLH_CURRENCY")); $("#net_end_prem").text(parseFloat(data.END_PREM_DIFF_FC).toFixed(2)); let Summary = [ { CODE: "PREM", NAME: "Premium", AMOUNT_FC: data.END_PREM_DIFF_FC, AMOUNT_BC: data.END_PREM_DIFF_BC }, { CODE: "DISC", NAME: "Discounts", AMOUNT_FC: data.END_DISC_DIFF_FC, AMOUNT_BC: data.END_DISC_DIFF_BC }, { CODE: "LOD", NAME: "Loadings", AMOUNT_FC: data.END_LOAD_DIFF_FC, AMOUNT_BC: data.END_LOAD_DIFF_FC }, { CODE: "FEE", NAME: "Fees", AMOUNT_FC: data.END_FEE_DIFF_FC, AMOUNT_BC: data.END_FEE_DIFF_BC }, { CODE: "COMM", NAME: "Commission", AMOUNT_FC: data.END_COMMSSN_DIFF_FC, AMOUNT_BC: data.END_COMMSSN_DIFF_BC }, { CODE: "COINS", NAME: "RI", AMOUNT_FC: data.END_COINS_DIFF_FC, AMOUNT_BC: data.END_COINS_DIFF_BC }, { CODE: "SI", NAME: "Sum Insured", AMOUNT_FC: data.END_SI_DIFF_FC, AMOUNT_BC: data.END_SI_DIFF_BC } ]; u.clear_grid_data(gridSummary); Summary.ForEach(w => { gridSummary.addRowData(undefined, w); }); $("#endorsementSummaryModal").modal(); }); $("#btn_endorsement_edit").click(async function() { //if (u.fieldVal("#POLH_TXN_STATE") === "X") return u.growl_warning("The policy is cancelled!"); //if (u.fieldVal("#POLH_TXN_STATE") !== "E") return u.growl_warning("The policy is not in endorsed state!"); let grid = u.getGlobal("udwEndsmntGrid"); if (u.grid_empty(grid)) return u.growl_info("Endorsement grid is empty"); let rowId = u.getSelRow(grid); if (!rowId) return u.growl_warning("Select a record to Edit"); $("#btnEndorse").hide(); $("#btnEndorseOk").show(); $("#endorsmentAssignment").find("select, input, textarea").prop("required", false); $("#endorsmentAssignment").hide(); let data = u.getRow(rowId, grid); data.END_TOTAL_DAYS = data.END_TOTAL_DAYS || $scope.totalDaysEndorsement(); $scope.ReadOnlyEndormentForm(true, data.END_TXN_STATE !== "O"); u.form_reset("#endorsementForm"); u.fill_form(data, "#endorsementForm"); $("#PolicyEndorsementModal").modal(); $("#END_AUTO_ADJUST_YN").prop("disabled", !("ICFCPCCR").includes(data.END_FLAG)); }); $("#btnEndorseOk").click(function() { if (!u.form_validation("#endorsementForm")) return u.growl_warning("Fields marked red are required"); u.modal_confirmation("Are you sure you want to update the selected record?", async function() { let data = u.parse_form("#endorsementForm"); const grid = u.getGlobal("udwEndsmntGrid"); let rowId = u.getSelRow(grid); let dataEnd = u.getRow(rowId, grid); if (dataEnd.END_SYS_ID == data.END_SYS_ID) { let oldEndorsementFeesFC = dataEnd.END_FEE_FC; let oldEndorsementFeesBC = dataEnd.END_FEE; data = { ...dataEnd, ...data }; data.END_PREM_DIFF_FC = parseFloat(data.END_PREM_DIFF_FC || 0) - parseFloat(oldEndorsementFeesFC || 0); data.END_PREM_DIFF_BC = parseFloat(data.END_PREM_DIFF_BC || 0) - parseFloat(oldEndorsementFeesBC || 0); data.END_PREM_DIFF_FC = parseFloat(data.END_PREM_DIFF_FC || 0) + parseFloat(data.END_FEE_FC || 0); data.END_PREM_DIFF_BC = parseFloat(data.END_PREM_DIFF_BC || 0) + parseFloat(data.END_FEE || 0); for (let i in data) grid.jqGrid("setCell", rowId, i, data[i]); grid.refresh(); u.hide_confirm(); u.growl_success("Record successfully updated"); $("#PolicyEndorsementModal").modal("hide"); /*--------------------------------------------------------- * SET THE ENDORSEMENT PREMIUM TO INCLUDE ENDORSEMENT FEES *------------------------------------------------------**/ let Endorsement = { ...data, END_CURRENCY: $("#POLH_CURRENCY").val() }; let ClassCode = $("#POLH_CLASS_CODE").val(); switch (ClassCode) { case "1000": //PA case "9000": //TRAVEL case "3000": //FIRE $("#endPremSummary").removeClass(true ? "m-hide" : "").addClass(true ? "" : "m-hide") .find("#endNetCustomerFc").empty() .append( ` ${Endorsement.END_CURRENCY || ""} ${ (parseFloat(Endorsement.END_PREM_DIFF_FC || 0) /*+ parseFloat(Endorsement.END_FEE_FC || 0)*/).toFixed(2)}`); break; case "6000": //MOTOR /*-------------------------------------- * REFRESH THE POLICY ON ENDORSEMENT OK *------------------------------------*/ switch (data.END_FLAG) { case "RI": { await u.getGlobalStatic("EndorsementPremiumRecalculate")() } break; case "DI": //CHANGE OF INTERMIDIARY (DIRECT TO INTERMEDIARY) { } break; case "IM": //INTERMEDIARY MISTAKE { } break; default: $("#endPremSummary").removeClass(true ? "m-hide" : "") .addClass(true ? "" : "m-hide") .find("#endNetCustomerFc").empty() .append( ` ${Endorsement.END_CURRENCY || ""} ${(parseFloat( Endorsement.END_PREM_DIFF_FC || 0) /*+ parseFloat(Endorsement.END_FEE_FC || 0)*/).toFixed(2)}`); break; }; break; default: $("#endPremSummary").removeClass(true ? "m-hide" : "").addClass(true ? "" : "m-hide") .find("#endNetCustomerFc").empty() .append( ` ${Endorsement.END_CURRENCY || ""} ${ (parseFloat(Endorsement.END_PREM_DIFF_FC || 0) /*+ parseFloat(Endorsement.END_FEE_FC || 0)*/).toFixed(2)}`); break; } } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); }); /*------------------------- * READ ONY ENDORSEMENT FORM *-------------------------*/ $scope.ReadOnlyEndormentForm = function(result, detail) { $("#endorsementForm").find("input, select, textarea, .btn_lov") .prop("disabled", true) /*.not(".readonly-proof").prop("disabled", result)*/; /*------------------------- * Endorsement Form Global *-----------------------*/ $("#endorsementForm").find("input, select, textarea, .btn_lov").not(".readonly-proof") .prop("disabled", result); /*------------------------- * Endorsement Form Details *------------------------*/ $("#endorsmentDetail").find(".viewonly-proof").prop("disabled", detail); /*----------------------------------------------------------- * REINSTATEMENT ENDORSEMENT EFFECTIVE DATE ENABLED FOR MOTOR *---------------------------------------------------------*/ $("#END_EFCTV_DATE").prop("disabled", !(($("#POLH_CLASS_CODE").val() == "6000") && ($("#END_FLAG").val() == "RI"))); }; /*---------------------- * TOTAL DAYS ENDORSEMENT *----------------------*/ $scope.totalDaysEndorsement = function() { return parseFloat(u.totalDays($("#END_TERM_DATE").val(), $("#END_EFCTV_DATE").val()) || 0) || parseInt($("#POLH_POL_DAYS").val() || 0) || 0; } /*------------------- * Policy Dates Blur *-----------------*/ $("#POLH_POL_START_DATE, #POLH_POL_END_DATE").blur(async function() { /*---------------------------------- * GET THE POLICY HEADER DATA RECORD *----------------------------------*/ const product = u.parse_form("#polheaderForm") || {}; if (product.POLH_TXN_STATE === "E") { /*---------------------------------- * GET THE LATEST ENDORSEMENT RECORD *----------------------------------*/ let endorsements = u.get_grid_data(u.getGlobal("udwEndsmntGrid", true)) || []; let latestEndorsement = endorsements .Where(v => v.END_NO == endorsements.Max(x => parseFloat(x.END_NO))) .FirstOrDefault() || {}; if (latestEndorsement.END_FLAG === "PP") { let policyGrid = u.getGlobal("udwPolSearchGrid"); let result = u.getGlobal("getSelTransaction")(policyGrid); //let totalDays = parseFloat(u.totalDays(product.POLH_POL_START_DATE, result.StartDate) || 0); //let totalDaysStartDateCheck = parseFloat(u.totalDays(product.POLH_POL_START_DATE, result.StartDate || new Date()) || 0); //console.log(totalDaysStartDateCheck); //prevent date change if policy has started or ended. if (!u.dateBefore(u.get_datetime(), $("#POLH_POL_START_DATE").val()) || u.dateAfter((u.get_datetime(), $("#POLH_POL_END_DATE").val()))) { $("#POLH_POL_START_DATE").val(u.datetimeFormat(result.StartDate)); $("#POLH_POL_END_DATE").val(u.datetimeFormat(result.EndDate)); u.growl_warning("Date cannot be change during or after the end of the policy date."); } else u.growl_info("Start and end dates for policy have changed."); } } let ClassCode = $("#POLH_CLASS_CODE").val(); if (!ClassCode.length) { $("#POLH_POL_START_DATE").val(""); $("#POLH_POL_END_DATE").val(""); $("#POLH_POL_UW_YEAR").val(""); $("#POLH_POL_DAYS").val(""); return u.growl_warning("Class code is empty!!"); }; switch (ClassCode) { case "1000": //PA case "9000": //TRAVEL case "3000": //FIRE case "6000": //MOTOR case "1200": //OILGAS { if ($("#isPvtPolicy").val() === "true") { $scope.fxnPolPeriodDays(); return; } /*--------------------- * EXCLUDING HOMEOWNERS *-------------------**/ if ($("#POLH_SUB_CLASS_CODE").val() !== "3004" && $("#POLH_SUB_CLASS_CODE").val() !== "3007") { /*-------------------------------------------------------- * CHECK TO SELECT IF SP OR PR BASE ON THE REMAINING DAYS *------------------------------------------------------**/ let DaysCheck = ($("#POLH_POL_DAYS").val() < 365) /*&& ($("#POLH_TXN_STATE").val() === "E")*/; /*-------------------- * STRICTLY FOR MOTOR *-------------------**/ (ClassCode == "6000") ? $("#POLH_PREM_BASIS").prop("disabled", DaysCheck) .val(DaysCheck ? "SP" : ($("#POLH_PREM_BASIS").val())) : null; u.getGlobalStatic("PolicyPeriodDays")(); await u.getGlobalStatic("RecalculateFill")(); await u.getGlobalStatic("EndorsementPremiumRecalculate")(); /** * RETRO DATE **/ // if (u.dateBefore(u.get_date($("#POLH_POL_START_DATE").val()), u.get_date(u.get_date()))) { if (u.dateBefore($("#POLH_POL_START_DATE").val(), u.get_date())) { $("#POLH_POL_RETRO_DATE").val(""); u.modalInfo("Kindly provide the retroactive date for the policy"); //$("#retroDateLabel").addClass("required"); //$("#POLH_POL_RETRO_DATE").attr("required", "required"); //$("#POLH_POL_RETRO_DATE").prop("readonly", false); } else { $("#POLH_POL_RETRO_DATE").val($("#POLH_POL_START_DATE").val()); //$("#POLH_POL_RETRO_DATE").prop("required", false); //$("#POLH_POL_RETRO_DATE").attr("readonly", "readonly"); //$("#retroDateLabel").removeClass("required"); } } else { $scope.fxnPolPeriodDays(); } } break; //case "2000": // $scope.fxnPolPeriodDays(); // $("#POLH_POL_DAYS").trigger("blur"); // break; default: $scope.fxnPolPeriodDays(); //$("#POLH_POL_DAYS").trigger("blur"); break; case "7000": // BONDS $scope.fxnPolPeriodDays(); //if ($("#POLH_SUB_CLASS_CODE").val() === "7001") { // if (!u.grid_empty(u.getGlobal("bondRiskGrid"))) { // var bondRisk = u.get_grid_data(u.getGlobal("bondRiskGrid"))[0]; // //var validityPeriod = parseInt(u.getGlobal("bondRiskGrid") // // .jqGrid("getCell", u.getSelRow(u.getGlobal("bondRiskGrid")), "BOND_VALIDITY_PERIOD")); // var validityPeriod = parseInt(bondRisk.BOND_VALIDITY_PERIOD); // //var oldEndDate = u.getGlobal("bondRiskGrid") // // .jqGrid("getCell", u.getSelRow(u.getGlobal("bondRiskGrid")), "BOND_END_DATE"); // var oldEndDate = bondRisk.BOND_END_DATE; // var newEndDate = $("#POLH_POL_END_DATE").val(); // var totalDays = 0; // if (u.dateBefore(newEndDate, oldEndDate)) { // // reduce validity period // totalDays = parseInt(u.totalDays(oldEndDate, newEndDate) + 1); // validityPeriod -= totalDays; // } else { // //increase validity period // totalDays = parseInt(u.totalDays(newEndDate, oldEndDate) + 1); // validityPeriod += totalDays; // } // u.setGridColumn(u.getGlobal("bondRiskGrid"), // { // "BOND_VALIDITY_PERIOD": validityPeriod.toFixed(0) // }); // } //} //$("#POLH_POL_DAYS").trigger("blur"); break; } }); /*-------------------------------- * Recalculate Endorsement Premium *-------------------------------*/ $("#btn_premium_recalculate").click(async function() { let ClassCode = $("#POLH_CLASS_CODE").val(); switch (ClassCode) { case "1000": //PA case "9000": //TRAVEL case "3000": //FIRE case "6000": //MOTOR { if ($("#POLH_SUB_CLASS_CODE").val() !== "3004" && $("#POLH_SUB_CLASS_CODE").val() !== "3007") { //NOT ONLY ENDORSEMENT await u.getGlobalStatic("EndorsementPremiumRecalculate")(); } } break; default: //console.log("Not Yet Implemented"); break; } }); /*-------------------- * Policy Premium Basis *--------------------*/ $("#POLH_PREM_BASIS").change(async function() { let classCode = $("#POLH_CLASS_CODE").val(); switch (classCode) { case "1000": //PA case "1200": //OILGAS { await u.getGlobalStatic("RecalculateFill")(); await u.getGlobalStatic("EndorsementPremiumRecalculate")(); } break; default: { if ($(this).val() === "SP") { var x = u.getGlobal("shortPeriods"); if (u.getGlobal("shortPeriods").length <= 0) { var response = await $scope.getShortPeriods(); if (response) { if (!u.getGlobal("shortPeriods") .Any(s => s.days === parseInt($("#POLH_POL_DAYS").val()))) { $("#POLH_PREM_BASIS").val(""); return u.modalInfo("Short period not setup for the selected number of days"); } } else { if ($("#POLH_CLASS_CODE").val() != "6000") { return u.modalInfo( "Short period information not found. Please contact your admin."); } } } else { //console.log(u.getGlobal("shortPeriods")); if (!u.getGlobal("shortPeriods") .Any(s => s.days === parseInt($("#POLH_POL_DAYS").val()))) { $("#POLH_PREM_BASIS").val(""); return u.modalInfo("Short period not setup for the selected number of days"); } } } } break; } }); /*------------------------ * Policy Sub Class Change *-----------------------*/ $("#POLH_SUB_CLASS_CODE").change(async function() { let classCode = $("#POLH_CLASS_CODE").val(); let subClassCode = $("#POLH_SUB_CLASS_CODE").val(); switch (classCode) { case "1000": //PA case "3000": //FIRE { await u.getGlobalStatic("RecalculateFill")(); } break; default: break; } /*-------------------- * SUB PRODUCT DETAILS *-------------------*/ s.getSubProduct(subClassCode, function(result) { result = (typeof (result) === "string" ? JSON.parse(result || "{}") : result) || {}; if (Object.keys(result).length) { u.setGlobal("productDetails", result); } }); s.get_product($("#POLH_SUB_CLASS_CODE").val(), function(response) { if (!jQuery.isEmptyObject(response)) { u.setGlobal("productData", response.Product); // add the default documents... if (u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION === null || u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.length === 0 || u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.length === undefined) { if (response.Documents) { let document = {}; let grid = u.getGlobal("udwPolDocsGrid"); u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); for (let i in response.Documents) { let record = {}; record.PW_NAME = response.Documents[i].MM_NAME; record.PW_CODE = response.Documents[i].MM_CODE; record.PW_TEMPLATE = response.Documents[i].MM_TEMPLATE; record.PW_CRTE_BY = u.getUserCode(); record.PW_STATUS = "A"; document[i] = record; grid.addRowData(undefined, record); } } // set up checkList if (response.CheckList) { $scope.setupDocumentation(response.CheckList); } } } $scope.getShortPeriods(); }); }); /*------------------------------ * ENDORSEMENT FEES CHANGE EVENT *----------------------------*/ $("#END_FEE_FC").change(function() { let value = $("#END_FEE_FC").val() || 0; let currencyRate = $("#POLH_CURRENCY_RATE").val(); let EndFeeBc = parseFloat(parseFloat(value || 0) * parseFloat(currencyRate || 0)).toFixed(2); $("#END_FEE").val(EndFeeBc); $("#END_FEE_FC").val(value); }); /*---------------------------------------- * ENDORSEMENT EFFECTIVE DATE BLUR EVENT *---------------------------------------*/ $("#END_EFCTV_DATE").blur(function() { /*------------------------------------------ * CHECKS IF DATES FITS WITHIN CONFIRNEDMENT *-----------------------------------------*/ let endEfctvDate = $("#END_EFCTV_DATE").val(); let totalDaysEnd = parseFloat(u.totalDays($("#POLH_POL_END_DATE").val(), endEfctvDate) || 0); let totalDaysStart = parseFloat(u.totalDays(endEfctvDate, $("#POLH_POL_START_DATE").val()) || 0); if (totalDaysEnd < 0) { $("#END_EFCTV_DATE").val(""); return u.growl_warning("Endorsement effective date cannot be more than Policy End date"); } if (totalDaysStart < 0) { $("#END_EFCTV_DATE").val(""); return u.growl_warning("Endorsement effective date cannot be less than Policy Start date"); } /*------------------------------------------ * CHECKS IF DATES FITS WITHIN CONFIRNEDMENT *-----------------------------------------*/ let endorsementFlag = $("#END_FLAG").val(); switch (endorsementFlag) { case "RI": { let endTermDate = $("#END_TERM_DATE").val(); /*------------------ * ENDORSEMENT GRID *-----------------*/ let endorsementGrid = u.getGlobal("udwEndsmntGrid"); let endorsementGridData = u.get_grid_data(endorsementGrid) || []; /*--------------------------- * LAST SUSPENDED ENDORSEMENT *--------------------------*/ let lastSuspendedEndorsment = u.getGlobal("LastSuspendedEndorsement")(endorsementGridData); let polSusFromDate = lastSuspendedEndorsment.END_EFCTV_DATE || $("#POLH_SUS_FROM_DATE").val(); let polSusToDate = lastSuspendedEndorsment.END_TERM_DATE || $("#POLH_SUS_TO_DATE").val(); //let polSusDays = parseFloat(u.totalDays(polSusToDate, polSusFromDate) || 0); //let polSusDays = parseFloat(u.totalDays(endEfctvDate, polSusFromDate) || 0); //let endTermDate = u.dateFastForward(endEfctvDate, polSusDays, "d"); if (u.dateBefore(endEfctvDate, polSusToDate)) { let polSusDays = parseFloat(u.totalDays(endEfctvDate, polSusFromDate) || 0); //endTermDate = u.dateFastForward(policyEndDate, polSusDays, "d"); endTermDate = u.dateFastForward(polSusToDate, polSusDays, "d"); } else { /*--------------- * POLICY EXPIRED *--------------*/ let polSusDays = parseFloat(u.totalDays(polSusToDate, polSusFromDate) || 0); endTermDate = u.dateFastForward(endEfctvDate, polSusDays, "d"); } $("#END_EFCTV_DATE").val(endEfctvDate); $("#END_TERM_DATE").val(endTermDate); $("#END_TOTAL_DAYS").val($scope.totalDaysEndorsement()); } break; case "TS": { let eTermDate = $("#END_TERM_DATE").val(); let polSusdays = parseFloat(u.totalDays(eTermDate, endEfctvDate) || 0); $("#END_TOTAL_DAYS").val(polSusdays); //let eSDate = $("#POLH_POL_START_DATE").val(); //let totalMonths = u.totalMonths(endEfctvDate, eSDate); //if ((totalMonths > 3)) { // $("#END_EFCTV_DATE").val(eSDate); // u.growl_warning("Policy can only be suspended for up to 3 months!!!"); //}; } break; default: break; }; $("#PolicyEndorsementDateChangeNoticationModal").modal(); }); /*----------------------------------------------------------- * ENDORSEMENT ASIGNMENT PERIOD DATE VALIDATION CHECK *---------------------------------------------------------*/ $(`#startDate, #dueDate`).on("blur", function() { let totalDays = parseFloat(u.totalDays($("#dueDate").val(), $("#startDate").val()) || 0); if (totalDays < 0) { u.growl_warning("End date cannot be less than start date"); $(this).val(""); } }); /*----------------------------- * Initialize tooltip component *----------------------------*/ let tooltipTemplete = ``; let option = { delay: { show: 500, hide: 300 }, template: tooltipTemplete }; $('[data-toggle="tooltip"]').tooltip(option); /*----------------------------------------------------------- * COINSURANCE LEADER FUNCTIONALITY *----------------------------------------------------------*/ $("#btnCoInsLeader").on("click", function() { let classCode = $("#POLH_CLASS_CODE").val(); switch (classCode) { case "1000": //PA case "3000": //FIRE case "6000": //MOTOR case "1200": //OILGAS case "5000": //MARINE if (u.field_empty("#POLH_INS_SOURCE")) { u.growl_warning("Please select an insurance source"); } else { //if (u.grid_empty($scope.location_grid)) return u.growl_info("Please enter location details first"); $("#textCoinsMember").text("Co-Insurance Leader Details"); $("#CoInsLeaderModal").modal(); } break; default: { const grid = u.getGlobal("udwCoInsLdrGrid"); if (!u.grid_empty(grid)) { var data = u.get_grid_data(grid) || []; if (data.length) { u.fill_form(data[0], "#CoinsLeaderForm"); facOutwardCal(); } } $("#CoInsLeaderModal").modal(); } break; } }); /*----------------------------------- * FACULTATIVE INWARD FUNCTIONALITY *---------------------------------*/ $("#btnCoInsMember").on("click", function() { let classCode = $("#POLH_CLASS_CODE").val(); switch (classCode) { case "1000": //PA case "3000": //FIRE case "6000": //MOTOR case "1200": //OILGAS case "5000": //MARINE if (u.field_empty("#POLH_INS_SOURCE")) { u.growl_warning("Please select an insurance source"); } else { $("#textCoinsMember").text("Co-Insurance Details"); u.form_reset("#facInwardForm"); const product = u.parse_form("#polheaderForm") || {}; u.fill_form({ FINW_SI_FC: product.POLH_POL_SI_FC || 0, FINW_SI_BC: product.POLH_POL_SI_BC || 0, FINW_PREM_FC: parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0), FINW_PREM_BC: parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0), } || {}, "#facInwardForm", false); $("#MemberIwardModal").modal(); } break; default: { if ($("#POLH_INS_SOURCE").val() != "COM") return u.growl_info("Please select Co-Insurance Member insurance source"); if ($("#POLH_POL_SI_FC").val() === "" || $("#POLH_POL_PREM_FC").val() === "") return u.growl_info("Please add at least on risk to the policy"); $("#FINW_ORIG_SI_FC").val($("#POLH_POL_SI_FC").val()); $("#FINW_ORIG_SI_BC").val($("#POLH_POL_SI_BC").val()); $("#FINW_ORIG_PREM_FC").val($("#POLH_POL_PREM_FC").val()); $("#FINW_ORIG_PREM_BC").val($("#POLH_POL_PREM_BC").val()); if (!u.grid_empty(u.getGlobal("udwFacInwGrid"))) { let data = u.get_grid_data(u.getGlobal("udwFacInwGrid")); u.fill_form(data, "#facInwardForm"); } $("#MemberIwardModal").modal(); const message = "Co-Insurance Details"; $("#textCoinsMember").text(message); } break; } }); /*----------------------------------- * MOTOR POLICY PREMIUM CALCULATION *----------------------------------*/ $scope.SumFacInwardAmounts = function() { //Declare variables var facGrossPremFc = 0; var facGrossPremBc = 0; var facSifc = 0; var facSibc = 0; //const polgrid = $scope.grdfacInward_grid; const polgrid = u.getGlobal("udwFacInwGrid"); //const result = u.get_grid_data(polgrid); const polrowIds = polgrid.jqGrid("getDataIDs"); // iterate through the rows and check if it exists each of them for (var i = 0, len = polrowIds.length; i < len; i++) { const currRow = polrowIds[i]; // Sum risk level Amounts for Policy Level Amounts facSifc += parseFloat(polgrid.jqGrid("getCell", currRow, "FINW_SI_FC")); facSibc += parseFloat(polgrid.jqGrid("getCell", currRow, "FINW_SI_BC")); facGrossPremFc += parseFloat(polgrid.jqGrid("getCell", currRow, "FINW_PREM_FC")); facGrossPremBc += parseFloat(polgrid.jqGrid("getCell", currRow, "FINW_PREM_BC")); } $("#POLH_COINS_SI_FC").val(facSifc); $("#POLH_COINS_SI_BC").val(facSibc); $("#POLH_COINS_PREM_FC").val(facGrossPremFc); $("#POLH_COINS_PREM_BC").val(facGrossPremBc); }; /*--------------------------------- * COINSURANCE MEMBER FUNCTIONALITY *---------------------------------*/ $("#btnFACInward").on("click", function() { if ($("#POLH_INS_SOURCE").val() != "FIN") return u.growl_info("Please select FAC Inward insurance source"); if ($("#POLH_POL_SI_FC").val() === "" || $("#POLH_POL_PREM_FC").val() === "") return u.growl_warning("Please add at least on risk to the policy"); if (u.field_empty("#POLH_INS_SOURCE")) { u.growl_warning("Please select an insurance source"); } else { $("#textCoinsMember").text("FAC Inward Details"); u.form_reset("#facInwardForm"); const product = u.parse_form("#polheaderForm") || {}; u.fill_form({ FINW_SI_FC: product.POLH_POL_SI_FC || 0, FINW_SI_BC: product.POLH_POL_SI_BC || 0, FINW_PREM_FC: parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0), FINW_PREM_BC: parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0), } || {}, "#facInwardForm", false); $("#MemberIwardModal").modal(); } }); /*----------------------------------- * Fac Buttons enable/disable *----------------------------------*/ $("#POLH_INS_SOURCE").change(function() { u.getGlobal("InsView")($("#POLH_INS_SOURCE").val()); }); /* Fac Inward Calculations * ---------------- * -----------------*/ //document.getElementById("FINW_SHARE_PERC").addEventListener("focusout", facInwardCal); //document.getElementById("FINW_COMM_PERC").addEventListener("focusout", function () { // if (parseFloat($("#FINW_COMM_PERC").val()) > 100) { // $("#FINW_COMM_PERC").val(""); // return u.growl_warning("commission cannot exceed 100"); // } // facInwardCal(); //} //); function facInwardCal() { var sharePremFc = ""; var sharePremBc = ""; var shareSifc = ""; var shareSibc = ""; var commPercFc = ""; var commPercBc = ""; if (u.field_empty("#FINW_SHARE_PERC") || u.field_empty("#FINW_COMM_PERC")) { u.growl_warning("FAC Share % or Commission % is null! "); } shareSifc = ($("#FINW_SHARE_PERC").val() / 100) * $("#FINW_ORIG_SI_FC").val(); shareSibc = ($("#FINW_SHARE_PERC").val() / 100) * $("#FINW_ORIG_SI_BC").val(); sharePremFc = ($("#FINW_SHARE_PERC").val() / 100) * $("#FINW_ORIG_PREM_FC").val(); sharePremBc = ($("#FINW_SHARE_PERC").val() / 100) * $("#FINW_ORIG_PREM_BC").val(); commPercFc = ($("#FINW_COMM_PERC").val() / 100) * sharePremFc; commPercBc = ($("#FINW_COMM_PERC").val() / 100) * sharePremBc; $("#FINW_SI_FC").val(shareSifc.toFixed(2)); $("#FINW_SI_BC").val(shareSibc.toFixed(2)); $("#FINW_PREM_FC").val(sharePremFc.toFixed(2)); $("#FINW_PREM_BC").val(sharePremBc.toFixed(2)); $("#FINW_COMM_FC").val(commPercFc.toFixed(2)); $("#FINW_COMM_BC").val(commPercBc.toFixed(2)); }; function facOutwardCal() { var sharePremFc = ""; var sharePremBc = ""; var shareSifc = ""; var shareSibc = ""; var memberSiFc = ""; var memberSiBc = ""; var memberPremFc = ""; var memberPremBc = ""; var memCommPercFc = ""; var memCommPercBc = ""; if (!u.field_empty("#CIL_OUR_PERC")) { //policy si var policySiFc = parseFloat($("#POLH_POL_SI_FC").val()); var policySiBc = parseFloat($("#POLH_POL_SI_BC").val()); //policy premium var policyPremiumFc = parseFloat($("#POLH_POL_PREM_FC").val()); var policyPremiumBc = parseFloat($("#POLH_POL_PREM_BC").val()); //obtain leader share const leaderShare = parseFloat($("#CIL_OUR_PERC").val()); $("#CIL_SHARE_SI_FC").val((policySiFc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_SI_BC").val((policySiBc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_PREM_FC").val((policyPremiumFc * (leaderShare / 100)).toFixed(2)); $("#CIL_SHARE_PREM_BC").val((policyPremiumBc * (leaderShare / 100)).toFixed(2)); $("#CIL_MEMBER_PERC").val(100 - leaderShare); //CIL_SHARE_SI_FC shareSifc = (($("#CIL_MEMBER_PERC").val() / 100) * policySiFc); shareSibc = (($("#CIL_MEMBER_PERC").val() / 100) * policySiBc); //sharePremFc = (($("#CIL_MEMBER_PERC").val() / 100) * $("#CIL_SHARE_PREM_FC").val()); sharePremFc = (($("#CIL_MEMBER_PERC").val() / 100) * policyPremiumFc); sharePremBc = (($("#CIL_MEMBER_PERC").val() / 100) * policyPremiumBc); //memberSiFc = (($("#CIL_COMP_PERC").val() / 100) * $("#CIL_SHARE_SI_FC").val()); memberSiFc = (($("#CIL_COMP_PERC").val() / 100) * policySiFc); memberSiBc = (($("#CIL_COMP_PERC").val() / 100) * policySiBc); //memberPremFc = (($("#CIL_COMP_PERC").val() / 100) * $("#CIL_SHARE_PREM_FC").val()); memberPremFc = (($("#CIL_COMP_PERC").val() / 100) * policyPremiumFc); memberPremBc = (($("#CIL_COMP_PERC").val() / 100) * policyPremiumBc); memCommPercFc = (($("#CIL_COMP_COMM_PERC").val() / 100) * memberPremFc); memCommPercBc = (($("#CIL_COMP_COMM_PERC").val() / 100) * memberPremBc); $("#CIL_MEMBERS_SI_FC").val(shareSifc.toFixed(2)); $("#CIL_MEMBERS_SI_BC").val(shareSibc.toFixed(2)); $("#CIL_MEMBERS_PREM_FC").val(sharePremFc.toFixed(2)); $("#CIL_MEMBERS_PREM_BC").val(sharePremBc.toFixed(2)); $("#CIL_COMP_SI_FC").val(memberSiFc.toFixed(2)); $("#CIL_COMP_SI_BC").val(memberSiBc.toFixed(2)); $("#CIL_COMP_PREM_FC").val(memberPremFc.toFixed(2)); $("#CIL_COMP_PREM_BC").val(memberPremBc.toFixed(2)); $("#CIL_COMP_COMM_FC").val(memCommPercFc.toFixed(2)); $("#CIL_COMP_COMM_BC").val(memCommPercBc.toFixed(2)); } } /*------------------------------------------------------- * FACULCATIVE INWARDS & COINSURANCE MEMBER FUNCTIONALITY *------------------------------------------------------*/ $("#FINW_SHARE_PERC, #FINW_COMM_PERC").blur(function() { let grid = u.getGlobal("udwFacInwGrid"); /*-------------------- * Product header form *------------------**/ const product = u.parse_form("#polheaderForm") || {}; /*------------------------------ * Co Insurance Member Head form *----------------------------**/ let formData = u.parse_form("#facInwardForm"); formData.FINW_SHARE_PERC = parseFloat(formData.FINW_SHARE_PERC || 0); /* * ENDORSEMENT CHECKS */ //let endorsements = u.get_grid_data(u.getGlobal("udwEndsmntGrid")); //let endorsementData = endorsements.FirstOrDefault(x => parseInt(x.END_NO) === parseInt($("#POLH_END_NO").val())); /*----------------------------------------- * Co Insurance Member selected grid record *----------------------------------------**/ const rowId = u.getSelRow(grid); let record = rowId ? u.getRow(rowId, grid) : {}; record.INS_RI_FAC_INW_COMPANY = (typeof (record.INS_RI_FAC_INW_COMPANY) === "string" ? u.parseJson(record.INS_RI_FAC_INW_COMPANY || "[]") : record.INS_RI_FAC_INW_COMPANY) || []; if (!record.INS_RI_FAC_INW_COMPANY.Any()) { u.form_reset("#facInwardForm"); formData.INS_SOURCE = product.POLH_INS_SOURCE; formData.FINW_SI_FC = (parseFloat(product.POLH_POL_SI_FC)).toFixed(2) || 0; formData.FINW_SI_BC = (parseFloat(product.POLH_POL_SI_BC)).toFixed(2) || 0; formData.FINW_PREM_FC = /*endorsements.Any() ? (endorsementData.END_PREM_DIFF_FC || 0)*/ (parseFloat(product.POLH_POL_PREM_FC || 0)).toFixed(2) - parseFloat(product.POLH_FEE_FC || 0); formData.FINW_PREM_BC = /*endorsements.Any() ? (endorsementData.END_PREM_DIFF_BC || 0)*/ (parseFloat(product.POLH_POL_PREM_BC || 0)).toFixed(2) - parseFloat(product.POLH_FEE_BC || 0); formData.INS_RI_FAC_INW_COMPANY = []; u.getGlobal("InsuranceSourse")(formData) || {}; u.fill_form(formData, "#facInwardForm", false); return; } u.modal_confirmation("'Share and Commission' has already been set would you like to modify them?", function() { /*------------------------------------------------------------------------ * get the total percentage already shared based on the member percentage.. *-----------------------------------------------------------------------**/ let SumOfShares = record.INS_RI_FAC_INW_COMPANY.Sum(x => parseFloat(x.FINW_PAP_SHARE_PERC || 0)) || 0; /*----------------------------------------------------------------------- * make sure 'our share value and participants value does not exceede 100% *---------------------------------------------------------------------**/ if ((formData.FINW_SHARE_PERC + SumOfShares) > 100) { u.growl_warning(`Entered percentage cannot exceed ${100 - SumOfShares}%`); u.form_reset("#facInwardForm"); } else { formData.INS_SOURCE = product.POLH_INS_SOURCE; formData.FINW_SI_FC = product.POLH_POL_SI_FC || 0; formData.FINW_SI_BC = product.POLH_POL_SI_BC || 0; formData.FINW_PREM_FC = /* endorsements.Any() ? (endorsementData.END_PREM_DIFF_FC || 0)*/ parseFloat(product.POLH_POL_PREM_FC || 0) - parseFloat(product.POLH_FEE_FC || 0); formData.FINW_PREM_BC = /*endorsements.Any() ? (endorsementData.END_PREM_DIFF_BC || 0)*/ parseFloat(product.POLH_POL_PREM_BC || 0) - parseFloat(product.POLH_FEE_BC || 0); formData.INS_RI_FAC_INW_COMPANY = []; u.getGlobal("InsuranceSourse")(formData) || {}; u.fill_form(formData, "#facInwardForm", false); } }, function() { u.fill_form(record, "#facInwardForm", false); }); }); u.setGlobal("facInEndorsementUpdate", function() { if ($("#POLH_INS_SOURCE").val() === "DIR" || $("#POLH_INS_SOURCE").val() === "COL") return; let coInsData = u.get_grid_data(u.getGlobal("udwFacInwGrid")); const product = u.parse_form("#polheaderForm") || {}; coInsData.ForEach(c => { c.INS_SOURCE = product.POLH_INS_SOURCE; c.FINW_SI_FC = (parseFloat(product.POLH_POL_SI_FC)).toFixed(2) || 0; c.FINW_SI_BC = (parseFloat(product.POLH_POL_SI_BC)).toFixed(2) || 0; c.FINW_PREM_FC = (parseFloat(product.POLH_POL_PREM_FC || 0)).toFixed(2) - parseFloat(product.POLH_FEE_FC || 0); c.FINW_PREM_BC = (parseFloat(product.POLH_POL_PREM_BC || 0)).toFixed(2) - parseFloat(product.POLH_FEE_BC || 0); c.INS_RI_FAC_INW_COMPANY = u.parseJson(c.INS_RI_FAC_INW_COMPANY || "[]"); u.getGlobal("InsuranceSourse")(c); }); u.clear_grid_data(u.getGlobal("udwFacInwGrid")); u.grid_populate(u.getGlobal("udwFacInwGrid"), "", coInsData); }); $("#btn_add_MemberInward").on("click", function() { let grid = u.getGlobal("udwFacInwGrid"); /*---------------------------------------------- * cannot add more than one record to the grid.. *---------------------------------------------**/ if (!u.grid_empty(grid)) return u.growl_warning("Cannot Add New Header to grid, click update to update current Header."); if (u.form_validation("#facInwardForm")) { u.modal_confirmation("Are you sure you want to add RI FAC Inward Details to the grid?", function() { let data = u.get_grid_data(grid) || []; let formData = u.parse_form("#facInwardForm") || {}; if (data.Any(x => x.FINW_CEDANT_CODE === formData.FINW_CEDANT_CODE)) return u.growl_warning( `Record with code ${formData.FINW_CEDANT_CODE} already exists`); if (parseFloat(formData.FINW_PREM_FC) > parseFloat($("#POLH_POL_PREM_FC").val())) return u.growl_warning("FAC Inward Our Share Premium calculations are incorrect"); formData.FINW_STATUS = "U"; formData.FINW_CRTE_BY = u.getUserCode(); formData.FINW_CRTE_DATE = u.get_date(); grid.addRowData(formData.ID, formData); u.hide_confirm(); u.growl_success("Record successfully added to grid"); $("#facInwardForm .clearable").val(""); u.form_reset("#facInwardForm"); }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); $("#btn_update_MemberInward").on("click", function() { let grid = u.getGlobal("udwFacInwGrid"); if (u.grid_empty(grid)) return u.growl_info("Grid is empty"); if (u.form_validation("#facInwardForm")) { u.modal_confirmation("Are you sure you want to update the selected record?", function() { const rowId = u.getSelRow(grid); let data = rowId ? u.getRow(rowId, grid) : {}; let formData = u.parse_form("#facInwardForm"); if (data.FINW_CEDANT_CODE === formData.FINW_CEDANT_CODE) { /*-------------------- * Product header form *------------------**/ const product = u.parse_form("#polheaderForm") || {}; formData = { ...data, ...formData }; formData.INS_SOURCE = product.POLH_INS_SOURCE; formData.FINW_ORIG_SI_FC = product.POLH_POL_SI_FC || 0; formData.FINW_ORIG_SI_BC = product.POLH_POL_SI_BC || 0; formData.FINW_ORIG_PREM_FC = product.POLH_POL_PREM_FC || 0; formData.FINW_ORIG_PREM_BC = product.POLH_POL_PREM_BC || 0; formData.INS_RI_FAC_INW_COMPANY = (typeof (formData.INS_RI_FAC_INW_COMPANY) === "string" ? JSON.parse(formData.INS_RI_FAC_INW_COMPANY || "[]") : formData.INS_RI_FAC_INW_COMPANY) || []; u.getGlobal("InsuranceSourse")(formData) || {}; for (let i in formData) grid.jqGrid("setCell", rowId, i, formData[i]); u.hide_confirm(); u.growl_success("FAC Inward updated"); $("#facInwardForm .clearable").val(""); u.form_reset("#facInwardForm"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); $("#btn_remove_MemberInward").on("click", function() { let grid = u.getGlobal("udwFacInwGrid"); if (u.grid_empty(grid)) return u.growl_info("The grid is empty"); var rowId = grid.jqGrid("getGridParam", "selrow"); if (!rowId) return u.growl_info("Please select a record to remove."); var recordStatus = grid.jqGrid("getCell", rowId, "FINW_STATUS"); /*--------------------------------- * Display modal message *------------------------------*/ u.modal_confirmation("Are you sure you want to remove the Record?", function(e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "FINW_STATUS", "D"); $(`#${rowId}`, "#grdfacInward").css({ color: "red" }); u.hide_confirm(); u.hide_confirm( "Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdfacInward").css({ color: "black" }); grid.jqGrid("setCell", rowId, "FINW_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } $("#facInwardForm .clearable").val(""); u.form_reset("#facInwardForm"); }); }); $("#btn_Participant").click(function() { const grid = u.getGlobal("udwFacInwGrid"); if (u.grid_empty(grid)) return u.growl_info("Grid is empty!"); const selId = u.getSelRow(grid); if (selId /*== $("#RCOV_SYS_ID").val()*/) { u.form_reset("#InwardParticipantsForm"); u.clear_grid_data(u.getGlobal("udwInwdPartGrid")); const data = u.getRow(selId, grid); data.INS_RI_FAC_INW_COMPANY = (typeof (data.INS_RI_FAC_INW_COMPANY) == "string" ? JSON.parse(data.INS_RI_FAC_INW_COMPANY || "[]") : data.INS_RI_FAC_INW_COMPANY) || []; data.INS_RI_FAC_INW_COMPANY.ForEach(x => { u.getGlobal("udwInwdPartGrid").addRowData(x.FINW_PAP_CODE, x); }); $scope.coInsuranceDetails = data; $("#PartipantsModal").modal(); } else { u.growl_info("No FAC Detail selected, Please check and try again"); } }); $("#btn_facInward_Ok").click(function() { u.form_reset("#facInwardForm"); $("#MemberIwardModal").modal("hide"); }); /*------------------------------------------------------------------- * FACULCATIVE INWARDS & COINSURANCE MEMBER PARTICIPANT FUNCTIONALITY *------------------------------------------------------------------*/ $("#companyOk").click(function() { let grid = u.getGlobal("udwInwdPartGrid"); if (/*u.grid_empty(grid)*/ false) { $("#PartipantsModal").modal("hide"); } else { const result = u.get_grid_data(grid); $("#policyCalculationsModal").modal(); setTimeout(async function() { const rowId = u.getSelRow(u.getGlobal("udwFacInwGrid")); let record = rowId ? u.getRow(rowId, u.getGlobal("udwFacInwGrid")) : {}; /*------------------------------------ * THIS IS WHERE THE TRANSITION STARTS *----------------------------------*/ record.INS_RI_FAC_INW_COMPANY = (typeof (record.INS_RI_FAC_INW_COMPANY) === "string" ? u.parseJson(record.INS_RI_FAC_INW_COMPANY || "[]") : record.INS_RI_FAC_INW_COMPANY) || []; record.INS_RI_FAC_INW_COMPANY = record.INS_RI_FAC_INW_COMPANY.Where(d => d.FINW_PAP_STATUS === "X").ToList(); record.INS_RI_FAC_INW_COMPANY = [...result, ...record.INS_RI_FAC_INW_COMPANY]; for (let i in record) u.getGlobal("udwFacInwGrid").jqGrid("setCell", rowId, i, record[i]); u.form_reset("#InwardParticipantsForm"); u.clear_grid_data(grid); $("#PartipantsModal").modal("hide"); $("#policyCalculationsModal").modal("hide"); }, 500); }; }); $("#FINW_PAP_SHARE_PERC").blur(function() { const facGrid = u.getGlobal("udwFacInwGrid"); let selId = u.getSelRow(facGrid); let data = selId ? u.getRow(selId, facGrid) : {}; data.FINW_MEMBER_PERC = parseFloat(data.FINW_MEMBER_PERC || 0) || 0; data.FINW_ORIG_SI_FC = parseFloat(data.FINW_ORIG_SI_FC || 0) || 0; data.FINW_ORIG_SI_BC = parseFloat(data.FINW_ORIG_SI_BC || 0) || 0; data.FINW_ORIG_PREM_FC = parseFloat(data.FINW_ORIG_PREM_FC || 0) || 0; data.FINW_ORIG_PREM_BC = parseFloat(data.FINW_ORIG_PREM_BC || 0) || 0; let formData = u.parse_form("#InwardParticipantsForm"); formData.FINW_PAP_SHARE_PERC = parseFloat(formData.FINW_PAP_SHARE_PERC || 0) || 0; let grid = u.getGlobal("udwInwdPartGrid"); let record = u.get_grid_data(grid) || []; /*------------------------------------------------------------------------ * get the total percentage already shared based on the member percentage.. *-----------------------------------------------------------------------**/ let SumOfShares = record.Where(x => x.FINW_PAP_CODE !== formData.FINW_PAP_CODE) .Sum(x => parseFloat(x.FINW_PAP_SHARE_PERC || 0)) || 0; if (parseFloat(formData.FINW_PAP_SHARE_PERC + SumOfShares) > data.FINW_MEMBER_PERC) { formData.FINW_PAP_SHARE_PERC = 0; formData.FINW_PAP_SHARE_SI = 0; formData.FINW_PAP_SHARE_PREM = 0; u.growl_warning(`Share Percentage cannot be more than ${data.FINW_MEMBER_PERC}`); } else { formData.FINW_PAP_SHARE_SI = parseFloat(parseFloat(data.FINW_ORIG_SI_FC || 0) * parseFloat(formData.FINW_PAP_SHARE_PERC || 0) * 0.01) || 0; formData.FINW_PAP_SHARE_PREM = parseFloat(parseFloat(data.FINW_ORIG_PREM_FC || 0) * parseFloat(formData.FINW_PAP_SHARE_PERC || 0) * 0.01) || 0; }; u.fill_form(formData, "#InwardParticipantsForm", false); }); $("#btn_add_facInwardComp").on("click", function() { let grid = u.getGlobal("udwInwdPartGrid"); if (u.form_validation("#InwardParticipantsForm")) { let formData = u.parse_form("#InwardParticipantsForm"); if (formData.FINW_PAP_SHARE_PERC == 0) return u.growl_warning("Cannot be zero"); u.modal_confirmation("Are you sure you want to add record to the grid?", function() { let record = u.get_grid_data(grid) || []; formData.FINW_PAP_SHARE_PERC = parseFloat(formData.FINW_PAP_SHARE_PERC || 0); if (record.Any(x => x.FINW_PAP_CODE === formData.FINW_PAP_CODE)) return u.growl_warning(`Record with code ${formData.FINW_PAP_CODE} already exists`); let SumOfShares = record.Where(x => x.FINW_PAP_CODE !== formData.FINW_PAP_CODE) .Sum(x => parseFloat(x.FINW_PAP_SHARE_PERC || 0)) || 0; let data = u.getSelRow(u.getGlobal("udwFacInwGrid")) ? u.getRow(u.getSelRow(u.getGlobal("udwFacInwGrid")), u.getGlobal("udwFacInwGrid")) : {}; if (parseFloat(formData.FINW_PAP_SHARE_PERC + SumOfShares) > data.FINW_MEMBER_PERC) { return u.growl_warning(`Total member share exceed ${data.FINW_MEMBER_PERC}%`); } formData.FINW_PAP_STATUS = "U"; formData.FINW_PAP_CRTE_BY = u.getUserCode(); formData.FINW_PAP_CRTE_DATE = u.get_date(); u.getGlobal("udwInwdPartGrid").addRowData(formData.FINW_PAP_CODE, formData); u.hide_confirm(); u.growl_success("Record successfully added to grid"); u.form_reset("#InwardParticipantsForm"); }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); $("#btn_update_facInwardComp").on("click", function() { const grid = u.getGlobal("udwInwdPartGrid"); if (u.grid_empty(grid)) return u.growl_info("Grid is empty"); if (u.form_validation("#InwardParticipantsForm")) { let formData = u.parse_form("#InwardParticipantsForm"); if (formData.FINW_PAP_SHARE_PERC == 0) return u.growl_warning("Cannot be zero"); let record = u.get_grid_data(grid) || []; formData.FINW_PAP_SHARE_PERC = parseFloat(formData.FINW_PAP_SHARE_PERC || 0); let SumOfShares = record.Where(x => x.FINW_PAP_CODE !== formData.FINW_PAP_CODE) .Sum(x => parseFloat(x.FINW_PAP_SHARE_PERC || 0)) || 0; let data = u.getSelRow(u.getGlobal("udwFacInwGrid")) ? u.getRow(u.getSelRow(u.getGlobal("udwFacInwGrid")), u.getGlobal("udwFacInwGrid")) : {}; if (parseFloat(formData.FINW_PAP_SHARE_PERC + SumOfShares) > data.FINW_MEMBER_PERC) { return u.growl_warning(`Total member share exceed ${data.FINW_MEMBER_PERC}%`); } u.modal_confirmation("Are you sure you want to update the selected Record?", function() { const rowId = u.getSelRow(grid); let data = rowId ? u.getRow(rowId, grid) : {}; if (data.FINW_PAP_CODE == formData.FINW_PAP_CODE) { formData = { ...data, ...formData }; for (let i in formData) grid.jqGrid("setCell", rowId, i, formData[i]); grid.refresh(); u.hide_confirm(); u.growl_success("Record successfully updated"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); $("#btn_remove_facInwardComp").on("click", function() { if (u.grid_empty(u.getGlobal("udwInwdPartGrid"))) return u.growl_info("The grid is empty"); let grid = u.getGlobal("udwInwdPartGrid"); let rowId = grid.jqGrid("getGridParam", "selrow"); let recordStatus = grid.jqGrid("getCell", rowId, "FINW_PAP_STATUS"); /*--------------------------------- * Display modal message *------------------------------*/ u.modal_confirmation("Are you sure you want to remove the Record?", function(e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "FINW_PAP_STATUS", "D"); $(`#${rowId}`, "#grdInwdParticipants").css({ color: "red" }); u.hide_confirm(); u.hide_confirm( "Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdInwdParticipants").css({ color: "black" }); grid.jqGrid("setCell", rowId, "FINW_PAP_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } u.form_reset("#InwardParticipantsForm"); }); }); $("#FINW_PAP_SHARE_PERC1").blur(function() { let share = parseFloat($("#FINW_PAP_SHARE_PERC").val()); let sharablePercentage = (100 - parseFloat($scope.coInsuranceDetails.FINW_SHARE_PERC)); if (share <= 0) { $("#FINW_PAP_SHARE_PERC").val(""); return u.growl_warning("Share Percentage cannot be 0 or less"); } if (share > sharablePercentage) { $("#FINW_PAP_SHARE_PERC").val(""); return u.growl_warning(`Share Percentage cannot be more than ${sharablePercentage}`); } let calculatedSI = ((share / sharablePercentage) * parseFloat($scope.coInsuranceDetails.FINW_SI_FC)).toFixed(2); $("#FINW_PAP_SHARE_SI").val(calculatedSI); let calculatedPrem = ((share / sharablePercentage) * parseFloat($scope.coInsuranceDetails.FINW_PREM_FC)) .toFixed(2); $("#FINW_PAP_SHARE_PREM").val(calculatedPrem); }); $("#btn_update_facInwardComp1").on("click", function() { if (u.grid_empty(u.getGlobal("udwInwdPartGrid"))) return u.growl_info("FAC Inward Company grid is empty"); // make sure the update value does not make the shares exceed total share percentage.. let sharablePercentage = (100 - parseFloat($scope.coInsuranceDetails.FINW_SHARE_PERC)); const row_ids = u.getGlobal("udwInwdPartGrid").jqGrid("getDataIDs"); let ShareTally = 0; for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; let insurer = u.getGlobal("udwInwdPartGrid").jqGrid("getCell", currRow, "FINW_PAP_SHARE_PERC"); if (insurer !== $("#FINW_PAP_CODE").val()) { let cellSharePerc = u.getGlobal("udwInwdPartGrid") .jqGrid("getCell", currRow, "FINW_PAP_SHARE_PERC"); if (cellSharePerc) { ShareTally = ShareTally + parseFloat(cellSharePerc); } } } if ((ShareTally + parseFloat($("#FINW_PAP_SHARE_PERC").val())) > sharablePercentage) { return u.growl_warning(`Cannot Update to over${sharablePercentage - ShareTally}`); } if (u.form_validation("#facInwardForm")) { u.modal_confirmation("Are you sure you want to update the selected FAC Inward Company?", function() { const grid = u.getGlobal("udwInwdPartGrid"); const rowId = grid.jqGrid("getGridParam", "selrow"); const code = grid.jqGrid("getCell", rowId, "FINW_PAP_CODE"); if (code === $("#FINW_PAP_CODE").val()) { const data = u.parse_form("#InwardParticipantsForm"); for (let i in data) { grid.jqGrid("setCell", rowId, i, data[i]); } u.hide_confirm(); u.growl_success("FAC Inward Company updated"); u.form_reset("#InwardParticipantsForm"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } }); } }); $("#btn_add_facInwardComp1").on("click", function() { if (u.form_validation("#InwardParticipantsForm")) { u.modal_confirmation("Are you sure you want to add RI FAC Inward Company Details to the grid?", function() { const rowIds = u.getGlobal("udwInwdPartGrid").jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ const code = []; let ShareTally = 0; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ var cellValue = u.getGlobal("udwInwdPartGrid") .jqGrid("getCell", currRow, "FINW_PAP_CODE"); code.push(cellValue); // get the share percentages and tally them... let cellSharePerc = u.getGlobal("udwInwdPartGrid") .jqGrid("getCell", currRow, "FINW_PAP_SHARE_PERC"); if (cellSharePerc) { ShareTally = ShareTally + parseFloat(cellSharePerc); } } if (ShareTally > (100 - parseFloat($scope.coInsuranceDetails.FINW_SHARE_PERC))) { return u.growl_warning( `Total percentage share cannot exceed ${100 - parseFloat($scope.coInsuranceDetails.FINW_SHARE_PERC)}`); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ if ($.inArray($("#FINW_PAP_CODE").val(), code) < 0) { const formData = u.parse_form("#InwardParticipantsForm"); formData.FINW_PAP_STATUS = "U"; formData.FINW_PAP_CRTE_BY = u.getUserCode(); formData.FINW_PAP_CRTE_DATE = u.get_date(); u.getGlobal("udwInwdPartGrid").addRowData(formData.FINW_PAP_CODE, formData); u.hide_confirm(); u.growl_success("RI FAC Inward Company Details successfully added to grid"); u.form_reset("#InwardParticipantsForm"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); /*----------------------------------- * Coinsurance Leader Calculations *----------------------------------*/ $("#CIL_OUR_PERC").blur(function() { let grid = u.getGlobal("udwCoInsLdrGrid"); /*-------------------- * Product header form *------------------**/ const product = u.parse_form("#polheaderForm") || {}; /*------------------------------ * Co Insurance Leader Head form *----------------------------**/ let formData = u.parse_form("#CoinsLeaderForm"); formData.CIL_OUR_PERC = parseFloat(formData.CIL_OUR_PERC || 0); /*---------------------------------------------------------------------------------- * extract the data from the grid to validate entered percentage and make sure that * the entered percentage does and the ones already recorded does not exceed 100%.. *-------------------------------------------------------------------------------**/ let data = u.get_grid_data(grid) || []; if (!data.Any()) { u.form_reset("#CoinsLeaderForm"); formData.INS_SOURCE = product.POLH_INS_SOURCE; formData.CIL_POL_SI_FC = product.POLH_POL_SI_FC || 0; formData.CIL_POL_SI_BC = product.POLH_POL_SI_BC || 0; formData.CIL_POL_PREM_FC = product.POLH_POL_PREM_FC || 0; formData.CIL_POL_PREM_BC = product.POLH_POL_PREM_BC || 0; u.getGlobal("InsuranceSourse")(formData) || {}; u.fill_form(formData, "#CoinsLeaderForm", false); return; } u.modal_confirmation("'Our Share' has already been set would you like to modify it?", function() { /*----------------------------------------- * get the total percentage already shared.. *----------------------------------------**/ let SumOfShares = data.Sum(x => parseFloat(x.CIL_COMP_PERC || 0)) || 0; /*----------------------------------------------------------------------- * make sure 'our share value and participants value does not exceede 100% *---------------------------------------------------------------------**/ if ((formData.CIL_OUR_PERC + SumOfShares) > 100) { u.fill_form(data.FirstOrDefault(), "#CoinsLeaderForm", false); u.growl_warning(`Entered percentage cannot exceed ${100 - SumOfShares}%`); } else { data.ForEach(c => { c.CIL_OUR_PERC = formData.CIL_OUR_PERC || 0; c.INS_SOURCE = product.POLH_INS_SOURCE; c.CIL_POL_SI_FC = product.POLH_POL_SI_FC || 0; c.CIL_POL_SI_BC = product.POLH_POL_SI_BC || 0; c.CIL_POL_PREM_FC = product.POLH_POL_PREM_FC || 0; c.CIL_POL_PREM_BC = product.POLH_POL_PREM_BC || 0; u.getGlobal("InsuranceSourse")(c); }); u.clear_grid_data(grid); data.ForEach(w => { grid.addRowData(undefined, w); }); u.form_reset("#CoinsLeaderForm"); u.fill_form(data.FirstOrDefault(), "#CoinsLeaderForm", false); } }, function() { u.fill_form(data.FirstOrDefault(), "#CoinsLeaderForm", false); }); }); $("#CIL_COMP_PERC, #CIL_COMP_COMM_PERC").blur(function() { /*-------------------- * Product header form *------------------**/ const product = u.parse_form("#polheaderForm") || {}; /*------------------------------ * Co Insurance Leader Head form *----------------------------**/ let formData = u.parse_form("#CoinsLeaderForm") || {}; let data = u.parse_form("#CoInsuranceLeaderParticipantsForm") || {}; formData = { ...formData, ...data }; formData.CIL_OUR_PERC = parseFloat(formData.CIL_OUR_PERC || 0); formData.INS_SOURCE = product.POLH_INS_SOURCE; formData.CIL_POL_SI_FC = product.POLH_POL_SI_FC || 0; formData.CIL_POL_SI_BC = product.POLH_POL_SI_BC || 0; formData.CIL_POL_PREM_FC = product.POLH_POL_PREM_FC || 0; formData.CIL_POL_PREM_BC = product.POLH_POL_PREM_BC || 0; u.getGlobal("InsuranceSourse")(formData) || {}; u.fill_form(formData, "#CoInsuranceLeaderParticipantsForm", false); }); /*-------------------------------------------------- * Add function to add records to Co-Insurance Leader *------------------------------------------------*/ $("#btn_add_CoinsLeader").on("click", function() { if (u.form_validation("#CoinsLeaderForm")) { u.modal_confirmation("Are you sure you want to add RI Co-Insurance Leader to the grid?", function() { const rowIds = u.getGlobal("udwCoInsLdrGrid").jqGrid("getDataIDs"); const enumerable = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")); const totalPercentage = enumerable.Sum(l => parseFloat(l.CIL_COMP_PERC)); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ const code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ for (var i = 0, len = rowIds.length; i < len; i++) { const currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ var cellValue = u.getGlobal("udwCoInsLdrGrid") .jqGrid("getCell", currRow, "CIL_COMP_CODE"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ if ($.inArray($("#CIL_COMP_CODE").val(), code) < 0) { var LeaderDetails = u.parse_form("#CoInsuranceLeaderParticipantsForm"); var participants = u.parse_form("#CoinsLeaderForm"); const formData = { ...LeaderDetails, ...participants }; if (totalPercentage + parseFloat(formData.CIL_COMP_PERC) > parseFloat($("#CIL_MEMBER_PERC").val())) { return u.growl_warning( `Add share percentage will exceed member share of ${$("#CIL_MEMBER_PERC") .val() }%`); } formData.CIL_STATUS = "U"; formData.CIL_CRTE_BY = u.getUserCode(); formData.CIL_CRTE_DATE = u.get_date(); u.getGlobal("udwCoInsLdrGrid").addRowData(undefined, formData); u.hide_confirm(); u.growl_success("Co-Insurance leader details successfully added"); $("#CoinsLeaderForm .clearable").val(""); //u.form_reset("#CoinsLeaderForm"); u.form_reset("#CoInsuranceLeaderParticipantsForm"); } else { u.hide_confirm(); u.growl_warning( `Coinsurance company exists, you cannot add same Code : ${cellValue}`); } }); } else { u.growl_error("Please fill out the fields that are marked red"); } }); /*----------------------------------------- * Co-Insurance Leader Edit/Update Function *----------------------------------------*/ $("#btn_update_CoinsLeader").on("click", function() { if (u.grid_empty(u.getGlobal("udwCoInsLdrGrid"))) return u.growl_info("Co-Insurance Leader grid is empty"); if (u.form_validation("#CoinsLeaderForm")) { u.modal_confirmation("Are you sure you want to update the selected Co-Insurance Leader?", function() { const grid = u.getGlobal("udwCoInsLdrGrid"); const rowId = u.getSelRow(grid); let result = rowId ? u.getRow(rowId, grid) : {}; let formData = u.parse_form("#CoInsuranceLeaderParticipantsForm"); if (result.CIL_COMP_CODE === formData.CIL_COMP_CODE) { result = { ...result, ...formData }; let enumerable = u.get_grid_data(u.getGlobal("udwCoInsLdrGrid")); let totalPercentage = enumerable.Sum(l => l.CIL_COMP_CODE == result.CIL_COMP_CODE ? 0 : parseFloat(l.CIL_COMP_PERC || 0)); if (totalPercentage + parseFloat(result.CIL_COMP_PERC) > parseFloat($("#CIL_MEMBER_PERC").val())) { return u.growl_warning( `Edited share percentage will exceed member share of ${$("#CIL_MEMBER_PERC") .val()}%`); } //const data = u.parse_form("#CoinsLeaderForm"); for (let i in result) { grid.jqGrid("setCell", rowId, i, result[i]); } u.hide_confirm(); u.growl_success("Updated Successfully"); //$(".clearable").val(""); // u.form_reset("#CoinsLeaderForm"); u.form_reset("#CoInsuranceLeaderParticipantsForm"); } else { u.hide_confirm(); u.growl_warning("Please select the correct row to edit"); } //const rowId = grid.jqGrid("getGridParam", "selrow"); //const code = grid.jqGrid("getCell", rowId, "CIL_COMP_CODE"); //if (code === $("#CIL_RI_MEM_CODE").val()) { // const data = u.parse_form("#CoinsLeaderForm"); // for (let i in data) { // grid.jqGrid("setCell", rowId, i, data[i]); // } // u.hide_confirm(); // u.growl_success("FAC Inward updated"); // $(".clearable").val(""); // // u.form_reset("#CoinsLeaderForm"); // u.form_reset("#CoInsuranceLeaderParticipantsForm"); //} else { // u.hide_confirm(); // u.growl_warning("Please select the correct row to edit"); //} }); } }); /*---------------------------------------------------- * Remove record or Mark for deletion from Co-Insurance Leader Grid *---------------------------------------------------*/ $("#btn_remove_CoinsLeader").on("click", function() { if (u.grid_empty(u.getGlobal("udwCoInsLdrGrid"))) return u.growl_info("The grid is empty"); var grid = u.getGlobal("udwCoInsLdrGrid"); var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "CIL_STATUS"); const code = grid.jqGrid("getCell", rowId, "CIL_COMP_CODE"); const message = ""; /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function(e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.hide_confirm("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "CIL_STATUS", "D"); $(`#${rowId}`, "#grdCoinsLeader").css({ color: "red" }); u.hide_confirm(); u.hide_confirm( "Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus == "D") { $(`#${rowId}`, "#grdCoinsLeader").css({ color: "black" }); grid.jqGrid("setCell", rowId, "CIL_STATUS", "A"); u.hide_confirm(); u.hide_confirm("Data successfully restored"); } $(".clearable").val(""); // u.form_reset("#CoinsLeaderForm"); u.form_reset("#CoInsuranceLeaderParticipantsForm"); }); }); /*-------------------------------------------------- * FAC Participating company Details Modal *------------------------------------------------*/ $("#btn_CoInsLeaderParticipants").click(function() { //obtain the id of the selected fac details const grid = u.getGlobal("udwCoInsLdrGrid"); if (u.form_validation("#CoinsLeaderForm")) { $("#LeaderPartipantsModal").css("z-index", 2000); $("#myLOVModal").css("z-index", 3000); $("#LeaderPartipantsModal").modal("show"); } }); $("#PartipantsModal .close, #companyClose").click(function() { u.clear_grid_data($scope.riCompany_grid); }); /**------------------- * LOV CODE CUSTOMER *------------------*/ u.lovCodeVal("input[name='POLH_CUST_CODE']", "check_customer_code", "input[name='CUS_OFFICIAL_NAME']", function(code) { s.get_customer(code, function(response) { u.setFieldVal("#POLH_CUST_NAME", response["CUS_OFFICIAL_NAME"]); u.setFieldVal("#POLH_CUST_ADRS", response["CUS_ADDRS2"]); u.setFieldVal("#POLH_CUST_TEL", response["CUS_PHONE1"]); u.setFieldVal("#POLH_OWNSHIP", response["CUS_OFFICIAL_NAME"]); $("#POLH_CUST_AMLCHECK").val(response["CUS_AML_YN"]); //u.setFieldVal("#POLH_CUST_AMLCHECK", response["CUS_AML_YN"]); }); }); u.lovCodeVal("input[name='POLH_SAP_CODE']", "check_sales_personnel_code", "input[name='POLH_SAP_NAME']", function(code) {}); /**----------------------- * LOV CODE INTERMEDIARY *----------------------*/ u.lovCodeVal("form input[name='POLH_INTERMIDIARY']", "check_intermediary_code", "form input[name='INT_OFFICIAL_NAME']", function(code) { u.modal_confirmation( "Your current action might change commissions set on this policy, do you want to continue? SAVE policy after selecting YES!!!!", function() { $scope.intermediaryCommision({ CODE: code }); $("#agentcommModal").modal(); }, function() { $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }); }); /**-------------------------- * LOV CODE PRODUCT SUB CODE *--------------------------*/ u.lovCodeVal("form input[name='POLH_SUB_CLASS_CODE']", "check_subproduct_code", "form input[name='PDT_NAME']", async function(code) { let productCode = $("#POLH_CLASS_CODE").val(); switch (productCode) { case "6000": if (($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM")) { u.modal_confirmation( "Your current action might change commissions already set on this policy, do you want to continue? RESELECT intermediary after selecting YES or CANCEL and SAVE to persist changes!!!", async function() { await u.getGlobalStatic("subProductChange")(); $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }, function() { $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }); } else { await u.getGlobalStatic("subProductChange")(); } break; default: if (($("#POLH_BIZ_SOURCE").val() === "BKM" || $("#POLH_BIZ_SOURCE").val() === "AGM")) { u.modal_confirmation( "Your current action might change commissions already set on this policy, do you want to continue? RESELECT intermediary after selecting YES or CANCEL and SAVE to persist changes!!!", async function() { $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }, function() { $("#POLH_INTERMIDIARY").val(""); $("#INT_OFFICIAL_NAME").val(""); }); } break } }); /*--------------------------------- * ANTI-MONEY LAUNDERING FUNCTIONS *-------------------------------**/ $("#POLH_CUST_AMLCHECK").change(function() { ("SR").includes($("#POLH_TXN_STATE").val()) ? u.getGlobal("amlCheckValidation")($("#POLH_CUST_AMLCHECK").val()) : $("#aml_notification").hide(); }); $scope.amlCheckValidation = function(data) { //data !== "N" ? $("#aml_notification").show() : $("#aml_notification").hide(); //data !== "Y" ? $("#aml_notification").show() : $("#aml_notification").hide(); data === "Y" ? $("#aml_notification").show() : $("#aml_notification").hide(); }; u.setGlobal("amlCheckValidation", $scope.amlCheckValidation); (async function() { await u.lovDropDownAsync("#CUS_AML_CATEGORY", "getLovSelectAmlCategoryAsync"); await u.lovDropDownAsync("#CUS_AML_STATUS", "getLovSelectAmlStatusAsync"); })(); /*----------------------------- * ANTI MONEY LAUNDERING CHECK *---------------------------**/ $("#btn_aml_check").click(function() { const grid = u.getGlobal("amlCheckGrid"); /*---------------------- * RESET AML CHECK MODAL *---------------------*/ $("#amlCheckQuery").val(""); grid.jqGrid("clearGridData"); $("#amlCheckModal").modal(); }); $("#btnAmlCheckReset").click(function() { var grid = u.getGlobal("amlCheckGrid"); /*---------------------- * RESET AML CHECK MODAL *---------------------*/ $("#amlCheckQuery").val(""); grid.jqGrid("clearGridData"); }); $("#btnAmlCheckQuery").click(async function() { var grid = u.getGlobal("amlCheckGrid"); if (!u.field_empty("#amlCheckQuery")) { let value = $("#amlCheckQuery").val(); let wresult = await s.searchCheckAmlByPostAsync(value); s.searchCheckAml($("#amlCheckQuery").val(), function(result) { if (result.state && result.data.length && result.data.length > 0) { /*------------------------------ * clear grid before populating *-----------------------------*/ grid.jqGrid("clearGridData"); u.gridPopulate(grid, result.data); } else { u.growl_info("Couldn't find a match for the code or name entered"); } }, function(err) { u.growl_error("Error cant send information"); }); } else { //fetch all s.getCheckAmls(function(origins) { if (origins.state && origins.data.length && origins.data.length > 0) { /*-------------------------------- * clear grid before populating *------------------------------*/ grid.jqGrid("clearGridData"); u.gridPopulate(grid, origins.data); } else { u.growl_info("There are no AML entries at the moment, please setup or upload one"); } }); } }); $("#btnAmlCheckView").click(function() { const grid = u.getGlobal("amlCheckGrid"); const selId = u.getSelRow(grid); if (selId) { let data = u.getRow(selId, grid); data = (typeof (data) == "string" ? JSON.parse(data || "{}") : data) || {}; u.form_reset("#amlCheckViewForm"); u.fill_form(data, "#amlCheckViewForm"); //u.getGlobal("fileGrid").jqGrid("clearGridData"); //u.bigDataPopulate(u.getGlobal("fileGrid"), data.AML_DOCS || []); $("#amlCheckViewModal").modal(); } else { u.growl_warning("No record selected, Please check and try again"); }; }); $("#CUS_AML_YN").change(function() { let data = $("#CUS_AML_YN").val(); if (data != "Y") { $("#CUS_SOUFUND").val(""); $("#CUS_AML_CATEGORY").val(""); $("#CUS_AML_STATUS").val(""); } $(".aml_property select").css("cursor", data != "Y" ? "no-drop" : "default"); $(".aml_property select").css("background-color", data != "Y" ? "#eee" : "White"); $(".aml_property select input").prop("required", data != "Y" ? false : true); $(".aml_property option").prop("hidden", data != "Y"); $("#CUS_SOUFUND").prop("disabled", data != "Y"); }); $("#POLH_SAP_YN").change(function() { let data = $("#POLH_SAP_YN").val(); if (data == "Y") { $(".salespersonnel").show(); $("#POLH_SAP_CODE, #POLH_SAP_NAME").prop("required", true); } else { $(".salespersonnel").hide(); $("#POLH_SAP_CODE, #POLH_SAP_NAME").prop("required", false); $("#POLH_SAP_CODE, #POLH_SAP_NAME").val(" "); } }); /*---------------------------- * SHOW/HIDE POLICY PREM BASIS *--------------------------*/ if ($("#POLH_CLASS_CODE").val() === "6000" || $("#POLH_CLASS_CODE").val() === "9000") { $("#POLH_PREM_BASIS").prop("required", false); $("#premBasisDiv").addClass("m-hide"); } // set which fields should be disabled... u.getGlobal("setFieldsCanBeDisabled")(); // policy document tab inner tabs $("#docTabs a").click(function(e) { e.preventDefault(); $(this).tab("show"); }); $("#btnUpdateMemo").click(function() { const grid = u.getGlobal("udwPolDocsGrid"); const rowId = u.getSelRow(grid); if (!rowId) return u.growl_warning("Please select document row to update."); let content = grid.jqGrid("getCell", rowId, "PW_TEMPLATE"); u.form_reset("#memoForm"); content = u.getGlobal("setTemplateParameters")(content); tinymce.get("editor").setContent(content); $scope.newMemo = false; $("#memoModal").modal(); }); $("#okMemo").click(function() { if (!$scope.newMemo) { let grid = u.getGlobal("udwPolDocsGrid"); const rowId = u.getSelRow(grid); let description = grid.jqGrid("getCell", rowId, "PW_DESC"); $("#MemoDescription").val(description); } else { u.form_reset("#memoDescriptionForm"); } $("#MemoDescriptionModal").css("z-index", "99999"); $("#MemoDescriptionModal").modal(); }); $("#saveMemo").click(function() { const editorContent = tinymce.activeEditor.getContent(); if (editorContent.length <= 0) { return u.modalConfirmation("Editor is empty are you want to save changes?", function() { }); } let grid = u.getGlobal("udwPolDocsGrid"); if ($scope.newMemo) { // is it a new document? do this.. let document = u.parse_form("#policyFilesForm"); document.PW_TEMPLATE = editorContent; document.PW_STATUS = "U"; document.PW_CRTE_BY = u.getUserCode(); document.PW_CRTE_DATE = u.get_date(); document.DESC = $("#MemoDescription").val(); document.AM_NAME = $scope.document.NAME; document.AM_CODE = $scope.document.CODE; grid.addRowData(undefined, document); } else { // old document? do this... const rowId = u.getSelRow(grid); grid.jqGrid("setCell", rowId, "PW_TEMPLATE", editorContent); let desc = $("#MemoDescription").val(); grid.jqGrid("setCell", rowId, "PW_DESC", desc); } $("#MemoDescriptionModal").modal("hide"); $("#memoModal").modal("hide"); $scope.newMemo = false; }); $("#btnRemoveMemo").click(function() { let grid = u.getGlobal("udwPolDocsGrid"); if (u.grid_empty(grid)) return u.growl_info("The grid is empty"); var row_id = grid.jqGrid("getGridParam", "selrow"); if (row_id) { var recordStatus = grid.jqGrid("getCell", row_id, "PW_STATUS"); var Code = grid.jqGrid("getCell", row_id, "PW_CODE"); var message = ""; /*--------------------------------- * Display modal message *------------------------------*/ u.modal_confirmation("Are you sure you want to remove the Record?", function(e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus === "U") { grid.jqGrid("delRowData", row_id); u.hide_confirm(); u.growl_hide("Selected row successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus === "A") { grid.jqGrid("setCell", row_id, "PW_STATUS", "D"); $(`#${row_id}`, "#grdPolicyFiles").css({ color: "red" }); u.hide_confirm(); u.growl_success( "Selected row successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus === "D") { $(`#${row_id}`, "#grdPolicyFiles").css({ color: "black" }); grid.jqGrid("setCell", row_id, "PW_STATUS", "A"); u.hide_confirm(); u.growl_success("Data successfully restored"); } }); } else { u.growl_warning("please select row"); } }); // temporary code.. set the text area for policywording to allow for larger and easier viewing. $(".mce-container").css("min-hieght", "1200px !important"); /******************************************************************************** * POLICY DOCUMENTATION CHECKLIST SECTION ********************************************************************************/ $scope.setupDocumentation = function(response) { u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION = []; ////fetch all estimate document records //const response = await s.getPolicyDocumentsAsync(estimateType); $scope.resetDocumentationView("#PolDocumentationView"); //compare estimate documents to settlement documents if there are any response.ForEach(ed => { ed.MST_UWD_PRODUCTS = null; u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.Add({ //MS_POL_DOC_CHKLIST: ed, POLDOC_CH_SYS_ID: ed.POLDOC_CH_SYS_ID, POL_DOC_CHK_PROD: ed.POLDOC_CHK_PROD, POL_DOC_CHK_NAME: ed.POLDOC_CHK_NAME, POL_DOC_CH_DESC: ed.POLDOC_CH_DESC, POL_DOC_CH_REQD: ed.POLDOC_CH_REQD, UDW_POL_DOCS: [], POL_DOC_COMPLETED: false, CreatedBy: u.getUserCode(), Status: 1 }); }); $scope.renderDocumentations("#PolDocumentationView", u.getGlobal("policyDocuments")); }; $scope.resetDocumentationView = u.getGlobal("resetDocumentationView"); $scope.renderDocumentations = u.getGlobal("renderDocumentations"); //render documentation files grid $scope.documentationFileGrid = u.getGlobal("renderDocumentGrid")("#documentationFilesGrid", ``); $("#Doctabs-0").delegate(".viewFiles", "click", function() { const parent = $(this).parents(".panel"); const data = parent.data(); const document = u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.find(d => d.id == data.id); //populate grid with files u.bigDataPopulate($scope.documentationFileGrid, document.UDW_POL_DOCS); $scope.selectedDocument = document; $("#documentationFilesModal").modal(); }); $("body").delegate(".attach", "click", function() { //find document $scope.currentDocument = $(this).parents(".panel").data(); u.setGlobal("currentDocument", $scope.currentDocument); $scope.addFileCallback = function(file) { $scope.documentationFileGrid.addRowData(undefined, file); $scope.selectedDocument.UDW_POL_DOCS.Add(file); $(`#${$scope.selectedDocument.id}`).removeClass("panel-danger"); $(`#${$scope.selectedDocument.id}`).addClass("panel-success"); }; $("#docUploadModal").modal(); }); $("body").delegate(".removeAttachedFile", "click", function() { const grid = $scope.documentationFileGrid; const selrow = u.getSelRow(grid) if (!selrow) return u.growl_warning("Please select document row to remmove."); const row = u.getRow(selrow, grid); u.modalConfirmationAsync("Are You sure you want to remove file", () => { const recordStatus = u.getCell(grid, selrow, "CD_STATUS"); if (recordStatus === "U") { u.delRow(grid, selrow); $scope.selectedDocument.UDW_POL_DOCS = $scope.selectedDocument.UDW_POL_DOCS.filter(x => x.CD_SYS_PATH !== row.CD_SYS_PATH); if ($scope.selectedDocument.UDW_POL_DOCS.length === 0) { $(`#${$scope.selectedDocument.id}`).removeClass("panel-success"); $(`#${$scope.selectedDocument.id}`).addClass("panel-danger"); } u.hide_confirm(); u.growl_success("Selected record successfully deleted."); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus === "A") { u.setCell(grid, selrow, "CD_STATUS", "D"); $("#" + selrow, "#documentationFilesGrid").css({ color: "red" }); $scope.selectedDocument.UDW_POL_DOCS = u.get_grid_data($scope.documentationFileGrid) u.hide_confirm(); u.growl_info( "Selected record successfully marked for deletion, please click on the save button to save changes."); } if (recordStatus === "D") { $("#" + selrow, "#documentationFilesGrid").css({ color: "black" }); u.setCell(grid, selrow, "CD_STATUS", "A"); $scope.selectedDocument.UDW_POL_DOCS = u.get_grid_data($scope.documentationFileGrid) u.hide_confirm(); u.growl_info("Record successfully restored."); } }) // $("#docUploadModal").modal(); }); $("body").delegate(".view", "click", function() { const selRow = u.getSelRow($scope.documentationFileGrid); if (selRow) { const file = u.getRow(selRow, $scope.documentationFileGrid); if (!file.CD_SYS_ID) return u.growl_warning("File has not been saved, please save changes and try again."); $scope.viewDocument(file.CD_SYS_PATH); } else { u.growl_info("Please select a file to view"); } }); $scope.viewDocument = (fileId) => { s.getTxnFileTokenAsync(fileId, function(response) { if (response.state) { window.OpenDocument(response.data); } else { u.growl_error(response.message); } }); }; $("body").delegate(".download", "click", function() { const selRow = u.getSelRow($scope.documentationFileGrid); if (selRow) { const file = u.getRow(selRow, $scope.documentationFileGrid); u.download(`${s.backend}${file.CD_WEB_URL}`); return false; } else { u.growl_info("Please select a file to download."); return false; } }); $("#addFiles").click(function() { if (u.field_empty("#Description")) { return u.growl_info("Please enter a description for the selected file(s)."); } //loop through each file and upload and add files to grid let files = []; let custCode = $scope.claimantCode; $(".file-list-item").each(function() { let itemData = $(this).data(); if (!files.Any(f => f.CD_FILE_NAME == itemData.CD_FILE_NAME)) { files.Add(itemData); } }); if (files.Any()) { u.modal_confirmation("Are you sure you want to attach selected files?", async function() { let response = {}; for (const [index, f] of files.entries()) { response = await s.uploadFileAsync(f.file); if (response.state) { f.CD_SYS_PATH = response.data.SystemPath; f.CD_WEB_URL = response.data.Url; f.CD_CUST_CODE = custCode; f.CD_TAG = $("#Description").val(); //add file to grid $scope.addFileCallback(f); } else { u.modalError(response.message); } } $(".file-list").hide(); $(".file-list-item").remove(); $("#docUploadModal").modal("hide"); return u.growl_success("Files successfully attached."); }); //upload filed and add to grid } else { u.growl_info("Please select a file for upload."); } }); /** * SHOW CHANNEL LOV IF USER IS PERMITTED * * **/ if (!u.isUserRestricted()) { $(".hideChannel").show(); } /*---------------------------- * Policy Form delete button *--------------------------*/ /*$("#btnDelete").click(function() { if ($("#POLH_TXN_STATE").val() != "S" && $("#POLH_TXN_STATE").val() != "R") return u.growl_warning("Policy has been approved, cannot be reverted"); if (u.field_empty("input[name='POLH_SYS_ID']")) return u.growl_warning("Policy has not been saved."); u.modalFeedback("Please enter a narration to explain why you want to reject this policy", async function(narration) { $("#POLH_STATUS").val("D"); //$("#btn_Save").trigger("click"); const rejectionLog = { CreatedBy: u.getUserName(), Narration: narration, PolicyId: $("#POLH_QUT_SER_NO").val() } s.logPolicyRejectionAsync(rejectionLog).then( () => { $("#btn_Save")[0].click(); $scope.resetPolicyModal(); } ); }); });*/ $(".btn_help").on("click", async () => { if ($("#POLH_SUB_CLASS_CODE").val() == "") return u.growl_warning("please select Sub Product"); let subproduct = $("#POLH_SUB_CLASS_CODE").val(); await s.fetchHelpDocumentAsync(subproduct).then((response) => { // if (!response.state) return u.growl_error(response.message); $(".helpProductName").html(""); $(".helpProductName").html($("#PDT_NAME").val()); $("#help_message").html(""); $("#help_message").html(response.MM_TEMPLATE); $("#HelpModal").modal(); }); }); /** * * APPROVAL CHECKLIST SECTION * **/ var navListItems = $("div.setup-panel div a"), allWells = $(".setup-content"), allNextBtn = $(".nextBtn"); allWells.hide(); navListItems.click(function(e) { e.preventDefault(); var $target = $($(this).attr("href")), $item = $(this); if (!$item.hasClass("disabled")) { navListItems.removeClass("btn-success").addClass("btn-default"); $item.addClass("btn-success"); allWells.hide(); $target.show(); $target.find("input:eq(0)").focus(); } }); $(".btn-approvalCheckListStep").on("click", () => { if ($(".approvalCheckList:checked").length != $(".approvalCheckList").length) { u.growl_info("Please make sure to check all required Items"); nextStepWizard = $('div.setup-panel div a[href="#step-1"]'); nextStepWizard.trigger("click"); } }); allNextBtn.click(function() { var curStep = $(this).closest(".setup-content"), curStepBtn = curStep.attr("id"), nextStepWizard = $('div.setup-panel div a[href="#' + curStepBtn + '"]').parent().next() .children("a"), curInputs = curStep.find("input[type='text'],input[type='url']"), isValid = true; $(".form-group").removeClass("has-error"); //for (var i = 0; i < curInputs.length; i++) { // if (!curInputs[i].validity.valid) { // isValid = false; // $(curInputs[i]).closest(".form-group").addClass("has-error"); // } //} if ($(".approvalCheckList:checked").length != $(".approvalCheckList").length && curStepBtn !== "step-1") { isValid = false; } if (!isValid) return u.growl_info("Please make sure to check all required Items"); nextStepWizard.removeAttr("disabled").trigger("click"); }); $("div.setup-panel div a.btn-success").trigger("click"); $scope.getApprovalCheckList = async () => { let subproduct = $("#POLH_SUB_CLASS_CODE").val(); await s.getApprovalCheckList(subproduct).then(async (response) => { if (response.state) { if (response.data && response.data.length) { $scope.renderApprovalCheckLists("#approvalChecklistPanels", response.data); } } }) }; $scope.renderApprovalCheckLists = function(view, object) { $(".approvalChecklistRemovable").remove(); $scope.approvalCheckListProgress(0); nextStepWizard = $('div.setup-panel div a[href="#step-1"]'); nextStepWizard.trigger("click"); if (object) { object.ForEach(d => { d = $scope.renderApprovalCheckList(view, d); }); u.setGridHeight(view, 100); } else { // u.growl_error(" documentation could not be found."); } }; $scope.renderApprovalCheckList = function(view, document) { { ////console.log(document); const item = `
${document.UA_CHK_DESC || ""}
`; $(view).append(item); } return document; }; $scope.renderCheckbox = (thisId) => { let Checkbox = `
`; return Checkbox; }; $scope.setApprovalChecklistPanels = function(state) { if (parseFloat(state) === 2) { let disp = "panel-success"; return disp; } else if (parseFloat(state) === 1) { let disp = "panel-warning"; return disp; } else { let disp = "panel-danger"; return disp; } }; $scope.approvalCheckListProgress = (perc) => { $(".progress-bar").css("width", `${perc}%`); if (perc < 15) $(".progress-bar").css("background-color", "red"); else if (perc < 45) $(".progress-bar").css("background-color", "orange"); else if (perc < 85) $(".progress-bar").css("background-color", "lightblue"); else if (perc >= 85) $(".progress-bar").css("background-color", "lightgreen"); $(".actProgress").html(perc); }; $scope.getTotalapprovalCheckListProgress = () => { if ($(".approvalCheckList").length) { let progressPerc = ($(".approvalCheckList:checked").length / $(".approvalCheckList").length) * 100; $scope.approvalCheckListProgress(progressPerc); } else { $scope.approvalCheckListProgress(0); } }; $("body").on("click", ".approvalCheckList", () => { $scope.getTotalapprovalCheckListProgress(); }); /** * * **/ $("#DeferPayment").on('change', function() { //if (!u.form_validation("#PolApprovalForm")) { // $("#DeferPayment").val(""); // return u.growl_info("Please fill Form") //} if ($("#DeferPayment").val() == "Y") { $scope.getDeferReasonByPolicyState(); $("#DeferPaymentModal").modal(); } }); $scope.getDeferReasonByPolicyState = async function() { u.form_reset("#deferPaymentForm"); const policyState = { PolicyId: $("#POLH_SYS_ID").val(), EndorsementNo: $("#POLH_END_NO").val(), RenewalNo: $("#POLH_RENEW_SER_NO").val() } const response = await s.getDeferReasonByPolicyState(policyState); if (response.state) { if (response.data) { u.fill_form(response.data, "#deferPaymentForm"); } } }; $("#SaveReasons").on('click', async () => { if (!u.form_validation("#deferPaymentForm")) return (u.growl_warning("Please fill Form")); const form = u.parse_form("#deferPaymentForm"); if (!form.DPR_SYS_ID) { form.Status = 1; form.DPR_POL_SYS_ID = $("#POLH_SYS_ID").val(); form.DPR_POL_END_NO = $("#POLH_END_NO").val(); form.DPR_POL_RNW_NO = $("#POLH_RENEW_SER_NO").val(); form.createdBy = u.getUserCode(); } else { form.ModifiedBy = u.getUserCode(); form.DPR_POL_SYS_ID = $("#POLH_SYS_ID").val(); } const response = await s.saveReasonAsync(form); if (!response.state) return u.growl_error(response.message); u.fill_form(response.data, "#deferPaymentForm"); u.growl_success(response.message); $("#DeferPaymentModal").modal("hide"); }); $("#btnRVPrint").click(async function() { if (u.grid_empty(u.getGlobal("udwPaymentGrid"))) return u.growl_info("grid is empty"); const selRow = u.getSelRow(u.getGlobal("udwPaymentGrid")); if (!selRow) return u.growl_info("please select a row"); const row = u.getRow(selRow, u.getGlobal("udwPaymentGrid")) const response = await s.getReceiptbyDocNo(row.MA_TXN_DOC_NO); if (!response.state) return u.growl_error(`unable to retrieve document
error: ${response.message}`); if (!response.data) return u.growl_info("search returned empty"); const batchData = response.data; const batchId = batchData.ARH_BATCH_NO; const fromDocNo = row.MA_TXN_DOC_NO; const toDocNo = row.MA_TXN_DOC_NO; const txnState = batchData.ARD_TXN_STATUS; const userName = u.getUserName(); //set report name const reportName = "ReceiptVoucher"; window.open( `${s.report}/AccountDocuments/Index?reportName=${reportName}&batchId=${batchId}&fromDocNo=${ fromDocNo }&toDocNo=${toDocNo}&txnState=${txnState}&username=${userName}}`, "result", "width=900,height=1000,toolbar=0,menubar=no,status=no,resizable=yes,location=no,directories=no,scrollbars=yes"); }); $("#POLH_POL_RETRO_DATE").blur(function() { //if (u.dateAfter($(this).val(), u.get_date())) { // u.growl_warning("Policy Retroactive date cannot be future-dated"); // $(this).val(""); //} if (u.dateBefore($(this).val(), $("#POLH_POL_START_DATE").val())) { u.growl_warning("Policy Retroactive Date cannot be before the Policy Start Date"); $(this).val(""); } }); /** * Method to refetch policy documents checklist */ $("#refetchDocChecklist").click(function() { if (u.field_empty("#POLH_SUB_CLASS_CODE")) return u.growl_warning("No subclass selected"); s.get_product($("#POLH_SUB_CLASS_CODE").val(), function(response) { if (!jQuery.isEmptyObject(response)) { u.setGlobal("productData", response.Product); // add the default documents... if (u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION === null || u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.length === 0 || u.getGlobal("policyDocuments").UDW_POL_DOCUMENTATION.length === undefined) { if (response.Documents) { let document = {}; let grid = u.getGlobal("udwPolDocsGrid"); u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); for (let i in response.Documents) { let record = {}; record.PW_NAME = response.Documents[i].MM_NAME; record.PW_CODE = response.Documents[i].MM_CODE; record.PW_TEMPLATE = response.Documents[i].MM_TEMPLATE; record.PW_CRTE_BY = u.getUserCode(); record.PW_STATUS = "A"; document[i] = record; grid.addRowData(undefined, record); } } // set up checkList if (response.CheckList) { $scope.setupDocumentation(response.CheckList); } } } }); }); $scope.prepApprovalSummary = function() { switch ($("#POLH_TXN_STATE").val()) { case "S": case "R": { $("#pol-approval-start-date").empty(); $("#pol-approval-end-date").empty(); $("#pol-approval-currency").empty(); $("#pol-approval-customer-name").empty(); $("#pol-approval-premium").empty(); $("#pol-approval-si").empty(); $("#pol-approval-int-table").empty(); $("#pol-approval-start-date").append($("#POLH_POL_START_DATE").val()); $("#pol-approval-end-date").append($("#POLH_POL_END_DATE").val()); $("#pol-approval-currency").append($("#POLH_CURRENCY").val()); $("#pol-approval-customer-name").append($("#POLH_CUST_NAME").val()); $("#pol-approval-premium").append((parseFloat($("#POLH_POL_PREM_FC").val())).toFixed(2)); $("#pol-approval-si").append((parseFloat($("#POLH_POL_SI_FC").val())).toFixed(2)); let intermediaryDetails = u.get_grid_data(u.getGlobal("udwAgntCommGrid")).Where(x => x.CMM_STATUS !== "D"); if (!intermediaryDetails.Any()) { $("#pol-approval-summary-int-details").addClass("m-hide"); } else { intermediaryDetails.ForEach(y => { $("#pol-approval-int-table") .append( `${y.CMM_INT_CODE}${y.CMM_INT_NAME}${ (parseFloat(y.CMM_COM_PERC)).toFixed(2)}${( parseFloat(y.CMM_COM_AMT_FC)) .toFixed(2)}`); }); $("#pol-approval-summary-int-details").removeClass("m-hide"); } $("#approvalSummaryDiv").removeClass("m-hide"); $("#endorsementSummaryDiv").addClass("m-hide"); } break; case "E": case "X": { $("#pol-end-start-date").empty(); $("#pol-end-end-date").empty(); $("#pol-end-currency").empty(); $("#pol-end-customer-name").empty(); $("#pol-end-premium").empty(); $("#pol-end-type").empty(); const currentEndorsement = u.get_grid_data(u.getGlobal("udwEndsmntGrid")) .FirstOrDefault(x => x.END_TXN_STATE === "O"); $("#pol-end-start-date").append(currentEndorsement.END_EFCTV_DATE); $("#pol-end-end-date").append(currentEndorsement.END_TERM_DATE); $("#pol-end-currency").append($("#POLH_CURRENCY").val()); $("#pol-end-customer-name").append($("#POLH_CUST_NAME").val()); $("#pol-end-premium").append((parseFloat(currentEndorsement.END_PREM_DIFF_FC).toFixed(2))); $("#pol-end-type").append(currentEndorsement.END_NAME); $("#approvalSummaryDiv").addClass("m-hide"); $("#endorsementSummaryDiv").removeClass("m-hide"); } break; } nextStepWizard = $('div.setup-panel div a[href="#step-1"]'); nextStepWizard.trigger("click"); //$("#approvalstep1").click(); }; //$("#paymentIntegrator").on('change', function () { // var noticeType = $("#noticeType").val(); // switch ($(this).val()) { // case "1": // if (noticeType === "whatsapp") { // tinymce.activeEditor.setContent($scope.whatsappHubtel); // } else { // tinymce.activeEditor.setContent($scope.mailExample); // } // break; // case "2": // if (noticeType === "whatsapp") { // tinymce.activeEditor.setContent($scope.whatsappKowri); // } else { // tinymce.activeEditor.setContent($scope.kowriExample); // } // break; // } //}); $("#paymentIntegrator").on('change', function() { switch ($(this).val()) { case "1": tinymce.activeEditor.setContent($scope.mailExample); break; case "2": tinymce.activeEditor.setContent($scope.kowriExample); break; } }); $("#btnCheckApproval").click(async function() { const response = await s.checkPolicyApprovalAsync($("#POLH_SYS_ID").val(), $("#POLH_END_NO").val(), $("#POLH_RENEW_SER_NO").val()); if (!response.state) return u.growl_info(response.message); u.growl_success("Please wait..."); window.location.search += `?id=${$("#POLH_SYS_ID").val()}`; }); $("#btnSetRenewableStatus").click(function() { if ($("#POLH_TXN_STATE").val() !== "P") return u.growl_info("Policy not approved, you cannot perform this action"); $("#policyRenewableForm form input, form textarea, form select, form button").each(function() { $(this).prop("disabled", false); }); $("#PolicyRenewableStatusModal").modal(); }); $("#policyRenewableStatusFlag").change(function() { switch ($(this).val()) { case "Y": { if ($("#POLH_RENEWABLE_YN").val() === "Y") { $(this).val(""); return u.growl_warning("Policy is already set as renewable"); } $("#policyNonRenewableCode").prop("required", false); $("#policyNonRenewableName").prop("required", false); $("#non-renewable-reason-div").addClass("m-hide"); } break; case "N": { if ($("#POLH_RENEWABLE_YN").val() === "N") { $(this).val(""); return u.growl_warning("Policy is already set as non-renewable"); } $("#policyNonRenewableCode").attr("required", "required"); $("#policyNonRenewableName").attr("required", "required"); $("#non-renewable-reason-div").removeClass("m-hide"); } break; } }); $("#btnLogRenewableStatus").click(async function() { if (!u.form_validation("#policyRenewableForm")) return u.growl_warning("All fields marked red are required"); u.modalConfirmationAsync("Are you sure you want to perform this action?", async function() { var data = u.parse_form("#policyRenewableForm"); var response = await s.setPolicyRenewableStatusAsync({ ...data, policyId: $("#POLH_SYS_ID").val(), user: u.getUserCode() }); if (!response.State) return u.growl_error(response.Message); $("#PolicyRenewableStatusModal").modal("hide"); u.growl_success(response.Message); $("#POLH_RENEWABLE_YN").val(data.flag); u.form_reset("#policyRenewableForm"); }); }); /* * View Send Policy Documents Modal */ $("#btnSendDocuments").click(() => { $("#PolicyDocumentsModal").modal(); //Non-Motor check if (!u.get_grid_data(u.getGlobal("vehicleRiskGrid")).Any()) { $("#motor-documents").addClass("m-hide"); $("#scheduleCheck").prop("checked", true); } $("#policyDocumentsForm input").each(function() { $(this).prop("readonly", false); $(this).prop("disabled", false); }); }); /* * Send Policy Documents */ $("#handleSendPolicyDocuments").click(async () => { if (!u.form_validation("#policyDocumentsForm")) return u.growl_warning("All fields marked red are required"); if (!$("#emailCheck").is(":checked") && !$("#smsCheck").is(":checked") && !$("#whatsAppCheck").is(":checked")) return u.growl_warning("No mode of delivery selected"); if (!$("#scheduleCheck").is(":checked") && !$("#certificateCheck").is(":checked") && !$("#stickerCheck").is(":checked")) return u.growl_warning("No document type selected"); await u.modalConfirmationAsync("Are you sure you want to perform this action?", async function() { const data = u.parse_form("#policyDocumentsForm"); let deliveryModes = []; if ($("#emailCheck").is(":checked")) deliveryModes.push("email"); if ($("#smsCheck").is(":checked")) deliveryModes.push("SMS"); if ($("#whatsAppCheck").is(":checked")) deliveryModes.push("whatsapp"); let documents = []; if ($("#scheduleCheck").is(":checked")) documents.push(2); if ($("#certificateCheck").is(":checked")) documents.push(1); if ($("#stickerCheck").is(":checked")) documents.push(4); let json = { phone: data.phone, email: data.email, deliveryModes: deliveryModes, documents: documents, policyId: $("#POLH_SYS_ID").val(), customer: $("#POLH_CUST_NAME").val() }; const response = await s.sendPolicyDocumentsAsync(json); if (!response.state) return u.growl_error(response.message); $("#PolicyDocumentsModal").modal("hide"); u.growl_info(response.message || "Policy documents sent successfully"); u.form_reset("#policyDocumentsForm"); }); }); /* * Send Policy Documents checkbox handlers */ $("#emailCheck").change(function() { if ($(this).is(":checked")) { $("#sendPolicyDocsEmail").prop("required", true); if (u.getGlobal("customer")) { $("#sendPolicyDocsEmail").val(u.getGlobal("customer").CUS_EMAIL || ""); } } else { $("#sendPolicyDocsEmail").prop("required", false); } }); $("body").delegate("#smsCheck, #whatsAppCheck", "change", function() { if ($(this).is(":checked")) { $("#sendPolicyDocsPhone").prop("required", true); if (u.getGlobal("customer")) { $("#sendPolicyDocsPhone") .val(u.getGlobal("customer").CUS_PHONE1 || $("#POLH_CUST_TEL").val() || ""); } } else { $("#sendPolicyDocsPhone").prop("required", false); } }); $("#PRVtabs").tabs(); $("#btnPremiumReversalRequest").click(async function() { // if (!"CE".includes($("#POLH_TXN_STATE").val())) { return u.growl_info("Policy is not in endorsement. ") } u.growl_info("Make sure all changes are saved before proceeding with this request."); let grid = u.getGlobal("udwEndsmntGrid"); let gridSummary = u.getGlobal("udwPRevEndsmntSumGrid"); if (u.grid_empty(grid)) return u.growl_info("Unable to find any endorsement details"); let gridData = u.get_grid_data(grid); let data = {}; { let highestId = -1; // Initialize with a low value for (const record of gridData) { if (record.END_SYS_ID > highestId) { highestId = record.END_SYS_ID; data = record; } } } if (data.END_NO != ($("#POLH_END_NO").val()) && data.END_RNW_NO != ($("#POLH_RENEW_SER_NO").val())) { return u.growl_info("Cannot find details of current endorsement.") } $("#currency").text(u.fieldVal("#POLH_CURRENCY")); $("#net_end_prem").text(parseFloat(data.END_PREM_DIFF_FC).toFixed(2)); let Summary = [ { CODE: "PREM", NAME: "Premium", AMOUNT_FC: data.END_PREM_DIFF_FC, AMOUNT_BC: data.END_PREM_DIFF_BC }, { CODE: "DISC", NAME: "Discounts", AMOUNT_FC: data.END_DISC_DIFF_FC, AMOUNT_BC: data.END_DISC_DIFF_BC }, { CODE: "LOD", NAME: "Loadings", AMOUNT_FC: data.END_LOAD_DIFF_FC, AMOUNT_BC: data.END_LOAD_DIFF_FC }, { CODE: "FEE", NAME: "Fees", AMOUNT_FC: data.END_FEE_DIFF_FC, AMOUNT_BC: data.END_FEE_DIFF_BC }, { CODE: "COMM", NAME: "Commission", AMOUNT_FC: data.END_COMMSSN_DIFF_FC, AMOUNT_BC: data.END_COMMSSN_DIFF_BC }, { CODE: "COINS", NAME: "RI", AMOUNT_FC: data.END_COINS_DIFF_FC, AMOUNT_BC: data.END_COINS_DIFF_BC }, { CODE: "SI", NAME: "Sum Insured", AMOUNT_FC: data.END_SI_DIFF_FC, AMOUNT_BC: data.END_SI_DIFF_BC } ]; u.clear_grid_data(gridSummary); Summary.ForEach(w => { gridSummary.addRowData(undefined, w); }); var formObj = { PRR_DESCRIPTION: "", PRR_BRANCH: "", PRR_CLIENT_NAME: $("#POLH_OWNSHIP").val(), PRR_POLICY_NUMBER: $("#POLH_DISPLAY_NO").val(), PRR_POLICY_SI: $("#POLH_POL_SI_FC").val(), PRR_POLICY_CURRENCY: $("#POLH_CURRENCY").val(), PRR_POL_SYS_ID: $("#POLH_SYS_ID").val(), PRR_POL_ADDRESS: $("#POLH_CUST_ADRS").val(), PRR_RENEWAL_NUMBER: $("#POLH_RENEW_SER_NO").val(), PRR_ENDORSEMENT_NUMBER: $("#POLH_END_NO").val(), PRR_BRANCH: $("[name='OFF_NAME']").val(), CreatedDate: u.getDbDate(), CreatedBy: u.getUserCode() } u.fill_form(formObj, "#premReversalRequestForm") // Define an array of input element IDs to be disabled const inputIdsToDisable = [ 'PRR_CLIENT_NAME', 'PRR_POLICY_NUMBER', 'PRR_CLIENT_NAME', 'PRR_POL_ADDRESS', 'PRR_POLICY_SI', 'PRR_POLICY_CURRENCY', 'CreatedDate' ]; // Iterate through the array and disable each input element inputIdsToDisable.forEach(function(id) { const inputElement = document.getElementById(id); if (inputElement) { inputElement.disabled = true; } }); $("#PremiumReversalModal").modal(); }); $("#PremRevRequest").click(() => { if (!u.form_validation("#premReversalRequestForm")) return u.growl_info("Please fill all fields that are marked red."); u.modalConfirmationAsync( "Are you sure you want to Proceed with request?
Make sure all changes are saved before creating this request.", async function() { var request = u.parse_form("#premReversalRequestForm"); request.createdBy = u.getUserCode(); request.status = 1; var response = await s.savePremiumReversalRequestAsync(request); if (response.state) { u.growl_info(response.message) processId = response.data.PRR_PROCESS_ID; const userCode = u.getUserId(); const username = u.getUserFullName(); await u.createProcessInstance(userCode, username, processId, WorkflowSchema.PremiumReversal, WorkflowConstants.PremiumReversal); $("#PremiumReversalModal").modal("hide"); window.open(`${s.app}Workflow/PremiumReversalApproval?id=${response.data.PRR_SYS_ID}`); } else { u.growl_error(response.message); } }); }) }); u.setGlobal("setTemplateParameters", function (template) { if ($("#POLH_DISPLAY_NO").val() !== "") { if ($("#POLH_CLASS_CODE").val() === "8000") { // Bond //Policy template = template.replace(/POL_NUMBER/gi, $("#POLH_DISPLAY_NO").val() || ""); //Start Date template = template.replace(/EFFECTIVE_DATE/gi, $("#POLH_POL_START_DATE").val() || ""); //Start Date //template = template.replace(/EFFECTIVE_DATE_OF_BOND/gi, $("#POLH_POL_START_DATE").val()); template = template.replace(/END_DATE/gi, $("#POLH_POL_END_DATE").val() || ""); //Insured name template = template.replace(/NAME_OF_CONTRACTOR/gi, $("#POLH_CUST_NAME").val() || ""); //Address of Beneficiary template = template.replace(/ADDRESS_OF_CONTRACTOR/gi, $("#POLH_CUST_ADRS").val() || ""); //duration of Bond template = template.replace(/BOND_VALIDITY_PERIOD/gi, (u.get_grid_data(u.getGlobal("bondRiskGrid"))[0] || {}).BOND_VALIDITY_PERIOD || ""); //bond Constructor Name and Address template = template.replace(/BENEFICIARY_INFO/gi, (u.get_grid_data(u.getGlobal("bondRiskGrid"))[0] || {}).BOND_PRINCIPAL || ""); //bond Description template = template.replace(/DESCRIPTION_OF_PROJECT/gi, (u.get_grid_data(u.getGlobal("bondRiskGrid"))[0] || {}).BOND_DESCRIPTION || ""); template = template.replace(/DATE_OF_SIGNING_BOND/gi, u.get_date()); template = template.replace(/CUR_CODE/gi, $("#POLH_CURRENCY").val() || ""); template = template.replace(/NAME_OF_BRANCH_UNIT/gi, $("#OFF_NAME").val() || ""); template = template.replace(/NUMBER_OF_DAYS/gi, (u.get_grid_data(u.getGlobal("bondRiskGrid"))[0] || {}).BOND_VALIDITY_PERIOD || ""); //bond Amount if ($("#POLH_CLASS_CODE").val() === "8000") { const risk = (u.get_grid_data(u.getGlobal("bondRiskGrid"))[0] || {}).INS_UWD_RISK_COVERS; const coverdtl = JSON.parse(risk); template = template.replace(/BOND_AMOUNT_IN_WORDS_AND_FIGURES/gi, (coverdtl[0] || {}).RCOV_SI_BC || 0.00); } } else if ($("#POLH_CLASS_CODE").val() === "7000") { // Open Cover number template = template.replace(/OPEN_COVER_NO/gi, $("#POLH_DISPLAY_NO").val() || ""); template = template.replace(/INSURED_NAME/gi, $("#POLH_CUST_NAME").val() || ""); } } return template; }); /*** * Attach checklist on new button.. for travel form.. * * **/ u.setGlobal("AttachDocumentChecklist", function (code) { s.get_product(code, function (response) { if (!jQuery.isEmptyObject(response)) { u.setGlobal("productData", response.Product); // add the default documents... if (response.Documents) { let document = {}; let grid = u.getGlobal("udwPolDocsGrid"); u.clear_grid_data(u.getGlobal("udwPolDocsGrid")); for (let i in response.Documents) { let record = {}; record.PW_NAME = response.Documents[i].MM_NAME; record.PW_CODE = response.Documents[i].MM_CODE; record.PW_TEMPLATE = response.Documents[i].MM_TEMPLATE; record.PW_CRTE_BY = u.getUserCode(); record.PW_STATUS = "A"; document[i] = record; grid.addRowData(undefined, record); } } // set up checkList if (response.CheckList) { $scope.setupDocumentation(response.CheckList); } } }); }); })(jQuery, window.service, window.utility, {}); (function ($, s, u, $scope) { $(function () { u.setGlobal("renewal", function (callback) { var renewalData = u.parse_form("#renewalForm"); var startDate = $("#effectiveDate").val(); var endDate = $("#endDate").val(); var renNo = renewalData.renNo = parseInt($("#POLH_RENEW_SER_NO").val() || 0) + 1; $("#POLH_RENEW_SER_NO").val(renNo); $("#POLH_END_NO").val(0); $("#POLH_TXN_STATE").val("R"); $("#POLH_POL_START_DATE").val(startDate); $("#POLH_POL_UW_YEAR").val(u.getYear(startDate)); $("#POLH_POL_END_DATE").val(endDate); //Commissions u.setGridColumn(u.getGlobal("udwAgntCommGrid"), { "CMM_END_NO": 0, "CMM_RNW_NO": renNo }); //Prem Register u.setGridColumn(u.getGlobal("udwPremRegGrid"), { "PR_END_NO": 0, "PR_RNW_NO": renNo }); //policy documents u.setGridColumn(u.getGlobal("udwPolDocsGrid"), { "PF_PH_END_NO": 0, "PF_PH_RNW_NO": renNo }); //Pol fees summary u.setGridColumn(u.getGlobal("udwPolFeesGrid"), { "POL_FEE_END_NO": 0, "POL_FEE_RNW_NO": renNo }); u.setGridColumn(u.getGlobal("udwRIGrid"), { "INS_RI_TTY_ALLOCATION": function (val) { var allocations = JSON.parse(val || "[]"); allocations.ForEach(a => { a.TTA_CLOSE_FLAG = "Y"; a.TTH_RISK_END_NO = 0; a.TTH_RNW_NO = renNo; }); return JSON.stringify(allocations); } }); u.formReadWrite(); u.form_text_Black_color(); callback(renewalData); }); }); })(window.jQuery, window.service, window.utility, {}); (function(s,u) { s.add({ getRiCombination: function(code, success,error) { u.get(`${this.backend}api/ricombination/${code}`, success, error); }, getRiCombinations: function(success,error) { u.get(`${this.backend}api/ricombination`, success, error); }, getRiCombinationLov: function(success,error) { u.get(`${this.backend}api/ricombination/lov`, success, error); }, riCombinationSave: function(data,success,error) { u.post(`${this.backend}api/ricombination/save`, data, success, error); }, riCombinationSearch: function (query, success, error) { u.get(`${this.backend}api/ricombination/search/${query}`, success, error); }, riCombinationCheck: function (code, success, error) { u.get(`${this.backend}api/ricombination/check/${code}`, success, error); }, }); })(window.service, window.utility); (function ($, s, u, $scope) { $(function () { /*----------------------------- * File grid definition *---------------------------*/ $scope.file_grid = u.default_grid("#grdFile", "#grdFilePager", "File List", ["Code", "File Name", "File Type Code","Category Code", "File Type Name", "Tag", "File Size", "File Mime Type", "Web URL", "System URL", "Status", "Created By", "Created At","Modified By","Modified Date"], [ { name: "MSF_SYS_ID", index: "MSF_SYS_ID", hidden: true }, { name: "MSF_FILE_NAME", index: "MSF_FILE_NAME" }, { name: "MSF_FP_CODE", index: "MSF_FP_CODE" }, { name: "MSF_FC_CODE", index: "MSF_FC_CODE" }, { name: "FP_FILE_TYPE", index: "FP_FILE_TYPE" }, { name: "MSF_DESCRIPTION", index: "MSF_DESCRIPTION" }, { name: "MSF_FILE_SIZE", index: "MSF_FILE_SIZE" }, { name: "MSF_FILE_MIME_TYPE", index: "MSF_FILE_MIME_TYPE", hidden: true }, { name: "MSF_WEB_URL", index: "MSF_WEB_URL", hidden: true }, { name: "MSF_SYS_URL", index: "MSF_SYS_URL", hidden: true }, { name: "MSF_STATUS", index: "MSF_STATUS" }, { name: "MSF_CRETE_BY", index: "MSF_CRETE_BY" }, u.dateTimeColumn("MSF_CRTE_DATE"), { name: "MSF_MOD_DATE", index: "MSF_MOD_DATE" }, u.dateTimeColumn("MSF_MOD_BY") ], function (id) { var grid = $scope.file_grid; $("form input[name='MSF_SYS_ID']").data("update", true); //u.fill_form({ // MSF_SYS_ID: grid.jqGrid("getCell", id, "MSF_SYS_ID"), // MSF_FILE_NAME: grid.jqGrid("getCell", id, "MSF_FILE_NAME"), // MSF_FP_CODE: grid.jqGrid("getCell", id, "MSF_FP_CODE"), // FP_FILE_TYPE: grid.jqGrid("getCell", id, "FP_FILE_TYPE"), // MSF_FILE_SIZE: grid.jqGrid("getCell", id, "MSF_FILE_SIZE"), // MSF_FILE_MIME_TYPE: grid.jqGrid("getCell", id, "MSF_FILE_MIME_TYPE"), // MSF_WEB_URL: grid.jqGrid("getCell", id, "MSF_WEB_URL"), // MSF_SYS_URL: grid.jqGrid("getCell", id, "MSF_SYS_URL"), // MSF_DESCRIPTION: grid.jqGrid("getCell", id, "MSF_DESCRIPTION") //}, "#fileManagerForm"); }); $scope.saving = false; /** *
*/ $("#SIBALIFE_FILE").on("change", function () { var that = this; /*------------------------------------------- * check if the file type has been selected *-----------------------------------------*/ if (!u.field_empty("#MSF_FP_CODE")) { /*------------------------------------------------------- * obtain the file properties of the file type selected *-----------------------------------------------------*/ s.getFileProperty($("#MSF_FP_CODE").val(), function(props) { if (props && props["FP_MAX_SIZE"]) { $scope.files = $(that)[0].files; console.log($scope.files); /*------------------------------------------------- * determine the unit for measuring the file size *-----------------------------------------------*/ var q = 0; switch (props["FP_SIZE_UNIT"]) { case "KB": q = 1024; break; case "MB": q = 1048576; break; case "GB": q = 1073741824; break; case "TB": q = 1099511627776; break; default: break; } u.forEach($scope.files, function(value,key) { if (value.name && value.size) { if ((value.size / q).toPrecision(3) <= props["FP_MAX_SIZE"]) { if (props["FP_FILE_TYPE"] === "Image") { /*---------------------------------------------------------------------- * todo: logic to resize image to the max and minimun widths specified * if the file type is image *--------------------------------------------------------------------*/ var image = new Image(); image.src = ""; var canvas = document.createElement("canvas"); var ctx = canvas.getContext("2d"); var reader = new FileReader(); reader.readAsDataURL(value.slice(0, value.size)); reader.onloadstart = function(parameters) { $("#pic-spinner").show(0); }; $scope.object = {}; reader.onloadend = function(data) { $scope.addListItem(value,q,props, data); }; } else { $scope.addListItem(value,q,props); } } else { u.growl_error(value.name + " file exceeds the max size specified in file properties"); } } }); } else { u.growl_error("Unable to obtain File properties, please select a file again"); } }); } else { u.growl_info("Please select the type of file you want to upload"); } }); $("#btnUploadFile").click(function() { s.uploadFile("#SIBALIFE_FILE", "SIBALIFE_FILE", function (response) { for (var i in response) { u.fill_form(response[i], "#fileManagerForm"); } }); }); $scope.addListItem = function (value,q,props,data) { var thumbs = data ? `
` : ""; var lstItem = $(`
${thumbs}File Name: ${$("#MSF_FILE_NAME").val() }  |  File Size: ${(value.size / q).toPrecision(3)}${props["FP_SIZE_UNIT"] }
`); $(lstItem).data({ MSF_FILE_NAME: $("#MSF_FILE_NAME").val(), MSF_FILE_SIZE: value.size, MSF_FILE_MIME_TYPE: value.type, MSF_WEB_URL: "", MSF_SYS_URL: "", MSF_DESCRIPTION: "", MSF_FP_CODE: props["FP_CODE"], MSF_FC_CODE: $("#MSF_FC_CODE").val(), FP_FILE_TYPE: props["FP_FILE_TYPE"], MSF_CRETE_BY: u.getUserCode(), MSF_CRTE_DATE: u.get_date(), MSF_STATUS: "U", file: value }); $(".file-list").append(lstItem); $("#pic-spinner").hide(0); console.log(lstItem.data()); }; /*--------------------- * single file upload *-------------------*/ $("body").delegate(".upload-list-item", "click", function () { var listItem = $(this).parents(".file-list-item"); /*------------------------------ * check if the field is empty *----------------------------*/ if (!u.field_empty(listItem.find("input[name='MSF_DESCRIPTION']"))) { var fileData = listItem.data(); s.uploadFile(fileData.file, function(response) { if (Array.isArray(response)) { var uploadData = response[0]; fileData.MSF_FC_CODE = $("#MSF_FC_CODE").val(); fileData.MSF_FILE_NAME = $("#MSF_FILE_NAME").val();//replace with inputs fileData.MSF_WEB_URL = uploadData["MSF_WEB_URL"]; fileData.MSF_SYS_URL = uploadData["MSF_SYS_URL"]; fileData.MSF_DESCRIPTION = listItem.find("input[name='MSF_DESCRIPTION']").val(); listItem.data(fileData); u.growl_success("File Successfully uploaded, please add to grid"); } else { u.growl_error("Error uploading file."); } listItem.find(".upload-list-item").hide(); listItem.find(".cancel-list-item").hide(); listItem.find(".btn-cont").append(''); listItem.find("input[name='MSF_DESCRIPTION']").prop("readonly","readonly"); }); } else { u.growl_warning("File tag field must not be empty"); } }); /*------------------------------- * remove file from upload list *-----------------------------*/ $("body").delegate(".cancel-list-item", "click", function() { }); /*------------------------ * add file item to grid *----------------------*/ $("body").delegate(".add-grid", "click", function () { var listItem = $(this).parents(".file-list-item"); var fileData = listItem.data(); $scope.file_grid.addRowData(fileData.index, fileData); listItem.remove(); }); /*-------------------------------------------------- * call add function to add records to File_grid *------------------------------------------------*/ // $("#btn_add_record_file").on("click", function () { if (u.form_validation("#fileManagerForm")) { u.modal_confirmation("Are you sure you want to add File to the grid?", function () { if ($("#MSF_SYS_ID").val() === "") { /*--------------------------------------------------------------- * call warning dialog message errorMssgeModal errorMssgeModal *-------------------------------------------------------------*/ // u.growl_warning("The code field cannot be null, Please check and try again"); } else { var rowIds = $scope.file_grid.jqGrid("getDataIDs"); /*---------------------------------------------- * declare array to contain the codes to verify *--------------------------------------------*/ // var code = []; /*------------------------------------------------------------ * iterate through the rows and check duplicate each of them *----------------------------------------------------------*/ // for (var i = 0, len = rowIds.length; i < len; i++) { var currRow = rowIds[i]; /*------------------------------------------------ * get value of the cell or column in an array *----------------------------------------------*/ // var cellValue = $scope.file_grid.jqGrid("getCell", currRow, "MSF_SYS_ID"); code.push(cellValue); } /*---------------------------------------- * add if code is not found in the Grid *--------------------------------------*/ // if ($.inArray($("#MSF_SYS_ID").val(), code) < 0) { var formData = u.parse_form("#fileManagerForm"); formData.MSF_STATUS = "U"; formData.MSF_CRETE_BY = u.getUserCode(); formData.MSF_CRTE_DATE = u.get_date(); $scope.file_grid.addRowData(formData.MSF_SYS_ID, formData); u.hide_confirm(); u.growl_success("File successfully added to grid"); } else { u.hide_confirm(); u.growl_warning(`Code exists, you cannot add same Code : ${cellValue}`); } } }); } else { u.growl_error("Please fill all fields that are marked red"); } }); /*---------------------- * LOV initialization *--------------------*/ $scope.lov = u.lov_init("#myLOVModal", "#grdLOV", "#grdLOVPager"); /*---------------------------- * lov button click handling *---------------------------*/ $("body").delegate(".btn_lov", "click", function () { $scope.dialog_data = $(this).data("dialog"); if (!$scope.dialog_data) { return false; } switch ($scope.dialog_data.type) { case "btn_file_type": $scope.lov.call_dialog("Select File Type", "geFilePropertyLov", $scope.dialog_data); break; case "btn_file_category": $scope.lov.call_dialog("Select File Category", "getFileCategoryLov", $scope.dialog_data); break; } }); /*---------------------------------------------------- * Remove record or Mark for deletion from File Grid *---------------------------------------------------*/ $("#btn_remove_record_file").on("click", function () { if (u.grid_empty($scope.file_grid)) return u.growl_info("The File grid is empty"); var grid = $scope.file_grid; var rowId = grid.jqGrid("getGridParam", "selrow"); var recordStatus = grid.jqGrid("getCell", rowId, "MSF_STATUS"); var code = grid.jqGrid("getCell", rowId, "MSF_SYS_ID"); /*--------------------------------- * Display modal message *------------------------------*/ // u.modal_confirmation("Are you sure you want to remove the Record?", function (e) { /*-------------------------------------------- * Remove newly added record before saving *------------------------------------------*/ // if (recordStatus == "U") { grid.jqGrid("delRowData", rowId); u.hide_confirm(); u.growl_hide("File successfully deleted"); } /*---------------------------------------- * Mark a record for deletion on saving *--------------------------------------*/ // if (recordStatus == "A") { grid.jqGrid("setCell", rowId, "MSF_STATUS", "D"); $(`#${rowId}`, "#grdFile").css({ color: "red" }); u.hide_confirm(); u.growl_hide("File successfully marked for deletion, please click on the save button to save changes"); } else if (recordStatus === "D") { $(`#${rowId}`, "#grdFile").css({ color: "black" }); grid.jqGrid("setCell", rowId, "MSF_STATUS", "A"); u.hide_confirm(); u.growl_hide("File successfully restored"); } }); }); /*-------------------------------- * Edit/Update Function *------------------------------*/ // $("#btn_update_record_file").on("click", function () { if (u.grid_empty($scope.file_grid)) return u.growl_info("The File grid is empty"); u.modal_confirmation("Are you sure you want to update the selected File?", function () { var grid = $scope.file_grid; var rowId = grid.jqGrid("getGridParam", "selrow"); var code = grid.jqGrid("getCell", rowId, "MSF_SYS_ID"); if (code === $("#MSF_SYS_ID").val()) { var data = u.parse_form("#fileManagerForm"); for (var i in data) grid.jqGrid("setCell", rowId, i, data[i]); u.hide_confirm(); u.growl_success("File successfully updated"); $("form input[name='MSF_SYS_ID']").data("update", false); } else { u.hide_confirm(); u.growl_info("Please Select a row to edit"); } }); }); /*----------------------------- * Save/Update Data *---------------------------*/ // $("#btn_SaveFile").on("click", function () { if (u.grid_empty($scope.file_grid)) return u.growl_info("The File grid is empty"); u.modal_confirmation("Are you sure you want to Save Changes?", function (e) { /*----------------------------- * obtain data from the grid *---------------------------*/ console.log(u.get_grid_data($scope.file_grid)); /*----------------------------------- * send data to backend for saving *---------------------------------*/ if (!$scope.saving) { $scope.saving = true; s.saveFiles(u.get_grid_data($scope.file_grid), function (responseData) { $scope.saving = false; if (responseData.state) { u.update_grid_status($scope.file_grid, "MSF_STATUS"); u.hide_confirm(); u.growl_success(responseData.message); } else { u.growl_error(responseData.message); } }, function () { u.hide_confirm(); $scope.saving = false; u.growl_error("Server Please try again Later"); }); } }); }); /*-------------------------- * Delete/Update Data *------------------------*/ // $("#btn_DeleteFile").on("click", function () { u.modal_confirmation("Are you sure you want Delete the Record?", function (e) { u.modal_confirmation("Wait while the transaction is being deleted.........."); }); }); /*------------------------------ * Refresh or Reset form *----------------------------*/ // $("#btn_ResetFile").on("click", function () { u.modal_confirmation("Are you sure you want to clear all data from the form?", function (e) { u.form_reset("#fileManagerForm"); u.clear_grid_data($scope.file_grid); u.hide_confirm(); u.growl_success("File form successfully cleared"); }); }); /*------------------------------------------ * Tabs Layout function call using jQuery *----------------------------------------*/ // $("#tabs").tabs({ beforeLoad: function (event, ui) { ui.jqXHR.fail(function () { ui.panel.html( "Couldn't load this tab. We'll try to fix this as soon as possible. " + "If this wouldn't be a demo."); }); } }); /*----------------------------------- * exporting of the grid to excel *----------------------------------*/ $("#export-btn_file").click(function () { /*----------------------------------------- * function to export grid data into excel *----------------------------------------*/ u.excel_export($scope.file_grid, ["ID"], "File_List_Excel"); }); /*--------------------------- * File Search *-------------------------*/ $("#btnQueryFile").click(function () { var queryTxt = $("#txtSearchFile").val(); if (queryTxt != null && queryTxt.length > 0) { s.searchFile(queryTxt, function (result) { /* * clear grid before populating */ $scope.file_grid.jqGrid("clearGridData"); for (var i in result) { $scope.file_grid.addRowData(result[i].MSF_SYS_ID, result[i]); } }, function (err) { }); } else { /*-------------------------------- * clear grid before populating *------------------------------*/ $scope.file_grid.jqGrid("clearGridData"); //fetch all cities s.getFiles(function (cities) { for (var i in cities) { cities[i].FP_FILE_TYPE = cities[i].MS_SYS_FILE_PROP.FP_FILE_TYPE; $scope.file_grid.addRowData(cities[i].MSF_SYS_ID, cities[i]); } }); } }); /*----------------------------- * city code validation *-----------------------*/ u.codeVal("form input[name='MSF_SYS_ID']", "check_city_code"); /*----------------------------- * Region LOV code validation *---------------------------*/ u.lovCodeVal("form input[name='MSF_FP_CODE']", "check_region_lov_code", "form input[name='FP_FILE_TYPE']"); });//document ready function })(window.$, window.service, window.utility, {}); (function (s, u) { s.add({ getFileProperty: function (code, success, error) { u.get(this.backend + "api/fileproperty/" + code, success, error); }, getFileProprerties: function (success, error) { u.get(this.backend + "api/fileproperty", success, error); }, geFilePropertyLov: function (success, error) { u.get(this.backend + "api/fileproperty/lov", success, error); }, saveFileProperty: function (causes, success, error) { u.post(this.backend + "api/fileproperty/save", causes, success, error); }, serachFileProperty: function (query, success, error) { u.get(this.backend + "api/fileproperty/search/" + query, success, error); }, checkFilePropertyCode: function (code, success, error) { u.get(this.backend + "api/fileproperty/check/" + code, success, error); }, checkFilePropertyLovCode: function (code, success, error) { u.get(this.backend + "api/fileproperty/check/" + code, success, error); } }); })(window.service, window.utility); (function(s, u) { s.add({ getSchemasAsync: async function() { return await u.getAsync(`${this.wf}wf/scheme`); }, getSchemas: async function() { return await u.getAsync(`${this.wfd}getschemelist/`); }, searchSchemaAsync: async function(query) { return await u.getAsync(`${this.wf}wf/scheme/search/${query}`); }, schemaLovAsync: async function() { return await u.getAsync(`${this.wf}wf/scheme/lov`); }, getSchemaActivityCommandsLov: function(param, success, error) { u.get(`${this.wf}wf/process/commands/lov/${param.processId}/${param.userCode}`, success, error); }, getSchemaActivityCommands: async function(processId, userCode) { return await u.getAsync(`${this.wf}wf/process/commands/${processId}/${userCode}`); }, getWorkflowUsers: function(role, success, error) { u.get(`${this.wf}wf/userRoles/users/${role}`, success, error); }, getWorkflowUsersAsync: async function(role) { return await u.getAsync(`${this.wf}wf/userRoles/users/${role}`); }, executeCommandAsync: async function(data) { return await u.postAsync(`${this.wf}wf/process/execute`, data); }, getCurrentActivityAsync: async function (id) { return await u.getAsync(`${this.wf}wf/process/current/activity/${id}`); }, getCurrentStateAsync: async function (id) { return await u.getAsync(`${this.wf}wf/process/current/state/${id}`); }, getProcessUsersAsync: async function (processId) { return await u.getAsync(`${this.wf}wf/userroles/process/users/${processId}`); }, getProcessUsers: function (processId,success,error) { u.get(`${this.wf}wf/userroles/process/users/${processId}`, success, error); }, getUserDetailsAsync: async function (id) { return await u.getAsync(`${this.auth}/api/account/user/${id}`); }, sendTaskAssignmentEmailAsync: async function (json) { return await u.postAsync(`${this.backend}/api/workflowservice/notify/task/assignment`, json); }, getProcessIdAsync: async function (CaseNo) { return await u.getAsync(`${this.backend}api/wfnotification/${CaseNo}`,CaseNo); }, getinstanceinfoAsync: async function (processid) { return await u.postAsync(`${s.wfd}/getinstanceinfo/${processid}`); }, getavailablestatetosetAsync: async function (processid) { return await u.postAsync(`${s.wfd}/getavailablestatetoset/${processid}`) }, postsetstateAsync: async function (obj) { return await u.postAsync(`${s.wfd}/setstate/${obj.processId}`, obj) }, createWorkflowNotificationAsync: async function (obj) { return await u.postAsync(`${this.backend}/api/wfnotification/Create`, obj); }, createNewWorkflowNotificationAsync: async function (obj) { return await u.postAsync(`${this.backend}/api/wfnotification/Create/New`, obj); }, searchUsersAsync: async function (query) { return await u.getAsync(`${this.auth}api/account/users/lov?query=${query}`); }, setStateAsync: async function (formData) { return await u.postFormDataAsync(`${s.wfapp}/configapi`, formData); } }); })(window.service, window.utility); (function (s, u) { s.add({ getAllStrategicBusinessUnitsAsync: async function () { return await u.getAsync(`${this.backend}api/strategic/business/unit`); }, saveStrategicBusinessUnitsAsync: async function (units, success, error) { return await u.postAsync(`${this.backend}api/strategic/business/unit`, units, success, error); }, searchStrategicBusinessUnitsAsync: async function (query, success, error) { return await u.getAsync(`${this.backend}api/strategic/business/unit/search/` + query, success, error); }, checkStrategicBusinessUnitsCodeAsync: async function (code, success, error) { return await u.get(`${this.backend}api/strategic/business/unit/check/` + code, success, error); }, getLovStrategicBusinessUnitsAsync: async function (success, error) { return await u.getAsync(`${this.backend}api/strategic/business/unit/lov`, success, error); }, getLovSourceOfBusinessAsync: function (success, error) { return u.get(`${this.backend}api/SourceBusiness/lov`, success, error); } }); })(window.service, window.utility); (function ($, u, s, $scope) { $(function () { $scope.mailExample = "\t Dear [Customer], your [Class] policy with policy number [PolicyNo] is due for renewal " + "at an amount of GHS [Premium].You can pay with this payment pin: [PaymentPin] using our USSD service, or visit this link to pay - [Url]." + "\n Thank you."; $scope.editor = tinymce.init({ selector: "#editor", toolbar: "undo redo styleselect bold italic alignleft aligncenter alignright bullist numlist outdent indent image link forecolor backcolor", plugins: "print table lists advlist code image link textcolor colorpicker emoticons contextmenu autolink help preview wordcount visualchars preview codesample", advlist_bullet_styles: "square circle", contextmenu: "link image inserttable | cell row column deletetable", height: "400px", contextmenu_never_use_native: true, }); $("#editor").text(""); }); })(window.jQuery, window.utility, window.service, {}); (function(s,u) { s.add({ fetchMemoAsync: async function(code) { return await u.getAsync(`${this.backend}api/memo/${code}`); }, fetchMemoByTypeAsync: async function (type) { return await u.getAsync(`${this.backend}api/memo/${type}`); }, fetchMemoByTypeLov: function (type, success, error) { u.get(`${this.backend}api/memo/lov/${type}`, success, error); }, searchMemoAsync: async function (filters) { return await u.postAsync(`${this.backend}api/memo/search`, filters); }, getMemosAsync: async function () { return await u.getAsync(`${this.backend}api/memo`); }, saveMemoAsync: async function (memo) { return await u.postAsync(`${this.backend}api/memo`, memo); }, getClassOBsAsync: async function () { return await u.getAsync(`${this.backend}api/product`); }, fetchMemoByProduct: function (productCode, success, error) { u.get(`${this.backend}api/memo/product/${productCode}`, success, error); }, fetchMemoByAccountType: function (acctType, success, error) { u.get(`${this.backend}api/memo/AccountCategory/${acctType}`, success, error); }, fetchHelpDocumentAsync: async function (productCode, success, error) { return await u.getAsync(`${this.backend}api/memo/product/help/${productCode}`, success, error); } }); })(window.service, window.utility); // 4.8.2 (2018-08-09) !function(){"use strict";var e,t,n,r,o,i,a,u,s,c,l,f,d,m,g,p,h,v=function(){for(var e=[],t=0;t+~]|"+ut+")"+ut+"*"),gt=new RegExp("="+ut+"*([^\\]'\"]*?)"+ut+"*\\]","g"),pt=new RegExp(lt),ht=new RegExp("^"+st+"$"),vt={ID:new RegExp("^#("+st+")"),CLASS:new RegExp("^\\.("+st+")"),TAG:new RegExp("^("+st+"|[*])"),ATTR:new RegExp("^"+ct),PSEUDO:new RegExp("^"+lt),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ut+"*(even|odd|(([+-]|)(\\d*)n|)"+ut+"*(?:([+-]|)"+ut+"*(\\d+)|))"+ut+"*\\)|)","i"),bool:new RegExp("^(?:checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped)$","i"),needsContext:new RegExp("^"+ut+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ut+"*((?:-\\d)?\\d*)"+ut+"*\\)|)(?=[^-]|$)","i")},bt=/^(?:input|select|textarea|button)$/i,yt=/^h\d$/i,Ct=/^[^{]+\{\s*\[native \w/,xt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,wt=/[+~]/,Nt=/'|\\/g,Et=new RegExp("\\\\([\\da-f]{1,6}"+ut+"?|("+ut+")|.)","ig"),St=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)};try{ot.apply(tt=it.call(We.childNodes),We.childNodes),tt[We.childNodes.length].nodeType}catch(Kw){ot={apply:tt.length?function(e,t){rt.apply(e,it.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}var Tt=function(e,t,n,r){var o,i,a,u,s,c,l,f,d,m;if((t?t.ownerDocument||t:We)!==Ee&&Ne(t),n=n||[],!e||"string"!=typeof e)return n;if(1!==(u=(t=t||Ee).nodeType)&&9!==u)return[];if(Te&&!r){if(o=xt.exec(e))if(a=o[1]){if(9===u){if(!(i=t.getElementById(a))||!i.parentNode)return n;if(i.id===a)return n.push(i),n}else if(t.ownerDocument&&(i=t.ownerDocument.getElementById(a))&&_e(t,i)&&i.id===a)return n.push(i),n}else{if(o[2])return ot.apply(n,t.getElementsByTagName(e)),n;if((a=o[3])&&me.getElementsByClassName)return ot.apply(n,t.getElementsByClassName(a)),n}if(me.qsa&&(!ke||!ke.test(e))){if(f=l=$e,d=t,m=9===u&&e,1===u&&"object"!==t.nodeName.toLowerCase()){for(c=ve(e),(l=t.getAttribute("id"))?f=l.replace(Nt,"\\$&"):t.setAttribute("id",f),f="[id='"+f+"'] ",s=c.length;s--;)c[s]=f+Lt(c[s]);d=wt.test(e)&&Ot(t.parentNode)||t,m=c.join(",")}if(m)try{return ot.apply(n,d.querySelectorAll(m)),n}catch(g){}finally{l||t.removeAttribute("id")}}}return ye(e.replace(ft,"$1"),t,n,r)};function kt(){var r=[];return function e(t,n){return r.push(t+" ")>ge.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function At(e){return e[$e]=!0,e}function _t(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&(~t.sourceIndex||1<<31)-(~e.sourceIndex||1<<31);if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function Rt(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function Dt(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function Bt(a){return At(function(i){return i=+i,At(function(e,t){for(var n,r=a([],e.length,i),o=r.length;o--;)e[n=r[o]]&&(e[n]=!(t[n]=e[n]))})})}function Ot(e){return e&&typeof e.getElementsByTagName!==Ze&&e}for(de in me=Tt.support={},he=Tt.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},Ne=Tt.setDocument=function(e){var t,s=e?e.ownerDocument||e:We,n=s.defaultView;return s!==Ee&&9===s.nodeType&&s.documentElement?(Se=(Ee=s).documentElement,Te=!he(s),n&&n!==function(e){try{return e.top}catch(t){}return null}(n)&&(n.addEventListener?n.addEventListener("unload",function(){Ne()},!1):n.attachEvent&&n.attachEvent("onunload",function(){Ne()})),me.attributes=!0,me.getElementsByTagName=!0,me.getElementsByClassName=Ct.test(s.getElementsByClassName),me.getById=!0,ge.find.ID=function(e,t){if(typeof t.getElementById!==Ze&&Te){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},ge.filter.ID=function(e){var t=e.replace(Et,St);return function(e){return e.getAttribute("id")===t}},ge.find.TAG=me.getElementsByTagName?function(e,t){if(typeof t.getElementsByTagName!==Ze)return t.getElementsByTagName(e)}:function(e,t){var n,r=[],o=0,i=t.getElementsByTagName(e);if("*"===e){for(;n=i[o++];)1===n.nodeType&&r.push(n);return r}return i},ge.find.CLASS=me.getElementsByClassName&&function(e,t){if(Te)return t.getElementsByClassName(e)},Ae=[],ke=[],me.disconnectedMatch=!0,ke=ke.length&&new RegExp(ke.join("|")),Ae=Ae.length&&new RegExp(Ae.join("|")),t=Ct.test(Se.compareDocumentPosition),_e=t||Ct.test(Se.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},Qe=t?function(e,t){if(e===t)return we=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!me.sortDetached&&t.compareDocumentPosition(e)===n?e===s||e.ownerDocument===We&&_e(We,e)?-1:t===s||t.ownerDocument===We&&_e(We,t)?1:xe?at.call(xe,e)-at.call(xe,t):0:4&n?-1:1)}:function(e,t){if(e===t)return we=!0,0;var n,r=0,o=e.parentNode,i=t.parentNode,a=[e],u=[t];if(!o||!i)return e===s?-1:t===s?1:o?-1:i?1:xe?at.call(xe,e)-at.call(xe,t):0;if(o===i)return _t(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;a[r]===u[r];)r++;return r?_t(a[r],u[r]):a[r]===We?-1:u[r]===We?1:0},s):Ee},Tt.matches=function(e,t){return Tt(e,null,null,t)},Tt.matchesSelector=function(e,t){if((e.ownerDocument||e)!==Ee&&Ne(e),t=t.replace(gt,"='$1']"),me.matchesSelector&&Te&&(!Ae||!Ae.test(t))&&(!ke||!ke.test(t)))try{var n=(void 0).call(e,t);if(n||me.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(Kw){}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(Et,St),e[3]=(e[3]||e[4]||e[5]||"").replace(Et,St),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||Tt.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&Tt.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return vt.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&pt.test(n)&&(t=ve(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(Et,St).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=Ye[e+" "];return t||(t=new RegExp("(^|"+ut+")"+e+"("+ut+"|$)"))&&Ye(e,function(e){return t.test("string"==typeof e.className&&e.className||typeof e.getAttribute!==Ze&&e.getAttribute("class")||"")})},ATTR:function(n,r,o){return function(e){var t=Tt.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===o:"!="===r?t!==o:"^="===r?o&&0===t.indexOf(o):"*="===r?o&&-1)[^>]*$|#([\w\-]*)$)/,en=je.Event,tn=Yt.makeMap("children,contents,next,prev"),nn=function(e){return void 0!==e},rn=function(e){return"string"==typeof e},on=function(e,t){var n,r,o;for(o=(t=t||Gt).createElement("div"),n=t.createDocumentFragment(),o.innerHTML=e;r=o.firstChild;)n.appendChild(r);return n},an=function(e,t,n,r){var o;if(rn(t))t=on(t,Cn(e[0]));else if(t.length&&!t.nodeType){if(t=pn.makeArray(t),r)for(o=t.length-1;0<=o;o--)an(e,t[o],n,r);else for(o=0;o"===e.charAt(e.length-1)&&3<=e.length?[null,e,null]:Zt.exec(e)))return pn(t).find(e);if(n[1])for(r=on(e,Cn(t)).firstChild;r;)Jt.call(o,r),r=r.nextSibling;else{if(!(r=Cn(t).getElementById(n[2])))return o;if(r.id!==n[2])return o.find(e);o.length=1,o[0]=r}}else this.add(e,!1);return o},toArray:function(){return Yt.toArray(this)},add:function(e,t){var n,r,o=this;if(rn(e))return o.add(pn(e));if(!1!==t)for(n=pn.unique(o.toArray().concat(pn.makeArray(e))),o.length=n.length,r=0;r=a.length&&r(o)}))})})},eo=function(e){return Zr(e,Qr.nu)},to=function(n){return{is:function(e){return n===e},isValue:C,isError:y,getOr:H(n),getOrThunk:H(n),getOrDie:H(n),or:function(e){return to(n)},orThunk:function(e){return to(n)},fold:function(e,t){return t(n)},map:function(e){return to(e(n))},each:function(e){e(n)},bind:function(e){return e(n)},exists:function(e){return e(n)},forall:function(e){return e(n)},toOption:function(){return A.some(n)}}},no=function(n){return{is:y,isValue:y,isError:C,getOr:j,getOrThunk:function(e){return e()},getOrDie:function(){return e=String(n),function(){throw new Error(e)}();var e},or:function(e){return e},orThunk:function(e){return e()},fold:function(e,t){return e(n)},map:function(e){return no(n)},each:v,bind:function(e){return no(n)},exists:y,forall:C,toOption:A.none}},ro={value:to,error:no};function oo(e,u){var t=e,n=function(e,t,n,r){var o,i;if(e){if(!r&&e[t])return e[t];if(e!==u){if(o=e[n])return o;for(i=e.parentNode;i&&i!==u;i=i.parentNode)if(o=i[n])return o}}};this.current=function(){return t},this.next=function(e){return t=n(t,"firstChild","nextSibling",e)},this.prev=function(e){return t=n(t,"lastChild","previousSibling",e)},this.prev2=function(e){return t=function(e,t,n,r){var o,i,a;if(e){if(o=e[n],u&&o===u)return;if(o){if(!r)for(a=o[t];a;a=a[t])if(!a[t])return a;return o}if((i=e.parentNode)&&i!==u)return i}}(t,"lastChild","previousSibling",e)}}var io,ao,uo,so=function(t){var n;return function(e){return(n=n||function(e,t){for(var n={},r=0,o=e.length;r\"\u0060\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Mo=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Fo=/[<>&\"\']/g,Uo=/&#([a-z0-9]+);?|&([a-z0-9]+);/gi,zo={128:"\u20ac",130:"\u201a",131:"\u0192",132:"\u201e",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02c6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017d",145:"\u2018",146:"\u2019",147:"\u201c",148:"\u201d",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02dc",153:"\u2122",154:"\u0161",155:"\u203a",156:"\u0153",158:"\u017e",159:"\u0178"};ao={'"':""","'":"'","<":"<",">":">","&":"&","`":"`"},uo={"<":"<",">":">","&":"&",""":'"',"'":"'"};var Vo=function(e,t){var n,r,o,i={};if(e){for(e=e.split(","),t=t||10,n=0;n>10),56320+(1023&t))):zo[t]||String.fromCharCode(t):uo[e]||io[e]||(n=e,(r=er.fromTag("div").dom()).innerHTML=n,r.textContent||r.innerText||n);var n,r})}},Wo={},Ko={},Xo=Yt.makeMap,Yo=Yt.each,Go=Yt.extend,Jo=Yt.explode,Qo=Yt.inArray,Zo=function(e,t){return(e=Yt.trim(e))?e.split(t||" "):[]},ei=function(e){var u,t,n,r,o,i,s={},a=function(e,t,n){var r,o,i,a=function(e,t){var n,r,o={};for(n=0,r=e.length;n