var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let Transact; (function (Transact) { let Infos; (function (Infos) { class OrderItem { static Instance() { if (this.instance === undefined) { this.instance = new OrderItem(); } return this.instance; } } Infos.OrderItem = OrderItem; class FoCItem { } Infos.FoCItem = FoCItem; class ValidOrderFoCItem { } Infos.ValidOrderFoCItem = ValidOrderFoCItem; class AppliedOffer { } Infos.AppliedOffer = AppliedOffer; class OrderTotals { } Infos.OrderTotals = OrderTotals; class UOMSchemaDetails { } Infos.UOMSchemaDetails = UOMSchemaDetails; class POSOrderItem { static Instance() { if (this.instance === undefined) { this.instance = new OrderItem(); } return this.instance; } } Infos.POSOrderItem = POSOrderItem; class Cart_Item { static Instance() { if (this.instance === undefined) { this.instance = new Cart_Item(); } return this.instance; } } Infos.Cart_Item = Cart_Item; class ValidFoCItem { } Infos.ValidFoCItem = ValidFoCItem; class RawMaterial { } Infos.RawMaterial = RawMaterial; class Operation { } Infos.Operation = Operation; })(Infos = Transact.Infos || (Transact.Infos = {})); })(Transact = Apps.Transact || (Apps.Transact = {})); })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {})); })(Bizgaze || (Bizgaze = {})); var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var Bizgaze; (function (Bizgaze) { let Apps; (function (Apps) { let Transact; (function (Transact) { let Controls; (function (Controls) { class OrderItems extends Unibase.Platform.Core.BaseComponent { constructor() { super(...arguments); this._order = Bizgaze.Apps.Transact.Controls.Order.Instance(); this.g_ValidFocItems = []; this.g_SelectedItems = []; this.g_AppliedOffers = []; this.g_LoadedItems = []; this.g_UOMs = []; this.g_PurPlanData = []; this.g_ItemsUnitPrice_New = []; this.g_CartItems_New = []; this.g_SC_PC_CartItems = []; this.g_AppliedTaxGroups = []; this.g_PageIndex = 0; this.g_PriceTypeId = 1; this.g_IsEnablePieces = false; this.g_IsEnablePacks = false; this.g_IsEnablePiecePrice = false; this.g_IsEnableCompositePrice = false; this.g_IsEnableCompositePiecePrice = false; this.g_BodyWidth = $('body').width(); this.g_IsExcise = false; this.g_PacksFocus = true; this.g_PiecesFocus = false; this.g_OfferApplyDate = new Date(); this.g_FromWidget = false; this.g_FromWidgetEditOrderItemId = 0; this.g_FromContinueShopping = false; this.g_IsFilterApplied = false; this.g_TagArray = []; this.g_ContainerId = ""; this.g_VisibleContainerId = ""; this.Modified_Discount = 0; } init(formpropertyid, prop, callback) { let instance = this; instance.fileCacheHelper.loadJsFile("apps/transact/enums/enum.js", function () { instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId); instance.loadPropertySettings(prop.PropertySettings, prop.FormPropertyId); }); } loadControl(containerid, prop) { let instance = this; instance.g_ContainerId = containerid; instance.g_VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1]; instance._order.g_OrderTypeId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_ordertypeid").val()); let html = '
' + '' + '
' + '' + '' + ' ' + ` ` + ''; instance.fileCacheHelper.loadJsFile("apps/transact/enums/enum.js", function () { if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { html += ''; } else { html += ''; } html += '' + '
' + '
' + '' + '
'; $("#" + instance.g_VisibleContainerId).find("#" + containerid).html(html); instance.ItemsQrScan(); }); $("#" + instance.g_VisibleContainerId).find("#ItemLoadType").unbind().click(function () { $("#" + instance.g_VisibleContainerId).find(".div_SearchItem").removeClass("floating-label-form-group-with-value"); }); $("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").focusout(function () { if ($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val() == "") { $("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").attr("placeholder", "Search Items"); } }); } ItemsQrScan() { $("#crpnrd_btn_OpenScanner").addClass("hidden"); if (isMobileApp()) { $("#crpnrd_btn_OpenScanner").removeClass("hidden"); $("#crpnrd_btn_OpenScanner").click(function () { Unibase.Platform.Helpers.MobileHelper.Instance().openQrScanner("Bizgaze.Apps.Transact.Controls.OrderItems.Instance().readScanner", "txt_SearchItem"); }); } else { $("#crpnrd_btn_OpenScanner").addClass("hidden"); } } loadControlSettings(controlsettingjson, formpropertyid) { return null; } loadPropertySettings(propertysettings, formpropertyid) { return null; } bindEditFormDetails(formpropertyid, propval, DocPropertyName) { return null; } loadItems(SearchItem, UpdateAvailability = false) { let instance = this; $("#" + instance.g_VisibleContainerId).find('.section_Items').removeClass('hidden'); let OrganizationId = instance._order.g_OrganizationId; let LoBId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val(); let ShipTo = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val(); if (ShipTo == null) { ShipTo = 0; } let BranchId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val(); if (SearchItem == "Offers" || SearchItem == "All Items" || SearchItem == "Filter" || SearchItem == "Eligible Items") { } else SearchItem = (encodeURIComponent(encodeURIComponent(SearchItem).replace('*', '%2A').replace('.', '%2E'))).replace(/\%/g, '!'); if (!instance._order.g_IsPurchasePlanning) { if (SearchItem == undefined || SearchItem == '') { SearchItem = ' '; } if (SearchItem == "Offers") { instance._order.g_LoadOffersOnly = true; SearchItem = ''; if (instance.g_IsFilterApplied) { instance.g_IsFilterApplied = false; instance.g_FilteredTags = ''; instance.g_TagArray = []; Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags = ""; } } else if (SearchItem == "All Items") { instance._order.g_LoadOffersOnly = false; instance._order.g_LoadEligibleItemsOnly = false; instance.g_FilteredTags = ''; instance.g_TagArray = []; Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags = ""; SearchItem = ""; } else if (SearchItem == "Filter") { instance._order.g_LoadOffersOnly = false; } else if (SearchItem == "Eligible Items") { instance._order.g_LoadEligibleItemsOnly = true; SearchItem = ""; } let PriceCodeId = instance._order.g_PriceCodeId; let ContactId = OrganizationId; if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { instance.g_WarehouseId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").val(); } else if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) { instance.g_WarehouseId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val(); } let varianturl; if (SearchItem.replace(" ", "") == "") { SearchItem = null; } if (Number(LoBId) == 0) { $("#" + instance.g_VisibleContainerId).find(".InventorySettings").empty(); $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('
  • Your Shopping Cart is empty.
  • '); } else { instance.fileCacheHelper.loadJsFile("apps/transact/managers/inventory/itemmanager.js", function () { let ItemIds = "0"; let Rows = 10; if (instance._order.g_IsSC_to_PC) { ItemIds = ""; instance.g_CartItems_New.forEach(x => { ItemIds += x.ItemId + ","; }); ItemIds = ItemIds.replace(/,\s*$/, ""); Rows = 0; $("#" + instance.g_VisibleContainerId).find('.section_Items').addClass('hidden'); } let postdata = { PriceCodeId: Number(PriceCodeId), ContactId: ContactId, ShippingAddressId: Number(ShipTo), BranchId: Number(BranchId), WareHouseId: Number(instance.g_WarehouseId), LobId: Number(LoBId), OrderType: instance._order.g_OrderTypeId, OfferOnly: instance._order.g_LoadOffersOnly, IsExcise: instance.g_IsExcise, SearchTerm: SearchItem, Page: instance.g_PageIndex, IsCompositePrice: instance.g_IsEnableCompositePrice, IsPiecePrice: instance.g_IsEnablePiecePrice, IsCompositePiecePrice: instance.g_IsEnableCompositePiecePrice, Rows: Rows, ItemId: ItemIds, CountryId: instance._order.g_CountryId, ItemGroupId: 0, Tags: Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags, IsPoints: instance._order.g_IsPointsOrder, Points: instance._order.g_LoyaltyPoints, IsEligibleItemsOnly: instance._order.g_LoadEligibleItemsOnly }; let cntId = instance._order.g_OrganizationId; if (cntId == 0) cntId = instance._order.g_OrgContactId; if ($("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:selected").text() != "Filter" || (Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags.length == 0 && $("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:selected").text() == "Filter")) { if (Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags.length == 0 && $("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:selected").text() == "Filter") { instance._order.g_LoadOffersOnly = false; } } varianturl = Bizgaze.Apps.Transact.Managers.ItemManager.Instance().getItemsForOrder(postdata); instance.navigationHelper.showLoading(); varianturl.then(function (response) { instance.navigationHelper.hideLoading(); if (UpdateAvailability) { instance.updateItemsAvailability(response.result); } else if (response.result.length > 0) { instance.itemPagination(response); if (!instance._order.g_IsPurchasePlanning) { $("#" + instance.g_VisibleContainerId).find("#btn_CheckOutOrder").removeClass("hidden"); } if (instance.g_CartItems_New.length == 0) { $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('
  • Your Shopping Cart is empty.
  • '); } instance.navigationHelper.hideLoading(); } else { $("#" + instance.g_VisibleContainerId).find(".div_titledetails").addClass("hidden"); if (instance._order.g_LoadOffersOnly) { $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html(''); } else if (instance._order.g_LoadEligibleItemsOnly) { $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html(''); } else { if (instance._order.g_CreateItem == 1 || instance._order.g_IsAdmin == 1) { $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html(''); } else { $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html(''); } } if (instance.g_CartItems_New.length == 0 && instance._order.g_IsFromPurchaseIndent) { let text = "Your Shopping Cart is empty."; if (instance._order.g_IsFromPurchaseIndent) { text = "No Pending Purchase Indent Items."; } $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('
  • ' + text + '
  • '); } $("#btn_AddNewItem").click(function () { Bizgaze.Apps.Transact.Controls.OrderItems.Instance().getItemForm(); }); } }); }); } } } getItemForm() { let instance = Bizgaze.Apps.Transact.Controls.OrderItems.Instance(); instance.fileCacheHelper.loadJsFiles(['platform/forms/managers/formmanager.js', 'platform/apps/managers/appmanager.js'], function () { var FormUniqueId = 'Bizgaze_Extension_Transact_Items_App_Items_CreateForm'; Unibase.Platform.Forms.Managers.FormManager.Instance().getFormbyUniqueId(FormUniqueId).then(function (response) { var successCallBack = { CallBack: function (ItemId) { instance.bindNewAddedItem(ItemId); }, Parameters: null, }; var onLoadAddItem = { CallBack: function (ItemId) { let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1]; let Parameters = [ { ColumnName: 'lobid', Value: instance._order.g_LobId }, ]; Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + VisibleContainerId).find(".txtAutoComplete_productid"), Parameters); }, Parameters: null, }; var formviewerObj = { FormId: response.result.FormId, AppConfigurationId: 0, Pk_Value: 0, PortletWidgetId: 0, OnSuccess: successCallBack, OnFail: null, OnLoad: onLoadAddItem, }; Unibase.Platform.Forms.Components.FormViewer.Instance().init(formviewerObj); instance.navigationHelper.hideLoading(); }); }); } bindNewAddedItem(ItemId) { let instance = this; let LoBId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val(); let ShipTo = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val(); if (ShipTo == null) { ShipTo = 0; } let BranchId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val(); let postdata = { PriceCodeId: Number(instance._order.g_PriceCodeId), ContactId: instance._order.g_OrganizationId, ShippingAddressId: Number(ShipTo), BranchId: Number(BranchId), WareHouseId: Number(instance.g_WarehouseId), LobId: Number(LoBId), OrderType: instance._order.g_OrderTypeId, OfferOnly: false, IsExcise: instance.g_IsExcise, SearchTerm: "", Page: 0, IsCompositePrice: instance.g_IsEnableCompositePrice, IsPiecePrice: instance.g_IsEnablePiecePrice, IsCompositePiecePrice: instance.g_IsEnableCompositePiecePrice, Rows: 10, ItemId: ItemId.toString(), CountryId: instance._order.g_CountryId, ItemGroupId: 0, Tags: "", IsPoints: instance._order.g_IsPointsOrder, Points: instance._order.g_LoyaltyPoints, IsEligibleItemsOnly: instance._order.g_LoadEligibleItemsOnly, ApplyDate: instance.g_OfferApplyDate }; Bizgaze.Apps.Transact.Managers.ItemManager.Instance().getItemsForOrder(postdata).then(function (res) { instance.itemPagination(res); }); } loadPurchasePlanItems(SearchTerm) { let instance = this; let LoadTypeId = Number($("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:selected").val()); SearchTerm = SearchTerm == "" ? null : SearchTerm; instance.navigationHelper.showLoading(); $("#" + instance.g_VisibleContainerId).find(".divselectall").removeClass('hidden'); let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1]; $("#" + instance.g_VisibleContainerId).find("#" + VisibleContainerId).find(".Section").addClass("hidden"); $("#" + instance.g_VisibleContainerId).find("#" + VisibleContainerId).find(".section_Items, .section_Calculations").removeClass("hidden"); $("#" + instance.g_VisibleContainerId).find("#" + VisibleContainerId).find("#btn_Checkout").addClass("hidden"); let InputParameters = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters; let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; let EstimateId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_estimateid").Value); Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPurchasePlanItems(EstimateId, LoadTypeId, SearchTerm, 0).then(function (response) { instance.navigationHelper.hideLoading(); if (response.code == "0") { var data = response.result; $("#" + instance.g_VisibleContainerId).find(".variant-addeditem").empty(); instance.itemPagination(response); } else { Unibase.Platform.Forms.Components.FormViewer.Instance().showError(response.code); } }); } itemPagination(response) { let instance = this; response.result.forEach(x => { let LoadedItem_Index = instance.g_LoadedItems.findIndex(z => z.ItemId == x.ItemId); if (LoadedItem_Index == -1) { instance.g_LoadedItems.push(x); } else { instance.g_LoadedItems[LoadedItem_Index].TaxPercentList = x.TaxPercentList; } }); instance.bindItemList(response.result); if (response.result.length <= 10 && response.result.length != 0) { $("#" + instance.g_VisibleContainerId).find('#div_OrderItems_pagination').removeClass('hidden'); $("#" + instance.g_VisibleContainerId).find('#ItemsListPagination').removeClass('hidden'); let totalCount = response.result[0].TotalRecords; if (instance._order.g_IsPurchasePlanning) { totalCount = response.result.length; } let startingValue = 0; let _count = 0; let t = (instance.g_PageIndex + 1) * 10; if (totalCount > 0) { startingValue = 1; _count = totalCount; } if (totalCount > t) _count = t; if (instance.g_PageIndex > 0) { startingValue += t - 10; } let res = startingValue + " - " + _count + " of " + totalCount; $("#" + instance.g_VisibleContainerId).find('#lblItemTotalRecords').text(res); $("#" + instance.g_VisibleContainerId).find('.labelSection_ItemsCount').text("Total: " + response.result.length + " Items").addClass("col-sm-12").addClass("text-right").addClass("h5"); let elem = $("#" + instance.g_VisibleContainerId).find('#ItemsListPagination'); elem.pagination(response.result[0].TotalRecords, 10, { items_per_page: 10, callback: function (page, component) { instance.g_PageIndex = page; instance.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val()); }, current_page: instance.g_PageIndex }); } else { $("#" + instance.g_VisibleContainerId).find('#lblItemTotalRecords').text(response.result.length); $("#" + instance.g_VisibleContainerId).find('.labelSection_ItemsCount').text("Total: " + response.result.length + " Items").addClass("col-sm-12").addClass("text-right").addClass("h5"); $("#" + instance.g_VisibleContainerId).find("#ItemsListPagination").addClass("hidden"); } } bindItemList(items) { let instance = this; let LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val()); let BillingAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val()); let BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val()); $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html(''); } else if (instance._order.g_LoadEligibleItemsOnly) { $("#" + instance.g_VisibleContainerId).find(".variant-list").html('
  • Eligible Items not found.
  • '); } else { $("#" + instance.g_VisibleContainerId).find(".variant-list").html('
  • Items not found.
  • '); } $("#" + instance.g_VisibleContainerId).find(".div_titledetails").addClass("hidden"); return false; } else $("#" + instance.g_VisibleContainerId).find(".div_titledetails").removeClass("hidden"); let kpi_totalqty = 0; let kpi_itemscount = 0; let kpi_totalamount = 0; let kpi_totalinwardqty = 0; let kpi_totalinwardamount = 0; let kpi_ExtraItems = 0; let kpi_offeritems = 0; let lbl_Carton = "ml-95"; let lbl_Pieces = "pl-75"; if (instance.g_BodyWidth > 320 && instance.g_BodyWidth < 400) { lbl_Carton = "ml-45"; lbl_Pieces = "pl-10"; } if (instance.g_BodyWidth > 400 && instance.g_BodyWidth < 470) { lbl_Carton = "ml-55"; lbl_Pieces = "pl-25"; } if (instance.g_BodyWidth > 1300 && instance.g_BodyWidth <= 1600) { lbl_Carton = "ml-65"; lbl_Pieces = "pl-55"; } if (instance._order.g_IsPurchasePlanning) { let temptext = instance.getItemDesignWithTokens_PurchasePlan(); var templateScript = Handlebars.compile(temptext); var html = ""; $("#" + instance.g_VisibleContainerId).find(".div_PurchasePlanningFooterValues").remove(); $("#" + instance.g_VisibleContainerId).find("#formFooter").append(`
    Total Suggested Qty: 0
    Total Suggested Value: 0
    `); let TotalSuggestedQty = 0; let TotalSuggestedValue = 0; items.forEach(x => { let url = ''; let ItemImg = ""; let imgtag = ""; let faimg = ""; let LoadedItemIndex = instance.g_LoadedItems.findIndex(y => y.ItemId == x.ItemId); if (LoadedItemIndex != -1) { url = instance.g_LoadedItems[LoadedItemIndex].ImageUrl; if (url == "" || url == undefined || url == null) { faimg = ""; imgtag = "hidden"; } else { faimg = "hidden"; imgtag = ""; } } else { if (x.ImageUrl == "" || x.ImageUrl == undefined || x.ImageUrl == null) { faimg = ""; imgtag = "hidden"; } else { url = x.ImageUrl; faimg = "hidden"; imgtag = ""; } } let Mod_UnitPrice = 0; let Items_up = instance.g_ItemsUnitPrice_New.filter(y => y.ItemId == x.ItemId); if (Items_up.length == 0) { Mod_UnitPrice = x.ConfirmedUnitPrice; instance.g_ItemsUnitPrice_New.push({ ItemId: x.ItemId, UnitPrice: x.UnitPrice, TaxRateAmount: x.TaxRateAmount }); } else { Mod_UnitPrice = Items_up[0].ConfirmedUnitPrice; } let PurchasePlanChecked = ""; if (x.IsConfirmed) { PurchasePlanChecked = "checked"; } let OrderQuantity = ""; let multiplevalue = ""; if (x.ConfirmedPacks > 0 && x.ConfirmedQty > 0) { x.SuggestedPacks = x.ConfirmedPacks; } if ((x.SuggestedPacks) != 0 && (x.SuggestedPacks) != null && (x.SuggestedPacks) != undefined) { let unitprice = Number(Mod_UnitPrice); let packCount = Number(x.PackCount); let packSize = Number(x.PackSize); let baseqty = packCount * packSize * x.SuggestedPacks; OrderQuantity = " X " + (baseqty); multiplevalue = " = " + (unitprice * baseqty); TotalSuggestedQty += baseqty; TotalSuggestedValue += (unitprice * baseqty); } let offerDiscountClass = ""; if (x.IsOfferAvailable && x.IsOfferDiscountApplied && !instance._order.g_IsManageOfferDiscount) { offerDiscountClass = "readonly"; } let Discount = 0; if (x.ConfirmedDiscountValue > 0) { Discount = x.ConfirmedDiscountValue; } if (x.ConfirmedDiscountPercent > 0) { Discount = x.ConfirmedDiscountPercent; } let fltngclass_Cartons = "", fltngclass_Pieces = "", PP_Cartons = "", PP_Pieces = ""; if (x.SuggestedPacks != 0) { PP_Cartons = x.ConfirmedPacks.toString(); } let CartItem_Index = -1; CartItem_Index = instance.g_CartItems_New.findIndex(y => y.ItemId == x.ItemId && y.RefItemIds == ""); let CartItem = instance.g_CartItems_New[CartItem_Index]; if (CartItem != undefined) { PP_Cartons = CartItem.Packs.toString(); PP_Pieces = CartItem.Pieces.toString(); } if (PP_Cartons == "0") { PP_Cartons = ""; } if (PP_Cartons != "") { fltngclass_Cartons = "floating-label-form-group-with-value"; } if (PP_Pieces == "0") { PP_Pieces = ""; } if (PP_Pieces != "") { fltngclass_Pieces = "floating-label-form-group-with-value"; } x.imgurl = url; x.faimg = faimg; x.imgtag = imgtag; x.ItemImg = ItemImg; x.OrderQuantity = OrderQuantity; x.multiplevalue = multiplevalue; x.Mod_UnitPrice = Mod_UnitPrice; x.offerDiscountClass = offerDiscountClass; x.PP_Cartons = PP_Cartons; x.PP_Pieces = PP_Pieces; x.fltngclass_Cartons = fltngclass_Cartons; x.fltngclass_Pieces = fltngclass_Pieces; x.PurchasePlanChecked = PurchasePlanChecked; x.Discount = Discount; x.BranchId = '"' + x.BranchId.toString() + '"'; x.IsDisabledCheckBox = x.SuggestedPacks > 0 ? "" : "disabled"; let ItemId = x.ItemId; html = templateScript(x); $("#" + instance.g_VisibleContainerId).find(".variant-item:last").after(html); let element = $("#" + instance.g_VisibleContainerId).find(".variant-item:last"); if (x.UnitPrice == 0 && instance.roundOff(x.SuggestedPacks, 0) > 0) { if (element.find(".tax-error").text() == "") { element.find(".tax-error").text("Unit price is zero").removeClass("text-danger").addClass("text-warning"); } } instance.allItemEvents(element); let SelItem = instance.g_SelectedItems.find(x => x.ItemId == ItemId); if (SelItem != null) { let element = $("#" + instance.g_VisibleContainerId).find(".variant-item:last"); instance.updateItemsDesign(element, "BindItemList"); if (SelItem.Packs == 0) { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemCount").val(""); } if (SelItem.Pieces == 0) { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemPieceCount").val(""); } instance.checkValidations(ItemId, false); } else { if (instance._order.g_IsPurchasePlanning && x.SuggestedPacks > 0) { } else { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemCount").val(""); $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemPieceCount").val(""); } } }); TotalSuggestedQty = instance.roundOffIgnoreZerosAfterDecimal(TotalSuggestedQty); TotalSuggestedValue = instance.roundOffIgnoreZerosAfterDecimal(TotalSuggestedValue); $("#" + instance.g_VisibleContainerId).find("#spn_Total_Suggested_Qty").text(TotalSuggestedQty); $("#" + instance.g_VisibleContainerId).find("#spn_Total_Suggested_Value").text(TotalSuggestedValue); if ($("#" + instance.g_VisibleContainerId).find(".chk_PurPlanItem:visible").length != $("#" + instance.g_VisibleContainerId).find(".chk_PurPlanItem:visible:checked").length) { $("#" + instance.g_VisibleContainerId).find('#chk_AllItems').prop('checked', false); } else { $("#" + instance.g_VisibleContainerId).find('#chk_AllItems').prop('checked', true); } instance.navigationHelper.showLoading(); $("#" + instance.g_VisibleContainerId).find(".variant-list").find(".chk_PurPlanItem:checked").each(function () { let element = $("#" + instance.g_VisibleContainerId).find(this).closest(".variant-item"); if (element.find("#txt_Cartons").val() != 0 && element.find("#txt_Cartons").val() != "") { instance.updateItemsArray(element, "PurPlan_AllItems", false); $("#" + instance.g_VisibleContainerId).find(element).find(".chk_PurPlanItem").prop("checked", true); } }); instance.navigationHelper.hideLoading(); instance.getPurchasePlanTotals(true, false); } else { for (let i = 0; i < items.length; i++) { let data; if (instance._order.g_IsPurchasePlanning) { data = items[i]; let kpi_suggestedPacks = items[i].SuggestedPacks; let kpi_inwardPacks = items[i].InwardOrderPacks; let kpi_packSize = data.PackSize; let kpi_packCount = data.PackCount; let kpi_unitprice = data.UnitPrice; kpi_totalqty += (Number(kpi_suggestedPacks) * Number(kpi_packSize) * Number(kpi_packCount)); kpi_totalamount += (Number(kpi_suggestedPacks) * Number(kpi_unitprice) * Number(kpi_packSize) * Number(kpi_packCount)); if (Number(kpi_suggestedPacks) > 0) { kpi_itemscount += kpi_suggestedPacks; } kpi_totalinwardqty += (Number(kpi_inwardPacks) * Number(kpi_packSize) * Number(kpi_packCount)); kpi_totalinwardamount += (Number(kpi_inwardPacks) * Number(kpi_unitprice) * Number(kpi_packSize) * Number(kpi_packCount)); } else { data = items[i]; } let ItemId = data.ItemId; let html = ""; if (instance._order.g_IsPurchasePlanning) { if ((items[i].SuggestedPacks) != 0 && (items[i].SuggestedPacks) != null && (items[i].SuggestedPacks) != undefined) { } else if (data.IsOfferAvailable) kpi_offeritems++; else kpi_ExtraItems++; html = instance.getItemDesign(items[i]); } else { html = instance.getItemDesign(data); } $("#" + instance.g_VisibleContainerId).find(".variant-item:last").after(html); let element = $("#" + instance.g_VisibleContainerId).find(".variant-item:last"); if (instance._order.g_IsPurchasePlanning) { if (data.UnitPrice == 0 && instance.roundOff(items[i].SuggestedPacks, 0) > 0) { if (element.find(".tax-error").text() == "") { element.find(".tax-error").text("Unit price is zero").removeClass("text-danger").addClass("text-warning"); } } } instance.allItemEvents(element); let SelItem = instance.g_SelectedItems.find(x => x.ItemId == ItemId); if (SelItem != null) { let element = $("#" + instance.g_VisibleContainerId).find(".variant-item:last"); instance.updateItemsDesign(element, "BindItemList"); if (SelItem.Packs == 0) { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemCount").val(""); } if (SelItem.Pieces == 0) { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemPieceCount").val(""); } instance.checkValidations(ItemId, false); } else { if (instance._order.g_IsPurchasePlanning && items[i].SuggestedPacks > 0) { } else { $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemCount").val(""); $("#" + instance.g_VisibleContainerId).find(element).find(".txtOrder_ItemPieceCount").val(""); } } } } let pageHtml = ""; pageHtml = '
    ' + '
    ' + 'Total : 0' + '
    ' + '' + '
    '; $("#" + instance.g_VisibleContainerId).find(".variant-item:last").after(pageHtml); if (instance._order.g_IsPurchasePlanning) { $("#" + instance.g_VisibleContainerId).find("#span_SuggPurchaseOrderValue").text(kpi_totalamount); $("#" + instance.g_VisibleContainerId).find("#span_SuggPurchaseOrderVolume").text(kpi_itemscount); $("#" + instance.g_VisibleContainerId).find("#span_PurchaseOrderVolume").text(kpi_totalinwardqty); $("#" + instance.g_VisibleContainerId).find("#span_PurchaseOrderValue").text(kpi_totalinwardamount); $("#" + instance.g_VisibleContainerId).find("#span_OfferItems").text(kpi_offeritems); $("#" + instance.g_VisibleContainerId).find("#span_ExtraItems").text(kpi_ExtraItems); } if (instance._order.g_IsSC_to_PC) { for (let i = 0; i < instance.g_CartItems_New.length; i++) { let Itm = instance.g_CartItems_New[i]; let elem = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + Itm.ItemId); if (elem != undefined && elem.length > 0) { let row = instance.g_LoadedItems.find(x => x.ItemId == Itm.ItemId); if (row != undefined && row != null) { $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val(row.UnitPrice); } if (instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").val(Itm.Quantity); } else { let onlyPacks = parseInt((Number(Itm.Quantity) / Number(row.PackCount * row.PackSize)).toString()); let remainingQty = Itm.Quantity - (onlyPacks * row.PackCount * row.PackSize); let onlyPieces = remainingQty / row.PackSize; Itm.Packs = Number(onlyPacks); Itm.Pieces = Number(instance.roundOff(onlyPieces)); $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").val(Itm.Packs); $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemPieceCount").val(Itm.Pieces); } $("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").val(Itm.DiscountType); if (Itm.DiscountPercent > 0) { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val(Itm.DiscountPercent); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val(Itm.DiscountValue); } instance.updateItemsArray(elem, "Bind_SC_PC_CartItems", false, 0); } let cart_elem = $("#" + instance.g_VisibleContainerId).find(".cartitem-" + Itm.ItemId); if (cart_elem.length == 0) { instance.addCartItem(Itm.ItemId); } cart_elem = $("#" + instance.g_VisibleContainerId).find(".cartitem-" + Itm.ItemId); if (cart_elem != undefined && cart_elem.length > 0) { let row = instance.g_LoadedItems.find(x => x.ItemId == Itm.ItemId); if (row != undefined && row != null) { $("#" + instance.g_VisibleContainerId).find(cart_elem).find("#txt_editItemPrice").val(row.UnitPrice); } if (instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { $("#" + instance.g_VisibleContainerId).find(cart_elem).find(".txtOrder_ItemCount").val(Itm.Quantity); } else { $("#" + instance.g_VisibleContainerId).find(cart_elem).find(".txtOrder_ItemCount").val(Itm.Packs); $("#" + instance.g_VisibleContainerId).find(cart_elem).find(".txtOrder_ItemPieceCount").val(Itm.Pieces); } $("#" + instance.g_VisibleContainerId).find(cart_elem).find(".btnOrder_DiscType").val(Itm.DiscountType); if (Itm.DiscountPercent > 0) { $("#" + instance.g_VisibleContainerId).find(cart_elem).find("#Ord_txtdiscount").val(Itm.DiscountPercent); } else { $("#" + instance.g_VisibleContainerId).find(cart_elem).find("#Ord_txtdiscount").val(Itm.DiscountValue); } instance.updateItemsArray(cart_elem, "Bind_SC_PC_CartItems", false); } } } } updateItemsArray(elem, event, FromWidget = false, Qty = 0, Pcs = 0) { let instance = this; let OrderItemId = 0; let RefOrderItemId = 0; let SelectedUnitId = 1; let SelectedUnitName = ""; let DefaultSize = 0; if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length > 0 && !instance._order.g_IsSC_to_PC && !instance._order.g_IsPurchasePlanning && !instance._order.g_IsFromPurchaseIndent) { FromWidget = true; } let DiscountPercent = 0, DiscountValue = 0, DiscountAmount = 0, AfterDiscountValue = 0, BaseQty = 0, TaxGroupId = 0, TaxGroupName = "", TaxAmount = 0, StrTaxPercents = "", TaxRateAmount = 0, Amount = 0, IsCheckPendingItems = false, IsLeverageError = false, IsTaxError = false; let IsCalculateTax = instance._order.g_IsCalculateTax; let ItemIndex = instance.g_CartItems_New.length + 1; let optoutAmount = 0; let ItemId = Number($("#" + instance.g_VisibleContainerId).find(elem).find(".hfOrder_ItemId").val()); let Packs = isNaN(Number($("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").val())) ? 0 : Number($("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").val()); let Pieces = isNaN(Number($("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemPieceCount").val())) ? 0 : Number($("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemPieceCount").val()); if (Pieces == 0 && Pcs > 0) { Pieces = Pcs; } let UnitPrice = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()); let UnitPriceWithOutTax = UnitPrice; let DiscountType = Number($("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").val()); let IsExchangeDC = $("#" + instance.g_VisibleContainerId).find(elem).find(".chkItem_ExchangeDC").prop("checked"); if (IsExchangeDC == undefined) { IsExchangeDC = false; } let IsAfterTax = $("#" + instance.g_VisibleContainerId).find(elem).find(".divAfterTax").is(':checked'); if (DiscountType == 1) { DiscountPercent = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val()); DiscountAmount = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) * Number(DiscountPercent / 100); AfterDiscountValue = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) - Number(DiscountAmount); } else if (DiscountType == 2) { DiscountValue = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val()); DiscountAmount = DiscountValue; AfterDiscountValue = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) - DiscountValue; } let LoadedItems_Index = instance.g_LoadedItems.findIndex(x => x.ItemId == ItemId); let SelectedItems_Index = -1; if (instance.g_SelectedItems != undefined) { SelectedItems_Index = instance.g_SelectedItems.findIndex(x => x.ItemId == ItemId && x.RefItemIds == ""); } let CartItems_Index = -1; if (instance.g_CartItems_New != undefined) { CartItems_Index = instance.g_CartItems_New.findIndex(x => x.ItemId == ItemId && x.RefItemIds == ""); } let row = instance.g_LoadedItems[LoadedItems_Index]; let PurPlan_Index = instance.g_PurPlanData.findIndex(x => x.ItemId == ItemId); let PurPlanRow = []; if (PurPlan_Index != -1) { PurPlanRow = instance.g_PurPlanData[PurPlan_Index]; } else { PurPlanRow = row; } let PartNo = row.PartNo; if (PartNo == undefined || PartNo == "null" || PartNo == null) { PartNo = ""; } let Items_up = instance.g_ItemsUnitPrice_New.find(x => x.ItemId == ItemId); Items_up.UnitPrice = UnitPrice; if (Items_up.length == 0) { instance.g_ItemsUnitPrice_New.push({ ItemId: ItemId, UnitPrice: UnitPrice, TaxRateAmount: TaxRateAmount }); } let Quantity = 0; let UOMQuantity = 0; if (instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { BaseQty = Number(Packs); Quantity = Packs; let onlyPacks = parseInt((Number(Quantity) / Number(row.PackCount * row.PackSize)).toString()); let remainingQty = Quantity - (onlyPacks * row.PackCount * row.PackSize); let onlyPieces = remainingQty / row.PackSize; Packs = Number(onlyPacks); Pieces = Number(instance.roundOff(onlyPieces)); } else { if (Qty != 0) { BaseQty = Qty; Quantity = Qty; } else { BaseQty = Number(row.PackCount) * Number(row.PackSize) * Number(Packs) + (Pieces * row.PackSize); Quantity = ((row.PackCount * row.PackSize) * Packs) + (Pieces * row.PackSize); } } if (row.IsMultipleUOMs) { SelectedUnitId = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#ddl_MultipleUOMs_" + ItemId).val()); if (SelectedUnitId != 1 && SelectedUnitId != 0) { let MultipleUOM = row.MultipleUOMs.find(x => x.SchemaDetailId == SelectedUnitId); UOMQuantity = instance.roundOff(Quantity * (MultipleUOM.AlternateSize / MultipleUOM.DefaultSize)); BaseQty = UOMQuantity; DefaultSize = MultipleUOM.DefaultSize; SelectedUnitName = MultipleUOM.AlternateUnitName; } } if (row.IsManualUOM && instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales) { SelectedUnitId = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#ddl_ManualUOMs_" + ItemId).val()); if (isNaN(SelectedUnitId)) { SelectedUnitId = 1; } UOMQuantity = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_ManualConversionQty").val()); if (UOMQuantity <= 0 || isNaN(UOMQuantity)) { UOMQuantity = Packs; } BaseQty = UOMQuantity; SelectedUnitName = $("#ddl_ManualUOMs_" + ItemId + " option:selected").text(); } Quantity = instance.roundOffIgnoreZerosAfterDecimal(Quantity); UOMQuantity = instance.roundOffIgnoreZerosAfterDecimal(UOMQuantity); if (event == "Plus" || event == "Packs" || event == "Pieces") { IsCheckPendingItems = true; } else { if (Quantity == 0 && !FromWidget) { IsCheckPendingItems = true; } } if (SelectedItems_Index != -1) { if (event == "Plus" || event == "Packs" || event == "Pieces" || event == "ApplyOffer") { IsCheckPendingItems = instance.g_SelectedItems[SelectedItems_Index].IsCheckPendingItems; let qty = instance.g_SelectedItems[SelectedItems_Index].BaseQty; if (IsCheckPendingItems && qty > 0 && !FromWidget) { IsCheckPendingItems = false; } } ItemIndex = instance.g_SelectedItems[SelectedItems_Index].ItemIndex; OrderItemId = instance.g_SelectedItems[SelectedItems_Index].OrderItemId; RefOrderItemId = instance.g_SelectedItems[SelectedItems_Index].RefOrderItemId; $("#" + instance.g_VisibleContainerId).find(elem).find(".tax-error").text(""); $("#" + instance.g_VisibleContainerId).find(elem).find("#LeverageErrorTxt").addClass("hidden"); } if (instance.g_IsEnableCompositePiecePrice) { Amount = (UnitPriceWithOutTax * Number(BaseQty)) + Number(row.TaxRate); if (Number(BaseQty) == 0) Amount = 0; UnitPrice = instance.roundOffIgnoreZerosAfterDecimal(row.CompositePiecePrice); } else if (instance.g_IsEnableCompositePrice) { let amnt = Number(UnitPriceWithOutTax) * Number(row.TaxPercentage) / 100; TaxRateAmount = Number(UnitPriceWithOutTax) + Number(amnt); Amount = Number(BaseQty) * TaxRateAmount; UnitPrice = instance.roundOffIgnoreZerosAfterDecimal(row.CompositePrice); } else if (instance.g_IsEnablePiecePrice) { Amount = Number(BaseQty) * UnitPriceWithOutTax; UnitPrice = instance.roundOffIgnoreZerosAfterDecimal(row.PiecePrice); } else { Amount = Number(BaseQty) * UnitPriceWithOutTax; } Items_up.TaxRateAmount = TaxRateAmount; let AssessableAmount = Number(Amount); let discVal = Number(DiscountValue) * Number(BaseQty); let discPercent = Number(DiscountPercent); let DiscAmount = Number((Amount * discPercent) / 100) + Number(discVal); let discAmt = DiscAmount + Number(optoutAmount); AssessableAmount = Number(AssessableAmount) - Number(discAmt); let AmountWithDiscount = instance.roundOffIgnoreZerosAfterDecimal(Number(Amount) - Number(discAmt)); if (IsCalculateTax) { if (instance.g_IsEnableCompositePiecePrice || instance.g_IsEnableCompositePrice) { if (row.TaxGroupId == 0) { IsTaxError = true; } else { TaxGroupId = row.TaxGroupId; TaxGroupName = row.TaxGroupName; for (let p = 0; p < row.TaxPercentList.length; p++) { let percen = row.TaxPercentList[p]; let tax = AssessableAmount * percen.Percentage / 100; TaxAmount += tax; } StrTaxPercents = row.strTaxPercents; instance.getPriceTypeValues(ItemId, Packs, Pieces); if (instance.g_IsEnablePiecePrice) { UnitPrice = row.PiecePrice; instance.g_PriceTypeId = Bizgaze.Apps.Transact.Enums.PriceType.PiecePrice; } else if (instance.g_IsEnableCompositePrice) { UnitPrice = row.CompositePrice; instance.g_PriceTypeId = Bizgaze.Apps.Transact.Enums.PriceType.CompositePrice; } else if (instance.g_IsEnableCompositePiecePrice) { UnitPrice = row.CompositePiecePrice; instance.g_PriceTypeId = Bizgaze.Apps.Transact.Enums.PriceType.Both; } else { instance.g_PriceTypeId = Bizgaze.Apps.Transact.Enums.PriceType.None; } } } } else { $("#" + instance.g_VisibleContainerId).find("#TotalTax").addClass("hidden"); $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_istaxinclusive").addClass("hidden"); } let Description = ""; if (instance.g_FromWidgetEditOrderItemId > 0) { Description = $("#" + instance.g_VisibleContainerId).find("#txt_Description").val().toString(); } else { Description = $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_Description").val().toString(); } if (Description == "") { Description = row.Description != null ? row.Description : ""; } if (event == "PendingPopCancel") { IsCheckPendingItems = true; } let ItemData = { OrderItemId: OrderItemId, ItemIndex: ItemIndex, ItemId: ItemId, HSNId: row.HSNId, ItemName: row.ItemName, Packs: Packs, Pieces: Pieces, PriceListId: row.PriceListId, UnitPrice: UnitPrice, UnitPriceWithOutTax: UnitPriceWithOutTax, ExpectedPrice: row.UnitPrice, ActualPrice: row.UnitPrice, PackCount: row.PackCount, PackSize: row.PackSize, UnitName: row.UnitName, Quantity: Quantity, SKU: row.SKU, PartNo: PartNo, Amount: Amount, AmountWithDiscount: AmountWithDiscount, DiscountPercent: DiscountPercent, DiscountValue: DiscountValue, DiscountType: DiscountType, DiscountAmount: DiscountAmount, ItemValueAfterDiscount: AfterDiscountValue, StrTaxPercents: StrTaxPercents, AvailableQuantity: row.AvailableQuantity, AvailablePacks: row.AvailablePacks, AvailablePieces: row.AvailablePieces, TotalAvailablePieces: row.TotalAvailablePieces, ExchangeDC: IsExchangeDC, IsAfterTax: IsAfterTax, BaseQty: BaseQty, IsFocItem: false, optoutAmount: optoutAmount, TaxGroupId: TaxGroupId, TaxGroupName: TaxGroupName, TaxAmount: TaxAmount, TaxRateAmount: TaxRateAmount, TaxRate: row.TaxRate, TaxPercentage: row.TaxPercentage, IsOfferAvailable: row.IsOfferAvailable, Description: Description == undefined ? "" : Description, Discountable: row.Discountable, PiecePrice: row.PiecePrice, CompositePrice: row.CompositePrice, CompositePiecePrice: row.CompositePiecePrice, IsCheckPendingItems: IsCheckPendingItems, IsError: false, ErrorMsg: "", ErrorClass: "text-danger", IsTaxError: IsTaxError, IsLeverageError: IsLeverageError, IsFocAdded: false, RefOrderItemId: RefOrderItemId, RefItemIds: "", RefItemSKUs: "", FocItemIds: "", DiscountGroupId: 0, IsOfferDiscountApplied: false, AppliedOfferVolume: 0, AppliedPlanVolumeId: 0, AppliedOfferId: 0, optoutOfferGroupId: 0, SuggestedPacks: PurPlanRow.SuggestedPacks, MinPacks: PurPlanRow.MinPacks, AvgPacks: PurPlanRow.AvgPacks, InwardOrderPacks: PurPlanRow.InwardOrderPacks, OutwardOrderPacks: PurPlanRow.OutwardOrderPacks, IsManualUOM: row.IsManualUOM, UOMs: row.UOMs, IsMultipleUOMs: row.IsMultipleUOMs, UOMSchemaId: row.UOMSchemaId, MultipleUOMs: row.MultipleUOMs, SelectedUnitId: SelectedUnitId, SelectedUnitName: SelectedUnitName == "" ? row.UnitName : SelectedUnitName, DefaultSize: DefaultSize, IsBoMAvailable: row.IsBoMAvailable, IsSpecialPrice: row.IsSpecialPrice, ConversionQuantity: UOMQuantity, RowTotal: 0, RowDiscount: 0, TaxTotal: 0 }; if (SelectedItems_Index == -1) { instance.g_SelectedItems.push(ItemData); } else { instance.g_SelectedItems[SelectedItems_Index] = ItemData; } if (CartItems_Index == -1) { instance.g_CartItems_New.push(ItemData); } else { instance.g_CartItems_New[CartItems_Index] = ItemData; } let ItemElm = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId); if (ItemElm.length > 0) { instance.updateItemsDesign(ItemElm, event); } let IsCart = false; if ($("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").is(":visible")) { IsCart = true; } if (!FromWidget) { if (instance.g_CartItems_New.length == 0) { $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('
  • Your Shopping Cart is empty.
  • '); } else { $("#" + instance.g_VisibleContainerId).find(".EmptyCartLi").remove(); } if ($("#" + instance.g_VisibleContainerId).find("#cartItemsSearch").val() != undefined) { let value = $("#" + instance.g_VisibleContainerId).find("#cartItemsSearch").val().toString().toLowerCase(); $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart li:not(:first-child)").filter(function () { $("#" + instance.g_VisibleContainerId).find(this).toggle($("#" + instance.g_VisibleContainerId).find(this).text().toLowerCase().indexOf(value) > -1); }); } if (IsCheckPendingItems && $("#" + instance.g_VisibleContainerId).find(".bootbox-confirm").length == 0 && BaseQty != 0 && (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase)) { if (!IsTaxError && event != "PendingPopCancel") { instance.checkPendingPopup(ItemId, CartItems_Index, FromWidget); } } else { if (CartItems_Index != -1) { let Cart_elem = $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId); if (Cart_elem.length > 0 && !FromWidget) { let evnt = "EditCartItem"; if (event == "RefreshAllItems_InventoryClickEvents") { evnt = event; } instance.updateItemsDesign(Cart_elem, evnt, true); } } else { instance.addCartItem(ItemId); } } } else { if (IsCheckPendingItems && $("#" + instance.g_VisibleContainerId).find(".bootbox-confirm").length == 0) { if (!IsTaxError && event != "PendingPopCancel") { instance.checkPendingPopup(ItemId, CartItems_Index, FromWidget); } } } if (BaseQty != 0) { instance.checkValidations(ItemId, false); instance.checkValidations(ItemId, true); } else { instance.checkEnablePieces(); instance.checkEnablePacks(); } if (!instance._order.g_IsPointsOrder && (IsCart || FromWidget || instance.g_FromContinueShopping)) { if (row.IsOfferAvailable && !FromWidget) { instance.checkOffers(FromWidget, "UpdateItemsArray"); } else if (FromWidget) { instance.checkOffers(FromWidget, "UpdateItemsArray"); } else { if (IsCart || instance._order.g_IsPurchasePlanning) { if (event != "PurPlan_AllItems") { instance.getTotals(ItemId); } } } } else { if (IsCart || instance._order.g_IsPurchasePlanning) { if (event != "PurPlan_AllItems") { if (BaseQty != 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".chk_PurPlanItem").prop("checked", true); } else { $("#" + instance.g_VisibleContainerId).find(elem).find(".chk_PurPlanItem").prop("checked", false); } instance.getTotals(ItemId); } } } if (event == "FromWidget") { if (SelectedItems_Index != -1) { instance.g_SelectedItems[SelectedItems_Index].IsCheckPendingItems = true; } if (CartItems_Index == -1) { instance.g_CartItems_New[CartItems_Index].IsCheckPendingItems = true; } } instance.g_CartItems_New.filter(x => x.BaseQty == 0).forEach(function (c) { let ItemId = c.ItemId; let ItemElm = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId); let CartElm = $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId); $("#" + instance.g_VisibleContainerId).find(ItemElm).find(".divOrders_ItemCount").removeClass("floating-label-form-group-with-value"); $("#" + instance.g_VisibleContainerId).find(CartElm).find(".divOrders_ItemCount").removeClass("floating-label-form-group-with-value"); }); } getInventoryDesign(ItemId, IsCart, SuggestedPacks = 0, RefItemIds) { let instance = this; let html = ""; let InvType = "", fltngclass_Cartons = "", fltngclass_Pieces = "", PP_Cartons = "", PP_Pieces = "", IsFocItem = false, DisableQuantityTxtBox = "", HideMinusPlusBtns = ""; if (SuggestedPacks != 0) { PP_Cartons = SuggestedPacks.toString(); } let CartItem_Index = -1; CartItem_Index = instance.g_CartItems_New.findIndex(x => x.ItemId == ItemId && x.RefItemIds == RefItemIds); let InventoryTypeId = instance._order.g_InventoryApplyType; let CartItem = instance.g_CartItems_New[CartItem_Index]; if (CartItem != undefined) { PP_Cartons = CartItem.Packs.toString(); PP_Pieces = CartItem.Pieces.toString(); IsFocItem = CartItem.IsFocItem; if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { PP_Cartons = CartItem.Quantity.toString(); } } if (PP_Cartons == "0") { PP_Cartons = ""; } if (PP_Cartons != "") { fltngclass_Cartons = "floating-label-form-group-with-value"; } if (PP_Pieces == "0") { PP_Pieces = ""; } if (PP_Pieces != "") { fltngclass_Pieces = "floating-label-form-group-with-value"; } if (IsFocItem) { DisableQuantityTxtBox = "disabled style='cursor:not-allowed'"; HideMinusPlusBtns = "hidden"; } let IsEnablePacks = instance.g_IsEnablePacks, IsEnablePieces = instance.g_IsEnablePieces; if (IsFocItem) { InventoryTypeId = Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity; IsEnablePacks = true; IsEnablePieces = false; } if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs || InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces || InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) { if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces && !instance.g_IsEnablePacks) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12").removeClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").addClass("hidden").removeClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").addClass("col-sm-8").removeClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").addClass("col-sm-4").removeClass("col-sm-6"); } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs && !instance.g_IsEnablePieces) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").addClass("hidden").removeClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12").removeClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").addClass("col-sm-8").removeClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").addClass("col-sm-4").removeClass("col-sm-6"); } else if (instance.g_IsEnablePacks && instance.g_IsEnablePieces) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").removeClass("hidden").removeClass("col-sm-12").addClass("col-sm-6").addClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-12").addClass("col-sm-6").addClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").removeClass("col-sm-8").addClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").removeClass("col-sm-4").addClass("col-sm-6"); } $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").text("Cartons"); $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").text("Pieces"); } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").text("Quantity"); $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").addClass("hidden"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12"); } if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { InvType = "Quantity"; } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) { InvType = "Cartons"; } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces) { InvType = "Pieces"; } let cartItemQtyClass = ""; if (IsCart) { cartItemQtyClass = "_editCartItemQuantity"; } if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; } else if (IsEnablePacks && !IsEnablePieces && InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; } else if (!IsEnablePacks && IsEnablePieces) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; } if ((IsEnablePacks && IsEnablePieces) && InventoryTypeId != Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '; } html += ''; return html; } getInventoryDesignWithTokens_PurchasePlan() { let instance = this; let html = ""; let InvType = ""; let InventoryTypeId = instance._order.g_InventoryApplyType; let IsEnablePacks = instance.g_IsEnablePacks, IsEnablePieces = instance.g_IsEnablePieces; if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs || InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces || InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) { if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces && !instance.g_IsEnablePacks) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12").removeClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").addClass("hidden").removeClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").addClass("col-sm-8").removeClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").addClass("col-sm-4").removeClass("col-sm-6"); } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs && !instance.g_IsEnablePieces) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").addClass("hidden").removeClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12").removeClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").addClass("col-sm-8").removeClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").addClass("col-sm-4").removeClass("col-sm-6"); } else if (instance.g_IsEnablePacks && instance.g_IsEnablePieces) { $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").removeClass("hidden").removeClass("col-sm-12").addClass("col-sm-6").addClass("pr-90"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-12").addClass("col-sm-6").addClass("pl-40"); $("#" + instance.g_VisibleContainerId).find(".ItemDetails").removeClass("col-sm-8").addClass("col-sm-6"); $("#" + instance.g_VisibleContainerId).find(".InventoryTypesTextboxes").removeClass("col-sm-4").addClass("col-sm-6"); } $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").text("Cartons"); $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").text("Pieces"); } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").text("Quantity"); $("#" + instance.g_VisibleContainerId).find("#spn_picesTitle").addClass("hidden"); $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").removeClass("hidden").removeClass("col-sm-6").addClass("col-sm-12"); } if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { InvType = "Quantity"; } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) { InvType = "Cartons"; } else if (InventoryTypeId == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces) { InvType = "Pieces"; } if (IsEnablePacks && !IsEnablePieces) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; } else if (!IsEnablePacks && IsEnablePieces) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; } if (IsEnablePacks && IsEnablePieces) { html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '
    ' + '
    ' + '
    '; html += '
    ' + '
    ' + '' + '
    ' + '' + '' + '' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    '; } html += ''; return html; } getItemDesign(res, FromWidget = false, IsCart = false) { let instance = this; let html = ""; let data = res; let ItemId = data.ItemId; let InventoryType = instance._order.g_InventoryApplyType; let url = ''; let ItemImg = ""; let LoadedItemIndex = instance.g_LoadedItems.findIndex(x => x.ItemId == ItemId); if (LoadedItemIndex != -1) { url = instance.g_LoadedItems[LoadedItemIndex].ImageUrl; if (url == "" || url == undefined || url == null) { ItemImg = ``; } else { ItemImg = ``; } } else { if (data.ImageUrl == "" || data.ImageUrl == undefined || data.ImageUrl == null) { ItemImg = ``; } else { url = data.ImageUrl; ItemImg = ``; } } let hidden = ""; let OrderQuantity = ""; let multiplevalue = ""; let Mod_UnitPrice = 0; let Items_up = instance.g_ItemsUnitPrice_New.filter(x => x.ItemId == data.ItemId); if (Items_up.length == 0) { Mod_UnitPrice = data.UnitPrice; instance.g_ItemsUnitPrice_New.push({ ItemId: ItemId, UnitPrice: data.UnitPrice, TaxRateAmount: data.TaxRateAmount }); } else { Mod_UnitPrice = Items_up[0].UnitPrice; } if (instance._order.g_IsPurchasePlanning) { if ((res.SuggestedPacks) != 0 && (res.SuggestedPacks) != null && (res.SuggestedPacks) != undefined) { let unitprice = Number(Mod_UnitPrice); let packCount = Number(data.PackCount); let packSize = Number(data.PackSize); let baseqty = packCount * packSize * res.SuggestedPacks; OrderQuantity = " X " + (baseqty); multiplevalue = " = " + (unitprice * baseqty); } } let LiClass = "variant-item variant-addeditem variant-addeditem-" + ItemId; let EditUnitPriceClass = 'editItemPriceAccordion_'; let AvailClass = "ItemAvailability"; let ExchangeClass = "chkItem_ExchangeDC_" + ItemId; let HideDeleteBtn = ""; let RefItemIds = data.RefItemIds; if (RefItemIds == undefined) { RefItemIds = ""; } if (IsCart) { LiClass = "cartitem cartitem-" + ItemId; EditUnitPriceClass = 'editCartItemPriceAccordion_'; AvailClass = "CartAvailability"; ExchangeClass = "chkCartItem_ExchangeDC_" + ItemId; if (data.IsFocItem) { HideDeleteBtn = "hidden"; if (RefItemIds != "") { LiClass = "cartitem cartitem-" + ItemId + "-" + RefItemIds.replace(/,/g, "-"); } } } else if (FromWidget) { if (Bizgaze.Apps.Transact.Controls.AddOrderItems.Instance().g_Edit_OrderItemId > 0) { HideDeleteBtn = "hidden"; } if (RefItemIds != "") { LiClass = "variant-item variant-addeditem variant-addeditem-" + ItemId + "-" + RefItemIds.replace(/,/g, "-"); } } html = '
  • ' + '' + '' + '' + ''; let DivClass = 'col-sm-8'; let InventoryTypeDivClass = 'col-sm-4'; if (instance.g_IsEnablePacks && instance.g_IsEnablePieces) { DivClass = 'col-sm-6'; InventoryTypeDivClass = 'col-sm-6'; } if (`${ItemImg}`.length == 0) { html += `
    `; } else { html += `
    `; } let deleteBtnHtml = ''; if (IsCart || FromWidget) { deleteBtnHtml += ''; } if (!instance._order.g_IsPurchasePlanning) { if ($(window).width() < 768) { html += `
    ${deleteBtnHtml}
    ${data.ItemName}`; } else { html += `
    ${deleteBtnHtml}
    ${data.ItemName}`; } } else { html += 'div class="d-flex">
    Edit
    ' + '' + data.ItemName + '
    '; } if (data.IsOfferAvailable == true && (data.RefItemId == undefined || data.RefItemId == 0)) { if (instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { html += ''; html += ' offer'; } } if (data.IsBoMAvailable) { if (instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { html += ' BOM '; } } if (data.IsSpecialPrice && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) html += 'SP'; html += ''; html += '
    '; if (data.PartNo != "" && data.PartNo != null) { html += 'SKU : ' + data.SKU + ' ( ' + data.PartNo + ' )'; } else { html += 'SKU : ' + data.SKU; } if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { html += ', '; } if (InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs || InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces || InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) { if (instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { if (instance._order.g_IsPurchasePlanning) { html += `Avail : ` + data.AvailablePacks + ` / ` + data.AvailablePieces + ` (` + data.AvailableQuantity + `)` + ` Pur PO: ` + res.InwardOrderPacks + ` Sales PO: ` + res.OutwardOrderPacks + `
    `; } else { if (InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces && !instance.g_IsEnablePacks) { html += 'Avail : ' + data.TotalAvailablePieces + ' (' + data.AvailableQuantity + ') '; } else { html += 'Avail : ' + data.AvailablePacks + ' / ' + data.AvailablePieces + ' (' + data.AvailableQuantity + ') '; } } } } else { html += 'Claim Avail : ' + data.AvailablePacks + ' / ' + data.AvailablePieces + ' (' + data.AvailableQuantity + ')'; } } else if (InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { if (instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { if (instance._order.g_IsPurchasePlanning) { html += 'Avail : ' + data.Packs + ' Pur PO: ' + res.InwardOrderPacks + ' Sales PO: ' + res.OutwardOrderPacks + '
    '; } else html += 'Avail : ' + data.AvailableQuantity + ''; } } else html += 'Claim Avail : ' + data.AvailableQuantity + ''; } if (instance._order.g_IsPurchasePlanning) { html += 'MOQ : {{MinPacks}} | ROQ : {{ReorderPacks}} | Suggested : {{SuggestedPacks}} | Avg : {{AvgPacks}} '; } let Price_dataToggle = ""; if (instance._order.g_IsAdmin == 1 || instance._order.g_ShowPrice == 1) { Price_dataToggle = `data-toggle="collapse"`; } instance.getPriceTypeValues(ItemId); let compositeDecimalValue = 0; let piecePriceDecimalValue = 0; let compositePiecePriceDecimalvalue = 0; let Item = instance.g_LoadedItems.find(x => x.ItemId == ItemId); if (Item != undefined) { compositeDecimalValue = Item.CompositePrice; piecePriceDecimalValue = Item.PiecePrice; compositePiecePriceDecimalvalue = Item.CompositePiecePrice; } html += '
    '; if (instance.g_IsEnablePiecePrice) { if (instance._order.g_IsPurchasePlanning && (res.SuggestedPacks) != 0 && (res.SuggestedPacks) != null && (res.SuggestedPacks) != undefined && Mod_UnitPrice != 0) { html += 'Piece Price : ' + Number(instance.roundOff(piecePriceDecimalValue)) + ' '; } else html += 'Piece Price : ' + Number(instance.roundOff(piecePriceDecimalValue)) + ' '; } else if (instance.g_IsEnableCompositePrice) { if ((instance._order.g_IsPurchasePlanning && data.SuggestedPacks) != 0 && (data.SuggestedPacks) != null && (data.SuggestedPacks) != undefined && Mod_UnitPrice != 0) { html += 'Comp. Price : ' + Number(instance.roundOff(compositeDecimalValue)) + ' '; } else { html += 'Comp. Price : ' + Number(instance.roundOff(compositeDecimalValue)) + ' '; } } else if (instance.g_IsEnableCompositePiecePrice) { if (instance._order.g_IsPurchasePlanning && (data.SuggestedPacks) != 0 && (data.SuggestedPacks) != null && (data.SuggestedPacks) != undefined && Mod_UnitPrice != 0) { html += 'Comp. Piece Price : ' + Number(instance.roundOff(compositePiecePriceDecimalvalue)) + ' '; } else html += 'Comp. Piece Price : ' + Number(instance.roundOff(compositePiecePriceDecimalvalue)) + ' '; } else { if (instance._order.g_IsPurchasePlanning && (res.SuggestedPacks) != 0 && (res.SuggestedPacks) != null && (res.SuggestedPacks) != undefined && Mod_UnitPrice != 0) { html += 'Price : ' + Mod_UnitPrice + ' '; } else { let PointsorPrice = "Price"; if (instance._order.g_IsPointsOrder) { PointsorPrice = "Points"; } if (data.IsManualUOM && instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales) { html += '' + PointsorPrice + ' : ' + Mod_UnitPrice + ' '; } else { html += '' + PointsorPrice + ' : ' + Mod_UnitPrice + ' '; } } } html += '
    '; html += '
    '; html += '
    '; let SuggestedPacks = 0; if (instance._order.g_IsPurchasePlanning) { SuggestedPacks = res.SuggestedPacks; } html += '
    '; html += instance.getInventoryDesign(ItemId, IsCart, SuggestedPacks, RefItemIds); html += '
    '; let classclaim = ""; if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { classclaim = "col-sm-7"; } else { classclaim = "col-sm-2"; } let IsExpandItem = ""; if (instance._order.g_ExpandItemSettings && (instance._order.g_IsAdmin == 1 || instance._order.g_ShowPrice == 1)) { IsExpandItem = ""; } else { IsExpandItem = "collapse"; } html += '
    ' + '
    ' + '
    ' + '
    ' + '
    '; html += '
    '; let offerDiscountClass = ""; if (data.IsOfferAvailable && data.IsOfferDiscountApplied && IsCart && !instance._order.g_IsManageOfferDiscount) { offerDiscountClass = "readonly"; } let IsDiscountHidden = ""; if (instance._order.g_IsPointsOrder) { IsDiscountHidden = "hidden"; } html += '
    ' + '
    ' + '
    ' + '' + '
    ' + '' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    '; if (instance.g_FromWidgetEditOrderItemId == 0) { html += '
    ' + '
    ' + '' + '' + '
    ' + '
    '; } offerDiscountClass = ""; let IsItemExchangable = data.Discountable; if (instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim && instance._order.g_OrderTypeId != Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) { if ((instance._order.g_IsAdmin == 1 && IsItemExchangable) || (instance._order.g_IsShowExchangeDc == 1 && IsItemExchangable)) { html += '
    ' + '
    ' + '' + '' + '
    ' + '
    '; } } let IsMultipleUOMs = data.IsMultipleUOMs; let MultipleUOMs = data.MultipleUOMs; if (IsMultipleUOMs) { html += '
    ' + ''; html += ''; html += '

    '; } html += '
    ' + '
    '; html += '
    '; html += '
  • '; return html; } getItemDesignWithTokens_PurchasePlan() { let instance = this; let html = ""; let InventoryType = instance._order.g_InventoryApplyType; html = '
  • ' + '' + '' + '' + ''; let DivClass = 'col-sm-8'; let InventoryTypeDivClass = 'col-sm-4'; if (instance.g_IsEnablePacks && instance.g_IsEnablePieces) { DivClass = 'col-sm-6'; InventoryTypeDivClass = 'col-sm-6'; } html += '
    ' + '
    ' + ' ' + ' '; html += ' Edit
    ' + '{{ItemName}}
    '; html += 'SKU : {{SKU}}'; if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { html += ', '; } let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId; let InputParameters = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters; let BranchId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_branchid").Value); if (InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs || InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces || InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) { if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { html += `Avail : {{AvailablePacks}} / {{AvailablePieces}} ({{AvailableQuantity}})` + ` Pur PO: {{InwardOrderPacks}} Sales PO: {{OutwardOrderPacks}}
    `; } } else if (InventoryType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { if (instance._order.g_IsAdmin == 1 || instance._order.g_IsShowAvailability == 1) { html += 'Avail : {{Packs}} Pur PO: {{InwardOrderPacks}} Sales PO: {{OutwardOrderPacks}}
    '; } } html += 'Saftey Stock : {{MinPacks}} | Suggested : {{SuggestedPacks}} | Avg : {{AvgPacks}} '; let Price_dataToggle = ""; if (instance._order.g_IsAdmin == 1 || instance._order.g_ShowPrice == 1) { Price_dataToggle = `data-toggle="collapse"`; } html += '
    '; html += 'Price : {{ConfirmedUnitPrice}} '; html += ''; html += '
    '; html += '
    '; html += instance.getInventoryDesignWithTokens_PurchasePlan(); html += '
    '; html += '
    ' + '
    ' + '
    ' + '
    ' + '
    '; html += '
    '; html += '
    ' + '
    ' + '
    ' + '' + '
    ' + '' + '
    ' + '' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '
    ' + '' + '' + '
    ' + '
    '; html += '
    ' + '
    ' + '
    '; html += '
  • '; return html; } getManualUOMDesign(Itm) { let html = ` `; return html; } bindManualUOMData(elem, Itm, AmountWithDiscount) { let instance = this; $("#" + instance.g_VisibleContainerId).find(elem).find(".ManualUOM_" + Itm.ItemId).removeClass("hidden"); $("#" + instance.g_VisibleContainerId).find(elem).find(".ManualUOM_RowTotal").removeClass("hidden").text(" = " + AmountWithDiscount); $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_ManualConversionQty").val(Itm.ConversionQuantity); $("#" + instance.g_VisibleContainerId).find(elem).find(".dropdown_ManualUOMs").val(Itm.SelectedUnitId); } updateItemsDesign(elem, evnt, IsCart = false, IsFocItem = false) { debugger; let instance = this; if (elem.length != 0) { let ItemId = $("#" + instance.g_VisibleContainerId).find(elem).find(".hfOrder_ItemId").val(); let RefItemIds = $("#" + instance.g_VisibleContainerId).find(elem).find(".hfOrder_RefItemId").val(); let CartItem_Index = -1; if (IsFocItem) { CartItem_Index = instance.g_CartItems_New.findIndex(x => x.ItemId == ItemId && x.RefItemIds == RefItemIds); } else { CartItem_Index = instance.g_CartItems_New.findIndex(x => x.ItemId == ItemId && x.RefItemIds == ""); } let Itm = instance.g_CartItems_New[CartItem_Index]; if (Itm == undefined) { return false; } Itm.UnitPrice = Math.abs(Itm.UnitPrice); Itm.UnitPriceWithOutTax = Math.abs(Itm.UnitPriceWithOutTax); let UnitPrice = Itm.UnitPrice; let UnitName = Itm.UnitName; let pricelabel = "Price"; if (instance._order.g_IsPointsOrder) { pricelabel = "Points"; } if (instance.g_IsEnablePiecePrice) pricelabel = "Piece Price"; if (instance.g_IsEnableCompositePrice) { pricelabel = "Comp. Price"; } if (instance.g_IsEnableCompositePiecePrice) { pricelabel = "Comp. Piece Price"; } $("#" + instance.g_VisibleContainerId).find(".sp_PriceType").text(pricelabel + " : "); $("#" + instance.g_VisibleContainerId).find(".sp_PriceType").addClass("font-12"); let Cond = $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").is(":visible") || evnt == "BindItemList" || evnt == "FromWidget_FocItem" || evnt == "EditOrderItem" || evnt == "FromWidget" || evnt == "AddFocItem_IsOfferDiscountApplied" || evnt == "EditFocItem_IsOfferDiscountApplied" || evnt == "DeleteCartItem"; if (IsCart) { Cond = !$("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").is(":visible") || evnt == "EditFocItem" || evnt == "AddFocItem_IsOfferDiscountApplied" || evnt == "EditFocItem_IsOfferDiscountApplied" || instance._order.g_IsSC_to_PC; } if (Cond) { let Cartons = Itm.Quantity; if (instance._order.g_InventoryApplyType != Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { Cartons = Itm.Packs; } $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").val(Cartons); $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemPieceCount").val(Itm.Pieces); $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val(Itm.UnitPriceWithOutTax); $("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").val(Itm.DiscountType); let Discount = Itm.DiscountValue == 0 ? Itm.DiscountPercent : Itm.DiscountValue; if (Discount == 0) { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val(""); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").val(Discount); } } if (Itm.Description != "" && Itm.Description != null) { if (instance.g_FromWidgetEditOrderItemId > 0) { $("#" + instance.g_VisibleContainerId).find("#txt_Description").val(Itm.Description); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_Description").val(Itm.Description); } $("#" + instance.g_VisibleContainerId).find(elem).find(".descriptionFloatLabels").addClass("floating-label-form-group-with-value"); } if (Itm.Packs > 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".defaultSelectedCartons").addClass("floating-label-form-group-with-value"); } if (Itm.Pieces > 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".defaultSelectedPieces").addClass("floating-label-form-group-with-value"); } $("#" + instance.g_VisibleContainerId).find(elem).find(".CompositePriceCalBreak").html(''); if (Itm.ExchangeDC) { $("#" + instance.g_VisibleContainerId).find(elem).find(".chkItem_ExchangeDC").prop("checked", true); } else { $("#" + instance.g_VisibleContainerId).find(elem).find(".chkItem_ExchangeDC").prop("checked", false); } let ItemIndex = $("#" + instance.g_VisibleContainerId).find(elem).attr("class").toString().indexOf("variant-addeditem-" + Itm.ItemId); if ((Itm.IsOfferAvailable && Itm.IsOfferDiscountApplied && IsCart && ItemIndex == -1 && !instance._order.g_IsManageOfferDiscount) || (Itm.ExchangeDC)) { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").attr("disabled", "disabled").css("cursor", "not-allowed"); $("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").attr("disabled", "disabled").css("cursor", "not-allowed"); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").removeAttr("disabled").removeAttr("style"); $("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").removeAttr("disabled").removeAttr("style"); } if (Itm.IsMultipleUOMs) { $("#" + instance.g_VisibleContainerId).find(elem).find("#ddl_MultipleUOMs_" + ItemId).val(Itm.SelectedUnitId); if (Itm.SelectedUnitId != 1 && Itm.SelectedUnitId != 0) { let UOM = Itm.MultipleUOMs.find(x => x.SchemaDetailId == Itm.SelectedUnitId); let Conversion = UOM.DefaultSize + " " + UOM.DefaultUnitName + " = " + UOM.AlternateSize + " " + UOM.AlternateUnitName; $("#" + instance.g_VisibleContainerId).find(".ItemConversion_" + Itm.ItemId).text(Conversion); UnitName = Itm.SelectedUnitName; } else { $("#" + instance.g_VisibleContainerId).find(".ItemConversion_" + Itm.ItemId).text(""); } } if (IsCart) { if (Itm.ExchangeDC) { UnitPrice = -Itm.UnitPrice; let ItemName = Itm.ItemName + " (Exchange) "; $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find(".CartItemName").html(ItemName); $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find(".CartItemName").append(" After Tax"); } else { $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find(".CartItemName").html(Itm.ItemName); $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find(".CartItemName").find(".divAfterTax").remove(); } } if (instance.g_FromWidget) { if (Itm.ExchangeDC) { UnitPrice = -Itm.UnitPrice; let ItemName = Itm.ItemName + " (Exchange) "; $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId).find(".CartItemName").html(ItemName); $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId).find(".CartItemName").append(" After Tax"); } else { $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId).find(".CartItemName").html(Itm.ItemName); $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + ItemId).find(".CartItemName").find(".divAfterTax").remove(); } } let _quantity = instance.roundOffIgnoreZerosAfterDecimal(Itm.BaseQty); if (Itm.IsMultipleUOMs && Itm.ConversionQuantity > 0) { _quantity = Itm.ConversionQuantity; } let AmountWithDiscount = instance.roundOffIgnoreZerosAfterDecimal(Number(Itm.AmountWithDiscount)); if (Itm.Packs == 0 && Itm.Pieces == 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(Itm.UnitPrice).css({ 'text-decoration': 'underline', 'color': '#5ba8fb' }); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(""); $("#" + instance.g_VisibleContainerId).find(elem).find(".chk_PurPlanItem").prop("checked", false).attr("disabled", "true"); } else { $("#" + instance.g_VisibleContainerId).find(elem).find(".chk_PurPlanItem").prop("checked", true).removeAttr("disabled"); if (Itm.DiscountValue > 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text("(" + Itm.UnitPrice).css({ 'text-decoration': 'underline', 'color': '#5ba8fb' }); if (Itm.IsManualUOM && instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales) { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" - " + Number(Itm.DiscountValue) + ") X "); instance.bindManualUOMData(elem, Itm, AmountWithDiscount); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" - " + Number(Itm.DiscountValue) + ") X " + _quantity + '(' + UnitName + ')' + " = " + AmountWithDiscount); } $("#" + instance.g_VisibleContainerId).find(elem).find(".discountFloatLabels").addClass("floating-label-form-group-with-value"); } else if (Itm.DiscountPercent > 0) { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text("(" + Itm.UnitPrice).css({ 'text-decoration': 'underline', 'color': '#5ba8fb' }); if (Itm.IsManualUOM && instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales) { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" - " + Number(Itm.DiscountPercent) + "%) X "); instance.bindManualUOMData(elem, Itm, AmountWithDiscount); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" - " + Number(Itm.DiscountPercent) + "%) X " + _quantity + '(' + UnitName + ')' + " = " + AmountWithDiscount); } $("#" + instance.g_VisibleContainerId).find(elem).find(".discountFloatLabels").addClass("floating-label-form-group-with-value"); } else { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(Number(UnitPrice)).css({ 'text-decoration': 'underline', 'color': '#5ba8fb' }); if (Itm.IsManualUOM && instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales) { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" X "); instance.bindManualUOMData(elem, Itm, AmountWithDiscount); } else { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(" X " + _quantity + '(' + UnitName + ')' + " = " + AmountWithDiscount); } $("#" + instance.g_VisibleContainerId).find(elem).find(".discountFloatLabels").removeClass("floating-label-form-group-with-value"); } } if (Itm.IsFocItem) { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").removeAttr("style").removeAttr("data-toggle").removeAttr("data-collapse").attr("disabled", "true").css("cursor", "not-allowed"); $("#" + instance.g_VisibleContainerId).find(elem).find(".focBadge").removeClass("hidden"); $("#" + instance.g_VisibleContainerId).find(elem).find("#FocBadgeSKU").text(Itm.RefItemSKUs); } $("#" + instance.g_VisibleContainerId).find(elem).find("#DiscountOpenBracket").addClass("hidden"); instance.getPriceTypeValues(ItemId, Itm.Packs, Itm.Pieces); let PiecePrice = instance.roundOffIgnoreZerosAfterDecimal(Itm.PiecePrice); let CompositePrice = instance.roundOffIgnoreZerosAfterDecimal(Itm.CompositePrice); let CompositePiecePrice = instance.roundOffIgnoreZerosAfterDecimal(Itm.CompositePiecePrice); if (instance.g_IsEnablePiecePrice) { let TotalPieces = (Itm.Packs * Itm.PackCount) + Itm.Pieces; if (Itm.DiscountValue == 0 && Itm.DiscountPercent == 0) { let RowTotal = PiecePrice * TotalPieces; $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(PiecePrice); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' X ' + TotalPieces + ' Pieces = ' + RowTotal); } else if (Itm.DiscountValue > 0) { let DiscountAmount = Itm.DiscountValue * Itm.PackSize; let RowTotal = (PiecePrice - DiscountAmount) * TotalPieces; $("#" + instance.g_VisibleContainerId).find(elem).find("#DiscountOpenBracket").removeClass("hidden").text('('); $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(PiecePrice); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + DiscountAmount + ') X ' + TotalPieces + ' Pieces = ' + RowTotal); } else if (Itm.DiscountPercent > 0) { let DiscountAmount = (PiecePrice * Itm.DiscountPercent) / 100; let RowTotal = (PiecePrice - DiscountAmount) * TotalPieces; $("#" + instance.g_VisibleContainerId).find(elem).find("#DiscountOpenBracket").removeClass("hidden"); $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(PiecePrice); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + Itm.DiscountPercent + '%) X ' + TotalPieces + ' Pieces = ' + RowTotal); } } if (instance.g_IsEnableCompositePrice) { $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(CompositePrice); if (Itm.DiscountValue == 0 && Itm.DiscountPercent == 0) { let RowTotal = instance.roundOffIgnoreZerosAfterDecimal(CompositePrice * _quantity); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' X ' + _quantity + ' ' + UnitName + ' = ' + RowTotal); } else if (Itm.DiscountValue > 0) { let DiscountAmount = Itm.DiscountValue * _quantity; let RowTotal = (Itm.UnitPriceWithOutTax * _quantity) - DiscountAmount; let AmountWithTax = instance.getAmountWithTax(Itm.ItemId, RowTotal).split('|'); let RowTotalWithTax = instance.roundOffIgnoreZerosAfterDecimal(AmountWithTax[0]); let RowTax = AmountWithTax[1]; $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text('(' + Itm.UnitPriceWithOutTax); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + Itm.DiscountValue + ') X ' + _quantity + ' ' + UnitName + ' + (' + RowTax + ') = ' + RowTotalWithTax); } else if (Itm.DiscountPercent > 0) { let Amount = (Itm.BaseQty * Itm.UnitPriceWithOutTax); let DiscountAmount = (Amount * Itm.DiscountPercent) / 100; let RowTotal = (Itm.UnitPriceWithOutTax * _quantity) - DiscountAmount; let AmountWithTax = instance.getAmountWithTax(Itm.ItemId, RowTotal).split('|'); let RowTotalWithTax = instance.roundOffIgnoreZerosAfterDecimal(AmountWithTax[0]); let RowTax = AmountWithTax[1]; $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text('(' + Itm.UnitPriceWithOutTax); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + Itm.DiscountPercent + '%) X ' + _quantity + ' ' + UnitName + ' + (' + RowTax + ') = ' + RowTotalWithTax); } } if (instance.g_IsEnableCompositePiecePrice) { let CompositePiecePrice = instance.roundOffIgnoreZerosAfterDecimal(Itm.CompositePiecePrice); let PiecePrice = instance.roundOffIgnoreZerosAfterDecimal(Itm.PiecePrice); $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text(CompositePiecePrice); if (Itm.DiscountValue == 0 && Itm.DiscountPercent == 0) { $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' (' + _quantity + ' ' + UnitName + ')'); } else if (Itm.DiscountValue > 0) { let DiscountAmount = Itm.DiscountValue * _quantity; let RowTotal = PiecePrice - DiscountAmount; let AmountWithTax = instance.getAmountWithTax(Itm.ItemId, RowTotal).split('|'); let RowTotalWithTax = instance.roundOffIgnoreZerosAfterDecimal(AmountWithTax[0]); let RowTax = AmountWithTax[1]; $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text('(' + Itm.UnitPriceWithOutTax); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + Itm.DiscountValue + ') X ' + _quantity + ' ' + UnitName + ' + (' + RowTax + ') = ' + RowTotalWithTax); } else if (Itm.DiscountPercent > 0) { let Amount = (Itm.BaseQty * Itm.UnitPriceWithOutTax); let DiscountAmount = (Amount * Itm.DiscountPercent) / 100; let RowTotal = PiecePrice - DiscountAmount; let AmountWithTax = instance.getAmountWithTax(Itm.ItemId, RowTotal).split('|'); let RowTotalWithTax = instance.roundOffIgnoreZerosAfterDecimal(AmountWithTax[0]); let RowTax = AmountWithTax[1]; $("#" + instance.g_VisibleContainerId).find(elem).find(".editItemPrice").text('(' + Itm.UnitPriceWithOutTax); $("#" + instance.g_VisibleContainerId).find(elem).find("#QuantityAndDiscountSpan").text(' - ' + Itm.DiscountPercent + '%) X ' + _quantity + ' ' + UnitName + ' + (' + RowTax + ') = ' + RowTotalWithTax); } } if (evnt == "RefreshAllItems_InventoryClickEvents" || evnt == "FromWidget") { let html = instance.getInventoryDesign(ItemId, IsCart, 0, Itm.RefItemIds); $("#" + instance.g_VisibleContainerId).find(elem).find("#InventoryTypesTextboxes").html(html); instance.allItemEvents(elem); } if (instance._order.g_ExpandItemSettings && (instance._order.g_IsAdmin == 1 || instance._order.g_ShowPrice == 1)) { $("#editItemPriceAccordion_" + ItemId).removeClass("collapse"); } else { $("#editItemPriceAccordion_" + ItemId).addClass("collapse"); } instance.checkErrors(); instance.checkLoyalityErrors(elem); } } updateItemsAvailability(res) { let instance = this; let Items = $("#" + instance.g_VisibleContainerId).find(".variant-list").find("li"); for (let i = 0; i < Items.length; i++) { let elem = Items[i]; let ItemId = $("#" + instance.g_VisibleContainerId).find(elem).find(".hfOrder_ItemId").val(); if (ItemId > 0) { let data = res.find(x => x.ItemId == ItemId); $("#" + instance.g_VisibleContainerId).find(elem).find(".ItemAvailability").text('Avail : ' + data.AvailablePacks + ' / ' + data.AvailablePieces + ' (' + data.AvailableQuantity + ')'); } } let CartItems = $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").find("li"); for (let c = 0; c < CartItems.length; c++) { let elem = CartItems[c]; let ItemId = $("#" + instance.g_VisibleContainerId).find(elem).find(".hfOrder_ItemId").val(); if (ItemId > 0) { let data = res.find(x => x.ItemId == ItemId); $("#" + instance.g_VisibleContainerId).find(elem).find(".CartAvailability").text('Avail : ' + data.AvailablePacks + ' / ' + data.AvailablePieces + ' (' + data.AvailableQuantity + ')'); } } } allItemEvents(elem) { let instance = this; if (!instance.g_PacksFocus && !instance.g_PiecesFocus) { if (instance.g_IsEnablePacks) { instance.g_PacksFocus = true; } else if (instance.g_IsEnablePieces) { instance.g_PiecesFocus = false; } } let timer; if (instance._order.g_IsSC_to_PC && !instance._order.g_IsFromPurchaseIndent) { $("#" + instance.g_VisibleContainerId).find(elem).find(".quantity-plus").addClass("disabled"); $("#" + instance.g_VisibleContainerId).find(elem).find("#div_Cartons").find(".input-group-append").css("cursor", "not-allowed"); } $("#" + instance.g_VisibleContainerId).find(".mouseHoverClass").hover(function () { $("#" + instance.g_VisibleContainerId).find(this).closest(".variant-item").find('.mouseHoverClass').css({ 'font-weight': '' }); }, function () { $("#" + instance.g_VisibleContainerId).find(this).closest(".variant-item").find('.mouseHoverClass').css({ 'font-weight': '' }); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".chk_PurPlanItem").unbind().click(function () { let element = elem; let ItemId = element.find(".hfOrder_ItemId").val(); if ($("#" + instance.g_VisibleContainerId).find(this).is(':checked')) { instance.updateItemsArray(element, "PurPlan"); } else { instance.deleteCartItems(ItemId); $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").find(".cartitem-" + ItemId).remove(); } }); $("#" + instance.g_VisibleContainerId).find(".editCartItemQuantity").unbind().click(function () { let element = elem; element.find("._editCartItemQuantity").toggleClass("hidden"); element.find(".editCartItemQuantity").toggleClass("hidden"); element.find(".CartAvailability").toggleClass("hidden"); }); $("#" + instance.g_VisibleContainerId).find(elem).find('.txtOrder_ItemCount').unbind().click(function () { instance.g_PacksFocus = true; instance.g_PiecesFocus = false; }); $("#" + instance.g_VisibleContainerId).find(elem).find('.txtOrder_ItemPieceCount').unbind().click(function () { instance.g_PiecesFocus = true; instance.g_PacksFocus = false; }); $("#" + instance.g_VisibleContainerId).find(elem).find(".txteditItemPrice").unbind().keyup(function () { clearTimeout(timer); timer = setTimeout(function () { let element = elem; instance.updateItemsArray(element, "UnitPrice"); }, 300); }); $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_ManualConversionQty").unbind().keyup(function () { clearTimeout(timer); timer = setTimeout(function () { let element = elem; instance.updateItemsArray(element, "ManualConversionQty"); }, 300); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".dropdown_ManualUOMs").unbind().change(function () { let element = elem; let ItemId = element.find(".hfOrder_ItemId").val(); let ItmIndex = instance.g_CartItems_New.findIndex(x => x.ItemId == ItemId); if (ItmIndex != -1) { let SelectedUnitId = Number($("#" + instance.g_VisibleContainerId).find(elem).find(".dropdown_ManualUOMs").val()); let SelectedUnitName = $("#" + instance.g_VisibleContainerId).find(elem).find(".dropdown_ManualUOMs option:selected").text(); instance.g_CartItems_New[ItmIndex].SelectedUnitId = SelectedUnitId; instance.g_CartItems_New[ItmIndex].SelectedUnitName = SelectedUnitName; $("#ulOrder_Cart").find("#ddl_ManualUOMs_" + ItemId).val(SelectedUnitId); } }); $("#" + instance.g_VisibleContainerId).find(elem).find(".quantity-plus").unbind().click(function () { let element = elem; let Packs = Number(element.find(".txtOrder_ItemCount").val()); let Pieces = 0; if (instance.g_IsEnablePieces) { Pieces = Number(element.find(".txtOrder_ItemPieceCount").val()); } if (Packs == 0 && Pieces > 0) { instance.g_PacksFocus = false; instance.g_PiecesFocus = true; } if (instance.g_PacksFocus) { if (element.find("#txt_Pieces").val() == 0) { element.find('.divOrders_ItemPieceCount').removeClass('floating-label-form-group-with-value'); } element.find('.divOrders_ItemCount').addClass('floating-label-form-group-with-value'); let Packs = Number(element.find(".txtOrder_ItemCount").val()); let incVal = instance.getIncrementValue(Packs); let val = instance.roundOffIgnoreZerosAfterDecimal(Packs + incVal); element.find(".txtOrder_ItemCount").val(val); } if (instance.g_PiecesFocus) { element.find('.divOrders_ItemPieceCount').addClass('floating-label-form-group-with-value'); let Pieces = Number(element.find(".txtOrder_ItemPieceCount").val()); let incVal = instance.getIncrementValue(Pieces); let val = instance.roundOffIgnoreZerosAfterDecimal(Pieces + incVal); element.find(".txtOrder_ItemPieceCount").val(val); } instance.updateItemsArray(element, "Plus"); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".quantity-minus").unbind().click(function () { let element = elem; let ItemId = element.find(".hfOrder_ItemId").val(); let Packs = Number(element.find(".txtOrder_ItemCount").val()); let Pieces = Number(element.find(".txtOrder_ItemPieceCount").val()); if (Packs == 0 && Pieces > 0) { instance.g_PacksFocus = false; instance.g_PiecesFocus = true; } if (instance.g_PacksFocus) { if (element.find("#txt_Pieces").val() == 0) { element.find('.divOrders_ItemPieceCount').removeClass('floating-label-form-group-with-value'); } element.find('.divOrders_ItemCount').addClass('floating-label-form-group-with-value'); let incVal = instance.getIncrementValue(Packs); if (Packs > 0) { let val = instance.roundOffIgnoreZerosAfterDecimal(Packs - incVal); element.find(".txtOrder_ItemCount").val(val); } else if (Packs == 0 && Pieces > 0) { element.find(".txtOrder_ItemCount").val(instance.roundOffIgnoreZerosAfterDecimal(Packs)); } else { element.find('.divOrders_ItemCount').removeClass('floating-label-form-group-with-value'); instance.deleteCartItems(ItemId); return false; } } if (instance.g_PiecesFocus) { element.find('.divOrders_ItemPieceCount').addClass('floating-label-form-group-with-value'); let Pieces = Number(element.find(".txtOrder_ItemPieceCount").val()); let incVal = instance.getIncrementValue(Pieces); if (Pieces > 0) { let val = instance.roundOffIgnoreZerosAfterDecimal(Pieces - incVal); element.find(".txtOrder_ItemPieceCount").val(val); } else if (Pieces == 0 && Packs > 0) { element.find(".txtOrder_ItemPieceCount").val(instance.roundOffIgnoreZerosAfterDecimal(Pieces)); } else { element.find('.divOrders_ItemPieceCount').removeClass('floating-label-form-group-with-value'); instance.deleteCartItems(ItemId); return false; } } instance.updateItemsArray(element, "Minus"); }); $("#" + instance.g_VisibleContainerId).find(elem).find('.chkItem_ExchangeDC').unbind().change(function () { let element = elem; let ItemId = element.find(".hfOrder_ItemId").val(); if (element.find('.chkItem_ExchangeDC').prop("checked")) { element.find('#Ord_txtdiscount').val('').prop("disabled", true).css("cursor", "not-allowed"); $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find("#Ord_txtdiscount").val('').prop("disabled", true).css("cursor", "not-allowed"); } else { element.find('#Ord_txtdiscount').prop("disabled", false).css("cursor", "auto"); $("#" + instance.g_VisibleContainerId).find(".cartitem-" + ItemId).find('#Ord_txtdiscount').prop("disabled", false).css("cursor", "auto"); } instance.updateItemsArray(element, "Exchange"); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemCount").keyup(function () { clearTimeout(timer); timer = setTimeout(function () { instance.updateItemsArray(elem, "Packs"); }, 300); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".txtOrder_ItemPieceCount").keyup(function () { clearTimeout(timer); timer = setTimeout(function () { instance.updateItemsArray(elem, "Pieces"); }, 300); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".btnOrder_DiscType").unbind().change(function () { instance.updateItemsArray(elem, "DiscountType"); }); $("#" + instance.g_VisibleContainerId).find(elem).find("#Ord_txtdiscount").unbind().keyup(function () { clearTimeout(timer); timer = setTimeout(function () { instance.updateItemsArray(elem, "Discount"); }, 300); }); let DescriptionElem = $("#" + instance.g_VisibleContainerId).find(elem).find("#txt_Description"); if (instance.g_FromWidgetEditOrderItemId > 0) { DescriptionElem = $("#" + instance.g_VisibleContainerId).find("#txt_Description"); } $(DescriptionElem).unbind().keyup(function () { clearTimeout(timer); timer = setTimeout(function () { let ItemId = elem.find(".hfOrder_ItemId").val(); let CartItem = instance.g_CartItems_New.find(x => x.ItemId == ItemId && x.RefItemIds == ""); if (CartItem != undefined) { if (instance.g_FromWidgetEditOrderItemId > 0) { CartItem.Description = $("#txt_Description").val().toString(); } else { CartItem.Description = elem.find("#txt_Description").val().toString(); } } }, 300); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".delete").unbind().click(function () { let FromWidget = false; if (instance.g_CartItems_New.length <= 10) { $("#" + instance.g_VisibleContainerId).find(".CartItemFindTxt").addClass('hidden'); } let message = "Do you really want to delete this item"; if (instance.g_CartItems_New.length == 1) message = "Your cart is going to empty."; let itemid = $("#" + instance.g_VisibleContainerId).find(this).parents(".cartitem").find(".hfOrder_ItemId").val(); if (itemid == undefined) { itemid = $("#" + instance.g_VisibleContainerId).find(this).parents(".variant-addeditem").find(".hfOrder_ItemId").val(); } if (Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.length > 0) { FromWidget = true; } bootbox.confirm({ message: message, closeButton: false, buttons: { confirm: { label: 'Yes', className: 'btn-success' }, cancel: { label: 'No', className: 'btn-danger' } }, callback: function (result) { if (result) { instance.deleteCartItems(itemid, FromWidget); if (instance._order.g_IsPurchasePlanning) $("#" + instance.g_VisibleContainerId).find("#chk_PurPlanItem_" + itemid).prop("checked", false); } } }); }); $("#" + instance.g_VisibleContainerId).find(elem).find(".div_MultipleUOMs").change(function () { instance.updateItemsArray(elem, "UOMChange"); }); } readScanner(capturedValue, uniqueId) { if (capturedValue != "" && capturedValue != null && capturedValue != undefined) { $("#txt_SearchItem").val(capturedValue); } } refreshAllItems(FromWidget = false, evnt) { let instance = this; for (let i = 0; i < instance.g_LoadedItems.length; i++) { let Itm = instance.g_LoadedItems[i]; let elem = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + Itm.ItemId); if (elem != undefined && elem.length > 0) { instance.updateItemsArray(elem, "RefreshAllItems_" + evnt, FromWidget); } } } bindAllItemsQty(FromWidget = false, evnt) { let instance = this; for (let i = 0; i < instance.g_LoadedItems.length; i++) { let Itm = instance.g_LoadedItems[i]; let elem = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + Itm.ItemId); if (elem != undefined && elem.length > 0) { let CartIndex = instance.g_CartItems_New.findIndex(x => x.ItemId == Itm.ItemId); if (CartIndex != -1) { let inventoryApplyType = instance._order.g_InventoryApplyType; if (inventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { elem.find("#txt_Cartons").val(instance.g_CartItems_New[CartIndex].Quantity); elem.find("#txt_Pieces").val(0); } else if (inventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) { elem.find("#txt_Cartons").val(instance.g_CartItems_New[CartIndex].Packs); elem.find("#txt_Pieces").val(instance.g_CartItems_New[CartIndex].Pieces); } else if (inventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) { elem.find("#txt_Cartons").val(instance.g_CartItems_New[CartIndex].Packs); elem.find("#txt_Pieces").val(instance.g_CartItems_New[CartIndex].Pieces); } instance.updateItemsArray(elem, "RefreshAllItems_" + evnt, FromWidget, 0, instance.g_CartItems_New[CartIndex].Pieces); } else { instance.updateItemsArray(elem, "RefreshAllItems_" + evnt, FromWidget); } } } } showBOMItems(ItemId, ItemName, element) { Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["apps/transact/components/orders/itembomselection.js"], function () { Unibase.Platform.Helpers.NavigationHelper.Instance().popup(0, "", Bizgaze.Apps.Transact.Components.Orders.ItemBOMSelection.Instance(), function () { Bizgaze.Apps.Transact.Components.Orders.ItemBOMSelection.Instance().LoadBOMItems(ItemId, ItemName); }, Unibase.Platform.Helpers.Size.Large); }); } itemSettings(FromWidget = false) { let instance = this; let inventoryHtml = `

    `; if (instance._order.g_InventoryApplyType != Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) { inventoryHtml += `
    `; } inventoryHtml += `
    Item Details
    Cartons
    `; $("#" + instance.g_VisibleContainerId).find(".InventorySettings").html(inventoryHtml); $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html('