var Bizgaze;
(function (Bizgaze) {
let Apps;
(function (Apps) {
let Transact;
(function (Transact) {
let Controls;
(function (Controls) {
class Opportunity extends Unibase.Platform.Core.BaseComponent {
constructor() {
super(...arguments);
this.g_IsAdmin = 1;
this.g_IsDealer = false;
this.g_OpportunityTypeId = 0;
this.g__OpportunityType = "";
this.g_BranchId = 0;
this.g_ItemLoadTypes = [];
this.g_OrganizationId = 0;
this.g_CountryId = 0;
this.g_OrgContactId = 0;
this.g_CompanyId = 0;
this.g_TagGroupId = 0;
this.g_PriceCodeId = 0;
this.g_InventoryApplyType = 0;
this.g_IsTaxInclusive = false;
this.g_IsShowEnablePieceChkbox = 0;
this.isSeriesDisabled = true;
this.g_IsCalculateTax = true;
this.g_CompositePriceType = 0;
this.g_IsApprovalRequired = false;
this.g_IsMobil = false;
this.g_IsLead = false;
this.g_LoyaltyPoints = 0;
this.g_LoadEligibleItemsOnly = false;
this.g_LoadOffersOnly = false;
this.g_LobId = 0;
this.g_IsEdit = false;
this.g_VisibleContainerId = "";
this.g_OpportunityFormId = 0;
}
init(formpropertyid, prop, callback) {
let instance = this;
let jsFiles = ["apps/transact/infos/orders/orderitem.js", "apps/transact/controls/opportunity/opportunityitem.component.js", "apps/transact/controls/pricelist/managers/pricelistmanager.js", "apps/transact/managers/payments/paymentmanager.js", "apps/crm/contacts/managers/contactmanager.js", "apps/crm/lobs/managers/lobmanager.js", "apps/transact/managers/paymentterms/paymenttermmanager.js", "platform/apps/managers/stagemanager.js", "apps/transact/managers/orders/ordermanager.js", "apps/transact/enums/enum.js", "platform/permission/enums/permission.js", "apps/transact/managers/invoicemanager.js", "apps/transact/managers/offers/offermanager.js", "platform/core/helpers/numberhelper/numberhelper.js", "libs/jquery/pagination/jquery.pagination.js", "apps/transact/components/opportunity/opportunityfilter.js", "apps/transact/managers/opportunity/opportunitymanager.js"];
instance.fileCacheHelper.loadJsFiles(jsFiles, function () {
let IsAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
if (!IsAdmin) {
instance.g_IsAdmin = 0;
}
else {
instance.g_IsAdmin = 1;
}
instance.g_IsDealer = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isRestrictedUser;
instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId);
instance.loadPropertySettings(prop.PropertySettings, prop.FormPropertyId, "");
instance._OpportunityItems = Bizgaze.Apps.Transact.Controls.OpportunityItem.Instance();
instance.g_VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
instance.g_OpportunityFormId = Unibase.Platform.Forms.Components.FormViewer.instance.FormId;
});
}
loadControl(containerid, prop) {
let html = '
' +
'
';
$("#" + containerid).html(html);
return "";
}
loadControlSettings(controlsettingjson, formpropertyid) {
let instance = this;
instance.g_OpportunityTypeId = Number($(".hdn_opportunitytypeid").val());
instance.g__OpportunityType = Bizgaze.Apps.Transact.Enums.OrderType[instance.g_OpportunityTypeId];
$(document).ready(function () {
if (Number($(".hdn_opportunityid").val()) == 0) {
instance.resetAllVariables();
$(".section_BasicDetails").addClass("hidden");
$(".section_OpportunityItems").addClass("hidden");
$(".section_OpportunityInformation").addClass("hidden");
$(".section_EditOpportunityMarketingSegmentation").addClass("hidden");
$(".section_CompetitorInformation,.section_VolumeAndMarginInformation").addClass("hidden");
$(".section_AdditionalInformation").addClass("hidden");
$(".section_CartDetails").addClass("hidden");
$(".section_PriceDetails").addClass("hidden");
$(".section_OpportunityDetails").addClass("hidden");
$(".section_ContactName").removeClass("hidden");
$(".btn_Save_Form").addClass("hidden");
instance.g_IsEdit = false;
}
else {
instance.editOpportunity();
instance.g_IsEdit = true;
}
$(".divCustomProperties_renewalopportunityid").addClass("hidden");
$("#ContinueShopping_Div").removeClass('hidden');
$('#bizgaze_body').on('keyup keypress', function (e) {
let keyCode = e.keyCode || e.which;
if (keyCode === 13) {
e.preventDefault();
return false;
}
});
let companyId = 0;
if (Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings != null) {
let companySetting = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings.find(x => x.settingName == "companyid");
if (companySetting != null && companySetting != undefined) {
companyId = companySetting.settingValue;
instance.g_BranchId = Number(Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings.find(x => x.settingName == "branchid").settingValue);
}
else {
instance.defaultBranchError();
}
}
else {
instance.defaultBranchError();
}
if (companyId != 0) {
let Parameters = [{ "ColumnName": "companyid", "Value": companyId, }];
if (Number($(".hdn_opportunityid").val()) > 0) {
let LobId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_lobid").Value);
Parameters = [
{ "ColumnName": "companyid", "Value": companyId, },
{ "ColumnName": "lobid", "Value": LobId, },
];
}
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_organizationid"), Parameters);
}
$(".txtAutoComplete_opportunitytype").change(function (res) {
if ($(".txtAutoComplete_opportunitytype option:selected").text() == "Renewal") {
$(".divCustomProperties_renewalopportunityid").removeClass("hidden");
$(".txtAutoComplete_renewalopportunityid").addClass('required');
}
else {
$(".divCustomProperties_renewalopportunityid").addClass("hidden");
$(".txtAutoComplete_renewalopportunityid").removeClass('required');
}
});
$(".txtAutoComplete_organizationid").change(function (res) {
if (Number($(".txtAutoComplete_organizationid").val() != -1) && $(".txtAutoComplete_organizationid").val() != '')
instance.changedOrganization();
});
let UserId = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().userId;
if (instance.g_IsDealer && Number($(".hdn_opportunityid").val()) == 0) {
Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getContactByUserId(UserId).then(function (response) {
let contactId = response.result.OrganizationId;
let organizationName = response.result.OrganizationName;
let contact = new Option(organizationName, contactId.toString(), true);
$(".txtAutoComplete_organizationid").append(contact);
$(".txtAutoComplete_organizationid").val(contactId).trigger("change");
$("#orgContact_back").addClass("hidden");
});
}
$("#btn_CloseForm_" + $("#hf_FormId").val()).after('
Back');
$("#cartItemsSearch").on("keyup", function () {
let value = $(this).val().toString().toLowerCase();
$("#ulOrder_Cart li:not(:first-child)").filter(function () {
$(this).toggle($(this).text().toLowerCase().indexOf(value) > -1);
});
});
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity || instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
instance.g_ItemLoadTypes = ["All Items", "Opp Groups", "Offers", "Filter"];
}
if (Number($(".hdn_opportunityid").val()) == 0) {
$("#btn_Save").addClass('hidden');
$("#formFooter").append('
');
}
$(".txtAutoComplete_shipfromaddressid").change(function () {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val(), false);
}
});
$(".txtAutoComplete_shippingaddressid").on("select2:select", function () {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
}
});
$(".txtAutoComplete_billingaddressid").on("select2:select", function () {
$(".txtAutoComplete_billingaddressid").val($(this).val());
if ($(this).val() != null && $(this).val() != undefined) {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
instance.LoadDefaultSeries($(".txtAutoComplete_lobid option:selected").val());
instance.LoadLoBs();
instance.g_CountryId = isNaN(Number($(".txtAutoComplete_billingaddressid").attr("data-addldata"))) ? 0 : Number($(".txtAutoComplete_billingaddressid").attr("data-addldata"));
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getAddressById(Number($(".txtAutoComplete_billingaddressid").val())).then(function (res) {
if (res.result.IsCashCustomer) {
$(".dropdown_paymentmethodid").val(1);
}
else {
$(".dropdown_paymentmethodid").val(0);
}
});
}
}
});
$(".txtAutoComplete_branchid").change(function () {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
instance.LoadDefaultSeries($(".txtAutoComplete_lobid option:selected").val());
instance.LoadLoBs();
instance.g_CountryId = isNaN(Number($(".txtAutoComplete_branchid").attr("data-addldata"))) ? 0 : Number($(".txtAutoComplete_branchid").attr("data-addldata"));
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getAddressById(Number($(".txtAutoComplete_branchid").val())).then(function (res) {
if (res.result.IsCashCustomer) {
$(".dropdown_paymentmethodid").val(1);
}
else {
$(".dropdown_paymentmethodid").val(0);
}
});
}
});
$(".txtAutoComplete_companyid").change(function () {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
$(".txtAutoComplete_branchid").empty();
$(".txtAutoComplete_shipfromaddressid").empty();
}
else {
$(".txtAutoComplete_billingaddressid").empty();
$(".txtAutoComplete_shippingaddressid").empty();
}
instance.loadAutoCompletes();
instance.bindBranch(Number($(".txtAutoComplete_companyid option:selected").val()));
if (Number($("#hf_pk_value").val()) == 0)
instance._OpportunityItems.LoadItems('All Items', instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
});
$(".txtAutoComplete_lobid").change(function () {
instance._OpportunityItems.g_PageIndex = 0;
let LobId = Number($(this).val());
instance.g_LobId = LobId;
instance.bindDetails(instance.g_OrganizationId, LobId);
$("#ulOrder_Cart").html('
Your Shopping Cart is empty.');
});
let timer;
$("#txt_SearchItem").on('input', function () {
clearTimeout(timer);
timer = setTimeout(function () {
instance._OpportunityItems.g_PageIndex = 0;
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
}, 300);
});
$("#ItemLoadType").change(function () {
$("#txt_SearchItem").val('');
$("#ItemLoadType option[value='0']").remove();
let type = $("#ItemLoadType option:selected").text();
instance._OpportunityItems.g_PageIndex = 0;
if (type == "Filter") {
instance.navigationHelper.popup(0, '', Bizgaze.Apps.Transact.Components.OpportunityFilter.Instance(), null, Unibase.Platform.Helpers.Size.Medium);
}
if (type == "Opp Groups") {
$("#div_ItemList").html('
');
}
else {
instance._OpportunityItems.LoadItems(type, instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
}
});
$(".ContinueShopping").unbind().click(function () {
instance.ContinueShopping();
});
$("#select2_CompanyId").change(function () {
let Ids = instance.GetCompanyIds();
if (Ids == "")
Ids = "0";
let url = _appsettings.server_url() + '/apis/v4/bizgaze/crm/companies/getbranchesbycompaniesAutoComplete/companyids/' + Ids;
AutoCompleteHelper.getHelper().Create("#select2_BranchId", "#hfAutoComplete_Branch", url, null);
});
$("#btnSection_Apply").unbind().click(function () {
$("#txt_SearchItem").val('');
$(".div_SearchItem").removeClass('floating-label-form-group-with-value');
});
$(".txt_opportunityname").keyup(function () {
$(".div_opportunityname").removeClass("form-group-required");
});
$(".number_estimatedyearlyconsumpton").keyup(function () {
$("#div_estimatedyearlyconsumpton").removeClass("form-group-required");
});
$(".number_distributoryearlygrossmargin").keyup(function () {
$("#div_distributoryearlygrossmargin").removeClass("form-group-required");
});
$(".number_flagshipvolume").keyup(function () {
$("#div_flagshipvolume").removeClass("form-group-required");
});
$(".number_greasevalueme").keyup(function () {
$("#div_greasevalueme").removeClass("form-group-required");
});
$(".number_premiumvolume").keyup(function () {
$("#div_premiumvolume").removeClass("form-group-required");
});
$(".number_standardvolume").keyup(function () {
$("#div_standardvolume").removeClass("form-group-required");
});
$(".number_oemvalueme").keyup(function () {
$("#div_oemvalueme").removeClass("form-group-required");
});
$(".number_flagshipvolume, .number_premiumvolume, .number_standardvolume, .number_oemvalueme").keyup(function () {
let SumofVoulmes = Number($(".number_flagshipvolume").val()) + Number($(".number_premiumvolume").val()) + Number($(".number_standardvolume").val()) + Number($(".number_oemvalueme").val());
if (SumofVoulmes > Number($(".number_estimatedyearlyconsumpton").val())) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Volume's must be less then Estimated Yearly Consumpton : " + Number($(".number_estimatedyearlyconsumpton").val()));
}
else {
if ($("#Bizgaze-messageInfo").text() != null) {
$("#Bizgaze-messageInfo").empty();
$("#Bizgaze-messageInfo").removeClass();
}
}
});
$(".number_recurtenure").removeClass("required");
$(".dropdown_recurtenuretypeid").removeClass("required");
$(".number_recuriterations").removeClass("required");
$(".number_recurtenure").val("");
$(".number_recuriterations").val("");
$("#chk_recurringopportunity").change(function () {
if ($("#chk_recurringopportunity").is(":checked")) {
$(".number_recurtenure").addClass("required");
$(".spnIsRequired_recurtenure").removeClass("hidden");
$(".dropdown_recurtenuretypeid").addClass("required");
$(".spnIsRequired_recurtenuretypeid").removeClass("hidden");
$(".number_recuriterations").addClass("required");
$(".spnIsRequired_recuriterations").removeClass("hidden");
}
else {
$(".number_recurtenure").removeClass("required");
$(".dropdown_recurtenuretypeid").removeClass("required");
$(".number_recuriterations").removeClass("required");
$(".number_recurtenure").val("");
$(".dropdown_recurtenuretypeid").val("0");
$(".number_recuriterations").val("");
}
});
$(".txtAutoComplete_leadsourceid").change(function () {
if ($(".txtAutoComplete_leadsourceid option:selected").text() == 'EB') {
$(".divCustomProperties_ebcontactid").removeClass('hidden');
}
});
if (instance.g_IsMobil) {
$(".divCustomProperties_ebcontactid").addClass('hidden');
if ($(".txtAutoComplete_leadsourceid option:selected").text() == 'EB') {
$(".divCustomProperties_ebcontactid").removeClass('hidden');
}
}
});
}
resetAllVariables() {
let instance = this;
$("#div_orgcontactid").removeClass("hidden");
instance.g_LoadOffersOnly = false;
instance._OpportunityItems.g_TagArray = [];
instance._OpportunityItems.g_FilteredTags = '';
instance._OpportunityItems.g_PageIndex = 0;
instance._OpportunityItems.g_LoadedItems = [];
instance._OpportunityItems.g_SelectedItems = [];
instance._OpportunityItems.g_CartItems_New = [];
instance._OpportunityItems.g_ItemsUnitPrice_New = [];
instance._OpportunityItems.g_IsEnableCompositePrice = false;
instance._OpportunityItems.g_IsEnablePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
instance._OpportunityItems.g_ValidFocItems = [];
if (!instance.g_IsEdit)
instance.g_LobId = 0;
Bizgaze.Apps.Transact.Components.OpportunityFilter.Instance().g_Tags = "";
Bizgaze.Apps.Transact.Components.OpportunityFilter.Instance().g_TagArray = [];
Bizgaze.Apps.Transact.Components.OpportunityFilter.Instance().g_OnlyFilters = false;
if ($(".hrefSection_MoreOptions").text() == 'Less Options') {
$(".section_AdvancedOptions").addClass('hidden');
$(".hrefSection_MoreOptions").text('More Options');
}
if ($("#Bizgaze-messageInfo").text() != null) {
$(".bizgaze_FormErrorMessages").empty();
}
$("#ulOrder_Cart").empty();
$("#totalOrderItems").text('0');
$("#OverallOrderQuantity").text('0');
$("#lblSummary_GrossAmount").text('0.0');
$("#lblSummary_TotalDiscount").text('0.0');
$("#lblSummary_AssessableTotal").text('0.0');
$("#lblSummary_TDSTotal").text('0.0');
$("#lblSummary_TaxTotal").text('0.0');
$("#lblSummary_ScrapDiscountAmount").text('0.0');
$("#lblSummary_NetTotal").text('0.0');
$(".txtAutoComplete_organizationid, .txtAutoComplete_orgcontactid, .txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txtAutoComplete_lobid, .txtAutoComplete_salespersonid").text('').val(0);
$("#txt_SearchItem").val('');
$(".div_SearchItem").removeClass("floating-label-form-group-with-value");
$(".dropdown_paymentmethodid").val(0);
$('.leverage-Warning').addClass('hidden');
$(".txt_opportunityname").val('');
$(".txt_opportunityname").text('');
$(".number_estimatedyearlyconsumpton").val('');
$(".number_distributoryearlygrossmargin").val('');
$(".number_flagshipvolume").val('');
$(".number_premiumvolume").val('');
$(".number_premiumvolume").val('');
$(".number_oemvalueme").val('');
$(".number_greasevalueme").val('');
$(".number_standardvolume").val('');
$(".txtAutoComplete_opportunitytype").val("0");
$(".txtAutoComplete_opportunitytype").text("");
$(".ddl_cascading_opportunitysubtype ").val("0");
$(".ddl_cascading_opportunitysubtype").text("");
$(".txtAutoComplete_renewalopportunityid").val("0");
$(".txtAutoComplete_renewalopportunityid").text("");
$("#div_flagshipvolume,#div_estimatedyearlyconsumpton,#div_distributoryearlygrossmargin,#div_premiumvolume,#div_standardvolume,#div_oemvalueme,#div_greasevalueme").removeClass().addClass('floating-label-form-group');
}
changedOrganization() {
let instance = this;
instance.g_IsLead = false;
instance.g_OrganizationId = 0;
if ($(".txtAutoComplete_organizationid").text() == '') {
instance.resetAllVariables();
}
$(".section_ContactName").find(".card-body").addClass("hidden");
$(".OrgContact_Details").remove();
instance.prependCustomerLink();
instance.g_OrganizationId = Number($('.txtAutoComplete_organizationid').val());
if (Number($(".txtAutoComplete_organizationid").attr('data-addldata')) == 1) {
instance.g_IsLead = true;
$(".divCustomProperties_billingaddressid").addClass('hidden');
$(".divCustomProperties_shippingaddressid").addClass('hidden');
$(".divCustomProperties_salespersonid").addClass('hidden');
$(".txtAutoComplete_billingaddressid").removeClass('required');
$(".txtAutoComplete_shippingaddressid").removeClass('required');
$(".hdn_leadid").val(instance.g_OrganizationId);
$(".hfAutoCompleteId_organizationid").val(0);
$('.txtAutoComplete_organizationid').empty();
}
else {
instance.g_IsLead = false;
$(".hdn_leadid").val(0);
$(".divCustomProperties_billingaddressid").removeClass('hidden');
$(".divCustomProperties_shippingaddressid").removeClass('hidden');
$(".txtAutoComplete_billingaddressid").removeClass('required');
$(".txtAutoComplete_shippingaddressid").removeClass('required');
$(".hdn_organizationid").val(Number($('.txtAutoComplete_organizationid').val()));
}
if (instance.g_IsMobil) {
instance.checkOppInformaton(instance.g_OrganizationId);
}
else {
instance.bindDetails(instance.g_OrganizationId, instance.g_LobId);
}
}
checkOppInformaton(OrganizationId) {
let instance = this;
Bizgaze.Apps.Transact.Managers.OpportunityManager.Instance().getOpportunityInformaion(OrganizationId).then(function (responce) {
if (responce.message != "") {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError(responce.message);
}
else if (responce.result != null && responce.result != "" && responce.result.CustomerSegmentId != 0) {
instance.bindDetails(instance.g_OrganizationId, instance.g_LobId);
}
else {
var uniqueid = 'Bizgaze_Platform_Crm_Marketing_Segmentation_Create_Marketing_Segmentation';
Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(uniqueid).then(function (response) {
var successCallBack = {
CallBack: function (id) {
Unibase.Platform.Forms.Components.FormViewer.instance.FormId = instance.g_OpportunityFormId;
instance.bindDetails(OrganizationId, instance.g_LobId);
},
Parameters: null,
};
var CloseCallBack = {
CallBack: function (id) {
instance.back();
$(".txtAutoComplete_organizationid").empty();
},
Parameters: null,
};
var formviewerObj = {
FormId: response.result.FormId,
AppConfigurationId: 0,
Pk_Value: 0,
PortletWidgetId: 0,
OnSuccess: successCallBack,
OnFail: null,
OnLoad: null,
OnClose: CloseCallBack
};
Unibase.Platform.Forms.Components.FormViewer.instance.init(formviewerObj);
setTimeout(function () {
Unibase.Platform.Forms.Components.FormViewer.instance.AppConfigType = undefined;
$(".hdn_leadid").val(0);
$(".hdn_mobilleadid").val(OrganizationId);
$(".hdn_contactid").val(OrganizationId);
}, 1000);
});
$(".section_EditOpportunityMarketingSegmentation").removeClass('hidden');
}
});
}
prependCustomerLink() {
let ContactName = $(".txtAutoComplete_organizationid option:selected").text();
if ((ContactName == "" || ContactName == null) && Opportunity.instance.g_IsLead) {
ContactName = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_organizationname").Value;
}
let html = '
';
$(".section_ContactName").prepend(html).addClass("card pa-15");
}
customerLink() {
if ($(".section_BasicDetails").hasClass('hidden')) {
$(".section_BasicDetails").removeClass('hidden');
}
else {
$(".section_BasicDetails").addClass('hidden');
}
}
LoadDefaultSeries(LoBId) {
}
LoadLoBs() {
}
back() {
let instance = this;
$(".txtAutoComplete_organizationid").attr('data-addldata', '0');
if (Number($(".hdn_opportunityid").val()) != 0) {
$(".txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid").attr("disabled", "true");
$(".OrgContact_Details").addClass('hidden');
$(".section_ContactName").addClass("card").removeClass("pa-15");
$(".section_ContactName").find(".card-body").removeClass("hidden");
$(".section_PriceDetails, .section_Summary, #dropup_save").removeClass('hidden');
}
else {
instance.resetAllVariables();
$(".Section").addClass("hidden");
$(".section_ContactName").removeClass("hidden");
$(".section_ContactName").addClass("card").removeClass("pa-15");
$(".section_ContactName").find(".card-body").removeClass("hidden");
$(".OrgContact_Details").remove();
$(".CheckOutButton").addClass("hidden");
$(".SelectItemsButton").addClass("hidden");
}
}
loadAutoCompletes() {
let instance = this;
let id = $(".select2-results").find("ul").attr("id");
let changedAutoComplete = "";
if (id != undefined && id != null) {
changedAutoComplete = $("#" + id.replace("select2-", "").replace("-results", "")).attr("data-propertyname");
}
let Contact = [
{ ColumnName: 'contactid', Value: instance.g_OrganizationId },
];
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
if (changedAutoComplete != "billingaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_billingaddressid"), Contact);
}
if (changedAutoComplete != "shippingaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shippingaddressid"), Contact);
}
}
else if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
if (changedAutoComplete != "branchid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_branchid"), Contact);
}
if (changedAutoComplete != "shipfromaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shipfromaddressid"), Contact);
}
}
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
let Parameters = [{ ColumnName: "companyid", Value: Number($(".txtAutoComplete_companyid").val()) }];
if (changedAutoComplete != "branchid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_branchid"), Parameters);
}
if (changedAutoComplete != "shipfromaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shipfromaddressid"), Parameters);
}
}
else if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
let Parameters = [{ ColumnName: "companyid", Value: Number($(".txtAutoComplete_companyid").val()) }];
if (changedAutoComplete != "billingaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_billingaddressid"), Parameters);
}
if (changedAutoComplete != "shippingaddressid") {
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shippingaddressid"), Parameters);
}
}
if (changedAutoComplete != "lobid") {
let portalId = 0;
if (!instance.g_IsLead) {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity)
portalId = Number($(".txtAutoComplete_branchid").val());
else
portalId = Number($(".txtAutoComplete_billingaddressid option:selected").val());
}
let Parameters = [
{ ColumnName: 'contactaddressid', Value: portalId },
];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_lobid"), Parameters);
var companyId = Number($(".txtAutoComplete_companyid").val());
var CompParameters = [{ "ColumnName": "companyid", "Value": companyId, }];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_competitorid"), CompParameters);
}
if (changedAutoComplete != "salespersonid") {
let LobId = 0;
let OrganizationAddressId = 0;
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
LobId = Number($(".txtAutoComplete_lobid option:selected").val());
OrganizationAddressId = Number($(".txtAutoComplete_billingaddressid option:selected").val() == undefined ? 0 : $(".txtAutoComplete_billingaddressid option:selected").val());
}
else if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
LobId = Number($(".txtAutoComplete_lobid option:selected").val());
OrganizationAddressId = Number($(".txtAutoComplete_branchid option:selected").val() == undefined ? 0 : $(".txtAutoComplete_branchid option:selected").val());
}
let Parameters = [
{ ColumnName: 'lobid', Value: LobId },
{ ColumnName: 'contactaddressid', Value: OrganizationAddressId },
];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_salespersonid"), Parameters);
}
}
bindDetails(OrganizationId, LobId) {
let instance = this;
var url = '';
if (instance.g_IsMobil) {
url = 'apis/v4/bizgaze/mobil/opportunity/getdetails/organizationid/' + OrganizationId + '/lobid/' + LobId + '/ordertypeid/' + instance.g__OpportunityType + '/branchid/0/islead/' + instance.g_IsLead;
}
else {
url = 'apis/v4/bizgaze/transact/orders/getdetails/organizationid/' + OrganizationId + '/lobid/' + LobId + '/ordertypeid/' + instance.g__OpportunityType + '/ispointsorder/false/branchid/0/islead/' + instance.g_IsLead;
}
Bizgaze.Apps.Transact.Managers.OpportunityManager.Instance().getDetails(url).then(function (response) {
let msg = response.message;
let res = response.result;
if (msg != "") {
MessageHelper.Instance().showError(msg, 'div_ErrorMessage_' + Number($("#hf_FormId").val()));
}
else {
$(".section_BasicDetails").removeClass("hidden");
$(".section_OpportunityItems ").addClass('mt-10');
$(".SelectItemsButton").removeClass('hidden');
$(".section_OpportunityInformation").removeClass("hidden");
$(".section_VolumeAndMarginInformation").removeClass("hidden");
$(".section_CompetitorInformation").removeClass("hidden");
$(".section_AdditionalInformation").removeClass("hidden");
}
if (res != null) {
$(".txtAutoComplete_orgcontactid").empty();
$(".txtAutoComplete_companyid").empty();
$(".txtAutoComplete_shippingaddressid, .txtAutoComplete_billingaddressid").empty();
$(".txtAutoComplete_shipfromaddressid, .txtAutoComplete_branchid").empty();
$(".txtAutoComplete_lobid").empty();
$(".txtAutoComplete_salespersonid").empty();
$(".txtAutoComplete_paymenttermid").empty();
$(".txtAutoComplete_organizationid").removeClass("required");
}
if (res.OrganizationTypeId == 1) {
instance.g_OrgContactId = res.OrgContactId;
if (res.OrgContactName != null && res.OrgContactName != undefined) {
let OrgContactName = res.OrgContactName.substring(res.OrgContactName.toString().indexOf("-") + 2);
let OrgContact = new Option(OrgContactName, instance.g_OrgContactId.toString(), true);
$(".txtAutoComplete_orgcontactid").append(OrgContact).val(instance.g_OrgContactId);
}
}
else if (res.OrganizationTypeId == 2) {
$("#div_orgcontactid").addClass("hidden");
}
if (res.CountryId != "" && res.CountryId != undefined) {
instance.g_CountryId = res.CountryId;
}
else {
instance.g_CountryId = 0;
}
$(".hdn_orgcontactid").val(res.OrgContactId);
if (instance.g_IsLead) {
let salesperson = new Option(Unibase.Platform.Membership.Infos.Identity.currentUser.name, Unibase.Platform.Membership.Infos.Identity.currentUser.userId.toString(), true);
$(".txtAutoComplete_salespersonid").append(salesperson).val(Unibase.Platform.Membership.Infos.Identity.currentUser.userId);
}
if (instance.g_IsMobil) {
$(".txtAutoComplete_leadsourceid").empty();
$(".txtAutoComplete_ebcontactid").empty();
if (res.LeadSourceId != 0) {
let LeadSource = new Option(res.LeadSourceName, res.LeadSourceId.toString(), true);
$(".txtAutoComplete_leadsourceid").append(LeadSource).val(res.LeadSourceId);
if (res.LeadSourceName == 'EB') {
if (res.EbId != 0) {
let EbName = new Option(res.EbName, res.EbId.toString(), true);
$(".txtAutoComplete_ebcontactid").append(EbName).val(res.EbId);
}
$(".divCustomProperties_ebcontactid").removeClass('hidden');
}
}
}
let contact = new Option("New Business", response.result.OpportunityType.toString(), true);
$(".txtAutoComplete_opportunitytype").append(contact);
$(".txtAutoComplete_opportunitytype").val(response.result.OpportunityType).trigger("change");
instance.g_CompanyId = res.CompanyId;
let CompanyName = res.CompanyName;
let ShipFromAddressId = response.result.ShipFromAddressId;
instance.g_BranchId = response.result.BranchId;
let BranchName = response.result.BranchName;
let WarehouseName = response.result.ShipFromAddressName;
let BranchShortCode = response.result.BranchShortCode;
let WarehouseShortCode = response.result.WarehouseShortCode;
let Company = new Option(CompanyName, instance.g_CompanyId.toString(), true);
$(".txtAutoComplete_companyid").append(Company).val(instance.g_CompanyId);
$(".txtAutoComplete_shipfromaddressid, .txtAutoComplete_branchid").val('').text('');
let Branch = new Option(BranchName + " - " + BranchShortCode, instance.g_BranchId.toString(), true);
let Warehouse = new Option(WarehouseName + " - " + WarehouseShortCode, ShipFromAddressId.toString(), true);
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
$(".txtAutoComplete_shippingaddressid").append(Warehouse).val(ShipFromAddressId);
$(".txtAutoComplete_billingaddressid").append(Branch).val(instance.g_BranchId);
}
else if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
$(".txtAutoComplete_shipfromaddressid").append(Warehouse).val(ShipFromAddressId);
$(".txtAutoComplete_branchid").append(Branch).val(instance.g_BranchId);
}
if (res.BillingAddressId != 0) {
let BillingAddress = new Option(res.BillingAddressName, res.BillingAddressId, true);
let ShippingAddress = new Option(res.BillingAddressName, res.BillingAddressId, true);
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
$(".txtAutoComplete_billingaddressid").append(BillingAddress).val(res.BillingAddressId);
$(".txtAutoComplete_shippingaddressid").append(ShippingAddress).val(res.ShippingAddressId);
}
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity) {
$(".txtAutoComplete_branchid").append(BillingAddress).val(res.BillingAddressId);
$(".txtAutoComplete_shipfromaddressid").append(ShippingAddress).val(res.ShippingAddressId);
}
}
if (Number(res.TagGroupId) != 0)
instance.g_TagGroupId = res.TagGroupId;
if (res.LobId != 0) {
if (!res.IsMultipleLobs) {
instance.g_LobId = res.LobId;
let LobDetails = new Option(res.LobName, res.LobId, true);
$(".txtAutoComplete_lobid").append(LobDetails).val(res.LobId);
let data = res.Permissions;
instance.setInventorySettings(res.InventoryApplyType);
instance.setOrderSettings(res, res.CompositePriceType);
if (res.SalesPersonId != 0) {
let SalesPerson = new Option(res.SalesPersonName, res.SalesPersonId, true);
$(".txtAutoComplete_salespersonid").append(SalesPerson);
$(".txtAutoComplete_salespersonid").val(res.SalesPersonId);
}
if (res.SeriesSettings.length == 0) {
for (let s = 0; s < res.SeriesList.length; s++) {
$(".txtSeriesAutoComplete_seriesid").val(res.SeriesList[s].SeriesId).trigger('change');
}
}
else {
for (let s = 0; s < res.SeriesSettings.length; s++) {
$(".txtSeriesAutoComplete_seriesid").val(res.SeriesSettings[s].SeriesId).trigger('change');
}
}
}
if (res.PaymentTermId != 0) {
let PaymentTerm = new Option(res.PaymentTermName, res.PaymentTermId, true);
$(".txtAutoComplete_paymenttermid").append(PaymentTerm);
$(".txtAutoComplete_paymenttermid").val(res.PaymentTermId);
}
if (res.Terms != "
" && res.Terms != "" && res.Terms != null) {
$(".divCustomProperties_terms").addClass('floating-label-form-group-with-value');
let id = $(".divCustomProperties_terms").attr("id");
if (id != undefined && id != "" && id != null) {
id = $(".divCustomProperties_terms").attr("id").replace("control-container-", "");
$("#txt_" + id).html(res.Terms);
$("#txt_" + id).val($("#txt_" + id)[0].textContent);
}
}
else
$(".divCustomProperties_terms").removeClass('floating-label-form-group-with-value');
if (Number($(".hdn_opportunityid").val()) == 0) {
$('.section_Items').removeClass('hidden');
}
instance.g_PriceCodeId = res.PriceCodeId;
$('#hfOrder_IsSeperateExcise').val(res.IsSeperateExcise);
if ($("#chk_PriceCodeId").is(':checked'))
instance.g_PriceCodeId = res.AdvancePriceCodeId;
}
else {
let msg = response.message;
if (msg != "") {
$(".txtAutoComplete_lobid").empty();
$(".txtAutoComplete_lobid, .txtAutoComplete_salespersonid").attr("disabled", "disabled");
}
else {
$(".divCustomProperties_lobid").removeClass('hidden');
if (!instance.g_IsLead)
$(".divCustomProperties_salespersonid").removeClass('hidden');
}
}
instance._OpportunityItems.g_CartItems_New = [];
instance._OpportunityItems.g_SelectedItems = [];
instance._OpportunityItems.g_ItemsUnitPrice_New = [];
instance._OpportunityItems.g_LoadedItems = [];
instance.loadAutoCompletes();
});
;
instance.ClosedDate();
}
ContinueShopping() {
let instance = this;
$(".modal-body").scrollTop(0);
$(".tax-error").text("");
let SearchItem = $("#txt_SearchItem").val();
if (SearchItem != "") {
$("#txt_SearchItem").val("");
instance._OpportunityItems.LoadItems($("#txt_SearchItem").val(), instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), $(".txtAutoComplete_branchid").val());
}
$(".div_SearchItem").removeClass('floating-label-form-group-with-value');
$(".section_AdditionalInformation,.section_CompetitorInformation,.section_VolumeAndMarginInformation,.section_OpportunityInformation,.section_CartDetails,.section_Summary, .btn_Save_Form, .section_PriceDetails, .section_OpportunityDetails,.OrgContactNameLink, .section_OrderDetails, .section_ContactName").addClass('hidden');
$("#dropup_save").addClass("hidden");
$("#btn_Save_New").addClass("hidden");
$("#btn_back").removeClass("hidden");
$(".section_OpportunityItems").removeClass("hidden");
$("#btn_CloseForm_" + $("#hf_FormId").val()).addClass('hidden');
if ($(".section_CartDetails").hasClass('hidden')) {
$("#btn_CloseForm").removeClass('hidden');
}
if (!$(".section_Items").hasClass('hidden')) {
$("#btn_Save").addClass('hidden');
$(".CheckOutButton").removeClass('hidden');
}
}
GetCompanyIds() {
let CompanyIds = '';
let data = $('#select2_CompanyId').select2('data');
if (data.length > 0) {
let options = '';
for (let i = 0; i < data.length; i++) {
if (data[i].toString() != '000' && data[i] != undefined)
options += data[i].id + ",";
}
if (options != '') {
options = options.replace(/\|$/, '');
CompanyIds = options;
}
}
if (CompanyIds != '') {
CompanyIds = CompanyIds.replace(/\:$/, '');
}
else
CompanyIds = '0';
CompanyIds = CompanyIds.slice(0, -1);
return CompanyIds;
}
defaultBranchError() {
let instance = this;
$("#Bizgaze-messageInfo").empty();
$(".bizgaze_FormErrorMessages").removeClass("hidden");
$(".txtAutoComplete_organizationid").attr("disabled", "disabled");
$(".btn_Save_Form").addClass("hidden");
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Configure Default Branch");
return false;
}
loadPropertySettings(propertysettings, formpropertyid, DocPropertyName) {
return "";
}
bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
return "";
}
getInventoryApplyType(LobId, BillingAddressId, BranchId) {
let instance = this;
let portalId;
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseOpportunity)
portalId = BillingAddressId;
else
portalId = BranchId;
let type = instance.g__OpportunityType;
Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getInventoryApplyType(LobId, type, portalId).then(function (response) {
if (response.result != null && response.result != undefined) {
instance.setInventorySettings(response.result);
$(".hdn_inventoryapplytype").val(response.result);
}
});
}
setInventorySettings(InventoryApplyType) {
let instance = this;
instance.g_InventoryApplyType = InventoryApplyType;
instance._OpportunityItems.g_IsEnablePacks = false;
instance._OpportunityItems.g_IsEnablePieces = false;
instance._OpportunityItems.g_PacksFocus = false;
instance._OpportunityItems.g_PiecesFocus = false;
if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) {
if (instance.g_IsShowEnablePieceChkbox == 1 || instance.g_IsAdmin == 1) {
$('.div_chk_Pieces').removeClass('hidden');
}
else {
$(".div_chk_Pieces").addClass("hidden");
}
$(".div_chk_Packs").addClass("hidden");
instance._OpportunityItems.g_IsEnablePacks = true;
instance._OpportunityItems.g_PacksFocus = true;
}
if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) {
$(".div_chk_Pieces").addClass("hidden");
$(".div_chk_Packs").addClass("hidden");
instance._OpportunityItems.g_IsEnablePacks = true;
instance._OpportunityItems.g_IsEnablePieces = true;
instance._OpportunityItems.g_PacksFocus = true;
}
if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces) {
$(".div_chk_Pieces").addClass("hidden");
$('.div_chk_Packs').removeClass('hidden');
$("#chk_Packs").prop("checked", false);
instance._OpportunityItems.g_IsEnablePieces = true;
instance._OpportunityItems.g_PiecesFocus = true;
}
if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) {
$(".div_chk_Pieces").addClass("hidden");
$(".div_chk_Packs").addClass("hidden");
instance._OpportunityItems.g_IsEnablePacks = true;
instance._OpportunityItems.g_PacksFocus = true;
}
$(".hdn_inventoryapplytype").val(instance.g_InventoryApplyType);
}
getOrderSettings(LobId, BillingAddressId, BranchId) {
let instance = this;
let branchId = Number(BranchId);
let SettingName = "";
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
SettingName = "Bizgaze_Extension_Transact_Orders_Setting_SalesOrder";
}
else {
branchId = Number(BillingAddressId);
SettingName = "Bizgaze_Extension_Transact_Orders_Setting_PurchaseOrder";
}
Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettingsByLob(SettingName, LobId, branchId).then(function (res) {
if (res.result != null && res.result != undefined && res.result != "") {
let PriceType = Number(Bizgaze.Apps.Transact.Enums.PriceType[res.result.CompositePriceType]);
instance.setOrderSettings(res.result, PriceType);
}
});
}
setOrderSettings(res, PriceType) {
let instance = this;
instance.g_CompositePriceType = Number(PriceType);
instance.g_IsCalculateTax = res.CalculateTax;
if (instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.CompositePrice || instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.Both) {
$(".div_chk_CompositePrice").removeClass("hidden");
}
else {
$(".div_chk_CompositePrice").addClass("hidden");
}
if (instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.PiecePrice || instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.Both) {
$(".div_chk_PiecePrice").removeClass("hidden");
}
else {
$(".div_chk_PiecePrice").addClass("hidden");
}
}
ItemSettings(FromWidget = false) {
let instance = this;
$(".InventorySettings").html(`
`);
$("#div_ItemList").html('
');
instance._OpportunityItems.g_LoadedItems = [];
instance.InventoryTypeClickEvents(FromWidget);
instance.PriceTypeClickEvents(FromWidget);
}
backtoDetails() {
$(".section_BasicDetails, .section_OpportunityInformation,.section_CompetitorInformation, .section_VolumeAndMarginInformation,.SelectItemsButton,.section_AdditionalInformation,.OrgContactNameLink, .section_ContactName").removeClass('hidden');
$(".section_OpportunityItems,.CheckOutButton,.btn_back").addClass('hidden');
$("#btn_CloseForm_" + $("#hf_FormId").val()).removeClass('hidden');
}
LoadItems() {
let instance = this;
let CalculateTax = instance.g_IsCalculateTax;
if (!CalculateTax) {
$("#TotalTax").addClass("hidden");
$(".divCustomProperties_istaxinclusive").addClass("hidden");
}
if ($(".txtAutoComplete_organizationid").text() != "" || $(".txtAutoComplete_organizationid").text() != null) {
if ($(".txtAutoComplete_organizationid").val() != '') {
if ($(".txtSeriesAutoComplete_seriesid").val() == null) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Series");
return false;
}
else if ($(".txtAutoComplete_lobid").val() == null) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select LoB");
return false;
}
else if ($(".txtAutoComplete_salespersonid").val() == null) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Sales Person");
return false;
}
else if (($(".txtAutoComplete_billingaddressid").val() == null || $(".txtAutoComplete_shippingaddressid").val() == null || $(".txtAutoComplete_lobid").val() == null) && !instance.g_IsLead) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Assign Address");
$(".div_billingaddressid").addClass("form-group-required");
return false;
}
else if ($(".txt_opportunityname").val() == '') {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Enter Opportunity Name");
$(".div_opportunityname").addClass("form-group-required");
return false;
}
else if ($(".txtAutoComplete_opportunitytype option:selected").val() == '' || $(".txtAutoComplete_opportunitytype option:selected").val() == undefined) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Opportunity Type");
$(".div_opportunitytype").addClass("form-group-required");
return false;
}
else if ($(".txtAutoComplete_opportunitytype option:selected").text() == "Renewal") {
$(".txtAutoComplete_renewalopportunityid").addClass('required');
if (Number($(".txtAutoComplete_renewalopportunityid").val()) == 0) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Renewal Opportunity");
return false;
}
}
else if ($(".number_estimatedyearlyconsumpton").val() == '') {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Enter Estimated Yearly Consumpton");
$("#div_estimatedyearlyconsumpton").addClass("form-group-required");
return false;
}
let SumofVoulmes = Number($(".number_flagshipvolume").val()) + Number($(".number_premiumvolume").val()) + Number($(".number_standardvolume").val()) + Number($(".number_oemvolume").val()) + Number($(".number_greasevolume").val());
if (SumofVoulmes > Number($(".number_estimatedyearlyconsumpton").val())) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Volume's must be less then Estimated Yearly Consumpton : " + Number($(".number_estimatedyearlyconsumpton").val()));
return false;
}
if (instance.g_IsMobil && $('.CheckList-item-row').length == 0) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select competitors");
}
else {
if ($("#Bizgaze-messageInfo").text() != null) {
$("#Bizgaze-messageInfo").empty();
$("#Bizgaze-messageInfo").removeClass();
}
$(".section_OpportunityItems").removeClass("hidden");
$(".section_CartDetails").addClass('mt-10');
$(".CheckOutButton").removeClass('hidden');
$(".btn_back").removeClass('hidden');
$("#btn_CloseForm_" + $("#hf_FormId").val()).addClass('hidden');
$(".SelectItemsButton,.OrgContactNameLink ,.section_BasicDetails,.section_OpportunityInformation,.section_CompetitorInformation,.section_VolumeAndMarginInformation,.section_AdditionalInformation, .section_ContactName").addClass('hidden');
instance.ItemSettings();
if (Number($(".hdn_opportunityid").val()) == 0) {
$("#ItemLoadType").empty();
for (let i = 0; i < instance.g_ItemLoadTypes.length; i++) {
let j = i + 1;
$("#ItemLoadType").append('');
}
if ($("#ItemLoadType option:selected").text() == 'Offers') {
$("#ItemLoadType option:contains(All Items)").attr('selected', 'selected');
}
$(".variant-list").empty();
Bizgaze.Apps.Transact.Components.OpportunityFilter.Instance().bindCustomerTags();
}
else {
instance._OpportunityItems.LoadItems("", instance.g_OrganizationId, $(".txtAutoComplete_lobid").val(), $(".txtAutoComplete_shippingaddressid").val(), instance.g_BranchId, false);
}
}
}
else {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Contact");
}
}
}
Checkout() {
let instance = this;
$(".modal-body").scrollTop(0);
$(".order-cart-list").removeAttr("style");
let cont_id = $("._bizgaze_popup_container:visible").attr("id");
$("#" + cont_id).find("#btnDynamicSave").css("cursor", "pointer");
$(".dropdown_division").val("10");
if (instance._OpportunityItems.g_CartItems_New.length > 10) {
$(".CartItemFindTxt").removeClass('hidden');
}
$(".modal-body").scrollTop(0);
$(".btn_Save_Form, .section_CartDetails,.section_PriceDetails,.section_OpportunityDetails").removeClass("hidden");
$("#btn_CloseForm_" + $("#hf_FormId").val()).removeClass('hidden');
$(".CheckOutButton, .section_OpportunityItems,.btn_back ").addClass('hidden');
let Items_ZeroQty = instance._OpportunityItems.g_CartItems_New.filter(x => x.BaseQty == 0);
Items_ZeroQty.forEach(function (c) {
});
let FocItems = instance._OpportunityItems.g_CartItems_New.filter(x => x.IsFocItem == true);
FocItems.forEach(function (c) {
});
if (Items_ZeroQty.length == 0 && FocItems.length == 0) {
instance._OpportunityItems.checkOffers(false, "Checkout");
}
}
InventoryTypeClickEvents(FromWidget) {
let instance = this;
$('#chk_Pieces').click(function () {
if ($('#chk_Pieces').is(':checked')) {
instance._OpportunityItems.g_IsEnablePieces = true;
}
else {
instance._OpportunityItems.g_IsEnablePieces = false;
instance._OpportunityItems.g_PacksFocus = true;
instance._OpportunityItems.g_PiecesFocus = false;
}
instance._OpportunityItems.N_RefreshAllItems(FromWidget, "InventoryClickEvents");
});
$('#chk_Packs').click(function () {
if ($('#chk_Packs').is(':checked')) {
instance._OpportunityItems.g_IsEnablePacks = true;
}
else {
instance._OpportunityItems.g_IsEnablePacks = false;
instance._OpportunityItems.g_PacksFocus = false;
instance._OpportunityItems.g_PiecesFocus = true;
}
instance._OpportunityItems.N_RefreshAllItems(FromWidget, "InventoryClickEvents");
});
}
PriceTypeClickEvents(FromWidget) {
let instance = this;
instance._OpportunityItems.g_IsEnableCompositePrice = false;
instance._OpportunityItems.g_IsEnablePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
$('#chk_PiecePrice').click(function () {
if ($('#chk_PiecePrice').is(':checked')) {
if (instance._OpportunityItems.g_IsEnableCompositePrice) {
instance._OpportunityItems.g_IsEnableCompositePrice = false;
instance._OpportunityItems.g_IsEnablePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = true;
}
else {
instance._OpportunityItems.g_IsEnablePiecePrice = true;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePrice = false;
}
}
else {
instance._OpportunityItems.g_IsEnablePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
instance._OpportunityItems.g_IsEnableCompositePrice = $('#chk_CompositePrice').is(':checked');
}
instance._OpportunityItems.N_RefreshAllItems(FromWidget, "PriceTypeClickEvents");
});
$('#chk_CompositePrice').click(function () {
if ($('#chk_CompositePrice').is(':checked')) {
if (instance._OpportunityItems.g_IsEnablePiecePrice) {
instance._OpportunityItems.g_IsEnableCompositePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = true;
instance._OpportunityItems.g_IsEnablePiecePrice = false;
}
else {
instance._OpportunityItems.g_IsEnableCompositePrice = true;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
instance._OpportunityItems.g_IsEnablePiecePrice = false;
}
}
else {
instance._OpportunityItems.g_IsEnableCompositePrice = false;
instance._OpportunityItems.g_IsEnableCompositePiecePrice = false;
instance._OpportunityItems.g_IsEnablePiecePrice = $('#chk_PiecePrice').is(':checked');
}
instance._OpportunityItems.N_RefreshAllItems(FromWidget, "PriceTypeClickEvents");
});
}
editOpportunity() {
let instance = this;
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
instance.fileCacheHelper.loadJsFile("apps/crm/contacts/managers/contactmanager.js", function () {
Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getOrganizationById(Number($('.txtAutoComplete_organizationid').val())).then(function (responce) {
if (responce.result != null && responce.result != "") {
let Leadid = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_leadid").Value);
if (Leadid != 0) {
instance.g_OrganizationId = Leadid;
instance.g_IsLead = true;
$(".divCustomProperties_billingaddressid").addClass('hidden');
$(".divCustomProperties_shippingaddressid").addClass('hidden');
$(".divCustomProperties_salespersonid").addClass('hidden');
$(".txtAutoComplete_billingaddressid").removeClass('required');
$(".txtAutoComplete_shippingaddressid").removeClass('required');
$('.txtAutoComplete_organizationid').empty();
$('.txtAutoComplete_organizationid').removeClass('required');
}
else {
instance.g_OrgContactId = Number($('.txtAutoComplete_orgcontactid').val());
instance.g_OrganizationId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_organizationid").Value);
}
instance.prependCustomerLink();
instance.g_LobId = Number($('.txtAutoComplete_lobid').val());
instance.g_OpportunityTypeId = Number($(".hdn_opportunitytypeid").val());
$("#btn_Save").removeClass('hidden');
$(".btn_Save_Form").removeClass("hidden");
$(".section_BasicDetails").addClass('mt-10');
$(".section_ContactName").find(".card-body").addClass("hidden");
$(".btn_Save_Form").removeClass('card');
instance.editLoadAutoComplete();
$(".txtAutoComplete_lobid").attr("disabled", "true");
$(".txtAutoComplete_salespersonid").attr("disabled", "true");
}
});
});
}
checkConfigurations() {
var InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
$(".li_DetailSetting_" + InstalledAppId + "_CreateOrder").addClass("hidden");
$(".li_DetailSetting_" + InstalledAppId + "_CreateEstimate").addClass("hidden");
let OrganizationId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_organizationid") == undefined ? 0 : Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_organizationid").Value);
var LeadId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid") == undefined ? 0 : Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_leadid").Value);
Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/crm/contacts/managers/contactmanager.js", function () {
Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getOrganizationById(OrganizationId).then(function (responce) {
if (responce.result != null && responce.result != "") {
var StageStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid") == undefined ? 0 : Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
if (responce.result.RefStatusId == 3) {
if (StageStatusId == 6 && LeadId == 0) {
$("#DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateOrder").addClass("btn-outline-success");
$("#DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateEstimate").addClass("btn-outline-info");
$(".li_DetailSetting_" + InstalledAppId + "_CreateOrder").removeClass("hidden");
$(".li_DetailSetting_" + InstalledAppId + "_CreateEstimate").removeClass("hidden");
}
else if (StageStatusId == 6 && LeadId != 0) {
$(".li_DetailSetting_" + InstalledAppId + "_CreateEstimate").removeClass("hidden");
}
}
else if (responce.result.RefStatusId == 1 && StageStatusId == 6) {
$(".li_DetailSetting_" + InstalledAppId + "_CreateEstimate").removeClass("hidden");
}
}
});
});
}
changeSalesPerson() {
if (!Unibase.Themes.Compact.Components.Details.Instance().isSystemLock) {
Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile('platform/forms/components/formviewer/formviewer.js', function () {
var uniqueid = 'Bizgaze_Extension_Transact_SalesOpportunity_App_UpdateSalesPerson';
Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(uniqueid).then(function (response) {
var successCallBack = {
CallBack: function (id) {
Unibase.Themes.Compact.Components.Details.Instance().loadPortlets(Unibase.Themes.Compact.Components.Details.Instance());
},
Parameters: null,
};
var formviewerObj = {
FormId: response.result.FormId,
AppConfigurationId: 0,
Pk_Value: Unibase.Themes.Providers.DetailHelper.recordId,
PortletWidgetId: 0,
OnSuccess: successCallBack,
OnFail: null,
OnLoad: null,
};
Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj);
});
});
}
}
editLoadAutoComplete() {
var instance = this;
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
let Contact = [
{ ColumnName: 'contactid', Value: instance.g_OrganizationId },
];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_billingaddressid"), Contact);
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shippingaddressid"), Contact);
let C_Parameters = [{ ColumnName: "companyid", Value: Number($(".txtAutoComplete_companyid").val()) }];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_branchid"), C_Parameters);
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_shipfromaddressid"), C_Parameters);
let L_Parameters = [{ ColumnName: 'contactaddressid', Value: Number($(".txtAutoComplete_billingaddressid").val()) },];
Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($(".txtAutoComplete_lobid"), L_Parameters);
}
}
bindBranch(CompanyId) {
var instance = this;
instance.fileCacheHelper.loadJsFile("apps/crm/companies/managers/companymanager.js", function () {
Bizgaze.Apps.CRM.Companies.Managers.CompanyManager.Instance().getBranches(CompanyId).then(function (responce) {
if (responce.result != null) {
if (responce.result.length == 1) {
if (instance.g_OpportunityTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesOpportunity) {
var s_BranchName = new Option(responce.result[0].BranchName + " - " + responce.result[0].ShortCode, responce.result[0].BranchId, true);
$(".txtAutoComplete_branchid").append(s_BranchName);
$(".txtAutoComplete_branchid").val(responce.result[0].BranchId);
var B_BranchName = new Option(responce.result[0].BranchName + " - " + responce.result[0].ShortCode, responce.result[0].BranchId, true);
$(".txtAutoComplete_shipfromaddressid").append(B_BranchName);
$(".txtAutoComplete_shipfromaddressid").val(responce.result[0].BranchId);
}
else {
var s_BranchName = new Option(responce.result[0].BranchName + " - " + responce.result[0].ShortCode, responce.result[0].BranchId, true);
$(".txtAutoComplete_billingaddressid").append(s_BranchName);
$(".txtAutoComplete_billingaddressid").val(responce.result[0].BranchId);
var B_BranchName = new Option(responce.result[0].BranchName + " - " + responce.result[0].ShortCode, responce.result[0].BranchId, true);
$(".txtAutoComplete_shippingaddressid").append(B_BranchName);
$(".txtAutoComplete_shippingaddressid").val(responce.result[0].BranchId);
}
}
}
});
});
}
ValidateVolumes() {
let SumofVoulmes = Number($(".number_flagshipvolume").val()) + Number($(".number_premiumvolume").val()) + Number($(".number_standardvolume").val()) + Number($(".number_oemvolume").val()) + Number($(".number_greasevolume").val());
if (SumofVoulmes > Number($(".number_estimatedyearlyconsumpton").val())) {
Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Volume's must be less then Estimated Yearly Consumpton : " + Number($(".number_estimatedyearlyconsumpton").val()));
return false;
}
}
loadPaymentTermConditions() {
let instance = this;
Bizgaze.Apps.Transact.Managers.PaymentTermManager.Instance().getPaymentTerm(Number($('.txtAutoComplete_paymenttermid').val())).then(function (response) {
let info = response.result;
if (info != null && info != "") {
let Terms = "";
if (info.Terms != null) {
Terms = HtmlHelper.getHelper().decode(info.Terms);
}
if (Terms != "
" && Terms != "") {
$(".divCustomProperties_terms").addClass('floating-label-form-group-with-value');
}
else {
$(".divCustomProperties_terms").removeClass('floating-label-form-group-with-value');
}
let id = $(".divCustomProperties_terms").attr("id").replace("control-container-", "");
$("#txt_" + id).html(Terms);
$("#txt_" + id).val($("#txt_" + id)[0].textContent);
}
});
}
ClosedDate() {
let OppDate = $.datepicker.parseDate('dd/mm/yy', $(".date_opportunitydate").val().toString());
let date = OppDate.getDate() - 1;
let month = OppDate.getMonth() + 2;
let year = OppDate.getFullYear();
if (((OppDate.getDate() == 30 && OppDate.getMonth() + 1 == 1) || (OppDate.getDate() == 31 && OppDate.getMonth() + 1 == 1)) && OppDate.getFullYear() % 4 != 0) {
date = 28;
}
else if (((OppDate.getDate() == 30 && OppDate.getMonth() + 1 == 1) || (OppDate.getDate() == 31 && OppDate.getMonth() + 1 == 1)) && OppDate.getFullYear() % 4 == 0) {
date = 29;
}
if ((OppDate.getMonth() + 1) == 12) {
let d = new Date();
month = d.getMonth() + 1;
year = OppDate.getFullYear() + 1;
}
let ClosedDate = new Date(year + "/" + month + "/" + date);
if (date < 1) {
ClosedDate = new Date(OppDate.getFullYear(), OppDate.getMonth() + 1, 0);
}
var UnformatedDate = moment(ClosedDate);
let FormatedDate = UnformatedDate.format('D/MM/YYYY');
$(`#${this.g_VisibleContainerId}`).find(".date_closedate").val(FormatedDate);
$(`#${this.g_VisibleContainerId}`).find(".hfdate_closedate").val(moment(ClosedDate).format());
}
static Instance() {
if (this.instance === undefined) {
this.instance = new Opportunity();
}
return this.instance;
}
}
Controls.Opportunity = Opportunity;
})(Controls = Transact.Controls || (Transact.Controls = {}));
})(Transact = Apps.Transact || (Apps.Transact = {}));
})(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
})(Bizgaze || (Bizgaze = {}));