123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659 |
- 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 AddOrderItems extends Unibase.Platform.Core.BaseComponent {
- constructor() {
- super(...arguments);
- this._order = Bizgaze.Apps.Transact.Controls.Order.Instance();
- this.g_ContactId = 0;
- this.g_CountryId = 0;
- this.g_LobId = 0;
- this.g_Tags = "";
- this.g_PageIndex = 0;
- this.g_BranchId = 0;
- this.g_BillingAddressId = 0;
- this.g_ShippingAddressId = 0;
- this.g_ShipFromAddressId = 0;
- this.g_BillFromAddressId = 0;
- this.g_Edit_OrderItemId = 0;
- this.g_Edit_OrderItemData = [];
- this.g_RefStatusId = 0;
- this.g_FocItems = [];
- this.g_VisibleContainerId = "";
- }
- init(formpropertyid, prop, callback) {
- let instance = this;
- instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId);
- instance.loadPropertySettings(prop.PropertySettings, prop.FormPropertyId);
- }
- loadControl(containerid, prop) {
- let instance = this;
- instance.g_VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
- let html = '<div class="col-sm-12 ItemsDiv">' +
- '<input type = "hidden" id = "hdn_customcontrol" class="value-control" value = "Bizgaze.Apps.Transact.Controls.AddOrderItems.Instance().getOrderItems();"' +
- '<div class="floating-label-form-group div_SearchItem">' +
- '<label for="lbl" id="lbl_ItemId" style="color:grey">Item Name</label>' +
- '<select id="txtAutoComplete_ItemId" class="form-control text-control txtAutoComplete_ItemId">Select</select>' +
- '<input type="hidden" id="hfAutoComplete_ItemId" class="form-control value-control" data-isdynamic="true"/>' +
- '</div>' +
- '</div>' +
- '<br/><div class="row" id="div_chkpieces"><div class="col-sm-3 hidden divselectall"><div class="custom-control custom-checkbox divselectall checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_AllItems"><label class="custom-control-label" for="chk_AllItems">Select All</label></div></div><div class="col-sm-4 div_chk_Packs hidden"><div class="custom-control custom-checkbox divEnablePacks checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_Packs"><label class="custom-control-label" for="chk_Packs">Enable Packs</label></div></div><div class="col-sm-4 div_chk_Pieces hidden"><div class="custom-control custom-checkbox divEnablePieces checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_Pieces"><label class="custom-control-label" for="chk_Pieces">Enable Pieces</label></div></div><div class="col-sm-4 hidden div_chk_CompositePrice"><div class="custom-control custom-checkbox checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_CompositePrice"><label class="custom-control-label" for="chk_CompositePrice">Enable Composite Price</label></div></div><div class="col-sm-4 hidden div_chk_PiecePrice"><div class="custom-control custom-checkbox checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_PiecePrice"><label class="custom-control-label" for="chk_PiecePrice">Enable Piece Price</label></div></div></div><br />';
- html += `<div class="row mt-20 div_chk_Qty" id="div_chk_Qty">
- <div class="col-sm-12">
- <div class="custom-control custom-checkbox divEnableQty checkbox-primary col-sm-3">
- <input type="checkbox" class="custom-control-input" id="chk_Qty">
- <label class="custom-control-label" for="chk_Qty"> Quantity </label>
- </div>
- </div>
- </div>`;
- html += '<div class="d-none d-md-block"><div class="row div_titledetails"><div class="col-sm-7 pl-80">Item Details</div><div class="col-sm-5 Inventory_Title text-center"><span id="spn_InventoryTitle" class="col-sm-5 ml-35">Quantity</span><span id="spn_picesTitle" class="col-sm-5 pull-right hidden"> Pieces</span></div></div></div><div class="mt-2" id="div_ItemList"></div>';
- $("#" + containerid).html(html);
- $("#" + containerid).find("#div_chkpieces").addClass("hidden");
- let jsFiles = ["apps/transact/enums/enum.js", "apps/transact/managers/orders/ordermanager.js", "apps/transact/controls/pricelist/managers/pricelistmanager.js", "apps/transact/controls/orders/order.component.js", "apps/transact/controls/orders/orderitems.component.js", "libs/jquery/pagination/jquery.pagination.js", "apps/transact/managers/offers/offermanager.js", "apps/transact/components/orders/orderfilter.js", "apps/transact/components/invoices/itemofferselection.js", "platform/core/helpers/numberhelper/numberhelper.js", "apps/transact/components/invoices/itemofferselection.js", "apps/transact/controls/invoices/invoiceitem.component.js", "apps/paybacks/managers/schememanager.js"];
- instance.fileCacheHelper.loadJsFiles(jsFiles, function () {
- instance._order.g_VisibleContainerId = instance.g_VisibleContainerId;
- let orderItemId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderitemid").val());
- instance.setVariables();
- instance._order.checkPermissions();
- instance._order.getInventoryApplyType(instance.g_LobId, instance.g_BillingAddressId, instance.g_BranchId);
- instance._order.getOrderSettings(instance.g_LobId, instance.g_BillingAddressId, instance.g_BranchId);
- instance._orderItems.g_VisibleContainerId = instance.g_VisibleContainerId;
- instance._orderItems.itemSettings(true);
- if (orderItemId == 0) {
- instance.itemsAutoComplete();
- $("#" + instance.g_VisibleContainerId).find(".div_titledetails").addClass("hidden");
- }
- instance.searchItemDesign();
- let orgId = instance._order.g_OrganizationId;
- instance._order.getPriceCodeDetails(orgId, instance._order.g_OrgContactId, instance.g_LobId);
- instance.itemChangeEvent();
- if (orderItemId != 0) {
- instance.edit(orderItemId);
- }
- });
- }
- loadControlSettings(controlsettingjson, formpropertyid) {
- return null;
- }
- loadPropertySettings(propertysettings, formpropertyid) {
- return null;
- }
- bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
- return null;
- }
- setVariables() {
- var instance = this;
- instance._orderItems = Bizgaze.Apps.Transact.Controls.OrderItems.Instance();
- instance._order._orderItems = Bizgaze.Apps.Transact.Controls.OrderItems.Instance();
- instance._orderItems.g_CartItems_New = [];
- instance._orderItems.g_SelectedItems = [];
- instance._orderItems.g_LoadedItems = [];
- instance._orderItems.g_ItemsUnitPrice_New = [];
- instance._orderItems.g_AppliedTaxGroups = [];
- instance._orderItems.g_ValidFocItems = [];
- instance.g_Edit_OrderItemId = 0;
- instance._orderItems.g_IsEnablePieces = false;
- instance._orderItems.g_IsEnablePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePrice = false;
- instance._orderItems.g_IsEnableCompositePiecePrice = false;
- instance._order.g_IsSC_to_PC = false;
- instance.g_FocItems = [];
- let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
- let InputParameters = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters;
- instance.g_LobId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_lobid").Value);
- instance.g_ShipFromAddressId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_shipfromaddressid").Value);
- instance.g_ShippingAddressId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_shippingaddressid").Value);
- instance._order.g_OrganizationId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_organizationid").Value);
- instance._order.g_OrgContactId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orgcontactid").Value);
- instance.g_BillingAddressId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_billingaddressid").Value);
- instance._order.g_OrderTypeId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
- instance._order.g_OrderType = Bizgaze.Apps.Transact.Enums.OrderType[instance._order.g_OrderTypeId];
- instance._order.g_OrderId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
- instance.g_BranchId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_branchid").Value);
- var OrderDate = InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderdate").Value.toString();
- instance._orderItems.g_OfferApplyDate = $.datepicker.parseDate('dd/mm/yy', OrderDate);
- instance._orderItems.g_FromWidget = true;
- instance._orderItems.g_FromWidgetEditOrderItemId = 0;
- Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderDetails(instance._order.g_OrderId).then(function (ord_res) {
- if (ord_res.result != null) {
- instance._order.g_IsPointsOrder = ord_res.result.IsPointsOrder;
- if (instance._order.g_IsPointsOrder) {
- Bizgaze.Apps.Paybacks.Managers.SchemeManager.Instance().getloyaltypointsbycontactid(instance._order.g_OrganizationId).then(function (loy_res) {
- if (loy_res.result != null) {
- instance._order.g_LoyaltyPoints = loy_res.result.Points;
- }
- });
- }
- let UserId = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().userId;
- Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getEmployeeLeverage(UserId, instance.g_LobId).then(function (emplev_res) {
- if (emplev_res.result != null) {
- instance._order.g_LeveragePercent = emplev_res.result.LeveragePercent;
- instance._order.g_IsLeverageApplied = true;
- }
- instance.g_BranchId = ord_res.result.BranchId;
- if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
- instance._orderItems.g_WarehouseId = instance.g_ShipFromAddressId;
- }
- else if (instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance._order.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
- instance._orderItems.g_WarehouseId = instance.g_ShippingAddressId;
- }
- if (instance._orderItems.g_WarehouseId == "null" || instance._orderItems.g_WarehouseId == null) {
- instance._orderItems.g_WarehouseId = Number(instance.g_BranchId);
- }
- });
- }
- });
- }
- searchItemDesign() {
- let instance = this;
- $("#" + instance.g_VisibleContainerId).find(".section_Item").after('<input type="hidden" id="hfInventoryApplyType" value="1" /> <input type="hidden" id="hfOrder_PriceCodeId" value="0" /><div class="hidden" id="div_ItemList"><ul class="variant-list list-group card" style="margin:0px -21px"><li class="row card-body"><div class="col-sm-12"><div class="row" id="div_chkpieces"><div class="col-sm-4 div_chk_Packs hidden"><div class="custom-control custom-checkbox divEnablePacks checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_Packs"><label class="custom-control-label" for="chk_Packs">Enable Packs</label></div></div><div class="col-sm-4 hidden"><div class="custom-control custom-checkbox divEnablePieces hidden checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_Pieces"><label class="custom-control-label" for="chk_Pieces">Enable Pieces</label></div></div><div class="col-sm-4 hidden"><div class="custom-control custom-checkbox checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_CompositePrice"><label class="custom-control-label" for="chk_CompositePrice">Enable Composite Price</label></div></div><div class="col-sm-4 hidden"><div class="custom-control custom-checkbox checkbox-primary"><input type="checkbox" class="custom-control-input" id="chk_PiecePrice"><label class="custom-control-label" for="chk_PiecePrice">Enable Piece Price</label></div></div></div></div></li><li class="variant-item hidden"></li></ul></div>');
- }
- getTags() {
- return __awaiter(this, void 0, void 0, function* () {
- let instance = this;
- let TagGroupId = Bizgaze.Apps.Transact.Controls.Order.Instance().g_TagGroupId;
- let OrganizationId = Bizgaze.Apps.Transact.Controls.Order.Instance().g_OrganizationId;
- Unibase.Platform.Forms.Managers.TagManager.Instance().GetTagsByRefId(OrganizationId, TagGroupId).then(function (response) {
- let data = response.result;
- let options = '';
- let tags = '';
- for (let i = 0; i < data.length; i++) {
- if (data[i] != undefined) {
- options += data[i].TagId + "|";
- }
- }
- if (options != '') {
- options = options.replace(/\|$/, '');
- tags = options;
- }
- if (tags != '') {
- tags = tags.replace(/\:$/, '');
- }
- instance.g_Tags = tags;
- });
- });
- }
- itemsAutoComplete() {
- return __awaiter(this, void 0, void 0, function* () {
- var instance = this;
- yield instance.getTags().then(function () {
- let userinfo = Unibase.Platform.Membership.Infos.Identity.getCurrentUser();
- let sessionid = userinfo.sessionId;
- let postData = null;
- $("#" + instance.g_VisibleContainerId).find("#txtAutoComplete_ItemId").select2({
- placeholder: "Select",
- tags: false,
- allowClear: true,
- theme: "default select2ErrorClass",
- data: [],
- ajax: {
- url: function (request) {
- let reqUrl = _appsettings.server_url() + "/apis/v4/bizgaze/transact/items/itemsautocompletefororder";
- return reqUrl;
- },
- type: "POST",
- contentType: 'application/json',
- dataType: 'json',
- data: function (params) {
- let Term = params.term;
- sessionid = sessionid.replace('#', '');
- postData = {
- PriceCodeId: Number(instance._order.g_PriceCodeId),
- ContactId: instance.g_ContactId,
- ShippingAddressId: Number(instance.g_ShippingAddressId),
- BranchId: Number(instance.g_BranchId),
- WareHouseId: Number(instance._orderItems.g_WarehouseId),
- LobId: Number(instance.g_LobId),
- OrderType: instance._order.g_OrderTypeId,
- OfferOnly: false,
- IsExcise: false,
- SearchTerm: Term,
- Page: 0,
- IsCompositePrice: false,
- Rows: 10,
- ItemId: "0",
- CountryId: instance.g_CountryId,
- ItemGroupId: 0,
- Tags: instance.g_Tags,
- authToken: sessionid,
- term: Term,
- IsPoints: instance._order.g_IsPointsOrder
- };
- return JSON.stringify(postData);
- },
- beforeSend: function (xhr) {
- if (userinfo !== undefined && userinfo !== null) {
- xhr.setRequestHeader("Authorization", "Basic " + userinfo.sessionId);
- xhr.setRequestHeader('geoposition', userinfo.latd + ':' + userinfo.lgId);
- }
- },
- processResults: function (data) {
- return {
- results: jQuery.map(JSON.parse(data.result), function (item) {
- return {
- id: item.Value,
- text: item.SelectText,
- addlInfo: item.addlData
- };
- })
- };
- },
- },
- });
- });
- });
- }
- itemChangeEvent() {
- var instance = this;
- $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_ItemId").change(function () {
- $("#" + instance.g_VisibleContainerId).find("#div_ItemList").removeClass('hidden');
- $("#" + instance.g_VisibleContainerId).find(".div_titledetails").removeClass('hidden');
- let SelectedItemId = $("#" + instance.g_VisibleContainerId).find(this).val();
- let ItemFound = false;
- const ItemIndex = instance._orderItems.g_CartItems_New.findIndex(x => x.ItemId == SelectedItemId);
- if (ItemIndex != -1) {
- ItemFound = true;
- }
- if (!ItemFound) {
- instance.loadItems($("#" + instance.g_VisibleContainerId).find("#bulk_txt_SearchItem").val(), SelectedItemId, null);
- }
- $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_ItemId").text('');
- });
- }
- loadItems(searchtext, ItemId, OrderItems_res, OrderItemsEdit = false) {
- let instance = this;
- if (instance._orderItems.g_CartItems_New.length == 0) {
- instance._order.getInventoryApplyType(instance.g_LobId, instance.g_BillingAddressId, instance.g_BranchId, true);
- instance._order.getOrderSettings(instance.g_LobId, instance.g_BillingAddressId, instance.g_BranchId);
- }
- if (instance.g_ContactId == 0) {
- instance.g_ContactId = instance._order.g_OrganizationId;
- }
- if (ItemId == undefined || ItemId == "")
- ItemId = "undefined";
- if (searchtext == undefined || searchtext == "")
- searchtext = "null";
- let varianturl;
- instance.fileCacheHelper.loadJsFile("apps/transact/managers/inventory/itemmanager.js", function () {
- let postdata = {
- priceCodeId: Number(instance._order.g_PriceCodeId),
- contactId: instance.g_ContactId,
- ShippingAddressId: Number(instance.g_ShippingAddressId),
- BranchId: Number(instance.g_BranchId),
- WareHouseId: Number(instance._orderItems.g_WarehouseId),
- LobId: Number(instance.g_LobId),
- orderType: Bizgaze.Apps.Transact.Controls.Order.Instance().g_OrderTypeId,
- offerOnly: false,
- isExcise: false,
- query: searchtext,
- page: instance.g_PageIndex,
- IsCompositePrice: instance._orderItems.g_IsEnableCompositePrice,
- rows: 10,
- ItemId: ItemId.toString(),
- IsPoints: instance._order.g_IsPointsOrder,
- };
- varianturl = Bizgaze.Apps.Transact.Managers.ItemManager.Instance().getItemsForOrder(postdata);
- varianturl.then(function (response) {
- if (response.result.length > 0) {
- response.result.forEach(x => {
- let LoadedItem_Index = instance._orderItems.g_LoadedItems.findIndex(z => z.ItemId == x.ItemId);
- if (LoadedItem_Index == -1) {
- instance._orderItems.g_LoadedItems.push(x);
- }
- else {
- instance._orderItems.g_LoadedItems[LoadedItem_Index].TaxPercentList = x.TaxPercentList;
- }
- });
- instance.bindItemList(OrderItems_res, ItemId);
- $("#" + instance.g_VisibleContainerId).find('#lblItemTotalRecords').text(response.result.length);
- if (instance._orderItems.g_CartItems_New.length > 10) {
- let elem = $("#" + instance.g_VisibleContainerId).find('#ItemsListPagination');
- elem.pagination(response.result.length, 10, {
- items_per_page: 10,
- callback: function (page, component) {
- instance.g_PageIndex = page;
- instance.loadItems(searchtext, response.result.ItemId, response.result);
- }, current_page: instance.g_PageIndex
- });
- }
- }
- else
- $("#" + instance.g_VisibleContainerId).find("#div_ItemList").html('<ul class="variant-list list-group" style="margin:0px -21px"><li class="variant-item"><div class="text-center">Items not found.</div></li></ul>');
- });
- });
- }
- bindItemList(OrderItems_res, ItemId) {
- let instance = this;
- $("#" + instance.g_VisibleContainerId).find(".orderItemspage").removeClass("hidden");
- $("#" + instance.g_VisibleContainerId).find("#div_chkpieces").removeClass("hidden");
- $("#" + instance.g_VisibleContainerId).find("#div_ItemList").append('<ul class="variant-list list-group" style="margin:0px -21px"><li class="variant-item hidden"></li>');
- if (OrderItems_res != null) {
- if (ItemId == "" || ItemId == "undefined" || ItemId == null) {
- ItemId = OrderItems_res.ItemId;
- }
- instance._order.setInventorySettings(instance._order.g_InventoryApplyType, false, true);
- if (OrderItems_res.Pieces > 0 && instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) {
- instance._orderItems.g_IsEnablePieces = true;
- $("#" + instance.g_VisibleContainerId).find("#chk_Pieces").prop("checked", true);
- $("#" + instance.g_VisibleContainerId).find("#chk_Pieces").prop("disabled", true);
- }
- if (OrderItems_res.Packs > 0 && instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces) {
- instance._orderItems.g_IsEnablePacks = true;
- $("#" + instance.g_VisibleContainerId).find("#chk_Packs").prop("checked", true);
- $("#" + instance.g_VisibleContainerId).find("#chk_Packs").prop("disabled", true);
- }
- }
- let SelectedItem = instance._orderItems.g_LoadedItems.find(x => x.ItemId == ItemId);
- let html = instance._orderItems.getItemDesign(SelectedItem, true);
- $("#" + instance.g_VisibleContainerId).find(".variant-item:last").after(html);
- let elem = $("#" + instance.g_VisibleContainerId).find(".variant-item:last");
- if (instance.g_Edit_OrderItemId != 0) {
- instance.editOrderItem(OrderItems_res);
- instance._orderItems.checkOffers(true, "FromWidget");
- $("#" + instance.g_VisibleContainerId).find(".defaultSelectedCartons").addClass("floating-label-form-group-with-value");
- }
- else {
- instance._orderItems.allItemEvents(elem);
- }
- }
- edit(orderItemId) {
- var instance = this;
- instance.g_Edit_OrderItemId = orderItemId;
- instance._orderItems.g_FromWidgetEditOrderItemId = orderItemId;
- if (instance.g_Edit_OrderItemId > 0) {
- $(".section_Items").after(`<div class="card"><div class="card-header"> Description </div> <div class="col-sm-12 ma-10 mt-20 mb-50"><div class="input-group descriptionFloatLabels"><textarea id="txt_Description" class="type-control value-control floating-label-control" rows="5" style="width:100%;" placeholder="Enter Description" data-placeholder="Enter Description" data-label="Enter Description" data-regularexp="" data-validatemsg=""></textarea></div></div> </div>`);
- }
- $("#" + instance.g_VisibleContainerId).find(".ItemsDiv").addClass("hidden");
- instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
- Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderItemsDetails(orderItemId).then(function (response) {
- let data = response.result;
- instance.g_Edit_OrderItemData = data;
- instance._order.g_IsTaxInclusive = data.IsTaxInclusive;
- if (response.result.FocItems != null && response.result.FocItems != "") {
- let FocItems = response.result.FocItems.split(",");
- for (let f = 0; f < FocItems.length; f++) {
- let FocInfo = FocItems[f].split(":");
- let OrderItemId = Number(FocInfo[0]);
- let ItemId = Number(FocInfo[1]);
- instance.g_FocItems.push({ OrderItemId: OrderItemId, ItemId: ItemId });
- instance._orderItems.g_ValidFocItems.push({ ItemId: ItemId, RefItemIds: data.ItemId });
- }
- }
- if (data.PriceTypeId == Bizgaze.Apps.Transact.Enums.PriceType.PiecePrice) {
- instance._orderItems.g_IsEnablePiecePrice = true;
- instance._orderItems.g_IsEnableCompositePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePrice = false;
- }
- else if (data.PriceTypeId == Bizgaze.Apps.Transact.Enums.PriceType.CompositePrice) {
- instance._orderItems.g_IsEnablePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePrice = true;
- }
- else if (data.PriceTypeId == Bizgaze.Apps.Transact.Enums.PriceType.Both) {
- instance._orderItems.g_IsEnablePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePiecePrice = true;
- instance._orderItems.g_IsEnableCompositePrice = false;
- }
- else {
- instance._orderItems.g_IsEnablePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePiecePrice = false;
- instance._orderItems.g_IsEnableCompositePrice = false;
- }
- instance.loadItems(null, data.ItemId, data, true);
- });
- });
- }
- editOrderItem(OrderItems_res) {
- let instance = this;
- let data = OrderItems_res;
- let LoadedItem = instance._orderItems.g_LoadedItems.find(x => x.ItemId == data.ItemId);
- LoadedItem.UnitPrice = data.UnitPrice;
- let Amount = 0, UnitPrice = data.UnitPrice, BaseQty = 0, DiscountAmount = 0, AfterDiscountValue = 0, TaxRateAmount = 0, IsTaxError = false, optoutAmount = 0, TaxAmount = 0;
- let DiscountType = data.DiscountPercent != 0 ? 1 : 2;
- let elem = $("#" + instance.g_VisibleContainerId).find(".variant-addeditem-" + data.ItemId);
- if (DiscountType == 1) {
- DiscountAmount = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) * Number(LoadedItem.DiscountPercent / 100);
- AfterDiscountValue = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) - Number(DiscountAmount);
- }
- else if (DiscountType == 2) {
- DiscountAmount = LoadedItem.DiscountValue;
- AfterDiscountValue = Number($("#" + instance.g_VisibleContainerId).find(elem).find("#txt_editItemPrice").val()) - LoadedItem.DiscountValue;
- }
- let Items_up = instance._orderItems.g_ItemsUnitPrice_New.find(x => x.ItemId == data.ItemId);
- Items_up.UnitPrice = UnitPrice;
- if (Items_up.length == 0) {
- instance._orderItems.g_ItemsUnitPrice_New.push({
- ItemId: data.ItemId,
- UnitPrice: UnitPrice,
- TaxRateAmount: 0
- });
- }
- if (instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) {
- BaseQty = Number(data.Quantity);
- }
- else {
- if (instance._orderItems.g_IsEnablePiecePrice) {
- BaseQty = Number(LoadedItem.PackCount) * Number(data.Packs);
- }
- else {
- BaseQty = Number(LoadedItem.PackCount) * Number(LoadedItem.PackSize) * Number(data.Packs) + (data.Pieces * LoadedItem.PackSize);
- }
- }
- if (instance._orderItems.g_IsEnableCompositePiecePrice) {
- Amount = (UnitPrice * Number(BaseQty)) + Number(LoadedItem.TaxRate);
- if (Number(BaseQty) == 0)
- Amount = 0;
- UnitPrice = LoadedItem.CompositePiecePrice;
- $("#" + instance.g_VisibleContainerId).find("#chk_PiecePrice").prop("checked", true);
- $("#" + instance.g_VisibleContainerId).find("#chk_CompositePrice").prop("checked", true);
- }
- else if (instance._orderItems.g_IsEnableCompositePrice) {
- let amnt = Number(UnitPrice) * Number(LoadedItem.TaxPercentage) / 100;
- TaxRateAmount = Number(UnitPrice) + Number(amnt);
- Amount = Number(BaseQty) * TaxRateAmount;
- UnitPrice = LoadedItem.CompositePrice;
- $("#" + instance.g_VisibleContainerId).find("#chk_PiecePrice").prop("checked", false);
- $("#" + instance.g_VisibleContainerId).find("#chk_CompositePrice").prop("checked", true);
- }
- else if (instance._orderItems.g_IsEnablePiecePrice) {
- Amount = Number(BaseQty) * UnitPrice;
- UnitPrice = LoadedItem.PiecePrice;
- $("#" + instance.g_VisibleContainerId).find("#chk_PiecePrice").prop("checked", true);
- $("#" + instance.g_VisibleContainerId).find("#chk_CompositePrice").prop("checked", false);
- }
- else {
- Amount = Number(BaseQty) * UnitPrice;
- }
- Items_up.TaxRateAmount = TaxRateAmount;
- let AssessableAmount = Number(Amount);
- let DiscAmount = Number((Amount * data.DiscountPercent) / 100) + (Number(data.DiscountValue) * Number(BaseQty));
- let discAmt = DiscAmount + Number(optoutAmount);
- AssessableAmount = Number(AssessableAmount) - Number(discAmt);
- let AmountWithDiscount = Number(Amount) - Number(DiscAmount);
- let StrTaxPercents = "";
- if (instance._order.g_IsCalculateTax) {
- if (LoadedItem.TaxGroupId == 0) {
- IsTaxError = true;
- }
- else {
- for (let p = 0; p < LoadedItem.TaxPercentList.length; p++) {
- let percen = LoadedItem.TaxPercentList[p];
- let tax = AssessableAmount * percen.Percentage / 100;
- TaxAmount += tax;
- }
- StrTaxPercents = LoadedItem.strTaxPercents;
- instance._orderItems.getPriceTypeValues(data.ItemId);
- if (instance._orderItems.g_IsEnablePiecePrice) {
- UnitPrice = LoadedItem.PiecePrice;
- }
- if (instance._orderItems.g_IsEnableCompositePrice) {
- UnitPrice = LoadedItem.CompositePrice;
- }
- if (instance._orderItems.g_IsEnableCompositePiecePrice) {
- UnitPrice = LoadedItem.CompositePiecePrice;
- }
- }
- }
- let Quantity = 0;
- if (instance._order.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) {
- Quantity = data.Quantity;
- data.Packs = Quantity;
- }
- else {
- Quantity = ((LoadedItem.PackCount * LoadedItem.PackSize) * data.Packs) + (data.Pieces * LoadedItem.PackSize);
- }
- let IsPacksFocus = false, IsPiecesFocus = false;
- let FocusTxt = instance._orderItems.getDefaultFocusbyInventory(instance._order.g_InventoryApplyType, false);
- if (FocusTxt == "Packs") {
- IsPacksFocus = true;
- }
- else {
- IsPiecesFocus = true;
- }
- if (data.Packs == 0 && data.Pieces > 0) {
- IsPacksFocus = false;
- IsPiecesFocus = true;
- }
- let ItemIndex = instance._orderItems.g_CartItems_New.length + 1;
- instance._orderItems.g_CartItems_New.push({
- OrderItemId: data.OrderItemId,
- ItemIndex: ItemIndex,
- ItemId: data.ItemId,
- ParentItemId: 0,
- ItemName: LoadedItem.ItemName,
- Packs: data.Packs,
- Pieces: data.Pieces,
- PriceListId: data.PriceListId,
- PriceListName: data.PriceListName,
- UnitPrice: UnitPrice,
- UnitPriceWithOutTax: data.UnitPrice,
- ExpectedPrice: data.UnitPrice,
- ActualPrice: data.UnitPrice,
- PackCount: LoadedItem.PackCount,
- PackSize: LoadedItem.PackSize,
- UnitName: LoadedItem.UnitName,
- Quantity: Quantity,
- SKU: LoadedItem.SKU,
- PartNo: LoadedItem.PartNo,
- Amount: Amount,
- AmountWithDiscount: AmountWithDiscount,
- DiscountPercent: data.DiscountPercent,
- DiscountValue: data.DiscountValue,
- DiscountType: DiscountType,
- DiscountAmount: DiscountAmount,
- ItemValueAfterDiscount: AfterDiscountValue,
- StrTaxPercents: StrTaxPercents,
- AvailableQuantity: LoadedItem.AvailableQuantity,
- AvailablePacks: LoadedItem.AvailablePacks,
- AvailablePieces: LoadedItem.AvailablePieces,
- TotalAvailablePieces: LoadedItem.TotalAvailablePieces,
- ExchangeDC: data.ExchangeDC,
- IsAfterTax: data.IsAfterTax,
- BaseQty: data.Quantity,
- IsFocItem: data.IsFoc,
- optoutAmount: optoutAmount,
- TaxGroupId: LoadedItem.TaxGroupId,
- TaxGroupName: LoadedItem.TaxGroupName,
- TaxAmount: TaxAmount,
- TaxRateAmount: LoadedItem.TaxRateAmount,
- TaxRate: LoadedItem.TaxRate,
- TaxPercentage: LoadedItem.TaxPercentage,
- IsOfferAvailable: LoadedItem.IsOfferAvailable,
- Description: data.Description == undefined ? "" : data.Description,
- Discountable: LoadedItem.Discountable,
- PiecePrice: LoadedItem.PiecePrice,
- CompositePrice: LoadedItem.CompositePrice,
- CompositePiecePrice: LoadedItem.CompositePiecePrice,
- IsCheckPendingItems: true,
- IsError: false,
- ErrorMsg: "",
- ErrorClass: "text-danger",
- IsTaxError: IsTaxError,
- IsLeverageError: false,
- IsFocAdded: false,
- RefOrderItemId: 0,
- RefItemIds: "",
- RefItemSKUs: "",
- FocItemIds: "",
- DiscountGroupId: 0,
- IsOfferDiscountApplied: false,
- AppliedOfferVolume: 0,
- AppliedPlanVolumeId: 0,
- AppliedOfferId: 0,
- optoutOfferGroupId: 0,
- SuggestedPacks: 0,
- MinPacks: 0,
- AvgPacks: 0,
- InwardOrderPacks: 0,
- OutwardOrderPacks: 0,
- UOMs: LoadedItem.UOMs,
- IsManualUOM: LoadedItem.IsManualUOM,
- IsMultipleUOMs: LoadedItem.IsMultipleUOMs,
- UOMSchemaId: LoadedItem.UOMSchemaId,
- MultipleUOMs: LoadedItem.MultipleUOMs,
- SelectedUnitId: data.AlternateUnitId,
- SelectedUnitName: LoadedItem.UnitName,
- DefaultSize: data.DefaultSize,
- IsBoMAvailable: LoadedItem.IsBoMAvailable,
- IsSpecialPrice: LoadedItem.IsSpecialPrice,
- ConversionQuantity: data.ConversionQuantity,
- HSNId: data.HSNId,
- RowTotal: 0,
- RowDiscount: 0,
- TaxTotal: 0,
- IsPacksFocus: IsPacksFocus,
- IsPiecesFocus: IsPiecesFocus,
- CategoryName: ""
- });
- instance._orderItems.g_SelectedItems = [...instance._orderItems.g_CartItems_New];
- instance._orderItems.updateItemsDesign(elem, "FromWidget");
- instance._orderItems.updateItemsArray(elem, "FromWidget", true);
- }
- getOrderItems() {
- let instance = this;
- let ItemList = instance._orderItems.getOrderItems(instance._order.g_OrderId);
- if (instance._orderItems.g_CartItems_New.length == 0 && $("#" + instance.g_VisibleContainerId).find(".variant-addeditem").length
- == 0) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Item");
- return false;
- }
- let cartItem_WithZeroQuantity = instance._orderItems.g_CartItems_New.filter(x => x.Quantity == 0);
- let InventoryTitle = $("#" + instance.g_VisibleContainerId).find("#spn_InventoryTitle").text();
- if ($("#" + instance.g_VisibleContainerId).find(".variant-list").find(".list-group-item").length > instance._orderItems.g_CartItems_New.length) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select " + InventoryTitle);
- return false;
- }
- else if (cartItem_WithZeroQuantity.length > 0) {
- Unibase.Platform.Forms.Components.FormViewer.Instance().showError(InventoryTitle + " can't be zero");
- return false;
- }
- else {
- return ItemList;
- }
- }
- static Instance() {
- if (this.instance === undefined) {
- this.instance = new AddOrderItems();
- }
- return this.instance;
- }
- }
- Controls.AddOrderItems = AddOrderItems;
- })(Controls = Transact.Controls || (Transact.Controls = {}));
- })(Transact = Apps.Transact || (Apps.Transact = {}));
- })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
- })(Bizgaze || (Bizgaze = {}));
|