Built files from Bizgaze WebServer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

order.component.js 238KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896
  1. var Bizgaze;
  2. (function (Bizgaze) {
  3. let Apps;
  4. (function (Apps) {
  5. let Transact;
  6. (function (Transact) {
  7. let Controls;
  8. (function (Controls) {
  9. class Order extends Unibase.Platform.Core.BaseComponent {
  10. constructor() {
  11. super(...arguments);
  12. this.g_LoadOffersOnly = false;
  13. this.g_LoadEligibleItemsOnly = false;
  14. this.g_IsPurchasePlanning = false;
  15. this.g_OrderId = 0;
  16. this.g_OrderType = "";
  17. this.g_OrgContactId = 0;
  18. this.g_OrganizationId = 0;
  19. this.g_LobId = 0;
  20. this.g_PriceCodeId = 0;
  21. this.g_PriceCodeName = "";
  22. this.g_IsTaxInclusive = false;
  23. this.g_InventoryApplyType = 1;
  24. this.g_LobInventoryApplyType = 1;
  25. this.g_LeveragePercent = 0;
  26. this.g_IsLeverageApplied = false;
  27. this.g_IsApprovalRequired = false;
  28. this.g_OrderTypeId = 0;
  29. this.g_IsCalculateTax = true;
  30. this.g_CompositePriceType = 0;
  31. this.g_ExpandItemSettings = false;
  32. this.g_CountryId = 0;
  33. this.g_IsPointsOrder = false;
  34. this.g_LoyaltyPoints = 0;
  35. this.g_IsShowEnablePieceChkbox = 0;
  36. this.g_IsManageOfferDiscount = 0;
  37. this.g_IsShowAvailability = 0;
  38. this.g_IsChangePaymentMode = 0;
  39. this.g_IsShowExchangeDc = 0;
  40. this.g_IsChangePaymentTerm = 0;
  41. this.g_CanProcessOrder = 0;
  42. this.g_CreateDC = 0;
  43. this.g_CreateGRN = 0;
  44. this.g_CreateItem = 0;
  45. this.g_ShowPrice = 0;
  46. this.g_IncreaseQty = 0;
  47. this.g_IsAdmin = 1;
  48. this.g_CompanyId = 0;
  49. this.g_BranchId = 0;
  50. this.g_TagGroupId = 0;
  51. this.g_IsDealer = false;
  52. this.g_PendingItemsSortBy = 0;
  53. this.g_ShowSaveAsDraft = true;
  54. this.g_IsSeriesDisabled = true;
  55. this.g_ItemLoadTypes = [];
  56. this.g_IsSC_to_PC = false;
  57. this.g_IsFromPurchaseIndent = false;
  58. this.g_ShowCCHByDefault = true;
  59. this.g_IsShowCategoryButton = false;
  60. this.g_VisibleContainerId = "";
  61. this.g_CurrencyId = 0;
  62. this.g_ConversionRate = 1;
  63. this.g_FromCurrencyValue = 1;
  64. this.g_ToCurrencyValue = 1;
  65. this.g_FromCurrencyName = "";
  66. this.g_ToCurrencyName = "";
  67. }
  68. init(formpropertyid, prop, callback) {
  69. let instance = this;
  70. let jsFiles = ["platform/bundle/index.order.component.js"];
  71. instance.fileCacheHelper.loadJsFiles(jsFiles, function () {
  72. instance.fileCacheHelper.addCacheFiles(["apps/transact/infos/orders/orderitem.js", "apps/transact/controls/orders/orderitems.component.js", "apps/transact/components/orders/orderfilter.js", "platform/core/helpers/printhelper/printhelper.js", "apps/transact/components/invoices/itemofferselection.js", "apps/transact/controls/invoices/invoiceitem.component.js", "apps/transact/controls/orders/customercredithealth.component.js"]);
  73. let IsAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
  74. if (!IsAdmin) {
  75. instance.g_IsAdmin = 0;
  76. }
  77. else {
  78. instance.g_IsAdmin = 1;
  79. }
  80. instance.g_IsDealer = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isRestrictedUser;
  81. instance.loadControlSettings(prop.ControlJsonText, prop.FormPropertyId);
  82. instance.loadPropertySettings(prop.PropertySettings, prop.FormPropertyId);
  83. instance._orderItems = Bizgaze.Apps.Transact.Controls.OrderItems.Instance();
  84. });
  85. }
  86. loadControl(containerid, prop) {
  87. let instance = this;
  88. instance.g_ContainerId = containerid;
  89. instance.g_VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  90. }
  91. loadControlSettings(controlsettingjson, formpropertyid) {
  92. let instance = this;
  93. instance.g_OrderTypeId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_ordertypeid").val());
  94. instance.g_OrderType = Bizgaze.Apps.Transact.Enums.OrderType[instance.g_OrderTypeId];
  95. instance.g_IsPointsOrder = false;
  96. instance.g_IsTaxInclusive = false;
  97. let IsPointsOrder = $("#" + instance.g_VisibleContainerId).find(".hdn_ispointsorder").val();
  98. if (IsPointsOrder == "true") {
  99. instance.g_IsPointsOrder = true;
  100. }
  101. instance.g_IsPurchasePlanning = false;
  102. instance.g_ShowCCHByDefault = true;
  103. instance.g_IsShowCategoryButton = false;
  104. $(document).ready(function () {
  105. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  106. instance.resetAllVariables();
  107. $("#" + instance.g_VisibleContainerId).find(".section_ClaimDetails").addClass("section_OrderDetails").removeClass("section_ClaimDetails");
  108. $("#" + instance.g_VisibleContainerId).find(".section_LoyaltyDetails").addClass("section_OrderDetails").removeClass("section_LoyaltyDetails");
  109. $("#" + instance.g_VisibleContainerId).find(".Section").addClass("hidden");
  110. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").removeClass("hidden");
  111. }
  112. $("#" + instance.g_VisibleContainerId).find("#spn_TDSApplicable").text('TDS Applicable');
  113. $("#" + instance.g_VisibleContainerId).find("#ContinueShopping_Div").removeClass('hidden');
  114. $("#" + instance.g_VisibleContainerId).find('#bizgaze_body').on('keyup keypress', function (e) {
  115. let keyCode = e.keyCode || e.which;
  116. if (keyCode === 13) {
  117. e.preventDefault();
  118. return false;
  119. }
  120. });
  121. instance.checkDefaultCompany();
  122. $("#" + instance.g_VisibleContainerId).find(".txt_refno").attr("maxlength", 20);
  123. $("#" + instance.g_VisibleContainerId).find(".btn_Save_Form").addClass("hidden");
  124. let UserId = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().userId;
  125. if (instance.g_IsDealer && Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  126. Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getContactByUserId(UserId).then(function (response) {
  127. let contactId = response.result.OrganizationId;
  128. let organizationName = response.result.OrganizationName;
  129. let contact = new Option(organizationName, contactId.toString(), true);
  130. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").append(contact);
  131. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").val(contactId).trigger("change");
  132. $("#" + instance.g_VisibleContainerId).find("#orgContact_back").addClass("hidden");
  133. });
  134. }
  135. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  136. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orderdate").addClass("hidden");
  137. }
  138. $("#" + instance.g_VisibleContainerId).find(".div_refdate, #div_proposeddeliverydate").addClass('floating-label-form-group-with-value');
  139. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_advanceorderdate , .divCustomProperties_futureorderdate").addClass("hidden");
  140. $("#" + instance.g_VisibleContainerId).find("#chk_advanceorder").change(function () {
  141. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_advanceorderdate").toggleClass("hidden");
  142. $("#" + instance.g_VisibleContainerId).find(".date_advanceorderdate").val("");
  143. $("#" + instance.g_VisibleContainerId).find(".hfdate_advanceorderdate").val("");
  144. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_advanceorderdate").find(".floating-label-form-group").removeClass("floating-label-form-group-with-value");
  145. instance.setCurrentDate("date_advanceorderdate");
  146. });
  147. $("#" + instance.g_VisibleContainerId).find("#chk_futureorder").change(function () {
  148. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_futureorderdate").toggleClass("hidden");
  149. $("#" + instance.g_VisibleContainerId).find(".date_futureorderdate").val("");
  150. $("#" + instance.g_VisibleContainerId).find(".hfdate_futureorderdate").val("");
  151. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_futureorderdate").find(".floating-label-form-group").removeClass("floating-label-form-group-with-value");
  152. instance.setCurrentDate("date_futureorderdate");
  153. });
  154. if ($("#" + instance.g_VisibleContainerId).find(".date_expecteddeliverydate").length > 0) {
  155. if ($("#" + instance.g_VisibleContainerId).find(".date_orderdate").length > 0) {
  156. $("#" + instance.g_VisibleContainerId).find('.date_orderdate, .date_expecteddeliverydate').on('apply.daterangepicker', function () {
  157. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) != 0) {
  158. let OrderDate = $.datepicker.parseDate('dd/mm/yy', $("#" + instance.g_VisibleContainerId).find(".date_orderdate").val().toString());
  159. let ExpDeliveryDate = $.datepicker.parseDate('dd/mm/yy', $("#" + instance.g_VisibleContainerId).find(".date_expecteddeliverydate").val().toString());
  160. $("#" + instance.g_VisibleContainerId).find("#Bizgaze-messageInfo").empty();
  161. if (ExpDeliveryDate >= OrderDate) {
  162. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").addClass("hidden");
  163. instance._orderItems.enableSave();
  164. }
  165. else {
  166. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").removeClass("hidden");
  167. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Delivery Date must be greater than Order Date");
  168. instance._orderItems.disableSave();
  169. }
  170. }
  171. else {
  172. let nowDate = new Date();
  173. let date = nowDate.getDate() + '/' + (nowDate.getMonth() + 1) + '/' + nowDate.getFullYear();
  174. let OrderDate = $.datepicker.parseDate('dd/mm/yy', date.toString());
  175. let ExpDeliveryDate = $.datepicker.parseDate('dd/mm/yy', $("#" + instance.g_VisibleContainerId).find(".date_expecteddeliverydate").val().toString());
  176. $("#" + instance.g_VisibleContainerId).find("#Bizgaze-messageInfo").empty();
  177. if (ExpDeliveryDate >= OrderDate) {
  178. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").addClass("hidden");
  179. instance._orderItems.enableSave();
  180. }
  181. else {
  182. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").removeClass("hidden");
  183. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Delivery Date must be greater than Current Date");
  184. instance._orderItems.disableSave();
  185. }
  186. }
  187. });
  188. }
  189. }
  190. $("#" + instance.g_VisibleContainerId).find("#btn_CloseForm_" + $("#" + instance.g_VisibleContainerId).find("#hf_FormId").val()).after('<button type="button" id="btn_SaveAsDraft" class="btn btn-yellow btn_OrderSaveAsDraft hidden btn-sm mr-auto" style="" onclick="Bizgaze.Apps.Transact.Controls.Order.Instance().saveAsDraft();">Save as Draft</button>');
  191. $("#" + instance.g_VisibleContainerId).find("#btnDynamicSave").click(function () {
  192. $("#" + instance.g_VisibleContainerId).find(".hdn_stageid").val(0);
  193. });
  194. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) != 0) {
  195. instance.editForm();
  196. }
  197. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  198. $("#" + instance.g_VisibleContainerId).find("#btnSection_Apply").addClass("text-white");
  199. $("#" + instance.g_VisibleContainerId).find(".btnSection_GeneratePurchasePlan").addClass("hidden");
  200. $("#" + instance.g_VisibleContainerId).find("#divSectionProperties_MoreOptions").removeClass('mt-10').addClass("mt-30");
  201. let url = _appsettings.server_url() + '/apis/v4/bizgaze/crm/companies/getcompaniesAutoComplete';
  202. AutoCompleteHelper.getHelper().Create("#select2_CompanyId", "#hfAutoComplete_Company", url, null);
  203. let CompanyIds = "0";
  204. url = _appsettings.server_url() + '/apis/v4/bizgaze/crm/companies/getbranchesbycompaniesAutoComplete/companyids/' + CompanyIds;
  205. AutoCompleteHelper.getHelper().Create("#select2_BranchId", "#hfAutoComplete_Branch", url, null);
  206. $("#" + instance.g_VisibleContainerId).find("#select2_BranchId").val(null).trigger('change');
  207. $("#" + instance.g_VisibleContainerId).find("#select2_CompanyId").val(null).trigger('change');
  208. }
  209. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales && instance.g_IsPointsOrder) {
  210. instance.g_ItemLoadTypes = ["All Items", "Eligible Items"];
  211. }
  212. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase) {
  213. instance.g_ItemLoadTypes = ["All Items", "Offers", "Filter"];
  214. }
  215. $("#" + instance.g_VisibleContainerId).find("#div_TaxGroupId").addClass('hidden');
  216. $("#" + instance.g_VisibleContainerId).find(".hdn_expecteddeliverydate").val($("#" + instance.g_VisibleContainerId).find(".date_proposeddeliverydate").val());
  217. $("#" + instance.g_VisibleContainerId).find(".date_proposeddeliverydate").change(function () {
  218. $("#" + instance.g_VisibleContainerId).find(".hdn_expecteddeliverydate").val($("#" + instance.g_VisibleContainerId).find(".date_proposeddeliverydate").val());
  219. });
  220. $("#" + instance.g_VisibleContainerId).find("#chkSection_TDSApplicable").click(function () {
  221. if ($("#" + instance.g_VisibleContainerId).find("#chkSection_TDSApplicable").is(':checked')) {
  222. $("#" + instance.g_VisibleContainerId).find("#TDSAmount").removeClass('hidden');
  223. $("#" + instance.g_VisibleContainerId).find("#div_TaxGroupId").removeClass('hidden');
  224. }
  225. else {
  226. $("#" + instance.g_VisibleContainerId).find("#div_TaxGroupId").addClass('hidden');
  227. }
  228. });
  229. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0 && !instance.g_IsPurchasePlanning) {
  230. $("#" + instance.g_VisibleContainerId).find("#btn_Save").addClass('hidden');
  231. $("#" + instance.g_VisibleContainerId).find("#formFooter").append('<button type="button" id="btn_Checkout" style="cursor:pointer" class="btn btn-primary CheckOutButton hidden btn-sm" onclick="Bizgaze.Apps.Transact.Controls.Order.Instance().checkout();">Check Out</button>');
  232. }
  233. instance.companiesAutoComplete();
  234. let InputParameters = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters;
  235. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  236. let OrderType = InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid");
  237. let AppTitle = InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_apptitle");
  238. if (InputParameters.length > 0 && OrderType != undefined) {
  239. var OrderTypeId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  240. if (OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  241. var ClaimId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  242. var hdn_OrderId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val());
  243. if (ClaimId != undefined && hdn_OrderId == 0) {
  244. instance.g_IsSC_to_PC = true;
  245. instance.bindClaimDetails(ClaimId);
  246. }
  247. }
  248. }
  249. else if (InputParameters.length > 0 && AppTitle != undefined) {
  250. var AppName = InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_apptitle").Value;
  251. if (AppName == "purchaseindent") {
  252. instance.navigationHelper.showLoading();
  253. var PurchaseIndentId = Number(InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_purchaseindentid").Value);
  254. var hdn_OrderId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val());
  255. if (PurchaseIndentId != undefined && hdn_OrderId == 0) {
  256. instance.g_IsSC_to_PC = true;
  257. instance.g_IsFromPurchaseIndent = true;
  258. instance.bindPurchaseIndentDetails(PurchaseIndentId);
  259. instance.navigationHelper.hideLoading();
  260. }
  261. }
  262. }
  263. instance.autoCompleteEvents();
  264. instance.purchasePlanEvents();
  265. instance._orderItems.g_VisibleContainerId = instance.g_VisibleContainerId;
  266. instance._orderItems.itemSettingsEvents();
  267. instance.loadOrderFromEmployeeRoute();
  268. });
  269. }
  270. loadPropertySettings(propertysettings, formpropertyid) {
  271. let instance = this;
  272. }
  273. bindEditFormDetails(formpropertyid, propval, DocPropertyName) {
  274. return null;
  275. }
  276. checkDefaultCompany() {
  277. var instance = this;
  278. let companyId = 0;
  279. if (Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings != null) {
  280. let companySetting = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings.find(x => x.settingName == "companyid");
  281. if (companySetting != null && companySetting != undefined) {
  282. companyId = companySetting.settingValue;
  283. instance.g_BranchId = Number(Unibase.Platform.Membership.Infos.Identity.getCurrentUser().settings.find(x => x.settingName == "branchid").settingValue);
  284. }
  285. else {
  286. instance.defaultBranchError();
  287. }
  288. }
  289. else {
  290. instance.defaultBranchError();
  291. }
  292. if (companyId != 0) {
  293. instance.checkDefaultBranch_CompanyStatus(instance.g_BranchId, companyId);
  294. }
  295. }
  296. checkDefaultBranch_CompanyStatus(BranchId, companyId) {
  297. let instance = this;
  298. Bizgaze.Apps.CRM.Companies.Managers.CompanyManager.Instance().getBranch(BranchId).then(function (comp_res) {
  299. if (comp_res.result != null) {
  300. let branchStatusId = comp_res.result.StatusId;
  301. let companyStatusId = comp_res.result.CompanyStatusId;
  302. if (branchStatusId != 1 || companyStatusId != 1) {
  303. $("#" + instance.g_VisibleContainerId).find("#Bizgaze-messageInfo").empty();
  304. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").removeClass("hidden");
  305. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").attr("disabled", "disabled");
  306. $("#" + instance.g_VisibleContainerId).find(".btn_Save_Form").addClass("hidden");
  307. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Default Branch/Company is InActive");
  308. }
  309. else {
  310. let Parameters = [{ "ColumnName": "companyid", "Value": companyId, }];
  311. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) > 0) {
  312. let LobId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_lobid").Value);
  313. Parameters = [
  314. { "ColumnName": "companyid", "Value": companyId, },
  315. { "ColumnName": "lobid", "Value": LobId, },
  316. ];
  317. }
  318. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid"), Parameters);
  319. }
  320. }
  321. });
  322. }
  323. defaultBranchError() {
  324. let instance = this;
  325. $("#" + instance.g_VisibleContainerId).find("#Bizgaze-messageInfo").empty();
  326. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").removeClass("hidden");
  327. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").attr("disabled", "disabled");
  328. $("#" + instance.g_VisibleContainerId).find(".btn_Save_Form").addClass("hidden");
  329. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Configure Default Branch");
  330. return false;
  331. }
  332. changedOrganization() {
  333. let instance = this;
  334. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orgcontactid").removeClass("hidden");
  335. $("#" + instance.g_VisibleContainerId).find(".OrgContact_Details").remove();
  336. instance.prependCustomerLink();
  337. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").removeClass("hidden");
  338. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth, .section_SalesFrequency, .section_CustomerOfferSummary").find(".card-body").addClass("hidden");
  339. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth, .section_SalesFrequency, .section_CustomerOfferSummary").find(".card-body").addClass("hidden");
  340. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase) {
  341. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth").find(".card-header").html(`<a class="btn_CustomerCreditHealth_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span id="CH_Widget_Title" class="ml-10">Vendor Credit Health</span> <input type="hidden" id="CH_Widget_OrderType" value="` + instance.g_OrderTypeId + `"/> </a>`);
  342. $("#" + instance.g_VisibleContainerId).find(".section_SalesFrequency").find(".card-header").html(`<a class="btn_SalesFrequency_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span id="F_Widget_Title" class="ml-10">Purchase Frequency</span> <input type="hidden" id="F_Widget_OrderType" value="` + instance.g_OrderTypeId + `"/> </a>`);
  343. }
  344. else {
  345. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth").find(".card-header").html(`<a class="btn_CustomerCreditHealth_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span id="CH_Widget_Title" class="ml-10">Customer Credit Health</span> <input type="hidden" id="CH_Widget_OrderType" value="` + instance.g_OrderTypeId + `"/> </a>`);
  346. $("#" + instance.g_VisibleContainerId).find(".section_SalesFrequency").find(".card-header").html(`<a class="btn_SalesFrequency_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span id="F_Widget_Title" class="ml-10">Sales Frequency</span> <input type="hidden" id="F_Widget_OrderType" value="` + instance.g_OrderTypeId + `"/> </a>`);
  347. }
  348. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase) {
  349. $("#" + instance.g_VisibleContainerId).find(".section_CustomerOfferSummary").find(".card-header").first().html(`<a class="btn_CustomerOfferSummary_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span class="ml-10">Vendor Campaign Summary</span> </a> <div class="d-flex align-items-center card-action-wrap pull-right"> <span class="badge badge-light badge-pill badge-outline mr-10 span_ListOfferSummary_count">0</span> </div>`);
  350. }
  351. else {
  352. $("#" + instance.g_VisibleContainerId).find(".section_CustomerOfferSummary").find(".card-header").first().html(`<a class="btn_CustomerOfferSummary_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span class="ml-10">Customer Campaign Summary</span> </a> <div class="d-flex align-items-center card-action-wrap pull-right"> <span class="badge badge-light badge-pill badge-outline mr-10 span_ListOfferSummary_count">0</span> </div>`);
  353. }
  354. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").click(function () {
  355. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").find(".fa-angle-down").toggleClass("d-none");
  356. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").find(".fa-angle-right").toggleClass("d-none");
  357. if (!$("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").find(".fa-angle-down").hasClass("d-none")) {
  358. Bizgaze.Apps.Transact.Controls.CustomerCreditHealth.Instance().getCreditHealth(0, instance.g_OrganizationId, instance.g_OrderType);
  359. }
  360. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth").find(".card-body").toggleClass("hidden");
  361. });
  362. $("#" + instance.g_VisibleContainerId).find(".btn_SalesFrequency_angle").click(function () {
  363. $("#" + instance.g_VisibleContainerId).find(".btn_SalesFrequency_angle").find(".fa-angle-down").toggleClass("d-none");
  364. $("#" + instance.g_VisibleContainerId).find(".btn_SalesFrequency_angle").find(".fa-angle-right").toggleClass("d-none");
  365. if (!$("#" + instance.g_VisibleContainerId).find(".btn_SalesFrequency_angle").find(".fa-angle-down").hasClass("d-none")) {
  366. Bizgaze.Apps.Transact.Controls.SalesFrequency.Instance().getFrequency(instance.g_OrgContactId, instance.g_OrganizationId);
  367. }
  368. $("#" + instance.g_VisibleContainerId).find(".section_SalesFrequency").find(".card-body").toggleClass("hidden");
  369. });
  370. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerOfferSummary_angle").click(function () {
  371. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerOfferSummary_angle").find(".fa-angle-down").toggleClass("d-none");
  372. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerOfferSummary_angle").find(".fa-angle-right").toggleClass("d-none");
  373. if (!$("#" + instance.g_VisibleContainerId).find(".btn_CustomerOfferSummary_angle").find(".fa-angle-down").hasClass("d-none")) {
  374. instance.customerOfferSummary();
  375. }
  376. $("#" + instance.g_VisibleContainerId).find(".section_CustomerOfferSummary").find(".card-body").toggleClass("hidden");
  377. });
  378. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  379. $("#" + instance.g_VisibleContainerId).find(".section_CustomerOfferSummary").removeClass('hidden');
  380. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth").removeClass('hidden');
  381. $("#" + instance.g_VisibleContainerId).find(".section_SalesFrequency").removeClass('hidden');
  382. $("#" + instance.g_VisibleContainerId).find(".section_LoyaltyPoints").removeClass('hidden');
  383. }
  384. else {
  385. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").removeAttr("disabled");
  386. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").removeAttr("disabled");
  387. }
  388. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").removeClass("card");
  389. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").addClass('mt-10');
  390. $("#" + instance.g_VisibleContainerId).find(".section_Items").addClass('mt-10');
  391. if (!instance.g_IsSC_to_PC) {
  392. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").find(".card-body").addClass("hidden");
  393. instance.g_OrganizationId = Number($("#" + instance.g_VisibleContainerId).find('.txtAutoComplete_organizationid').val());
  394. $("#" + instance.g_VisibleContainerId).find(".CheckOutButton").removeClass('hidden');
  395. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) != 0) {
  396. instance.g_OrderId = Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val());
  397. instance.g_LobId = Number($("#" + instance.g_VisibleContainerId).find('.txtAutoComplete_lobid').val());
  398. instance.bindOrderDetails(instance.g_OrganizationId, instance.g_LobId);
  399. }
  400. else {
  401. instance.bindOrderDetails(instance.g_OrganizationId, 0);
  402. }
  403. }
  404. else {
  405. instance.changedOrganization_SC_PC();
  406. }
  407. if (instance.g_ShowCCHByDefault && instance.g_OrderId == 0 && (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase) && !instance.g_IsPointsOrder) {
  408. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").find(".fa-angle-down").removeClass("d-none");
  409. $("#" + instance.g_VisibleContainerId).find(".btn_CustomerCreditHealth_angle").find(".fa-angle-right").addClass("d-none");
  410. Bizgaze.Apps.Transact.Controls.CustomerCreditHealth.Instance().getCreditHealth(0, instance.g_OrganizationId, instance.g_OrderType);
  411. $("#" + instance.g_VisibleContainerId).find(".section_CustomerCreditHealth").find(".card-body").removeClass("hidden");
  412. }
  413. if (instance.g_IsShowCategoryButton) {
  414. $("#cartCategoryAddBtn").removeClass("hidden");
  415. }
  416. else {
  417. $("#cartCategoryAddBtn").addClass("hidden");
  418. }
  419. }
  420. changedOrganization_SC_PC() {
  421. let instance = this;
  422. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").find(".card-body").addClass("card").addClass("mt-10");
  423. $("#" + instance.g_VisibleContainerId).find("#btn_Save, .section_Summary, #dropup_save, #btn_Save_New, .btn_Save_Form, .section_PriceDetails").removeClass('hidden');
  424. $("#" + instance.g_VisibleContainerId).find("#btn_ContinueShopping, #orgContact_back, .OrgContact_Details").addClass("hidden");
  425. $("#" + instance.g_VisibleContainerId).find('.section_Items, .section_CartDetails').addClass('hidden');
  426. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  427. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").attr("disabled", "true");
  428. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").attr("disabled", "true");
  429. var OrganizationId = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid option:selected").val();
  430. if (OrganizationId != undefined) {
  431. instance.g_OrganizationId = Number(OrganizationId);
  432. $("#" + instance.g_VisibleContainerId).find(`.txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txt_series_autocomplete,
  433. .txtAutoComplete_orgcontactid`).removeAttr("disabled");
  434. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  435. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getDetails(OrganizationId, instance.g_LobId, instance.g_OrderType, instance.g_IsPointsOrder).then(function (response) {
  436. let res = response.result;
  437. if (response.message != "") {
  438. Unibase.Platform.Forms.Components.FormViewer.Instance().showError(response.message);
  439. instance._orderItems.disableSave();
  440. $("#" + instance.g_VisibleContainerId).find(`.txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txt_series_autocomplete,
  441. .txtAutoComplete_orgcontactid`).attr("disabled", "true").empty();
  442. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_consultantid").attr("disabled", "true");
  443. }
  444. else {
  445. let BillingAddress = new Option(res.BillingAddressName, res.BillingAddressId, true);
  446. let ShippingAddress = new Option(res.ShippingAddressName, res.ShippingAddressId, true);
  447. if (instance.g_IsFromPurchaseIndent) {
  448. let BillFromAddress = new Option(res.BillFromAddressName, res.BillFromAddressId, true);
  449. let ShipFromAddress = new Option(res.ShipFromAddressName, res.ShipFromAddressId, true);
  450. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").append(BillFromAddress).val(res.BillFromAddressId);
  451. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").append(ShipFromAddress).val(res.ShipFromAddressId);
  452. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").append(BillingAddress).val(res.BillingAddressId);
  453. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").append(ShippingAddress).val(res.ShippingAddressId);
  454. }
  455. else {
  456. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  457. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").append(BillingAddress).val(res.BillingAddressId);
  458. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").append(ShippingAddress).val(res.ShippingAddressId);
  459. }
  460. }
  461. $("#" + instance.g_VisibleContainerId).find(".section_CartDetails").removeClass("hidden");
  462. if (res.OrganizationTypeId == 1) {
  463. instance.g_OrgContactId = res.OrgContactId;
  464. if (res.OrgContactName != null && res.OrgContactName != undefined) {
  465. let OrgContact = new Option(res.OrgContactName, instance.g_OrgContactId.toString(), true);
  466. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").append(OrgContact).val(instance.g_OrgContactId);
  467. }
  468. }
  469. else if (res.OrganizationTypeId == 2) {
  470. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orgcontactid").addClass("hidden");
  471. }
  472. if (res.LobId != 0) {
  473. instance.g_TagGroupId = res.TagGroupId;
  474. instance.g_LobId = res.LobId;
  475. let LobDetails = new Option(res.LobName, res.LobId, true);
  476. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").append(LobDetails).val(res.LobId);
  477. let data = res.Permissions;
  478. instance.setPermissionVariables(data);
  479. instance._orderItems.itemSettings();
  480. instance.g_LobInventoryApplyType = res.InventoryApplyType;
  481. instance.setInventorySettings(res.InventoryApplyType);
  482. instance.setOrderSettings(res, res.CompositePriceType);
  483. instance.setCategorySettings(res.CategoryItemSettings);
  484. let SalesPerson = new Option(res.SalesPersonName, res.SalesPersonId, true);
  485. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").append(SalesPerson);
  486. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val(res.SalesPersonId);
  487. if (res.SeriesId != 0) {
  488. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").empty();
  489. if (instance.g_IsSeriesDisabled) {
  490. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").attr("disabled", "true");
  491. }
  492. else {
  493. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").removeAttr("disabled");
  494. }
  495. var seriesData = [];
  496. if (res.SeriesSettings.length == 0) {
  497. for (let s = 0; s < res.SeriesList.length; s++) {
  498. let Series = res.SeriesList[s];
  499. seriesData.push({ id: Series.SeriesId, text: Series.SeriesName, AddlData: Series.ManualNumbering });
  500. }
  501. }
  502. else {
  503. for (let s = 0; s < res.SeriesSettings.length; s++) {
  504. let Series = res.SeriesSettings[s];
  505. seriesData.push({ id: Series.SeriesId, text: Series.SeriesName, AddlData: Series.ManualNumbering });
  506. }
  507. }
  508. $("#" + instance.g_VisibleContainerId).find('.txtSeriesAutoComplete_seriesid').select2({
  509. data: seriesData,
  510. });
  511. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(res.SeriesId).trigger("change");
  512. }
  513. }
  514. if (res.CurrencyId != 0) {
  515. instance.g_FromCurrencyValue = res.FromCurrencyValue;
  516. instance.g_ToCurrencyValue = res.ToCurrencyValue;
  517. instance.g_FromCurrencyName = res.FromCurrencyName;
  518. instance.g_ToCurrencyName = res.ToCurrencyName;
  519. instance.g_ConversionRate = res.ConversionRate;
  520. $("#" + instance.g_VisibleContainerId).find(".txt_conversionrate").val(instance.g_ConversionRate);
  521. $("#" + instance.g_VisibleContainerId).find(".hdn_currencyid").val(instance.g_CurrencyId);
  522. }
  523. instance.loadAutoCompletes();
  524. instance._orderItems.loadItems('');
  525. instance._orderItems.enableSave();
  526. }
  527. });
  528. });
  529. }
  530. else {
  531. $("#" + instance.g_VisibleContainerId).find(`.txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txt_series_autocomplete,
  532. .txtAutoComplete_orgcontactid`).attr("disabled", "true").empty();
  533. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_consultantid").attr("disabled", "true");
  534. }
  535. }
  536. bindSC_PC_Details(res) {
  537. let instance = this;
  538. let Organization = new Option(res.OrganizationName, res.OrganizationId.toString(), true);
  539. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_consultantid").append(Organization).val(res.OrganizationId);
  540. instance.g_OrganizationId = res.OrganizationId;
  541. $("#" + instance.g_VisibleContainerId).find(".date_refdate").val(Unibase.Platform.Helpers.DateTimeHelper.Instance().serverDateformat(res.RefDate));
  542. $("#" + instance.g_VisibleContainerId).find(".date_expecteddeliverydate").val(Unibase.Platform.Helpers.DateTimeHelper.Instance().serverDateformat(res.ExpectedDeliveryDate));
  543. $("#" + instance.g_VisibleContainerId).find(".date_orderdate").val(Unibase.Platform.Helpers.DateTimeHelper.Instance().serverDateformat(res.OrderDate));
  544. $("#" + instance.g_VisibleContainerId).find(".txt_refno").val(res.RefNo);
  545. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_description").find("textarea").val(res.Description);
  546. if (res.RefNo != "") {
  547. $("#" + instance.g_VisibleContainerId).find(".div_refno").addClass('floating-label-form-group-with-value');
  548. }
  549. $("#" + instance.g_VisibleContainerId).find(".div_refdate, .div_expecteddeliverydate, .div_orderdate").addClass('floating-label-form-group-with-value');
  550. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orderdate").removeClass("hidden");
  551. instance.pushCartItems(res.OrderItems);
  552. instance.changedOrganization();
  553. }
  554. bindOrderDetails(OrganizationId, LobId) {
  555. var instance = this;
  556. instance.navigationHelper.showLoading();
  557. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  558. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getDetails(OrganizationId, LobId, instance.g_OrderType, instance.g_IsPointsOrder).then(function (res) {
  559. instance.bindAllDetails(LobId, res);
  560. instance.navigationHelper.hideLoading();
  561. });
  562. });
  563. }
  564. bindAllDetails(LobId, response) {
  565. let instance = this;
  566. let msg = response.message;
  567. let res = response.result;
  568. if (msg != "") {
  569. Unibase.Platform.Forms.Components.FormViewer.Instance().showError(msg);
  570. }
  571. if (res != null) {
  572. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").empty();
  573. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").empty();
  574. if (LobId == 0 || instance.g_OrderId != 0) {
  575. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid, .txtAutoComplete_billingaddressid").empty();
  576. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid, .txtAutoComplete_billfromaddressid").empty();
  577. }
  578. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").empty();
  579. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").empty();
  580. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").empty();
  581. }
  582. if (instance.g_IsPointsOrder) {
  583. instance.g_LoyaltyPoints = res.LoyaltyPoints;
  584. $("#" + instance.g_VisibleContainerId).find("#LoyaltyPoints").text(instance.g_LoyaltyPoints);
  585. $("#" + instance.g_VisibleContainerId).find("#AvailablePoints").text(instance.g_LoyaltyPoints);
  586. $("#" + instance.g_VisibleContainerId).find("#AvailablePoints_header").text(instance.g_LoyaltyPoints);
  587. $("#" + instance.g_VisibleContainerId).find("#RedeemPoints").text("0");
  588. $("#" + instance.g_VisibleContainerId).find(".section_LoyaltyPoints").addClass("mt-10");
  589. let LoyaltyHtml = `<div class="LoyaltyPointsDetails row" style="font-size:13px">
  590. <p class="mr-50"> <strong> Available Points : </strong> <span id="AvailablePoints_header"> ` + instance.g_LoyaltyPoints + `</span> </p>
  591. </div>`;
  592. $("#" + instance.g_VisibleContainerId).find(".LoyaltyPointsDetails").remove();
  593. if (instance.g_IsDealer) {
  594. $("#" + instance.g_VisibleContainerId).find(".formValidate:visible").find("header").append(LoyaltyHtml);
  595. }
  596. else {
  597. $("#" + instance.g_VisibleContainerId).find(".formValidate:visible").find("header .btn-group").prepend(LoyaltyHtml);
  598. }
  599. }
  600. if (res.OrganizationTypeId == 1) {
  601. instance.g_OrgContactId = res.OrgContactId;
  602. if (res.OrgContactName != null && res.OrgContactName != undefined) {
  603. let OrgContact = new Option(res.OrgContactName, instance.g_OrgContactId.toString(), true);
  604. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").append(OrgContact).val(instance.g_OrgContactId);
  605. }
  606. }
  607. else if (res.OrganizationTypeId == 2) {
  608. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orgcontactid").addClass("hidden");
  609. }
  610. if (res.CountryId != "" && res.CountryId != undefined) {
  611. instance.g_CountryId = res.CountryId;
  612. }
  613. else {
  614. instance.g_CountryId = 0;
  615. }
  616. instance.g_CompanyId = res.CompanyId;
  617. let CompanyName = res.CompanyName;
  618. let ShipFromAddressId = response.result.ShipFromAddressId;
  619. let BillFromAddressId = response.result.BranchId;
  620. let BillFromAddressName = response.result.BranchName;
  621. let WarehouseName = response.result.ShipFromAddressName;
  622. let BranchShortCode = response.result.BranchShortCode;
  623. let WarehouseShortCode = response.result.WarehouseShortCode;
  624. let Company = new Option(CompanyName, instance.g_CompanyId.toString(), true);
  625. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").append(Company).val(instance.g_CompanyId);
  626. if (LobId == 0 || instance.g_OrderId != 0) {
  627. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid, .txtAutoComplete_billfromaddressid").val('').text('');
  628. let Branch = new Option(BillFromAddressName + " - " + BranchShortCode, BillFromAddressId.toString(), true);
  629. let Warehouse = new Option(WarehouseName + " - " + WarehouseShortCode, ShipFromAddressId.toString(), true);
  630. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  631. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").append(Warehouse).val(ShipFromAddressId);
  632. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").append(Branch).val(BillFromAddressId);
  633. }
  634. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  635. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").append(Warehouse).val(ShipFromAddressId);
  636. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").append(Branch).val(BillFromAddressId);
  637. }
  638. if (res.BillingAddressId != 0) {
  639. let BillingAddress = new Option(res.BillingAddressName, res.BillingAddressId, true);
  640. let ShippingAddress = new Option(res.ShippingAddressName, res.ShippingAddressId, true);
  641. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  642. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").append(BillingAddress).val(res.BillingAddressId);
  643. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").append(ShippingAddress).val(res.ShippingAddressId);
  644. }
  645. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  646. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").append(BillingAddress).val(res.BillingAddressId);
  647. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").append(ShippingAddress).val(res.ShippingAddressId);
  648. }
  649. }
  650. }
  651. $("#" + instance.g_VisibleContainerId).find("#div_lobid, .txtAutoComplete_lobid, #div_salespersonid").removeClass("hidden").removeAttr("disabled");
  652. if (res.CurrencyId != 0) {
  653. instance.g_FromCurrencyValue = res.FromCurrencyValue;
  654. instance.g_ToCurrencyValue = res.ToCurrencyValue;
  655. instance.g_FromCurrencyName = res.FromCurrencyName;
  656. instance.g_ToCurrencyName = res.ToCurrencyName;
  657. instance.g_ConversionRate = res.ConversionRate;
  658. instance.g_CurrencyId = res.CurrencyId;
  659. $("#" + instance.g_VisibleContainerId).find(".number_conversionrate").val(instance.g_ConversionRate);
  660. $("#" + instance.g_VisibleContainerId).find(".hdn_currencyid").val(instance.g_CurrencyId);
  661. }
  662. if (res.LobId != 0) {
  663. instance.g_TagGroupId = res.TagGroupId;
  664. instance.g_LobId = res.LobId;
  665. let LobDetails = new Option(res.LobName, res.LobId, true);
  666. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").append(LobDetails).val(res.LobId);
  667. let data = res.Permissions;
  668. instance.setPermissionVariables(data);
  669. instance._orderItems.itemSettings();
  670. instance.g_LobInventoryApplyType = res.InventoryApplyType;
  671. instance.setInventorySettings(res.InventoryApplyType);
  672. instance.setOrderSettings(res, res.CompositePriceType);
  673. instance.setItemDisplaySettings(res.ExpandItemSettings);
  674. instance.setCategorySettings(res.CategoryItemSettings);
  675. if (res.SalesPersonId != 0) {
  676. let SalesPerson = new Option(res.SalesPersonName, res.SalesPersonId, true);
  677. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").append(SalesPerson);
  678. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val(res.SalesPersonId);
  679. }
  680. if (res.SeriesId != 0) {
  681. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").empty();
  682. if (instance.g_IsSeriesDisabled) {
  683. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").attr("disabled", "true");
  684. }
  685. else {
  686. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").removeAttr("disabled");
  687. }
  688. var seriesData = [];
  689. if (res.SeriesSettings.length == 0) {
  690. for (let s = 0; s < res.SeriesList.length; s++) {
  691. let Series = res.SeriesList[s];
  692. seriesData.push({ id: Series.SeriesId, text: Series.SeriesName, AddlData: Series.ManualNumbering });
  693. }
  694. }
  695. else {
  696. for (let s = 0; s < res.SeriesSettings.length; s++) {
  697. let Series = res.SeriesSettings[s];
  698. seriesData.push({ id: Series.SeriesId, text: Series.SeriesName, AddlData: Series.ManualNumbering });
  699. }
  700. }
  701. $("#" + instance.g_VisibleContainerId).find('.txtSeriesAutoComplete_seriesid').select2({
  702. data: seriesData,
  703. });
  704. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(res.SeriesId).trigger("change");
  705. }
  706. if (res.PaymentTermId != 0) {
  707. let PaymentTerm = new Option(res.PaymentTermName, res.PaymentTermId, true);
  708. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").append(PaymentTerm);
  709. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").val(res.PaymentTermId);
  710. }
  711. if (res.Terms != "<p><br></p>" && res.Terms != "" && res.Terms != null) {
  712. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_terms").addClass('floating-label-form-group-with-value');
  713. let id = $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_terms").attr("id");
  714. if (id != undefined && id != "" && id != null) {
  715. id = $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_terms").attr("id").replace("control-container-", "");
  716. $("#" + instance.g_VisibleContainerId).find("#txt_" + id).html(res.Terms);
  717. $("#" + instance.g_VisibleContainerId).find("#txt_" + id).val($("#" + instance.g_VisibleContainerId).find("#txt_" + id)[0].textContent);
  718. }
  719. }
  720. else
  721. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_terms").removeClass('floating-label-form-group-with-value');
  722. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0 && !instance.g_IsSC_to_PC) {
  723. $("#" + instance.g_VisibleContainerId).find('.section_Items').removeClass('hidden');
  724. }
  725. instance.g_PriceCodeId = res.PriceCodeId;
  726. instance.g_PriceCodeName = res.PriceCodeName;
  727. $("#" + instance.g_VisibleContainerId).find('#hfOrder_IsSeperateExcise').val(res.IsSeperateExcise);
  728. if ($("#" + instance.g_VisibleContainerId).find("#chk_PriceCodeId").is(':checked')) {
  729. instance.g_PriceCodeId = res.AdvancePriceCodeId;
  730. instance.g_PriceCodeName = "";
  731. }
  732. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  733. $("#" + instance.g_VisibleContainerId).find("#ItemLoadType").empty();
  734. for (let i = 0; i < instance.g_ItemLoadTypes.length; i++) {
  735. let j = i + 1;
  736. $("#" + instance.g_VisibleContainerId).find("#ItemLoadType").append('<option value="' + j + '">' + instance.g_ItemLoadTypes[i] + '</option>');
  737. }
  738. if ($("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:selected").text() == 'Offers') {
  739. $("#" + instance.g_VisibleContainerId).find("#ItemLoadType option:contains(All Items)").attr('selected', 'selected');
  740. }
  741. $("#ItemLoadType option:contains(Filter)").attr("onclick", "Bizgaze.Apps.Transact.Controls.OrderItems.Instance().filterPopUp()");
  742. $("#" + instance.g_VisibleContainerId).find(".variant-list").empty();
  743. if (instance.g_IsPointsOrder) {
  744. instance._orderItems.loadItems('');
  745. }
  746. else {
  747. if (instance.g_IsSC_to_PC) {
  748. instance.bindSC_PC_Details(res);
  749. }
  750. else {
  751. Bizgaze.Apps.Transact.Components.OrderFilter.Instance().bindCustomerTags("Order");
  752. }
  753. }
  754. }
  755. if (LobId == 0) {
  756. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  757. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").attr("disabled", "true");
  758. }
  759. if (res.IsMultipleLobs) {
  760. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  761. if (instance.g_OrderId == 0) {
  762. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid, .txtAutoComplete_lobid, .txtAutoComplete_salespersonid").removeAttr("disabled");
  763. }
  764. }
  765. if (instance.g_OrderId != 0) {
  766. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  767. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid, .txtAutoComplete_salespersonid").attr("disabled", "true");
  768. }
  769. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").attr("disabled", "true");
  770. if (!instance.g_IsPointsOrder) {
  771. if (res.SeriesId == 0) {
  772. instance.checkSeriesValidations(true);
  773. }
  774. else {
  775. $("#" + instance.g_VisibleContainerId).find('.section_Items').removeClass('hidden');
  776. }
  777. }
  778. }
  779. else {
  780. let msg = response.message;
  781. if (msg != "") {
  782. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").empty();
  783. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid, .txtAutoComplete_salespersonid").attr("disabled", "disabled");
  784. }
  785. }
  786. instance.loadAutoCompletes();
  787. if (res.IsCashCustomer) {
  788. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(1);
  789. }
  790. if (instance.g_IsChangePaymentMode == 0 && instance.g_IsAdmin == 0) {
  791. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").attr("disabled", "disabled").css("cursor", "not-allowed");
  792. }
  793. instance.g_IsLeverageApplied = res.IsLeverageApplied;
  794. if (!instance.g_IsAdmin) {
  795. if (res.LeveragePercent != 0 && res.LeveragePercent != '' && res.LeveragePercent != undefined)
  796. instance.g_LeveragePercent = res.LeveragePercent;
  797. $("#" + instance.g_VisibleContainerId).find('.empLeverage').text(instance.g_LeveragePercent);
  798. }
  799. instance.customerOfferSummary();
  800. }
  801. loadAutoCompletes() {
  802. let instance = this;
  803. let id = $(".select2-results").find("ul").attr("id");
  804. let changedAutoComplete = "";
  805. if (id != undefined && id != null) {
  806. changedAutoComplete = $("#" + instance.g_VisibleContainerId).find("#" + id.replace("select2-", "").replace("-results", "")).attr("data-propertyname");
  807. }
  808. let OrgId = [
  809. { ColumnName: 'orgid', Value: instance.g_OrganizationId },
  810. ];
  811. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid"), OrgId);
  812. let Contact = [
  813. { ColumnName: 'contactid', Value: instance.g_OrganizationId },
  814. ];
  815. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  816. if (changedAutoComplete != "billingaddressid") {
  817. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid"), Contact);
  818. }
  819. if (changedAutoComplete != "shippingaddressid") {
  820. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid"), Contact);
  821. }
  822. }
  823. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  824. if (changedAutoComplete != "branchid") {
  825. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid"), Contact);
  826. }
  827. if (changedAutoComplete != "shipfromaddressid") {
  828. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid"), Contact);
  829. }
  830. }
  831. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  832. let Parameters = [{ ColumnName: "companyid", Value: Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").val()) }];
  833. if (changedAutoComplete != "branchid") {
  834. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid"), Parameters);
  835. }
  836. if (changedAutoComplete != "shipfromaddressid") {
  837. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid"), Parameters);
  838. }
  839. }
  840. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  841. let Parameters = [{ ColumnName: "companyid", Value: Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").val()) }];
  842. if (changedAutoComplete != "billingaddressid") {
  843. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid"), Parameters);
  844. }
  845. if (changedAutoComplete != "shippingaddressid") {
  846. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid"), Parameters);
  847. }
  848. }
  849. if (instance.g_IsDealer) {
  850. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").length == 1) {
  851. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_billingaddressid").addClass("hidden");
  852. }
  853. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").length == 1) {
  854. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_shippingaddressid").addClass("hidden");
  855. }
  856. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").length == 1) {
  857. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_billfromaddressid").addClass("hidden");
  858. }
  859. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").length == 1) {
  860. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_shipfromaddressid").addClass("hidden");
  861. }
  862. }
  863. if (changedAutoComplete != "lobid") {
  864. let portalId = 0;
  865. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim)
  866. portalId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val());
  867. else
  868. portalId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid option:selected").val());
  869. let Parameters = [
  870. { ColumnName: 'contactaddressid', Value: portalId },
  871. ];
  872. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid"), Parameters);
  873. }
  874. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_consultantid").length != 0) {
  875. let Parameters = [
  876. { ColumnName: 'companyid', Value: instance.g_CompanyId },
  877. ];
  878. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_consultantid"), Parameters);
  879. }
  880. if (changedAutoComplete != "salespersonid") {
  881. let LobId = 0;
  882. let OrganizationAddressId = 0;
  883. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  884. LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  885. OrganizationAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid option:selected").val());
  886. }
  887. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  888. LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  889. OrganizationAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid option:selected").val());
  890. }
  891. let Parameters = [
  892. { ColumnName: 'lobid', Value: LobId },
  893. { ColumnName: 'contactaddressid', Value: OrganizationAddressId },
  894. ];
  895. Unibase.Forms.Controls.AutoComplete.Instance().LoadAutoComplete($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid"), Parameters);
  896. }
  897. }
  898. autoCompleteEvents() {
  899. var instance = this;
  900. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").change(function () {
  901. let ShipFromAddressId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  902. if (ShipFromAddressId != 0) {
  903. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  904. let LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val());
  905. let ShippingAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val());
  906. instance.getOrderSettings(LobId, ShippingAddressId, ShipFromAddressId);
  907. instance._orderItems.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val(), true);
  908. }
  909. else {
  910. if (instance.g_OrderId == 0) {
  911. instance.loadLoBs();
  912. }
  913. }
  914. }
  915. });
  916. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").on("select2:select", function () {
  917. let ShippingAddressId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  918. if (ShippingAddressId != 0) {
  919. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  920. let LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val());
  921. let ShipFromAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").val());
  922. instance.getOrderSettings(LobId, ShippingAddressId, ShipFromAddressId);
  923. instance._orderItems.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val());
  924. }
  925. else {
  926. if (instance.g_OrderId == 0) {
  927. instance.loadLoBs();
  928. }
  929. }
  930. }
  931. });
  932. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").change(function () {
  933. let OrganizationId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  934. if (OrganizationId > 0) {
  935. instance.changedOrganization();
  936. }
  937. else {
  938. if (instance.g_IsSC_to_PC) {
  939. $("#" + instance.g_VisibleContainerId).find(`.txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txt_series_autocomplete,
  940. .txtAutoComplete_orgcontactid, .txtAutoComplete_consultantid`).attr("disabled", "true").empty();
  941. $("#" + instance.g_VisibleContainerId).find(".section_CartDetails").addClass("hidden");
  942. }
  943. }
  944. });
  945. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").change(function () {
  946. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val($("#" + instance.g_VisibleContainerId).find(this).val());
  947. if ($("#" + instance.g_VisibleContainerId).find(this).val() != null && $("#" + instance.g_VisibleContainerId).find(this).val() != undefined) {
  948. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  949. let BillingAddressId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  950. if (BillingAddressId != 0) {
  951. instance.g_CountryId = isNaN(Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").attr("data-addldata"))) ? 0 : Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").attr("data-addldata"));
  952. instance._orderItems.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val());
  953. Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getAddressById(Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val())).then(function (res) {
  954. if (res.result.IsCashCustomer) {
  955. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(1);
  956. }
  957. else {
  958. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(0);
  959. }
  960. if (instance.g_IsChangePaymentMode == 0 && instance.g_IsAdmin == 0) {
  961. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").attr("disabled", "disabled").css("cursor", "not-allowed");
  962. }
  963. });
  964. }
  965. }
  966. else {
  967. instance.loadDefaultSeries($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  968. }
  969. }
  970. });
  971. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").change(function () {
  972. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  973. let BillFromAddressId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  974. if (BillFromAddressId != 0) {
  975. instance.g_CountryId = isNaN(Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").attr("data-addldata"))) ? 0 : Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").attr("data-addldata"));
  976. instance._orderItems.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val());
  977. Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getAddressById(Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val())).then(function (res) {
  978. if (res.result.IsCashCustomer) {
  979. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(1);
  980. }
  981. else {
  982. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(0);
  983. }
  984. if (instance.g_IsChangePaymentMode == 0 && instance.g_IsAdmin == 0) {
  985. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").attr("disabled", "disabled").css("cursor", "not-allowed");
  986. }
  987. });
  988. }
  989. }
  990. else {
  991. instance.loadDefaultSeries($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  992. }
  993. });
  994. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").change(function () {
  995. let CompanyId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  996. if (CompanyId != 0) {
  997. instance.loadAutoCompletes();
  998. }
  999. Bizgaze.Apps.CRM.Companies.Managers.CompanyManager.Instance().getBranches(CompanyId).then(function (comp_res) {
  1000. let branch;
  1001. let branchid = 0;
  1002. if (comp_res.result != null) {
  1003. comp_res = comp_res.result.filter(x => x.StatusId == 1);
  1004. if (comp_res.length == 1) {
  1005. branchid = comp_res[0].BranchId;
  1006. branch = new Option(comp_res[0].BranchName + " - " + comp_res[0].ShortCode, branchid.toString(), true);
  1007. }
  1008. }
  1009. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  1010. if (branchid != 0) {
  1011. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid, .txtAutoComplete_shipfromaddressid").empty().append(branch).val(branchid).trigger("change");
  1012. }
  1013. else {
  1014. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid, .txtAutoComplete_shipfromaddressid").empty().trigger("change");
  1015. }
  1016. }
  1017. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  1018. if (branchid != 0) {
  1019. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid").empty().append(branch).val(branchid).trigger("change");
  1020. }
  1021. else {
  1022. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid").empty().trigger("change");
  1023. }
  1024. }
  1025. $("#" + instance.g_VisibleContainerId).find(".section_Items").addClass("hidden");
  1026. });
  1027. });
  1028. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").change(function () {
  1029. instance._orderItems.g_PageIndex = 0;
  1030. let LobId = Number($("#" + instance.g_VisibleContainerId).find(this).val());
  1031. if (LobId != 0) {
  1032. instance.bindOrderDetails(instance.g_OrganizationId, LobId);
  1033. $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('<li id="0" class="cartitem list-group-item col-xs-12 hidden clear no-border"></li> <li class="list-group-item col-xs-12 no-border"><strong>Your Shopping Cart is empty.</strong></li>');
  1034. }
  1035. });
  1036. $("#" + instance.g_VisibleContainerId).find(".dropdown_istaxinclusive").change(function () {
  1037. if ($("#" + instance.g_VisibleContainerId).find(".dropdown_istaxinclusive").val() == "False") {
  1038. instance.g_IsTaxInclusive = false;
  1039. }
  1040. else if ($("#" + instance.g_VisibleContainerId).find(".dropdown_istaxinclusive").val() == "True") {
  1041. instance.g_IsTaxInclusive = true;
  1042. }
  1043. instance._orderItems.getTotals();
  1044. });
  1045. $("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").click(function () {
  1046. if ($("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text() == 'Less Options') {
  1047. $("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text('More Options');
  1048. $("#" + instance.g_VisibleContainerId).find(".section_AdvancedOptions").addClass('hidden');
  1049. }
  1050. else if ($("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text() == 'More Options') {
  1051. $("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text('Less Options');
  1052. $("#" + instance.g_VisibleContainerId).find(".section_AdvancedOptions").removeClass('hidden');
  1053. }
  1054. });
  1055. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").change(function () {
  1056. instance.loadPaymentTermConditions();
  1057. });
  1058. }
  1059. setCurrentDate(elem) {
  1060. let localToday = new Date();
  1061. $("." + elem).daterangepicker({
  1062. locale: {
  1063. format: 'MM/DD/YYYY',
  1064. firstDay: 1,
  1065. },
  1066. singleDatePicker: true,
  1067. showDropdowns: true,
  1068. minYear: 1901,
  1069. maxDate: new Date(2050, 11, 31),
  1070. startDate: localToday
  1071. });
  1072. $("." + elem).val("");
  1073. }
  1074. prependCustomerLink() {
  1075. let instance = this;
  1076. let ContactName = $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid option:selected").text();
  1077. let html = '<div class="OrgContact_Details OrgContactNameLink padder-v"><u class="flex-between-center"><b><a href="javascript:;" class="_OrgContactDetailslink" onclick="Bizgaze.Apps.Transact.Controls.Order.Instance().customerLink();">' + ContactName + '</a></b><i class="fa fa-close pull-right" id="orgContact_back" onclick="Bizgaze.Apps.Transact.Controls.Order.Instance().back()"></i></u></div>';
  1078. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").prepend(html);
  1079. }
  1080. customerLink() {
  1081. var instance = this;
  1082. if ($("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").hasClass('hidden') && !instance.g_IsPointsOrder) {
  1083. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails, .section_CustomerCreditHealth, .section_SalesFrequency, .section_CustomerOfferSummary").removeClass('hidden');
  1084. }
  1085. else {
  1086. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails, .section_CustomerCreditHealth, .section_SalesFrequency, .section_CustomerOfferSummary").addClass('hidden');
  1087. }
  1088. if ($("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text() == 'Less Options') {
  1089. $("#" + instance.g_VisibleContainerId).find(".section_AdvancedOptions").addClass('hidden');
  1090. $("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text('More Options');
  1091. }
  1092. }
  1093. bindOrgContact(response) {
  1094. let instance = this;
  1095. if (response != null) {
  1096. Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getOrgContact(response.result.DefaultContactPointId).then(function (orgResponse) {
  1097. if (orgResponse != null) {
  1098. if (orgResponse.result.OrgContactName != null && orgResponse.result.OrgContactName != undefined) {
  1099. let OrgContactName = orgResponse.result.OrgContactName.substring(orgResponse.result.OrgContactName.toString().indexOf("-") + 2);
  1100. let OrgContact = new Option(OrgContactName, orgResponse.result.OrgContactId.toString(), true);
  1101. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").empty();
  1102. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").append(OrgContact);
  1103. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_orgcontactid").val(orgResponse.result.OrgContactId);
  1104. }
  1105. }
  1106. });
  1107. }
  1108. }
  1109. loadDefaultSeries(LoBId) {
  1110. let instance = this;
  1111. let BranchId;
  1112. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim)
  1113. BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val());
  1114. else
  1115. BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val());
  1116. if (BranchId != 0) {
  1117. let seriesId = $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid option:first").val();
  1118. if (seriesId == "0" || seriesId == "") {
  1119. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").find('option').get(0).remove();
  1120. seriesId = $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid option:first").val();
  1121. }
  1122. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(seriesId);
  1123. let InstalledAppId = Unibase.Platform.Forms.Components.FormViewer.instance.FormInstalledAppId;
  1124. let IsSeriesIssue = false;
  1125. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getSeriesSettings(Number(LoBId), BranchId, InstalledAppId).then(function (response) {
  1126. let data = response.result;
  1127. if (data.length != 0) {
  1128. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").empty();
  1129. for (let s = 0; s < data.length; s++) {
  1130. if (data[0].SeriesStatusId != 1) {
  1131. IsSeriesIssue = true;
  1132. instance.checkSeriesValidations(IsSeriesIssue);
  1133. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Configured Series ('" + data[0].SeriesName + "') is De-Activated. Please Activate/Re-Configure the Series to Continue.");
  1134. return false;
  1135. }
  1136. else {
  1137. let Series = new Option(data[s].SeriesName, data[s].SeriesId, true);
  1138. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").append(Series);
  1139. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(data[s].SeriesId);
  1140. }
  1141. }
  1142. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(data[0].SeriesId);
  1143. }
  1144. else {
  1145. Unibase.Platform.Series.Managers.SeriesManager.Instance().getActiveSeries(0, InstalledAppId).then(function (response) {
  1146. let data = response.result;
  1147. if (data != null) {
  1148. if (data.length != 0) {
  1149. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").empty();
  1150. for (let s = 0; s < data.length; s++) {
  1151. let Series = new Option(data[s].SeriesName, data[s].SeriesId.toString(), true);
  1152. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").append(Series);
  1153. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(data[s].SeriesId);
  1154. }
  1155. $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val(data[0].SeriesId);
  1156. }
  1157. }
  1158. });
  1159. }
  1160. instance.checkSeriesValidations(IsSeriesIssue);
  1161. });
  1162. }
  1163. }
  1164. checkSeriesValidations(IsError = false) {
  1165. let instance = this;
  1166. if (IsError) {
  1167. $("#" + instance.g_VisibleContainerId).find('.section_Items').addClass('hidden');
  1168. $("#" + instance.g_VisibleContainerId).find(".txt_series_autocomplete").empty();
  1169. $("#" + instance.g_VisibleContainerId).find(".txt_series_autocomplete").attr("disabled", "true");
  1170. }
  1171. else {
  1172. $("#" + instance.g_VisibleContainerId).find('.section_Items').removeClass('hidden');
  1173. $("#" + instance.g_VisibleContainerId).find(".txt_series_autocomplete").removeAttr("disabled");
  1174. }
  1175. let BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").val());
  1176. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  1177. BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val());
  1178. }
  1179. if (BranchId == 0) {
  1180. $("#" + instance.g_VisibleContainerId).find('.section_Items').addClass('hidden');
  1181. }
  1182. }
  1183. loadLoBs() {
  1184. let instance = this;
  1185. let portalId;
  1186. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim)
  1187. portalId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val());
  1188. else
  1189. portalId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid option:selected").val());
  1190. this.fileCacheHelper.loadJsFile("apps/crm/lobs/managers/lobmanager.js", function () {
  1191. if (!isNaN(portalId)) {
  1192. Bizgaze.Apps.CRM.Lobs.Managers.LobManager.Instance().getLobsByAddressId(portalId).then(function (response) {
  1193. let msg = response.message;
  1194. let data = response.result;
  1195. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  1196. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid, .txtAutoComplete_lobid").removeAttr("disabled");
  1197. $("#" + instance.g_VisibleContainerId).find("#div_salespersonid").removeClass("hidden");
  1198. if (msg != "" && data == "") {
  1199. Unibase.Platform.Forms.Components.FormViewer.Instance().showError(msg);
  1200. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").empty();
  1201. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid, .txtAutoComplete_salespersonid").attr("disabled", "disabled");
  1202. return false;
  1203. }
  1204. if (data != null) {
  1205. if (data.length > 0) {
  1206. instance.g_TagGroupId = data[0].TagGroupId;
  1207. if (data.length >= 1) {
  1208. let LobDetails = new Option(data[0].LobName, data[0].LobId, true);
  1209. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").append(LobDetails);
  1210. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val(data[0].LobId);
  1211. let LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val());
  1212. let BillingAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val());
  1213. let ShippingAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val());
  1214. let BranchId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val());
  1215. let ShipFromAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").val());
  1216. instance.getInventoryApplyType(LobId, BillingAddressId, BranchId);
  1217. instance.getCategorySettings(LobId, BillingAddressId, BranchId);
  1218. instance.getOrderSettings(LobId, ShippingAddressId, ShipFromAddressId);
  1219. instance.getItemDisplaySettings(LobId, BillingAddressId, BranchId);
  1220. instance._orderItems.itemSettings();
  1221. instance._orderItems.loadItems('');
  1222. instance.salesPersonAutoComplete();
  1223. instance.loadDefaultSeries($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  1224. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0 && !instance.g_IsSC_to_PC) {
  1225. $("#" + instance.g_VisibleContainerId).find('.section_Items').removeClass('hidden');
  1226. }
  1227. instance.getPriceCodeDetails(instance.g_OrganizationId, instance.g_OrgContactId, $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val());
  1228. $("#" + instance.g_VisibleContainerId).find("#div_lobid, #div_salespersonid").removeClass("hidden");
  1229. if (data.length == 1) {
  1230. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").attr("disabled", "true");
  1231. }
  1232. }
  1233. else {
  1234. if (!instance.g_IsPointsOrder) {
  1235. $("#" + instance.g_VisibleContainerId).find('.section_OrderDetails').removeClass('hidden');
  1236. }
  1237. }
  1238. }
  1239. }
  1240. });
  1241. }
  1242. });
  1243. instance.loadAutoCompletes();
  1244. }
  1245. getPriceCodeDetails(OrganizationId, OrgcontactId, LoBId) {
  1246. let instance = this;
  1247. let contactId = OrganizationId;
  1248. if (contactId == 0)
  1249. contactId = OrgcontactId;
  1250. Bizgaze.Apps.Transact.Managers.PriceListManager.Instance().getPriceCodeByContact(contactId, LoBId).then(function (response) {
  1251. if (response != null && response.result != null) {
  1252. instance.g_PriceCodeId = response.result.PriceCodeId;
  1253. instance.g_PriceCodeName = response.result.PriceCodeName;
  1254. $("#" + instance.g_VisibleContainerId).find('#hfOrder_IsSeperateExcise').val(response.result.IsSeperateExcise);
  1255. if ($("#" + instance.g_VisibleContainerId).find("#chk_PriceCodeId").is(':checked')) {
  1256. instance.g_PriceCodeId = response.result.AdvancePriceCodeId;
  1257. instance.g_PriceCodeName = "";
  1258. }
  1259. }
  1260. if (instance.g_PriceCodeId == undefined || instance.g_PriceCodeId == null) {
  1261. instance.g_PriceCodeId = 0;
  1262. }
  1263. });
  1264. }
  1265. loadPaymentTermConditions() {
  1266. let VisibleContainerId = Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  1267. Bizgaze.Apps.Transact.Managers.PaymentTermManager.Instance().getPaymentTerm(Number($("#" + VisibleContainerId).find('.txtAutoComplete_paymenttermid').val())).then(function (response) {
  1268. let info = response.result;
  1269. if (info != null && info != "") {
  1270. let Terms = "";
  1271. if (info.Terms != null) {
  1272. Terms = HtmlHelper.getHelper().decode(info.Terms);
  1273. }
  1274. if (Terms != "<p><br></p>" && Terms != "") {
  1275. $("#" + VisibleContainerId).find(".divCustomProperties_terms").addClass('floating-label-form-group-with-value');
  1276. }
  1277. else {
  1278. $("#" + VisibleContainerId).find(".divCustomProperties_terms").removeClass('floating-label-form-group-with-value');
  1279. }
  1280. let id = $("#" + VisibleContainerId).find(".divCustomProperties_terms").attr("id").replace("control-container-", "");
  1281. $("#" + VisibleContainerId).find("#txt_" + id).html(Terms);
  1282. $("#" + VisibleContainerId).find("#txt_" + id).val($("#" + VisibleContainerId).find("#txt_" + id)[0].textContent);
  1283. }
  1284. });
  1285. }
  1286. salesPersonAutoComplete() {
  1287. let instance = this;
  1288. let LobId = 0;
  1289. let OrganizationAddressId = 0;
  1290. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  1291. LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  1292. OrganizationAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid option:selected").val());
  1293. }
  1294. else if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim) {
  1295. LobId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid option:selected").val());
  1296. OrganizationAddressId = Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid option:selected").val());
  1297. }
  1298. Bizgaze.Apps.Crm.Contacts.Managers.ContactManager.Instance().getManagerDetails(LobId, OrganizationAddressId).then(function (response) {
  1299. if (response.result != null && response.result != "") {
  1300. let data = response.result;
  1301. let SalesPerson = new Option(data.ManagerName, data.EmployeeId, true);
  1302. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").empty().append(SalesPerson);
  1303. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val(data.EmployeeId);
  1304. instance.bindOrgContact(response);
  1305. }
  1306. else {
  1307. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Sales Person not found");
  1308. }
  1309. });
  1310. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0) {
  1311. instance.loadDefaultPaymentTerm(LobId);
  1312. }
  1313. instance.loadAutoCompletes();
  1314. }
  1315. loadDefaultPaymentTerm(LobId) {
  1316. let instance = this;
  1317. Bizgaze.Apps.Transact.Managers.PaymentTermManager.Instance().getPaymentTermByOrg(instance.g_OrganizationId, LobId).then(function (response) {
  1318. let paymentterm = response.result;
  1319. if (paymentterm != null) {
  1320. let PaymentTerm = new Option(paymentterm.PaymentTermName, paymentterm.PaymentTermId, true);
  1321. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").append(PaymentTerm);
  1322. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").val(paymentterm.PaymentTermId);
  1323. instance.loadPaymentTermConditions();
  1324. }
  1325. });
  1326. }
  1327. purchasePlanEvents() {
  1328. var instance = this;
  1329. $("#" + instance.g_VisibleContainerId).find("#select2_CompanyId").change(function () {
  1330. let Ids = instance.getCompanyIds();
  1331. if (Ids == "")
  1332. Ids = "0";
  1333. let url = _appsettings.server_url() + '/apis/v4/bizgaze/crm/companies/getbranchesbycompaniesAutoComplete/companyids/' + Ids;
  1334. AutoCompleteHelper.getHelper().Create("#select2_BranchId", "#hfAutoComplete_Branch", url, null);
  1335. });
  1336. $("#" + instance.g_VisibleContainerId).find('#chkSection_GenerateForAllBranches').click(function () {
  1337. if ($("#" + instance.g_VisibleContainerId).find('#chkSection_GenerateForAllBranches').is(':checked')) {
  1338. $("#" + instance.g_VisibleContainerId).find("#select2_BranchId").val(null).trigger('change');
  1339. $("#" + instance.g_VisibleContainerId).find("#select2_CompanyId").val(null).trigger('change');
  1340. $("#" + instance.g_VisibleContainerId).find("#select2_CompanyId").prop('disabled', true);
  1341. $("#" + instance.g_VisibleContainerId).find("#select2_BranchId").prop('disabled', true);
  1342. }
  1343. else {
  1344. $("#" + instance.g_VisibleContainerId).find("#select2_CompanyId").removeAttr('disabled');
  1345. $("#" + instance.g_VisibleContainerId).find("#select2_BranchId").removeAttr('disabled');
  1346. }
  1347. });
  1348. }
  1349. editForm() {
  1350. let instance = this;
  1351. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase) {
  1352. $("#" + instance.g_VisibleContainerId).find("#divSectionProperties_GeneratePurchasePlan").addClass('hidden');
  1353. }
  1354. instance.g_OrgContactId = Number($("#" + instance.g_VisibleContainerId).find('.txtAutoComplete_orgcontactid').val());
  1355. instance.g_OrganizationId = Number($("#" + instance.g_VisibleContainerId).find('.txtAutoComplete_organizationid').val());
  1356. instance.g_CompanyId = Number($("#" + instance.g_VisibleContainerId).find('.txtAutoComplete_companyid').val());
  1357. let OrganizationTypeId = 0;
  1358. let orgtype = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_organizationtypeid");
  1359. if (orgtype != undefined) {
  1360. OrganizationTypeId = Number(orgtype.Value);
  1361. }
  1362. if (OrganizationTypeId == 2 || instance.g_OrgContactId == 0) {
  1363. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orgcontactid").addClass("hidden");
  1364. }
  1365. instance.checkPermissions();
  1366. instance.loadAutoCompletes();
  1367. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_description").removeClass("col-sm-6").addClass("col-sm-12");
  1368. $("#" + instance.g_VisibleContainerId).find(".section_PriceDetails").addClass("hidden");
  1369. if (instance.g_IsChangePaymentTerm == 0 && instance.g_IsAdmin == 0) {
  1370. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").attr("disabled", "disabled").css("cursor", "not-allowed");
  1371. }
  1372. if (instance.g_IsChangePaymentMode == 0 && instance.g_IsAdmin == 0) {
  1373. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").attr("disabled", "disabled").css("cursor", "not-allowed");
  1374. }
  1375. instance.prependCustomerLink();
  1376. if ($("#" + instance.g_VisibleContainerId).find("#chk_advanceorder").prop("checked")) {
  1377. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_advanceorderdate").removeClass("hidden");
  1378. }
  1379. if ($("#" + instance.g_VisibleContainerId).find("#chk_futureorder").prop("checked")) {
  1380. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_futureorderdate").removeClass("hidden");
  1381. }
  1382. $("#" + instance.g_VisibleContainerId).find("#btn_Save").removeClass('hidden');
  1383. $("#" + instance.g_VisibleContainerId).find(".btn_Save_Form").removeClass("hidden");
  1384. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").addClass('mt-10');
  1385. $("#" + instance.g_VisibleContainerId).find(".section_AdvancedOptions").addClass("hidden");
  1386. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").find(".card-body").addClass("hidden");
  1387. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").removeClass('card');
  1388. if (instance.g_IsDealer) {
  1389. $("#" + instance.g_VisibleContainerId).find("#orgContact_back").addClass("hidden");
  1390. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").length == 1) {
  1391. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_billingaddressid").addClass("hidden");
  1392. }
  1393. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").length == 1) {
  1394. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_shippingaddressid").addClass("hidden");
  1395. }
  1396. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").length == 1) {
  1397. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_billfromaddressid").addClass("hidden");
  1398. }
  1399. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shipfromaddressid").length == 1) {
  1400. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_shipfromaddressid").addClass("hidden");
  1401. }
  1402. }
  1403. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_companyid").prop('disabled', true);
  1404. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid, .txtAutoComplete_salespersonid").prop('disabled', true);
  1405. }
  1406. resetAllVariables() {
  1407. let instance = this;
  1408. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_orgcontactid").removeClass("hidden");
  1409. instance.g_LoadOffersOnly = false;
  1410. instance.g_LoadEligibleItemsOnly = false;
  1411. instance._orderItems.g_TagArray = [];
  1412. instance._orderItems.g_FilteredTags = '';
  1413. instance._orderItems.g_PageIndex = 0;
  1414. instance._orderItems.g_LoadedItems = [];
  1415. instance._orderItems.g_SelectedItems = [];
  1416. instance._orderItems.g_CartItems_New = [];
  1417. instance._orderItems.g_SC_PC_CartItems = [];
  1418. instance._orderItems.g_ItemsUnitPrice_New = [];
  1419. instance._orderItems.g_IsEnableCompositePrice = false;
  1420. instance._orderItems.g_IsEnablePiecePrice = false;
  1421. instance._orderItems.g_IsEnableCompositePiecePrice = false;
  1422. instance._orderItems.g_ValidFocItems = [];
  1423. instance._orderItems.g_AppliedOffers = [];
  1424. instance._orderItems.g_FromWidget = false;
  1425. instance.g_IsSC_to_PC = false;
  1426. instance.g_IsFromPurchaseIndent = false;
  1427. instance._orderItems.g_IsCategory = false;
  1428. instance._orderItems.g_FromWidgetEditOrderItemId = 0;
  1429. Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_Tags = "";
  1430. Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_TagArray = [];
  1431. Bizgaze.Apps.Transact.Components.OrderFilter.Instance().g_OnlyFilters = false;
  1432. Bizgaze.Apps.Transact.Components.Invoices.ItemOfferSelection.Instance().Bizgaze_Transact_Selected_Plan = [];
  1433. Bizgaze.Apps.Transact.Components.Invoices.ItemOfferSelection.Instance().g_Selected_Plan = [];
  1434. if ($("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text() == 'Less Options') {
  1435. $("#" + instance.g_VisibleContainerId).find(".section_AdvancedOptions").addClass('hidden');
  1436. $("#" + instance.g_VisibleContainerId).find(".hrefSection_MoreOptions").text('More Options');
  1437. }
  1438. if ($("#" + instance.g_VisibleContainerId).find("#Bizgaze-messageInfo").text() != null) {
  1439. $("#" + instance.g_VisibleContainerId).find(".bizgaze_FormErrorMessages").empty();
  1440. }
  1441. $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").empty();
  1442. $("#" + instance.g_VisibleContainerId).find("#totalOrderItems").text('0');
  1443. $("#" + instance.g_VisibleContainerId).find("#OverallOrderQuantity").text('0');
  1444. $("#" + instance.g_VisibleContainerId).find("#lblSummary_GrossAmount").text('0.0');
  1445. $("#" + instance.g_VisibleContainerId).find("#lblSummary_TotalDiscount").text('0.0');
  1446. $("#" + instance.g_VisibleContainerId).find("#lblSummary_AssessableTotal").text('0.0');
  1447. $("#" + instance.g_VisibleContainerId).find("#lblSummary_TDSTotal").text('0.0');
  1448. $("#" + instance.g_VisibleContainerId).find("#lblSummary_TaxTotal").text('0.0');
  1449. $("#" + instance.g_VisibleContainerId).find("#lblSummary_ScrapDiscountAmount").text('0.0');
  1450. $("#" + instance.g_VisibleContainerId).find("#lblSummary_NetTotal").text('0.0');
  1451. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid, .txtAutoComplete_orgcontactid, .txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid, .txtAutoComplete_lobid, .txtAutoComplete_salespersonid").text('').val(0);
  1452. $("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val('');
  1453. $("#" + instance.g_VisibleContainerId).find(".div_SearchItem").removeClass("floating-label-form-group-with-value");
  1454. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").val(0);
  1455. $("#" + instance.g_VisibleContainerId).find('.leverage-Warning').addClass('hidden');
  1456. if (instance.g_IsPointsOrder) {
  1457. instance.g_LoyaltyPoints = 0;
  1458. $("#" + instance.g_VisibleContainerId).find(".LoyaltyPointsDetails").remove();
  1459. }
  1460. }
  1461. showOrHideSaveAsDraft(IsMandatoryIssue = false) {
  1462. let instance = this;
  1463. if (instance.g_ShowSaveAsDraft && !IsMandatoryIssue) {
  1464. $("#" + instance.g_VisibleContainerId).find(".btn_OrderSaveAsDraft").removeClass('hidden');
  1465. $("#" + instance.g_VisibleContainerId).find("#btn_CloseForm_" + $("#" + instance.g_VisibleContainerId).find("#hf_FormId").val()).removeClass("mr-auto");
  1466. }
  1467. else {
  1468. $("#" + instance.g_VisibleContainerId).find(".btn_OrderSaveAsDraft").addClass('hidden');
  1469. $("#" + instance.g_VisibleContainerId).find("#btn_CloseForm_" + $("#" + instance.g_VisibleContainerId).find("#hf_FormId").val()).addClass("mr-auto");
  1470. }
  1471. }
  1472. checkout() {
  1473. let instance = this;
  1474. $(".order-cart-list").removeAttr("style");
  1475. $("#" + instance.g_VisibleContainerId).find(".modal-body").scrollTop(0);
  1476. let cont_id = $("#" + instance.g_VisibleContainerId).find("._bizgaze_popup_container:visible").attr("id");
  1477. $("#" + instance.g_VisibleContainerId).find("#" + cont_id).find("#btnDynamicSave").css("cursor", "pointer");
  1478. if ($('#addedCategoriesList .cart-cat-card').length) {
  1479. $("#" + instance.g_VisibleContainerId).find('#ulOrder_Cart .cart-item-chk').removeClass('d-none');
  1480. }
  1481. else {
  1482. $("#" + instance.g_VisibleContainerId).find('#ulOrder_Cart .cart-item-chk').addClass('d-none');
  1483. }
  1484. $("#" + instance.g_VisibleContainerId).find(".dropdown_division").val("10");
  1485. let CartItems = instance._orderItems.g_CartItems_New.filter(x => x.BaseQty != 0);
  1486. if (CartItems.length > 10) {
  1487. $("#" + instance.g_VisibleContainerId).find(".CartItemFindTxt").removeClass('hidden');
  1488. }
  1489. else {
  1490. $("#" + instance.g_VisibleContainerId).find(".CartItemFindTxt").addClass('hidden');
  1491. }
  1492. if (instance.g_IsApprovalRequired == true) {
  1493. $("#" + instance.g_VisibleContainerId).find('.empLeverage').text(instance.g_LeveragePercent.toString());
  1494. if ($("#" + instance.g_VisibleContainerId).find('.leverage-Warning').hasClass('hidden'))
  1495. $("#" + instance.g_VisibleContainerId).find('.leverage-Warning').removeClass('hidden');
  1496. }
  1497. else {
  1498. if (!$("#" + instance.g_VisibleContainerId).find('.leverage-Warning').hasClass('hidden'))
  1499. $("#" + instance.g_VisibleContainerId).find('.leverage-Warning').addClass('hidden');
  1500. }
  1501. $("#" + instance.g_VisibleContainerId).find(".modal-body").scrollTop(0);
  1502. if (instance.g_IsChangePaymentTerm == 0 && instance.g_IsAdmin == 0) {
  1503. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_paymenttermid").attr("disabled", "disabled").css("cursor", "not-allowed");
  1504. }
  1505. if (instance.g_IsChangePaymentMode == 0 && instance.g_IsAdmin == 0) {
  1506. $("#" + instance.g_VisibleContainerId).find(".dropdown_paymentmethodid").attr("disabled", "disabled").css("cursor", "not-allowed");
  1507. }
  1508. let CalculateTax = instance.g_IsCalculateTax;
  1509. let IsMandatoryIssue = false;
  1510. if (!CalculateTax) {
  1511. $("#" + instance.g_VisibleContainerId).find("#TotalTax").addClass("hidden");
  1512. $("#" + instance.g_VisibleContainerId).find(".divCustomProperties_istaxinclusive").addClass("hidden");
  1513. }
  1514. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").text() != "" || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").text() != null) {
  1515. if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_organizationid").val() != '') {
  1516. IsMandatoryIssue = true;
  1517. if ($("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtSeriesAutoComplete_seriesid").val() == "") {
  1518. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Series");
  1519. }
  1520. else if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val() == "")
  1521. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select LoB");
  1522. else if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val() == "")
  1523. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Sales Person");
  1524. else if ($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_lobid").val() == null || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid").val() == "" || $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_shippingaddressid").val() == "")
  1525. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Assign Address");
  1526. else {
  1527. IsMandatoryIssue = false;
  1528. $("#" + instance.g_VisibleContainerId).find("#btn_CloseForm").removeClass('mr-auto');
  1529. $("#" + instance.g_VisibleContainerId).find(".section_CartDetails").addClass('mt-10');
  1530. $("#" + instance.g_VisibleContainerId).find("#btn_Save, .section_CartDetails, .section_Summary, #dropup_save, #btn_Save_New, .btn_Save_Form, .section_PriceDetails").removeClass('hidden');
  1531. $("#" + instance.g_VisibleContainerId).find(".CheckOutButton, .OrgContactNameLink, .section_CustomerOfferSummary, .section_CustomerCreditHealth, .section_PurchasePlanSummary, .section_PurchasePlan, .section_SalesFrequency, .section_OrderDetails, .section_AdvancedOptions, .section_Items, .section_LoyaltyPoints").addClass('hidden');
  1532. }
  1533. }
  1534. else {
  1535. Unibase.Platform.Forms.Components.FormViewer.Instance().showError("Please Select Contact");
  1536. }
  1537. }
  1538. instance.showOrHideSaveAsDraft(IsMandatoryIssue);
  1539. if (instance.g_IsPointsOrder) {
  1540. let TotalCartQty = 0;
  1541. instance._orderItems.g_CartItems_New.forEach(x => TotalCartQty += x.BaseQty);
  1542. $("#" + instance.g_VisibleContainerId).find("#OverallOrderQuantity").text(TotalCartQty);
  1543. }
  1544. let Items_ZeroQty = instance._orderItems.g_CartItems_New.filter(x => x.BaseQty == 0);
  1545. Items_ZeroQty.forEach(function (c) {
  1546. instance._orderItems.deleteCartItems(c.ItemId, false);
  1547. });
  1548. let FocItems = instance._orderItems.g_CartItems_New.filter(x => x.IsFocItem == true);
  1549. FocItems.forEach(function (c) {
  1550. instance._orderItems.deleteCartItems(c.ItemId, false, c.RefItemIds);
  1551. });
  1552. if (Items_ZeroQty.length == 0 && FocItems.length == 0) {
  1553. instance._orderItems.checkOffers(false, "Checkout");
  1554. }
  1555. }
  1556. saveAsDraft() {
  1557. let instance = this;
  1558. let InstalledAppId = Unibase.Platform.Forms.Components.FormViewer.instance.InstalledAppId;
  1559. let RefStatusId = Bizgaze.Apps.Transact.Enums.OrderStatus.Draft;
  1560. Unibase.Platform.Apps.Managers.StageManager.Instance().getStagesByInstalledAppandRefStatus(InstalledAppId, RefStatusId).then(function (response) {
  1561. $("#" + instance.g_VisibleContainerId).find(".hdn_stageid").val(response.result.StageId);
  1562. $("#" + instance.g_VisibleContainerId).find("#btnDynamicSave").click();
  1563. });
  1564. }
  1565. back() {
  1566. let instance = this;
  1567. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) != 0) {
  1568. $("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billingaddressid, .txtAutoComplete_shippingaddressid").attr("disabled", "true");
  1569. $("#" + instance.g_VisibleContainerId).find(".OrgContact_Details").addClass('hidden');
  1570. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").addClass("card");
  1571. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").find(".card-body").removeClass("hidden");
  1572. if (Number($("#" + instance.g_VisibleContainerId).find(".hdn_orderid").val()) == 0 || instance.g_IsSC_to_PC) {
  1573. $("#" + instance.g_VisibleContainerId).find(".section_PriceDetails, .section_Summary, #dropup_save").removeClass('hidden');
  1574. }
  1575. }
  1576. else {
  1577. instance.resetAllVariables();
  1578. $("#" + instance.g_VisibleContainerId).find(".Section").addClass("hidden");
  1579. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").removeClass("hidden");
  1580. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").addClass("card");
  1581. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").find(".card-body").removeClass("hidden");
  1582. $("#" + instance.g_VisibleContainerId).find(".OrgContact_Details").remove();
  1583. $("#" + instance.g_VisibleContainerId).find(".CheckOutButton").addClass("hidden");
  1584. }
  1585. }
  1586. customerOfferSummary() {
  1587. let instance = this;
  1588. let Prev = "";
  1589. $("#" + instance.g_VisibleContainerId).find("#OfferSummary").html('<li class="list-group-item hidden " id="OfferSummarList"> </li>');
  1590. let contactId = instance.g_OrganizationId;
  1591. if (contactId == null || contactId == undefined)
  1592. contactId = instance.g_OrgContactId;
  1593. Bizgaze.Apps.Transact.Managers.OfferManager.Instance().getCustomerPlanData(contactId, Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_salespersonid").val()), Number($("#" + instance.g_VisibleContainerId).find(".txtAutoComplete_billfromaddressid").val()), 0, "Plans", false, 0, null).then(function (response) {
  1594. let planwise = "Plans";
  1595. let data = response.result;
  1596. if (data != "") {
  1597. $("#" + instance.g_VisibleContainerId).find(".span_ListOfferSummary_count").text(data.length);
  1598. let formula = $("#" + instance.g_VisibleContainerId).find('#hfFormula').val();
  1599. for (let j = 0; j < data.length; j++) {
  1600. let EarnPoints = data[j].EarnPoints;
  1601. let CurrentVolume = data[j].CurrentVolume;
  1602. let PrevEarn = data[j].PrevEarn;
  1603. if (PrevEarn == undefined)
  1604. PrevEarn = 0;
  1605. let PrevQuantity = data[j].PrevQuantity;
  1606. if (PrevQuantity == undefined)
  1607. PrevQuantity = 0;
  1608. if (formula != undefined && formula != '') {
  1609. EarnPoints = Number(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(eval(formula.replace("{{qty}}", EarnPoints)), 2));
  1610. CurrentVolume = Number(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(eval(formula.replace("{{qty}}", CurrentVolume)), 2));
  1611. PrevEarn = Number(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(eval(formula.replace("{{qty}}", PrevEarn)), 2));
  1612. PrevQuantity = Number(Unibase.Core.Helpers.NumberHelper.Instance().roundNumber(eval(formula.replace("{{qty}}", PrevQuantity)), 2));
  1613. }
  1614. let X = "";
  1615. let Data = data[j];
  1616. let slab = Data.NextSlab;
  1617. let html = "";
  1618. let ShortFall = 0;
  1619. if (slab != 0 && slab != "NA")
  1620. ShortFall = slab - Data.CurrentVolume;
  1621. let OfferName = "";
  1622. if (planwise == "Plan")
  1623. OfferName = Data.OfferName;
  1624. else
  1625. OfferName = Data.OfferName;
  1626. html += '<li class="list-group-item">' +
  1627. '<div class="row">' +
  1628. '<div class="col-sm-3"><span> ' + OfferName + ' </span></div>' +
  1629. '<div class="col-sm-2"><span>' + EarnPoints + ' </span></div>' +
  1630. '<div class="col-sm-2"><span> ' + CurrentVolume + ' </span></div>' +
  1631. '<div class="col-sm-2"><span>' + slab + '</span></div>' +
  1632. '<div class="col-sm-1"><span>' + ShortFall + '</span></div>' +
  1633. '</div>' +
  1634. '</li> ';
  1635. $("#" + instance.g_VisibleContainerId).find("#OfferSummarList:last").after(html);
  1636. }
  1637. }
  1638. else {
  1639. $("#" + instance.g_VisibleContainerId).find("#OfferSummary").empty();
  1640. $("#" + instance.g_VisibleContainerId).find(".span_ListOfferSummary_count").text('0');
  1641. }
  1642. });
  1643. }
  1644. companiesAutoComplete() {
  1645. }
  1646. getCompanyIds() {
  1647. let instance = this;
  1648. let CompanyIds = '';
  1649. let data = $("#" + instance.g_VisibleContainerId).find('#select2_CompanyId').select2('data');
  1650. if (data.length > 0) {
  1651. let options = '';
  1652. for (let i = 0; i < data.length; i++) {
  1653. if (data[i].toString() != '000' && data[i] != undefined)
  1654. options += data[i].id + ",";
  1655. }
  1656. if (options != '') {
  1657. options = options.replace(/\|$/, '');
  1658. CompanyIds = options;
  1659. }
  1660. }
  1661. if (CompanyIds != '') {
  1662. CompanyIds = CompanyIds.replace(/\:$/, '');
  1663. }
  1664. else
  1665. CompanyIds = '0';
  1666. CompanyIds = CompanyIds.slice(0, -1);
  1667. return CompanyIds;
  1668. }
  1669. getBranchIds() {
  1670. let instance = this;
  1671. let BranchIds = '';
  1672. let data = $("#" + instance.g_VisibleContainerId).find('#select2_BranchId').select2('data');
  1673. if (data.length > 0) {
  1674. let options = '';
  1675. for (let i = 0; i < data.length; i++) {
  1676. if (data[i].toString() != '000' && data[i] != undefined)
  1677. options += data[i].id + ",";
  1678. }
  1679. if (options != '') {
  1680. options = options.replace(/\|$/, '');
  1681. BranchIds = options;
  1682. }
  1683. }
  1684. if (BranchIds != '')
  1685. BranchIds = BranchIds.replace(/\:$/, '');
  1686. BranchIds = BranchIds.slice(0, -1);
  1687. return BranchIds;
  1688. }
  1689. getInventoryApplyType(LobId, BillingAddressId, BranchId, IsWidgetShowQtyChkbx = false) {
  1690. let instance = this;
  1691. if (instance.g_IsPointsOrder) {
  1692. instance.g_InventoryApplyType = Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity;
  1693. instance.g_LobInventoryApplyType = Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity;
  1694. instance.setInventorySettings(instance.g_InventoryApplyType);
  1695. $("#" + instance.g_VisibleContainerId).find(".divEnablePieces").addClass("hidden");
  1696. }
  1697. else {
  1698. let portalId;
  1699. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Purchase || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.SalesClaim)
  1700. portalId = BillingAddressId;
  1701. else
  1702. portalId = BranchId;
  1703. let type = instance.g_OrderType;
  1704. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getInventoryApplyType(LobId, type, portalId).then(function (response) {
  1705. if (response.result != null && response.result != undefined) {
  1706. instance.g_LobInventoryApplyType = response.result;
  1707. instance.setInventorySettings(response.result, false, IsWidgetShowQtyChkbx);
  1708. }
  1709. });
  1710. }
  1711. }
  1712. setInventorySettings(InventoryApplyType, isUpdateInventoryChkbxs = true, IsWidgetShowQtyChkbx = false) {
  1713. let instance = this;
  1714. instance.g_InventoryApplyType = InventoryApplyType;
  1715. if (isUpdateInventoryChkbxs) {
  1716. instance._orderItems.g_IsEnablePacks = false;
  1717. instance._orderItems.g_IsEnablePieces = false;
  1718. }
  1719. instance._orderItems.g_IsEnablePacks = false;
  1720. instance._orderItems.g_IsEnablePieces = false;
  1721. if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Packs) {
  1722. if (instance.g_IsShowEnablePieceChkbox == 1 || instance.g_IsAdmin == 1) {
  1723. $("#" + instance.g_VisibleContainerId).find('.div_chk_Pieces').removeClass('hidden');
  1724. }
  1725. else {
  1726. $("#" + instance.g_VisibleContainerId).find(".div_chk_Pieces").addClass("hidden");
  1727. }
  1728. $("#" + instance.g_VisibleContainerId).find(".div_chk_Packs").addClass("hidden");
  1729. instance._orderItems.g_IsEnablePacks = true;
  1730. }
  1731. if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.PacksAndPieces) {
  1732. $("#" + instance.g_VisibleContainerId).find(".div_chk_Pieces").addClass("hidden");
  1733. $("#" + instance.g_VisibleContainerId).find(".div_chk_Packs").addClass("hidden");
  1734. instance._orderItems.g_IsEnablePacks = true;
  1735. instance._orderItems.g_IsEnablePieces = true;
  1736. }
  1737. if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Pieces) {
  1738. $("#" + instance.g_VisibleContainerId).find(".div_chk_Pieces").addClass("hidden");
  1739. $("#" + instance.g_VisibleContainerId).find('.div_chk_Packs').removeClass('hidden');
  1740. instance._orderItems.g_IsEnablePieces = true;
  1741. }
  1742. if (instance.g_InventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) {
  1743. $("#" + instance.g_VisibleContainerId).find(".div_chk_Pieces").addClass("hidden");
  1744. $("#" + instance.g_VisibleContainerId).find('.div_chk_Packs').addClass('hidden');
  1745. instance._orderItems.g_IsEnablePacks = true;
  1746. }
  1747. if (instance.g_LobInventoryApplyType == Bizgaze.Apps.Transact.Enums.InventoryApplyType.Quantity) {
  1748. $("#" + instance.g_VisibleContainerId).find(".div_chk_Pieces").addClass("hidden");
  1749. $("#" + instance.g_VisibleContainerId).find(".div_chk_Packs").addClass("hidden");
  1750. $("#" + instance.g_VisibleContainerId).find(".div_chk_Qty").addClass("hidden");
  1751. instance._orderItems.g_IsEnablePacks = true;
  1752. }
  1753. else {
  1754. if (!instance._orderItems.g_FromWidget) {
  1755. $("#" + instance.g_VisibleContainerId).find(".div_chk_Qty").removeClass("hidden");
  1756. }
  1757. else if (instance._orderItems.g_FromWidget && IsWidgetShowQtyChkbx) {
  1758. $("#" + instance.g_VisibleContainerId).find(".div_chk_Qty").removeClass("hidden");
  1759. }
  1760. else {
  1761. $("#" + instance.g_VisibleContainerId).find(".div_chk_Qty").addClass("hidden");
  1762. }
  1763. }
  1764. $("#" + instance.g_VisibleContainerId).find(".hdn_inventoryapplytype").val(instance.g_InventoryApplyType);
  1765. }
  1766. getOrderSettings(LobId, ShippingAddressId, ShipFromAddressId) {
  1767. let instance = this;
  1768. if (instance.g_IsPointsOrder) {
  1769. instance.g_CompositePriceType = Bizgaze.Apps.Transact.Enums.PriceType.None;
  1770. instance.g_IsCalculateTax = false;
  1771. $("#" + instance.g_VisibleContainerId).find(".div_chk_CompositePrice, .div_chk_PiecePrice").addClass("hidden");
  1772. }
  1773. else {
  1774. let branchId = Number(ShipFromAddressId);
  1775. let SettingName = "";
  1776. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  1777. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_SalesOrder";
  1778. }
  1779. else {
  1780. branchId = Number(ShippingAddressId);
  1781. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_PurchaseOrder";
  1782. }
  1783. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettingsByLob(SettingName, LobId, branchId).then(function (res) {
  1784. if (res.result != null && res.result != undefined && res.result != "") {
  1785. let PriceType = Number(Bizgaze.Apps.Transact.Enums.PriceType[res.result.CompositePriceType]);
  1786. instance.setOrderSettings(res.result, PriceType);
  1787. }
  1788. });
  1789. }
  1790. }
  1791. setOrderSettings(res, PriceType) {
  1792. let instance = this;
  1793. instance.g_CompositePriceType = Number(PriceType);
  1794. instance.g_IsCalculateTax = res.CalculateTax;
  1795. if (instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.CompositePrice || instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.Both) {
  1796. $("#" + instance.g_VisibleContainerId).find(".div_chk_CompositePrice").removeClass("hidden");
  1797. }
  1798. else {
  1799. $("#" + instance.g_VisibleContainerId).find(".div_chk_CompositePrice").addClass("hidden");
  1800. }
  1801. if (instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.PiecePrice || instance.g_CompositePriceType == Bizgaze.Apps.Transact.Enums.PriceType.Both) {
  1802. $("#" + instance.g_VisibleContainerId).find(".div_chk_PiecePrice").removeClass("hidden");
  1803. }
  1804. else {
  1805. $("#" + instance.g_VisibleContainerId).find(".div_chk_PiecePrice").addClass("hidden");
  1806. }
  1807. }
  1808. getCategorySettings(LobId, BillingAddressId, BranchId) {
  1809. let instance = this;
  1810. let branchId = Number(BranchId);
  1811. let SettingName = "";
  1812. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  1813. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_CategorySetting";
  1814. }
  1815. else {
  1816. branchId = Number(BillingAddressId);
  1817. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_CategorySetting";
  1818. }
  1819. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettingsByLob(SettingName, LobId, branchId).then(function (res) {
  1820. if (res.result != null && res.result != undefined && res.result != "") {
  1821. instance.setCategorySettings(res.result.SettingValue);
  1822. }
  1823. });
  1824. }
  1825. setCategorySettings(CategoryItemSettings) {
  1826. let instance = this;
  1827. instance.g_IsShowCategoryButton = CategoryItemSettings;
  1828. if (instance.g_IsShowCategoryButton) {
  1829. $("#cartCategoryAddBtn").removeClass("hidden");
  1830. }
  1831. else {
  1832. $("#cartCategoryAddBtn").addClass("hidden");
  1833. }
  1834. }
  1835. getItemDisplaySettings(LobId, BillingAddressId, BranchId) {
  1836. let instance = this;
  1837. let branchId = Number(BranchId);
  1838. let SettingName = "";
  1839. if (instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.Sales || instance.g_OrderTypeId == Bizgaze.Apps.Transact.Enums.OrderType.PurchaseClaim) {
  1840. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_Sales_DisplayUnitPrice";
  1841. }
  1842. else {
  1843. branchId = Number(BillingAddressId);
  1844. SettingName = "Bizgaze_Extension_Transact_Orders_Setting_Sales_DisplayUnitPrice";
  1845. }
  1846. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettingsByLob(SettingName, LobId, branchId).then(function (res) {
  1847. if (res.result != null && res.result != undefined && res.result != "") {
  1848. instance.setItemDisplaySettings(res.result.SettingValue);
  1849. }
  1850. });
  1851. }
  1852. setItemDisplaySettings(ExpandItemSettings) {
  1853. let instance = this;
  1854. instance.g_ExpandItemSettings = ExpandItemSettings;
  1855. }
  1856. checkPermissions() {
  1857. let instance = this;
  1858. let IsAdmin = Unibase.Platform.Membership.Infos.Identity.getCurrentUser().isAdmin;
  1859. if (!IsAdmin) {
  1860. instance.g_IsAdmin = 0;
  1861. }
  1862. else {
  1863. instance.g_IsAdmin = 1;
  1864. }
  1865. instance.fileCacheHelper.loadJsFiles(["apps/transact/managers/orders/ordermanager.js", "apps/transact/enums/enum.js", "platform/permission/enums/permission.js"], function () {
  1866. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  1867. if (InstalledAppId == 0) {
  1868. InstalledAppId = Unibase.Platform.Forms.Components.FormViewer.instance.InstalledAppId;
  1869. }
  1870. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPermissions(InstalledAppId).then(function (res) {
  1871. let data = res.result;
  1872. instance.setPermissionVariables(data);
  1873. });
  1874. });
  1875. }
  1876. setPermissionVariables(res) {
  1877. let instance = this;
  1878. let data = res;
  1879. if (data != null) {
  1880. let AllowPermission = Unibase.Platform.Permissions.Enums.PermissionLevel[Unibase.Platform.Permissions.Enums.PermissionLevel.Allow];
  1881. let AdminPermission = Unibase.Platform.Permissions.Enums.PermissionLevel[Unibase.Platform.Permissions.Enums.PermissionLevel.Admin];
  1882. if (data.ShowItemAvailability == AllowPermission) {
  1883. instance.g_IsShowAvailability = 1;
  1884. }
  1885. else {
  1886. instance.g_IsShowAvailability = 0;
  1887. }
  1888. if (data.EnableItemPieces == AllowPermission) {
  1889. instance.g_IsShowEnablePieceChkbox = 1;
  1890. }
  1891. else {
  1892. instance.g_IsShowEnablePieceChkbox = 0;
  1893. }
  1894. if (data.ChangePaymentTerm == AllowPermission) {
  1895. instance.g_IsChangePaymentTerm = 1;
  1896. }
  1897. else {
  1898. instance.g_IsChangePaymentTerm = 0;
  1899. }
  1900. if (data.ChangePaymentMode == AllowPermission) {
  1901. instance.g_IsChangePaymentMode = 1;
  1902. }
  1903. else {
  1904. instance.g_IsChangePaymentMode = 0;
  1905. }
  1906. if (data.CanProcessOrder == AllowPermission) {
  1907. instance.g_CanProcessOrder = 1;
  1908. }
  1909. else {
  1910. instance.g_CanProcessOrder = 0;
  1911. }
  1912. if (data.CreateDC == AllowPermission) {
  1913. instance.g_CreateDC = 1;
  1914. }
  1915. else {
  1916. instance.g_CreateDC = 0;
  1917. }
  1918. if (data.CreateGRN == AllowPermission) {
  1919. instance.g_CreateGRN = 1;
  1920. }
  1921. else {
  1922. instance.g_CreateGRN = 0;
  1923. }
  1924. if (data.CreateItem == AllowPermission) {
  1925. instance.g_CreateItem = 1;
  1926. }
  1927. else {
  1928. instance.g_CreateItem = 0;
  1929. }
  1930. if (data.EditPrice == AllowPermission) {
  1931. instance.g_ShowPrice = 1;
  1932. }
  1933. else {
  1934. instance.g_ShowPrice = 0;
  1935. }
  1936. if (data.IncreaseOrderQtywhenApproval == AllowPermission) {
  1937. instance.g_IncreaseQty = 1;
  1938. }
  1939. else {
  1940. instance.g_IncreaseQty = 0;
  1941. }
  1942. if (data.ShowExchangeDC == AllowPermission) {
  1943. instance.g_IsShowExchangeDc = 1;
  1944. }
  1945. else {
  1946. instance.g_IsShowExchangeDc = 0;
  1947. }
  1948. if (data.ManageOfferDiscount == AllowPermission || data.ManageOfferDiscount == AdminPermission) {
  1949. instance.g_IsManageOfferDiscount = 1;
  1950. }
  1951. else {
  1952. instance.g_IsManageOfferDiscount = 0;
  1953. }
  1954. }
  1955. }
  1956. Duplicate() {
  1957. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  1958. let installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  1959. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().duplicateOrder(orderId).then(function (response) {
  1960. if (response.errors == null) {
  1961. let D_orderId = response.result.OrderId;
  1962. Unibase.Platform.Helpers.NavigationHelper.Instance().loadDetailPopup(D_orderId, installedAppId, null);
  1963. Unibase.Platform.Helpers.NavigationHelper.IsListRefresh = true;
  1964. MessageHelper.Instance().showSuccess(response.message, "div_message");
  1965. }
  1966. else {
  1967. MessageHelper.Instance().showError(response.message, "div_message");
  1968. }
  1969. });
  1970. }
  1971. ConfirmOrder() {
  1972. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  1973. let installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  1974. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  1975. $(detailContainer).find(".DetailSetting_" + installedAppId + "_Confirm").unbind().click(function () {
  1976. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  1977. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().confirmOrder(orderId).then(function (response) {
  1978. if (response.errors == null) {
  1979. MessageHelper.Instance().showSuccess(response.message, '');
  1980. let obj = Unibase.Themes.Compact.Components.Details.Instance();
  1981. obj._recordId = Unibase.Themes.Compact.Components.Details.Instance()._recordId;
  1982. obj._installedAppId = Unibase.Themes.Compact.Components.Details.Instance()._installedAppId;
  1983. Unibase.Themes.Compact.Components.Details.Instance().loadPortlets(obj);
  1984. }
  1985. else {
  1986. MessageHelper.Instance().showError(response.message, "div_message");
  1987. }
  1988. });
  1989. });
  1990. });
  1991. }
  1992. VoidOrder() {
  1993. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  1994. let installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  1995. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  1996. $(detailContainer).find(".DetailSetting_" + installedAppId + "_Void").unbind().click(function () {
  1997. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  1998. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().voidOrder(orderId).then(function (response) {
  1999. if (response.errors == null) {
  2000. MessageHelper.Instance().showSuccess(response.message, '');
  2001. }
  2002. else {
  2003. MessageHelper.Instance().showError(response.message, "div_message");
  2004. }
  2005. let obj = Unibase.Themes.Compact.Components.Details.Instance();
  2006. obj._recordId = Unibase.Themes.Compact.Components.Details.Instance()._recordId;
  2007. obj._installedAppId = Unibase.Themes.Compact.Components.Details.Instance()._installedAppId;
  2008. Unibase.Themes.Compact.Components.Details.Instance().loadPortlets(obj);
  2009. });
  2010. });
  2011. });
  2012. }
  2013. ShoworHideAnyButton(BtnName, ShowBtn_refStatusId) {
  2014. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2015. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2016. if ($(detailContainer).find(".DetailSetting_" + InstalledAppId + "_" + BtnName).hasClass("btn-undefined")) {
  2017. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_" + BtnName).removeClass("btn-undefined").addClass("btn-success");
  2018. }
  2019. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2020. if (RefStatusId == ShowBtn_refStatusId) {
  2021. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_' + BtnName).removeClass("hidden");
  2022. }
  2023. else {
  2024. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_' + BtnName).addClass("hidden");
  2025. }
  2026. }
  2027. ShoworHideApproveButton() {
  2028. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2029. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2030. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2031. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Approve").removeClass("btn-undefined").addClass("btn-warning");
  2032. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2033. if (RefStatusId == 2) {
  2034. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_Approve').removeClass("hidden");
  2035. }
  2036. else {
  2037. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_Approve').addClass("hidden");
  2038. }
  2039. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Approve").unbind().click(function () {
  2040. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2041. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().confirmOrder(orderId).then(function (response) {
  2042. if (response.errors == null) {
  2043. MessageHelper.Instance().showSuccess(response.message, '');
  2044. let obj = Unibase.Themes.Compact.Components.Details.Instance();
  2045. obj._recordId = Unibase.Themes.Compact.Components.Details.Instance()._recordId;
  2046. obj._installedAppId = Unibase.Themes.Compact.Components.Details.Instance()._installedAppId;
  2047. Unibase.Themes.Compact.Components.Details.Instance().loadPortlets(obj);
  2048. }
  2049. else {
  2050. MessageHelper.Instance().showError(response.message, "div_message");
  2051. }
  2052. });
  2053. });
  2054. });
  2055. }
  2056. ShoworHideIgnoreButton() {
  2057. let instance = this;
  2058. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2059. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2060. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2061. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Ignore").removeClass("btn-undefined").addClass("btn-success");
  2062. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2063. if (RefStatusId == 2) {
  2064. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Ignore").removeClass("hidden");
  2065. }
  2066. else {
  2067. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Ignore").addClass("hidden");
  2068. }
  2069. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Ignore").unbind().click(function () {
  2070. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2071. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().voidOrder(orderId).then(function (response) {
  2072. if (response.errors == null) {
  2073. MessageHelper.Instance().showSuccess(response.message, '');
  2074. }
  2075. else {
  2076. MessageHelper.Instance().showError(response.message, "div_message");
  2077. }
  2078. let obj = Unibase.Themes.Compact.Components.Details.Instance();
  2079. obj._recordId = Unibase.Themes.Compact.Components.Details.Instance()._recordId;
  2080. obj._installedAppId = Unibase.Themes.Compact.Components.Details.Instance()._installedAppId;
  2081. Unibase.Themes.Compact.Components.Details.Instance().loadPortlets(obj);
  2082. });
  2083. });
  2084. });
  2085. }
  2086. ShoworHideDCButton() {
  2087. let instance = this;
  2088. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2089. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2090. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2091. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreateDC").removeClass("btn-undefined").addClass("btn-success");
  2092. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2093. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateDC').addClass('hidden');
  2094. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateDC").attr("onclick");
  2095. if (Onclick != undefined && Onclick != null) {
  2096. Onclick = Onclick.replace(OrderId.toString(), "0");
  2097. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateDC").attr("onclick", Onclick);
  2098. }
  2099. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2100. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettings(OrderId).then(function (response) {
  2101. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().checkOrderDcCompleted(OrderId, 0).then(function (dcresponse) {
  2102. if (response.result.SettingValue == "DC First") {
  2103. if (dcresponse.result.OrderQuantity > dcresponse.result.DcQty && (RefStatusId == 5 || RefStatusId == 3)) {
  2104. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateDC').removeClass('hidden');
  2105. }
  2106. else {
  2107. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateDC').addClass('hidden');
  2108. }
  2109. }
  2110. else if (response.result.SettingValue == "No Preferences") {
  2111. if (RefStatusId == 5 || RefStatusId == 3) {
  2112. if (dcresponse.result.DcQty == 0 && dcresponse.result.InvoicedQty == 0) {
  2113. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateDC').removeClass("hidden");
  2114. }
  2115. else if (dcresponse.result.DcQty > 0 && dcresponse.result.OrderQuantity > dcresponse.result.DcQty && Number(dcresponse.result.AutoDc) == 0) {
  2116. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateDC').removeClass("hidden");
  2117. }
  2118. }
  2119. }
  2120. });
  2121. });
  2122. });
  2123. }
  2124. ShoworHideGRNButton() {
  2125. let instance = this;
  2126. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2127. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2128. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2129. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreateGRN").removeClass("btn-undefined").addClass("btn-success");
  2130. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2131. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateGRN').addClass('hidden');
  2132. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateGRN").attr("onclick");
  2133. if (Onclick != undefined && Onclick != null) {
  2134. Onclick = Onclick.replace(OrderId.toString(), "0");
  2135. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateGRN").attr("onclick", Onclick);
  2136. }
  2137. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2138. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettings(OrderId).then(function (response) {
  2139. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().checkOrderDcCompleted(OrderId, 0).then(function (dcresponse) {
  2140. if (response.result.SettingValue == "GRN First" || response.result.SettingValue == "No Preferences") {
  2141. if (dcresponse.result.OrderQuantity > dcresponse.result.DcQty && (RefStatusId == 5 || RefStatusId == 3)) {
  2142. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateGRN').removeClass('hidden');
  2143. }
  2144. }
  2145. });
  2146. });
  2147. });
  2148. }
  2149. ShoworHideInvoiceButton() {
  2150. let instance = this;
  2151. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2152. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2153. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2154. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreateInvoice").removeClass("btn-undefined").addClass("btn-danger");
  2155. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2156. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateInvoice').addClass("hidden");
  2157. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2158. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderSettings(OrderId).then(function (response) {
  2159. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().checkOrderDcCompleted(OrderId, 0).then(function (invoiceresponse) {
  2160. if (response.result.SettingValue == "Invoice First") {
  2161. if (invoiceresponse.result.OrderQuantity > invoiceresponse.result.InvoicedQty && (RefStatusId == 5 || RefStatusId == 3)) {
  2162. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateInvoice').removeClass("hidden");
  2163. }
  2164. }
  2165. else if (response.result.SettingValue == "No Preferences") {
  2166. if (RefStatusId == 5 || RefStatusId == 3) {
  2167. if (invoiceresponse.result.DcQty == 0 && invoiceresponse.result.InvoicedQty == 0) {
  2168. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateInvoice').removeClass("hidden");
  2169. }
  2170. else if (invoiceresponse.result.InvoicedQty > 0 && invoiceresponse.result.OrderQuantity > invoiceresponse.result.InvoicedQty && Number(invoiceresponse.result.AutoDc) == 1) {
  2171. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateInvoice').removeClass("hidden");
  2172. }
  2173. }
  2174. }
  2175. });
  2176. });
  2177. });
  2178. }
  2179. ShoworHideVoidButton() {
  2180. let instance = this;
  2181. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2182. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2183. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2184. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Reject").addClass("DetailSetting_" + InstalledAppId + "_Void");
  2185. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Void").removeClass("btn-undefined").addClass("btn-success");
  2186. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2187. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderDetails(orderId).then(function (orderResponse) {
  2188. let RefStatusId = orderResponse.result.RefStatusId;
  2189. if (RefStatusId == 1 || RefStatusId == 2 || RefStatusId == 3) {
  2190. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Void").removeClass("hidden");
  2191. }
  2192. else {
  2193. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Void").addClass("hidden");
  2194. }
  2195. });
  2196. });
  2197. instance.VoidOrder();
  2198. }
  2199. ShoworHideConfirmButton(IsApprovalHidden = false) {
  2200. let instance = this;
  2201. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2202. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2203. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2204. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Confirm").removeClass("btn-undefined").addClass("btn-warning");
  2205. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2206. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderDetails(OrderId).then(function (orderResponse) {
  2207. let RefStatusId = orderResponse.result.RefStatusId;
  2208. let StageIndex = orderResponse.result.StageIndex;
  2209. if (!IsApprovalHidden) {
  2210. if ((RefStatusId == 2 && StageIndex == 2) || (RefStatusId == 1)) {
  2211. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Confirm").removeClass("hidden").removeClass('btn-danger').parent().removeClass('col-3').addClass('col-xs-3');
  2212. }
  2213. else {
  2214. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Confirm").addClass("hidden");
  2215. }
  2216. }
  2217. else {
  2218. if (RefStatusId == 1) {
  2219. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Confirm").removeClass("hidden");
  2220. }
  2221. else {
  2222. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_Confirm").addClass("hidden");
  2223. }
  2224. }
  2225. });
  2226. });
  2227. instance.ConfirmOrder();
  2228. }
  2229. ShowPrintButton(IsHideApprovalError = false) {
  2230. let instance = this;
  2231. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2232. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2233. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2234. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_Print").removeClass("btn-undefined").addClass("btn-warning");
  2235. $(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2236. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2237. if (RefStatusId == 2 && !IsHideApprovalError) {
  2238. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function (response) {
  2239. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderDetails(OrderId).then(function (orderResponse) {
  2240. if (orderResponse.result.Notes != null && orderResponse.result.Notes != undefined && orderResponse.result.Notes != "") {
  2241. let Notes_Array = orderResponse.result.Notes.split(";");
  2242. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ApprovalError").remove();
  2243. let html = `<div><div class="ActionsApprovalError mx-20 mb-2 rounded py-10 px-0 li_DetailSetting_` + InstalledAppId + `_ApprovalError" id="li_DetailSetting_` + InstalledAppId + `_ApprovalError" style="background-color:rgb(252 250 247);border-left: 3px solid #ff6060;padding:0.5rem 1rem 1rem;">`;
  2244. for (let n = 0; n < Notes_Array.length; n++) {
  2245. html += `<p class="font-14 text-danger col-sm-12 ma-1">` + Notes_Array[n] + `</p>`;
  2246. }
  2247. html += `</div>`;
  2248. $(detailContainer).find('#div_App_DefaultWidgetSettings').append(html);
  2249. $(detailContainer).find('#div_App_DefaultWidgetSettings').addClass('pb-0');
  2250. }
  2251. });
  2252. });
  2253. }
  2254. instance.Print();
  2255. }
  2256. Print() {
  2257. let instance = this;
  2258. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2259. if ($(".printsetting").length != 0) {
  2260. let printhtml = $(".printsetting")[0].outerHTML;
  2261. $(".printsetting").remove();
  2262. $(detailContainer).find("#div_App_DefaultWidgetSettings").find(".row").append(printhtml);
  2263. $(".printsetting").find(".pull-right").removeClass("pull-right");
  2264. }
  2265. $('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Print').html('<span><i class=\"fa fa-print\"></i></span>');
  2266. $(detailContainer).find('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Print').click(function () {
  2267. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2268. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["apps/transact/managers/orders/ordermanager.js", "platform/core/helpers/printhelper/printhelper.js"], function () {
  2269. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().orderPrint(orderId).then(function (response) {
  2270. if (!response.result) {
  2271. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("/platform/core/helpers/printhelper/printhelper.js", function () {
  2272. Unibase.Platform.Helpers.PrintHelper.Instance().showPrintErrorModal();
  2273. return;
  2274. });
  2275. }
  2276. else {
  2277. Unibase.Platform.Helpers.PrintHelper.Instance().printPopup(response.result.PrintHTML);
  2278. }
  2279. });
  2280. });
  2281. });
  2282. }
  2283. PurchaseIndentPrint() {
  2284. let instance = this;
  2285. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2286. if ($(".printsetting").length != 0) {
  2287. let printhtml = $(".printsetting")[0].outerHTML;
  2288. $(".printsetting").remove();
  2289. $(detailContainer).find("#div_App_DefaultWidgetSettings").find(".row").append(printhtml);
  2290. $(".printsetting").find(".pull-right").removeClass("pull-right");
  2291. }
  2292. $('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Print').html('<span><i class=\"fa fa-print\"></i></span>');
  2293. $(detailContainer).find('.DetailSetting_' + Unibase.Themes.Providers.DetailHelper.installedAppId + '_Print').click(function () {
  2294. let Id = Unibase.Themes.Providers.DetailHelper.recordId;
  2295. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFiles(["apps/transact/managers/orders/ordermanager.js", "platform/core/helpers/printhelper/printhelper.js"], function () {
  2296. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().purchaseIndentPrint(Id).then(function (response) {
  2297. Unibase.Platform.Helpers.PrintHelper.Instance().printPopup(response.result.PrintHTML);
  2298. });
  2299. });
  2300. });
  2301. }
  2302. bindPurchaseIndentDetails(PurchaseIndentId) {
  2303. let instance = this;
  2304. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2305. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPurchaseIndentDetails(PurchaseIndentId, instance.g_OrderType).then(function (res) {
  2306. instance.g_ShowCCHByDefault = false;
  2307. instance.bindAllDetails(0, res);
  2308. $("#" + instance.g_VisibleContainerId).find(".Section").addClass("hidden");
  2309. $("#" + instance.g_VisibleContainerId).find(".section_ContactName").removeClass("hidden");
  2310. $("#" + instance.g_VisibleContainerId).find(".hdn_reforderid").val(PurchaseIndentId);
  2311. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").find(".card-header").html(`<a class="btn_OrderDetails_angle text-dark" href="javascript:;"> <i class="fa fa-angle-down d-none"></i><i class="fa fa-angle-right"></i><span id="" class="ml-10">Order Details</span> </a>`);
  2312. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").find(".card-body").addClass("hidden");
  2313. $("#" + instance.g_VisibleContainerId).find(".btn_OrderDetails_angle").click(function () {
  2314. $("#" + instance.g_VisibleContainerId).find(".btn_OrderDetails_angle").find(".fa-angle-down").toggleClass("d-none");
  2315. $("#" + instance.g_VisibleContainerId).find(".btn_OrderDetails_angle").find(".fa-angle-right").toggleClass("d-none");
  2316. $("#" + instance.g_VisibleContainerId).find(".section_OrderDetails").find(".card-body").toggleClass("hidden");
  2317. });
  2318. });
  2319. });
  2320. }
  2321. ShoworHidePOButton() {
  2322. let instance = this;
  2323. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2324. let PurchaseIndentId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2325. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2326. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreatePO").removeClass("btn-undefined").addClass("btn-success");
  2327. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreatePO').addClass('hidden');
  2328. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreatePO").attr("onclick");
  2329. if (Onclick != undefined && Onclick != null) {
  2330. Onclick = Onclick.replace(PurchaseIndentId.toString(), "0");
  2331. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreatePO").attr("onclick", Onclick);
  2332. }
  2333. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2334. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPendingPurchaseIndentItems(PurchaseIndentId).then(function (response) {
  2335. if (response.result != null) {
  2336. if (response.result.length > 0) {
  2337. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreatePO').removeClass('hidden');
  2338. }
  2339. }
  2340. });
  2341. });
  2342. }
  2343. ShoworHideEstimateButton() {
  2344. let instance = this;
  2345. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2346. let PurchaseIndentId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2347. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2348. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreateEstimate").removeClass("btn-undefined").addClass("btn-success");
  2349. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateEstimate').addClass('hidden');
  2350. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateEstimate").attr("onclick");
  2351. if (Onclick != undefined && Onclick != null) {
  2352. Onclick = Onclick.replace(PurchaseIndentId.toString(), "0");
  2353. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateEstimate").attr("onclick", Onclick);
  2354. }
  2355. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2356. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPendingPurchaseIndentEstimateItems(PurchaseIndentId).then(function (response) {
  2357. if (response.result != null) {
  2358. if (response.result.length > 0) {
  2359. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreateEstimate').removeClass('hidden');
  2360. }
  2361. }
  2362. });
  2363. });
  2364. }
  2365. ShoworHideDCButton_Claim() {
  2366. let instance = this;
  2367. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2368. let ClaimId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  2369. let ClaimTypeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  2370. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2371. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_CreateDC").addClass("hidden");
  2372. $(detailContainer).find(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2373. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateDC").attr("onclick");
  2374. if (Onclick != undefined && Onclick != null) {
  2375. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2376. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreateDC").attr("onclick", Onclick);
  2377. }
  2378. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2379. if (RefStatusId == 5 || RefStatusId == 3) {
  2380. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2381. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (res) {
  2382. let data = res.result;
  2383. if (ClaimTypeId == 5) {
  2384. if (data.Pending_ClaimIn_Qty > 0) {
  2385. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_CreateDC").removeClass("hidden");
  2386. }
  2387. }
  2388. else {
  2389. if (data.Pending_ClaimOut_Qty > 0) {
  2390. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_CreateDC").removeClass("hidden");
  2391. }
  2392. }
  2393. });
  2394. });
  2395. }
  2396. }
  2397. ShoworHideClaimOutwardButton_Claim() {
  2398. let instance = this;
  2399. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2400. let ClaimId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  2401. let ClaimTypeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  2402. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2403. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ClaimOutward").addClass("hidden");
  2404. $(detailContainer).find(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2405. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_ClaimOutward").attr("onclick");
  2406. if (Onclick != undefined && Onclick != null) {
  2407. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2408. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_ClaimOutward").attr("onclick", Onclick);
  2409. }
  2410. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2411. if (RefStatusId == 5 || RefStatusId == 3) {
  2412. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2413. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (res) {
  2414. let data = res.result;
  2415. if (data.Pending_ClaimOut_Qty > 0) {
  2416. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ClaimOutward").removeClass("hidden");
  2417. }
  2418. });
  2419. });
  2420. }
  2421. }
  2422. ShoworHideReturnDCButton_Claim() {
  2423. let instance = this;
  2424. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2425. let ClaimId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  2426. let ClaimTypeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  2427. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2428. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ReturnDC").addClass("hidden");
  2429. $(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2430. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_ReturnDC").attr("onclick");
  2431. if (Onclick != undefined && Onclick != null) {
  2432. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2433. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_ReturnDC").attr("onclick", Onclick);
  2434. }
  2435. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2436. if (RefStatusId == 5 || RefStatusId == 3) {
  2437. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2438. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (res) {
  2439. let data = res.result;
  2440. if (ClaimTypeId == 5) {
  2441. if (data.Pending_ClaimOut_Qty > 0) {
  2442. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ReturnDC").removeClass("hidden");
  2443. }
  2444. }
  2445. else {
  2446. if (data.Pending_ClaimIn_Qty > 0) {
  2447. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_ReturnDC").removeClass("hidden");
  2448. }
  2449. }
  2450. });
  2451. });
  2452. }
  2453. }
  2454. ShoworHideOutwardDCButton_Claim() {
  2455. let instance = this;
  2456. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2457. let ClaimId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  2458. let ClaimTypeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  2459. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2460. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_OutwardDC").addClass("hidden");
  2461. $(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2462. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_OutwardDC").attr("onclick");
  2463. if (Onclick != undefined && Onclick != null) {
  2464. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2465. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_OutwardDC").attr("onclick", Onclick);
  2466. }
  2467. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2468. if (RefStatusId == 5 || RefStatusId == 3) {
  2469. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2470. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (res) {
  2471. let data = res.result;
  2472. if (ClaimTypeId == 5) {
  2473. if (data.Pending_ClaimOut_Qty > 0) {
  2474. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_OutwardDC").removeClass("hidden");
  2475. }
  2476. }
  2477. else {
  2478. if (data.Pending_ClaimIn_Qty > 0) {
  2479. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_OutwardDC").removeClass("hidden");
  2480. }
  2481. }
  2482. });
  2483. });
  2484. }
  2485. }
  2486. ShoworHideInwardDCButton_Claim() {
  2487. let instance = this;
  2488. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2489. let ClaimId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value);
  2490. let ClaimTypeId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_ordertypeid").Value);
  2491. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2492. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_InwardDC").addClass("hidden");
  2493. $(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2494. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_InwardDC").attr("onclick");
  2495. if (Onclick != undefined && Onclick != null) {
  2496. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2497. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_InwardDC").attr("onclick", Onclick);
  2498. }
  2499. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2500. if (RefStatusId == 5 || RefStatusId == 3) {
  2501. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2502. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (res) {
  2503. let data = res.result;
  2504. if (ClaimTypeId == 5) {
  2505. if (data.Pending_ClaimOut_Qty > 0) {
  2506. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_InwardDC").removeClass("hidden");
  2507. }
  2508. }
  2509. else {
  2510. if (data.Pending_ClaimIn_Qty > 0) {
  2511. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_InwardDC").removeClass("hidden");
  2512. }
  2513. }
  2514. });
  2515. });
  2516. }
  2517. }
  2518. ShoworHidePurchaseClaimButton_Claim() {
  2519. let instance = this;
  2520. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2521. let ClaimId = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_orderid").Value;
  2522. let RefOrderId = ClaimId;
  2523. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2524. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_PurchaseClaim").addClass("hidden");
  2525. $(".btn-undefined").addClass("btn-success").removeClass("btn-undefined");
  2526. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_PurchaseClaim").attr("onclick");
  2527. if (Onclick != undefined && Onclick != null) {
  2528. Onclick = Onclick.replace(ClaimId.toString(), "0");
  2529. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_PurchaseClaim").attr("onclick", Onclick);
  2530. }
  2531. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2532. if (RefStatusId == 5 || RefStatusId == 3 || RefStatusId == 6) {
  2533. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2534. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimPendingQuantity(ClaimId).then(function (claimpenres) {
  2535. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getOrderByRefOrderId(RefOrderId).then(function (response) {
  2536. let data = response.result;
  2537. if (data == null || data == "") {
  2538. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_PurchaseClaim").removeClass("hidden");
  2539. if (claimpenres.result != null) {
  2540. if (claimpenres.result.Out_DcQty == claimpenres.result.ClaimIn_Qty) {
  2541. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_PurchaseClaim").addClass("hidden");
  2542. }
  2543. }
  2544. }
  2545. else {
  2546. if (data.RefOrderId == ClaimId) {
  2547. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_PurchaseClaim").addClass("hidden");
  2548. }
  2549. else {
  2550. $(detailContainer).find(".li_DetailSetting_" + InstalledAppId + "_PurchaseClaim").removeClass("hidden");
  2551. }
  2552. }
  2553. });
  2554. });
  2555. });
  2556. }
  2557. }
  2558. ShoworHideCreditNoteButton_Claim() {
  2559. let instance = this;
  2560. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2561. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2562. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2563. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_CreditNote").removeClass("btn-undefined").addClass("btn-success");
  2564. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2565. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreditNote').addClass('hidden');
  2566. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreditNote").attr("onclick");
  2567. if (Onclick != undefined && Onclick != null) {
  2568. Onclick = Onclick.replace(OrderId.toString(), "0");
  2569. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_CreditNote").attr("onclick", Onclick);
  2570. }
  2571. if (RefStatusId == 5 || RefStatusId == 3) {
  2572. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2573. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPendingItemsForInvoice(OrderId).then(function (response) {
  2574. let data = response.result;
  2575. if (data == null || data == "") {
  2576. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreditNote').addClass('hidden');
  2577. }
  2578. else {
  2579. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreditNote').removeClass('hidden');
  2580. }
  2581. });
  2582. });
  2583. }
  2584. else {
  2585. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_CreditNote').addClass('hidden');
  2586. }
  2587. }
  2588. ShoworHideDebitNoteButton_Claim() {
  2589. let instance = this;
  2590. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2591. let OrderId = Number(Unibase.Themes.Providers.DetailHelper.recordId);
  2592. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2593. $(detailContainer).find(".DetailSetting_" + InstalledAppId + "_DebitNote").removeClass("btn-undefined").addClass("btn-success");
  2594. let RefStatusId = Number(Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_refstatusid").Value);
  2595. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_DebitNote').addClass('hidden');
  2596. let Onclick = $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_DebitNote").attr("onclick");
  2597. if (Onclick != undefined && Onclick != null) {
  2598. Onclick = Onclick.replace(OrderId.toString(), "0");
  2599. $(detailContainer).find(".DetailSetting_" + Unibase.Themes.Providers.DetailHelper.installedAppId + "_DebitNote").attr("onclick", Onclick);
  2600. }
  2601. if (RefStatusId == 5 || RefStatusId == 3) {
  2602. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2603. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getPendingItemsForInvoice(OrderId).then(function (response) {
  2604. let data = response.result;
  2605. if (data == null || data == "") {
  2606. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_DebitNote').addClass('hidden');
  2607. }
  2608. else {
  2609. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_DebitNote').removeClass('hidden');
  2610. }
  2611. });
  2612. });
  2613. }
  2614. else {
  2615. $(detailContainer).find('.li_DetailSetting_' + InstalledAppId + '_DebitNote').addClass('hidden');
  2616. }
  2617. }
  2618. RefreshInvoiceQty() {
  2619. var instance = this;
  2620. var orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2621. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2622. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().RefreshInvoiceQty(orderId).then(function (response) {
  2623. if (response.errors == null) {
  2624. instance.navigationHelper.loadDetail(Unibase.Themes.Providers.DetailHelper.recordId, Unibase.Themes.Providers.DetailHelper.installedAppId, null);
  2625. MessageHelper.Instance().showSuccess(response.message, 'div_message');
  2626. }
  2627. else {
  2628. MessageHelper.Instance().showError(response.message, 'div_message');
  2629. }
  2630. });
  2631. });
  2632. }
  2633. RefreshDcQty() {
  2634. var instance = this;
  2635. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2636. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2637. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().RefreshDeliveredQty(orderId).then(function (response) {
  2638. if (response.errors == null) {
  2639. instance.navigationHelper.loadDetail(Unibase.Themes.Providers.DetailHelper.recordId, Unibase.Themes.Providers.DetailHelper.installedAppId, null);
  2640. MessageHelper.Instance().showSuccess(response.message, 'div_message');
  2641. }
  2642. else {
  2643. MessageHelper.Instance().showError(response.message, 'div_message');
  2644. }
  2645. });
  2646. });
  2647. }
  2648. RefreshDcAndInvoiceQty() {
  2649. var instance = this;
  2650. let orderId = Unibase.Themes.Providers.DetailHelper.recordId;
  2651. Unibase.Platform.Helpers.FileCacheHelper.Instance().loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2652. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().RefreshDCAndInvoiceQty(orderId).then(function (response) {
  2653. if (response.errors == null) {
  2654. instance.navigationHelper.loadDetail(Unibase.Themes.Providers.DetailHelper.recordId, Unibase.Themes.Providers.DetailHelper.installedAppId, null);
  2655. MessageHelper.Instance().showSuccess(response.message, 'div_message');
  2656. }
  2657. else {
  2658. MessageHelper.Instance().showError(response.message, 'div_message');
  2659. }
  2660. });
  2661. });
  2662. }
  2663. bindClaimDetails(ClaimId) {
  2664. let instance = this;
  2665. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2666. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().getClaimDetails(ClaimId).then(function (res) {
  2667. instance.bindAllDetails(0, res);
  2668. $("#" + instance.g_VisibleContainerId).find(".hdn_reforderid").val(ClaimId);
  2669. });
  2670. });
  2671. }
  2672. pushCartItems(Items) {
  2673. var instance = this;
  2674. let IsPacksFocus = false, IsPiecesFocus = false;
  2675. let FocusTxt = instance._orderItems.getDefaultFocusbyInventory(instance.g_InventoryApplyType, false);
  2676. if (FocusTxt == "Packs") {
  2677. IsPacksFocus = true;
  2678. }
  2679. else {
  2680. IsPiecesFocus = true;
  2681. }
  2682. for (let c = 0; c < Items.length; c++) {
  2683. let data = Items[c];
  2684. let DiscountType = 2;
  2685. if (data.DiscountPercent > 0) {
  2686. DiscountType = 1;
  2687. }
  2688. let ItemData = {
  2689. OrderItemId: 0,
  2690. ItemIndex: 0,
  2691. ParentItemId: 0,
  2692. ItemId: data.ItemId,
  2693. ItemName: data.ItemName,
  2694. Packs: data.Packs,
  2695. Pieces: data.Pieces,
  2696. PriceListId: 0,
  2697. PriceListName: "",
  2698. UnitPrice: data.UnitPrice,
  2699. UnitPriceWithOutTax: data.UnitPrice,
  2700. ExpectedPrice: data.UnitPrice,
  2701. ActualPrice: data.UnitPrice,
  2702. PackCount: data.PackCount,
  2703. PackSize: data.PackSize,
  2704. UnitName: data.UnitName,
  2705. Quantity: data.Quantity,
  2706. SKU: data.SKU,
  2707. PartNo: data.PartNo,
  2708. Amount: 0,
  2709. AmountWithDiscount: 0,
  2710. DiscountPercent: data.DiscountPercent,
  2711. DiscountValue: data.DiscountValue,
  2712. DiscountType: DiscountType,
  2713. DiscountAmount: 0,
  2714. ItemValueAfterDiscount: 0,
  2715. StrTaxPercents: "",
  2716. AvailableQuantity: 0,
  2717. AvailablePacks: 0,
  2718. AvailablePieces: 0,
  2719. TotalAvailablePieces: 0,
  2720. ExchangeDC: false,
  2721. IsAfterTax: false,
  2722. BaseQty: data.Quantity,
  2723. IsFocItem: false,
  2724. optoutAmount: 0,
  2725. TaxGroupId: 0,
  2726. TaxGroupName: "",
  2727. TaxAmount: 0,
  2728. TaxRateAmount: 0,
  2729. TaxRate: 0,
  2730. TaxPercentage: 0,
  2731. IsOfferAvailable: false,
  2732. Description: "",
  2733. Discountable: true,
  2734. PiecePrice: 0,
  2735. CompositePrice: 0,
  2736. CompositePiecePrice: 0,
  2737. IsCheckPendingItems: false,
  2738. IsError: false,
  2739. ErrorMsg: "",
  2740. ErrorClass: "text-danger",
  2741. IsTaxError: false,
  2742. IsLeverageError: false,
  2743. IsFocAdded: false,
  2744. RefOrderItemId: data.PurchaseIndentItemId,
  2745. RefItemIds: "",
  2746. RefItemSKUs: "",
  2747. FocItemIds: "",
  2748. DiscountGroupId: 0,
  2749. IsOfferDiscountApplied: false,
  2750. IsOfferApplied: false,
  2751. AppliedOfferVolume: 0,
  2752. AppliedPlanVolumeId: 0,
  2753. AppliedOfferId: 0,
  2754. optoutOfferGroupId: 0,
  2755. SuggestedPacks: 0,
  2756. MinPacks: 0,
  2757. AvgPacks: 0,
  2758. InwardOrderPacks: 0,
  2759. OutwardOrderPacks: 0,
  2760. UOMs: [],
  2761. IsManualUOM: false,
  2762. IsMultipleUOMs: false,
  2763. UOMSchemaId: 0,
  2764. MultipleUOMs: [],
  2765. SelectedUnitId: 0,
  2766. SelectedUnitName: data.UnitName,
  2767. DefaultSize: 0,
  2768. IsBoMAvailable: false,
  2769. IsSpecialPrice: data.IsSpecialPrice,
  2770. ConversionQuantity: 0,
  2771. ProductId: 0,
  2772. IsWishList: data.IsWishList,
  2773. OldUnitPrice: data.UnitPrice,
  2774. InstalledAppId: 0,
  2775. HSNId: data.HSNId,
  2776. RowTotal: 0,
  2777. RowDiscount: 0,
  2778. TaxTotal: 0,
  2779. IsPacksFocus: IsPacksFocus,
  2780. IsPiecesFocus: IsPiecesFocus,
  2781. CategoryName: ""
  2782. };
  2783. let SelectedItems_Index = instance._orderItems.g_SelectedItems.findIndex(x => x.ItemId == data.ItemId);
  2784. let CartItems_Index = instance._orderItems.g_CartItems_New.findIndex(x => x.ItemId == data.ItemId);
  2785. if (SelectedItems_Index == -1) {
  2786. instance._orderItems.g_SelectedItems.push(ItemData);
  2787. }
  2788. else {
  2789. instance._orderItems.g_SelectedItems[SelectedItems_Index] = ItemData;
  2790. }
  2791. if (CartItems_Index == -1) {
  2792. instance._orderItems.g_CartItems_New.push(ItemData);
  2793. }
  2794. else {
  2795. instance._orderItems.g_CartItems_New[CartItems_Index] = ItemData;
  2796. }
  2797. instance._orderItems.g_SC_PC_CartItems.push({ ItemId: data.ItemId, Quantity: data.Quantity });
  2798. }
  2799. if (Items.length == 0) {
  2800. $("#" + instance.g_VisibleContainerId).find("#ulOrder_Cart").html('<li id="0" class="cartitem list-group-item col-xs-12 hidden clear no-border"></li> <li class="list-group-item col-xs-12 no-border EmptyCartLi"><strong> No Pending Purchase Indent Items. </strong></li>');
  2801. }
  2802. else {
  2803. instance._orderItems.loadItems($("#" + instance.g_VisibleContainerId).find("#txt_SearchItem").val());
  2804. }
  2805. }
  2806. updateTokensToLower(TemplateIds) {
  2807. let instance = this;
  2808. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2809. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().updateTokensToLowerCase(TemplateIds, "templatetext").then(function (response) {
  2810. if (response.errors == null) {
  2811. MessageHelper.Instance().showSuccess(response.message, "");
  2812. }
  2813. else {
  2814. MessageHelper.Instance().showError(response.message, "div_message");
  2815. }
  2816. });
  2817. });
  2818. }
  2819. replaceTokens(obj) {
  2820. let instance = this;
  2821. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2822. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().replaceTokens(obj).then(function (response) {
  2823. if (response.errors == null) {
  2824. MessageHelper.Instance().showSuccess(response.message, "");
  2825. }
  2826. else {
  2827. MessageHelper.Instance().showError(response.message, "div_message");
  2828. }
  2829. });
  2830. });
  2831. }
  2832. refreshAllTokens(TemplateIds) {
  2833. let instance = this;
  2834. if (TemplateIds == "") {
  2835. let InputParameters = Unibase.Themes.Providers.Detail_Settings.Instance().InputParameters;
  2836. let InstalledAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2837. let TemplateId = InputParameters.find(x => x.Key == "hf_" + InstalledAppId + "_templateid");
  2838. TemplateIds = TemplateId.Value.toString();
  2839. let installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2840. let detailContainer = "#" + Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds[Unibase.Platform.Helpers.NavigationHelper.ModalContainerIds.length - 1];
  2841. $(detailContainer).find(".DetailSetting_" + installedAppId + "_RefreshTokens").unbind().click(function () {
  2842. instance.refreshTokens(TemplateIds, false);
  2843. });
  2844. }
  2845. else {
  2846. instance.refreshTokens(TemplateIds, true);
  2847. }
  2848. }
  2849. refreshTokens(TemplateIds, IsList) {
  2850. let instance = this;
  2851. instance.fileCacheHelper.loadJsFile("apps/transact/managers/orders/ordermanager.js", function () {
  2852. Bizgaze.Apps.Transact.Managers.OrderManager.Instance().refreshTokens(TemplateIds).then(function (response) {
  2853. if (response.errors == null) {
  2854. if (!IsList) {
  2855. var detailInstance = Unibase.Themes.Compact.Components.Details.Instance();
  2856. var panel = "#" + detailInstance._containerId;
  2857. var obj = Unibase.Themes.Compact.Components.Details.Instance();
  2858. obj._recordId = Unibase.Themes.Providers.DetailHelper.recordId;
  2859. obj._installedAppId = Unibase.Themes.Providers.DetailHelper.installedAppId;
  2860. detailInstance.loadAppDefaultWidget(obj, panel, detailInstance._containerId, function () {
  2861. detailInstance.loadDefaultWidgets(obj._installedAppId, panel);
  2862. detailInstance.LoadApprovals(obj._recordId, obj._installedAppId);
  2863. });
  2864. }
  2865. MessageHelper.Instance().showSuccess(response.message, "");
  2866. }
  2867. else {
  2868. MessageHelper.Instance().showError(response.message, "div_message");
  2869. }
  2870. });
  2871. });
  2872. }
  2873. loadOrderFromEmployeeRoute() {
  2874. const instance = this;
  2875. const containerEl = $("#" + instance.g_VisibleContainerId);
  2876. const employeeRouteEl = containerEl.find('#hf_employeerouteorder');
  2877. if (employeeRouteEl.length) {
  2878. const organizationname = employeeRouteEl.attr('data-organization');
  2879. const contactid = employeeRouteEl.attr('data-contactid');
  2880. let contact = new Option(organizationname, contactid, true);
  2881. containerEl.find(".txtAutoComplete_organizationid").append(contact).val(contactid).trigger("change");
  2882. containerEl.find('#orgContact_back').addClass('hidden');
  2883. }
  2884. }
  2885. static Instance() {
  2886. if (this.instance === undefined) {
  2887. this.instance = new Order();
  2888. }
  2889. return this.instance;
  2890. }
  2891. }
  2892. Controls.Order = Order;
  2893. })(Controls = Transact.Controls || (Transact.Controls = {}));
  2894. })(Transact = Apps.Transact || (Apps.Transact = {}));
  2895. })(Apps = Bizgaze.Apps || (Bizgaze.Apps = {}));
  2896. })(Bizgaze || (Bizgaze = {}));