{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;;;;;;;AACuD;AACE;AACwC;AACxB;AACI;AACf;AACe;;;AAG7E,MAAM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,YAAY;QACxB,SAAS,EAAE,MAAM;KAClB;IACD;QACE,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,0GAAsB;QACjC,QAAQ,EAAE,kEAAO;KAClB;IACD;QACE,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,sFAAiB;KAC7B;IACD;QACE,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,kFAAc;KAC1B;IACD;QACE,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,uEAAY;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,sFAAiB;KAC7B;CACF,CAAC;AASK,MAAM,gBAAgB;;gFAAhB,gBAAgB;6GAAhB,gBAAgB;iHANlB,CAAC,iEAAoB,CAAC,MAAM,EAAE;gBACrC,yBAAyB,EAAE,SAAS;gBACpC,sBAAsB,EAAE,QAAQ;aACjC,CAAC,CAAC,EACO,yDAAY;mIAEX,gBAAgB,oFAFjB,yDAAY;;;;;;;;;;;;;;;;;;;;AC1CmC;;;;;AAOpD,MAAM,YAAY;IAGvB,YAAoB,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;QAD3C,UAAK,GAAG,UAAU,CAAC;IAGnB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,GAAY,EAAE,EAAE;YACvD,IAAI,GAAG,EAAE;gBACP,gFAAsB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aAC9D;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;wEAbU,YAAY;0GAAZ,YAAY;;;;;;QCRzB,2EAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACD0B;AACqB;AAEQ;AAC/B;AACT;AACmB;AACQ;AACpB;AAC2B;AACtB;AACS;AAClB;AACO;AACQ;AACD;AACM;AACR;AACX;AACT;AAC+C;AACN;AACZ;AACf;AACb;AACe;AACmB;AAC3B;AAC6C;AACnD;AACO;AACQ;AACoB;AACyB;AACxB;AACT;AACV;AACM;AACrB;AAC+B;AACpB;AACV;AACF;AACyC;AACoC;AAClD;AACuB;AAC1C;AACO;AAC6B;AAClC;AACF;AACiC;AACoC;AAClB;AAClB;AACM;AACT;AAEa;AACP;AACG;AACN;AACY;AACH;AACA;AACH;AACG;AACf;AACkB;AACe;AACT;AACA;AACqB;AACY;AACG;AACnF;AACA;AACc;AAC0C;AACgC;AACjE;AACqB;AACG;AAET;AACM;AACN;AACA;AACS;AACc;AACtH,oHAAoH;AAC3C;AACe;AACX;AACN;AACgB;AACE;AACkB;AAC1D;AACwC;AACG;AACiC;AACzB;AACE;AACE;AACxB;AACV;AACwC;AACS;AAC7C;AAC2B;AACwB;AACnC;AACZ;AACqC;AACF;AACT;AACjC;AACpB;AACG;AACyC;AAC0C;AAClC;AACC;AACK;AACvB;AACW;AACd;AACZ;AACN;AACuD;AACrB;AACH;AACL;AACR;AACqB;AAC8B;;;;;;;;;AAEtI,IAAI,WAAW,GAAG,oEAAqB,CAAC;IACtC,YAAY,EAAE,IAAI;IAClB,WAAW,EAAE,IAAI;CAClB,CAAC,CAAC;AAEI,SAAS,YAAY;IAC1B,IAAI,MAAM,GAAG,IAAI,+DAAoB,EAAE,CAAC;IACxC,MAAM,CAAC,GAAG,GAAG,8EAAmB,CAAC,uBAAsB;IACvD,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACpC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAClC,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAClC,MAAM,CAAC,yBAAyB,GAAG,IAAI,CAAC;IACxC,OAAO,M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A;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACnSA","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/components/Sales/sales.service.ts","./src/app/components/Sales/salesorders/modal/pickitem/pickitem.component.ts","./src/app/components/Sales/salesorders/modal/pickitem/pickitem.component.html","./src/app/components/Sales/salesorders/modal/serial/serial.component.ts","./src/app/components/Sales/salesorders/modal/serial/serial.component.html","./src/app/components/accounts/account.service.ts","./src/app/components/assets/asset.service.ts","./src/app/components/auth/auth-routing.module.ts","./src/app/components/auth/auth.module.ts","./src/app/components/auth/forgot-pass/forgot-pass.component.ts","./src/app/components/auth/forgot-pass/forgot-pass.component.html","./src/app/components/auth/login/login.component.ts","./src/app/components/auth/login/login.component.html","./src/app/components/customerservice/chatsignalr.service.ts","./src/app/components/dashboard/dashboard-routing.module.ts","./src/app/components/dashboard/dashboard.component.ts","./src/app/components/dashboard/dashboard.component.html","./src/app/components/dashboard/dashboard.module.ts","./src/app/components/dashboard/dashboard.service.ts","./src/app/components/editprofile/editassessment/editassessment.component.ts","./src/app/components/editprofile/editassessment/editassessment.component.html","./src/app/components/editprofile/profile.service.ts","./src/app/components/homepage/accountdetails/accountdetails.component.ts","./src/app/components/homepage/accountdetails/accountdetails.component.html","./src/app/components/homepage/chooseindustry/chooseindustry.component.ts","./src/app/components/homepage/chooseindustry/chooseindustry.component.html","./src/app/components/homepage/createaccount/createaccount.component.ts","./src/app/components/homepage/createaccount/createaccount.component.html","./src/app/components/homepage/features/features.component.ts","./src/app/components/homepage/features/features.component.html","./src/app/components/homepage/homepage-routing.module.ts","./src/app/components/homepage/homepage.component.ts","./src/app/components/homepage/homepage.component.html","./src/app/components/homepage/homepage.module.ts","./src/app/components/homepage/systemmigration/systemmigration.component.ts","./src/app/components/homepage/systemmigration/systemmigration.component.html","./src/app/components/homepage/verifyaccount/verifyaccount.component.ts","./src/app/components/homepage/verifyaccount/verifyaccount.component.html","./src/app/components/hr/employees/model/addleave/addleave.component.ts","./src/app/components/hr/employees/model/addleave/addleave.component.html","./src/app/components/hr/hr.services.ts","./src/app/components/integrations/integration.service.ts","./src/app/components/inventory/inventory.service.ts","./src/app/components/inventory/products/add-product/add-product.component.ts","./src/app/components/inventory/products/add-product/add-product.component.html","./src/app/components/inventory/products/add-product/addons/addons.component.ts","./src/app/components/inventory/products/add-product/addons/addons.component.html","./src/app/components/inventory/products/add-product/alias/alias.component.ts","./src/app/components/inventory/products/add-product/alias/alias.component.html","./src/app/components/inventory/products/add-product/auditlogs/auditlogs.component.ts","./src/app/components/inventory/products/add-product/auditlogs/auditlogs.component.html","./src/app/components/inventory/products/add-product/binlocations/bin-location-filter.pipe.ts","./src/app/components/inventory/products/add-product/binlocations/binlocations.component.ts","./src/app/components/inventory/products/add-product/binlocations/binlocations.component.html","./src/app/components/inventory/products/add-product/compatibility/compatibility.component.ts","./src/app/components/inventory/products/add-product/compatibility/compatibility.component.html","./src/app/components/inventory/products/add-product/details/details.component.ts","./src/app/components/inventory/products/add-product/details/details.component.html","./src/app/components/inventory/products/add-product/documents/documents.component.ts","./src/app/components/inventory/products/add-product/documents/documents.component.html","./src/app/components/inventory/products/add-product/lottracking/lottracking.component.ts","./src/app/components/inventory/products/add-product/lottracking/lottracking.component.html","./src/app/components/inventory/products/add-product/loyaltyprograms/loyaltyprograms.component.ts","./src/app/components/inventory/products/add-product/loyaltyprograms/loyaltyprograms.component.html","./src/app/components/inventory/products/add-product/pictures/pictures.component.ts","./src/app/components/inventory/products/add-product/pictures/pictures.component.html","./src/app/components/inventory/products/add-product/pohistory/pohistory.component.ts","./src/app/components/inventory/products/add-product/pohistory/pohistory.component.html","./src/app/components/inventory/products/add-product/priceauditlogs/priceauditlogs.component.ts","./src/app/components/inventory/products/add-product/priceauditlogs/priceauditlogs.component.html","./src/app/components/inventory/products/add-product/review/review.component.ts","./src/app/components/inventory/products/add-product/review/review.component.html","./src/app/components/inventory/products/add-product/serials/serials.component.ts","./src/app/components/inventory/products/add-product/serials/serials.component.html","./src/app/components/inventory/products/add-product/substituteproduct/substituteproduct.component.ts","./src/app/components/inventory/products/add-product/substituteproduct/substituteproduct.component.html","./src/app/components/inventory/products/add-product/suppliers/supplierfilter.pipe.ts","./src/app/components/inventory/products/add-product/suppliers/suppliers.component.ts","./src/app/components/inventory/products/add-product/suppliers/suppliers.component.html","./src/app/components/inventory/products/add-product/tax/tax.component.ts","./src/app/components/inventory/products/add-product/tax/tax.component.html","./src/app/components/inventory/products/add-product/timeing/timeing.component.ts","./src/app/components/inventory/products/add-product/timeing/timeing.component.html","./src/app/components/inventory/products/add-product/transactionhistory/transactionhistory.component.ts","./src/app/components/inventory/products/add-product/transactionhistory/transactionhistory.component.html","./src/app/components/inventory/products/modal/adduom/adduom.component.ts","./src/app/components/inventory/products/modal/adduom/adduom.component.html","./src/app/components/inventory/products/modal/adjust-qty/adjust-qty.component.ts","./src/app/components/inventory/products/modal/adjust-qty/adjust-qty.component.html","./src/app/components/inventory/products/modal/binholddetails/binholddetails.component.ts","./src/app/components/inventory/products/modal/binholddetails/binholddetails.component.html","./src/app/components/inventory/products/modal/binlocations/binlocations.component.ts","./src/app/components/inventory/products/modal/binlocations/binlocations.component.html","./src/app/components/inventory/products/modal/holdqty/holdqty.component.ts","./src/app/components/inventory/products/modal/holdqty/holdqty.component.html","./src/app/components/inventory/products/modal/itemanalysis/itemanalysis.component.ts","./src/app/components/inventory/products/modal/itemanalysis/itemanalysis.component.html","./src/app/components/inventory/products/modal/itemcompatibility/itemcompatibility.component.ts","./src/app/components/inventory/products/modal/itemcompatibility/itemcompatibility.component.html","./src/app/components/inventory/products/modal/product-bin/product-bin.component.ts","./src/app/components/inventory/products/modal/product-bin/product-bin.component.html","./src/app/components/inventory/products/modal/purchasehistory/purchasehistory.component.ts","./src/app/components/inventory/products/modal/purchasehistory/purchasehistory.component.html","./src/app/components/inventory/products/modal/serial/serial.component.ts","./src/app/components/inventory/products/modal/serial/serial.component.html","./src/app/components/inventory/products/modal/serials/serials.component.ts","./src/app/components/inventory/products/modal/serials/serials.component.html","./src/app/components/inventory/products/modal/transfer-qty/transfer-qty.component.ts","./src/app/components/inventory/products/modal/transfer-qty/transfer-qty.component.html","./src/app/components/inventory/products/modal/transferserials/transferserials.component.ts","./src/app/components/inventory/products/modal/transferserials/transferserials.component.html","./src/app/components/inventory/products/modal/uom-ratio/uom-ratio.component.ts","./src/app/components/inventory/products/modal/uom-ratio/uom-ratio.component.html","./src/app/components/inventory/products/products-routing.module.ts","./src/app/components/inventory/products/products.component.ts","./src/app/components/inventory/products/products.component.html","./src/app/components/inventory/products/products.module.ts","./src/app/components/keymovements/keyboard.service.ts","./src/app/components/modal/addcard/addcard.component.ts","./src/app/components/modal/addcard/addcard.component.html","./src/app/components/modal/addcard/urlSafe.pipe.ts","./src/app/components/modal/addcontact/addcontact.component.ts","./src/app/components/modal/addcontact/addcontact.component.html","./src/app/components/modal/addsupplier/addsupplier.component.ts","./src/app/components/modal/addsupplier/addsupplier.component.html","./src/app/components/modal/apstatement/apstatement.component.ts","./src/app/components/modal/apstatement/apstatement.component.html","./src/app/components/modal/arstatements/arstatements.component.ts","./src/app/components/modal/arstatements/arstatements.component.html","./src/app/components/modal/assemblycatalog/assemblycatalog.component.ts","./src/app/components/modal/assemblycatalog/assemblycatalog.component.html","./src/app/components/modal/assetassignment/assetassignment.component.ts","./src/app/components/modal/assetassignment/assetassignment.component.html","./src/app/components/modal/assetservicelog/assetservicelog.component.ts","./src/app/components/modal/assetservicelog/assetservicelog.component.html","./src/app/components/modal/audit/audit.component.ts","./src/app/components/modal/audit/audit.component.html","./src/app/components/modal/authorization/authorization.component.ts","./src/app/components/modal/authorization/authorization.component.html","./src/app/components/modal/chequetracking/chequetracking.component.ts","./src/app/components/modal/chequetracking/chequetracking.component.html","./src/app/components/modal/coamodal/coamodal.component.ts","./src/app/components/modal/coamodal/coamodal.component.html","./src/app/components/modal/composeemail/composeemail.component.ts","./src/app/components/modal/composeemail/composeemail.component.html","./src/app/components/modal/composeemailwithattachment/composeemailwithattachment.component.ts","./src/app/components/modal/composeemailwithattachment/composeemailwithattachment.component.html","./src/app/components/modal/contacts/contacts.component.ts","./src/app/components/modal/contacts/contacts.component.html","./src/app/components/modal/createoffer/createoffer.component.ts","./src/app/components/modal/createoffer/createoffer.component.html","./src/app/components/modal/credit/credit.component.ts","./src/app/components/modal/credit/credit.component.html","./src/app/components/modal/customerannouncements/customerannouncements.component.ts","./src/app/components/modal/customerannouncements/customerannouncements.component.html","./src/app/components/modal/customerlist/customerlist.component.ts","./src/app/components/modal/customerlist/customerlist.component.html","./src/app/components/modal/customerprojjoblistmodal/customerprojjoblistmodal.component.ts","./src/app/components/modal/customerprojjoblistmodal/customerprojjoblistmodal.component.html","./src/app/components/modal/customerprojjoblistmodal/customerprojjoblistmodal.module.ts","./src/app/components/modal/customersite/customersite.component.ts","./src/app/components/modal/customersite/customersite.component.html","./src/app/components/modal/defaultproductsearchmodal/defaultproductsearchmodal.component.ts","./src/app/components/modal/defaultproductsearchmodal/defaultproductsearchmodal.component.html","./src/app/components/modal/departmentmodal/departmentmodal.component.ts","./src/app/components/modal/departmentmodal/departmentmodal.component.html","./src/app/components/modal/device/device.component.ts","./src/app/components/modal/device/device.component.html","./src/app/components/modal/deviceinventory/deviceinventory.component.ts","./src/app/components/modal/deviceinventory/deviceinventory.component.html","./src/app/components/modal/documents/documents.component.ts","./src/app/components/modal/documents/documents.component.html","./src/app/components/modal/dsccode/dsccode.component.ts","./src/app/components/modal/dsccode/dsccode.component.html","./src/app/components/modal/empadhocpayments/empadhocpayments.component.ts","./src/app/components/modal/empadhocpayments/empadhocpayments.component.html","./src/app/components/modal/empadhocpayments/empadhocpayments.module.ts","./src/app/components/modal/expensereqmodal/expensereq.component.ts","./src/app/components/modal/expensereqmodal/expensereq.component.html","./src/app/components/modal/genericintegration/genericintegration.component.ts","./src/app/components/modal/genericintegration/genericintegration.component.html","./src/app/components/modal/genericprint/genericprint.component.ts","./src/app/components/modal/genericprint/genericprint.component.html","./src/app/components/modal/import/import.component.ts","./src/app/components/modal/import/import.component.html","./src/app/components/modal/itemcodelist/itemcodelist.component.ts","./src/app/components/modal/itemcodelist/itemcodelist.component.html","./src/app/components/modal/ledgers/ledgers.component.ts","./src/app/components/modal/ledgers/ledgers.component.html","./src/app/components/modal/loanapplication/loanapplication.component.ts","./src/app/components/modal/loanapplication/loanapplication.component.html","./src/app/components/modal/makepayment/makepayment.component.ts","./src/app/components/modal/makepayment/makepayment.component.html","./src/app/components/modal/masterdata/masterdata.component.ts","./src/app/components/modal/masterdata/masterdata.component.html","./src/app/components/modal/milestone/milestone.component.ts","./src/app/components/modal/milestone/milestone.component.html","./src/app/components/modal/partysmodal/partysmodal.component.ts","./src/app/components/modal/partysmodal/partysmodal.component.html","./src/app/components/modal/partysmodal/partysmodal.module.ts","./src/app/components/modal/payment/payment.component.ts","./src/app/components/modal/payment/payment.component.html","./src/app/components/modal/pickuporder/pickuporder.component.ts","./src/app/components/modal/pickuporder/pickuporder.component.html","./src/app/components/modal/pocosting/pocosting.component.ts","./src/app/components/modal/pocosting/pocosting.component.html","./src/app/components/modal/printlabel/printlabel.component.ts","./src/app/components/modal/printlabel/printlabel.component.html","./src/app/components/modal/productcatalog/productcatalog.component.ts","./src/app/components/modal/productcatalog/productcatalog.component.html","./src/app/components/modal/productcatlog4purchase/productcatlog4purchase.component.ts","./src/app/components/modal/productcatlog4purchase/productcatlog4purchase.component.html","./src/app/components/modal/productview/productview.component.ts","./src/app/components/modal/productview/productview.component.html","./src/app/components/modal/projjoblistmodal/projjoblistmodal.component.ts","./src/app/components/modal/projjoblistmodal/projjoblistmodal.component.html","./src/app/components/modal/projjoblistmodal/projjoblistmodal.module.ts","./src/app/components/modal/projjoblistpomodal/projjoblistpomodal.component.ts","./src/app/components/modal/projjoblistpomodal/projjoblistpomodal.component.html","./src/app/components/modal/purchaseinvoicepayment/purchaseinvoicepayment.component.ts","./src/app/components/modal/purchaseinvoicepayment/purchaseinvoicepayment.component.html","./src/app/components/modal/purchaserequest/purchaserequest.component.ts","./src/app/components/modal/purchaserequest/purchaserequest.component.html","./src/app/components/modal/purchaserequestitemanaylsis/purchaserequestitemanaylsis.component.ts","./src/app/components/modal/purchaserequestitemanaylsis/purchaserequestitemanaylsis.component.html","./src/app/components/modal/purchaserequestitemhistory/purchaserequestitemhistory.component.ts","./src/app/components/modal/purchaserequestitemhistory/purchaserequestitemhistory.component.html","./src/app/components/modal/qbonlinemodal/qbonlinemodal.component.ts","./src/app/components/modal/qbonlinemodal/qbonlinemodal.component.html","./src/app/components/modal/quickaddproduct/quickaddproduct.component.ts","./src/app/components/modal/quickaddproduct/quickaddproduct.component.html","./src/app/components/modal/quotemodal/quotemodal.component.ts","./src/app/components/modal/quotemodal/quotemodal.component.html","./src/app/components/modal/receivedchequetracking/receivedchequetracking.component.ts","./src/app/components/modal/receivedchequetracking/receivedchequetracking.component.html","./src/app/components/modal/receivepo/receivepo.component.ts","./src/app/components/modal/receivepo/receivepo.component.html","./src/app/components/modal/receiveserilizeditems/receiveserilizeditems.component.ts","./src/app/components/modal/receiveserilizeditems/receiveserilizeditems.component.html","./src/app/components/modal/reportgenericprint/reportgenericprint.component.ts","./src/app/components/modal/reportgenericprint/reportgenericprint.component.html","./src/app/components/modal/resize/resize-border.component.ts","./src/app/components/modal/resize/resize-border.component.html","./src/app/components/modal/resize/resize-border.module.ts","./src/app/components/modal/reviewtransactions/reviewtransactions.component.ts","./src/app/components/modal/reviewtransactions/reviewtransactions.component.html","./src/app/components/modal/salesrequest/salesrequest.component.ts","./src/app/components/modal/salesrequest/salesrequest.component.html","./src/app/components/modal/serialsmodal/serialsmodal.component.ts","./src/app/components/modal/serialsmodal/serialsmodal.component.html","./src/app/components/modal/shippingport/shippingport.component.ts","./src/app/components/modal/shippingport/shippingport.component.html","./src/app/components/modal/shortshipmentpo/shortshipmentpo.component.ts","./src/app/components/modal/shortshipmentpo/shortshipmentpo.component.html","./src/app/components/modal/singlebillpayment/singlebillpayment.component.ts","./src/app/components/modal/singlebillpayment/singlebillpayment.component.html","./src/app/components/modal/singlereceivepayment/singlereceivepayment.component.ts","./src/app/components/modal/singlereceivepayment/singlereceivepayment.component.html","./src/app/components/modal/site/site.component.ts","./src/app/components/modal/site/site.component.html","./src/app/components/modal/sitesmodal/sitesmodal.component.ts","./src/app/components/modal/sitesmodal/sitesmodal.component.html","./src/app/components/modal/sourcelist/sourcelist.component.ts","./src/app/components/modal/sourcelist/sourcelist.component.html","./src/app/components/modal/sourcelist/sourcelist.module.ts","./src/app/components/modal/supplier-list/supplier-list.component.ts","./src/app/components/modal/supplier-list/supplier-list.component.html","./src/app/components/modal/supplier-list/supplier-list.module.ts","./src/app/components/modal/suppliercontact/suppliercontact.component.ts","./src/app/components/modal/suppliercontact/suppliercontact.component.html","./src/app/components/modal/techcopy/techcopy.component.ts","./src/app/components/modal/techcopy/techcopy.component.html","./src/app/components/modal/ticketcopy/ticketcopy.component.ts","./src/app/components/modal/ticketcopy/ticketcopy.component.html","./src/app/components/modal/tracking/tracking.component.ts","./src/app/components/modal/tracking/tracking.component.html","./src/app/components/modal/vendorpayment/vendorpayment.component.ts","./src/app/components/modal/vendorpayment/vendorpayment.component.html","./src/app/components/pos/openingbalance/openingbalance.component.ts","./src/app/components/pos/openingbalance/openingbalance.component.html","./src/app/components/pos/pos-routing.module.ts","./src/app/components/pos/pos.component.ts","./src/app/components/pos/pos.component.html","./src/app/components/pos/pos.module.ts","./src/app/components/pos/pos.service.ts","./src/app/components/projectmanager/projectmanager.service.ts","./src/app/components/purchase/purchase.service.ts","./src/app/components/reports/reports.service.ts","./src/app/components/scheduler/schedule/schedule.component.ts","./src/app/components/scheduler/schedule/schedule.component.html","./src/app/components/scheduler/scheduler.service.ts","./src/app/components/servicemanager/servicecontracts/customerlist/customerlist.component.ts","./src/app/components/servicemanager/servicecontracts/customerlist/customerlist.component.html","./src/app/components/servicemanager/servicecontracts/customerlist/customerlist.module.ts","./src/app/components/servicemanager/servicelineitems/serviceitem/serviceitem.component.ts","./src/app/components/servicemanager/servicelineitems/serviceitem/serviceitem.component.html","./src/app/components/servicemanager/servicemanager.service.ts","./src/app/components/servicemanager/servicetickets/timematerials/edittimematerialmodal/edittimematerialmodal.component.ts","./src/app/components/servicemanager/servicetickets/timematerials/edittimematerialmodal/edittimematerialmodal.component.html","./src/app/components/settings/setting.service.ts","./src/app/components/specmap/markers/addmarker/addmarker.component.ts","./src/app/components/specmap/markers/addmarker/addmarker.component.html","./src/app/components/specmap/markers/markers.component.ts","./src/app/components/specmap/markers/markers.component.html","./src/app/components/specmap/specmap.service.ts","./src/app/components/tracking/tracking-routing.module.ts","./src/app/components/tracking/tracking.component.ts","./src/app/components/tracking/tracking.component.html","./src/app/components/tracking/tracking.module.ts","./src/app/shared/components/breadcrumb/breadcrumb.component.ts","./src/app/shared/components/breadcrumb/breadcrumb.component.html","./src/app/shared/components/feather-icons/feather-icons.component.ts","./src/app/shared/components/feather-icons/feather-icons.component.html","./src/app/shared/components/footer/footer.component.ts","./src/app/shared/components/footer/footer.component.html","./src/app/shared/components/header/header.component.ts","./src/app/shared/components/header/header.component.html","./src/app/shared/components/right-sidebar/right-sidebar.component.ts","./src/app/shared/components/right-sidebar/right-sidebar.component.html","./src/app/shared/components/sidebar/sidebar.component.ts","./src/app/shared/components/sidebar/sidebar.component.html","./src/app/shared/data/chart.ts","./src/app/shared/directives/fullscreen.directive.ts","./src/app/shared/layout/content-layout/content-layout.component.ts","./src/app/shared/layout/content-layout/content-layout.component.html","./src/app/shared/layout/content-layout/screenshot.service.ts","./src/app/shared/routes/content-routes.ts","./src/app/shared/service/app.services.ts","./src/app/shared/service/auth.interceptor.ts","./src/app/shared/service/common.service.ts","./src/app/shared/service/conversion.service.ts","./src/app/shared/service/events.service.ts","./src/app/shared/service/excel.service.ts","./src/app/shared/service/exportdata.service.ts","./src/app/shared/service/http-cache.service.ts","./src/app/shared/service/language.service.ts","./src/app/shared/service/my_date_format.ts","./src/app/shared/service/nav.service.ts","./src/app/shared/service/notification.service.ts","./src/app/shared/service/safepipe.ts","./src/app/shared/service/windows.service.ts","./src/app/shared/shared.module.ts","./src/app/shared/tables/category.ts","./src/app/shared/tables/project-category-db.ts","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale|sync|/^/.*$","ignored|C:\\Users\\dev5\\source\\repos\\ezybooks-web\\ezb.web\\ClientApp\\node_modules\\crypto-js|crypto"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { content } from './shared/routes/content-routes';\r\nimport { ContentLayoutComponent } from './shared/layout/content-layout/content-layout.component';\r\nimport { LoginComponent } from './components/auth/login/login.component';\r\nimport { HomepageComponent } from './components/homepage/homepage.component';\r\nimport { PosComponent } from './components/pos/pos.component';\r\nimport { TrackingComponent } from './components/tracking/tracking.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'auth/login',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: '',\r\n component: ContentLayoutComponent,\r\n children: content\r\n },\r\n {\r\n path: 'public/index',\r\n component: HomepageComponent,\r\n },\r\n {\r\n path: 'auth/login',\r\n component: LoginComponent,\r\n },\r\n {\r\n path: 'pos',\r\n component: PosComponent,\r\n },\r\n {\r\n path: 'tracking',\r\n component: TrackingComponent,\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, {\r\n scrollPositionRestoration: 'enabled',\r\n relativeLinkResolution: 'legacy',\r\n })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { BnNgIdleService } from 'bn-ng-idle';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n @ViewChild(\"screen\", { static: true }) screen: any;\r\n title = 'Ezybooks';\r\n constructor(private bnIdle: BnNgIdleService) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.bnIdle.startWatching(30).subscribe((res: boolean) => {\r\n if (res) {\r\n environment.production ? '' : console.log('session expired');\r\n }\r\n });\r\n }\r\n\r\n}\r\n","\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DashboardModule } from './components/dashboard/dashboard.module';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { ProductsModule } from './components/inventory/products/products.module';\r\nimport { AuthModule } from './components/auth/auth.module';\r\nimport { AuthInterceptor } from './shared/service/auth.interceptor';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { SweetAlert2Module } from '@sweetalert2/ngx-sweetalert2';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { ExcelService } from './shared/service/excel.service';\r\nimport { FileUploadModule } from 'ng2-file-upload';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { TicketCopyComponent } from './components/modal/ticketcopy/ticketcopy.component';\r\nimport { TechCopyComponent } from './components/modal/techcopy/techcopy.component';\r\nimport { HomepageModule } from './components/homepage/homepage.module';\r\nimport { PosModule } from './components/pos/pos.module';\r\nimport { NgxPrintModule } from 'ngx-print';\r\nimport { NgxPrintElementModule } from 'ngx-print-element';\r\nimport { ImportComponent } from './components/modal/import/import.component';\r\nimport { NgxFileDropModule } from 'ngx-file-drop';\r\nimport { ComposeemailComponent } from './components/modal/composeemail/composeemail.component';\r\nimport { SignalRModule } from 'ng2-signalr';\r\nimport { SignalRConfiguration } from 'ng2-signalr';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ChatSignalr } from './components/customerservice/chatsignalr.service';\r\nimport { QuickaddproductComponent } from './components/modal/quickaddproduct/quickaddproduct.component';\r\nimport { PaymentComponent } from './components/modal/payment/payment.component';\r\nimport { MatMomentDateModule } from '@angular/material-moment-adapter';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { CKEditorModule } from 'ng2-ckeditor';\r\nimport { CreditComponent } from './components/modal/credit/credit.component';\r\nimport { Events } from './shared/service/events.service';\r\nimport { NgxCaptureModule } from 'ngx-capture';\r\nimport { BnNgIdleService } from 'bn-ng-idle';\r\nimport { MilestoneComponent } from './components/modal/milestone/milestone.component';\r\nimport { CustomerannouncementsComponent } from './components/modal/customerannouncements/customerannouncements.component';\r\nimport { ConversionService } from './shared/service/conversion.service';\r\nimport { GenericprintComponent } from './components/modal/genericprint/genericprint.component';\r\nimport { SafePipe } from './shared/service/safepipe';\r\nimport getBrowserFingerprint from 'get-browser-fingerprint';\r\nimport { MasterdataComponent } from './components/modal/masterdata/masterdata.component';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Ng2SmartTableModule } from 'ng2-smart-table'\r\nimport { ReceivepoComponent } from './components/modal/receivepo/receivepo.component';\r\nimport { ReceiveserilizeditemsComponent } from './components/modal/receiveserilizeditems/receiveserilizeditems.component';\r\nimport { ShortshipmentpoComponent } from './components/modal/shortshipmentpo/shortshipmentpo.component';\r\nimport { PocostingComponent } from './components/modal/pocosting/pocosting.component';\r\nimport { ProductviewComponent } from './components/modal/productview/productview.component';\r\nimport { TrackingComponent } from './components/modal/tracking/tracking.component';\r\nimport { TransferQtyComponent } from './components/inventory/products/modal/transfer-qty/transfer-qty.component';\r\nimport { SerialComponent } from './components/inventory/products/modal/serial/serial.component';\r\nimport { PrintlabelComponent } from './components/modal/printlabel/printlabel.component';\r\nimport { MakepaymentComponent } from './components/modal/makepayment/makepayment.component';\r\nimport { DocumentsComponent } from './components/modal/documents/documents.component';\r\nimport { VendorpaymentComponent } from './components/modal/vendorpayment/vendorpayment.component';\r\nimport { ItemcodelistComponent } from './components/modal/itemcodelist/itemcodelist.component';\r\nimport { ArstatementsComponent } from './components/modal/arstatements/arstatements.component';\r\nimport { ApstatementComponent } from './components/modal/apstatement/apstatement.component';\r\nimport { ShippingportComponent } from './components/modal/shippingport/shippingport.component';\r\nimport { DSCcodeComponent } from './components/modal/dsccode/dsccode.component';\r\nimport { QbonlinemodalComponent } from './components/modal/qbonlinemodal/qbonlinemodal.component';\r\nimport { GenericintegrationComponent } from './components/modal/genericintegration/genericintegration.component';\r\nimport { AssetassignmentComponent } from './components/modal/assetassignment/assetassignment.component';\r\nimport { AssetservicelogComponent } from './components/modal/assetservicelog/assetservicelog.component';\r\nimport { PurchaseinvoicepaymentComponent } from './components/modal/purchaseinvoicepayment/purchaseinvoicepayment.component';\r\nimport { PurchaserequestitemhistoryComponent } from './components/modal/purchaserequestitemhistory/purchaserequestitemhistory.component';\r\nimport { PurchaserequestitemanaylsisComponent } from './components/modal/purchaserequestitemanaylsis/purchaserequestitemanaylsis.component';\r\nimport { AgmCoreModule, MapsAPILoader } from '@agm/core';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { ReportgenericprintComponent } from './components/modal/reportgenericprint/reportgenericprint.component';\r\nimport { ReviewTransactionsActionColumn, ReviewtransactionsComponent } from './components/modal/reviewtransactions/reviewtransactions.component';\r\nimport { LedgersComponent } from './components/modal/ledgers/ledgers.component';\r\nimport { ProductcatalogComponent } from './components/modal/productcatalog/productcatalog.component';\r\nimport { AssemblycatalogComponent } from './components/modal/assemblycatalog/assemblycatalog.component';\r\n\r\nimport { CustomersiteComponent } from './components/modal/customersite/customersite.component';\r\nimport { AddmarkerModalComponent } from './components/specmap/markers/addmarker/addmarker.component';\r\nimport { CustomerlistComponent } from './components/modal/customerlist/customerlist.component';\r\nimport { SalesrequestComponent } from './components/modal/salesrequest/salesrequest.component';\r\nimport { PurchaserequestComponent } from './components/modal/purchaserequest/purchaserequest.component';\r\nimport { ServiceitemComponent } from './components/servicemanager/servicelineitems/serviceitem/serviceitem.component';\r\n// import { ReviewtransactionsComponent } from './components/modal/reviewtransactions/reviewtransactions.component';\r\nimport { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';\r\nimport { ModalContactsComponent } from './components/modal/contacts/contacts.component';\r\nimport { DeviceComponent } from './components/modal/device/device.component';\r\nimport { SiteComponent } from './components/modal/site/site.component';\r\nimport { ScheduleComponent } from './components/scheduler/schedule/schedule.component';\r\nimport { SitesmodalComponent } from './components/modal/sitesmodal/sitesmodal.component';\r\nimport { EditassessmentComponent } from './components/editprofile/editassessment/editassessment.component';\r\nimport { BarRatingModule } from \"ngx-bar-rating\";\r\nimport { QuotemodalComponent } from './components/modal/quotemodal/quotemodal.component';\r\nimport { PickuporderComponent } from './components/modal/pickuporder/pickuporder.component';\r\nimport { Productcatlog4purchaseComponent } from './components/modal/productcatlog4purchase/productcatlog4purchase.component';\r\nimport { CustomerContactsModalComponent } from './components/modal/addcontact/addcontact.component';\r\nimport { SupplierContactsModalComponent } from './components/modal/addsupplier/addsupplier.component';\r\nimport { SuppliercontactComponent } from './components/modal/suppliercontact/suppliercontact.component';\r\nimport { AddcardComponent } from './components/modal/addcard/addcard.component';\r\nimport { urlSafePipe } from './components/modal/addcard/urlSafe.pipe';\r\nimport { SinglebillpaymentComponent } from './components/modal/singlebillpayment/singlebillpayment.component';\r\nimport { SinglereceivepaymentComponent } from './components/modal/singlereceivepayment/singlereceivepayment.component';\r\nimport { AuditComponent } from './components/modal/audit/audit.component';\r\nimport { ChequetrackingComponent } from './components/modal/chequetracking/chequetracking.component';\r\nimport { ReceivedchequetrackingComponent } from './components/modal/receivedchequetracking/receivedchequetracking.component';\r\nimport { ResizeBorderComponent } from './components/modal/resize/resize-border.component';\r\nimport { ResizeModule } from './components/modal/resize/resize-border.module';\r\nimport { CustomerListModule } from './components/servicemanager/servicecontracts/customerlist/customerlist.module';\r\nimport { ProjjoblistpomodalComponent } from './components/modal/projjoblistpomodal/projjoblistpomodal.component';\r\nimport { DepartmentmodalComponent } from './components/modal/departmentmodal/departmentmodal.component';\r\nimport { TrackingModule } from './components/tracking/tracking.module';\r\nimport { AgmDirectionModule } from 'agm-direction';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { SerialsmodalComponent } from './components/modal/serialsmodal/serialsmodal.component';\r\nimport { ComposeemailwithattachmentComponent } from './components/modal/composeemailwithattachment/composeemailwithattachment.component';\r\nimport { AuthorizationModalComponent } from './components/modal/authorization/authorization.component';\r\nimport { DeviceInventoryComponent } from './components/modal/deviceinventory/deviceinventory.component';\r\nimport { LoanApplicationModalComponent } from './components/modal/loanapplication/loanapplication.component';\r\nimport { PartysmodalModule } from './components/modal/partysmodal/partysmodal.module';\r\nimport { ModalCreateOfferComponent } from './components/modal/createoffer/createoffer.component';\r\nimport { COAModalComponent } from './components/modal/coamodal/coamodal.component';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { CustomerProjJoblistModule } from './components/modal/customerprojjoblistmodal/customerprojjoblistmodal.module';\r\nimport { ExpenseReqModalComponent } from './components/modal/expensereqmodal/expensereq.component';\r\nimport { ProjjoblistModule } from './components/modal/projjoblistmodal/projjoblistmodal.module';\r\nimport { SupplierListModule } from './components/modal/supplier-list/supplier-list.module';\r\nimport { SourcelistModule } from './components/modal/sourcelist/sourcelist.module';\r\nimport { EmpAdhocPaymentListModule } from './components/modal/empadhocpayments/empadhocpayments.module';\r\nimport { DefaultProductSearchModalComponent } from './components/modal/defaultproductsearchmodal/defaultproductsearchmodal.component';\r\n\r\nvar fingerprint = getBrowserFingerprint({\r\n hardwareOnly: true,\r\n enableWebgl: true\r\n});\r\n\r\nexport function createConfig(): SignalRConfiguration {\r\n let config = new SignalRConfiguration();\r\n config.url = environment.API_URL;//environment.API_URL;\r\n config.hubName = \"chathub\";\r\n // config.qs = { type: '' };\r\n config.qs = { userId: fingerprint };\r\n config.logging = true;\r\n config.executeErrorsInZone = true;\r\n config.executeEventsInZone = true;\r\n config.executeStatusChangeInZone = true;\r\n return config;\r\n}\r\n\r\n@NgModule({\r\n declarations: [AppComponent, TicketCopyComponent, TechCopyComponent, ImportComponent, ComposeemailComponent, ComposeemailwithattachmentComponent, QuickaddproductComponent, PaymentComponent, CreditComponent, MilestoneComponent, CustomerannouncementsComponent, GenericprintComponent, SafePipe, MasterdataComponent, ReceivepoComponent, ReceiveserilizeditemsComponent, ShortshipmentpoComponent, PocostingComponent, ProductviewComponent, TrackingComponent, SerialComponent, PrintlabelComponent, MakepaymentComponent, DocumentsComponent, VendorpaymentComponent, ItemcodelistComponent, ArstatementsComponent, ApstatementComponent, ShippingportComponent, DSCcodeComponent, QbonlinemodalComponent, GenericintegrationComponent, AssetassignmentComponent, AssetservicelogComponent, PurchaseinvoicepaymentComponent,\r\n PurchaserequestitemanaylsisComponent, PurchaserequestitemhistoryComponent, ReportgenericprintComponent, ReviewtransactionsComponent, ReviewTransactionsActionColumn, LedgersComponent, ProductcatalogComponent, AssemblycatalogComponent, CustomersiteComponent, AddmarkerModalComponent, CustomerlistComponent, SalesrequestComponent, PurchaserequestComponent, ServiceitemComponent, ModalContactsComponent, ModalCreateOfferComponent, DeviceComponent, SiteComponent, ScheduleComponent, SitesmodalComponent, EditassessmentComponent, QuotemodalComponent, PickuporderComponent, Productcatlog4purchaseComponent, CustomerContactsModalComponent, SupplierContactsModalComponent, SuppliercontactComponent, AddcardComponent, urlSafePipe, SinglebillpaymentComponent, SinglereceivepaymentComponent, AuditComponent, ChequetrackingComponent, ReceivedchequetrackingComponent, ProjjoblistpomodalComponent, DepartmentmodalComponent, SerialsmodalComponent, AuthorizationModalComponent, DeviceInventoryComponent, LoanApplicationModalComponent, COAModalComponent, ExpenseReqModalComponent, DefaultProductSearchModalComponent],\r\n imports: [\r\n BrowserAnimationsModule,\r\n BrowserModule.withServerTransition({ appId: 'serverApp' }),\r\n AppRoutingModule,\r\n SignalRModule.forRoot(createConfig), //Uncomment for singalr working\r\n DashboardModule,\r\n AuthModule,\r\n HomepageModule,\r\n SharedModule,\r\n ProductsModule,\r\n BrowserModule,\r\n FormsModule,\r\n HttpClientModule,\r\n NgxUiLoaderModule,\r\n [SweetAlert2Module.forRoot()],\r\n ToastrModule.forRoot(),\r\n FileUploadModule,\r\n NgbModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n PosModule,\r\n TrackingModule,\r\n NgxPrintModule,\r\n NgxPrintElementModule,\r\n NgxFileDropModule,\r\n CommonModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatMomentDateModule,\r\n AutocompleteLibModule,\r\n CKEditorModule,\r\n MatChipsModule,\r\n MatAutocompleteModule,\r\n ReactiveFormsModule,\r\n NgxCaptureModule,\r\n Ng2SmartTableModule,\r\n AngularMultiSelectModule,\r\n BarRatingModule,\r\n ResizeModule,\r\n CustomerListModule,\r\n SupplierListModule,\r\n ProjjoblistModule,\r\n PartysmodalModule,\r\n EmpAdhocPaymentListModule,\r\n SourcelistModule,\r\n CustomerProjJoblistModule,\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyAuoQSNu8Ct-jXbHFdjGLyhYy5Y_mNm3Y4',\r\n libraries: ['places']\r\n }),\r\n AgmDirectionModule,\r\n NgSelectModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptor,\r\n multi: true\r\n },\r\n DatePipe,\r\n ExcelService,\r\n ChatSignalr,\r\n Events,\r\n BnNgIdleService,\r\n ConversionService,\r\n AppComponent,\r\n ],\r\n exports: [ResizeBorderComponent],\r\n bootstrap: [AppComponent],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class AppModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { EventEmitter, Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { modelComp, modelLogin } from '../../components/auth/login/modelLogin';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SalesServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n public hero: ''\r\n public expenseData: ''\r\n public customerIdForEdit: ''\r\n public editCustomerDetails: {}\r\n cartData = new EventEmitter();\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n //get leads\r\n getLeads(pg, searchtxt, categoryid, status, salesperson, country) {\r\n return this.http.get(this.baseUrl + 'api/leads/Get_LeadIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&categoryid=' + categoryid + '&status=' + status + '&salesperson=' + salesperson + '&country=' + country);\r\n }\r\n getLeadActivityLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Leads/Get_LeadActivityLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeadStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLeadStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n getLeadsDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/leads/Gett_LeadByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n }\r\n postLead(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/leads/Postt_Leads', data);\r\n }\r\n postLeadContacts(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Leads/Post_SaveLeadContacts', data);\r\n }\r\n getLeadContactsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Leads/Get_LeadContacts?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeadCommentsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Leads/Get_LeadComments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postLeadComments(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Leads/Post_SaveLeadComments', data);\r\n }\r\n //Sales Order List\r\n getSalesOrders(pg, searchtxt, fdate, edate, type, txntype, tpsync, status) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_SalesOrderIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&type=' + type + '&txntype=' + txntype + '&tpsync=' + tpsync + '&status=' + status);\r\n }\r\n //salseRequest\r\n getSalesRequest(pg, type, status, fromdate, todate, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/SalesRequests/Get_SRIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postSalesRequests(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/SalesRequests/Postt_SalesRequest', data);\r\n }\r\n getSalesReqById(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesRequests/Gett_SalesRequestItemByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Tracking\r\n postInvoiceTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/invoices/Post_TrackingNotes', data);\r\n }\r\n postEstimateTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Quotes/Post_TrackingNotes', data);\r\n }\r\n postSoTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Post_TrackingNotes', data);\r\n }\r\n //Invoice List\r\n getInvoices(pg, searchtxt, fdate, edate, status, tpsync, type) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Get_InvoiceIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&status=' + status + '&tpsync=' + tpsync);\r\n }\r\n\r\n //quote\r\n getQuoteList(pg, searchtxt, fdate, edate, status, salesrep) {\r\n return this.http.get(this.baseUrl + 'api/Quotes/Get_QuoteIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&status=' + status + '&salesrep=' + salesrep);\r\n }\r\n getQuoteDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Quotes/Gett_QuoteByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n\r\n }\r\n //estimate\r\n getEstimates(pg, searchtxt, fdate, edate, tpsync, status, salesrep) {\r\n return this.http.get(this.baseUrl + 'api/Estimates/Get_EstimateIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync + '&status=' + status + '&salesrep=' + salesrep);\r\n }\r\n getEstimateDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Estimates/Gett_EstimateByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n\r\n }\r\n postEstimate(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Estimates/Postt_Estimate', data);\r\n\r\n }\r\n //get customer\r\n getCustomers(pg, searchtxt, level, currency, type, status) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_CustomerIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&level=' + level + '¤cy=' + currency + '&type=' + type + '&status=' + status);\r\n }\r\n getCustomerList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postcustomer(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_Customer', data);\r\n }\r\n //post customer childs\r\n postContact(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_CustomerContact', data);\r\n }\r\n postSites(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_CustomerSite', data);\r\n }\r\n postDevice(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_CustomerDevice', data);\r\n }\r\n postPayment(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_ReceivedPayments', data);\r\n }\r\n getCheckListGrp() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceChecklistGrp?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerContactByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerContactByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCustomerContact(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_CustomerContact?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //================Customer Tab APIs===================\r\n getChildCustomers(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_ChildCustomers?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerContacts(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerContacts?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerContracts(id, fromdate, todate, cno) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerContracts?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&cno=' + cno);\r\n }\r\n\r\n getCustomerCards(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerCards?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerDevices(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerDevices?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerDocuments(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerDocuments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerExpenses(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerExpenses?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerPayments(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerPayments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerSites(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerSites?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerWalletLogs(id, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerWalletLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getCustomerWalletTranByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_CustomerWalletTranByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postWalletTransaction(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Post_CustomerWallet', data);\r\n }\r\n getCustomerProjects(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerProjects?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // getCustomerTickets(id) {\r\n // return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerTickets?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n // }\r\n\r\n getCustomerInvoices(id, fromdate, todate, invno) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerInvoices?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&invno=' + invno);\r\n }\r\n\r\n getCustomerTasks(id, searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerTasks?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getCustomerQuotes(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerQuotes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomerSalesOrders(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerSalesOrders?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n //invoice\r\n getInvList(invno) {\r\n return this.http.get(this.baseUrl + 'api/WebInvoices/Gett_invhdr?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + this.userprofile.email + '&invno=' + invno);\r\n }\r\n getInvDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Gett_InvoiceByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomerType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n lateFeesTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/LatefeeTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeviceDetials(customerid, id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerDeviceByID?id=' + id + '&customerid=' + customerid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postInv(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/invoices/Postt_Invoice', data);\r\n }\r\n getInvStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInvTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPaymentTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postSalesOrder(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Postt_SalesOrder', data);\r\n }\r\n postQuote(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Quotes/Postt_Quote', data);\r\n }\r\n getSalesOrderDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_SalesOrderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSOTrackingNotes(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_TrackingNotes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInvTrackingNotes(id) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Get_TrackingNotes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //get standing order\r\n standingOrderList(pg, searchtxt, fdate, edate, routeid, status) {\r\n return this.http.get(this.baseUrl + 'api/StandingOrders/Get_StandingOrderIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&routeid=' + routeid + '&status=' + status)\r\n }\r\n\r\n standingOrderById(id) {\r\n return this.http.get(this.baseUrl + 'api/StandingOrders/Gett_StandingOrderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //receive payment \r\n getReceivePaymentList(partyid, fdate, tdate, docid, party_type) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_PartyReceivables?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fdate=' + fdate + '&tdate=' + tdate + '&docid=' + docid + '&partyid=' + partyid + '&party_type=' + party_type);\r\n }\r\n getCustCreditBal(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_CustomerCredits?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n\r\n postCustomerCredit(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Post_CreditPayments', data);\r\n }\r\n deleteCustomerCredit(id, avail_credit) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_CustomerCredits?id=' + id + '?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&avail_credit=' + avail_credit)\r\n }\r\n getCreditInvList(partyid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPartyReceivables?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&partyid=' + partyid);\r\n }\r\n getfeedback(customerid, fromdate, todate, status) {\r\n // return this.http.get(this.baseUrl + 'api/Customers/Get_CustomerFeedbacks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid)\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_CustomerFeedbacks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status)\r\n }\r\n getfeedbackById(id, customerid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerFeedbackByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid)\r\n }\r\n //create salesorder to invoice\r\n createSalesorder2Inv(id) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Gett_SalesOrder2Invoice?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n //create qoute to invoice\r\n createQoute2Inv(id) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Gett_Quote2Invoice?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n //create sales order from qoute\r\n createQoute2Salesorder(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_Quote2SalesOrder?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n //create ticket from qoute\r\n createQoute2Ticket(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_Quote2Ticket?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //standing orders\r\n postStandingOrder(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/StandingOrders/Postt_StandingOrder', data);\r\n }\r\n getRouteList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDeliveryRoutes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getMergeInvoice(customer) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Get_Invoices2Merge?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customer=' + customer);\r\n }\r\n getInvBulk(customer) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Get_DueInvoices2SendAsBulk?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customer=' + customer);\r\n }\r\n postMergeInvoice(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Invoices/Post_InvoicesMerge', data);\r\n }\r\n postBulkInv(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Emailer/Post_BulkInvoiceMailer', data);\r\n }\r\n getPickItem(refid, refno, customerid, prodid, qty2pick, uom, module) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_Inventory2Pickup?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&refid=' + refid + '&refno=' + refno + '&customerid=' + customerid + '&prodid=' + prodid + '&qty2pick=' + qty2pick + '&uom=' + uom + '&module=' + module);\r\n }\r\n postPickItem(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Post_PickupInventory', data);\r\n }\r\n getPickupOrder(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_PickupOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getUpdatePickupOrder(id, status, notes) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_UpdatePickupOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&status=' + status + '¬es=' + notes);\r\n }\r\n getPurchaseRequest(id, flag) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_SalesOrder2PurchaseRequest?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&flag=' + flag);\r\n }\r\n postUpdateSalesOrderTxnType(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Post_UpdateTxnType', data);\r\n }\r\n //salesorder\r\n getPricingTypeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPricingTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //temp\r\n getProfile() {\r\n\r\n }\r\n //delivery route\r\n getDeliveryRoute(description, code) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeliveryRouteIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description + '&code=' + code)\r\n }\r\n postDeliveryRoute(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeliveryRoute', data);\r\n }\r\n getDeliveryRoutByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeliveryRouteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDeliveryRoutByID(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeliveryRoute?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n siteMaterial(sideid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_SiteMaterials?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + sideid);\r\n }\r\n postMaterial(data) {\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_SiteMaterial', data);\r\n }\r\n\r\n getMaterialbyID(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Get_SiteMaterialByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteMaterial(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_SiteMaterial?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n addFeedback(data) {\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_CustomerFeedback', data);\r\n }\r\n getCustomerSiteById(id, customerid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerSiteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n getFeedbackDetailsByid(id, customerid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerFeedbackByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n deleteSalesOrderLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/SalesOrders/Delete_SalesOrderLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalesOrder(id) {\r\n return this.http.delete(this.baseUrl + 'api/SalesOrders/Delete_SalesOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteInvoiceLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Invoices/Delete_InvoiceLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteInvoice(id) {\r\n return this.http.delete(this.baseUrl + 'api/Invoices/Delete_Invoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteQouteLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Quotes/Delete_QuoteLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCustomer(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_Customer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteEstimateLine(id) {\r\n return this.http.delete(this.baseUrl + 'api/Estimates/Delete_EstimateLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n deleteStandingOrderLine(id) {\r\n return this.http.delete(this.baseUrl + 'api/StandingOrders/Delete_StandingOrderLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n deleteCustomerSite(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_CustomerSite?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCustomerDevice(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_CustomerDevice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n createSalesRequest2SalesOrder(data) {\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Post_SalesRequest2SalesOrder', data);\r\n }\r\n getCustomerTicket(customerid, siteid, deviceid) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Gett_CustomerTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + this.userprofile.email + '&customerid=' + customerid + '&siteid=' + siteid + '&deviceid=' + deviceid);\r\n }\r\n getCustomerContactList(customerid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomerContacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n\r\n }\r\n getCustomerStatement(customerid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/GetCustomerStatement?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postSalesReqItem(data) {\r\n return this.http.post(this.baseUrl + 'api/SalesRequests/Postt_SalesRequest', data);\r\n\r\n }\r\n deleteSalesRequestItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/SalesRequests/Delete_SalesRequestItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalesItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/SalesRequests/Delete_SalesRequest?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSalesRequestById(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesRequests/Gett_SalesRequestByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n approveSalesRequest(ids) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequets/ApprovePRS?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + ids);\r\n }\r\n deleteQuote(id) {\r\n return this.http.delete(this.baseUrl + 'api/Quotes/Delete_Quote?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteEstimate(id) {\r\n return this.http.delete(this.baseUrl + 'api/Estimates/Delete_Estimate?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //dispute \r\n getDisputeList(pg, searchtext, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Disputes/Get_DisputeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtext + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n postDispute(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Disputes/Postt_Dispute', data);\r\n }\r\n postDisputeLog(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Disputes/Postt_DisputeLog', data);\r\n }\r\n getDisputeListByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Disputes/Gett_DisputeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDisputeLog(id) {\r\n return this.http.get(this.baseUrl + 'api/Disputes/Gett_DisputeLogByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dispute_id=' + id);\r\n }\r\n deleteDispute(id) {\r\n return this.http.delete(this.baseUrl + 'api/Disputes/Delete_CustomerDispute?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDisputeLog(id) {\r\n return this.http.delete(this.baseUrl + 'api/Disputes/Delete_DisputeLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteLeadContact(id) {\r\n return this.http.delete(this.baseUrl + 'api/Leads/Delete_LeadContact?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPayNow(id) {\r\n return this.http.get(this.baseUrl + 'api/Disputes/Gett_DisputeLogByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dispute_id=' + id);\r\n }\r\n getInvoicePayments(id) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Gett_InvoiceTransactions?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSOPayments(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_SalesOrderTransactions?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //support emails \r\n getPullEmails() {\r\n return this.http.get(this.baseUrl + 'api/O365/PullEmails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSupportEmail(pg, searchtext, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/O365/Gett_StaggingEmails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtext + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getSupportEmailById(id) {\r\n return this.http.get(this.baseUrl + 'api/O365/Gett_SupportMailByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSupportMailReply(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/O365/Postt_SupportMailReply', data);\r\n }\r\n getSupportEmailReplies(id) {\r\n return this.http.get(this.baseUrl + 'api/O365/Gett_SupportMailReplies?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Sales Types\r\n getInvoiceType(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Get_InvoiceTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=1&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt)\r\n }\r\n getInvoiceTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Gett_InvoiceTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteInvoiceType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Invoices/Delete_InvoiceType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postInvoiceType(data) {\r\n return this.http.post(this.baseUrl + 'api/Invoices/Postt_InvoiceType', data);\r\n }\r\n //SO Types\r\n getSOType(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Get_SOTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=1&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt)\r\n }\r\n getSOTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_SOTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSOType(id) {\r\n return this.http.delete(this.baseUrl + 'api/SalesOrders/Delete_SOTtype?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSOType(data) {\r\n return this.http.post(this.baseUrl + 'api/SalesOrders/Postt_SOType', data);\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { SalesServices } from '../../../sales.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SerialComponent } from '../serial/serial.component';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\n\r\n@Component({\r\n selector: 'app-pickitem',\r\n templateUrl: './pickitem.component.html',\r\n styleUrls: ['./pickitem.component.scss']\r\n})\r\nexport class PickitemComponent implements OnInit {\r\n @ViewChild('customerid') customerid;\r\n @ViewChild('prodid') prodid;\r\n @ViewChild('orderid') orderid;\r\n @ViewChild('tiid') tiid;\r\n @ViewChild('binLocation') binLocation;\r\n @ViewChild('params') params;\r\n binlocation: any;\r\n fieldsetDisabled: boolean = false;\r\n keyword2 = 'Text';\r\n closeResult: string;\r\n pickItemDetails: any = {\r\n \"createdate\": null,\r\n \"companyid\": null,\r\n \"prodid\": null,\r\n \"tiid\": null,\r\n \"module\": null,\r\n \"username\": null,\r\n \"createby\": null,\r\n \"tobinlocation\": '',\r\n \"frombinlocation\": '',\r\n \"qty\": 0,\r\n \"deplete_qty\": 0,\r\n \"qtycount\": 0,\r\n \"damageqty\": 0,\r\n \"overageqty\": 0,\r\n \"action\": null,\r\n \"msg\": null,\r\n \"ttype\": null,\r\n \"refid\": null,\r\n \"serial\": '',\r\n \"ilc\": null,\r\n \"description\": null,\r\n \"isserilized\": false,\r\n \"customerid\": null,\r\n \"adjusttype\": null,\r\n \"qty2pick\": 0,\r\n \"warrantyexpiry\": null,\r\n };\r\n isView: boolean;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n duplicustomerid: any;\r\n dupliprodid: any;\r\n dupliorderid: any;\r\n pickItemDetailsfrombins: any;\r\n pickupOrder: any;\r\n constructor(\r\n private service: SalesServices,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private toastr: NotificationService\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n }\r\n\r\n getPickItem() {\r\n this.loader.start();\r\n this.service.getPickItem(this.pickupOrder.refid, this.pickupOrder.refno, this.pickupOrder.customerid, this.pickupOrder.prodid, this.pickupOrder.qty2pick, this.pickupOrder.uom, this.pickupOrder.module).subscribe(res => {\r\n this.loader.stop();\r\n this.pickItemDetails = res;\r\n this.pickItemDetailsfrombins = this.pickItemDetails.frombins;\r\n this.pickItemDetails.frombinlocation = '';\r\n if (this.pickItemDetails.qty2pick == 0) {\r\n this.closeModal();\r\n }\r\n if (this.pickItemDetails.isserilized == true) {\r\n this.isView = false;\r\n this.pickItemDetails.qtycount = 1\r\n this.binlocation ? this.selectEvent(this.binlocation) : null;\r\n } else {\r\n this.isView = true;\r\n }\r\n environment.production ? '' : console.log(' get pick item list', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading pick item list ', err);\r\n });\r\n }\r\n savePickItem() {\r\n var picObj = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdateformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.pickItemDetails.prodid,\r\n \"module\": this.pickItemDetails.module,\r\n \"createby\": this.userdata.email,\r\n \"tobinlocation\": this.pickItemDetails.tobinlocation,\r\n \"frombinlocation\": this.pickItemDetails.frombinlocation,\r\n \"qty\": this.pickItemDetails.qty,\r\n \"qty2pick\": this.pickItemDetails.qty2pick,\r\n \"qtycount\": this.pickItemDetails.qtycount,\r\n \"msg\": this.pickItemDetails.msg,\r\n \"uom\": this.pickItemDetails.uom,\r\n \"ttype\": this.pickItemDetails.ttype,\r\n \"refid\": this.pickItemDetails.refid,\r\n \"refno\": this.pickItemDetails.orderno,\r\n \"serial\": this.pickItemDetails.serial,\r\n \"ilc\": this.pickItemDetails.ilc,\r\n \"description\": this.pickItemDetails.description,\r\n \"isserilized\": this.pickItemDetails.isserilized,\r\n \"customerid\": this.pickItemDetails.customerid,\r\n \"adjusttype\": this.pickItemDetails.adjusttype,\r\n \"warrantyexpiry\": this.pickItemDetails.warrantyexpiry,\r\n \"frombins\": this.pickItemDetails.frombinlocation,\r\n \"serials\": this.pickItemDetails.serial\r\n }\r\n\r\n this.loader.start();\r\n this.service.postPickItem(picObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n // this.modalService.dismissAll();\r\n this.pickupOrder.qty2pick = (this.pickupOrder.qty2pick ? Number(this.pickupOrder.qty2pick) : 0) - (this.pickItemDetails.qtycount ? Number(this.pickItemDetails.qtycount) : 0);\r\n this.getPickItem();\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post pick item list ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n selectBinLocation() {\r\n let obj = this.pickItemDetails.frombins.find(o => parseFloat(o.Value) === parseFloat(this.pickItemDetails.frombinlocation));\r\n this.pickItemDetails.qty = obj.Value2;\r\n }\r\n checkQty() {\r\n if (Number(this.pickItemDetails.qtycount) > this.pickItemDetails.qty) {\r\n this.toastr.Error('Entered qty should be less than instock qty.')\r\n this.pickItemDetails.qtycount = 0;\r\n return false;\r\n }\r\n if (Number(this.pickItemDetails.qtycount) > this.pickItemDetails.qty2pick) {\r\n this.toastr.Error('Entered qty should not be larger than qty to be pick.')\r\n this.pickItemDetails.qtycount = 0;\r\n return false;\r\n }\r\n }\r\n openserial() {\r\n var modalRef = null;\r\n this.isView = true;\r\n // this.fieldsetDisabled = true;\r\n modalRef = this.modalService.open(SerialComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = this.pickItemDetails;\r\n\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n // this.getSerial();\r\n modalRef.result.then((result) => {\r\n console.log(result);\r\n this.binlocation = null;\r\n this.getPickItem();\r\n this.closeResult = `Closed with: ${result}`;\r\n environment.production ? '' : console.log('closed');\r\n }, (reason) => {\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.pickupOrder = this.params;\r\n this.getPickItem();\r\n }\r\n\r\n selectEvent(item) {\r\n this.pickItemDetails.frombinlocation = item.Value;\r\n let obj = this.pickItemDetails.frombins.find(o => parseFloat(o.Value) === parseFloat(this.pickItemDetails.frombinlocation));\r\n this.pickItemDetails.qty = obj.Value2;\r\n this.pickItemDetails.serial = '';\r\n }\r\n\r\n onFocused($event) {\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
Pick Item
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n Please select location\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n \r\n \r\n
\r\n Add\r\n Serial\r\n
\r\n
\r\n
\r\n
\r\n Please select serial\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { PickitemComponent } from '../pickitem/pickitem.component';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\n\r\n@Component({\r\n selector: 'app-serial',\r\n templateUrl: './serial.component.html',\r\n styleUrls: ['./serial.component.scss']\r\n})\r\nexport class SerialComponent implements OnInit {\r\n serial: any = {\r\n status: '',\r\n binid: ''\r\n }\r\n @Input() fromParent;\r\n @Input() editData;\r\n @Input() prodid;\r\n @Input() orderid;\r\n @Input() customerid;\r\n\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n ownItemProdBinList: any = [];\r\n actionType: any = []\r\n closeResult: string;\r\n allBinList: any = [];\r\n statusList: any = [];\r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private commonService: CommonServices,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n if (this.editData != null) {\r\n this.serial = this.editData;\r\n }\r\n this.commonService.getComboEnums('serialnostatus').subscribe(res => {\r\n this.statusList = res;\r\n })\r\n this.service.getBinLocationList().subscribe(res => {\r\n this.allBinList = res;\r\n environment.production ? '' : console.log(' bin list data ', this.allBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n\r\n\r\n closemodal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n postSerial() {\r\n if (this.serial.binid) {\r\n this.serial.binid = parseFloat(this.serial.binid)\r\n }\r\n var data = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"createby\": this.userdata.email,\r\n \"companyid\": this.userdata.companyid,\r\n \"lastupdated\": this.datepipe.transform(this.serial.lastupdated, this.userdata.postdatetimeformat),\r\n \"serial\": this.serial.serial,\r\n \"updateby\": this.serial.updateby,\r\n \"id\": this.serial.id,\r\n \"prodid\": this.fromParent.prodid,\r\n \"pon\": this.serial.pon,\r\n \"purchasefrom\": this.serial.purchasefrom,\r\n \"purchasedate\": this.datepipe.transform(this.serial.purchasedate, this.userdata.postdatetimeformat),\r\n \"manufacturer\": this.serial.manufacturer,\r\n \"saledate\": this.datepipe.transform(this.serial.saledate, this.userdata.postdatetimeformat),\r\n \"orderno\": this.serial.orderno,\r\n \"notes\": this.serial.notes,\r\n \"warrantyexpirydate\": this.datepipe.transform(this.serial.saledate, this.userdata.postdatetimeformat),\r\n \"status\": this.serial.status,\r\n \"binid\": this.serial.binid\r\n }\r\n\r\n environment.production ? '' : console.log('post transfer datais', data);\r\n\r\n this.loader.start();\r\n this.service.postSerial(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.activeModal.close(this.customerid);\r\n environment.production ? '' : console.log('post product serial response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
Serial
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class accountServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n //account data\r\n getChartOfAccountData(searchtxt, account_type, status) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_COAIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&account_type=' + account_type + '&status=' + status)\r\n }\r\n\r\n getAccountType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAccountTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDetailType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDetailTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAccountGroups(acctype) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAccountGroups?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&acctype=' + acctype)\r\n }\r\n getAccountDetailTypes(acctype) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAccountDetailTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&acctype=' + acctype)\r\n }\r\n\r\n getSubAccount(acctype) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSubAccounts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&acctype=' + acctype)\r\n }\r\n deleteCOA(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_COA?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAccountCode(acctype, dtype) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetAccountCode?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + acctype + '&dtype=' + dtype)\r\n }\r\n getCOADetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_COAByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCoa(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_COA', data)\r\n }\r\n\r\n getfinancialstatements(fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_FinancialStatements?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fdate + '&todate=' + tdate)\r\n }\r\n\r\n getJournals(pg, status, jno, journaltype, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Journals/Get_JournalIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&status=' + status + '&jno=' + jno + '&journaltype=' + journaltype + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getJournalsById(id, type) {\r\n return this.http.get(this.baseUrl + 'api/Journals/Get_JournalByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type)\r\n }\r\n deleteJournalsById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Journals/Delete_Journal?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getBatchTrans(pg, fromdate, todate, batchno) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_BatchIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&fromdate=' + fromdate + '&todate=' + todate + '&batchno=' + batchno)\r\n }\r\n\r\n getBatchById(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_BatchByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getLoanDocuments(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_LoanDocuments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postBatch(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_Batch', data)\r\n }\r\n undoBatch(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Undo_Batch?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBatchEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_BatchEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n undoReceivedPayment(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Undo_PaymentsReceived?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n undoPaidPayment(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Undo_PaymentsPaid?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n approveBatch(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Approve_Batch?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postBatchTransactions(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Batch_Transactions', data)\r\n }\r\n\r\n getReviewTrans(fromdate, todate, txtype, narr) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_PendingJournals?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&txtype=' + txtype + '&narr=' + narr)\r\n }\r\n\r\n postJournal(data) {\r\n return this.http.post(this.baseUrl + 'api/Journals/Postt_SaveJournal', data);\r\n }\r\n postTranscationClass(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AccountTranscationClass', data);\r\n }\r\n getJournltype() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetJournalType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getJournalstatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetJournalStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postARstatement(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_ARStatements', data);\r\n }\r\n postAPstatement(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_APStatements', data);\r\n }\r\n\r\n\r\n getLedgers(coa, name, memo, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Ledgers/Get_Ledgers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&coa=' + coa + '&name=' + name + '&memo=' + memo + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n postLedgers(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Ledgers/Post_Ledgers', data);\r\n }\r\n\r\n getCustomerDeposits(pg, fromdate, todate, number, status) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_Deposits?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&fromdate=' + fromdate + '&todate=' + todate + '&number=' + number + '&status=' + status);\r\n }\r\n getCustomerDepositById(id, fdate, tdate, party_name) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_DepositByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fdate=' + fdate + '&tdate=' + tdate + '&party_name=' + party_name)\r\n }\r\n\r\n getdepositType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDepositType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postCustomerDeposit(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_Deposit', data);\r\n }\r\n\r\n getloanList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLoans?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getDepositStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDepositStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getChequeBooks(pg, bankid, name, number, status) {\r\n return this.http.get(this.baseUrl + 'api/Cheques/Gett_ChequeBooks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&bankid=' + bankid + '&name=' + name + '&number=' + number + '&status=' + status)\r\n }\r\n\r\n getChequeBooksById(id) {\r\n return this.http.get(this.baseUrl + 'api/Cheques/Gett_ChequeBookById?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getChequeStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetChequeStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getBanks() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getChequeIssueById(id, cbid) {\r\n return this.http.get(this.baseUrl + 'api/Cheques/Gett_ChequeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&chqbokid=' + cbid)\r\n }\r\n getIssuedCheques(id) {\r\n return this.http.get(this.baseUrl + 'api/Cheques/Get_IssuedCheques?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&chqbokid=' + id)\r\n }\r\n\r\n postChequeBooks(data) {\r\n return this.http.post(this.baseUrl + 'api/Cheques/Post_ChequeBook', data);\r\n }\r\n\r\n postChequeIssue(data) {\r\n return this.http.post(this.baseUrl + 'api/Cheques/Post_ChequeIssued', data);\r\n }\r\n\r\n getPayments(fromdate, todate, number, status) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_Payments?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&number=' + number + '&status=' + status);\r\n }\r\n\r\n getFinancialCharges(customerid, asondate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_FinancialCharges?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&asondate=' + asondate);\r\n }\r\n postFinancialCharges(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_FinancialCharges', data);\r\n }\r\n getGLbanks() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGLBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getpaymenttype(fieldname) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetComboEnums?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name_of_field=' + fieldname);\r\n }\r\n\r\n getSupplierName() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSuppliers() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliersName?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getPaybill(party_name, partyid, party_type, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_PayBills?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&party_type=' + party_type + '&party_name=' + party_name + '&partyid=' + partyid + '&fdate=' + fdate + '&tdate=' + tdate)\r\n }\r\n\r\n postBillPayment(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_BillPayments', val);\r\n }\r\n\r\n getBankTransaction(bankid) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_BankTranFiles?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bankid=' + bankid);\r\n }\r\n getExcludeTran(id) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_ExcludeTran?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + id);\r\n }\r\n getUndoTran(id, type) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_UndoTran?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type)\r\n }\r\n deleteTran(id, tab) {\r\n return this.http.delete(this.baseUrl + 'api/Bankings/Delete_Tran?banktxnid=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tab=' + tab)\r\n }\r\n getFindTranMatch(banktxnid, banktxntype) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_FindTranMatches?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + banktxnid + '&banktxntype=' + banktxntype);\r\n }\r\n getBankTranMapped(banktranhdrid, banktxnid) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_GetBankTranMapped?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktranhdrid=' + banktranhdrid + '&banktxnid=' + banktxnid);\r\n }\r\n\r\n getBankTrSplitData(banktxnid) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_SplitTranData?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + banktxnid);\r\n\r\n }\r\n getBankTransMatches(bankid, banktxntype, banktxnamt) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_BankTranMatches?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bankid=' + bankid + '&banktxntype=' + banktxntype + '&banktxnamt=' + banktxnamt)\r\n }\r\n postMatchTransactions(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_MatchTransactions', data)\r\n }\r\n postSplitResolve(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_SplitResolve', data)\r\n }\r\n\r\n getbankStatement(type, banktranhdrid, status) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_BankStatements?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktranhdrid=' + banktranhdrid + '&type=' + type + '&status=' + status)\r\n }\r\n\r\n postBankStatement(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_BankStatement', data)\r\n }\r\n getBankTransactions(pg, type, bankid, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_BankTranIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&bankid=' + bankid + '&searchtxt=' + searchtxt)\r\n }\r\n postUploadBankTransactions(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_UploadBankTransactions', data)\r\n }\r\n getBankReconcileData(banktranhdrid) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_BankReconcileData?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktranhdrid=' + banktranhdrid);\r\n }\r\n postUpdateReconcile(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_UpdateTranReconcile', data)\r\n }\r\n postUpdateBankUploadHdr(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_UpdateBankUploadHdr', data)\r\n }\r\n deleteUploadedTranFile(id) {\r\n return this.http.delete(this.baseUrl + 'api/Bankings/Delete_BankUpload?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBankFiles(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_BankFiles', data)\r\n }\r\n\r\n getTabGridData(bank, type, fdate, tdate, tab) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_TabGridData?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bankid=' + bank + '&banktxtype=' + type + '&fdate=' + fdate + '&tdate=' + tdate + '&tab=' + tab)\r\n }\r\n getTrasanctionTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTxTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postMatchSingleTransaction(banktxnid, txnid, banktxntype) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Match_Transacton?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + banktxnid + '&txnid=' + txnid + '&banktxntype=' + banktxntype);\r\n }\r\n getSplitTransaction(banktxnid) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/splittran?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + banktxnid);\r\n }\r\n postSplitTransaction(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_SaveSplitTran', data);\r\n }\r\n getUndoTransaction(banktxnid, type) {\r\n return this.http.get(this.baseUrl + 'api/Bankings/Get_UndoTran?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&banktxnid=' + banktxnid + '&type=' + type);\r\n }\r\n getGLAccount() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGLAccounts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getVendorPaymentbyId(id, fdate, tdate, supplierid, p_type) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_VendorPaymentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fdate=' + fdate + '&tdate=' + tdate + '&supplierid=' + supplierid + '&p_type=' + p_type)\r\n }\r\n\r\n postVendPayment(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_VendorPayment', data)\r\n }\r\n getTransactionClasses() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTranClasses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getBatchbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_BatchByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getARStatements(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_ARStatements?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid)\r\n }\r\n\r\n getPaymentsPaid(searchtxt, bankid, supplierid, currency, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_PaymentsPaid?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&bankid=' + bankid + '&supplierid=' + supplierid + '¤cy=' + currency + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n\r\n // PaymentReceived\r\n getPaymentReceived(searchtext, bankid, currency, mop, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_PaymentReceived?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + searchtext + '&bankid=' + bankid + '¤cy=' + currency + '&mop=' + mop + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getCreditNotesList(pg, cnno, type, status, fdate, edate, tpsync) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_CreditNoteIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + cnno + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync);\r\n }\r\n getCreditNotesbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_CreditNoteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postCrNotes(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_CreditNote', data);\r\n }\r\n deleteCrNote(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_CreditNote?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCrNoteLine(id, cnid) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_CreditNoteLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&cnid=' + cnid);\r\n }\r\n deleteCrNoteTransaction(id, cnid) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_CreditNoteTransaction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&cnid=' + cnid);\r\n }\r\n getDebitNotesList(pg, searchtxt, type, status, fdate, edate, tpsync) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_DebitNoteIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync);\r\n }\r\n getDebitNotesbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_DebitNoteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postDrNotes(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_DebitNote', data);\r\n }\r\n deleteDrNote(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_DebitNote?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDrNoteLine(id, dnid) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_DebitNoteLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dnid=' + dnid);\r\n }\r\n deleteDrNoteTransaction(id, dnid) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_DebitNoteTransaction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dnid=' + dnid);\r\n }\r\n createIncome(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_CreateIncome', data);\r\n }\r\n createInvoice(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_CreateInvoice', data);\r\n }\r\n createExpense(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_CreateExpense', data);\r\n }\r\n createLoanTransaction(data) {\r\n return this.http.post(this.baseUrl + 'api/Bankings/Post_LoanTransaction', data);\r\n }\r\n\r\n getIncomeType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetIncomeType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //other income\r\n getOtherIncomeList(pg, searchtxt, type, status, fdate, edate, tpsync) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Income/Get_IncomeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync);\r\n }\r\n getOtherIncomebyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Income/Gett_IncomeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postOtherIncome(data) {\r\n return this.http.post(this.baseUrl + 'api/Income/Postt_Income', data);\r\n }\r\n deleteOtherIncome(id) {\r\n return this.http.delete(this.baseUrl + 'api/Income/Delete_Income?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteIncomeLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Income/Delete_IncomeLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //loan\r\n getLoanList(pg, searchtxt, type, status, fdate, edate) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n getLoanbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Gett_LoanByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postLoan(data) {\r\n return this.http.post(this.baseUrl + 'api/Loans/Postt_Loan', data);\r\n }\r\n deleteLoan(id) {\r\n return this.http.delete(this.baseUrl + 'api/Loans/Delete_Loan?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getLoanStatement(loanid) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Gett_LoanStatement?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&loanid=' + loanid);\r\n }\r\n //Loan application\r\n getLoanApplicationIndex(pg, searchtxt, type, status, fdate, edate) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanAppIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n getLoanApplicationById(id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Gett_LoanAppByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postLoanApplication(data) {\r\n return this.http.post(this.baseUrl + 'api/Loans/Postt_LoanApp', data);\r\n }\r\n deleteLoanApplication(id) {\r\n return this.http.delete(this.baseUrl + 'api/Loans/Delete_LoanApp?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //loan config\r\n getLoanConfigList(id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanConfigs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n\r\n }\r\n postLoanConfig(data) {\r\n return this.http.post(this.baseUrl + 'api/Loans/Postt_LoanConfig', data);\r\n }\r\n deleteLoanConfig(id) {\r\n return this.http.delete(this.baseUrl + 'api/Loans/Delete_LoanConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Loan interest rates\r\n getLoanInterests(loan_id, period_id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanInterests?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&loan_id=' + loan_id + '&period_id=' + period_id)\r\n }\r\n getProcessLoanInterests(loan_id, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Process_LoanInterests?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&loan_id=' + loan_id + '&fromdate=' + fromdate + '&todate=' + todate)\r\n } \r\n getLoanInterestRates(loan_id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanInterestRates?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&loan_id=' + loan_id)\r\n }\r\n postLoanInterestRate(data) {\r\n return this.http.post(this.baseUrl + 'api/Loans/Postt_LoanInterestRate', data);\r\n }\r\n deleteLoanInterestRate(id) {\r\n return this.http.delete(this.baseUrl + 'api/Loans/Delete_LoanInterestRate?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //loan transaction\r\n getLoanTransactionList(id) {\r\n return this.http.get(this.baseUrl + 'api/Loans/Get_LoanTransactions?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postLoanTransaction(data) {\r\n return this.http.post(this.baseUrl + 'api/Loans/Postt_LoanTransaction', data);\r\n }\r\n deleteLoanTransaction(id) {\r\n return this.http.delete(this.baseUrl + 'api/Loans/Delete_LoanTransaction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getWriteoffIndex(pg, searchtxt, type, status, fdate, edate, tpsync) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_WriteoffIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync)\r\n }\r\n getWriteOffDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_WriteoffByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteWriteOff(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_Writeoff?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteWriteOffLine(id, wiid) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_Writeoff?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&wiid=' + wiid);\r\n }\r\n postWriteoff(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_Writeoff', data);\r\n }\r\n getWriteOffTrans(partytype, partyid, partyname, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTransaction4Writeoff?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&partytype=' + partytype + '&partyid=' + partyid + '&partyname=' + partyname + '&searchtxt=' + searchtxt);\r\n }\r\n getContraEntriesIndex(pg, searchtxt, type, status, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_ContraIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate)\r\n }\r\n getContraEntryDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_ContraEntryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteContraEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_ContraEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postContraEntry(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_ContraEntry', data);\r\n }\r\n getBusinessPartners(searchtxt, type) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_BusinessPartnerIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type)\r\n }\r\n postBusinessPartner(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_BusinessPartner', data);\r\n }\r\n getBusinessPartnerById(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_BusinessPartnerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBusinessPartner(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_BusinessPartner?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOwnerRecords(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_OwnerRecords?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ownerid=' + id);\r\n }\r\n postOwnerRecord(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_OwnerRecord', data);\r\n }\r\n getOwnerRecordById(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_OwnerRecordByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteOwnerRecord(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_OwnerRecord?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOwnerRecordTransactions(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_OwnerRecordTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&rid=' + id);\r\n }\r\n postOwnerRecordTran(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_OwnerRecordTran', data);\r\n }\r\n deleteOwnerRecordTran(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_OwnerRecordTran?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Fund Transfer\r\n getFundTransferReqIndex(searchtxt, type, status, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_FundTransferIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate)\r\n }\r\n getFundTransferReqDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_FundTransferByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteFundTransferReq(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_FundTransfer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postFundTransferReq(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_FundTransfer', data);\r\n }\r\n //Ownership\r\n getOwnerships(pg, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Ownerships?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt)\r\n }\r\n postOwnership(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Owenership', data);\r\n }\r\n getOwnershipById(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_OwnershipByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteOwnership(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Ownership?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Share Transactions\r\n getShareTransactions(res_id, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_ShareTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id + '&rw=' + this.userprofile.grid_page_size + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n postShareTransaction(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_ShareTransaction', data);\r\n }\r\n getShareTransactionByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_ShareTransactionByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteShareTransaction(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_ShareTransaction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Shareclass\r\n getShareClasses() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_ShareClasses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postShareClasses(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_ShareClass', data);\r\n }\r\n getShareClassesById(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_ShareClassByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteShareClasses(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_ShareClass?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Register\r\n getCompanyRegisterTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyRegisterType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postRegister(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_CompanyRegister', data);\r\n }\r\n getCompanyRegister() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_CompanyRegister?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Body\r\n getBodys(res_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Bodys?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id)\r\n }\r\n postBody(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Body', data);\r\n }\r\n getBodyByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_BodyByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBody(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Body?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Listings\r\n getListing(res_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Listings?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id)\r\n }\r\n postListing(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Listing', data);\r\n }\r\n getListingByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_ListingByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteListing(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Listing?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //License\r\n getLicense() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Licenses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postLicense(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_License', data);\r\n }\r\n getLicenseByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_LicenseByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteLicense(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_License?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Subsidiary\r\n getSubsidiary() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Subsidiaries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postSubsidiary(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Subsidiary', data);\r\n }\r\n getSubsidiaryByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_SubsidiaryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSubsidiary(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Subsidiary?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Service Provider\r\n getServiceProvider() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_ServiceProviders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postServiceProvider(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_ServiceProvider', data);\r\n }\r\n getServiceProviderByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_ServiceProviderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteServiceProvider(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_ServiceProvider?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Audit\r\n getAuditLog() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_AuditLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postAuditLog(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_AuditLog', data);\r\n }\r\n getAuditLogByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_AuditByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAuditLog(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_AuditLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Shares\r\n getShares(ownerid) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Shares?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ownerid=' + ownerid);\r\n }\r\n postShare(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Share', data);\r\n }\r\n getShareByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_ShareByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteShare(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Share?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Record Types\r\n getRecordTypes() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_OwnerRecordTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postRecordType(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_RecordType', data);\r\n }\r\n getRecordTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_RecordTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteRecordType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_RecordType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOwners() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetOwners?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Resolutions\r\n getResolutions() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Resolutions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postResolution(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Resolution', data);\r\n }\r\n getResolutionByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_ResolutionByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteResolution(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Resolution?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //COA Transfer\r\n getCOATransferReq() {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_COAMovementById?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCOATransfer(data) {\r\n return this.http.post(this.baseUrl + 'api/Accounts/Postt_COA_Movement', data);\r\n }\r\n getCOATransferById(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Gett_COAMovementById?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getApproveCOATransfer(id) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Approve_COAMovement?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCOATransfer(id) {\r\n return this.http.delete(this.baseUrl + 'api/Accounts/Delete_COAMovement?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCOATransferIndex(pg, searchtxt, type) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_COAMovmentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type)\r\n }\r\n //credit note types\r\n getCreditNoteTypes() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CreditNoteTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postCreditNoteType(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CreditNoteType', data);\r\n }\r\n getCreditNoteTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CreditNoteTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCreditNoteType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CreditNoteType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //debit note types\r\n getDebitNoteTypes() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DebitNoteTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postDebitNoteType(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DebitNoteType', data);\r\n }\r\n getDebitNoteTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DebitNoteTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDebitNoteType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DebitNoteType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Capital Interest Rate\r\n getCapitalInterestRate(res_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_CapitalInterestRates?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id)\r\n }\r\n postCapitalInterestRate(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_CapitalInterestRate', data);\r\n }\r\n getCapitalInterestRateByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_CapitalInterestRateByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCapitalInterestRate(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_CapitalInterestRate?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCapitalInterests(res_id, owner_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_CapitalInterests?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id + '&owner_id=' + owner_id)\r\n }\r\n getProcessCapitalInterests(res_id, owner_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Process_CapitalInterests?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id + '&owner_id=' + owner_id)\r\n }\r\n //Dividend\r\n getDividend(res_id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_Dividends?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&res_id=' + res_id)\r\n }\r\n postDividend(data) {\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_Dividend', data);\r\n }\r\n getDividendByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_DividendByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDividend(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_Dividend?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getResolutionList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetResolutions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n // Body/listing/resolutions\r\n getBodyList() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_CompanyBody?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getListingList() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_CompanyListings?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getResolutionsList() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_CompanyResolutions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class assetServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n\r\n //asset List\r\n getAssetList(pg,searchtext, assignto, status) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtext=' + searchtext + '&assignto=' + assignto + '&status=' + status);\r\n }\r\n getParent() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAsset?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetAction() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetActions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetLocation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetServiceTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetServiceTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetConditions() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetConditions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetDepreciation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDepreciationType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssetTypeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAsset(val) {\r\n return this.http.post(this.baseUrl + 'api/Assets/Postt_Assets', val);\r\n }\r\n postAssetAssignment(val) {\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_Assignment', val);\r\n }\r\n deleteAssignment(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_Assignment?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAssetServiceLog(val) {\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_ServiceLogs', val);\r\n }\r\n postAssetPicture(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_Picture', data);\r\n }\r\n\r\n // Asset tab services\r\n getAssetLicenses(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetLicensings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetChild(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_ChildAssets?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetEvents(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetEvents?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetLog(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetServiceLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetPictures(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetPictures?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getDeleteAssetPictures(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetPicture?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetPictureMain(id, assid, mainpic) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Post_AssetMainPicture?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&assid=' + assid + '&mainpic=' + mainpic);\r\n }\r\n\r\n getAssetDocuments(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Gett_AssetDocuments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n //asset Licence tab\r\n postAssetLicence(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_AssetLicense', data)\r\n }\r\n deleteAssetLicence(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetLicense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssetDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Gett_AssetByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //asset user\r\n getAssetUserList(name) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetUsers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name)\r\n }\r\n postAssetUser(val) {\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_AssetUsers', val);\r\n // \r\n }\r\n\r\n //Assets Req\r\n getAssetsRequestList(requestedby, desc) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetRequests?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&requestedby=' + requestedby + '&desc=' + desc)\r\n }\r\n postAssetsRequest(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_AssetRequet', data)\r\n }\r\n getAssetsRequestbyID(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetRequestByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //asset contract\r\n\r\n getAssetUserContractList(name) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetContracts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name)\r\n }\r\n\r\n //delete contract api.\r\n deletecontract(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetContract?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n\r\n }\r\n postAssetContractData(val) {\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_AssetContracts', val);\r\n }\r\n getAssetUserType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetUserType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //asset category\r\n getAssetCategory(description) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetCategoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description)\r\n }\r\n getAssetsCategorybyID(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Gett_AssetCategoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAssetCategory(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Postt_AssetCaegory', data)\r\n }\r\n postAssetTransaction(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_AssetTransaction', data)\r\n }\r\n getAssetTransaction(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetTransactions?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAssetTransaction(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetTransaction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Depreciation Configs\r\n getAssetDepreciationConfig(id) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Get_AssetDepreciationConfigs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAssetDepreciationConfig(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_DepreciationConfig', data)\r\n }\r\n deleteAssetDepreciationConfig(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_DepreciationConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAssetCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_AssetCategory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAsset(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_Asset?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getNotifyAllAssetUsers(compname, from) {\r\n return this.http.get(this.baseUrl + 'api/Emailer/Get_NotifyAllAssetUsers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&compname=' + compname + '&from=' + from);\r\n }\r\n getdepreciation(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Assets/Bulk_depreciation?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postDepreciation(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Assets/Post_BulkDepreciation', data)\r\n }\r\n deleteAssetRequest(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetRequest?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n deleteAssetUser(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetUsers?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n deleteservicelog(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_ServiceLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAssetLicense(id) {\r\n return this.http.delete(this.baseUrl + 'api/Assets/Delete_AssetLicense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ForgotPassComponent } from './forgot-pass/forgot-pass.component';\r\nimport { LoginComponent } from './login/login.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path:'login',\r\n component:LoginComponent,\r\n },\r\n {\r\n path:'forgotPassword',\r\n component:ForgotPassComponent,\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AuthRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AuthRoutingModule } from './auth-routing.module';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CarouselModule } from 'ngx-owl-carousel-o';\r\nimport { SharedModule } from '../../shared/shared.module';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { ForgotPassComponent } from './forgot-pass/forgot-pass.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\n// import { SocialLoginModule, SocialAuthServiceConfig } from '@abacritt/angularx-social-login';\r\n// import {\r\n// GoogleLoginProvider,\r\n// FacebookLoginProvider,\r\n// MicrosoftLoginProvider\r\n// } from '@abacritt/angularx-social-login';\r\nconst googleLoginOptions = {\r\n scope: 'profile email',\r\n plugin_name: 'login' //you can use any name here\r\n};\r\n@NgModule({\r\n declarations: [LoginComponent, ForgotPassComponent],\r\n imports: [\r\n CommonModule,\r\n AuthRoutingModule,\r\n ReactiveFormsModule,\r\n NgbModule,\r\n CarouselModule,\r\n SharedModule,\r\n FormsModule,\r\n NgxUiLoaderModule,\r\n HttpClientModule, \r\nTranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n \r\n // SocialLoginModule\r\n ],\r\n providers: [\r\n // {\r\n // provide: 'SocialAuthServiceConfig',\r\n // useValue: {\r\n // autoLogin: false,\r\n // providers: [\r\n // {\r\n // id: GoogleLoginProvider.PROVIDER_ID,\r\n // provider: new GoogleLoginProvider(\r\n // '39955721963-4ekdn3e1j3trj23p3j7rgqqb2ibi3s7t.apps.googleusercontent.com',\r\n // googleLoginOptions\r\n // )\r\n // },\r\n // {\r\n // id: FacebookLoginProvider.PROVIDER_ID,\r\n // provider: new FacebookLoginProvider('576996704420232')\r\n // },\r\n // {\r\n // id: MicrosoftLoginProvider.PROVIDER_ID,\r\n // provider: new MicrosoftLoginProvider('e2dcae27-39a4-4b29-a59e-720c2774a857', {\r\n // redirect_uri: 'https://ezybooks.net/login',\r\n // logout_redirect_uri: 'https://ezybooks.net/login'\r\n // })\r\n // }\r\n // ],\r\n // onError: (err) => {\r\n // console.error(err);\r\n // }\r\n // } as SocialAuthServiceConfig,\r\n // }\r\n]\r\n})\r\nexport class AuthModule {\r\n\r\n}\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } ","import { Component, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { ConversionService } from 'src/app/shared/service/conversion.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: 'app-forgot-pass',\r\n\ttemplateUrl: './forgot-pass.component.html',\r\n\tstyleUrls: ['./forgot-pass.component.scss']\r\n})\r\nexport class ForgotPassComponent implements OnInit {\r\n\r\n\tForgotForm: NgForm;\r\n\tcompanyidList: any;\r\n\tfindUserData: any;\r\n\tforpassform: any = {\r\n\t\tusername: ''\r\n\t}\r\n\tconstructor(\r\n\t\tprivate service: AppServices,\r\n\t\tprivate router: Router,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate conService: ConversionService\r\n\t) { }\r\n\towlcarousel = [\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t}\r\n\t]\r\n\towlcarouselOptions = {\r\n\t\tloop: true,\r\n\t\titems: 1,\r\n\t\tdots: true\r\n\t};\r\n\tngOnInit(): void {\r\n\t}\r\n\r\n\r\n\tRetrivePassword() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.findUser(this.forpassform.username).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\twindow.localStorage.clear(); //clear all localstorage if availble..\r\n\t\t\tenvironment.production ? '' : console.log('this.findUserData : ', this.findUserData);\r\n\t\t\tif (res.status_code != '1') {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tSwal.fire('', res.message, 'error');\r\n\t\t\t\treturn false;\r\n\t\t\t} else {\r\n\t\t\t\tthis.findUserData = res.data;\r\n\t\t\t\tthis.companyidList = this.findUserData.companyids;\r\n\t\t\t\tenvironment.production ? '' : console.log('this.companyidList : ', this.companyidList);\r\n\t\t\t\tif (this.companyidList.length > 0) {\r\n\t\t\t\t\tthis.forpassform.companyid = this.companyidList[0].companyid;\r\n\t\t\t\t\tenvironment.production ? '' : console.log('this.forpassform.companyid : ', this.forpassform.companyid);\r\n\t\t\t\t}\r\n\t\t\t\tvar data = {\r\n\t\t\t\t\temail: this.forpassform.username,\r\n\t\t\t\t\tuserid: this.findUserData.id,\r\n\t\t\t\t\tcompanyid: this.forpassform.companyid\r\n\t\t\t\t}\r\n\t\t\t\tenvironment.production ? '' : console.log('data : ', data);\r\n\t\t\t\tthis.service.resetPassword(data).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Post reset response : ', res);\r\n\t\t\t\t\tthis.forpassform.username = '';\r\n\t\t\t\t\tSwal.fire('', 'Password sent to your registered Email', 'success')\r\n\t\t\t\t\tthis.router.navigate(['/login'],{replaceUrl:true});\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

{{data.title}}

\r\n

{{data.desc}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Forgot your password?

\r\n

\r\n Provide your registered email address, We will send your\r\n password to your email:\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Email is required\r\n
\r\n
\r\n Valid Email is required\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, NgZone, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport * as moment from 'moment';\r\nimport { NgxUiLoaderService } from \"ngx-ui-loader\";\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { ConversionService } from 'src/app/shared/service/conversion.service';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n// import { SocialAuthService } from \"@abacritt/angularx-social-login\";\r\n// import { FacebookLoginProvider, GoogleLoginProvider, MicrosoftLoginProvider } from \"@abacritt/angularx-social-login\";\r\nimport { Title } from '@angular/platform-browser';\r\n@Component({\r\n\tselector: 'app-login',\r\n\ttemplateUrl: './login.component.html',\r\n\tstyleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n\tpassword: any;\r\n\tcompanyid: any;\r\n\tuserdata: any;\r\n\tpassActive: boolean = true;\r\n\tappname = environment.APP_NAME;\r\n\ttext: Attr;\r\n\tisLogin: boolean = false;\r\n\tisLoading: boolean = false;\r\n\tcompanyidList: any;\r\n\tfindUserData: any;\r\n\tselectedCompany: any;\r\n\tLoginForm: NgForm;\r\n\ttempForm: any = {\r\n\t\tusername: '',\r\n\t\tcompanyid: '',\r\n\t\tpassword: '',\r\n\t}\r\n\tsocialAuth: any = {\r\n\t\tloginame: '',\r\n\t\tsite_name: '',\r\n\t\tauth_token: '',\r\n\t\tcompanyid: ''\r\n\t}\r\n\tloginDetails: any;\r\n\tisSocialLogin = false;\r\n\tconstructor(\r\n\t\tprivate events: Events,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate service: AppServices,\r\n\t\tprivate router: Router,\r\n\t\tprivate titleService: Title,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate conService: ConversionService,\r\n\t\t// private authService: SocialAuthService,\r\n\t\tprivate ngZone: NgZone\r\n\t) {\r\n\t\tvar from = this.route.snapshot.queryParamMap.get('from');\r\n\t\tif (from != null && from == 'verifyotp') {\r\n\t\t\tvar username = this.route.snapshot.queryParamMap.get('email');\r\n\t\t\tthis.tempForm.username = atob(username);\r\n\t\t\tvar companyid = this.route.snapshot.queryParamMap.get('companyid');\r\n\t\t\tthis.tempForm.companyid = atob(companyid);\r\n\t\t\tthis.findUser();\r\n\t\t}\r\n\t}\r\n\t\r\n\towlcarousel = [\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: \"Ezybooks.net\",\r\n\t\t\tdesc: \"one account, access all services and multiple companies\",\r\n\t\t}\r\n\t]\r\n\towlcarouselOptions = {\r\n\t\tloop: true,\r\n\t\titems: 1,\r\n\t\tdots: true\r\n\t};\r\n\r\n\r\n\r\n\tngOnInit() {\r\n\t\tlocalStorage.clear();\r\n\t\t// var localstorage = localStorage.getItem('userprofile');\r\n\t\tthis.setTitle();\r\n\t}\r\n\t\r\n\tsetTitle() {\r\n\t\tthis.titleService.setTitle('Login');\r\n\t}\r\n\tsignInWithFB(): void {\r\n\t\t// this.authService.signIn(FacebookLoginProvider.PROVIDER_ID).then((data) => {\r\n\t\t// \tthis.socialAuth.loginame = data.email;\r\n\t\t// \tthis.socialAuth.auth_token = data.authToken;\r\n\t\t// \tthis.socialAuth.site_name = 'facebook';\r\n\t\t// \tthis.findUserByAuthToken();\r\n\t\t// });\r\n\t}\r\n\r\n\tsignInWithGoogle(): void {\r\n\t\tthis.ngZone.run(() => {\r\n\t\t\t// this.authService.signIn(GoogleLoginProvider.PROVIDER_ID).then((data) => {\r\n\t\t\t// \tthis.socialAuth.loginame = data.email;\r\n\t\t\t// \tthis.socialAuth.auth_token = data.authToken;\r\n\t\t\t// \tthis.socialAuth.site_name = 'google';\r\n\t\t\t// \tthis.findUserByAuthToken();\r\n\t\t\t// });\r\n\t\t});\r\n\t}\r\n\r\n\tsignInWithMicrosoft(): void {\r\n\t\t// this.authService.signIn(MicrosoftLoginProvider.PROVIDER_ID).then((data) => {\r\n\t\t// \tthis.socialAuth.loginame = data.email;\r\n\t\t// \tthis.socialAuth.auth_token = data.authToken;\r\n\t\t// \tthis.socialAuth.site_name = 'microsoft';\r\n\t\t// \tthis.findUserByAuthToken();\r\n\t\t// });\r\n\t}\r\n\r\n\tsignOut(): void {\r\n\t\t// this.authService.signOut();\r\n\t}\r\n\r\n\tradioChecked(id, i) {\r\n\t\tthis.companyidList.forEach(item => {\r\n\t\t\titem.checked = !item.checked;\r\n\t\t})\r\n\t}\r\n\r\n\tgotoPricing() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n\t}\r\n\r\n\tfindUser() {\r\n\t\t// this.loader.start();\r\n\t\tlocalStorage.clear();\r\n\t\tthis.isLoading = true;\r\n\t\tthis.service.findUser(this.tempForm.username).subscribe((res: any) => {\r\n\t\t\tthis.isLoading = false;\r\n\t\t\twindow.localStorage.clear(); //clear all localstorage if availble..\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res.status_code == '1') {\r\n\t\t\t\tthis.findUserData = res.data;\r\n\t\t\t\tthis.companyidList = this.findUserData.companyids;\r\n\t\t\t\tenvironment.production ? '' : console.log('this.companyidList : ', this.companyidList);\r\n\t\t\t\tif (this.companyidList.length > 0) {\r\n\t\t\t\t\tthis.tempForm.companyid = this.companyidList[0].companyid;\r\n\t\t\t\t}\r\n\t\t\t\tthis.isLogin = true;\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire('', res.message, 'error');\r\n\t\t\t\tthis.isLogin = false;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\t// this.loader.stop();\r\n\t\t\tthis.isLoading = false;\r\n\t\t});\r\n\t}\r\n\r\n\tfindUserByAuthToken() {\r\n\t\t// this.loader.start();\r\n\t\tlocalStorage.clear();\r\n\t\tthis.isLoading = true;\r\n\t\tthis.isSocialLogin = true;\r\n\t\tvar postObj = {\r\n\t\t\tloginame: this.socialAuth.loginame,\r\n\t\t\tsite_name: this.socialAuth.site_name,\r\n\t\t\tauth_token: this.socialAuth.auth_token\r\n\t\t}\r\n\t\tthis.service.findUserByAuthToken(postObj).subscribe(res => {\r\n\t\t\twindow.localStorage.clear(); //clear all localstorage if availble..\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.findUserData = res;\r\n\t\t\tthis.tempForm.username = this.socialAuth.loginame;\r\n\t\t\tthis.isLoading = false;\r\n\t\t\tif (res == undefined || res == null) {\r\n\t\t\t\tthis.isSocialLogin = false;\r\n\t\t\t\tSwal.fire('', 'User not found, please check your email.', 'error');\r\n\t\t\t\treturn false;\r\n\t\t\t} else {\r\n\t\t\t\t// localStorage.setItem(this.appname + 'userprofile', JSON.stringify(res));\r\n\t\t\t\tthis.companyidList = this.findUserData.companyids;\r\n\t\t\t\tenvironment.production ? '' : console.log('this.companyidList : ', this.companyidList);\r\n\t\t\t\tif (this.companyidList.length > 0) {\r\n\t\t\t\t\t// this.tempForm.companyid = this.companyidList[0].companyid;\r\n\t\t\t\t\tif (this.companyidList.length == 1) {\r\n\t\t\t\t\t\tthis.socialAuth.companyid = this.companyidList[0].companyid;\r\n\t\t\t\t\t\tthis.doSocialLogin();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\t// this.loader.stop();\r\n\t\t\tthis.isLoading = false;\r\n\t\t});\r\n\t}\r\n\r\n\tdoSocialLogin() {\r\n\t\tthis.isSocialLogin = true;\r\n\t\tlocalStorage.clear();\r\n\t\tvar postObj = {\r\n\t\t\t\"loginame\": this.socialAuth.loginame,\r\n\t\t\t\"password\": null,\r\n\t\t\t\"companyid\": this.socialAuth.companyid,\r\n\t\t\t\"site_name\": this.socialAuth.site_name,\r\n\t\t\t\"auth_token\": this.socialAuth.auth_token\r\n\t\t}\r\n\t\tthis.isLoading = true;\r\n\t\tthis.service.loginByAuthToken(postObj).subscribe((res: any) => {\r\n\t\t\tthis.isLoading = false;\r\n\t\t\tif (res.status_code == '1') {\r\n\t\t\t\tthis.processLoginRes(res.data);\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire('', res.message, 'error');\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.isLoading = false;\r\n\t\t});\r\n\t}\r\n\tdoLogin() {\r\n\t\tvar postObj = {\r\n\t\t\tloginame: this.tempForm.username,\r\n\t\t\tpassword: this.tempForm.password,\r\n\t\t\tcompanyid: this.tempForm.companyid\r\n\t\t}\r\n\t\tlocalStorage.clear();\r\n\t\tthis.isLoading = true;\r\n\t\tthis.service.login(postObj).subscribe((res: any) => {\r\n\t\t\tthis.isLoading = false;\r\n\t\t\tif (res.status_code == '1') {\r\n\t\t\t\tthis.processLoginRes(res.data);\r\n\t\t\t} else {\r\n\t\t\t\tSwal.fire('', res.message, 'error');\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.isLoading = false;\r\n\t\t});\r\n\t}\r\n\tchangeCompany() {\r\n\t\tthis.socialAuth.companyid = this.tempForm.companyid;\r\n\t\t// this.doSocialLogin();\r\n\t}\r\n\tprocessLoginRes(res) {\r\n\t\tif (this.isSocialLogin) {\r\n\t\t\tres.auth_token = this.socialAuth.auth_token;\r\n\t\t} else {\r\n\t\t\tres.password = this.tempForm.password;\r\n\t\t}\r\n\t\t// set date for as per country format\r\n\t\tMY_DATE_FORMATS.display.dateInput = (res.date_format).toUpperCase();\r\n\t\t// res.enddate = this.userdata.enddate;\r\n\t\tres.enddate = moment().add(parseFloat(res.future_data_view_days), 'days').format('YYYY-MM-DD');\r\n\t\tres.fromdate = moment().subtract(parseFloat(res.back_data_view_days), 'days').format('YYYY-MM-DD');\r\n\t\tres.postdateformat = 'yyy-MM-dd';\r\n\t\tif (res.time_format == 12) {\r\n\t\t\tres.displaydatetimeformat = 'yyyy-MM-dd hh:mm:ss a';\r\n\t\t} else {\r\n\t\t\tres.displaydatetimeformat = 'yyyy-MM-dd hh:mm:ss';\r\n\t\t}\r\n\t\tres.postdatetimeformat = 'yyy-MM-dd HH:mm:ss';\r\n\t\tvar encrypted = this.conService.set('123456$#@$^@1ERF', JSON.stringify(res));\r\n\t\tvar decrypted = this.conService.get('123456$#@$^@1ERF', encrypted);\r\n\t\tlocalStorage.setItem(this.appname + 'userprofile', JSON.stringify(res));\r\n\r\n\t\tthis.events.publish('event:logout', {\r\n\t\t\tdata: {\r\n\t\t\t\t'from': 'login'\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.router.navigate(['/dashboard'], { replaceUrl: true });\r\n\t}\r\n\tpassToggle() {\r\n\t\tthis.passActive = !this.passActive;\r\n\t}\r\n\tdifferentAccount() {\r\n\t\tlocalStorage.clear();\r\n\t\tthis.tempForm = {};\r\n\t\tthis.companyidList = [];\r\n\t\tthis.isLogin = false;\r\n\t\tthis.isLoading = false;\r\n\t\tthis.isSocialLogin = false;\r\n\t\tthis.router.navigateByUrl('/auth/login');\r\n\t\t// window.location.reload();\r\n\t}\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n

{{data.title}}

\r\n

{{data.desc}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Login

\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n Email is required\r\n
\r\n
\r\n Valid Email is required\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n Password is required\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n forgot\r\n password\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n Don't have an account?\r\n \r\n Register here\r\n \r\n \r\n \r\n\r\n \r\n Sign in to a different account\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Message } from '@angular/compiler/src/i18n/i18n_ast';\r\nimport { EventEmitter, Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { formatCurrency, formatDate, formatNumber, formatPercent } from \"@angular/common\";\r\nimport { BroadcastEventListener, ConnectionStatus, IConnectionOptions, SignalR, SignalRConnection } from 'ng2-signalr';\r\nimport { Router } from '@angular/router';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\n@Injectable()\r\nexport class ChatSignalr {\r\n public connectionIsEstablished = false;\r\n userdata: any;\r\n supportchatobj: any;\r\n appname = environment.APP_NAME;\r\n userData: any;\r\n conx: any;\r\n public subscribeMsg: any;\r\n messages: any = [];\r\n constructor(\r\n private _signalR: SignalR,\r\n private events: Events,\r\n private router: Router) {\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n // this.connect(); //to connect from import page automatically\r\n setTimeout(() => {\r\n this.subscribeListners();\r\n }, 4000);\r\n environment.production ? '' : console.log('in signalr service');\r\n }\r\n\r\n connect() {\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n if (this.userData == undefined || this.userData == null) {\r\n return;\r\n }\r\n let o: IConnectionOptions = {};\r\n if (this.userData != undefined && this.userData != null) {\r\n o.qs = { userId: this.userData.uuid, type: 'staff' };\r\n }\r\n // this.conx = this._signalR.connect(o);\r\n setTimeout(() => {\r\n this.conx = this._signalR.createConnection(o);\r\n this.conx.start().then((c) => {\r\n this.subscribrLocationListner();\r\n // this.conx.invoke('JoinGroup', 'staff_group_' + this.userData.companyid);\r\n environment.production ? '' : console.log('connection status', c);\r\n this.connectionIsEstablished = true;\r\n this.events.publish('event:connectionStatus', {\r\n c\r\n });\r\n });\r\n }, 3000);\r\n }\r\n\r\n subscribeListners() {\r\n if (!this.conx) {\r\n return;\r\n }\r\n this.conx.status.subscribe((s: any) => {\r\n environment.production ? '' : console.log('connection status :' + s.name)\r\n this.connectionIsEstablished = s.value;\r\n if (s.value == 0) {\r\n setTimeout(this.connect, 3000);\r\n }\r\n });\r\n let listener = this.conx.listenFor('onMessageReceived');\r\n listener.subscribe((data) => {\r\n environment.production ? '' : console.log('signalr ', JSON.stringify(data));\r\n data.SentTimeStamp = this.customDateFormat(new Date(parseInt(data.SentTimeStamp)), 'hh:mm a');\r\n if (data.FromId == this.userData.uuid) {\r\n data.isMine = true;\r\n } else {\r\n data.isMine = false;\r\n }\r\n this.events.publish('event:newMessage', {\r\n data\r\n });\r\n });\r\n }\r\n subscribrLocationListner() {\r\n let sendLocaitonListener = this.conx.listenFor('sendLocaiton');\r\n sendLocaitonListener.subscribe((data) => {\r\n environment.production ? '' : console.log('signalr ', JSON.stringify(data));\r\n // data.SentTimeStamp = this.customDateFormat(new Date(parseInt(data.SentTimeStamp)), 'hh:mm a');\r\n this.events.publish('event:newLocation', {\r\n data\r\n });\r\n });\r\n }\r\n joinLocationReceiveGroup() {\r\n if (!this.conx) {\r\n this.connect();\r\n return;\r\n }\r\n environment.production ? '' : console.log('join staff group');\r\n this.conx.invoke('JoinGroup', 'staff_group_' + this.userData.companyid).then((data: any) => {\r\n environment.production ? '' : console.log(data);\r\n this.events.publish('event:locationupdate', {\r\n data: data\r\n });\r\n });\r\n }\r\n //#region Join PublicChat from Homepage\r\n joinSupportChat(room) {\r\n this.conx.invoke(\"joinSupportChat\", room).then((data: any) => {\r\n // environment.production ? '' : console.log(data);\r\n this.events.publish('event:joinSupportChat', {\r\n data: data\r\n });\r\n });\r\n }\r\n\r\n getRooms() {\r\n this.conx.invoke(\"GetRooms\").then((data: any) => {\r\n // environment.production ? '' : console.log(data);\r\n this.events.publish('event:getRooms', {\r\n data: data\r\n });\r\n });\r\n }\r\n\r\n getCurrentUser() {\r\n this.conx.invoke(\"CurrentUserId\").then((data: any) => {\r\n // environment.production ? '' : console.log(data);\r\n this.events.publish('event:getCurrentUser', {\r\n data: data\r\n });\r\n });\r\n }\r\n\r\n openChat(uuid) {\r\n this.conx.invoke(\"OpenChat\", uuid).then((data: any) => {\r\n environment.production ? '' : console.log(data);\r\n // this.events.publish('event:getCurrentUser', {\r\n // data: data\r\n // });\r\n });\r\n }\r\n\r\n getMessageHistory(uuid) {\r\n this.conx.invoke(\"GetMessageHistory\", uuid, 2).then((data: any) => {\r\n environment.production ? '' : console.log(JSON.stringify(data));\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n var lastdate = '';\r\n data.forEach(item => {\r\n item.avatar = item.avatar != '' ? environment.API_URL + '' + item.avatar : 'https://placeimg.com/140/140/any';\r\n item.date = this.customDateFormat(new Date(parseInt(item.SentTimeStamp)), 'EEEE, MMMM dd yyyy')\r\n if (lastdate != item.date) {\r\n lastdate = item.date;\r\n } else {\r\n item.date = '';\r\n }\r\n item.SentTimeStamp = this.customDateFormat(new Date(parseInt(item.SentTimeStamp)), 'hh:mm a')\r\n if (this.userData != undefined && this.userData != null && item.FromId == this.userData.uuid) {\r\n item.isMine = true;\r\n } else {\r\n item.isMine = false;\r\n }\r\n });\r\n this.events.publish('event:getMessageHistory', {\r\n data: data\r\n });\r\n });\r\n }\r\n sendLocation() {\r\n // setInterval( function() { funca(10,3); }, 500 );\r\n }\r\n sendMsg(from, data) {\r\n if (!this.connectionIsEstablished) {\r\n return false;\r\n }\r\n var methodName = from == 'support' ? 'SupportMessage' : 'ClientMessage';\r\n this.conx.invoke(methodName, data).then((info: any) => {\r\n environment.production ? '' : console.log('sent message status ' + info);\r\n });\r\n }\r\n //#endregion Join PublicChat from Homepage\r\n\r\n customDateFormat(date: Date, format: string) {\r\n return formatDate(date, format, 'en-US')\r\n };\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { DashboardComponent } from './dashboard.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n children: [\r\n {\r\n path: '',\r\n component: DashboardComponent,\r\n data: {\r\n title: \"Dashboard\",\r\n breadcrumb: \"Dashboard\"\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class DashboardRoutingModule { }\r\n","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Chart } from 'angular-highcharts';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { doughnutData, pieData } from '../../shared/data/chart';\r\nimport { ChatSignalr } from '../customerservice/chatsignalr.service';\r\nimport { hrServices } from '../hr/hr.services';\r\nimport { DashboardServices } from './dashboard.service';\r\n// import * as moment from 'moment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment-timezone';\r\nimport { Subscription } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { SchedulerServices } from '../scheduler/scheduler.service';\r\nimport { AddleaveComponent } from '../hr/employees/model/addleave/addleave.component';\r\nimport { settingServices } from '../settings/setting.service';\r\ninterface CustomPoint extends Highcharts.Point {\r\n\tvalue: number;\r\n\tcurrency: string\r\n}\r\n@Component({\r\n\tselector: 'app-dashboard',\r\n\ttemplateUrl: './dashboard.component.html',\r\n\tstyleUrls: ['./dashboard.component.scss']\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n\t//#region userdata block\r\n\tappname = environment.APP_NAME;\r\n\tresTransactions: any = [];\r\n\texpiryPopup: any = false;\r\n\tuserdata: any;\r\n\tcompanyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n\tformat: any;\r\n\ttotalRows: any;\r\n\t//#endregion userdata block\r\n\tfullScreen = false;\r\n\tpublic ischeckIn = false;\r\n\tpublic isToggleSwitch = false;\r\n\tpublic doughnutData = doughnutData;\r\n\tpublic pieData = pieData;\r\n\tpublic projectData = [];\r\n\treasonsList: any = [];\r\n\ttitle;\r\n\tnotes;\r\n\treminder: any = {};\r\n\tsales_trend: any = [];\r\n\tpurchase_trend: any = [];\r\n\tdashboardData: any = {\r\n\t\tofficeClockings: []\r\n\t};\r\n\ttransactions: any = [];\r\n\tstickeys: any;\r\n\tuserprofile: any;\r\n\totherReason: any\r\n\treminderList: any = [];\r\n\tfilteredReminders: any = [];\r\n\treminderTypes: any = [];\r\n\tdepartmentlist: any = [];\r\n\treminderbyID: any;\r\n\tstringData = '';\r\n\tarrayData = [];\r\n\tisShow = false;\r\n\tisShow2 = false;\r\n\tdropdownList = [];\r\n\tselectedItems = [];\r\n\tselectedAssignTo = [];\r\n\tLeavesType: any;\r\n\ttotalLeaves: any;\r\n\temployeeLeaveList: any = [];\r\n\tshiftDetails: any;\r\n\tsalesChart: Chart;\r\n\tinvoiceChart: Chart;\r\n\tpurchaseChart: Chart;\r\n\tsnagChart: Chart;\r\n\tticketChart: Chart;\r\n\ttaskChart: Chart;\r\n\tdropdownSettings: IDropdownSettings;\r\n\tremovedArr: any;\r\n\tTransTypes: any = [];\r\n\tmasterSelected: boolean = false;\r\n\tchecklist: any;\r\n\tcheckedList: any;\r\n\tcloseResult: string;\r\n\ttransType: any = '';\r\n\tremindertype: any = ''\r\n\tInvoiceTrendArr: any = [];\r\n\tfilteredTransactions: any;\r\n\trecentTrTypeList: any = []\r\n\tsticketNotesList: any = []\r\n\tdashboard: any;\r\n\ttechnicianList: any = [];\r\n\t// Shift related variables\r\n\ttimestamp: number;\r\n\ttiming: any[];\r\n\tbrkStarted: boolean = false;\r\n\tshiftStarted: boolean = false;\r\n\tstartShiftData: any;\r\n\tminutes: string;\r\n\thours: string;\r\n\treason: any;\r\n\ttotalShiftTime: any;\r\n\ttotalTimeinEntries: any;\r\n\tbreakTime: any;\r\n\tisDisable: boolean;\r\n\tisBreakOption: boolean;\r\n\tstartShiftOption: boolean;\r\n\tstartMainTimeinhours: any;\r\n\tstartMainMin: any;\r\n\ttimeStart: any;\r\n\ttotalMainMin: any;\r\n\ttimestartmin: any;\r\n\ttotalStartTime: any\r\n\tendTimeinHr: any;\r\n\tendTimeInMin: any;\r\n\ttimeEnd: any;\r\n\ttotelEndTime: any;\r\n\tleaveBalance: any = [];\r\n\tuserName;\r\n\ttotalBreakHrs: any = [];\r\n\ttotalWorkHrs: any = [];\r\n\tisEndShift: boolean = false;\r\n\ttotalWorkTime: any = '00:00';\r\n\ttotalBreakTime: any = '00:00';\r\n\tarray = [{ name: 'value1' }, { name: 'value2' }];\r\n\t@ViewChild('clearDateField') clearDateField: ElementRef;\r\n\tleaveReason: any;\r\n\tisalertshown: any;\r\n\tcurrentDateTime = new Date();\r\n\treasonId: any;\r\n\tbuttonType: any;\r\n\thourHandStyle;\r\n\tminuteHandStyle;\r\n\tsecondHandStyle;\r\n\tisRunning = true;\r\n\ttimerId: any;\r\n\tdate: Date;\r\n\tdate1: any;\r\n\thour: number = 0;\r\n\tminute: number = 0;\r\n\tsecond: number = 0;\r\n\thour1: number = 0;\r\n\tminute1: number = 0;\r\n\tsecond1: number = 0;\r\n\ttimeZoneList: any = [];\r\n\tformatedList: any = [{\r\n\t\thourHandStyle: '',\r\n\t\tminuteHandStyle: '',\r\n\t\tsecondHandStyle: '',\r\n\t\thour: '',\r\n\t\tminute: '',\r\n\t\tsecond: '',\r\n\t\tcountry: '',\r\n\t}]\r\n\tleaveYearList: any = []\r\n\tlastMonth: any = [];\r\n\tleaveType: any\r\n\tleaveMode: string;\r\n\tpublic menuItems: any;\r\n\tpublic url: any;\r\n\tpublic fileurl: any;\r\n\tlogoutEvent: any;\r\n\tsalesTrend: any = [];\r\n\tpurchaseTrend: any = [];\r\n\tofficeClockings: any = [];\r\n\tsnagList: any = [];\r\n\ttaskList: any = [];\r\n\tticketList: any = [];\r\n\tezbcostingFilter: any = {\r\n\t\tmonthyear: ''\r\n\t};\r\n\treminderFilter: any = {\r\n\t\ttype: '',\r\n\t\tsearchtxt: ''\r\n\t}\r\n\tLang: any = 'EN';\r\n\tlanguage: any;\r\n\tprivate langChangeSubscription: Subscription;\r\n\taccountantemail: any;\r\n\tisAdmin = false;\r\n\tconstructor(\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate service: DashboardServices,\r\n\t\tprivate events: Events,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate hrServices: hrServices,\r\n\t\tprivate hrService: hrServices,\r\n\t\tpublic signalrHUB: ChatSignalr,\r\n\t\tprivate event: Events,\r\n\t\tprivate commonservice: CommonServices,\r\n\t\tprivate cd: ChangeDetectorRef,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate router: Router,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate schedulerService: SchedulerServices,\r\n\t\tprivate settingsService: settingServices,\r\n\t\tprivate modalService: NgbModal) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tvar roles = this.userdata.user_roles.split(',');\r\n\t\tthis.isAdmin = roles.some(role => role === 'ADM');\r\n\t\tthis.initializeData();\r\n\t\t// const currentDate = moment(this.userdata.expiry_date);\r\n\t\tconst currentDate = moment('2023-05-25');\r\n\t\tconst startDate = currentDate.format('YYYY-MM-DD');\r\n\t\tconst endDate = datePipe.transform(new Date(), 'yyy-MM-dd');\r\n\t\tconst differenceInDays = this.getDaysDifference(new Date(startDate), new Date(endDate));\r\n\t\tthis.logoutEvent = this.event.subscribe('event:logout', (event: any) => {\r\n\t\t\tenvironment.production ? '' : console.log('event status' + event.data.from);\r\n\t\t\tif (localStorage.getItem(this.appname + 'userprofile')) {\r\n\t\t\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\t\t\tthis.initializeData();\r\n\t\t\t\tthis.ngOnInit();\r\n\t\t\t}\r\n\r\n\t\t});\r\n\t\tthis.getRecentTrType();\r\n\t}\r\n\tngOnDestroy() {\r\n\t\tif (this.langChangeSubscription) {\r\n\t\t\tthis.langChangeSubscription.unsubscribe();\r\n\t\t}\r\n\t\tthis.logoutEvent.unsubscribe();\r\n\t\tthis.modalService.dismissAll();\r\n\t\twindow.sessionStorage.clear();\r\n\t\tsessionStorage.clear();\r\n\t}\r\n\t// switchLanguage(language: string) {\r\n\t// \tthis.translate.use(language);\r\n\t// \tif(language == 'en') {\r\n\t// \t this.Lang = 'EN';\r\n\t// \t} else if(language == 'es') {\r\n\t// \t this.Lang = 'ES';\r\n\t// \t}\r\n\t// }\r\n\tinitializeData() {\r\n\t\tthis.dashboard = {\r\n\t\t\ttiles: false,\r\n\t\t\tsalessummary: false,\r\n\t\t\tpurchasesummary: false,\r\n\t\t\trecenttransactions: false,\r\n\t\t\treminders: false,\r\n\t\t\tcloking: false,\r\n\t\t\tleaves: false,\r\n\t\t\tworldclok: false,\r\n\t\t\tticketsummary: false,\r\n\t\t\ttasksummary: false,\r\n\t\t\tsnagsummary: false,\r\n\t\t\tezbcosting: false\r\n\t\t};\r\n\t\tthis.getDashboardMenus();\r\n\t\tvar d = new Date();\r\n\t\tvar n = new Date();\r\n\t\tvar c = new Date();\r\n\t\tvar pastYear = d.getFullYear() - 1;\r\n\t\tvar nextYear = n.getFullYear() + 1;\r\n\t\tvar currentyear = c.getFullYear();\r\n\t\td.setFullYear(pastYear);\r\n\t\tn.setFullYear(nextYear);\r\n\t\tc.setFullYear(currentyear);\r\n\t\tthis.leaveYearList.push(this.datePipe.transform(d, 'YYYY'));\r\n\t\tthis.leaveYearList.push(this.datePipe.transform(c, 'YYYY'));\r\n\t\tthis.leaveYearList.push(this.datePipe.transform(n, 'YYYY'));\r\n\t\tenvironment.production ? '' : console.log('Year List', this.leaveYearList);\r\n\t\tObject.assign(this, { doughnutData, pieData });\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\r\n\t\t// var dt = new Date()\r\n\t\t// var dt = moment.tz(moment(), 'Asia/Karachi').format('DD/MM/YYYY HH:mm')\r\n\t\tenvironment.production ? '' : console.log('UserData :', this.userdata);\r\n\r\n\t\tthis.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tif (this.userprofile.dashboard_sections != null) {\r\n\t\t\tvar dashboardSections = this.userprofile.dashboard_sections.split(',');\r\n\t\t\tthis.counts = [];\r\n\t\t\tthis.sales_trend = [];\r\n\t\t\tthis.purchase_trend = [];\r\n\t\t\tthis.transactions = [];\r\n\t\t\tthis.reminderList = [];\r\n\t\t\tthis.timing = [];\r\n\t\t\tthis.employeeLeaveList = [];\r\n\t\t\tthis.timeZoneList = [];\r\n\t\t\tthis.ticketList = [];\r\n\t\t\tthis.taskList = [];\r\n\t\t\tthis.snagList = [];\r\n\t\t\tthis.InvoiceTrendArr = [];\r\n\r\n\t\t\tdashboardSections.forEach(element => {\r\n\t\t\t\tif (element == 'tiles') {\r\n\t\t\t\t\tthis.dashboard.tiles = true;\r\n\t\t\t\t\tthis.getCountList();\r\n\t\t\t\t} else if (element == 'salessummary') {\r\n\t\t\t\t\tthis.dashboard.salessummary = true;\r\n\t\t\t\t\tthis.getSalesSummary()\r\n\t\t\t\t} else if (element == 'purchasesummary') {\r\n\t\t\t\t\tthis.dashboard.purchasesummary = true;\r\n\t\t\t\t\tthis.getPurchaseSummary()\r\n\t\t\t\t} else if (element == 'recenttransactions') {\r\n\t\t\t\t\tthis.dashboard.recenttransactions = true;\r\n\t\t\t\t\tthis.getTransactionList();\r\n\t\t\t\t} else if (element == 'reminders') {\r\n\t\t\t\t\tthis.dashboard.reminders = true;\r\n\t\t\t\t\tthis.getReminderType();\r\n\t\t\t\t\tthis.getDashboardReminders();\r\n\t\t\t\t} else if (element == 'clockin') {\r\n\t\t\t\t\tthis.dashboard.clockin = true;\r\n\t\t\t\t\tthis.getshiftDetails();\r\n\t\t\t\t\tthis.getOfficeClockingList();\r\n\t\t\t\t} else if (element == 'leaves') {\r\n\t\t\t\t\tthis.dashboard.leaves = true;\r\n\t\t\t\t\tthis.getEmployeeLeaveList()\r\n\t\t\t\t} else if (element == 'worldclok') {\r\n\t\t\t\t\tthis.dashboard.worldclok = true;\r\n\t\t\t\t\tthis.getWorldClockList()\r\n\t\t\t\t} else if (element == 'ticketsummary') {\r\n\t\t\t\t\tthis.dashboard.ticketsummary = true;\r\n\t\t\t\t\tthis.getTicketSummary()\r\n\t\t\t\t} else if (element == 'tasksummary') {\r\n\t\t\t\t\tthis.dashboard.tasksummary = true;\r\n\t\t\t\t\tthis.getTaskSummary()\r\n\t\t\t\t} else if (element == 'snagsummary') {\r\n\t\t\t\t\tthis.dashboard.snagsummary = true;\r\n\t\t\t\t\tthis.getSnagSummary()\r\n\t\t\t\t} else if (element == 'ezbcosting') {\r\n\t\t\t\t\tthis.getHomeEzbCosting()\r\n\t\t\t\t\tthis.dashboard.ezbcosting = true;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tngAfterViewInit() {\r\n\t}\r\n\r\n\tanimateAnalogClock(hour, minute, second, index, country, date) {\r\n\t\tthis.hourHandStyle = { transform: `translate3d(-50%, 0, 0) rotate(${(hour * 30) + (minute * 0.5) + (second * (0.5 / 60))}deg)` };\r\n\t\tthis.minuteHandStyle = { transform: `translate3d(-50%, 0, 0) rotate(${(minute * 6) + (second * 0.1)}deg)` };\r\n\t\tthis.secondHandStyle = { transform: `translate3d(-50%, 0, 0) rotate(${second * 6}deg)` };\r\n\t\tthis.formatedList[index] = {\r\n\t\t\thourHandStyle: this.hourHandStyle,\r\n\t\t\tminuteHandStyle: this.minuteHandStyle,\r\n\t\t\tsecondHandStyle: this.secondHandStyle,\r\n\t\t\thour: hour,\r\n\t\t\tminute: minute,\r\n\t\t\tsecond: second,\r\n\t\t\tcountry: country,\r\n\t\t\tdate: date\r\n\t\t};\r\n\t}\r\n\r\n\tclosepopup() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\r\n\tgetTime() {\r\n\t\tthis.timeZoneList.forEach((element, index) => {\r\n\t\t\treturn setInterval(() => {\r\n\t\t\t\tvar date = moment.tz(moment(), element.zone).format('DD-MM-yyyy')\r\n\t\t\t\tvar hour = moment.tz(moment(), element.zone).format('HH')\r\n\t\t\t\tvar minute = moment.tz(moment(), element.zone).format('mm')\r\n\t\t\t\tvar second = moment.tz(moment(), element.zone).format('ss')\r\n\t\t\t\tthis.animateAnalogClock(hour, minute, second, index, element.country, date);\r\n\t\t\t}, 1000);\r\n\t\t});\r\n\t}\r\n\r\n\tformatclock(num: number) {\r\n\t\treturn (num + '').length === 1 ? '0' + num : num + '';\r\n\t}\r\n\r\n\tformatclock12Hrs(clock: any) {\r\n\t\tif (clock.country == '') {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar hour = (clock.hour + '').length === 1 ? '0' + clock.hour : clock.hour + '';\r\n\t\tvar minute = (clock.minute + '').length === 1 ? '0' + clock.minute : clock.minute + '';\r\n\t\tvar second = (clock.second + '').length === 1 ? '0' + clock.second : clock.second + '';\r\n\t\tvar hrTime = this.datePipe.transform(new Date(), 'yyy-MM-dd') + ' ' + hour + ':' + minute + ':' + second;\r\n\t\tvar momentTime = moment(hrTime).format('hh:mm a');\r\n\t\t// return this.datePipe.transform(new Date(hrTime), 'hh:mm a');\r\n\t\treturn momentTime;\r\n\t}\r\n\taddLeave(item, action) {\r\n\t\tvar modalRef = null\r\n\t\tmodalRef = this.modalService.open(AddleaveComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n\t\tmodalRef.componentInstance.action = action;\r\n\t\tmodalRef.componentInstance.empid = this.userdata.empid;\r\n\t\tmodalRef.componentInstance.from = 'dashboard';\r\n\t\tif (item.id) {\r\n\t\t\tmodalRef.componentInstance.id = item.id;\r\n\t\t}\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result == 'save') {\r\n\t\t\t\tthis.getEmployeeLeaveList();\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\tdropdowntoggle2() {\r\n\t\tthis.isShow2 = !this.isShow2;\r\n\t}\r\n\ttoggleCheckBtn() {\r\n\t\tthis.ischeckIn = !this.ischeckIn;\r\n\t}\r\n\tcounts: any = {\r\n\t\tcust: 0,\r\n\t\tdocs: 0,\r\n\t\texpense: 0,\r\n\t\tinv: 0,\r\n\t\tkits: 0,\r\n\t\tleads: 0,\r\n\t\tlicenses: 0,\r\n\t\torders: 0,\r\n\t\tpos: 0,\r\n\t\tprods: 0,\r\n\t\tproj: 0,\r\n\t\tqte: 0,\r\n\t\tsalesrequests: 0,\r\n\t\tsuppliers: 0,\r\n\t\ttasks: 0,\r\n\t\ttickets: 0,\r\n\t\tpurchaserequests: 0,\r\n\t\tassets: 0,\r\n\t\temployees: 0,\r\n\t\tschedules: 0\r\n\t}\r\n\r\n\r\n\t// events\r\n\tpublic chartClicked(e: any): void {\r\n\r\n\t}\r\n\tpublic chartHovered(e: any): void {\r\n\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\t// If you need to do anything additional when the language changes, do it here\r\n\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t\tvar monthArr = [];\r\n\t\tfor (let i = 11; i >= 0; i--) {\r\n\t\t\tlet now = new Date();\r\n\t\t\tlet newdate = now.setMonth(now.getMonth() - i);\r\n\t\t\tif (i == 0) {\r\n\t\t\t\tthis.ezbcostingFilter.monthyear = this.formatDate(newdate);\r\n\t\t\t}\r\n\t\t\t// environment.production ? '' : console.log(this.formatDate(newdate));\r\n\t\t\tmonthArr.push(this.formatDate(newdate));\r\n\t\t\t// environment.production ? '' : console.log('month list', this.lastMonth);\r\n\t\t}\r\n\t\tthis.lastMonth = monthArr.reverse();\r\n\t\tthis.dropdownSettings = {\r\n\t\t\tsingleSelection: false,\r\n\t\t\tidField: 'Value',\r\n\t\t\ttextField: 'Text',\r\n\t\t\tselectAllText: 'Select All',\r\n\t\t\tunSelectAllText: 'UnSelect All',\r\n\t\t\titemsShowLimit: 2,\r\n\t\t\tallowSearchFilter: true\r\n\t\t}\r\n\r\n\t\tvar editDataForHeader = '';\r\n\t\tthis.commonservice.headerEditItemData.next(editDataForHeader); //end '\r\n\t\tthis.cd.detectChanges();\r\n\t\t//Uncomment this for connecting signalr\r\n\t\t// this.signalrHUB.connect(); //Uncomment it for signalr connection\r\n\t\t// setTimeout(() => { this.signalrHUB.subscribeListners(); }, 2000);\r\n\t}\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/home/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tdropdowntoggle() {\r\n\t\tthis.isShow = !this.isShow;\r\n\t}\r\n\r\n\tgetReminderType() {\r\n\t\tthis.commonservice.getComboEnums('remindertype').subscribe(data => {\r\n\t\t\tthis.reminderTypes = data;\r\n\t\t\tenvironment.production ? '' : console.log('Reminder Types', this.reminderTypes);\r\n\t\t})\r\n\t}\r\n\tdeleteReminder() {\r\n\t\tvar ids = [];\r\n\t\tthis.filteredReminders.forEach(item => {\r\n\t\t\tif (item.ischecked) {\r\n\t\t\t\tids.push(item.id);\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (ids.length == 0) {\r\n\t\t\tthis.toastr.Error(\"Please select reminder\");\r\n\t\t} else {\r\n\t\t\tthis.deleteReminderConfirmation(ids);\r\n\t\t}\r\n\t}\r\n\tmarkRead() {\r\n\t\tvar ids = [];\r\n\t\tthis.filteredReminders.forEach(item => {\r\n\t\t\tif (item.ischecked) {\r\n\t\t\t\tids.push(item.id);\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (ids.length == 0) {\r\n\t\t\tthis.toastr.Error(\"Please select reminder\");\r\n\t\t} else {\r\n\t\t\tthis.markReadConfirmation(ids);\r\n\t\t}\r\n\t}\r\n\tmarkReadConfirmation(ids) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to mark read selected reminders?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tvar postObj = {\r\n\t\t\t\t\tcreateby: this.userdata.email,\r\n\t\t\t\t\tcreatedate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\tcompanyid: this.userdata.companyid,\r\n\t\t\t\t\tids: ids\r\n\t\t\t\t}\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.markReadReminder(postObj).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t\tthis.getDashboardReminders();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading get purchase req action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tdeleteReminderConfirmation(ids) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tvar postObj = {\r\n\t\t\t\t\tcreateby: this.userdata.email,\r\n\t\t\t\t\tcreatedate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\tcompanyid: this.userdata.companyid,\r\n\t\t\t\t\tids: ids\r\n\t\t\t\t}\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteAllReminder(postObj).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t\tthis.getDashboardReminders();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading get purchase req action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tgetRecentTrType() {\r\n\t\tthis.service.getRecentTransactionType().subscribe(data => {\r\n\t\t\tthis.recentTrTypeList = data;\r\n\t\t\tenvironment.production ? '' : console.log('recent tr type list', this.recentTrTypeList);\r\n\t\t})\r\n\t}\r\n\r\n\tgetDepartmentsList() {\r\n\t\tthis.hrService.getEmployeeDeptList().subscribe(data => {\r\n\t\t\tthis.departmentlist = data;\r\n\t\t})\r\n\t}\r\n\tgetTechnicians() {\r\n\t\tthis.commonservice.getAssigntoForTask().subscribe((res: any) => {\r\n\t\t\tthis.technicianList = res;\r\n\t\t\tthis.setEmployee();\r\n\t\t});\r\n\t}\r\n\tsetEmployee() {\r\n\t\tvar techArray = [];\r\n\t\tthis.selectedAssignTo = [];\r\n\t\tif (this.reminder.assign_to) {\r\n\t\t\ttechArray = this.reminder.assign_to.split(',');\r\n\t\t}\r\n\t\tthis.technicianList.forEach(res => {\r\n\t\t\tres.checked = false;\r\n\t\t})\r\n\t\ttechArray.forEach(tech => {\r\n\t\t\tthis.technicianList.forEach(res => {\r\n\t\t\t\tif (tech == res.Value) {\r\n\t\t\t\t\tres.checked = true;\r\n\t\t\t\t\tthis.selectedAssignTo.push(res);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n\tonItemSelect(item: any) {\r\n\t\tthis.reminder.assign_to = [];\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedAssignTo.forEach(data => {\r\n\t\t\tarrayData.push('' + data.Value);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.reminder.assign_to = this.stringData;\r\n\t\tenvironment.production ? '' : console.log(this.reminder.assign_to);\r\n\t}\r\n\tonSelectAll(items: any) {\r\n\t\tenvironment.production ? '' : console.log(this.reminder.assign_to);\r\n\t}\r\n\r\n\tonItemDeSelect($event) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedAssignTo.forEach(data => {\r\n\t\t\tarrayData.push('' + data.Value);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.reminder.assign_to = this.stringData;\r\n\t\tenvironment.production ? '' : console.log(this.reminder.assign_to);\r\n\t}\r\n\r\n\t// onDropDownClose() {\r\n\t// \tlet filteredArray = [];\r\n\t// \t// filteredArray = this.myArray.filter(val => !this.removedArr.includes(val));\r\n\t// \tthis.myArray.forEach(data => {\r\n\t// \t\tfilteredArray = this.myArray.filter()\r\n\t// \t})\r\n\t// \tfilteredArray = this.myArray.filter(data => data != this.removedArr);\r\n\t// \tconsole.log(filteredArray)\r\n\t// }\r\n\r\n\tsearchTransactions(value) {\r\n\t\tthis.transactions = []\r\n\t\tvar searchText = value.toLowerCase();\r\n\t\tthis.transactions = this.resTransactions.filter(f => {\r\n\t\t\tif (f.customer.toLowerCase().includes(searchText))\r\n\t\t\t\treturn f.customer.toLowerCase().includes(searchText)\r\n\t\t});\r\n\r\n\t}\r\n\r\n\r\n\tclockingModal(content, i) {\r\n\t\tthis.getshiftReasons(i);\r\n\t\tif (i == 'B') {\r\n\t\t\tthis.buttonType = 'break';\r\n\t\t\tif (this.brkStarted && this.shiftStarted) {\r\n\t\t\t\tthis.pause();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.buttonType = 'checkin';\r\n\t\t}\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n\t\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t\t}, (reason) => {\r\n\r\n\t\t\t});\r\n\t\t}, 1000)\r\n\t}\r\n\tsearchReminder() {\r\n\t\tthis.masterSelected = false;\r\n\t\tthis.filteredReminders = [];\r\n\t\tthis.reminderList.forEach(element => {\r\n\t\t\tif ((this.reminderFilter.searchtext != null ? element.title.toLowerCase().indexOf(this.reminderFilter.searchtext) > -1 : true) && (this.reminderFilter.type == '' ? true : element.type == this.reminderFilter.type)) {\r\n\t\t\t\telement.ischecked = false;\r\n\t\t\t\tthis.filteredReminders.push(element);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\trefresh(): void {\r\n\t\twindow.location.reload();\r\n\t}\r\n\tgetDashboardReminders() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getHomeReminders().subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tres.forEach(item => {\r\n\t\t\t\t\titem.ischecked = false;\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tthis.reminderList = res;\r\n\t\t\tthis.filteredReminders = res;\r\n\r\n\t\t\tthis.events.publish('event:dashboard', {\r\n\t\t\t\tdata: {\r\n\t\t\t\t\t'from': 'dashboard',\r\n\t\t\t\t\t'reminders': this.reminderList ? this.reminderList : []\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading bin list ', err);\r\n\t\t});\r\n\t}\r\n\tgetDashboardMenus() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getHomeMenu().subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.menuItems = res;\r\n\t\t\t// const nestedArray = buildNestedStructure(this.menuItems);\r\n\t\t\t// console.log(JSON.stringify(nestedArray, null, 2));\r\n\r\n\t\t\tlocalStorage.setItem(this.appname + 'menu', JSON.stringify(this.menuItems));\r\n\t\t\tthis.events.publish('dashboard:menu', {});\r\n\r\n\t\t\tenvironment.production ? '' : console.log(' dashboard menu data ', this.dashboardData);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading bin list ', err);\r\n\t\t});\r\n\t}\r\n\r\n\t// getDashBoardData() {\r\n\t// \tthis.loader.start();\r\n\t// \tthis.service.getHomeData().subscribe(res => {\r\n\t// \t\tthis.loader.stop();\r\n\t// \t\tthis.dashboardData = res;\r\n\t// \t\t// added code for menu list\r\n\t// \t\tthis.menuItems = this.dashboardData.menus;\r\n\t// \t\tenvironment.production ? '' : console.log('menu', this.menuItems);\r\n\t// \t\tlocalStorage.setItem(this.appname + 'menu', JSON.stringify(this.menuItems));\r\n\t// \t\tthis.events.publish('dashboard:menu', {});\r\n\t// \t\tthis.counts = this.dashboardData.counts ? this.dashboardData.counts : {};\r\n\t// \t\tthis.transactions = this.dashboardData.lstRecentTransactions;\r\n\t// \t\tthis.stickeys = this.dashboardData.lstnotes;\r\n\t// \t\tenvironment.production ? '' : console.log(' dashboard data ', this.dashboardData);\r\n\t// \t}, err => {\r\n\t// \t\tthis.loader.stop();\r\n\t// \t\tenvironment.production ? '' : console.log('Error : While loading bin list ', err);\r\n\t// \t});\r\n\t// }\r\n\topenReminderModal(content, id) {\r\n\t\tthis.getTechnicians();\r\n\t\tthis.getDepartmentsList();\r\n\t\tif (id == '') {\r\n\t\t\tthis.reminder = {\r\n\t\t\t\tdept: '',\r\n\t\t\t\ttype: ''\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tthis.loader.start()\r\n\t\t\tthis.service.getReminderById(id).subscribe(res => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tif (res != null) {\r\n\t\t\t\t\tthis.reminder = res;\r\n\t\t\t\t\tthis.setEmployee();\r\n\t\t\t\t}\r\n\t\t\t}, err => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t})\r\n\t\t}\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.reminder = {};\r\n\t\tthis.selectedAssignTo = [];\r\n\t\tthis.modalService.dismissAll()\r\n\t}\r\n\r\n\tgetTransactionTypes() {\r\n\t\tthis.service.getTransactionType().subscribe(res => {\r\n\t\t\tthis.TransTypes = res;\r\n\t\t\tenvironment.production ? '' : console.log('TransTypes', res);\r\n\t\t})\r\n\t}\r\n\r\n\t// The master checkbox will check/ uncheck all items\r\n\tcheckUncheckAll() {\r\n\t\tthis.filteredReminders.forEach(item => {\r\n\t\t\titem.ischecked = this.masterSelected;\r\n\t\t})\r\n\t}\r\n\r\n\t// Check All Checkbox Checked\r\n\tisAllSelected() {\r\n\t\tthis.masterSelected = this.reminderList.every(function (item: any) {\r\n\t\t\treturn item.isSelected == true;\r\n\t\t})\r\n\t\tthis.getCheckedItemList();\r\n\t}\r\n\r\n\t// Get List of Checked Items\r\n\tgetCheckedItemList() {\r\n\t\tthis.checkedList = [];\r\n\t\tfor (var i = 0; i < this.reminderList.length; i++) {\r\n\t\t\tif (this.reminderList[i].isSelected)\r\n\t\t\t\tthis.checkedList.push(this.reminderList[i]);\r\n\t\t}\r\n\t\tthis.checkedList = JSON.stringify(this.checkedList);\r\n\t}\r\n\tsubmitReminder() {\r\n\t\tif (this.reminder.title == undefined || this.reminder.title == null) {\r\n\t\t\tthis.toastr.Error('Please enter title');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.reminder.start_date == undefined || this.reminder.start_date == null) {\r\n\t\t\tthis.toastr.Error('Please select start date');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.reminder.end_date == undefined || this.reminder.end_date == null) {\r\n\t\t\tthis.toastr.Error('Please select end date');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.reminder.type == undefined || this.reminder.type == null || this.reminder.type == '') {\r\n\t\t\tthis.toastr.Error('Please select type');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tvar data;\r\n\t\tif (this.reminder.id) {\r\n\t\t\tdata = {\r\n\t\t\t\tid: this.reminder.id,\r\n\t\t\t\tupdateby: this.userprofile.email,\r\n\t\t\t\tupdatedate: this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat),\r\n\t\t\t\ttitle: this.reminder.title,\r\n\t\t\t\tdescription: this.reminder.description,\r\n\t\t\t\tactive: true,\r\n\t\t\t\tmark_read: false,\r\n\t\t\t\tcompanyid: this.userprofile.companyid,\r\n\t\t\t\tstart_date: this.datePipe.transform(this.reminder.start_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\tend_date: this.datePipe.transform(this.reminder.end_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\tdue_date: this.datePipe.transform(this.reminder.due_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\ttype: this.reminder.type,\r\n\t\t\t\tpic: this.reminder.pic,\r\n\t\t\t\tadd_to_calender: 0,\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tdata = {\r\n\t\t\t\tid: null,\r\n\t\t\t\tcreateby: this.userprofile.email,\r\n\t\t\t\tcreatedate: this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat),\r\n\t\t\t\ttitle: this.reminder.title,\r\n\t\t\t\tdescription: this.reminder.description,\r\n\t\t\t\tactive: true,\r\n\t\t\t\tcompanyid: this.userprofile.companyid,\r\n\t\t\t\tmark_read: false,\r\n\t\t\t\tstart_date: this.datePipe.transform(this.reminder.start_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\tend_date: this.datePipe.transform(this.reminder.end_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\tdue_date: this.datePipe.transform(this.reminder.due_date, this.userprofile.postdatetimeformat),\r\n\t\t\t\ttype: this.reminder.type,\r\n\t\t\t\tpic: '',\r\n\t\t\t\tadd_to_calender: 0,\r\n\t\t\t\tdept: this.reminder.dept,\r\n\t\t\t}\r\n\t\t}\r\n\t\tdata.assign_to = this.reminder.assign_to ? this.reminder.assign_to : '';\r\n\t\tenvironment.production ? '' : console.log(data);\r\n\t\tthis.service.postReminder(data).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.reminder = {};\r\n\t\t\t\tthis.selectedAssignTo = [];\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\tthis.getDashboardReminders();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading bin list ', err);\r\n\t\t})\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr('status');\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.transactions.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\r\n\tgetEmployeeLeaveList() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getHomeEmpLeaves().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.employeeLeaveList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\tgetshiftDetails() {\r\n\t\tthis.totalShiftTime = 0;\r\n\t\tthis.breakTime = 0;\r\n\t\tthis.timing = [];\r\n\t\t// this.brkStarted = JSON.parse(localStorage.getItem(this.appName+'brkStarted')); end_time, start_time\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getShiftDetails().subscribe(data => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tvar totalShiftTimeinMin = 0\r\n\t\t\tthis.shiftDetails = data;\r\n\t\t\tif (this.shiftDetails != null) {\r\n\t\t\t\tthis.shiftStarted = true;\r\n\t\t\t\tthis.processCalTotalHrs();\r\n\t\t\t} else {\r\n\t\t\t\tthis.shiftDetails = {\r\n\t\t\t\t\tstart_time: null,\r\n\t\t\t\t\tend_time: null,\r\n\t\t\t\t\ttimings: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (this.shiftDetails.start_time != null && this.shiftDetails.end_time == null) {\r\n\t\t\t\tthis.isBreakOption = true;\r\n\t\t\t\tthis.isEndShift = true;\r\n\t\t\t\tthis.startShiftOption = false;\r\n\t\t\t} if (this.shiftDetails.start_time != null && this.shiftDetails.end_time != null) {\r\n\t\t\t\tthis.startShiftOption = false;\r\n\t\t\t}\r\n\t\t\tif (this.shiftDetails.start_time == null && this.shiftDetails.end_time == null) {\r\n\t\t\t\tthis.startShiftOption = true;\r\n\t\t\t\tthis.isBreakOption = false;\r\n\t\t\t\tthis.isEndShift = false;\r\n\t\t\t}\r\n\r\n\t\t\t// ************************************\r\n\t\t\t// this.loader.start();\r\n\t\t\tthis.timing = this.shiftDetails.timings ? this.shiftDetails.timings : [];\r\n\t\t\tenvironment.production ? '' : console.log('Timing array : ', this.timing);\r\n\t\t\tif (this.shiftDetails.start_time != null) {\r\n\r\n\t\t\t\tthis.startMainTimeinhours = moment(this.shiftDetails.start_time).format('HH');\r\n\t\t\t\tthis.startMainMin = moment(this.shiftDetails.start_time).format('mm');\r\n\t\t\t\tenvironment.production ? '' : console.log('hr nd time', this.startMainTimeinhours, this.startMainMin);\r\n\r\n\t\t\t\t// var startMainTimeinhours = new Date(this.shiftDetails.start_time).getHours();\r\n\t\t\t\t// var this.startMainMin = new Date(this.shiftDetails.start_time).getMinutes();\r\n\t\t\t\tthis.totalMainMin = (Number(this.startMainTimeinhours) * 60) + Number(this.startMainMin)\r\n\r\n\t\t\t\tthis.endTimeinHr = moment().format('HH');\r\n\t\t\t\tthis.endTimeInMin = moment().format('mm');\r\n\r\n\t\t\t\tvar totalEndTimeinMin = (Number(this.endTimeinHr) * 60) + Number(this.endTimeInMin)\r\n\t\t\t\tvar diffTime = totalEndTimeinMin - this.totalMainMin;\r\n\t\t\t\tthis.totalShiftTime = diffTime;\r\n\t\t\t\t//added by mayur\r\n\t\t\t\tif (this.timing.length == 0) {\r\n\t\t\t\t\tif (this.totalShiftTime > 60) {\r\n\t\t\t\t\t\tvar hours = Math.floor(this.totalShiftTime / 60);\r\n\t\t\t\t\t\tvar minutes = this.totalShiftTime % 60;\r\n\t\t\t\t\t\tif (minutes < 10) {\r\n\t\t\t\t\t\t\tthis.totalShiftTime = hours + ':' + '0' + minutes\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.totalShiftTime = hours + ':' + minutes\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else if (this.totalShiftTime < 60 && this.totalShiftTime > 10) {\r\n\t\t\t\t\t\tthis.totalShiftTime = '00' + ':' + this.totalShiftTime\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.totalShiftTime = '00' + ':' + '0' + this.totalShiftTime\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t// return false;\r\n\t\t\t}\r\n\t\t\tif (this.timing == null) {\r\n\t\t\t\tthis.brkStarted = false;\r\n\t\t\t\tlocalStorage.setItem(this.appname + 'brkStarted', 'false');\r\n\t\t\t\treturn false;\r\n\t\t\t} else if (this.timing.length > 0) {\r\n\r\n\t\t\t\tfor (var i = 0; i < this.timing.length; i++) {\r\n\t\t\t\t\t//create date format \r\n\t\t\t\t\tthis.timeStart = moment(this.timing[i].start_time).format('HH');\r\n\t\t\t\t\tthis.timing[i].startHrs = moment(this.timing[i].start_time).format('HH');\r\n\t\t\t\t\tthis.timing[i].startMin = moment(this.timing[i].start_time).format('mm');\r\n\r\n\t\t\t\t\t// new Date(this.timing[i].start_time).getHours();\r\n\r\n\t\t\t\t\tthis.timestartmin = moment(this.timing[i].start_time).format('mm');\r\n\t\t\t\t\tthis.totalStartTime = (Number(this.timeStart) * 60) + Number(this.timestartmin)\r\n\r\n\t\t\t\t\tif (this.timing[i].end_time == null) {\r\n\t\t\t\t\t\tthis.timing[i].endHrs = '--'\r\n\t\t\t\t\t\tthis.timeEnd = moment().format('HH');\r\n\t\t\t\t\t\tvar timeinmin = moment().format('mm');\r\n\t\t\t\t\t\tthis.totelEndTime = (Number(this.timeEnd) * 60) + Number(timeinmin)\r\n\t\t\t\t\t\tvar diffTime = this.totelEndTime - this.totalStartTime;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.timing[i].endHrs = moment(this.timing[i].end_time).format('HH');\r\n\t\t\t\t\t\tthis.timing[i].endMin = moment(this.timing[i].end_time).format('mm');\r\n\t\t\t\t\t\tthis.timeEnd = moment(this.timing[i].end_time).format('HH');\r\n\t\t\t\t\t\tvar timeinmin = moment(this.timing[i].end_time).format('mm');\r\n\t\t\t\t\t\tthis.totelEndTime = (Number(this.timeEnd) * 60) + Number(timeinmin)\r\n\t\t\t\t\t\tvar diffTime = this.totelEndTime - this.totalStartTime;\r\n\t\t\t\t\t}\r\n\r\n\r\n\t\t\t\t\ttotalShiftTimeinMin += diffTime;\r\n\t\t\t\t\tif (i == this.timing.length - 1) {\r\n\t\t\t\t\t\tif (totalShiftTimeinMin > 60) {\r\n\t\t\t\t\t\t\tthis.totalTimeinEntries = totalShiftTimeinMin / 60\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.totalShiftTime -= totalShiftTimeinMin;\r\n\t\t\t\t\t\tthis.breakTime = totalShiftTimeinMin;\r\n\t\t\t\t\t\tif (this.breakTime > 60) {\r\n\t\t\t\t\t\t\t// this.breakTime = (this.breakTime / 60).toFixed(2);\r\n\t\t\t\t\t\t\tvar hours = Math.floor(this.breakTime / 60);\r\n\t\t\t\t\t\t\tvar minutes = this.breakTime % 60;\r\n\t\t\t\t\t\t\tif (minutes < 10) {\r\n\t\t\t\t\t\t\t\tthis.breakTime = hours + ':' + '0' + minutes\r\n\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.breakTime = hours + ':' + minutes\r\n\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse if (this.breakTime < 60 && this.breakTime > 10) {\r\n\t\t\t\t\t\t\tthis.breakTime = '00' + ':' + this.breakTime\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.breakTime = '00' + ':' + '0' + this.breakTime\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (this.totalShiftTime > 60) {\r\n\t\t\t\t\t\t\tvar hours = Math.floor(this.totalShiftTime / 60);\r\n\t\t\t\t\t\t\tvar minutes = this.totalShiftTime % 60;\r\n\t\t\t\t\t\t\tif (minutes < 10) {\r\n\t\t\t\t\t\t\t\tthis.totalShiftTime = hours + ':' + '0' + minutes\r\n\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tthis.totalShiftTime = hours + ':' + minutes\r\n\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else if (this.totalShiftTime < 60 && this.totalShiftTime > 10) {\r\n\t\t\t\t\t\t\tthis.totalShiftTime = '00' + ':' + this.totalShiftTime\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.totalShiftTime = '00' + ':' + '0' + this.totalShiftTime\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tenvironment.production ? '' : console.log('total shift time in minutes', this.totalShiftTime);\r\n\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tfor (var j = 0; j < this.timing.length; j++) {\r\n\t\t\t\t\tif (this.timing.length > 1) {\r\n\t\t\t\t\t\tvar lasttime = this.timing[j].end_time;\r\n\t\t\t\t\t\tenvironment.production ? '' : console.log('end t', lasttime);\r\n\t\t\t\t\t\tvar newstart = this.timing[j].start_time;\r\n\t\t\t\t\t\tenvironment.production ? '' : console.log('start t', newstart);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tenvironment.production ? '' : console.log(' last item of timing array is : ', this.timing[this.timing.length - 1]);\r\n\t\t\t\tif (this.timing[this.timing.length - 1].type === 'break-start') {\r\n\t\t\t\t\tenvironment.production ? '' : console.log('new Breakstarted code executed :)');\r\n\t\t\t\t\tthis.brkStarted = true;\r\n\t\t\t\t\tlocalStorage.setItem(this.appname + 'brkStarted', 'true');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.brkStarted = false;\r\n\t\t\t\t\tlocalStorage.setItem(this.appname + 'brkStarted', 'false');\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.brkStarted = false;\r\n\t\t\t\tlocalStorage.setItem(this.appname + 'brkStarted', 'false');\r\n\t\t\t}\r\n\r\n\t\t\t// **********************************\r\n\r\n\t\t\tenvironment.production ? '' : console.log('Shift details data : ', this.shiftDetails);\r\n\t\t\tif (this.shiftDetails.shift_id == 0) {\r\n\t\t\t\tthis.shiftStarted = false;\r\n\t\t\t\tlocalStorage.setItem(this.appname + 'shiftStarted', 'false');\r\n\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('error : ', err);\r\n\t\t});\r\n\r\n\t}\r\n\r\n\tprocessCalTotalHrs() {\r\n\t\tthis.totalWorkHrs = [];\r\n\t\tthis.totalBreakHrs = [];\r\n\t\tthis.totalWorkTime = '00:00';\r\n\t\tthis.totalBreakTime = '00:00';\r\n\t\tconst dateFormat = \"YYYY-MM-DD HH:mm:ss\";\r\n\t\tif (this.shiftDetails.shift_id > 0) {\r\n\t\t\tvar cDate = new Date();\r\n\t\t\tthis.calculateHrsInTwoDte('work', this.shiftDetails.start_time, moment(cDate).format(dateFormat));\r\n\t\t\tif (this.shiftDetails.timings != null && this.shiftDetails.timings.length > 0) {\r\n\t\t\t\tthis.shiftDetails.timings.forEach((element, index) => {\r\n\t\t\t\t\tif (element.end_time != null) {\r\n\t\t\t\t\t\tthis.calculateHrsInTwoDte('break', element.start_time, element.end_time);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tvar cDate = new Date();\r\n\t\t\t\t\t\tthis.calculateHrsInTwoDte('break', element.start_time, moment(cDate).format(dateFormat));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (index == this.shiftDetails.timings.length - 1) {\r\n\t\t\t\t\t\tvar totalWorkHrsMinutes = (this.totalWorkHrs[0].hours * 60) + this.totalWorkHrs[0].minutes;\r\n\t\t\t\t\t\tvar totalBreakHrsMinutes = 0;\r\n\t\t\t\t\t\tthis.totalBreakHrs.forEach(brk => {\r\n\t\t\t\t\t\t\ttotalBreakHrsMinutes += (brk.hours * 60) + brk.minutes;\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\tvar actualWorkingHrs = totalWorkHrsMinutes - totalBreakHrsMinutes;\r\n\t\t\t\t\t\tthis.totalWorkTime = actualWorkingHrs / 60;\r\n\t\t\t\t\t\tconst minutes = actualWorkingHrs % 60;\r\n\t\t\t\t\t\tconst hrs = '' + Math.floor(actualWorkingHrs / 60);\r\n\t\t\t\t\t\tif (hrs.length == 1) {\r\n\t\t\t\t\t\t\tthis.totalWorkTime = '0' + hrs;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.totalWorkTime = hrs;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tvar hrsString = '' + parseInt('' + minutes);\r\n\t\t\t\t\t\tif (hrsString.length == 1) {\r\n\t\t\t\t\t\t\thrsString = '0' + hrsString;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.totalWorkTime += ':' + hrsString;\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tcalculateHrsInTwoDte(from, startDte, endDte) {\r\n\t\t//Works for iOS\r\n\t\t// var timeStart = new Date((startDte).replace(/-/g, \"/\")).getTime().valueOf();\r\n\t\t// var timeEnd = new Date((endDte).replace(/-/g, \"/\")).getTime().valueOf();\r\n\t\tvar timeStart = new Date(startDte).getTime();\r\n\t\tvar timeEnd = new Date(endDte).getTime();\r\n\t\tvar hourDiff = timeEnd - timeStart; //in ms\r\n\t\tvar secDiff = hourDiff / 1000; //in s\r\n\t\tvar minDiff = hourDiff / 60 / 1000; //in minutes\r\n\t\tvar hDiff = hourDiff / 3600 / 1000; //in hours\r\n\t\tvar hours = Math.floor(hDiff);\r\n\t\tvar minutes = minDiff - 60 * hours;\r\n\t\tif (from == 'break') {\r\n\t\t\tthis.totalBreakHrs.push({\r\n\t\t\t\thours: Math.floor(hDiff),\r\n\t\t\t\tminutes: minutes\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\tthis.totalWorkHrs.push({\r\n\t\t\t\thours: Math.floor(hDiff),\r\n\t\t\t\tminutes: minutes\r\n\t\t\t})\r\n\t\t}\r\n\t\tthis.calculateTotalHrs();\r\n\t}\r\n\tcalculateTotalHrs() {\r\n\t\tvar totalWrkHrs = 0, totalWrkMnt = 0;\r\n\t\tvar totalBrkHrs = 0, totalBrkMnt = 0;\r\n\t\tif (this.totalWorkHrs.length > 0) {\r\n\t\t\tthis.totalWorkHrs.forEach((element) => {\r\n\t\t\t\ttotalWrkHrs += element.hours;\r\n\t\t\t\ttotalWrkMnt += element.minutes;\r\n\t\t\t});\r\n\t\t}\r\n\t\tif (this.totalBreakHrs.length > 0) {\r\n\t\t\tthis.totalBreakHrs.forEach((element) => {\r\n\t\t\t\ttotalBrkHrs += element.hours;\r\n\t\t\t\ttotalBrkMnt += element.minutes;\r\n\t\t\t});\r\n\t\t}\r\n\t\ttotalWrkHrs += totalWrkMnt / 60;\r\n\t\tthis.shiftDetails.aproxhrsspend = totalWrkHrs.toFixed(4)\r\n\t\ttotalWrkMnt = totalWrkMnt % 60;\r\n\t\ttotalBrkHrs += totalBrkMnt / 60;\r\n\t\ttotalBrkMnt = totalBrkMnt % 60;\r\n\t\tvar workHrs = ('' + totalWrkHrs).substring(0, 2).replace('.', '');\r\n\t\tvar workMin = ('' + totalWrkMnt).substring(0, 2).replace('.', '');\r\n\t\tif (workHrs.length == 1) {\r\n\t\t\tthis.totalWorkTime = '0' + workHrs;\r\n\t\t} else {\r\n\t\t\tthis.totalWorkTime = workHrs;\r\n\t\t}\r\n\t\tif (workMin.length == 1) {\r\n\t\t\tthis.totalWorkTime = this.totalWorkTime + ':' + '0' + workMin;\r\n\t\t} else {\r\n\t\t\tthis.totalWorkTime = this.totalWorkTime + ':' + workMin;\r\n\t\t}\r\n\t\tvar breakHrs = ('' + totalBrkHrs).substring(0, 2).replace('.', '');\r\n\t\tvar breakMin = ('' + totalBrkMnt).substring(0, 2).replace('.', '');\r\n\t\tif (breakHrs.length == 1) {\r\n\t\t\tthis.totalBreakTime = '0' + breakHrs;\r\n\t\t} else {\r\n\t\t\tthis.totalBreakTime = breakHrs;\r\n\t\t}\r\n\t\tif (breakMin.length == 1) {\r\n\t\t\tthis.totalBreakTime = this.totalBreakTime + ':' + '0' + breakMin;\r\n\t\t} else {\r\n\t\t\tthis.totalBreakTime = this.totalBreakTime + ':' + breakMin;\r\n\t\t}\r\n\t}\r\n\r\n\tgetReasonId(n) {\r\n\t\tif (n.checked == true) {\r\n\t\t\tthis.reasonId = n.id;\r\n\t\t}\r\n\t}\r\n\tstartShift() {\r\n\t\tthis.loader.start();\r\n\t\tthis.processCalTotalHrs()\r\n\t\tlet objShift = {};\r\n\t\tif (this.shiftDetails != null && this.shiftDetails.shift_id != undefined && this.shiftDetails.shift_id > 0) {\r\n\t\t\tobjShift = {\r\n\t\t\t\t\"id\": this.shiftDetails.shift_id,\r\n\t\t\t\t\"employee_id\": this.userprofile.empid,\r\n\t\t\t\t\"start_time\": this.shiftDetails.start_time,\r\n\t\t\t\t\"dow\": this.datePipe.transform(this.shiftDetails.dow, this.userdata.postdatetimeformat),\r\n\t\t\t\t\"end_time\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\"status\": \"submitted\",\r\n\t\t\t\t\"active\": true,\r\n\t\t\t\t\"companyid\": this.userprofile.companyid,\r\n\t\t\t\t\"createby\": this.shiftDetails.createby,\r\n\t\t\t\t\"createdate\": this.datePipe.transform(this.shiftDetails.createdate, this.userprofile.postdatetimeformat),\r\n\t\t\t\t\"updateby\": this.userprofile.email,\r\n\t\t\t\t\"updatedate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\"reasonid\": this.reasonId ? this.reasonId : this.shiftDetails.reasonid,\r\n\t\t\t\t\"other_reason\": this.otherReason,\r\n\t\t\t\t\"aproxhrsspend\": this.shiftDetails.aproxhrsspend\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tobjShift = {\r\n\t\t\t\t// transporter_id: JSON.parse(localStorage.getItem(this.appName+'userprofile')).id,\r\n\t\t\t\t// transporter_vehicle_id: id,\r\n\t\t\t\t\"companyid\": this.userprofile.companyid,\r\n\t\t\t\t\"start_time\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\"employee_id\": this.userprofile.empid,\r\n\t\t\t\t\"end_time\": null,\r\n\t\t\t\t\"status\": 'submitted',\r\n\t\t\t\t\"active\": true,\r\n\t\t\t\t\"createby\": this.userprofile.email,\r\n\t\t\t\t\"createdate\": this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat),\r\n\t\t\t\t\"reasonid\": this.reasonId,\r\n\t\t\t\t\"other_reason\": this.otherReason,\r\n\t\t\t};\r\n\t\t}\r\n\t\tenvironment.production ? '' : console.log('Shift data!', JSON.stringify(objShift));\r\n\t\tthis.service.toggleEmployeeShift(objShift).subscribe((resp: any) => {\r\n\t\t\tenvironment.production ? '' : console.log('Response from toggleshift start: ', resp);\r\n\t\t\tthis.shiftDetails.shift_id == 0 ? Swal.fire('', 'Shift Started.', 'success') : Swal.fire('', 'Shift Ended.', 'success');\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.getshiftDetails();\r\n\t\t\tenvironment.production ? '' : console.log('Shift started!');\r\n\t\t\tthis.isToggleSwitch = !this.isToggleSwitch;\r\n\t\t\tthis.otherReason = '';\r\n\t\t\tthis.reasonId = null;\r\n\t\t\tthis.modalService.dismissAll();\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('error : ', err);\r\n\t\t\t// this.presentAlert('Shift Updated.');\r\n\t\t});\r\n\t}\r\n\tgetshiftReasons(type) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getReasons(type).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.reasonsList = res\r\n\t\t\tenvironment.production ? '' : console.log('reasonsList', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tpause() {\r\n\t\tif (this.brkStarted === true) {\r\n\t\t\tvar objBreak = {\r\n\t\t\t\treason: this.reason,\r\n\t\t\t\tid: this.timing[this.timing.length - 1].shifttime_id,\r\n\t\t\t\temployee_shift_id: this.shiftDetails.shift_id,\r\n\t\t\t\tstart_time: this.timing[this.timing.length - 1].start_time,\r\n\t\t\t\tend_time: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\ttype: 'break-end',\r\n\t\t\t\t// deletedby: this.userprofile.email,\r\n\t\t\t\tupdateby: this.userprofile.email,\r\n\t\t\t\t// status: 'submitted',\r\n\t\t\t\tactive: true,\r\n\t\t\t\tcompanyid: this.userprofile.companyid,\r\n\t\t\t\tupdatedate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t};\r\n\t\t\tthis.loader.start();\r\n\t\t\tthis.service.shiftEmployeeBreak(objBreak).subscribe(resp => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\tenvironment.production ? '' : console.log('Add Break response : ', resp);\r\n\t\t\t\tSwal.fire('', 'Break Ended.', 'success');\r\n\t\t\t\tthis.brkStarted = false;\r\n\t\t\t\tthis.getshiftDetails();\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\tvar objStart = {\r\n\t\t\t\temployee_shift_id: this.shiftDetails.shift_id,\r\n\t\t\t\tstart_time: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\ttype: 'break-start',\r\n\t\t\t\treasonid: this.reasonId,\r\n\t\t\t\tother_reason: this.otherReason,\r\n\t\t\t\tactive: true,\r\n\t\t\t\t// deletedby: this.userprofile.email,\r\n\t\t\t\tcreateby: this.userprofile.email,\r\n\t\t\t\tcompanyid: this.userprofile.companyid,\r\n\t\t\t\tcreatedate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t};\r\n\t\t\tthis.loader.start();\r\n\t\t\tthis.service.shiftEmployeeBreak(objStart).subscribe(resp => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tthis.brkStarted = true;\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\tSwal.fire('', 'Break Started.', 'success');\r\n\t\t\t\tenvironment.production ? '' : console.log('Add Break response : ', resp);\r\n\t\t\t\tthis.getshiftDetails();\r\n\t\t\t}, err => {\r\n\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tcloseCLockingModal() {\r\n\t\tthis.brkStarted = false;\r\n\t\tthis.shiftStarted = false\r\n\t\tthis.getshiftDetails();\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\r\n\t//Active Nave state\r\n\tsetNavActive(item) {\r\n\t}\r\n\r\n\t// Click Toggle menu\r\n\ttoggletNavActive(item) {\r\n\t\tif (!item.active) {\r\n\t\t\tthis.menuItems.forEach(a => {\r\n\t\t\t\tif (this.menuItems.includes(item))\r\n\t\t\t\t\ta.active = false\r\n\t\t\t\tif (!a.children) return false\r\n\t\t\t\ta.children.forEach(b => {\r\n\t\t\t\t\tif (a.children.includes(item)) {\r\n\t\t\t\t\t\tb.active = false\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t});\r\n\t\t}\r\n\t\titem.active = !item.active\r\n\t}\r\n\r\n\t//Fileupload\r\n\treadUrl(event: any) {\r\n\t\tif (event.target.files.length === 0)\r\n\t\t\treturn;\r\n\t\t//Image upload validation\r\n\t\tvar mimeType = event.target.files[0].type;\r\n\t\tif (mimeType.match(/image\\/*/) == null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// Image upload\r\n\t\tvar reader = new FileReader();\r\n\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\treader.onload = (_event) => {\r\n\t\t\tthis.url = reader.result;\r\n\t\t}\r\n\t}\r\n\r\n\tnavigate(item) {\r\n\t\tif (item.type == 'link') {\r\n\t\t\tif (item.ang_root == '/login') {\r\n\t\t\t\twindow.localStorage.clear();\r\n\t\t\t\tlocalStorage.clear();\r\n\t\t\t\tthis.events.publish('event:logout', {\r\n\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t'from': 'header logout'\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tthis.router.navigate([item.ang_root], { replaceUrl: true });\r\n\t\t}\r\n\t}\r\n\tplotSalesGraph() {\r\n\t\tthis.salesTrend = [];\r\n\t\tvar salesXArray = []\r\n\t\tvar salesTrendArr = []\r\n\t\tthis.loader.startLoader(\"loader-02\")\r\n\t\tthis.sales_trend ? salesXArray = Object.keys(this.sales_trend) : ''\r\n\t\tthis.sales_trend ? salesTrendArr = Object.values(this.sales_trend) : ''\r\n\r\n\t\tif (salesTrendArr.length > 0) {\r\n\t\t\tsalesTrendArr.forEach(element => {\r\n\t\t\t\tthis.salesTrend.push(Number(element))\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.loader.stopLoader(\"loader-02\")\r\n\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\ttype: 'column'\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: ''\r\n\t\t\t\t},\r\n\t\t\t\txAxis: {\r\n\t\t\t\t\tcategories: salesXArray,\r\n\t\t\t\t\tcrosshair: true\r\n\t\t\t\t},\r\n\t\t\t\tyAxis: {\r\n\t\t\t\t\tmin: 0,\r\n\t\t\t\t\ttitle: {\r\n\t\t\t\t\t\ttext: 'Amount'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t\theaderFormat: '{point.key}',\r\n\t\t\t\t\tpointFormat: '' +\r\n\t\t\t\t\t\t'',\r\n\t\t\t\t\tfooterFormat: '
{series.name}: ' + this.userdata.currency + ' {point.y:.2f}
',\r\n\t\t\t\t\tshared: true,\r\n\t\t\t\t\tuseHTML: true\r\n\t\t\t\t},\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tcolumn: {\r\n\t\t\t\t\t\tpointPadding: 0.2,\r\n\t\t\t\t\t\tborderWidth: 0,\r\n\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\t\tformat: this.userdata.currency + ' ' + '{point.y:.2f}'\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\tname: 'Sales',\r\n\t\t\t\t\ttype: 'column',\r\n\t\t\t\t\tcolor: '#1e5598',\r\n\t\t\t\t\tdata: this.salesTrend,\r\n\r\n\t\t\t\t}],\r\n\t\t\t\tresponsive: {\r\n\t\t\t\t\trules: [{\r\n\t\t\t\t\t\tcondition: {\r\n\t\t\t\t\t\t\tmaxHeight: 500\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tchartOptions: {\r\n\t\t\t\t\t\t\tlegend: {\r\n\t\t\t\t\t\t\t\tenabled: false\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}]\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tthis.salesChart = chart;\r\n\t\t}, 1000);\r\n\t}\r\n\tplotPurchaseGraph() {\r\n\t\tthis.purchaseTrend = [];\r\n\t\tvar purchaseXArray = [];\r\n\t\tvar purchaseTrendArr = []\r\n\t\tthis.loader.startLoader(\"loader-02\")\r\n\t\tthis.purchase_trend ? purchaseXArray = Object.keys(this.purchase_trend) : ''\r\n\t\tthis.purchase_trend ? purchaseTrendArr = Object.values(this.purchase_trend) : ''\r\n\r\n\t\tif (purchaseTrendArr.length > 0) {\r\n\t\t\tpurchaseTrendArr.forEach(element => {\r\n\t\t\t\tthis.purchaseTrend.push(Number(element))\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.loader.stopLoader(\"loader-02\")\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\ttype: 'column'\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: ''\r\n\t\t\t\t},\r\n\t\t\t\txAxis: {\r\n\t\t\t\t\tcategories: purchaseXArray,\r\n\r\n\t\t\t\t\tcrosshair: true\r\n\t\t\t\t},\r\n\t\t\t\tyAxis: {\r\n\t\t\t\t\tmin: 0,\r\n\t\t\t\t\ttitle: {\r\n\t\t\t\t\t\ttext: 'Amount'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t\theaderFormat: '{point.key}',\r\n\t\t\t\t\tpointFormat: '' +\r\n\t\t\t\t\t\t'',\r\n\t\t\t\t\tfooterFormat: '
{series.name}: ' + this.userdata.currency + ' {point.y:.2f}
',\r\n\t\t\t\t\tshared: true,\r\n\t\t\t\t\tuseHTML: true\r\n\t\t\t\t},\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tcolumn: {\r\n\t\t\t\t\t\tpointPadding: 0.2,\r\n\t\t\t\t\t\tborderWidth: 0,\r\n\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\t\tformat: this.userdata.currency + ' ' + '{point.y:.2f}'\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\tname: 'Purchase',\r\n\t\t\t\t\ttype: 'column',\r\n\t\t\t\t\tcolor: '#f44336',\r\n\t\t\t\t\tdata: this.purchaseTrend,\r\n\r\n\t\t\t\t}],\r\n\t\t\t\tresponsive: {\r\n\t\t\t\t\trules: [{\r\n\t\t\t\t\t\tcondition: {\r\n\t\t\t\t\t\t\tmaxHeight: 500\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tchartOptions: {\r\n\t\t\t\t\t\t\tlegend: {\r\n\t\t\t\t\t\t\t\tenabled: false\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}]\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tthis.purchaseChart = chart;\r\n\t\t}, 1000);\r\n\r\n\t}\r\n\tplotTicketChart() {\r\n\t\tthis.loader.startLoader(\"loader-02\");\r\n\r\n\t\tif (this.ticketList.length > 0) {\r\n\t\t\tthis.ticketList.forEach(data => {\r\n\t\t\t\tdata.name = data.status;\r\n\t\t\t\tdata.y = data.count\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\tplotBackgroundColor: null,\r\n\t\t\t\t\tplotBorderWidth: null,\r\n\t\t\t\t\tplotShadow: false,\r\n\t\t\t\t\ttype: 'pie'\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: '',\r\n\t\t\t\t\talign: 'left'\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t\tpointFormat: '{series.name}: {point.y}'\r\n\t\t\t\t},\r\n\t\t\t\taccessibility: {\r\n\t\t\t\t\tpoint: {\r\n\t\t\t\t\t\tvalueSuffix: '%'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tlegend: {\r\n\t\t\t\t\titemMarginBottom: 6,\r\n\t\t\t\t\tlayout: 'vertical',\r\n\t\t\t\t\talign: 'right',\r\n\t\t\t\t\tverticalAlign: 'top',\r\n\t\t\t\t\tuseHTML: true,\r\n\t\t\t\t\tlabelFormatter: function () {\r\n\t\t\t\t\t\tconst point = this as CustomPoint;\r\n\t\t\t\t\t\treturn '
' + point.name + '
' + point.y + '
';\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tpie: {\r\n\t\t\t\t\t\tallowPointSelect: true,\r\n\t\t\t\t\t\tcursor: 'pointer',\r\n\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\t\tformat: '{point.name}: {point.y}'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tshowInLegend: true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t\tname: 'status',\r\n\t\t\t\t\tdata: this.ticketList\r\n\t\t\t\t}]\r\n\t\t\t})\r\n\t\t\tthis.ticketChart = chart;\r\n\t\t}, 1000)\r\n\t}\r\n\tplotTaskChart() {\r\n\t\tthis.loader.startLoader(\"loader-02\");\r\n\t\tif (this.taskList.length > 0) {\r\n\t\t\tthis.taskList.forEach(data => {\r\n\t\t\t\tdata.name = data.status;\r\n\t\t\t\tdata.y = data.count\r\n\t\t\t})\r\n\t\t}\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\tplotBackgroundColor: null,\r\n\t\t\t\t\tplotBorderWidth: null,\r\n\t\t\t\t\tplotShadow: false,\r\n\t\t\t\t\ttype: 'pie'\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: '',\r\n\t\t\t\t\talign: 'left'\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t\tpointFormat: '{series.name}: {point.y}'\r\n\t\t\t\t},\r\n\t\t\t\taccessibility: {\r\n\t\t\t\t\tpoint: {\r\n\t\t\t\t\t\tvalueSuffix: '%'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tlegend: {\r\n\t\t\t\t\titemMarginBottom: 6,\r\n\t\t\t\t\tlayout: 'vertical',\r\n\t\t\t\t\talign: 'right',\r\n\t\t\t\t\tverticalAlign: 'top',\r\n\t\t\t\t\tuseHTML: true,\r\n\t\t\t\t\tlabelFormatter: function () {\r\n\t\t\t\t\t\tconst point = this as CustomPoint;\r\n\t\t\t\t\t\treturn '
' + point.name + '
' + point.y + '
';\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tpie: {\r\n\t\t\t\t\t\tallowPointSelect: true,\r\n\t\t\t\t\t\tcursor: 'pointer',\r\n\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\t\tformat: '{point.name}: {point.y}'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tshowInLegend: true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t\tname: 'status',\r\n\t\t\t\t\tdata: this.taskList\r\n\t\t\t\t}]\r\n\t\t\t})\r\n\t\t\tthis.taskChart = chart;\r\n\t\t}, 1000)\r\n\t}\r\n\tplotSnagChart() {\r\n\t\tthis.loader.startLoader(\"loader-02\")\r\n\t\tif (this.snagList.length > 0) {\r\n\t\t\tthis.snagList.forEach(data => {\r\n\t\t\t\tdata.name = data.status;\r\n\t\t\t\tdata.y = data.count\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\tplotBackgroundColor: null,\r\n\t\t\t\t\tplotBorderWidth: null,\r\n\t\t\t\t\tplotShadow: false,\r\n\t\t\t\t\ttype: 'pie'\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: '',\r\n\t\t\t\t\talign: 'left'\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t\tpointFormat: '{series.name}: {point.y}'\r\n\t\t\t\t},\r\n\t\t\t\taccessibility: {\r\n\t\t\t\t\tpoint: {\r\n\t\t\t\t\t\tvalueSuffix: '%'\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tlegend: {\r\n\t\t\t\t\titemMarginBottom: 6,\r\n\t\t\t\t\tlayout: 'vertical',\r\n\t\t\t\t\talign: 'right',\r\n\t\t\t\t\tverticalAlign: 'top',\r\n\t\t\t\t\tuseHTML: true,\r\n\t\t\t\t\tlabelFormatter: function () {\r\n\t\t\t\t\t\tconst point = this as CustomPoint;\r\n\t\t\t\t\t\treturn '
' + point.name + '
' + point.y + '
';\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tpie: {\r\n\t\t\t\t\t\tallowPointSelect: true,\r\n\t\t\t\t\t\tcursor: 'pointer',\r\n\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\t\tformat: '{point.name}: {point.y}'\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tshowInLegend: true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t\tname: 'status',\r\n\t\t\t\t\tdata: this.snagList\r\n\r\n\t\t\t\t}]\r\n\t\t\t})\r\n\t\t\tthis.snagChart = chart;\r\n\t\t}, 1000)\r\n\t}\r\n\tplotEzbCostingChart() {\r\n\t\tif (this.InvoiceTrendArr.length > 0) {\r\n\t\t\tthis.InvoiceTrendArr.forEach(data => {\r\n\t\t\t\tdata.y = data.data;\r\n\t\t\t\tdata.currency = this.userdata.currency;\r\n\t\t\t})\r\n\t\t}\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.loader.stopLoader(\"loader-02\")\r\n\t\t\tlet chart = new Chart({\r\n\t\t\t\tchart: {\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t},\r\n\t\t\t\ttitle: {\r\n\t\t\t\t\ttext: '',\r\n\t\t\t\t\talign: 'left'\r\n\t\t\t\t},\r\n\t\t\t\tsubtitle: {\r\n\t\t\t\t\ttext: '',\r\n\t\t\t\t\talign: 'left'\r\n\t\t\t\t},\r\n\t\t\t\ttooltip: {\r\n\t\t\t\t},\r\n\t\t\t\t// legend: {\r\n\t\t\t\t// \titemMarginBottom: 6,\r\n\t\t\t\t// \tlayout: 'vertical',\r\n\t\t\t\t// \talign: 'right',\r\n\t\t\t\t// \tverticalAlign: 'top',\r\n\t\t\t\t// \tuseHTML: true,\r\n\t\t\t\t// \tlabelFormatter: function () {\r\n\t\t\t\t// \t\tconst point = this as CustomPoint;\r\n\t\t\t\t// \t\treturn '
' + point.name + '
' + point.currency + point.y + '
';\r\n\t\t\t\t// \t}\r\n\t\t\t\t// },\r\n\r\n\r\n\t\t\t\tplotOptions: {\r\n\t\t\t\t\tpie: {\r\n\t\t\t\t\t\tinnerSize: 100,\r\n\t\t\t\t\t\tdepth: 45,\r\n\t\t\t\t\t\tsize: '100%',\r\n\t\t\t\t\t\t// dataLabels: {\r\n\t\t\t\t\t\t// \tenabled: true,\r\n\t\t\t\t\t\t// \tdistance: 20,\r\n\t\t\t\t\t\t// \tformat: '{point.name}',\r\n\t\t\t\t\t\t// },\r\n\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t},\r\n\r\n\t\t\t\tseries: [{\r\n\t\t\t\t\tshowInLegend: false,\r\n\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\tdistance: -40,\r\n\t\t\t\t\t\tformat: '{point.y}',\r\n\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\tfontSize: '1em',\r\n\t\t\t\t\t\t\ttextOutline: 'none',\r\n\t\t\t\t\t\t\topacity: 0.7\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t},\r\n\t\t\t\t\tallowPointSelect: true,\r\n\t\t\t\t\tcursor: 'pointer',\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t\tname: this.userdata.currency,\r\n\t\t\t\t\tdata: this.InvoiceTrendArr\r\n\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\tdistance: 20,\r\n\t\t\t\t\t\tformat: '{point.name}',\r\n\t\t\t\t\t},\r\n\t\t\t\t\tallowPointSelect: true,\r\n\t\t\t\t\tcursor: 'pointer',\r\n\t\t\t\t\ttype: 'pie',\r\n\t\t\t\t\tname: this.userdata.currency,\r\n\t\t\t\t\tdata: this.InvoiceTrendArr\r\n\t\t\t\t}\r\n\t\t\t\t]\r\n\t\t\t});\r\n\t\t\tthis.invoiceChart = chart;\r\n\t\t}, 1000);\r\n\r\n\t}\r\n\tgotoSubscriptions() {\r\n\t\tthis.router.navigate(['/companyprofile'], { replaceUrl: true });\r\n\t}\r\n\r\n\tgetDaysDifference(date1: Date, date2: Date): number {\r\n\t\tconst timeDiff = Math.abs(date2.getTime() - date1.getTime());\r\n\t\tconst daysDiff = Math.ceil(timeDiff / (1000 * 3600 * 24));\r\n\t\treturn daysDiff;\r\n\t}\r\n\r\n\tformatDate(date) {\r\n\t\tdate = new Date(date);\r\n\t\tvar day = date.getDate();\r\n\t\t// var monthIndex = date.getMonth();\r\n\t\tvar monthName = date.toLocaleString('default', { month: 'long' });\r\n\t\tvar year = date.getFullYear();\r\n\t\treturn monthName + ' ' + year;\r\n\t}\r\n\tgetWorldClockList() {\r\n\t\tthis.service.getHomeClock().subscribe(res => {\r\n\t\t\tif (res) {\r\n\t\t\t\tthis.timeZoneList = res;\r\n\t\t\t\tthis.timerId = this.getTime();\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('worlclocklist', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\t// getDashboardMenus() {\r\n\t// \tthis.service.getHomeMenu().subscribe(res => {\r\n\t// \t\tthis.menuItems = res;\r\n\t// \t\tenvironment.production ? '' : console.log('menu', this.menuItems);\r\n\t// \t\tlocalStorage.setItem(this.appname + 'menu', JSON.stringify(this.menuItems));\r\n\t// \t\tthis.events.publish('dashboard:menu', {});\r\n\t// \t\tenvironment.production ? '' : console.log('homemenu', res)\r\n\t// \t}, err => {\r\n\t// \t\tthis.loader.stop();\r\n\t// \t})\r\n\t// }\r\n\tgetTransactionList() {\r\n\t\tthis.service.getRecentTransaction().subscribe(res => {\r\n\t\t\tthis.transactions = res;\r\n\t\t\tif (this.transactions) {\r\n\t\t\t\tthis.transactions.forEach(element => {\r\n\t\t\t\t\telement.txndate = this.datePipe.transform(element.txndate, this.format);\r\n\t\t\t\t\telement.updatedate = this.datePipe.transform(element.updatedate, this.format);\r\n\r\n\t\t\t\t\tif (element.amt != null && element.amt != 0) {\r\n\t\t\t\t\t\telement.amt = element.amt.toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\telement.amt = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tthis.resTransactions = this.transactions;\r\n\t\t\tenvironment.production ? '' : console.log('transaction list', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetAnnoucementList() {\r\n\t\tthis.service.getHomeAnnouncements().subscribe(res => {\r\n\t\t\tif (res) {\r\n\t\t\t\tthis.timeZoneList = res;\r\n\t\t\t\tthis.timerId = this.getTime();\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('worlclocklist', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetCountList() {\r\n\t\tthis.service.getHomeTilelist().subscribe(res => {\r\n\t\t\tthis.counts = res ? res : {};\r\n\t\t\tenvironment.production ? '' : console.log('count list', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetOfficeClockingList() {\r\n\t\tthis.service.getHomeTimeLogs().subscribe(res => {\r\n\t\t\tthis.officeClockings = res;\r\n\t\t\tif (this.officeClockings) {\r\n\t\t\t\tthis.officeClockings.forEach(clock => {\r\n\t\t\t\t\tif (clock.start_time) {\r\n\t\t\t\t\t\tconst arrValue = clock.start_time.split(\"T\");\r\n\t\t\t\t\t\tclock.start_time = arrValue[1];\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (clock.end_time) {\r\n\t\t\t\t\t\tconst arrValue = clock.end_time.split(\"T\");\r\n\t\t\t\t\t\tclock.end_time = arrValue[1];\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('count list', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\r\n\t}\r\n\tgetHomeEzbCosting() {\r\n\t\tvar month = '';\r\n\t\tvar year = '';\r\n\t\tif (this.ezbcostingFilter.monthyear) {\r\n\t\t\tvar selectedValue = this.ezbcostingFilter.monthyear.split(' ');\r\n\t\t\tmonth = selectedValue[0];\r\n\t\t\tyear = selectedValue[1];\r\n\t\t}\r\n\t\tthis.service.getHomeEzbCosting(year, month).subscribe(res => {\r\n\t\t\tthis.InvoiceTrendArr = res;\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.plotEzbCostingChart();\r\n\t\t\t}, 2000);\r\n\t\t\tenvironment.production ? '' : console.log('Invoice summary', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetSalesSummary() {\r\n\t\tthis.service.getHomeSalesSummary().subscribe(res => {\r\n\t\t\tthis.sales_trend = res[0];\r\n\t\t\tthis.plotSalesGraph();\r\n\t\t\tenvironment.production ? '' : console.log('sales summary', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetPurchaseSummary() {\r\n\t\tthis.service.getHomePurchaseSummary().subscribe(res => {\r\n\t\t\tthis.purchase_trend = res[0];\r\n\t\t\tthis.plotPurchaseGraph();\r\n\t\t\tenvironment.production ? '' : console.log('purchase list', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\r\n\t}\r\n\tgetSnagSummary() {\r\n\t\tthis.service.getHomeSnagSummary().subscribe(res => {\r\n\t\t\tthis.snagList = res\r\n\t\t\tthis.plotSnagChart();\r\n\t\t\tenvironment.production ? '' : console.log('snag summary', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetTaskSummary() {\r\n\t\tthis.service.getHomeTaskSummary().subscribe(res => {\r\n\t\t\tthis.taskList = res\r\n\t\t\tthis.plotTaskChart();\r\n\t\t\tenvironment.production ? '' : console.log('task summary', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetTicketSummary() {\r\n\t\tthis.service.getHomeTicketSummary().subscribe(res => {\r\n\t\t\tthis.ticketList = res\r\n\t\t\tthis.plotTicketChart();\r\n\t\t\tenvironment.production ? '' : console.log('ticket summary', res)\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\t//Invite accountant\r\n\tcheckUserAvailability() {\r\n\t\tif (!this.accountantemail) {\r\n\t\t\tthis.toastr.Error('Please enter accountant email');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.settingsService.getCheckUserAvailability(this.accountantemail).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Error('Not found in system');\r\n\t\t\t\t\treturn;\r\n\t\t\t\t} else if (res.status_code == \"0\") {\r\n\t\t\t\t\tSwal.fire({\r\n\t\t\t\t\t\t// title: 'Error!',\r\n\t\t\t\t\t\ttext: res.message,\r\n\t\t\t\t\t\ticon: 'warning',\r\n\t\t\t\t\t\tshowCancelButton: true,\r\n\t\t\t\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\t\t\t\tcancelButtonText: 'No'\r\n\t\t\t\t\t}).then((result) => {\r\n\t\t\t\t\t\tif (result.value) {\r\n\t\t\t\t\t\t\tthis.router.navigate(['/users/mapuser'], { queryParams: { 'prevpage': 'dashboard', 'email': this.accountantemail } })\r\n\t\t\t\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t} else if (res.status_code == \"2\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgotoProAccountantList() {\r\n\t\tthis.router.navigate(['/proaccountant'], { replaceUrl: true });\r\n\t}\r\n}\r\n\r\ninterface Menu {\r\n\tname: string;\r\n\tlvl: number;\r\n}\r\n\r\ninterface MenuWithChildren extends Menu {\r\n\tchildren?: MenuWithChildren[];\r\n}\r\n\r\nfunction buildNestedStructure(data: Menu[]): MenuWithChildren[] {\r\n\tconst result: MenuWithChildren[] = [];\r\n\r\n\tconst map = new Map();\r\n\r\n\tdata.forEach(menu => {\r\n\t\tconst menuWithChildren: MenuWithChildren = { ...menu };\r\n\t\tmap.set(menu.lvl, menuWithChildren);\r\n\r\n\t\tconst parentLvl = menu.lvl - 1;\r\n\t\tif (map.has(parentLvl)) {\r\n\t\t\tconst parent = map.get(parentLvl)!;\r\n\t\t\tif (!parent.children) {\r\n\t\t\t\tparent.children = [];\r\n\t\t\t}\r\n\t\t\tparent.children.push(menuWithChildren);\r\n\t\t} else {\r\n\t\t\tresult.push(menuWithChildren);\r\n\t\t}\r\n\t});\r\n\r\n\treturn result;\r\n}\r\n\r\n","
\r\n \r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK1_TITLE' | translate }}\r\n

{{counts.leads}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK2_TITLE' | translate }}\r\n

{{counts.cust}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK3_TITLE' | translate }}\r\n

{{counts.proj}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK4_TITLE' | translate }}\r\n

{{counts.tasks}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK5_TITLE' | translate }}\r\n

{{counts.tickets}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK6_TITLE' | translate }}\r\n

{{counts.suppliers}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK7_TITLE' | translate }}\r\n

{{counts.inv}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK8_TITLE' | translate }}\r\n

{{counts.qte}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK9_TITLE' | translate }}\r\n

{{counts.prods}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK10_TITLE' | translate }}\r\n

{{counts.orders}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK11_TITLE' | translate }}\r\n

{{counts.licenses}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK12_TITLE' | translate }}\r\n

{{counts.expense}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK13_TITLE' | translate }}\r\n

{{counts.salesrequests}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK14_TITLE' | translate }}\r\n

{{counts.purchaserequests}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK15_TITLE' | translate }}\r\n

{{counts.assets}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK16_TITLE' | translate }}\r\n

{{counts.pos}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK17_TITLE' | translate }}\r\n

{{counts.employees}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
{{ 'HOME.BLOCKS.BLOCK18_TITLE' | translate }}\r\n

{{counts.schedules}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
Connect with an Accountant
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Get setup right with the help of an accountant
\r\n
Invite them to your books so you can finish setting up together.
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
No Accountant? Find a pro to help
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'salessummary_title' | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'PurchaseSummary_text' | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'RecentTransactions_text' | translate }}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Records not found\r\n
\r\n
\r\n {{ 'Recenttransaction_Table.Txndate_column' | translate }} \r\n \r\n {{ 'Recenttransaction_Table.Customer_column' | translate }} \r\n \r\n {{ 'Recenttransaction_Table.Number_column' | translate }} \r\n \r\n {{ 'Recenttransaction_Table.Amount_column' | translate }} \r\n \r\n {{ 'Recenttransaction_Table.Status_column' | translate }} \r\n
\r\n {{n.txndate}}\r\n \r\n {{n.customer}}\r\n \r\n {{n.num}}\r\n \r\n {{n.amt}}\r\n \r\n {{n.status}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Reminder_section.Reminders_title' | translate }}
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
    \r\n
  • {{\r\n 'Reminder_section.Options.Add_reminder' | translate }}
  • \r\n
  • {{ 'Reminder_section.Options.MarkRead_option' |\r\n translate }}
  • \r\n
  • {{ 'Reminder_section.Options.Delete_options' |\r\n translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
{{ 'Reminder_section.Table.Duedate_column' | translate }}{{ 'Reminder_section.Table.Title_column' | translate }}{{ 'Reminder_section.Table.Number_column' | translate }}{{ 'Reminder_section.Table.Type_column' | translate }}{{ 'Reminder_section.Table.Department_column' | translate }}{{ 'Reminder_section.Table.Status_column' | translate }}{{ 'Reminder_section.Table.Actions_column' | translate }}
\r\n
\r\n \r\n
\r\n
\r\n {{n.due_date | date:format}}\r\n \r\n {{n.title}}\r\n \r\n {{n.doc_no}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ n.type }}\r\n \r\n {{n.dept}}\r\n \r\n {{n.status}}\r\n \r\n
\r\n \r\n
    \r\n
  • {{\r\n 'Reminder_section.Options2.edit_option' | translate }}\r\n
  • \r\n
  • {{\r\n 'Reminder_section.Options2.Markread_option' | translate }}
  • \r\n
  • {{\r\n 'Reminder_section.Options2.Delete_options' | translate }}
  • \r\n \r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
See More
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
{{ 'TimelogSection.Title' | translate }}
\r\n
\r\n
\r\n \r\n {{currentDateTime | date:'MMM d, y'}}\r\n
\r\n
\r\n \r\n {{currentDateTime | date:'h:mm:ss a'}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{ 'TimelogSection.total_hours' | translate }}\r\n

{{totalWorkTime}}

\r\n
\r\n
\r\n
\r\n
\r\n {{ 'TimelogSection.Total_break_Hours' | translate }}\r\n

{{totalBreakTime}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{ 'TimelogSection.StartBreak' | translate }}\r\n
\r\n
{{ 'TimelogSection.EndBreak' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
{{ 'TimelogSection.Check_IN' | translate }}
\r\n
{{ 'TimelogSection.Check_Out' | translate }}
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'TimelogSection.Table.date_column' | translate }}{{ 'TimelogSection.Table.StartTime_column' | translate }}{{ 'TimelogSection.Table.EndTime_column' | translate }}{{ 'TimelogSection.Table.Duration_column' | translate }}{{ 'TimelogSection.Table.Type_column' | translate }}{{ 'TimelogSection.Table.Reason_column' | translate }}
{{currentDateTime |\r\n date:'yyy-MM-dd'}}\r\n \r\n {{startMainTimeinhours}}:{{startMainMin}}\r\n {{ 'TimelogSection.Table.Check_In' | translate }}
\r\n {{item.startHrs}}:{{item.startMin}}{{item.endHrs}}:{{item.endMin}}\r\n {{ 'TimelogSection.Table.Break' | translate }}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'TimelogSection.Table.Date_column' | translate }}{{ 'TimelogSection.Table.Start_column' | translate }}{{ 'TimelogSection.Table.Endtime_column' | translate }}{{ 'TimelogSection.Table.Break_total_column' | translate }}{{ 'TimelogSection.Table.Working_total_column' | translate }}\r\n {{ 'TimelogSection.Table.Reason__column' | translate }}
{{item.dow | date:\r\n \"yyyy-MM-dd\"}}{{item.start_time }}{{item.end_time}}\r\n {{item.break_total | number\r\n :'1.2-2'}}{{item.total_hrs | number\r\n :'1.2-2'}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Employee_leave_section.Title' | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ 'Employee_leave_section.Table.Leave_type_column' | translate }}\r\n {{ 'Employee_leave_section.Table.FromDate_column' | translate }}\r\n {{ 'Employee_leave_section.Table.Todate_column' | translate }}\r\n {{ 'Employee_leave_section.Table.Days_column' | translate }}{{ 'Employee_leave_section.Table.Status_column' | translate }}\r\n
\r\n
\r\n \r\n
    \r\n
  • {{\r\n 'Employee_leave_section.Options.view_options' | translate }}
  • \r\n
  • {{\r\n 'Employee_leave_section.Options.Edit_options' | translate }}
  • \r\n
  • {{ 'Employee_leave_section.Options.Delete_options' | translate\r\n }}
  • \r\n
\r\n
\r\n
{{item.type}}{{item.fromdate | date:format}}{{item.todate | date:format}}{{item.tlp}}{{item.status}}\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Worldclocksection.World_clock' | translate }}
\r\n
\r\n
\r\n
0\">\r\n
2\" *ngFor=\"let clock of formatedList\">\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n 3\r\n 6\r\n 9\r\n 12\r\n
\r\n
\r\n \r\n {{clock.date}}\r\n\r\n {{formatclock12Hrs(clock)}}\r\n
\r\n
\r\n

\r\n {{clock.country}}\r\n

\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Ticket_summary.Ticket_summary' | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Task_summary.Task_summary' | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Snag_summary.Snag_summary' | translate }}
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Records not found\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{ 'Ezb_Costing.Ezb_costing' | translate }}
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n
Reminder
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Select Reason
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DashboardRoutingModule } from './dashboard-routing.module';\r\nimport { DashboardComponent } from './dashboard.component';\r\nimport { CountToModule } from 'angular-count-to';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { Ng2GoogleChartsModule } from 'ng2-google-charts';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\n\r\nimport { SharedModule } from '../../shared/shared.module';\r\nimport { Ng2SmartTableModule } from 'ng2-smart-table';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { DashboardServices } from './dashboard.service';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatMomentDateModule } from \"@angular/material-moment-adapter\";\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgMultiSelectDropDownModule } from \"ng-multiselect-dropdown\";\r\nimport { ChartModule } from 'angular-highcharts';\r\nimport { NgMarqueeModule } from 'ng-marquee';\r\nimport { CKEditorModule } from 'ng2-ckeditor';\r\nimport { ResizeModule } from '../modal/resize/resize-border.module';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\n\r\n// Factory function to create the TranslateLoader\r\n\r\n@NgModule({\r\n declarations: [DashboardComponent],\r\n imports: [\r\n CommonModule,\r\n DashboardRoutingModule,\r\n CountToModule,\r\n SharedModule,\r\n ChartsModule,\r\n Ng2GoogleChartsModule,\r\n NgxChartsModule,\r\n Ng2SmartTableModule,\r\n NgxUiLoaderModule,\r\n FormsModule,\r\n NgbModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatMomentDateModule,\r\n ChartModule,\r\n CKEditorModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n NgMarqueeModule,\r\n ResizeModule,\r\n HttpClientModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ], providers: [\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMATS },\r\n NgbActiveModal\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA,\r\n NO_ERRORS_SCHEMA\r\n ]\r\n\r\n})\r\nexport class DashboardModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DashboardServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n public hero: ''\r\n public expenseData: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n getMyReminders(pg, email, searchtxt, fromdate, todate, type) {\r\n return this.http.get(this.baseUrl + 'api/Reminders/Gett_Reminders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&assignto=' + email + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '&type=' + type);\r\n }\r\n getReminderById(id) {\r\n return this.http.get(this.baseUrl + 'api/Reminders/Gett_ReminderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getDepartmentList() {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_DepartmentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTransactionType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTransactionTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteReminder(id) {\r\n return this.http.delete(this.baseUrl + 'api/Reminders/Delete_Reminder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAllReminder(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Reminders/Delete_Reminder', data);\r\n }\r\n markReadReminder(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Reminders/Mark_Read', data);\r\n }\r\n //Time Log\r\n getShiftDetails() {\r\n return this.http.get(this.baseUrl + 'api/OfficeClockings/Get_ShiftDetails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employee_id=' + this.userprofile.empid)\r\n }\r\n\r\n toggleShift(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/OfficeClockings/Post_ShiftLog', data);\r\n }\r\n\r\n shiftBreak(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/OfficeClockings/Post_ShiftLogBreak', data);\r\n }\r\n\r\n toggleEmployeeShift(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/OfficeClockings/Post_ClockInOut', data);\r\n }\r\n\r\n shiftEmployeeBreak(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/OfficeClockings/Post_ShiftBreak', data);\r\n }\r\n\r\n //Employee Leave\r\n getEmployeeLeave() {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Gett_LeavesByEmployeeID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employee_id=' + this.userprofile.empid)\r\n }\r\n getLeavesById(id) {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Gett_LeaveByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n postEmployeeLeave(val) {\r\n const data = JSON.stringify(val);\r\n // return this.http.post(this.baseUrl + 'api/OfficeClockings/Postt_leaves', data)\r\n return this.http.post(this.baseUrl + 'api/Leaves/Postt_Leaves', data);\r\n\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n postReminder(data) {\r\n return this.http.post(this.baseUrl + 'api/Reminders/Postt_Reminder', data);\r\n }\r\n\r\n getReminderType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetReminderTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getRecentTransactionType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetRecentTranTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n getUsers() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetUsers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getReasons(type) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetShiftBreakReasons?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type)\r\n }\r\n\r\n //all modules seperate apis.\r\n\r\n getHomeMenu() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeMenu?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeMenuDummy() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeMenuDummy?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeTilelist() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeTiles?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeReminders() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeReminders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getRecentTransaction() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeRecentTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeAnnouncements() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeAnnouncements?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeSalesSummary() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeSalesSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomePurchaseSummary() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomePurchaseSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeTimeLogs() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeTimeLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid=' + this.userprofile.empid);\r\n }\r\n getHomeClock() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeClock?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid=' + this.userprofile.empid);\r\n }\r\n getHomeEmpLeaves() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeEmpLeaves?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid=' + this.userprofile.empid);\r\n }\r\n getHomeTicketSummary() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeTicketSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeEzbCosting(yr, mon) {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeEzbCosting?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&yr=' + yr + '&mon=' + mon);\r\n }\r\n getHomeTaskSummary() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeTaskSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n getHomeSnagSummary() {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_HomeSnagSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&userid=' + this.userprofile.id);\r\n }\r\n // Customers/Delete_CustomerCard\r\n deleteCard(id) {\r\n return this.http.delete(this.baseUrl + 'api/Customers/Delete_CustomerCard?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n setCustomerCard(id) {\r\n return this.http.get(this.baseUrl + 'api/Customers/Set_DefaultCustomerCard?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n getCostingDetailsByDate(yr, month) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_EzbCostingByDate?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&yr=' + yr + '&month=' + month)\r\n\r\n }\r\n getCostingInv(fromdate, todate, eb_customerid) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_EzbSubscriptionInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&eb_customerid=' + eb_customerid)\r\n\r\n }\r\n getAccountants(country, searchtxt, rating) {\r\n return this.http.get(this.baseUrl + 'api/Home/Get_Accountants?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&country=' + country + '&rating=' + rating + '&searchtxt=' + searchtxt);\r\n }\r\n postProAccountant(data) {\r\n return this.http.post(this.baseUrl + 'api/Home/Post_ContactForm', data);\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { T } from '@angular/cdk/keycodes';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { ProfileServices } from '../profile.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-editassessment',\r\n templateUrl: './editassessment.component.html',\r\n styleUrls: ['./editassessment.component.scss']\r\n})\r\nexport class EditassessmentComponent implements OnInit {\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n fullScreen = false;\r\n arr: any = [];\r\n @Input('item') item;\r\n @Input('index') index;\r\n @Input('role') role;\r\n particularData: any;\r\n srno: any;\r\n isEmployee = true;\r\n isReviewer = true;\r\n isManager = true;\r\n isHr = true;\r\n constructor(private modalService: NgbModal,\r\n private router: Router,\r\n private toaster: NotificationService,\r\n private datepipe: DatePipe, private service: ProfileServices, private toastr: NotificationService, private loader: NgxUiLoaderService, private commonService: CommonServices, private cd: ChangeDetectorRef, private activeModal: NgbActiveModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commonService.headerEditItemData.next('');\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.item) {\r\n this.particularData = this.item;\r\n if (this.particularData.role == 'employee') {\r\n this.isEmployee = false;\r\n } else if (this.particularData.role == 'manager') {\r\n this.isManager = false;\r\n } else if (this.particularData.role == 'reviewer') {\r\n this.isReviewer = false;\r\n } else if (this.particularData.role == 'hr') {\r\n this.isHr = false;\r\n }\r\n }\r\n this.srno = this.index;\r\n if (this.particularData.type == 'multiplechoice' && this.particularData.employee_inputs != null && this.particularData.employee_inputs != undefined) {\r\n var commonstring = this.particularData.employee_inputs;\r\n var arr = [];\r\n arr = commonstring.split(',');\r\n this.particularData.particularLineChoices.forEach(data => {\r\n arr.forEach(data2 => {\r\n if (data.description == data2) {\r\n data.checked = true;\r\n }\r\n })\r\n })\r\n\r\n }\r\n\r\n }\r\n\r\n assessmentClick(data) {\r\n data.checked = !data.checked;\r\n if (data.checked == true) {\r\n this.particularData.particularLineChoices.forEach(res => {\r\n if (res.checked) this.arr.push(res.description);\r\n })\r\n\r\n var arr = this.arr.toString();\r\n this.particularData.employee_inputs = arr;\r\n console.log(this.particularData.employee_inputs);\r\n } else if (data.checked == false) {\r\n this.particularData.particularLineChoices.forEach(res => {\r\n if (res.checked) this.arr.push(res.description);\r\n })\r\n var commonstring = this.particularData.employee_inputs;\r\n var arr2 = [];\r\n arr2 = commonstring.split(',');\r\n const index = arr2.indexOf(data.description);\r\n if (index > -1) {\r\n arr2.splice(index, 1);\r\n }\r\n var arr3 = arr2.toString();\r\n this.particularData.employee_inputs = arr3;\r\n }\r\n\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n postParticularResult() {\r\n this.particularData.updateby = this.userdata.email,\r\n this.particularData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n console.log(this.particularData);\r\n this.loader.start();\r\n\r\n this.service.postEmployeeParticularEntry(this.particularData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.particularData = {};\r\n this.closeModal();\r\n }, err => {\r\n this.loader.stop();\r\n this.toaster.Error('Error while saving record')\r\n })\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
Question# {{particularData.emp_particular_hdr_id}}-{{srno}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
{{particularData.name}}
\r\n
{{particularData.description}}
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProfileServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n //get employee KRA\r\n getEmployeeKRA(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeAssesments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmployeeParticularById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeAssesmentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postEmployeeParticular(data) {\r\n return this.http.post(this.baseUrl + 'api/Employees/Postt_EmployeeAssesment', data);\r\n }\r\n\r\n postEmployeeParticularEntry(data) {\r\n return this.http.post(this.baseUrl + 'api/Employees/Postt_EmployeeAssesmentEntry', data);\r\n\r\n }\r\n\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { HomepageComponent } from '../../homepage/homepage.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-accountdetails',\r\n templateUrl: './accountdetails.component.html',\r\n styleUrls: ['./accountdetails.component.scss']\r\n})\r\nexport class AccountdetailsComponent implements OnInit {\r\n public isCollapsed = true;\r\n fullname:any;\r\n email:any\r\n password:any;\r\n public createAccount: FormGroup;\r\n private langChangeSubscription: Subscription; \r\n constructor(private router: Router, private homepage:HomepageComponent,private formBuilder: FormBuilder,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) { \r\n this.createAccountForm();\r\n }\r\n createAccountForm(){\r\n this.createAccount = this.formBuilder.group({\r\n fullname : [''],\r\n email : [''],\r\n password : [''],\r\n \r\n })\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n }\r\n isPasswordToggle = false\r\n PasswordToggle() {\r\n this.isPasswordToggle = !this.isPasswordToggle\r\n }\r\n gotochooseindustry() {\r\n this.router.navigateByUrl('/public/chooseindustry');\r\n // if(!this.fullname){\r\n // Swal.fire('Please enter your full name');\r\n // return false;\r\n // }\r\n // if(!this.email){\r\n // Swal.fire('Please enter your email id');\r\n // return false;\r\n // }\r\n // if(!this.password){\r\n // Swal.fire('Please enter your password');\r\n // return false;\r\n // }\r\n // var data = {\r\n // fullname: this.fullname,\r\n // email: this.email,\r\n // password: this.password\r\n // }\r\n // environment.production ? '' : console.log(data)\r\n // localStorage.setItem('chooseIndustryData', JSON.stringify(data));\r\n // let formValue = JSON.parse(localStorage.getItem('chooseIndustryData'))\r\n // environment.production ? '' : console.log('choose Industry Data =' + formValue)\r\n // this.router.navigateByUrl('/public/chooseindustry');\r\n }\r\n gotoAbout() {\r\n this.router.navigate(['/public/index'], {queryParams: {action : 'aboutus'}});\r\n }\r\n gotoHome() {\r\n this.router.navigate(['/public/index']);\r\n }\r\n gotoOverview() {\r\n this.router.navigate(['/public/index'], {queryParams: {action : 'overview'}});\r\n }\r\n gotoFeature(){\r\n this.router.navigate(['/public/index'], {queryParams: {action : 'feature'}});\r\n }\r\n gotoPricing(){\r\n this.router.navigate(['/public/index'], {queryParams: {action : 'pricing'}});\r\n }\r\n gotoContact(){\r\n this.router.navigate(['/public/index'], {queryParams: {action : 'contact'}});\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Back\r\n

Fill in your account details

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \"free\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { environment } from 'src/environments/environment';\r\nimport { settingServices } from '../../settings/setting.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n\tselector: 'app-chooseindustry',\r\n\ttemplateUrl: './chooseindustry.component.html',\r\n\tstyleUrls: ['./chooseindustry.component.scss']\r\n})\r\n\r\nexport class ChooseIndustryComponent implements OnInit {\r\n\tpublic isCollapsed = true;\r\n\tindustry: any;\r\n\r\n\tid: any;\r\n\totp: any;\r\n\r\n\tlistofIndustry = [];\r\n\r\n\tmyindustry: NgForm;\r\n\tIndustryForm: any = {\r\n\t\t\"id\": null,\r\n\t\t\"planinterested\": null,\r\n\t\t\"company_name\": null,\r\n\t\t\"phone\": null,\r\n\t\t\"email\": null,\r\n\t\t\"country\": \"\",\r\n\t\t\"signupServiceData\": null,\r\n\t\t\"point_of_contact\": null,\r\n\t\t\"address\": null,\r\n\t\t\"finyearend\": null,\r\n\t\t\"finyearstart\": null,\r\n\t\t\"industry\": \"\",\r\n\t}\r\n\tsubmitted = false;\r\n\tcountryList: any;\r\n\totpdetails: any;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate service: AppServices,\r\n\t\tprivate settingService: settingServices,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t) {\r\n\t\tthis.otpdetails = JSON.parse(atob(this.route.snapshot.queryParamMap.get('otpdetails')));\r\n\t\tthis.IndustryForm.id = this.otpdetails.id;\r\n\t\tthis.IndustryForm.email = this.otpdetails.email;\r\n\t\tthis.IndustryForm.otp = this.otpdetails.otp;\r\n\t\tthis.IndustryForm.companyid = this.otpdetails.companyid;\r\n\t\tthis.IndustryForm.planinterested = this.otpdetails.planinterested;\r\n\t\tthis.settingService.getCountryList().subscribe(data => {\r\n\t\t\tthis.countryList = data;\r\n\t\t\tenvironment.production ? '' : console.log('Country List data ', this.countryList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Country List data ', err);\r\n\t\t});\r\n\t\tthis.service.getTradeTypes().subscribe((res: any) => {\r\n\t\t\tif (res != null) {\r\n\t\t\t\tthis.listofIndustry = res;\r\n\t\t\t\tenvironment.production ? '' : console.log('Industry List :', JSON.stringify(this.listofIndustry));\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Industry List Error', err);\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/sales/customers/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\tSubmitIndustry(): void {\r\n\t\tthis.IndustryForm.finyearstart = this.datepipe.transform(new Date(this.IndustryForm.finyearstart), 'yyy-MM-dd');\r\n\t\tthis.IndustryForm.finyearend = this.datepipe.transform(new Date(this.IndustryForm.finyearend), 'yyy-MM-dd');\r\n\t\tthis.router.navigate(['/public/systemmigration'], { queryParams: { companydetails: btoa(JSON.stringify(this.IndustryForm)), otpdetails: btoa(JSON.stringify(this.otpdetails)) }, replaceUrl: true });\r\n\t}\r\n\r\n\tback() {\r\n\t\tthis.router.navigate(['/public/createaccount'], { queryParams: { otpdetails: btoa(JSON.stringify(this.otpdetails)) }, replaceUrl: true });\r\n\t}\r\n\r\n\t//#region Navigation Link Redirection\r\n\tgotoAbout() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'aboutus' } });\r\n\t}\r\n\tgotoHome() {\r\n\t\tthis.router.navigate(['/public/index']);\r\n\t}\r\n\tgotoOverview() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'overview' } });\r\n\t}\r\n\tgotoFeature() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'feature' } });\r\n\t}\r\n\tgotoPricing() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n\t}\r\n\tgotoContact() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'contact' } });\r\n\t}\r\n\t//#endregion Navigation Link Redirection\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Back\r\n

Provide your business details

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Company name is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Phone is required\r\n
\r\n
\r\n Must have 8 digits\r\n
\r\n
\r\n Please insert a valid phone number like \"+1345232323\"\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Email is required
\r\n
Valid Email is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Address is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Please select Country\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Town is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Point of Contact is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Please select Industry\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Financial year start date is required\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n Financial year end date is required\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \"admin\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { settingServices } from '../../settings/setting.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n\tselector: 'app-createaccount',\r\n\ttemplateUrl: './createaccount.component.html',\r\n\tstyleUrls: ['./createaccount.component.scss']\r\n})\r\nexport class CreateAccountComponent implements OnInit {\r\n\tpublic isCollapsed = true;\r\n\tsignupServiceData: any = {\r\n\t\t\"planinterested\": null,\r\n\t\t\"email\": null,\r\n\t\t\"companyid\": '',\r\n\t\t\"region\": '',\r\n\t\t\"createdate\": ''\r\n\t}\r\n\tcountryList: any = [];\r\n\tform: NgForm;\r\n\tcode: any;\r\n\tregionList: any = [];\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate settingService: settingServices,\r\n\t\tprivate service: AppServices,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate datepipe:DatePipe\r\n\t) {\r\n\r\n\t\tvar encrPlanId = this.route.snapshot.queryParamMap.get('id');\r\n\t\tif (encrPlanId != undefined && encrPlanId != null && encrPlanId != '') {\r\n\t\t\tthis.signupServiceData.planinterested = atob(encrPlanId);\r\n\t\t}\r\n\t\tthis.signupServiceData.createdate=this.datepipe.transform(new Date(),'yyyy-MM-dd');\r\n\t\tthis.code = this.route.snapshot.queryParamMap.get('code');\r\n\t\tthis.getRegions();\r\n\t\tenvironment.production ? '' : console.log('plan object response', this.signupServiceData);\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/sales/customers/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\tgetRegions() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getRegions().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.regionList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tselectCompany() {\r\n\t\tthis.regionList.forEach(item => {\r\n\t\t\tif (this.signupServiceData.region == item.Value) {\r\n\t\t\t\tthis.signupServiceData.companyid = item.Value3;\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tVerifyAccount(): void {\r\n\t\tenvironment.production ? '' : console.log('Post Signup req : ', JSON.stringify(this.signupServiceData));\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postSignup(this.signupServiceData).subscribe((res: any) => {\r\n\t\t\tenvironment.production ? '' : console.log('Post Signup response : ', res);\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\t// Swal.fire('Registration successful!', 'OTP verification code sent on your registered email.', 'success');\r\n\t\t\t\tthis.router.navigate(['./public/verifyaccount'], { queryParams: { otpdetails: btoa(JSON.stringify(res)) }, replaceUrl: true });\r\n\t\t\t} else {\r\n\t\t\t\tthis.toastr.Error(\"Email already exists please try another email\");\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('check err', err);\r\n\t\t});\r\n\t}\r\n\r\n\t//#region Navigation Link Redirection\r\n\tgotoAbout() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'aboutus' } });\r\n\t}\r\n\tgotoHome() {\r\n\t\tthis.router.navigate(['/public/index']);\r\n\t}\r\n\tgotoOverview() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'overview' } });\r\n\t}\r\n\tgotoFeature() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'feature' } });\r\n\t}\r\n\tgotoPricing() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n\t}\r\n\tgotoContact() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'contact' } });\r\n\t}\r\n\t//#endregion Navigation Link Redirection\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Back\r\n

Create your free account

\r\n
\r\n
\r\n \r\n \r\n
\r\n
Email is required
\r\n
Valid Email is required
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
Region is required
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"free\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormGroup } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-features',\r\n templateUrl: './features.component.html',\r\n styleUrls: ['./features.component.scss']\r\n})\r\nexport class FeaturesComponent implements OnInit {\r\n\r\n homePagePlan: any = {\r\n discount: 0,\r\n discount_type: '%',\r\n duration_in_months: 3\r\n };\r\n signPlans: any;\r\n public isCollapsed = true;\r\n private langChangeSubscription: Subscription; \r\n constructor(\r\n private router: Router, \r\n private route: ActivatedRoute, \r\n private service: AppServices, \r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, ) {\r\n window.localStorage.clear();\r\n this.getPlans();\r\n }\r\n\r\n //#region Page Redirections\r\n gotoHome() {\r\n this.router.navigate(['/public/index'], { queryParams: { action: 'home' } });\r\n }\r\n gotoAbout() {\r\n this.router.navigate(['/public/index'], { queryParams: { action: 'aboutus' } });\r\n }\r\n\r\n gotoOverview() {\r\n this.router.navigate(['/public/index'], { queryParams: { action: 'overview' } });\r\n }\r\n\r\n gotoPricing() {\r\n this.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n }\r\n\r\n gotoContact() {\r\n this.router.navigate(['/public/index'], { queryParams: { action: 'contact' } });\r\n }\r\n //#endregion\r\n goToCreateAccount(item) {\r\n this.router.navigate(['/public/createaccount'], { queryParams: { id: btoa(item.id) }, replaceUrl: true })\r\n }\r\n gotoLogin() {\r\n window.localStorage.clear();\r\n window.location.replace('/auth/login');\r\n }\r\n getPlans() {\r\n this.loader.start();\r\n this.service.getSignupPlans().subscribe(res => {\r\n this.loader.stop();\r\n this.signPlans = res;\r\n this.signPlans.forEach(element => {\r\n if (element.home_page == 1) {\r\n this.homePagePlan = element;\r\n }\r\n })\r\n environment.production ? '' : console.log('Plan response', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('check err', err);\r\n });\r\n }\r\n form: FormGroup;\r\n\r\n submitted = false;\r\n get f(): { [key: string]: AbstractControl } {\r\n return this.form.controls;\r\n }\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{homePagePlan.discount}}%$
\r\n
\r\n
\r\n
Limited time only. Ezybooks for 3 months.*
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

EzyBooks Features

\r\n

Learn about your options for growing your business and how the right and appropriate software\r\n can help.

\r\n
\r\n
\r\n
\r\n
\r\n \"Leads\r\n
\r\n
\r\n

Leads Management

\r\n

Leads management bridges the gap between marketing and sales. It's a client obtaining\r\n process which distinguishes potential purchasers, instructs them, engages with them,\r\n and when the leads are viewed as qualified, get passed from marketing to sales.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Customer\r\n
\r\n
\r\n

Customer Management

\r\n

Customer Management module helps retailers overcome customer-related challenges, &\r\n achieve a truly integrated, comprehensive perspective of clients. It gives a unique\r\n ability to engage shoppers in a consistent and truly personalized manner across all\r\n sales channels and touch points.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Purchase\r\n
\r\n
\r\n

Purchase Management

\r\n

The EzyBooks is business process the board programming that enables an association to\r\n utilize an arrangement of coordinated applications to deal with the business &\r\n office capacities identified with innovation, administrations, & HR. A productive &\r\n strong Purchasing module is key for all merchants.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Sales\r\n
\r\n
\r\n

Sales Management

\r\n

Sales module executes elements of request arrangements, booking, sending and\r\n invoicing. Sales management takes the responsibility of making sales & manage the\r\n distribution chain in order to make a profit. The orders for sales are entered by\r\n the management process of EzyBooks.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Project\r\n
\r\n
\r\n

Project Management

\r\n

An EzyBooks Project the board is the best & smart arrangement accessible to deliver\r\n the necessities identified with viable undertaking the board & drive operational\r\n brilliance. The application offers the learning, abilities etc. required to oversee\r\n or surpass partner desires.\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Task\r\n
\r\n
\r\n

Task Management

\r\n

It is one of the popular task management software used by companies to improve their\r\n profits. Implementation of EzyBooks according to company needs to complete the order\r\n process. An employee can be assigned multiple tasks & this task management feature\r\n ensures that is not over or under allocated.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Timesheet\r\n
\r\n
\r\n

Timesheet Management

\r\n

We have to make it basic & simple for representative to enter hours worked &\r\n supporting timesheet information. The more reasonable procedure almost certain\r\n timesheet will be exact & entered on schedule. With EzyBooks, clients can rapidly &\r\n effectively catch point by timesheets.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Invoice\r\n
\r\n
\r\n

Invoice Management

\r\n

Invoice programming is utilized to make client billing document related to the sale\r\n of goods & services. When the business arrange achieves its last stage you may\r\n taking a shot at the installment method. An Invoice assume essential job, which is\r\n critical for the two Sale & Accounting purpose.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Quote\r\n
\r\n
\r\n

Quote Management

\r\n

It enables you to construct a remarkable statement for an item that doesn't exist in\r\n your framework to accumulate an exact gauge. It causes you anticipate with more\r\n precision when a client will put in a request to improve your business estimating,\r\n including occasional clients.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Bill\r\n
\r\n
\r\n

Bill Management

\r\n

It incorporates the records of all products and benefits provided to clients and\r\n maintains the history of all past transactions associated with them. To make things\r\n trouble free, EzyBooks Sales & Billing Management organizes these by grouping\r\n various products in a single invoice for customers.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Account\r\n
\r\n
\r\n

Account Reports & Custom Report

\r\n

The EzyBooks & other key value-based system can hold a fortune of information about\r\n organization & its task. Businesses that effectively retrieve, deliver this\r\n information in a timely fashion are maximizing their investment in EzyBooks are\r\n better positioned to make key informed business decision.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Employee\r\n
\r\n
\r\n

Employee Management

\r\n

Employee the board is an imperative segment of a well-run retail business. This\r\n module oversees representative information with all the security checks set up\r\n mechanizing your employees procedure. It liberates your HR Department from\r\n dreary,dull & tedious calculative undertakings.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Inventory\r\n
\r\n
\r\n

Inventory Management

\r\n

Whether the organizations buy it or make it, the businesses are required to know what\r\n they have on hand to sell when the customer requires the material & where does it\r\n exist. This will help the business to manage the track record of customer’s\r\n requirement to a proper functioning of their inventory.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Payroll\r\n
\r\n
\r\n

Payroll Management

\r\n

Payment-related functionalities are the most frequently represented human resources\r\n features in EzyBooks software. A good EzyBooks tool will not only allow you to\r\n compensate your employees but also will help you automatically calculate and deduct\r\n the federal tax and other stuff.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Multiple\r\n
\r\n
\r\n

Multiple currency support

\r\n

International organization can use multiple currencies for opportunities, forest, &\r\n other currency fields. The administrator sets the \"corporate cash,\" which mirrors\r\n the money of the corporate home office. With globalization EzyBooks software fully\r\n supports transactions across multiple currencies.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Payment\r\n
\r\n
\r\n

Payment Gateway

\r\n

Ezybooks has First Atlantic payment gateway implemented, to avail this feature\r\n customers just need to get merchant id and configure merchant id in company profile,\r\n thats it you are ready to go and receive your invoice payments to your account. Easy\r\n to get your receivables on track and get paid.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Service\r\n
\r\n
\r\n

Service Tickets

\r\n

Service tickets module is very important for any service based companies. In this\r\n module you can create service tickets, assign tickets to technicians, technicians\r\n can see assigned tickets to them on tablet and from they can add inventory parts and\r\n service line items with qty or hours. When technicians update tickets then\r\n administrator or backoffice can raise invoice from there and send invoice to\r\n customer and get paid.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"COL's\r\n
\r\n
\r\n

COL's Integration

\r\n

COL's integration to clear shipments or overseas purchase orders easily. You can\r\n raise overseas purchase orders, when purchase order shipped then you can declare\r\n your goods and generate XML then upload XML to COL's online portal and get it\r\n cleared easily.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AccountdetailsComponent } from './accountdetails/accountdetails.component';\r\nimport { ChooseIndustryComponent } from './chooseindustry/chooseindustry.component';\r\nimport { CreateAccountComponent } from './createaccount/createaccount.component';\r\nimport { FeaturesComponent } from './features/features.component';\r\nimport { HomepageComponent } from './homepage.component';\r\nimport { SystemmigrationComponent } from './systemmigration/systemmigration.component';\r\nimport { VerifyaccountComponent } from './verifyaccount/verifyaccount.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'index',\r\n component: HomepageComponent, \r\n },\r\n {\r\n path:'public/features',\r\n component:FeaturesComponent,\r\n },\r\n {\r\n path:'public/createaccount',\r\n component:CreateAccountComponent,\r\n },\r\n {\r\n path:'public/verifyaccount',\r\n component: VerifyaccountComponent,\r\n },\r\n {\r\n path:'public/accountdetails',\r\n component:AccountdetailsComponent,\r\n },\r\n {\r\n path:'public/chooseindustry',\r\n component:ChooseIndustryComponent,\r\n },\r\n {\r\n path:'public/systemmigration',\r\n component:SystemmigrationComponent,\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class HomepageRoutingModule { }\r\n","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormControl, FormGroup, NgForm, Validators } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { OwlOptions } from 'ngx-owl-carousel-o';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { environment } from 'src/environments/environment';\r\nimport getBrowserFingerprint from 'get-browser-fingerprint';\r\nimport { ChatSignalr } from '../customerservice/chatsignalr.service';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { data } from 'jquery';\r\nimport Swal from 'sweetalert2';\r\nimport { element } from 'screenfull';\r\nimport { formatDate } from '@angular/common';\r\nimport { Meta } from '@angular/platform-browser';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n\tselector: 'app-homepage',\r\n\ttemplateUrl: './homepage.component.html',\r\n\tstyleUrls: ['./homepage.component.scss']\r\n})\r\nexport class HomepageComponent implements OnInit, AfterViewInit {\r\n\t@ViewChild('home') public home: ElementRef;\r\n\t@ViewChild('aboutus') public aboutus: ElementRef;\r\n\t@ViewChild('overview') public overview: ElementRef;\r\n\t@ViewChild('features') public features: ElementRef;\r\n\t@ViewChild('pricing') public pricing: ElementRef;\r\n\t@ViewChild('contact') public contact: ElementRef;\r\n\r\n\tstartchatform: any = {\r\n\t\tfirstname: \"\",\r\n\t\tlastname: \"\",\r\n\t\temail: \"\",\r\n\t\tphone: \"\",\r\n\t\tdepartment: \"\"\r\n\t}\r\n\r\n\t// form: FormGroup;\r\n\t// chatform() {\r\n\t// \tthis.form = this.formBuilder.group({\r\n\t// \t\tfirstname: ['', Validators.required],\r\n\t// \t\tlastname: ['', Validators.required],\r\n\t// \t\temail: ['', [Validators.required, Validators.email]],\r\n\t// \t\tphone: ['', Validators.required],\r\n\t// \t\tdepartment: ['', Validators.required],\r\n\t// \t})\r\n\t// }\r\n\tbasicChatFrom: NgForm;\r\n\r\n\tchatMsg: any = {\r\n\t\tmsg: \"\"\r\n\t}\r\n\r\n\tsendMsg: FormGroup = new FormGroup({\r\n\t\tmsg: new FormControl(''),\r\n\t});\r\n\r\n\tactive = 'top';\r\n\tsubmitted = false;\r\n\r\n\tpublic isCollapsed = true;\r\n\tpublic chaticon: boolean = false;\r\n\tpublic chatstart: boolean = false;\r\n\tpublic isverifyOTP: boolean = false;\r\n\tpublic formUser: boolean = true;\r\n\r\n\tsignPlans: any;\r\n\tmessageList: any = [];\r\n\tdepartment: any;\r\n\ttoggleChat() {\r\n\t\tthis.chaticon = !this.chaticon;\r\n\t}\r\n\tgotoNext() {\r\n\t\tif (this.formUser == true) {\r\n\t\t\tthis.formUser = false;\r\n\t\t}\r\n\t\tif (this.isverifyOTP == false) {\r\n\t\t\tthis.isverifyOTP = true;\r\n\t\t}\r\n\t}\r\n\tgoToCreateAccount(item) {\r\n\t\tthis.router.navigate(['/public/createaccount'], { queryParams: { id: btoa(item.id), code: item.code ? item.code : '' }, replaceUrl: true })\r\n\t}\r\n\tgotoConversation() {\r\n\t\tif (this.isverifyOTP == true) {\r\n\t\t\tthis.isverifyOTP = false;\r\n\t\t}\r\n\t\tif (this.chatstart == false) {\r\n\t\t\tthis.chatstart = true;\r\n\t\t}\r\n\t}\r\n\tjoinedUser: any;\r\n\tfingerprint: any;\r\n\tnewMessage: any;\r\n\thomePagePlan: any = {\r\n\t\tdiscount: 0,\r\n\t\tdiscount_type: '%',\r\n\t\tduration_in_months: 3\r\n\t};\r\n\r\n\tprivate langChangeSubscription: Subscription; \r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate formBuilder: FormBuilder,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate event: Events,\r\n\t\tpublic signalrHUB: ChatSignalr,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, \r\n\t\t// public signalConfig: SignalRConfiguration,\r\n\t\tprivate meta: Meta,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate service: AppServices) {\r\n\t\twindow.localStorage.clear();\r\n\t\tthis.getPlans();\r\n\r\n\t\tthis.event.subscribe('event:joinSupportChat', (event: any) => {\r\n\t\t\tenvironment.production ? '' : console.log('event joinSupportChat' + JSON.stringify(event.data));\r\n\t\t\tthis.joinedUser = event.data;\r\n\t\t\tthis.formUser = false;\r\n\t\t\tthis.chatstart = true;\r\n\t\t});\r\n\t\tthis.meta.addTags([\r\n\t\t\t{ name: 'description', content: 'Feed your growing business with the right tools. Inventory tracking, Purchase Orders, Sales Orders, Invoices & Estimates/Quotes to reduce paperwork using our developed robust EzyBooks with lot more features with the latest technology.' },\r\n\t\t\t{ name: 'keywords', content: 'Best Software Development Company In Cayman Island, software development company, consultancy in cayman islands, software solution in cayman island' }\r\n\t\t]);\r\n\t\tthis.event.subscribe('event:newMessage', (event: any) => {\r\n\t\t\tthis.newMessage = '';\r\n\t\t\tenvironment.production ? '' : console.log('event newMessage' + JSON.stringify(event.data));\r\n\t\t\tthis.newMessage = event.data;\r\n\t\t\tif (this.newMessage.ToId != this.joinedUser.UUID) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tthis.messageList.push({\r\n\t\t\t\tUUID: this.newMessage.UUID,\r\n\t\t\t\tContent: this.newMessage.Content,\r\n\t\t\t\tisMine: false,\r\n\t\t\t\tSentTimeStamp: this.newMessage.SentTimeStamp,\r\n\t\t\t\tFromName: this.newMessage.FromName,\r\n\t\t\t\tFromId: this.newMessage.FromId,\r\n\t\t\t\tToId: this.newMessage.ToId,\r\n\t\t\t\tToName: this.newMessage.ToName,\r\n\t\t\t\tMessageType: 2,\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\t//#region HomePage Sliders\r\n\timgSlider = {\r\n\t\tloop: true,\r\n\t\titems: 1,\r\n\t\tdots: true,\r\n\t\tnavText: ['', ''],\r\n\t\tresponsive: {\r\n\t\t\t0: {\r\n\t\t\t\titems: 1\r\n\t\t\t},\r\n\t\t\t400: {\r\n\t\t\t\titems: 2\r\n\t\t\t},\r\n\t\t\t740: {\r\n\t\t\t\titems: 3\r\n\t\t\t},\r\n\t\t\t940: {\r\n\t\t\t\titems: 4\r\n\t\t\t}\r\n\t\t},\r\n\t\tnav: false\r\n\t}\r\n\r\n\ttestimonialSlider: OwlOptions = {\r\n\t\tloop: true,\r\n\t\tmouseDrag: false,\r\n\t\ttouchDrag: false,\r\n\t\tpullDrag: false,\r\n\t\tdots: false,\r\n\t\tnavSpeed: 700,\r\n\t\tnavText: ['', ''],\r\n\t\tresponsive: {\r\n\t\t\t0: {\r\n\t\t\t\titems: 1\r\n\t\t\t},\r\n\t\t\t400: {\r\n\t\t\t\titems: 1,\r\n\t\t\t},\r\n\t\t},\r\n\t\tnav: true\r\n\t}\r\n\t//#endregion HomePage Sliders\r\n\r\n\tngOnInit(): void {\r\n\t\t// this.chatform();\r\n\r\n\t\tthis.sendMsg = this.formBuilder.group({\r\n\t\t\tmsg: ['', Validators.required],\r\n\t\t})\r\n\r\n\t\t//#region Get Fingerprint of browser\r\n\t\tthis.fingerprint = getBrowserFingerprint({\r\n\t\t\thardwareOnly: true,\r\n\t\t\tenableWebgl: true\r\n\t\t});\r\n\t\tenvironment.production ? '' : console.log('Fingerprint ', this.fingerprint);\r\n\t\t// this.signalConfig.qs = { 'userId': fingerprint };\r\n\t\t//#endregion Get Fingerprint of browser\r\n\r\n\t\t// this.signalrHUB.connect(); //Uncomment to connect signalr\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\t\t\tthis.loadComponentTranslations(lang); \r\n\t\t}); \r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) { \r\n\t\tconst translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => { \r\n\t\tthis.translate.setTranslation(lang, translations, true); \r\n\t\tthis.translate.use(lang); \r\n\t\t}); \r\n\t\t } \r\n\tchangeDept(e: any) {\r\n\t\tlet getdepartmentData = e.target.value;\r\n\t\tthis.department = getdepartmentData;\r\n\t}\r\n\r\n\tget f(): { [key: string]: AbstractControl } {\r\n\t\treturn this.chatMsg.controls;\r\n\t}\r\n\r\n\tstartSupport(): void {\r\n\t\tvar room = {\r\n\t\t\tUserUUID: this.fingerprint,\r\n\t\t\tDisplayName: this.startchatform.firstname + \" \" + this.startchatform.lastname,\r\n\t\t\tEmail: this.startchatform.email,\r\n\t\t\tPhoneNumber: this.startchatform.phone,\r\n\t\t\tDepartment: \"Accounting\",\r\n\t\t\tFileSharing: !1,\r\n\t\t\tRoomType: 2,\r\n\t\t\tStatus: 1,\r\n\t\t};\r\n\r\n\t\tthis.signalrHUB.joinSupportChat(room);\r\n\t}\r\n\r\n\tstartChat() {\r\n\t\tif (!this.signalrHUB.connectionIsEstablished) {\r\n\t\t\tthis.signalrHUB.connect();\r\n\t\t}\r\n\t\tif (this.chatMsg.msg == undefined || this.chatMsg.msg == null) {\r\n\r\n\t\t\tthis.toastr.Error(\"Please enter message\")\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.submitted = true;\r\n\r\n\t\t// if (this.form.invalid) {\r\n\t\t// \treturn;\r\n\t\t// }\r\n\t\tvar data: any = {\r\n\t\t\tUUID: this.generateUUID(),\r\n\t\t\tContent: this.chatMsg.msg,\r\n\t\t\t// URL: this.chatMsg.fileUrl(),\r\n\t\t\tSentTimeStamp: this.getUTCTime(new Date()).toString(),\r\n\t\t\tFromName: this.joinedUser.DisplayName,\r\n\t\t\tFromId: this.joinedUser.UserUUID,\r\n\t\t\tToId: this.joinedUser.UUID,\r\n\t\t\tToName: this.joinedUser.DisplayName,\r\n\t\t\t// ReadTimeStamp: null,\r\n\t\t\tMessageType: 2,\r\n\t\t\t// IsFile: (this.chatMsg.fileUrl().trim() != '')\r\n\t\t}\r\n\t\tenvironment.production ? '' : console.log(\"UUID: \" + data.UUID);\r\n\t\tenvironment.production ? '' : console.log(\"From Id: \" + this.joinedUser.Id);\r\n\t\tthis.signalrHUB.sendMsg('customer', data);\r\n\t\tdata.isMine = true;\r\n\t\tdata.SentTimeStamp = this.customDateFormat(new Date(parseInt(data.SentTimeStamp)), 'hh:mm a')\r\n\t\tthis.messageList.push(data);\r\n\t\tthis.chatMsg.msg = null;\r\n\t}\r\n\r\n\tcustomDateFormat(date: Date, format: string) {\r\n\t\treturn formatDate(date, format, 'en-US')\r\n\t};\r\n\r\n\tgenerateUUID() {\r\n\t\tvar d = new Date().getTime();//Timestamp\r\n\t\tvar d2 = (performance && performance.now && (performance.now() * 1000)) || 0; //Time in microseconds since page-load or 0 if unsupported\r\n\t\treturn 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n\t\t\tvar r = Math.random() * 16;//random number between 0 and 16\t\r\n\t\t\tif (d > 0) {//Use timestamp until depleted\t\r\n\t\t\t\tr = (d + r) % 16 | 0;\r\n\t\t\t\td = Math.floor(d / 16);\r\n\t\t\t} else {//Use microseconds since page-load if supported\t\r\n\t\t\t\tr = (d2 + r) % 16 | 0;\r\n\t\t\t\td2 = Math.floor(d2 / 16);\r\n\t\t\t}\r\n\t\t\treturn (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);\r\n\t\t});\r\n\t}\r\n\r\n\tgetUTCTime(data) {\r\n\t\treturn Date.UTC(\r\n\t\t\tdata.getUTCFullYear(),\r\n\t\t\tdata.getUTCMonth(),\r\n\t\t\tdata.getUTCDate(),\r\n\t\t\tdata.getUTCHours(),\r\n\t\t\tdata.getUTCMinutes(),\r\n\t\t\tdata.getUTCSeconds()\r\n\t\t);\r\n\t}\r\n\r\n\tonReset(): void {\r\n\t\tthis.submitted = false;\r\n\t\tthis.basicChatFrom.reset();\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tif (this.route.snapshot.queryParams['action'] != undefined) {\r\n\t\t\tvar action = this.route.snapshot.queryParams['action'];\r\n\r\n\t\t\tif (action == 'aboutus') {\r\n\t\t\t\tthis.aboutus.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t\t\t} else if (action == 'overview') {\r\n\t\t\t\tthis.overview.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t\t\t}\r\n\t\t\telse if (action == 'feature') {\r\n\t\t\t\tthis.features.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t\t\t}\r\n\t\t\telse if (action == 'contact') {\r\n\t\t\t\tthis.contact.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t\t\t}\r\n\t\t\telse if (action == 'pricing') {\r\n\t\t\t\tthis.pricing.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n\t\t\t\t// this.gotoPricing()\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Page Redirections\r\n\tgotoHome() {\r\n\t\tthis.home.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t}\r\n\tgotoAbout() {\r\n\t\tthis.aboutus.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t}\r\n\r\n\tgotoOverview() {\r\n\t\tthis.overview.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t}\r\n\r\n\tgotoFeature() {\r\n\t\tthis.features.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t}\r\n\r\n\tgotoPricing() {\r\n\t\tthis.pricing.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });\r\n\t}\r\n\r\n\tgotoContact() {\r\n\t\tthis.contact.nativeElement.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n\t}\r\n\r\n\t//#endregion\r\n\r\n\tgetPlans() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getSignupPlans().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.signPlans = res;\r\n\t\t\tthis.signPlans.forEach(element => {\r\n\t\t\t\tif (element.home_page == 1) {\r\n\t\t\t\t\tthis.homePagePlan = element;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tenvironment.production ? '' : console.log('Plan response', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('check err', err);\r\n\t\t});\r\n\t}\r\n\r\n\tgotoLogin() {\r\n\t\twindow.localStorage.clear();\r\n\t\twindow.location.replace('/auth/login');\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
{{homePagePlan.discount}}%$
\r\n
\r\n
\r\n
Limited time only. Ezybooks for 3 months.*
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n EzyBooks Manage Your
\r\n Business with our
\r\n Reliable Software\r\n

\r\n

\r\n Feed your growing business with the right tools.\r\n Inventory tracking, Purchase Orders, Sales Orders,\r\n Invoices & Estimates/Quotes to reduce paperwork using\r\n our developed robust EzyBooks with lot more features\r\n with the latest technology.\r\n

\r\n Try free for 30 Days\r\n
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \"CostWatch\"\r\n \r\n \"Andro\r\n \r\n \"Star-Mar\r\n \r\n \"Otisair\"\r\n \r\n \"Cay\r\n \r\n \"Island\r\n \r\n \"Sanmol\r\n \r\n \"Spectrum\r\n \r\n \"Entech\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Why\r\n
\r\n
\r\n
\r\n

Why choose us?

\r\n

\r\n EzyBooks is perfect solution for any service based companies to handle there operations\r\n end to end from customers to projects to billing to get paid. This system push all data\r\n to quickbook, viewpoint, counterpoint,tally etc accounting systems smoothly on one click\r\n of button or you can schedule data synchronization. This saves cost leak, time and\r\n resources. EzyBooks system available in cloud web desktop, mobile apps android and iOS\r\n versions as well so this give customers flexibility to use it from anywhere at anytime.\r\n Again we have EzyTickets and EzyPOS androis and iOS tablet based applications very\r\n useful for technicians or cashiers works in store or field or onsite.\r\n

\r\n

\r\n EzyBooks application being developed for the management of the business & time-saving\r\n plan. It is a single integrated system used by the organization to deal with the\r\n totality of its procedures, so as to meet the association's targets and fairly fulfill\r\n the partners. All Business units and Departments of the EzyBooks shall organize the\r\n planning, tasks, monitoring, checks and continual improvement within the EzyBooks in\r\n particular by utilizing the tools and methodology set up for it.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n

EzyBooks Features

\r\n

Learn about your options for growing your business and how the right and appropriate software\r\n can help.

\r\n
\r\n
\r\n
\r\n
\r\n \"Leads\r\n
\r\n
\r\n

Leads Management

\r\n

Leads management bridges the gap between marketing and sales. It's a client obtaining\r\n process which distinguishes potential purchasers, instructs them, engages with them,\r\n and when the leads are viewed as qualified, get passed from marketing to sales.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Customer\r\n
\r\n
\r\n

Customer Management

\r\n

Customer Management module helps retailers overcome customer-related challenges, &\r\n achieve a truly integrated, comprehensive perspective of clients. It gives a unique\r\n ability to engage shoppers in a consistent and truly personalized manner across all\r\n sales channels and touch points.

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Purchase\r\n
\r\n
\r\n

Purchase Management

\r\n

The EzyBooks is business process the board programming that enables an association to\r\n utilize an arrangement of coordinated applications to deal with the business &\r\n office capacities identified with innovation, administrations, & HR. A productive &\r\n strong Purchasing module is key for all merchants.

\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Choose plan

\r\n

\r\n We have different type of pricing table to choose with your need with reasonable price. Any\r\n one you can choose that you need.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{item.discount}}%$\r\n

{{item.name}}

\r\n
${{item.rate |\r\n number:'1.2-2'}}
\r\n
AS\r\n PER\r\n USAGEFIXED\r\n
\r\n
    \r\n
  • {{entry.description\r\n }}
  • \r\n
\r\n Try free for\r\n {{30*item.duration_in_months}}\r\n days\r\n CONTACT US\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Integration with accounting & Bookkeeping Solutions

\r\n

EzyBooks integrates with populer solutions listed here and many more to help you automate\r\n your business process across the board. Also customer migrated from booking solutions to\r\n EzyBooks.

\r\n
\r\n
\r\n
\r\n \r\n \"QuickBooks\"\r\n \r\n
\r\n
\r\n \r\n \"View\r\n \r\n
\r\n
\r\n \r\n \"CounterPoint\"\r\n \r\n
\r\n
\r\n \r\n \"Powerhouse\"\r\n \r\n
\r\n
\r\n \r\n \"Sage\"\r\n\r\n \r\n
\r\n
\r\n \r\n \"Medworxs\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Integration with Payment Gateways

\r\n

We have ezybooks integrated with payment gateways list here that can help you process and\r\n collect your receivables online where your customers can Bill Payments and invoices from any\r\n device and using payments such as credit card, debit, or amex cards.

\r\n
\r\n
\r\n
\r\n \r\n \"Plug\r\n \r\n
\r\n
\r\n \r\n \"First\r\n \r\n
\r\n
\r\n \r\n \"Paypal\"\r\n \r\n
\r\n
\r\n \r\n \"Stripe\"\r\n \r\n
\r\n
\r\n \r\n \"RazorPay\"\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Integration with Shopping Cart

\r\n

We have inbuild ezycart where ezybooks inventory is integrated to own shopping cart where you\r\n can deploy on your server to sell inventory online. Ezybooks can integrated with any website\r\n you have in the place on request. Also we have ezybooks integrated with online shopping cart\r\n frameworks list here and we are working on some shopping cart integrations...stay tune..

\r\n
\r\n
\r\n
\r\n \r\n \"EzyCart\"\r\n \r\n
\r\n
\r\n \r\n \"Plug\r\n \r\n
\r\n
\r\n \r\n \"Woo\r\n \r\n
\r\n
\r\n \r\n \"Megento\"\r\n \r\n
\r\n
\r\n \r\n \"shopify\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Download our Mobile Apps

\r\n

EzyBooks system available in cloud web desktop as mobile apps android and iOS versions as\r\n well so this give customers flexibility to use it from anywhere at anytime..

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyBooks

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyPOS

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyTickets

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzySales

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyDelivery

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyClock

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyAssets

\r\n
\r\n \r\n \"EzyBooks\"\r\n \r\n \r\n \"EzyBooks\"\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n

EzyDiary

\r\n Coming soon\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Testimonials

\r\n

Streamlining different processes and workflows by using user access\r\n control EzyBooks prompts efficiency and productivity levels of an organization, and reduces\r\n operating costs.

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Marcus Cumber Island Air

\r\n

The custom solution & web application service provided by Sanmol are\r\n very best with simple, standard ui Design

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Steve Walsh Andro Group Ltd

\r\n

I got the best quality product with strong functionalities, I would\r\n always recommend sanmol for any web related services

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Contact with us

\r\n

Sanmol Softwares is helping thousands of people do handle there business and daily\r\n operations with ease. If you have any questions about our products or services, please\r\n call one of our phone number below or email Sanmol Software using the contact form\r\n below.

\r\n

\r\n \r\n +1(345) 325 5469\r\n \r\n

\r\n

\r\n \r\n contactus@sanmolsoftware.com\r\n \r\n

\r\n

\r\n \r\n U15, Breezy Castle, 125 Owen Roberts Dr, PO Box 1221,\r\n Grand Cayman, KY1-1108, Cayman Islands\r\n \r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Get in touch

\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Chat Support

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n First name is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Last name is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Email is required
\r\n
Valid Email is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Phone is required
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n Please select Department\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
Welcome {{joinedUser.DisplayName}}
\r\n \r\n
\r\n
\r\n {{message.Content}}\r\n
\r\n {{message.FromName}} | {{joinedUser.SentTimeStamp}}\r\n
\r\n
\r\n
\r\n {{message.Content}}\r\n
\r\n {{joinedUser.DisplayName}} | {{message.SentTimeStamp}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
Message is required
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { HomepageRoutingModule } from './homepage-routing.module';\r\nimport { HomepageComponent } from './homepage.component';\r\nimport { CarouselModule } from 'ngx-owl-carousel-o';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CreateAccountComponent } from './createaccount/createaccount.component';\r\nimport { ChooseIndustryComponent } from './chooseindustry/chooseindustry.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { VerifyaccountComponent } from './verifyaccount/verifyaccount.component';\r\nimport { AccountdetailsComponent } from './accountdetails/accountdetails.component';\r\nimport { SystemmigrationComponent } from './systemmigration/systemmigration.component';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { FeaturesComponent } from './features/features.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\n\r\n@NgModule({\r\n declarations: [HomepageComponent, CreateAccountComponent, ChooseIndustryComponent, VerifyaccountComponent, AccountdetailsComponent, SystemmigrationComponent, FeaturesComponent],\r\n imports: [\r\n CommonModule,\r\n HomepageRoutingModule,\r\n CarouselModule,\r\n NgbModule,\r\n FormsModule,\r\n NgxUiLoaderModule,\r\n ReactiveFormsModule,\r\n HttpClientModule, \r\nTranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n ],\r\n providers: [\r\n NgbActiveModal,\r\n HomepageComponent\r\n ]\r\n})\r\nexport class HomepageModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: 'app-systemmigration',\r\n\ttemplateUrl: './systemmigration.component.html',\r\n\tstyleUrls: ['./systemmigration.component.scss']\r\n})\r\nexport class SystemmigrationComponent implements OnInit {\r\n\tpublic isCollapsed = true;\r\n\tisSuccessful = false;\r\n\tbusiness_type: any;\r\n\r\n\tbusinessTypes: any;\r\n\tcompanyTypes: any;\r\n\tselectedCompanyType: any;\r\n\totpdetails: any;\r\n\tcompleteProfileData: any = {\r\n\t\t\"id\": null,\r\n\t\t\"business_type\": \"\",\r\n\t\t\"tax_free\": '0',\r\n\t\t\"self_hosting\": '0',\r\n\t\t\"verified\": 1,\r\n\t\t\"otp\": null,\r\n\t\t\"industry\": null,\r\n\t\t\"migrating\": '0',\r\n\t\t\"migrating_from\": '',\r\n\t\t\"migration_help_needed\": '0',\r\n\t\t\"finyearstart\": null,\r\n\t\t\"finyearend\": null,\r\n\t\t\"planinterested\": null,\r\n\t\t\"company_name\": null,\r\n\t\t\"phone\": null,\r\n\t\t\"email\": null,\r\n\t\t\"address\": null,\r\n\t\t\"state_city\": null,\r\n\t\t\"country\": null,\r\n\t\t\"currency\": null,\r\n\t\t\"point_of_contact\": null,\r\n\t\t\"referredby\": \"\",\r\n\t\t\"referralid\": \"\",\r\n\t\t\"createdate\": ''\r\n\t}\r\n\r\n\tSysMigrationForm: NgForm;\r\n\tcompanydetails: any;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate service: AppServices,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate datepipe: DatePipe) {\r\n\t\tthis.companydetails = JSON.parse(atob(this.route.snapshot.queryParamMap.get('companydetails')));\r\n\t\tthis.otpdetails = JSON.parse(atob(this.route.snapshot.queryParamMap.get('otpdetails')));\r\n\t\t// this.completeProfileData.finyearend = this.route.snapshot.queryParamMap.get('finyearend');\r\n\r\n\t\tthis.service.getBusinessTypes().subscribe((res: any) => {\r\n\t\t\tif (res != null) {\r\n\t\t\t\tthis.companyTypes = res;\r\n\t\t\t\tenvironment.production ? '' : console.log('companytypes', JSON.stringify(this.companyTypes));\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('check err', err);\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/sales/customers/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\tfeatureSlider = {\r\n\t\tloop: true,\r\n\t\titems: 1,\r\n\t\tautoplay: true,\r\n\t\tautospeed: 200,\r\n\t\tdots: true,\r\n\t\tnavText: ['', ''],\r\n\t\tresponsive: {\r\n\t\t\t0: {\r\n\t\t\t\titems: 1\r\n\t\t\t},\r\n\t\t\t400: {\r\n\t\t\t\titems: 1\r\n\t\t\t},\r\n\t\t},\r\n\t\tnav: false\r\n\t}\r\n\r\n\tSystemSubmit() {\r\n\t\tthis.completeProfileData.id = this.companydetails.id ? this.companydetails.id : null;\r\n\t\tthis.completeProfileData.planinterested = this.companydetails.planinterested;\r\n\t\tthis.completeProfileData.company_name = this.companydetails.company_name;\r\n\t\tthis.completeProfileData.phone = this.companydetails.phone;\r\n\t\tthis.completeProfileData.email = this.companydetails.email;\r\n\t\tthis.completeProfileData.finyearstart = this.companydetails.finyearstart;\r\n\t\tthis.completeProfileData.finyearend = this.companydetails.finyearend;\r\n\t\tthis.completeProfileData.otp = this.companydetails.otp;\r\n\t\tthis.completeProfileData.industry = this.companydetails.industry;\r\n\t\tthis.completeProfileData.address = this.companydetails.address;\r\n\t\tthis.completeProfileData.state_city = this.companydetails.town;\r\n\t\tthis.completeProfileData.country = this.companydetails.country;\r\n\t\tthis.completeProfileData.currency = this.companydetails.currency;\r\n\t\tthis.completeProfileData.point_of_contact = this.companydetails.point_of_contact;\r\n\t\tthis.completeProfileData.companyid = this.otpdetails.companyid;\r\n\t\tthis.completeProfileData.createdate = this.datepipe.transform(new Date(), 'yyyy-MM-dd');\r\n\t\tenvironment.production ? '' : console.log('post req', JSON.stringify(this.completeProfileData));\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postSignupComplete(this.completeProfileData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null && res.status_code == '1') {\r\n\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\tthis.router.navigate(['/login'], { replaceUrl: true });\r\n\t\t\t} else {\r\n\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.toastr.Error(\"Sorry, something went wrong. Try to sign up again and contact Support if it happens again.\");\r\n\t\t\tenvironment.production ? '' : console.log('check err', err);\r\n\t\t});\r\n\t}\r\n\r\n\t//#region Navigation Link Redirection\r\n\tgotoAbout() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'aboutus' } });\r\n\t}\r\n\tgotoHome() {\r\n\t\tthis.router.navigate(['/public/index']);\r\n\t}\r\n\tgotoOverview() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'overview' } });\r\n\t}\r\n\tgotoFeature() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'feature' } });\r\n\t}\r\n\tgotoPricing() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n\t}\r\n\tgotoContact() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'contact' } });\r\n\t}\r\n\tback() {\r\n\t\tthis.router.navigate(['./public/chooseindustry'], { queryParams: { otpdetails: btoa(JSON.stringify(this.otpdetails)) }, replaceUrl: true });\r\n\t}\r\n\t//#endregion Navigation Link Redirection\r\n\r\n}\r\n","
\r\n\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\tBack\r\n\t\t\t\t\t\t

Migrating to Ezybooks?

\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tPlease select Company Type\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tPlease select any one\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tPlease select any one\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tPlease select any one\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tPlease select any one\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n\r\n
\r\n\t
\r\n\t\t
\r\n\t\t\t

Sign up is successfully done

\r\n\t\t\t

\r\n\t\t\t\tPlease Sign in to your account\r\n\t\t\t

\r\n\t\t\tBack to Sign in\r\n\t\t
\r\n\t
\r\n
\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: 'app-verifyaccount',\r\n\ttemplateUrl: './verifyaccount.component.html',\r\n\tstyleUrls: ['./verifyaccount.component.scss']\r\n})\r\nexport class VerifyaccountComponent implements OnInit {\r\n\tpublic isCollapsed = true;\r\n\r\n\tid: any;\r\n\totp: any;\r\n\tverificationCode: any = {\r\n\t\tmyotp: ''\r\n\t}\r\n\tsubmitted = false;\r\n\tverifyotp: NgForm;\r\n\totpdetails: any = {\r\n\t\tcompanies: []\r\n\t};\r\n\totpDivVisibility = true;\r\n\tprivate langChangeSubscription: Subscription; \r\n\tconstructor(\r\n\t\tprivate router: Router,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n\t\tthis.otpdetails = JSON.parse(atob(this.route.snapshot.queryParamMap.get('otpdetails')));\r\n\t}\r\n\r\n\tgotoVerifyAccount() {\r\n\t\tthis.router.navigate(['./verifyaccount'])\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\t\t\tthis.loadComponentTranslations(lang); \r\n\t\t}); \r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) { \r\n\t\tconst translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => { \r\n\t\tthis.translate.setTranslation(lang, translations, true); \r\n\t\tthis.translate.use(lang); \r\n\t\t}); \r\n\t\t } \r\n\r\n\tVerifyOTP(): void {\r\n\t\tif (this.otpdetails.otp != this.verificationCode.myotp) {\r\n\t\t\tSwal.fire('', 'Incorrect otp please try again', 'error');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.otpdetails.companies != undefined && this.otpdetails.companies != null && this.otpdetails.companies.length > 0) {\r\n\t\t\tif (this.otpdetails.companies.length > 0) {\r\n\t\t\t\tthis.otpdetails.companies[0].ischecked = true;\r\n\t\t\t}\r\n\t\t\tthis.otpDivVisibility = false;\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.gotoChooseIndustry();\r\n\t}\r\n\tgotoChooseIndustry() {\r\n\t\tthis.router.navigate(['./public/chooseindustry'], { queryParams: { otpdetails: btoa(JSON.stringify(this.otpdetails)) }, replaceUrl: true });\r\n\t}\r\n\tgotoLogin() {\r\n\t\tvar compid = 0;\r\n\t\tthis.otpdetails.companies.forEach(comp => {\r\n\t\t\tif (comp.ischecked != undefined && comp.ischecked) {\r\n\t\t\t\tcompid = comp.companyid;\r\n\t\t\t}\r\n\t\t})\r\n\t\tthis.router.navigate(['./auth/login'], { queryParams: { email: btoa(this.otpdetails.email), companyid: btoa('' + compid), from: 'verifyotp' }, replaceUrl: true });\r\n\t}\r\n\t//#region Navigation Link Redirection\r\n\tgotoAbout() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'aboutus' } });\r\n\t}\r\n\tgotoHome() {\r\n\t\tthis.router.navigate(['/public/index']);\r\n\t}\r\n\tgotoOverview() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'overview' } });\r\n\t}\r\n\tgotoFeature() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'feature' } });\r\n\t}\r\n\tgotoPricing() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'pricing' } });\r\n\t}\r\n\tgotoContact() {\r\n\t\tthis.router.navigate(['/public/index'], { queryParams: { action: 'contact' } });\r\n\t}\r\n\r\n\tback() {\r\n\t\tthis.router.navigate(['./public/createaccount'], { replaceUrl: true });\r\n\t}\r\n\t//#endregion Navigation Link Redirection\r\n}","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Back\r\n \r\n

We have sent OTP to your registered email

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n OTP is required\r\n
\r\n
\r\n Must have 6 digits\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n

Your email is associated with following company files

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"free\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport * as moment from 'moment-timezone';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { hrServices } from '../../../hr.services';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n@Component({\r\n selector: 'app-addleave',\r\n templateUrl: './addleave.component.html',\r\n styleUrls: ['./addleave.component.scss']\r\n})\r\nexport class AddleaveComponent implements OnInit {\r\n private langChangeSubscription: Subscription;\r\n @Input() id: string;\r\n @Input() empid: string;\r\n @Input() action: boolean;\r\n @Input() from: string;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n fullScreen = false;\r\n leavesData: any = {\r\n \"id\": null,\r\n \"empid\": null,\r\n \"fromdate\": null,\r\n \"todate\": null,\r\n \"type\": '',\r\n \"status\": 'submitted',\r\n \"reason\": \"\",\r\n \"halfday1\": false,\r\n \"addressduringleave\": \"\",\r\n \"phoneduringleave\": \"\",\r\n \"managernotes\": \"\",\r\n \"createdate\": null,\r\n \"createby\": null,\r\n \"updateby\": null,\r\n \"backupduringleave\": null,\r\n \"companyid\": null,\r\n \"approvedby\": null,\r\n \"tlp\": 0,\r\n \"halfday2\": false,\r\n \"approvedbymanager\": false,\r\n \"approvedbyhr\": false,\r\n \"hrnotes\": \"\",\r\n \"manager\": \"\",\r\n \"tags\": \"\",\r\n \"updatedate\": null,\r\n \"finyear\": null,\r\n \"leavesconfigid\": '',\r\n \"pl_cnt\": 0,\r\n \"lwp_cnt\": 0,\r\n\r\n };\r\n format: any;\r\n closeResult: string;\r\n leaveList: any = []\r\n statusList: any = []\r\n typeList: any = [];\r\n holidayList: any = [];\r\n booleanList: any = []\r\n isView: boolean = false;\r\n response: any;\r\n tlp: any;\r\n fieldsetDisabled = false;\r\n employee: any;\r\n isShowStatusDropdown = true;\r\n publicHolidayDates = [];\r\n publicHolidayFilter: any;\r\n issaved = false;\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private modalService: NgbModal,\r\n private toaster: NotificationService,\r\n private toastr: NotificationService, private activeModal: NgbActiveModal, private commonsevice: CommonServices, private service: hrServices, private datepipe: DatePipe, private loader: NgxUiLoaderService) {\r\n\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.leavesData.fromdate = this.datepipe.transform(new Date(), 'yyyy-MM-dd');\r\n this.leavesData.enddate = this.datepipe.transform(new Date(), 'yyyy-MM-dd');\r\n this.format = this.userdata.date_format;\r\n this.commonsevice.getComboEnums('leavestatus').subscribe(res => {\r\n this.statusList = res;\r\n }, err => {\r\n });\r\n this.commonsevice.getBooleanList().subscribe(res => {\r\n this.booleanList = res;\r\n }, err => {\r\n });\r\n this.getLeavesType();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.isView = this.action;\r\n if (this.from && this.from == 'profile') {\r\n this.isShowStatusDropdown = false;\r\n }\r\n if (this.id) {\r\n this.getleavebyId(this.id)\r\n }\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/hr/employees/leaves/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n getleavebyId(id) {\r\n this.loader.start();\r\n this.service.getLeavesbyId(id).subscribe(res => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('leaves by id', res)\r\n this.leavesData = res;\r\n this.getLeavesType();\r\n this.updateCalcs();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading get leave by id list data', err);\r\n });\r\n }\r\n\r\n getLeavesType() {\r\n this.loader.start();\r\n this.service.getLeaveConfig(this.datepipe.transform(this.leavesData.fromdate, 'YYYY')).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.leavesData.id ? this.leavesData.leavesconfigid = '' + this.leavesData.leavesconfigid : '';\r\n this.typeList = res.type;\r\n this.holidayList = res.holidays;\r\n this.holidayList.forEach(item => {\r\n this.publicHolidayDates.push(item.hdate);\r\n })\r\n this.disableHolidayDates();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n disableHolidayDates() {\r\n this.publicHolidayFilter = (d: Date | null): boolean => {\r\n if (!d || isNaN(new Date(d).getTime())) {\r\n return true; // Allow null or invalid values\r\n }\r\n // Create a copy of the date to avoid modifying the original\r\n const adjustedDate = new Date(d);\r\n adjustedDate.setDate(adjustedDate.getDate() + 1);\r\n const dateStr = adjustedDate.toISOString().split('T')[0];\r\n\r\n // Check if the date is in the holiday list\r\n return !this.publicHolidayDates.includes(dateStr);\r\n };\r\n }\r\n saveEmpLeaves() {\r\n var type;\r\n this.typeList.forEach((element: any) => {\r\n if (element.Value == this.leavesData.leavesconfigid) {\r\n type = element.Text;\r\n }\r\n });\r\n this.leavesData.type = type;\r\n this.leavesData.companyid = this.userdata.companyid;\r\n this.leavesData.empid = this.empid;\r\n if (this.leavesData.id) {\r\n this.leavesData.createby = this.leavesData.createby;\r\n this.leavesData.createdate = this.datepipe.transform(this.leavesData.createdate, this.userdata.postdatetimeformat)\r\n this.leavesData.updateby = this.userdata.email;\r\n this.leavesData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n } else {\r\n this.leavesData.createby = this.userdata.email;\r\n this.leavesData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n }\r\n\r\n this.leavesData.fromdate = this.leavesData.fromdate ? this.datepipe.transform(this.leavesData.fromdate, this.userdata.postdateformat) : null;\r\n this.leavesData.todate = this.leavesData.todate ? this.datepipe.transform(this.leavesData.todate, this.userdata.postdateformat) : null;\r\n this.leavesData.finyear = this.datepipe.transform(this.leavesData.fromdate, 'YYYY');\r\n if (this.leavesData.leavesconfigid) {\r\n this.typeList.forEach(element => {\r\n if (element.Value == this.leavesData.leavesconfigid) {\r\n this.leavesData.type = element.Text;\r\n }\r\n })\r\n }\r\n this.loader.start()\r\n this.service.postEmpLeaves(this.leavesData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.issaved = true;\r\n this.leavesData = {};\r\n this.close();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading Post postEmpLeaves ', err);\r\n });\r\n }\r\n close() {\r\n this.activeModal.close(this.issaved ? 'save' : 'Modal Closed');\r\n }\r\n updateCalcs() {\r\n if (this.leavesData.fromdate != null && this.leavesData.todate != null) {\r\n this.loader.start();\r\n this.commonsevice.getLeaveCount(this.datepipe.transform(this.leavesData.fromdate, ('yyyy-MM-dd')), this.leavesData.halfday1, this.datepipe.transform(this.leavesData.todate, ('yyyy-MM-dd')), this.leavesData.halfday2).subscribe(res => {\r\n this.loader.stop();\r\n this.leavesData.tlp = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n } else {\r\n this.leavesData.tlp = 0;\r\n }\r\n return;\r\n if (this.leavesData.fromdate != null && this.leavesData.todate != null) {\r\n var a = moment(this.leavesData.fromdate, \"YYYY-MM-DD\");\r\n var b = moment(this.leavesData.todate, \"YYYY-MM-DD\");\r\n this.tlp = moment.duration(b.diff(a)).asDays();\r\n\r\n if (this.datepipe.transform(this.leavesData.fromdate, ('dd/MM/yyyy')) == this.datepipe.transform(this.leavesData.todate, ('dd/MM/yyyy'))) {\r\n this.tlp += 1;\r\n }\r\n else {\r\n this.tlp += 1;\r\n }\r\n if (this.leavesData.halfday1 == true) {\r\n var halfday1 = true;\r\n this.tlp = parseFloat(this.tlp) - 0.5;\r\n }\r\n if (this.leavesData.halfday2 == true) {\r\n var halfday2 = true;\r\n this.tlp = parseFloat(this.tlp) - 0.5;\r\n }\r\n if (this.tlp) {\r\n this.checkDate();\r\n }\r\n\r\n }\r\n }\r\n checkDate() {\r\n var startDate = this.datepipe.transform(this.leavesData.fromdate, ('dd/MM/yyyy'));\r\n var endDate = this.datepipe.transform(this.leavesData.todate, ('dd/MM/yyyy'));\r\n var regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n if (parseInt(endDate.replace(regExp, \"$3$2$1\")) >= parseInt(startDate.replace(regExp, \"$3$2$1\"))) {\r\n environment.production ? '' : console.log('start date is greater than end date');\r\n } else {\r\n this.leavesData.todate = null\r\n this.leavesData.tlp = 0;\r\n this.toastr.Error(\"End date should be greater than start date\")\r\n return false\r\n }\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
{{'Modal_Title' | translate }}# {{leavesData.id}}
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'Modal_Inputs.FromDate_required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
{{'Modal_Inputs.ToDate_required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class hrServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n getDepartmentList(isservice) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDept?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&isservice=' + isservice);\r\n }\r\n getGenderList() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGender?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpType() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpDesignation() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployeeDesignations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postEmergencyContact(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpemergencyContact', data);\r\n }\r\n getEmergencyContactById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpemergencyContactByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // \r\n\r\n //============Employee tab services=================\r\n getEmpBadges(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeBadges?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpBanks(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeBanks?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpDocuments(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Gett_EmployeeDocuments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpConsessionPasses(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeConsessionPasses?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpCostings(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeCostings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLeaves(id, fromdate, todate) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLeaves?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getEmpDisciplinaryLog(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeDisciplinaryLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpEducationHistory(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeEducationHistories?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpEmergencyContacts(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeEmergencyContacts?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpFamilyHistory(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeFamilyHistories?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpInsurance(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeInsurances?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLeaveTrackers(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLeaveTrackers?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLoans(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLoans?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLoanApplications(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLoanApps?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLoanById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpLoansByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteEmpLoan(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpLoans?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n getEmpPensions(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeePensions?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpAward(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeAwards?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpAwardById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpAwardsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEmpAward(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpAwards', data);\r\n }\r\n\r\n getEmpPermits(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeePermits?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpReferences(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeReferences?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpReleases(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeReleases?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpWorkHistories(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeWorkHistories?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpWorkLeaves(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLeaves?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpPays(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeePays?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpLicenses(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLicenses?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpTrainings(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeTrainings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpPayrolls(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeePayrolls?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n getEmpLeaveConfigs(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeLeaveConfigs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpOfficeClockings(id, startdate, endate) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeOfficeClockings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&startdate=' + startdate + '&endate=' + endate);\r\n }\r\n\r\n getEmpSalaryComponents(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeSalaryComponents?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpShifts(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeShifts?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //============Employee tab services end=================\r\n\r\n getGetPayType() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPayTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpStatus() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getManager() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpManagers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmployeeDeptList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployeeDepartments?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getApprisalCycle() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAppraisalCycles?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEmployee(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Employees/Postt_Employee', data);\r\n }\r\n getEmpById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Gett_EmployeeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeaves(pg, name, leaveType, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Get_LeaveIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + name + '&leavetype=' + leaveType + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n deleteLeaveById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Leaves/Delete_Leave?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmployees() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployees?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Banks api\r\n postEmpBanks(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpBanks', data);\r\n }\r\n getEmpBanksbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpBanksByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Company shift api\r\n postCompShift(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpShiftConfig', data);\r\n }\r\n getCompShiftById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpShiftConfigByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCompShift(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpShiftConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getcompShiftDrop() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyShifts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Pension api\r\n postPension(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_PensionHistory', data);\r\n }\r\n getPensionbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_PensionHistoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //EmpInsurance api\r\n postEmpInsurance(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpInsurances', data);\r\n }\r\n\r\n getEmpInsurancebyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpInsurancesByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //SalaryStructure api\r\n postSalaryStructure(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_SalaryStructure', data);\r\n }\r\n getSalaryStructurebyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_SalaryStructure?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //emp Edu History\r\n postEduHistory(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EduHistory', data);\r\n }\r\n getEmpEduById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EduHistoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n //badge history\r\n postBadgeHistory(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_BadgesHistory', data);\r\n }\r\n //emp training\r\n postTraining(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_TrainingHistory', data);\r\n }\r\n getTrainingById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_TrainingHistoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp leaves\r\n postEmpLeaves(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpLeaves', data);\r\n }\r\n leaveType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLeaveType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp contact \r\n postEmpcontact(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_ECHistory', data);\r\n }\r\n //emp loans\r\n empLoans(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpLoans', data);\r\n }\r\n getRePaymentMethod() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetRePaymentModes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getContractLegalType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyLegalContracts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp cost center\r\n empCostCenter(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpCostCenter', data);\r\n }\r\n getCompanyLocation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp ref\r\n postEmpRef(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpRef', data);\r\n }\r\n getEmpRefById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpRefByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp reference release \r\n postEmpRelease(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpRelease', data);\r\n }\r\n //emp salary post\r\n postEmpCosting(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpCosting', data);\r\n }\r\n getEmpCostingById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpCostingByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteEmpCostingById(pid) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpCosting?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pid=' + pid);\r\n }\r\n //emp family info\r\n postEmpFamily(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_FamilyHistory', data);\r\n }\r\n getEmpFamilyById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_FamilyHistoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp salary component\r\n postSalaryComp(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpSalaryComponent', data);\r\n }\r\n getSalaryCompById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpSalaryComponentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalaryCompById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpSalaryComponent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Company salary component\r\n postSalaryComponent(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Post_SalaryComponent', data);\r\n }\r\n postSalaryComponentSlab(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Post_SalaryComponentSlab', data);\r\n }\r\n deleteSalaryComponentSlab(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_SalaryComponentSlab?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalaryComponentSlabUpto(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_SalaryComponentSlabUpto?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSalaryComponentIndex(pg, type, searchtxt, status) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_SalaryComponentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&searchtxt=' + searchtxt + '&status=' + status)\r\n }\r\n getSalaryComponentById(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_SalaryComponentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalaryComponentById(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_SalaryComponent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Public Holiday\r\n postPublicHoliday(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_PublicHoliday', data);\r\n }\r\n getPublicHolidayIndex(searchtxt, type, finyear) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_PublicHolidayIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&finyear=' + finyear)\r\n }\r\n getPublicHolidayById(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Gett_PublicHolidayByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePublicHolidayById(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_PublicHoliday?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Salary Increase Structure\r\n postSalaryIncreaseStructure(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Post_SalaryIncreaseStructure', data);\r\n }\r\n getSalaryIncreaseStructureIndex(departmentid, designationid) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_SalaryIncreaseStructureIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&departmentid=' + departmentid + '&designationid=' + designationid)\r\n }\r\n getSalaryIncreaseStructureById(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_SalaryIncreaseStructureByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSalaryIncreaseStructureById(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_SalaryIncreaseStructure?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //emp leave config\r\n postEmpLeaveConfig(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpLeaveConfig', data);\r\n }\r\n getEmpLeaveConfigById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpLeaveConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeaveConfig(finyear) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLeaveConfig?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&finyear=' + finyear)\r\n }\r\n\r\n deleteEmpLeaveConfigById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpLeaveConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Weekly off \r\n //emp leave config\r\n postWeeklyOff(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_WeeklyOff', data);\r\n }\r\n getWeeklyOffById(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Gett_WeeklyOffByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getWeeklyOffIndex(departmentid, type) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_WeeklyOffIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&departmentid=' + departmentid + '&type=' + type)\r\n }\r\n deleteWeeklyOffById(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_WeeklyOff?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Master Leave Config\r\n postLeaveConfig(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_LeaveConfig', data);\r\n }\r\n getLeaveConfigById(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Gett_LeaveConfigByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeaveConfigIndex(description, type) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_LeaveConfigIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description + '&type=' + type);\r\n }\r\n deleteLeaveConfigById(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_LeaveConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //emp work history\r\n postEmpWorkHistory(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_WorkHistory', data);\r\n }\r\n // \r\n getEmpWorkById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_WorkHistoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n\r\n\r\n postWpHistoryData(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_WorkPermit', data);\r\n }\r\n\r\n postDisLogs(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpDisLog', data);\r\n }\r\n getLeaveType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLeaveType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postLeaves(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Leaves/Postt_Leaves', data);\r\n }\r\n\r\n postLeaveItem(data) {\r\n return this.http.post(this.baseUrl + 'api/Leaves/Postt_LeaveItem', data);\r\n }\r\n\r\n getleavesStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLeaveStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getLeavesbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Gett_LeaveByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getOfficeCLocking(pg, empid, status, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/OfficeClockings/Get_OfficeClockings?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&employeeid_id=' + empid + '&status=' + status + '&fromdate=' + fdate + '&todate=' + tdate)\r\n }\r\n\r\n getEmpList(pg, name, code, status, type, paytype, designation_id, department_id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&name=' + name + '&code=' + code + '&status=' + status + '&type=' + type + '&paytype=' + paytype + '&designation_id=' + designation_id + '&department_id=' + department_id);\r\n }\r\n\r\n\r\n //site logs\r\n getCustomerLocations() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getLeavesCategories(description) {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Get_LeaveCategoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description)\r\n }\r\n getLeavesCategoriesById(id) {\r\n return this.http.get(this.baseUrl + 'api/Leaves/Gett_LeaveCategoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postLeaveCategory(data) {\r\n return this.http.post(this.baseUrl + 'api/Leaves/Postt_LeaveCategory', data)\r\n }\r\n deleteLeaveCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Leaves/Delete_LeaveCategory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getshiftReasons(description) {\r\n return this.http.get(this.baseUrl + 'api/OfficeClockings/Get_ClockingReasonIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description)\r\n }\r\n getShiftreasonById(id) {\r\n return this.http.get(this.baseUrl + 'api/OfficeClockings/Gett_ClockingReasonByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteClockingReason(id) {\r\n return this.http.delete(this.baseUrl + 'api/OfficeClockings/Delete_ClockingReason?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n postshiftReason(data) {\r\n return this.http.post(this.baseUrl + 'api/OfficeClockings/Postt_ClockingReason', data);\r\n }\r\n\r\n getShiftBreaksByID(shift_id) {\r\n return this.http.get(this.baseUrl + 'api/OfficeClockings/Get_ShiftByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&shift_id=' + shift_id)\r\n }\r\n deleteShift(id) {\r\n return this.http.delete(this.baseUrl + 'api/OfficeClockings/Delete_EmployeeShift?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteShiftBreak(id) {\r\n return this.http.delete(this.baseUrl + 'api/OfficeClockings/Delete_ShiftBreak?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n //license\r\n postLicense(data) {\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpLicense', data);\r\n\r\n }\r\n getLicenseById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpLicense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n //consession passes\r\n postConssionPasses(data) {\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmpPasses', data);\r\n\r\n }\r\n getConssionPassesById(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpLicense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getContactList() {\r\n\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyContacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getAssessmentList(type, desc) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_AssesmentParticulars?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type + '&description=' + desc)\r\n }\r\n\r\n getAssessmentbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_AssesmentParticularByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n postAssessment(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AssesmentParticular', data);\r\n }\r\n\r\n deleteAssessment(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssesmentParticular?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getEmpAssesmentList(pg, employeeid, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_EmployeeAssesmentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&employeeid=' + employeeid + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n getEmpAssessmentbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_EmployeeAssesmentById?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n postEmpAssesment(data) {\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_EmployeeAssesment', data);\r\n }\r\n deleteEmpAssessment(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_EmployeeAssesment?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEntry(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AssesmentParticularEntry', data);\r\n }\r\n\r\n deleteEntryChoice(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssesmentParticularEntryChoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssesmentParticularEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteEmpBank(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpBanks?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n\r\n }\r\n deleteBadgesHistory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_BadgesHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n\r\n }\r\n\r\n\r\n\r\n deleteEmpInsurance(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpInsurances?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteEmpPensionHistry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_PensionHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteEmpWorkPermit(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_WorkPermit?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpemergencyContact(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpemergencyContact?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteTrainingHistory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_TrainingHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpRelease(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpRelease?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpRef(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpRef?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpCosting(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpCosting?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteWorkHistory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_WorkHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteFamilyHistory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_FamilyHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpPasses(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpPasses?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpLeaves(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpLeaves?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEduHistory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EduHistory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmployee(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_Employee?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n DeleteEmpLincense(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpLincense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteEmpAward(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmpAwards?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getJobOpeningList(type) {\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Get_JobOpeningIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type)\r\n }\r\n getJobOpeningById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_JobOpeningByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postJobOpening(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Recruitment/Postt_JobOpening', data);\r\n }\r\n deleteJobOpening(id) {\r\n return this.http.delete(this.baseUrl + 'api/Recruitment/Delete_JobOpening?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n getJobApplicationList(skillset, name, email, status) {\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Get_JobAplicationIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&skillset=' + skillset + '&name=' + name + '&email=' + email + '&status=' + status)\r\n }\r\n getJobApplicationById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_JobAplicationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postJobApplication(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Recruitment/Postt_JobApplication', data);\r\n }\r\n deleteJobApplication(id) {\r\n return this.http.delete(this.baseUrl + 'api/Recruitment/Delete_JobApplication?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n //Job Offer\r\n getJobOfferIndex(pg, srchtext, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Get_JobOfferIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&fromdate=' + fromdate + '&todate=' + todate + '&srchtext=' + srchtext + '&status=' + status)\r\n }\r\n getJobOfferList(id) {\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_OffersByApplicant?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&applicant_id=' + id)\r\n }\r\n getJobOfferById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_JobOfferByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postJobOffer(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Recruitment/Postt_JobOffer', data);\r\n }\r\n deleteJobOffer(id) {\r\n return this.http.delete(this.baseUrl + 'api/Recruitment/Delete_JobOffer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n deleteJobOfferComponent(id) {\r\n return this.http.delete(this.baseUrl + 'api/Recruitment/Delete_JobOfferComponent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getApplicantsByJobopening(jobid) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_AppsByJob?jobid=' + jobid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOfferByJobOpening(jobid) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Recruitment/Gett_OffersByJob?jobid=' + jobid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Advnace loan request\r\n getAdvLoanList(searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_EmpAdvanceIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getAdvLoanById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/HR/Gett_EmpAdvanceByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAdvLoan(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_EmpAdvance', data);\r\n }\r\n deleteAdvLoan(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_EmpAdvance?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n //Advnace loan request\r\n getLegalContractList(name) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyLegalContracts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name)\r\n }\r\n getLegalContractById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyLegalContractByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postLegalContract(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyLegalContracts', data);\r\n }\r\n deleteLegalContract(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyLegalContract?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n deleteLegalContractDetails(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyLegalContractDetails?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssesmentOfferDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_EmployeeAssesmentScore?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n updateEmployeeAssesmentStatus(id, status) {\r\n return this.http.get(this.baseUrl + 'api/HR/EmployeeAssesment_UpdateStatus?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&status=' + status);\r\n }\r\n submitParticular4Review(id, status) {\r\n return this.http.get(this.baseUrl + 'api/Employees/EmployeeAssesment_Submit4Review?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&status=' + status);\r\n }\r\n createOffer(id) {\r\n return this.http.get(this.baseUrl + 'api/HR/Create_EmployeeOffer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postApproveEmployeeAssesment(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Approve_EmployeeAssesment', data);\r\n }\r\n getEmployeeLeaveBalance(empid, searchtxt, yr) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeLeaveBalance?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&empid=' + empid + '&searchtxt=' + searchtxt + '&yr=' + yr)\r\n }\r\n //Award types\r\n getAwardTypes(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/HR/Get_EmployeeAwardTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt)\r\n }\r\n getAwardTypeById(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/HR/Gett_EmployeeAwardTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAwardType(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/HR/Postt_EmployeeAwardType', data);\r\n }\r\n deleteAwardType(id) {\r\n return this.http.delete(this.baseUrl + 'api/HR/Delete_EmployeeAwardType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}","// import { Injectable } from '@angular/core';\r\n// import { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\n// import { environment } from '../../../environments/environment'\r\n// import { throwError, Observable } from 'rxjs';\r\n// import { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\n// import { catchError } from 'rxjs/operators';\r\n// import { Events } from 'src/app/shared/service/events.service';\r\n// import { DatePipe } from '@angular/common';\r\n\r\nimport { EventEmitter, Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IntegrationServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n //QB services\r\n getQBAuthenticate() {\r\n return this.http.get(this.baseUrl + 'api/QB/AuthenticateQuickBook?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getQBRefreshToken(appid) {\r\n return this.http.get(this.baseUrl + 'api/QB/RefreshToken?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&app_id=' + appid);\r\n }\r\n getQBSyncCustomer(appid, synctimestamp, type, custid) {\r\n return this.http.get(this.baseUrl + 'api/QB/Sync_Customer?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&app_id=' + appid + '&sync_timestamp=' + synctimestamp + '&type=' + type + '&customerid=' + custid);\r\n }\r\n getQBSyncSuppliers(appid, synctimestamp, type, custid) {\r\n return this.http.get(this.baseUrl + 'api/QB/Sync_Customer?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&app_id=' + appid + '&sync_timestamp=' + synctimestamp + '&type=' + type + '&supplierid=' + custid);\r\n }\r\n\r\n // Xero Services\r\n getXeroAuthenticate() {\r\n return this.http.get(this.baseUrl + 'api/Xero/AuthenticateXero?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getXeroRefreshToken(appid) {\r\n return this.http.get(this.baseUrl + 'api/Xero/RefreshToken?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&app_id=' + appid);\r\n }\r\n //batches\r\n postBatch(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/TPI/Post_TPIBatch', data);\r\n }\r\n getBatchListIndex(pg, searchtxt, fromdate, todate, type, txntype, status) {\r\n return this.http.get(this.baseUrl + 'api/TPI/Get_TPIBatches?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&txntype=' + txntype + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n\r\n getBatchByID(id) {\r\n return this.http.get(this.baseUrl + 'api/TPI/Get_TPIBatchByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n getBatchEntries(id) {\r\n return this.http.get(this.baseUrl + 'api/TPI/Get_TPIBatchData?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n deleteBatch(id) {\r\n return this.http.delete(this.baseUrl + 'api/TPI/Delete_TPIBacth?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteBatchEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/TPI/Delete_TPIBacthEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\nimport { modelComp, modelLogin } from '../../components/auth/login/modelLogin';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InventoryServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n\r\n public productDtForEdit: ''\r\n public productDetails: '';\r\n inventoryItemAliases: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n //invenotry item grid action\r\n getServiceItems(pg, serilized, searchtxt, supplier, category, deptid, status, tpsync) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ServiceItemIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&serilized=' + serilized + '&supplier=' + supplier + '&category=' + category + '&deptid=' + deptid + '&status=' + status + '&tpsync=' + tpsync);\r\n }\r\n getInventoryItems(pg, serilized, searchtxt, supplier, category, deptid, status, tpsync) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&serilized=' + serilized + '&category=' + category + '&deptid=' + deptid + '&status=' + status + '&tpsync=' + tpsync);\r\n }\r\n postTransferHoldAdjust(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdTran', data);\r\n }\r\n postProdMoveSerials(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdMoveSerials', data);\r\n }\r\n getTransferQty(prodid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdTransferQty?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getAdjustQty(prodid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdAdjustQty?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getHoldQty(prodid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdHoldQty?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getSerialListUsingBin(binid, prod) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetBinSerials?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&binid=' + binid + '&prodid=' + prod);\r\n\r\n }\r\n postSerial(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdSerial', data);\r\n\r\n }\r\n //Inventory item edit tab\r\n getProductAlias(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemAliases?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductBins(id, forsale) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemBins?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&forsale=' + forsale);\r\n }\r\n\r\n getProductPictures(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryPictures?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductDocuments(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_ProductDocuments?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductPricing(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryPricings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductReviews(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemReviews?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductLoyalityPrograms(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryLoyalityPrograms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductSerials(id, serialno, bincode, status) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemSerials?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&serialno=' + serialno + '&bincode=' + bincode + '&status=' + status);\r\n }\r\n\r\n getItemAnalyses(id, fromdate, todate, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_ItemAnalysis?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getProductSubstitutes(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemSubstitutes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductSupliers(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemSuppliers?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteProductSupliers(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_ProdSupplier?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postItemSupplier(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdSuppliers', data);\r\n\r\n }\r\n postItemAlias(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdAlias', data);\r\n }\r\n deleteItemAlias(id, prodid) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_ProductAlias?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n postItemReview(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProductReview', data);\r\n }\r\n postSingleSubstitudeData(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_SubstituteSingleProducts', data);\r\n\r\n }\r\n postPicture(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProductPictures', data);\r\n }\r\n getProductCategory(dept, isservice) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dept=' + dept + '&isservice=' + isservice);\r\n }\r\n getProductSubCategory(categoryid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductSubCatgeory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&categoryid=' + categoryid);\r\n\r\n }\r\n getSubtitudeCatlog(supplierid, dept, cat, subcat, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/GetSubstitueProductCatalog?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid + '&dept=' + dept + '&cat=' + cat + '&subcat=' + subcat + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getPostProductMainPicture(id, prodid, ismain) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Product_MainPicture?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid + '&mainpic=' + ismain);\r\n }\r\n\r\n getProductDeletePicture(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_ProductPicture?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getBinProducts(id, ilc, serial) {\r\n return this.http.get(this.baseUrl + 'api/BinLocations/Get_BinProducts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id + '&lic=' + ilc + '&serial=' + serial);\r\n }\r\n\r\n getProductType() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getManifracturList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetManufacturers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProductSupplier() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getGLAccount() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGLAccounts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProductStatusList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getParaentProducts(catid, ptype) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProducts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&catid=' + catid + '&ptype=' + ptype);\r\n }\r\n getInventoryItemsDetials(prodid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_InventoryByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + prodid);\r\n }\r\n getBinDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/binlocations/Gett_BinLocationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProduct(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_InventoryItem', data);\r\n }\r\n //get department \r\n getDepartmentList(service, desc, status, code) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_DepartmentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&service=' + service + '&desc=' + desc + '&status=' + status + '&code=' + code);\r\n }\r\n getDepartmentById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_DepartmentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDept(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_Department', val);\r\n }\r\n deleteDepartment(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_Department?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //=====category=====\r\n getCategoryList(isservice, desc, status) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_CategoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&service=' + isservice + '&desc=' + desc + '&status=' + status);\r\n }\r\n getParentCat(isservice) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDept?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&isservice=' + isservice);\r\n }\r\n getCategoiryById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_CategoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postcat(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_Category', val);\r\n }\r\n deleteCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_Category?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //=========================Bin Location===============================\r\n\r\n //Bin location list\r\n getBinLocations(pg, desc, code) {\r\n return this.http.get(this.baseUrl + 'api/binlocations/Get_BinIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&desc=' + desc + '&code=' + code);\r\n }\r\n //get bin product\r\n getBinProduct(id, ilc, serial) {\r\n return this.http.get(this.baseUrl + 'api/BinLocations/Get_BinProducts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id + '&ilc=' + ilc + '&serial=' + serial);\r\n }\r\n getBinLocationDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/binlocations/Gett_BinLocationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Bin location post\r\n postBinLocation(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdBins', val);\r\n }\r\n postMasterBinLocation(val) {\r\n return this.http.post(this.baseUrl + 'api/BinLocations/Postt_BinLocation', val);\r\n }\r\n getBinLocationById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdBinByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Transfer Request\r\n getTransferRequestList(pg, reqno, status, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/Get_InventoryTransferIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&reqno=' + reqno + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n getRequestById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/Gett_InventoryTransferByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTransferRequest(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryTransfers/Postt_InventoryTransfer', val);\r\n }\r\n getSearchProduct() {\r\n // GetProductInfo4Transfer\r\n }\r\n //assembly\r\n getAssembly(pg, name, assno, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_AssemblyIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&name=' + name + '&assno=' + assno + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postAssembly(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_Assembly', val);\r\n\r\n }\r\n getActiveInactive() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/ActiveInActiveFilter?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getAssemblyDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_AssemblyByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n //inventory cycle count\r\n getCycleCount(pg, refno, status, reason, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Get_InventoryCountIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&refno=' + refno + '&status=' + status + '&reason=' + reason + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getCountDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Gett_InventoryCountByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInventoryCountBins(countid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Gett_InventoryCountBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&countid=' + countid);\r\n }\r\n postCycleCount(val) {\r\n const data = JSON.stringify(val)\r\n return this.http.post(this.baseUrl + 'api/InventoryCount/Postt_InventoryCount', data);\r\n }\r\n postCycleCountBinLocation(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/InventoryCount/Postt_InventoryCountBinLocation', data);\r\n }\r\n deleteCountBin(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryCount/Delete_InventoryCountBinLocation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBINLocations(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Get_BinLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n //invenotry Adj\r\n\r\n getInvenotryAdj(pg, adjno, status, adjtype, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryAdj/Get_InventoryAdjIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&adjno=' + adjno + '&status=' + status + '&adjtype=' + adjtype + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getAdjTypeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInventoryAdjustType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTranType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdTranType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBinList(prodid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdBinsData?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getBinListforItemRequest() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInternalDeptBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getProductBin(prodid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getActionType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTransactionTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBinLocationList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProductItem(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductInfo4Adj?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n getInvenotryAdjById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryAdj/Gett_InventoryAdjByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postInvenotryAdj(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryAdj/Postt_InventoryAdj', val);\r\n\r\n }\r\n //cycle count \r\n getCycleCountItemList(countid, searchtxt, counted, variance) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Gett_InventoryCountItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&countid=' + countid + '&searchtxt=' + searchtxt + '&counted=' + counted + '&variance=' + variance);\r\n }\r\n getCycleCountManualEntriesByProdID(countid, binid, prodid, serial) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Get_CycleCountManualEntriesByProdID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&countid=' + countid + '&binid=' + binid + '&prodid=' + prodid + '&serial=' + serial);\r\n }\r\n getAdjustTypeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAdjustType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getApproveCount(id, completiondate, uncounted_items_assumption) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Get_ApproveManualCount?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&completiondate=' + completiondate + '&uncounted_items_assumption=' + uncounted_items_assumption);\r\n }\r\n getCountInvAdj(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryCount/Get_CountInvAdj?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n startCycleCount(id) {\r\n return this.http.post(this.baseUrl + 'api/InventoryCount/Start_CycleCount?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&countid=' + id, '');\r\n }\r\n //pricing\r\n getBatchPricingList(pg, searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Get_PricingBatchIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postPricingBatch(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryPricings/Post_PricingBatch', val);\r\n }\r\n getPricingBatchDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Get_PricingBatchByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCycleCountlineItem(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryCount/Postt_InventoryCountItem', val);\r\n }\r\n getApplyChanges(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Get_ApplyPriceChages?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n }\r\n\r\n //bulkpricing\r\n getBulkPricingIndex(pg, searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Get_ProdBPCIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postBulkPricingBatch(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryPricings/Post_ProdBPC', val);\r\n }\r\n getBulkPricingBatchDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Get_ProdBPCByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getApproveBulkPricingBatch(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryPricings/Approve_ProdBPCReq?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBulkPriceChange(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryPricings/Delete_ProdBPCReq?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //item request\r\n getItemRequestList(location, reqno, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryRequest/Get_InventoryRequestIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&location=' + location + '&reqno=' + reqno + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getItemRequestDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryRequest/Gett_InventoryRequestByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postItemRequest(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryRequest/Postt_InventoryRequest', val);\r\n }\r\n postReceiveSerilizedItems(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ReceiveSerilizedItems', JSON.stringify(val));\r\n }\r\n getapproveTransfer(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/Get_ApproveTransfer?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n\r\n }\r\n getDeleteInventoryTransferItem(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/DeleteInventoryTransferEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeleteInventoryTransfer(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/DeleteInventoryTransfer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompleteTransfer(id, dept_loc) {\r\n return this.http.get(this.baseUrl + 'api/InventoryTransfers/Get_CompleteTransfer?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id + '&dept_loc=' + dept_loc);\r\n }\r\n\r\n getInvProdBins(prodid, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_Prodbins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid + '&searchtxt=' + searchtxt);\r\n }\r\n deleteAdjLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryAdj/Delete_InventoryAdjLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n deleteAssembly(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_Assembly?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAssemblyMaterials(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_AssemblyMaterials?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteAssemblyLabor(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_AssemblyLabor?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletebinLocation(id) {\r\n return this.http.delete(this.baseUrl + 'api/BinLocations/Delete_BinLocation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteProdBin(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_InventoryBin?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getToggleBinForSale(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Toggle_BinForSale?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBinIncludeOnHand(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Toggle_BinIncludeOnHand?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //get bin hold details\r\n getBinHoldDetails(binid, prodid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_Binholddetails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&binid=' + binid + '&prodid=' + prodid);\r\n\r\n }\r\n unHoldQty(customerid, eid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_Undotransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&eid=' + eid);\r\n }\r\n undoProductTransaction(customerid, eid) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Undo_ProdTran?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&eid=' + eid);\r\n }\r\n postInventoryTax(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_InventoryTax', JSON.stringify(val));\r\n }\r\n getInventoryTax(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryTax?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInventoryTaxByID(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_InventoryTaxByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBatchLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryPricings/Delete_PricingBatchEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBatch(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryPricings/Delete_PricingBatch?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLotTrackingData(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemLotTrackings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n getLotDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdLotByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n postLotDetails(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdLot', JSON.stringify(val));\r\n\r\n }\r\n deleteProduct(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/delete_inventoryitem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCycleCount(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryCount/Delete_InventoryCount?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCycleCountItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryCount/Delete_InventoryCountItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteTemTax(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_InventoryItemTax?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTiming(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemTimings?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTimingByID(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_InventoryItemTimingID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTiming(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_InventoryItemTiming', JSON.stringify(val));\r\n }\r\n deleteTiming(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_InventoryItemTiming?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAddonList(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_InventoryItemAddons?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAddon(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_InventoryItemAddon', JSON.stringify(val));\r\n }\r\n deleteAddon(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_InventoryItemAddon?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBinTemplateIndex(pg, searchtxt, active, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/BinLocations/Get_BinTemplateIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&active=' + active + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n getBinTemplateById(id) {\r\n return this.http.get(this.baseUrl + 'api/BinLocations/Gett_BinTemplateByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBinTemplate(val) {\r\n return this.http.post(this.baseUrl + 'api/BinLocations/Postt_BinTemplate', JSON.stringify(val));\r\n }\r\n deleteBinTemplate(id) {\r\n return this.http.delete(this.baseUrl + 'api/BinLocations/DeleteBinTemplate?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBinTemplateItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/BinLocations/DeleteBinTemplateEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postMapBinTemplate(val) {\r\n return this.http.post(this.baseUrl + 'api/BinLocations/Map_BinTemplate', JSON.stringify(val));\r\n }\r\n //Inventory Details\r\n getInventoryDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_InventoryDetails?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInventoryDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_InventoryDetailsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteInventoryDetails(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_InventoryDetails?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postInventoryDetails(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Postt_InventoryDetails', JSON.stringify(val));\r\n }\r\n //Product Sale UOM\r\n getProdSaleUOM(id) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Get_ProdSaleUOM?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteProdSaleUOM(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryItems/Delete_ProdSaleUOM?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProdSaleUOM(val) {\r\n return this.http.post(this.baseUrl + 'api/InventoryItems/Post_ProdSaleUOM', JSON.stringify(val));\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators, AbstractControl, NgForm, FormControl } from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../inventory.service';\r\nimport { Observable, ReplaySubject, Subject, Subscription } from 'rxjs';\r\nimport { COMMA, E, ENTER, I } from '@angular/cdk/keycodes';\r\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { map, startWith, takeUntil } from 'rxjs/operators';\r\nimport { MasterdataComponent } from 'src/app/components/modal/masterdata/masterdata.component';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ItemcodelistComponent } from 'src/app/components/modal/itemcodelist/itemcodelist.component';\r\nimport * as moment from 'moment';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { AdduomComponent } from '../modal/adduom/adduom.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { TrackingComponent } from 'src/app/components/modal/tracking/tracking.component';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Component({\r\n\tselector: 'app-add-product',\r\n\ttemplateUrl: './add-product.component.html',\r\n\tstyleUrls: ['./add-product.component.scss']\r\n})\r\nexport class AddProductComponent implements OnInit {\r\n\t@ViewChild('clearDateField') clearDateField: ElementRef;\r\n\t@ViewChild('clearDateField1') clearDateField1: ElementRef;\r\n\t@ViewChild('glaccount') glaccount;\r\n\t@ViewChild('supplier') supplier;\r\n\tisCollapsed = true;\r\n\tisCollapsed2 = true;\r\n\tisCollapsed3 = true;\r\n\tisCollapsed4 = true;\r\n\tpublic counter: number = 1;\r\n\tglAccountList: any = [];\r\n\tcoaPurchasereturnSettings: any = {};\r\n\tcoaPurchaseAccountSettings: any = {};\r\n\tcoaSalesreturnSettings: any = {};\r\n\tcoaSalesAccountSettings: any = {};\r\n\tglInventoryStockSettings: any = {};\r\n\tcoa_inventorystock: any;\r\n\tcoa_salereturn: any;\r\n\tcoa_sales: any;\r\n\tcoa_purchasereturn: any;\r\n\tcoa_purchase: any;\r\n\taddOnFocusOut = true;\r\n\tpublic url = [{\r\n\t\timg: \"assets/images/user.png\",\r\n\t},\r\n\t{\r\n\t\timg: \"assets/images/user.png\",\r\n\t},\r\n\t{\r\n\t\timg: \"assets/images/user.png\",\r\n\t},\r\n\t{\r\n\t\timg: \"assets/images/user.png\",\r\n\t},\r\n\t{\r\n\t\timg: \"assets/images/user.png\",\r\n\t}\r\n\t]\r\n\tpublic product: any = {\r\n\t\tid: null,\r\n\t\tptype: 'inventory',\r\n\t\tflatpp: false,\r\n\t\tsale_online: false,\r\n\t\tauth_onsale: false,\r\n\t\tmanualstockaudit: false,\r\n\t\tshowinmobileapp: false,\r\n\t\tdonotsell: false,\r\n\t\tdonotorder: false,\r\n\t\tnotdiscountable: false,\r\n\t\tlot_tracking: false,\r\n\t\tisserilized: false,\r\n\t\treturnable: false,\r\n\t\tsize: '0',\r\n\t\tweight: '0',\r\n\t\tlength: '0',\r\n\t\twidth: '0',\r\n\t\theight: '0',\r\n\t\tsalespricepercentageminimum: '0',\r\n\t\treorderpoint: '0',\r\n\t\treorderqty: '0',\r\n\t\tminqty: '0',\r\n\t\tmaxqty: '0',\r\n\t\twarranty_period: '0',\r\n\t\tpocost: 0,\r\n\t\tlandedcost: '0',\r\n\t\tavgcost: '0',\r\n\t\tsalepricepercentage: '0',\r\n\t\tcommissionpercentage: '0',\r\n\t\tstore: '0',\r\n\t\tstoremin: '0',\r\n\t\tservice: '0',\r\n\t\twholesale: '0',\r\n\t\tonline: '0',\r\n\t\tofferprice: '0',\r\n\t\tflatprice: '0',\r\n\t\tqtyinpack: '1',\r\n\t\tdiscount: '0',\r\n\t\twastage_per: '0',\r\n\t\tdays_to_restock: '0',\r\n\t\tdept: '',\r\n\t\tcat: '',\r\n\t\tsubcat: '',\r\n\t\tstatus: 'active',\r\n\t\tparentid: '',\r\n\t\tcoa_purchase: '',\r\n\t\tcoa_purchasereturn: '',\r\n\t\tcoa_sales: '',\r\n\t\tcoa_salereturn: '',\r\n\t\twarranty_in: '',\r\n\t\tcoa_inventorystock: '',\r\n\t\tuom: '',\r\n\t\tpcurrency: '',\r\n\t\tpuom: '',\r\n\t\tdiscount_type: '',\r\n\t\tdescription: '',\r\n\t\tcolor: 'black',\r\n\t\ttpcode: '',\r\n\t\ttpcodeextra: '',\r\n\t\tabc_type: '',\r\n\t\tpos_description: '',\r\n\t\tlandedat: 0,\r\n\t\tprefer_to_purchase: false,\r\n\t\tprefer_to_produce: false\r\n\t}\r\n\tappname = environment.APP_NAME;\r\n\tuserdata: any;\r\n\tdeptList: any = [];\r\n\tcategoryList: any = []\r\n\tsubCategoryList: any = []\r\n\tproductType: any = [];\r\n\tproductSellUOMList: any = [];\r\n\tsupplierList: any = [];\r\n\tcurrencyList: any = [];\r\n\tmanifractureList: any = [];\r\n\tstatusList: any = [];\r\n\tproductData: any = {}\r\n\tdiscountTypeList: any = [];\r\n\teditProductData: any = {};\r\n\taccountGroupingList: any = []\r\n\twarrantyList: any = [];\r\n\tparaentMainList: any = [];\r\n\tisEdit: boolean = false;\r\n\tproductid: any;\r\n\tlastaction: string;\r\n\taccounts: any = [];\r\n\tglList: any = [];\r\n\tlastPage: string;\r\n\tform: NgForm;\r\n\tfieldsetDisabled = false;\r\n\ttagName: any;\r\n\tseparatorKeysCodes: number[] = [ENTER, COMMA];\r\n\ttagCtrl = new FormControl('');\r\n\tfilteredTags: Observable;\r\n\ttags: any = [];\r\n\tallTags: any = [];\r\n\ttotalLeaves: any;\r\n\tkeyword: any = 'Text';\r\n\theader: any = 'Dropdown';\r\n\t@ViewChild('tagInput') tagInput: ElementRef;\r\n\tbuttonaction: any\r\n\tnewproductSellUOMList: any = [];\r\n\ttracking: any = []\r\n\tuploader: FileUploader;\r\n\tresponse: any;\r\n\tfilename: any;\r\n\tDOC_URL: any;\r\n\tmsg: string;\r\n\turl1: any\r\n\tprivate langChangeSubscription: Subscription;\r\n\ttranslatedTitle: any;\r\n\tbinList: any = [];\r\n\tprodSellUOMList: any = [];\r\n\tsellUOM: any = null;\r\n\tconstructor(private fb: FormBuilder,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate toaster: ToastrService, private modalService: NgbModal, private router: Router, private loader: NgxUiLoaderService, private service: InventoryServices, private datepipe: DatePipe, private commonService: CommonServices, private purchaseService: purchaseServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\tenvironment.production ? '' : console.log('data.......', this.productid);\r\n\t\tthis.DOC_URL = environment.DOC_URL;\r\n\t\tvar decodeId = this.route.snapshot.queryParamMap.get('id');\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t\tthis.buttonaction = 'view';\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t} else {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\r\n\t\t//came from edit project snag tab\r\n\t\tthis.lastPage = this.route.snapshot.queryParamMap.get('lastPage');\r\n\t\tif (this.lastPage == 'supplier') {\r\n\t\t\tthis.product.supplierid = atob(this.route.snapshot.queryParamMap.get('supplierid'));\r\n\t\t}\r\n\t\tif (decodeId) {\r\n\t\t\tthis.productid = atob(decodeId); // decode a string \r\n\t\t\tthis.isEdit = true;\r\n\t\t\tthis.getItemDetails(this.productid);\r\n\t\t\tthis.getProductTrackingNotes()\r\n\t\t}\r\n\t\t// this.product.ptype = this.route.snapshot.queryParamMap.get('ptype');\r\n\r\n\r\n\t\tthis.commonService.getComboEnums('prodtype').subscribe(res => {\r\n\t\t\tthis.productType = res;\r\n\t\t\tenvironment.production ? '' : console.log('product type ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading product type data', err);\r\n\t\t});\r\n\r\n\t\tthis.service.getProductSupplier().subscribe(res => {\r\n\t\t\tthis.supplierList = res;\r\n\t\t\tenvironment.production ? '' : console.log('supplierList type ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading supplierList data', err);\r\n\t\t});\r\n\r\n\t\tthis.commonService.getCurrency().subscribe(res => {\r\n\t\t\tthis.currencyList = res;\r\n\t\t\tenvironment.production ? '' : console.log('currencyList ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading currencyList data', err);\r\n\t\t});\r\n\r\n\t\tthis.commonService.getComboEnums('prodstatus').subscribe(res => {\r\n\t\t\tthis.statusList = res;\r\n\t\t\tenvironment.production ? '' : console.log('statusList ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading statusList data', err);\r\n\t\t});\r\n\r\n\t\tthis.commonService.getComboEnums('discounttype').subscribe(res => {\r\n\t\t\tthis.discountTypeList = res;\r\n\t\t\tenvironment.production ? '' : console.log('discountTypeList ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading discountTypeList data', err);\r\n\t\t});\r\n\r\n\t\tthis.commonService.getCOAList('leaf').subscribe(res => {\r\n\t\t\tthis.accounts = res;\r\n\t\t\t// this.dropdownList.forEach(element => {\r\n\t\t\t// \telement.Value = Number(element.Value)\r\n\t\t\t// })\r\n\t\t\tthis.glAccountList = [];\r\n\t\t\tthis.accounts.forEach(element => {\r\n\t\t\t\tthis.glAccountList.push({\r\n\t\t\t\t\t\"id\": Number(element.Value),\r\n\t\t\t\t\t\"itemName\": element.Text,\r\n\t\t\t\t\t\"category\": element.Value1,\r\n\t\t\t\t})\r\n\t\t\t});\r\n\t\t\tenvironment.production ? '' : console.log('Drop down list', this.glAccountList);\r\n\t\t\tthis.accountGroupingList = Array.from(new Set(this.accounts.map(({ Value1 }) => Value1)));\r\n\t\t\tenvironment.production ? '' : console.log('list', this.accountGroupingList);\r\n\t\t\tenvironment.production ? '' : console.log('accounts', res)\r\n\t\t\tthis.setGLAccounts();\r\n\t\t})\r\n\t\t//Sales COA Settings\r\n\t\tthis.coaSalesAccountSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select COA Sales\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search COA Sales'\r\n\t\t};\r\n\r\n\t\tthis.coaSalesreturnSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select COA Sales Return\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search COA Sales Return'\r\n\t\t};\r\n\r\n\t\t//Purchase COA Settings\r\n\t\tthis.coaPurchaseAccountSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select COA Purchase\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search COA Purchase'\r\n\t\t};\r\n\r\n\t\tthis.coaPurchasereturnSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select COA Purchase Return\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search COA Purchase Return'\r\n\t\t};\r\n\r\n\t\tthis.glInventoryStockSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select GL Inventory Stock\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search GL Inventory Stock'\r\n\t\t};\r\n\r\n\t\tthis.commonService.getComboEnums('warrentyin').subscribe(res => {\r\n\t\t\tthis.warrantyList = res;\r\n\t\t\tenvironment.production ? '' : console.log('warrantyList type ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading warrantyList data', err);\r\n\t\t})\r\n\t\t// this.service.getParaentMain('').subscribe(res => {\r\n\t\t// \tthis.paraentMainList = res;\r\n\t\t// \tenvironment.production ? '' : console.log('parentMainList type ', res);\r\n\t\t// }, err => {\r\n\t\t// \tenvironment.production ? '' : console.log('Error : While loading parentMainList data', err);\r\n\t\t// })\r\n\t\tthis.getManufacturerData();\r\n\t\tthis.getProdUom();\r\n\t\tthis.getProdSellUom();\r\n\t\tthis.getDeptData();\r\n\t\tthis.getBinLocations();\r\n\t\tthis.initializeFileUploader();\r\n\t}\r\n\tgetBinLocations() {\r\n\t\tthis.service.getBinLocationList().subscribe(res => {\r\n\t\t\tthis.binList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\t}\r\n\tgetProdUom() {\r\n\t\tthis.product.puom = ''\r\n\t\tthis.purchaseService.getProdUom().subscribe(res => {\r\n\t\t\tthis.productSellUOMList = res;\r\n\t\t\t// if (this.productSellUOMList.length != this.newproductSellUOMList.length) {\r\n\t\t\t// \tthis.newproductSellUOMList = res\r\n\t\t\t// }\r\n\r\n\t\t\tenvironment.production ? '' : console.log(' prod uom list data ', this.productSellUOMList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading prod uom list ', err);\r\n\t\t});\r\n\t\tthis.product.uom = this.product.uom\r\n\t}\r\n\tgetProdSellUom() {\r\n\t\tthis.product.uom = ''\r\n\t\tthis.purchaseService.getProdUom().subscribe(res => {\r\n\t\t\tthis.newproductSellUOMList = res;\r\n\r\n\t\t\tenvironment.production ? '' : console.log(' prod uom list data ', this.productSellUOMList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading prod uom list ', err);\r\n\t\t});\r\n\t\tthis.product.uom = this.product.uom\r\n\t}\r\n\tgetManufacturerData() {\r\n\t\tthis.service.getManifracturList().subscribe(res => {\r\n\t\t\tthis.manifractureList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\t}\r\n\r\n\tcollapseshow() {\r\n\t\tthis.isCollapsed = !this.isCollapsed;\r\n\t}\r\n\tcollapseshow2() {\r\n\t\tthis.isCollapsed2 = !this.isCollapsed2;\r\n\t}\r\n\tcollapseshow3() {\r\n\t\tthis.isCollapsed3 = !this.isCollapsed3;\r\n\t}\r\n\tcollapseshow4() {\r\n\t\tthis.isCollapsed4 = !this.isCollapsed4;\r\n\t}\r\n\r\n\tgetDeptData() {\r\n\t\tthis.commonService.getDepartmentList(false).subscribe(res => {\r\n\t\t\tthis.deptList = res;\r\n\t\t\tenvironment.production ? '' : console.log('department data ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading department data', err);\r\n\t\t});\r\n\t\t// this.getCatData('')\r\n\t}\r\n\r\n\tgetCatData(deptid) {\r\n\t\t// this.product.cat = ''\r\n\t\t// this.product.subcat = ''\r\n\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getCategory(Number(deptid), false).subscribe(res => {\r\n\t\t\tthis.categoryList = res;\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Category data ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading category data', err);\r\n\t\t});\r\n\t}\r\n\r\n\tgetTags() {\r\n\t\tthis.commonService.getTags('product').subscribe((res: any) => {\r\n\t\t\tif (res != null) {\r\n\t\t\t\tthis.allTags = [];\r\n\t\t\t\tres.forEach(element => {\r\n\t\t\t\t\tthis.allTags.push(element.Value);\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tthis.filteredTags = this.tagCtrl.valueChanges.pipe(\r\n\t\t\t\tstartWith(null),\r\n\t\t\t\tmap((tag: string | null) => (tag ? this._filter(tag) : this.allTags.slice())),\r\n\t\t\t);\r\n\t\t\tenvironment.production ? '' : console.log('tags data ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading tags data', err);\r\n\t\t});\r\n\t}\r\n\r\n\tadd(event: MatChipInputEvent): void {\r\n\t\tconst value = (event.value || '').trim();\r\n\t\t// Add our tag\r\n\t\tif (value) {\r\n\t\t\tvar isExists = false;\r\n\t\t\tif (this.tags.length > 0) {\r\n\t\t\t\tthis.tags.forEach(element => {\r\n\t\t\t\t\tif (element == value) {\r\n\t\t\t\t\t\tisExists = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t\tif (!isExists) {\r\n\t\t\t\tthis.tags.push(value);\r\n\t\t\t}\r\n\t\t}\r\n\t\tvar isExists = false;\r\n\t\tthis.allTags.forEach(element => {\r\n\t\t\tif (element == value) {\r\n\t\t\t\tisExists = true;\r\n\t\t\t}\r\n\t\t})\r\n\t\tif (!isExists) {\r\n\t\t\tvar postTagObj = {\r\n\t\t\t\t\"description\": value,\r\n\t\t\t\t\"active\": true,\r\n\t\t\t\t\"createby\": this.userdata.email,\r\n\t\t\t\t\"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\t\"companyid\": this.userdata.companyid,\r\n\t\t\t\t\"color\": \"\",\r\n\t\t\t\t\"pg\": \"product\",\r\n\t\t\t}\r\n\t\t\tthis.loader.start();\r\n\t\t\tthis.commonService.postTags(postTagObj).subscribe((res: any) => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tif (res != null) {\r\n\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.getTags();\r\n\t\t\t\t}\r\n\t\t\t}, err => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tevent.chipInput!.clear();\r\n\t\tthis.tagCtrl.setValue(null);\r\n\t}\r\n\r\n\tsetGLAccounts() {\r\n\t\tif (this.accounts.length == 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.accounts.forEach(element => {\r\n\t\t\tif (this.product.id) {\r\n\t\t\t\tif (element.Value == this.product.coa_sales) {\r\n\t\t\t\t\tthis.coaSalesAccountSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: 'category',\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (element.Value == this.product.coa_salereturn) {\r\n\t\t\t\t\tthis.coaSalesreturnSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: 'category',\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (element.Value == this.product.coa_purchase) {\r\n\t\t\t\t\tthis.coaPurchaseAccountSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: 'category',\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (element.Value == this.product.coa_purchasereturn) {\r\n\t\t\t\t\tthis.coaPurchasereturnSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: 'category',\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (element.Value == this.product.coa_inventorystock) {\r\n\t\t\t\t\tthis.glInventoryStockSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: 'category',\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tremove(tag: string): void {\r\n\t\tconst index = this.tags.indexOf(tag);\r\n\r\n\t\tif (index >= 0) {\r\n\t\t\tthis.tags.splice(index, 1);\r\n\t\t}\r\n\t}\r\n\r\n\tselectAccount(item) {\r\n\t\tenvironment.production ? '' : console.log('selected customer', item);\r\n\t}\r\n\r\n\tonFocused($event) {\r\n\t\tthis.glaccount.clear();\r\n\t}\r\n\r\n\tselected(event: MatAutocompleteSelectedEvent): void {\r\n\t\tthis.tags.push(event.option.viewValue);\r\n\t\tthis.tagInput.nativeElement.value = '';\r\n\t\tthis.tagCtrl.setValue(null);\r\n\t}\r\n\r\n\tprivate _filter(value: string): string[] {\r\n\t\tconst filterValue = value.toLowerCase();\r\n\t\treturn this.allTags.filter(tag => tag.toLowerCase().includes(filterValue));\r\n\t}\r\n\r\n\tgetSubCatdata(cat) {\r\n\t\t// var tarrifData = this.categoryList.find(element => element.Value === cat);\r\n\t\t// this.product.commoditycode = tarrifData ? tarrifData.Value1 : null;\r\n\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getSubCategory(cat).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.subCategoryList = res;\r\n\t\t\tenvironment.production ? '' : console.log('sub category data ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Sub category data', err);\r\n\t\t});\r\n\t}\r\n\r\n\tincrement() {\r\n\t\tthis.counter += 1;\r\n\t}\r\n\r\n\tdecrement() {\r\n\t\tthis.counter -= 1;\r\n\t}\r\n\r\n\t//FileUpload\r\n\treadUrl(event: any, i) {\r\n\t\tif (event.target.files.length === 0)\r\n\t\t\treturn;\r\n\t\t//Image upload validation\r\n\t\tvar mimeType = event.target.files[0].type;\r\n\t\tif (mimeType.match(/image\\/*/) == null) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// Image upload\r\n\t\tvar reader = new FileReader();\r\n\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\treader.onload = (_event) => {\r\n\t\t\tthis.url[i].img = reader.result.toString();\r\n\t\t}\r\n\t}\r\n\r\n\ttabClick(event) {\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.buttonaction = 'view';\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (event.nextId !== '0') {\r\n\t\t\t\tthis.buttonaction = 'view';\r\n\t\t\t}\r\n\t\t\tif (event.nextId == '0') {\r\n\t\t\t\tthis.buttonaction = 'edit';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tngOnInit() {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/basicinfo/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t\tthis.updatePageTitle();\r\n\t\t});\r\n\t}\r\n\r\n\tprivate updatePageTitle(): void {\r\n\t\tthis.translatedTitle = this.translate.instant('Page_Title'); // Translate the title key\r\n\t\tthis.commonService.headerTitleItemData.next(this.translatedTitle);\r\n\t\tconsole.log(this.translatedTitle);\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tif (this.langChangeSubscription) {\r\n\t\t\tthis.langChangeSubscription.unsubscribe();\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tselectPUOM() {\r\n\t\tthis.productSellUOMList.forEach(item => {\r\n\t\t\tif (item.Value == this.product.puom) {\r\n\t\t\t\tthis.product.qtyinpack = item.Value2 ? Number(item.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\t//Sales COA\r\n\tonCOASalesItemSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_sales = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_sales);\r\n\t}\r\n\r\n\tonCOASalesItemDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_sales = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_sales);\r\n\t}\r\n\r\n\tcoaSalesreturnItemSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_salereturn = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_salereturn);\r\n\t}\r\n\r\n\tcoaSalesreturnItemDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_salereturn = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_salereturn);\r\n\t}\r\n\t//Purchase COA\r\n\tonCOAPurchaseItemSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_purchase = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_purchase);\r\n\t}\r\n\r\n\tonCOAPurchaseItemDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_purchase = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_purchase);\r\n\t}\r\n\r\n\tcoaPurchasereturnItemSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_purchasereturn = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_purchasereturn);\r\n\t}\r\n\r\n\tcoaPurchasereturnItemDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_purchasereturn = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_purchasereturn);\r\n\t}\r\n\r\n\tonInvSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_inventorystock = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_inventorystock);\r\n\t}\r\n\r\n\tonInvDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_inventorystock = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_inventorystock);\r\n\t}\r\n\r\n\tgetItemDetails(id) {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.service.getInventoryItemsDetials(id).subscribe(res => {\r\n\t\t\t\tthis.product = res;\r\n\t\t\t\t// this.product.manuafacturer = this.product.manuafacturer ? Number(this.product.manuafacturer) : '';\r\n\t\t\t\tthis.product.supplierid = this.product.supplierid ? this.product.supplierid.toString() : '';\r\n\t\t\t\tenvironment.production ? '' : console.log('items details ', res);\r\n\t\t\t\tif (this.lastaction == 'add') {\r\n\t\t\t\t\tthis.commonService.headerEditItemData.next(''); //end \r\n\t\t\t\t\tthis.product.ilc = '';\r\n\t\t\t\t\tthis.product.ailc = '';\r\n\t\t\t\t\tthis.product.milc = '';\r\n\t\t\t\t\tthis.product.pocost = 0;\r\n\t\t\t\t\tthis.product.landedcost = 0;\r\n\t\t\t\t\tthis.product.store = 0;\r\n\t\t\t\t\tthis.product.reorderpoint = 0;\r\n\t\t\t\t\tthis.product.reorderqty = 0;\r\n\t\t\t\t\tthis.product.maxqty = 0;\r\n\t\t\t\t\tthis.product.minqty = 0;\r\n\t\t\t\t\tthis.product.avgcost = 0;\r\n\t\t\t\t\tthis.product.specification = '';\r\n\t\t\t\t\tthis.product.qtyonhand = 0;\r\n\t\t\t\t\tthis.product.qtyonhold = 0;\r\n\t\t\t\t\tthis.product.qtyonorder = 0;\r\n\t\t\t\t\tthis.product.qtyavailable = 0;\r\n\t\t\t\t\tthis.product.nos = 0;\r\n\t\t\t\t\tthis.product.pic = '';\r\n\t\t\t\t\tthis.product.uid = '';\r\n\t\t\t\t\tthis.isEdit = false\r\n\t\t\t\t\tthis.product.deplete_onsale_bin = null;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvar editDataForHeader = this.product.ilc;\r\n\t\t\t\t\tthis.commonService.headerEditItemData.next(editDataForHeader); //end \r\n\t\t\t\t\tthis.product.pocost = this.product.pocost ? Number(this.product.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.landedcost = this.product.landedcost ? Number(this.product.landedcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.store = this.product.store ? Number(this.product.store).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.avgcost = this.product.avgcost ? Number(this.product.avgcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.reorderpoint = this.product.reorderpoint ? Number(this.product.reorderpoint).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.reorderqty = this.product.reorderqty ? Number(this.product.reorderqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.maxqty = this.product.maxqty ? Number(this.product.maxqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.minqty = this.product.minqty ? Number(this.product.minqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.qtyonhand = this.product.qtyonhand ? Number(this.product.qtyonhand).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.qtyonhold = this.product.qtyonhold ? Number(this.product.qtyonhold).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.qtyonorder = this.product.qtyonorder ? Number(this.product.qtyonorder).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.qtyavailable = this.product.qtyavailable ? Number(this.product.qtyavailable).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.nos = this.product.nos ? Number(this.product.nos).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.service = this.product.service ? Number(this.product.service).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.wholesale = this.product.wholesale ? Number(this.product.wholesale).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.online = this.product.online ? Number(this.product.online).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.offerprice = this.product.offerprice ? Number(this.product.offerprice).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.flatprice = this.product.flatprice ? Number(this.product.flatprice).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.landedat = this.product.landedat ? Number(this.product.landedat).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.qtyinpack = this.product.qtyinpack ? Number(this.product.qtyinpack).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.salespricepercentageminimum = this.product.salespricepercentageminimum ? Number(this.product.salespricepercentageminimum).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\tthis.product.deplete_onsale_bin = this.product.deplete_onsale_bin ? '' + this.product.deplete_onsale_bin : '';\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// localStorage.setItem(this.appname + 'editproduct', JSON.stringify(this.product));\r\n\t\t\t\tthis.service.productDetails = this.product;\r\n\t\t\t\tif (this.product.pic !== null) {\r\n\t\t\t\t\tthis.filename = this.product.pic;\r\n\t\t\t\t\tthis.product.pic = environment.DOC_URL + '/' + this.userdata.companyid + '/' + this.product.pic\r\n\t\t\t\t}\r\n\t\t\t\tif (this.product.dept) {\r\n\t\t\t\t\tthis.getCatData(this.product.dept)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.product.dept = ''\r\n\t\t\t\t}\r\n\t\t\t\tif (this.product.tags !== null) {\r\n\t\t\t\t\tthis.tags = this.product.tags.split(',');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (this.product.subcat) {\r\n\t\t\t\t\tthis.getSubCatdata(this.product.cat)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.product.subcat = ''\r\n\r\n\t\t\t\t}\r\n\t\t\t\tif (this.product.parentid == null) { this.product.parentid = '' }\r\n\t\t\t\tif (this.product.ptype == null) { this.product.ptype = '' }\r\n\t\t\t\tif (this.product.status == null) { this.product.status = '' }\r\n\t\t\t\tif (this.product.coa_purchase == null) { this.product.coa_purchase = null }\r\n\t\t\t\tif (this.product.warranty_in == null) { this.product.warranty_in = '' }\r\n\t\t\t\tif (this.product.coa_inventorystock == null) { this.product.coa_inventorystock = '' }\r\n\t\t\t\tif (this.product.uom == null) { this.product.uom = '' }\r\n\t\t\t\tif (this.product.manifracture == null) { this.product.manifracture = '' }\r\n\t\t\t\tif (this.product.supplierid == null) { this.product.supplierid = '' }\r\n\t\t\t\tif (this.product.pcurrency == null) { this.product.pcurrency = '' }\r\n\t\t\t\tif (this.product.puom == null) { this.product.puom = '' }\r\n\t\t\t\tif (this.product.discount_type == null) { this.product.discount_type = '' }\r\n\r\n\t\t\t\tenvironment.production ? '' : console.log('items details ', res);\r\n\t\t\t\tthis.setGLAccounts();\r\n\t\t\t}, err => {\r\n\t\t\t\tenvironment.production ? '' : console.log('Error : While loading items details data', err);\r\n\t\t\t})\r\n\t\t}, 500)\r\n\r\n\t}\r\n\r\n\tget f(): { [key: string]: AbstractControl } {\r\n\t\treturn this.product.controls;\r\n\t}\r\n\t//open Master Modal code\r\n\topenUOMModal() {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(AdduomComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n\t\tmodalRef.componentInstance.uom = 'uom';\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result == 'save') {\r\n\t\t\t\tthis.getProdUom();\r\n\t\t\t}\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log('umo selected ngmodel data', this.product.uom);\r\n\t\t});\r\n\t}\r\n\topenSellUOMModal() {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(AdduomComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n\t\tmodalRef.componentInstance.uom = 'uom';\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result == 'save') {\r\n\t\t\t\tthis.getProdSellUom();\r\n\t\t\t}\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log('umo selected ngmodel data', this.product.uom);\r\n\t\t});\r\n\t}\r\n\topenMasterModal() {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(MasterdataComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n\t\tmodalRef.componentInstance.manufacturer = 'manufacturer';\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tthis.getManufacturerData();\r\n\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\taddProduct(action) {\r\n\t\tif (this.product.ptype == 'service' && this.product.qtyinpack == 0 || this.product.qtyinpack < 0 || this.product.qtyinpack == undefined) {\r\n\t\t\tthis.toaster.error('Qty in pack should be greater than zero');\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tvar t_prodbinsList = [];\r\n\t\tt_prodbinsList.push({\r\n\t\t\tprodid: 0,\r\n\t\t\tactive: true,\r\n\t\t\tcompanyid: this.userdata.companyid,\r\n\t\t\tcnt: 0,\r\n\t\t\tbinid: this.userdata.default_inventory_bin_location,\r\n\t\t\tonhold: 0,\r\n\t\t\tsold: 0,\r\n\t\t\tminqty: 0,\r\n\t\t\tmaxqty: 0,\r\n\t\t\tavailableqty: 0,\r\n\t\t\tnotes: 0,\r\n\t\t\tcreateby: this.userdata.email,\r\n\t\t\tcreatedate: new Date()\r\n\t\t})\r\n\t\tvar tags = null;\r\n\t\tif (this.tags.length > 0) {\r\n\t\t\tthis.tags.forEach((t, i) => {\r\n\t\t\t\tif (tags == undefined || tags == null) {\r\n\t\t\t\t\ttags = t;\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttags += ',' + t;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t\tthis.product.tags = tags;\r\n\t\tif (this.product.cat) {\r\n\t\t\tthis.product.cat = parseFloat(this.product.cat);\r\n\t\t}\r\n\t\tif (this.product.subcat) {\r\n\t\t\tthis.product.subcat = parseFloat(this.product.subcat);\r\n\t\t}\r\n\t\tif (this.product.dept) {\r\n\t\t\tthis.product.dept = parseFloat(this.product.dept);\r\n\t\t}\r\n\t\tif (this.product.supplierid) {\r\n\t\t\tthis.product.supplierid = parseFloat(this.product.supplierid);\r\n\t\t}\r\n\t\tif (this.product.parentid) {\r\n\t\t\tthis.product.parentid = parseFloat(this.product.parentid);\r\n\t\t}\r\n\t\tif (this.product.coa_purchase) {\r\n\t\t\tthis.product.coa_purchase = parseFloat(this.product.coa_purchase);\r\n\t\t}\r\n\t\tif (this.lastaction != 'add') {\r\n\t\t\tthis.product.updateby = this.userdata.email;\r\n\t\t\tthis.product.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.product.id = null;\r\n\t\t\tthis.product.companyid = this.userdata.companyid;\r\n\t\t\tthis.product.createby = this.userdata.email;\r\n\t\t\tthis.product.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t\tthis.product.t_prodpictures = this.filename ? [{ \"filename\": this.filename ? this.filename : '', \"mainpic\": true, \"companyid\": this.userdata.companyid, \"active\": true, \"createby\": this.userdata.email, \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat) }] : []\r\n\t\t}\r\n\t\tthis.product.salestartdate = this.product.salestartdate ? this.datepipe.transform(new Date(this.product.salestartdate), this.userdata.postdateformat) : null;\r\n\t\tthis.product.mfgdate = this.product.mfgdate ? this.datepipe.transform(new Date(this.product.mfgdate), this.userdata.postdateformat) : null;\r\n\t\tthis.product.pckgdate = this.product.pckgdate ? this.datepipe.transform(new Date(this.product.pckgdate), this.userdata.postdateformat) : null;\r\n\t\tthis.product.offerstartdate = this.product.offerstartdate ? this.datepipe.transform(new Date(this.product.offerstartdate), this.userdata.postdateformat) : null;\r\n\t\tthis.product.offerenddate = this.product.offerenddate ? this.datepipe.transform(new Date(this.product.offerenddate), this.userdata.postdateformat) : null;\r\n\t\tthis.loader.start();\r\n\t\tthis.product.pic = this.filename ? this.filename : this.product.pic;\r\n\t\tthis.service.postProduct(this.product).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tif (action == 'saveclose') {\r\n\t\t\t\t\tthis.product = {};\r\n\t\t\t\t\tthis.router.navigate(['/products']);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.product = {};\r\n\t\t\t\t\tthis.productid = res.refid;\r\n\t\t\t\t\tif (action == 'saveonly') {\r\n\t\t\t\t\t\tthis.lastaction = 'edit';\r\n\t\t\t\t\t\tthis.isEdit = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.getItemDetails(Number(this.productid))\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('post product response ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\r\n\t}\r\n\tclicked(action) {\r\n\t\tif (action == 'itemcodelist') {\r\n\t\t\tvar modalRef = null;\r\n\t\t\tmodalRef = this.modalService.open(ItemcodelistComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n\t\t\tmodalRef.result.then((result) => {\r\n\t\t\t\tif (result.code != null) {\r\n\t\t\t\t\tthis.product.commoditycode = result.code.code;\r\n\t\t\t\t\t// this.item.rate = result.code.rate;\r\n\t\t\t\t\t// this.item.Description = result.code.description;\r\n\t\t\t\t}\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t}).catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tupdateCalcs() {\r\n\t\tvar a = moment(this.product.offerstartdate, \"YYYY-MM-DD\");\r\n\t\tvar b = moment(this.product.offerenddate, \"YYYY-MM-DD\");\r\n\t\tthis.totalLeaves = moment.duration(b.diff(a)).asDays();\r\n\t\tif (this.totalLeaves) {\r\n\t\t\tthis.checkDate();\r\n\t\t}\r\n\t}\r\n\tcheckDate() {\r\n\t\tvar startDate = this.datepipe.transform(this.product.offerstartdate, ('dd/MM/yyyy'));\r\n\t\tvar endDate = this.datepipe.transform(this.product.offerenddate, ('dd/MM/yyyy'));\r\n\t\tvar regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n\t\tif (parseInt(endDate.replace(regExp, \"$3$2$1\")) > parseInt(startDate.replace(regExp, \"$3$2$1\"))) {\r\n\t\t\tenvironment.production ? '' : console.log('start date is greater than end date');\r\n\t\t} else {\r\n\t\t\tthis.product.offerenddate = null\r\n\t\t\tthis.clearDateField.nativeElement.value = '';\r\n\t\t\tthis.totalLeaves = 0;\r\n\t\t\tthis.toastr.Error(\"End date should be greater than start date\")\r\n\t\t\treturn false\r\n\t\t}\r\n\t}\r\n\tupdateCalcs1() {\r\n\t\tvar a = moment(this.product.mfgdate, \"YYYY-MM-DD\");\r\n\t\tvar b = moment(this.product.pckgdate, \"YYYY-MM-DD\");\r\n\t\tthis.totalLeaves = moment.duration(b.diff(a)).asDays();\r\n\t\tif (this.totalLeaves) {\r\n\t\t\tthis.checkDate1()\r\n\r\n\t\t}\r\n\r\n\t}\r\n\tcheckDate1() {\r\n\t\tvar startDate1 = this.datepipe.transform(this.product.mfgdate, ('dd/MM/yyyy'));\r\n\t\tvar endDate1 = this.datepipe.transform(this.product.pckgdate, ('dd/MM/yyyy'));\r\n\t\tvar regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n\t\tif (parseInt(endDate1.replace(regExp, \"$3$2$1\")) > parseInt(startDate1.replace(regExp, \"$3$2$1\"))) {\r\n\t\t\tenvironment.production ? '' : console.log('start date is greater than end date');\r\n\t\t} else {\r\n\t\t\tthis.product.pckgdate = null\r\n\t\t\tthis.clearDateField1.nativeElement.value = '';\r\n\r\n\t\t\tthis.totalLeaves = 0;\r\n\t\t\tthis.toastr.Error(\"End date should be greater than start date\")\r\n\t\t\treturn false\r\n\t\t}\r\n\t}\r\n\tvalidateIlc() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.validateIlc(this.product.ilc).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\tif (this.lastaction == 'add') {\r\n\t\t\t\t\t\tthis.product.ilc = '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading discountTypeList data', err);\r\n\t\t});\r\n\r\n\t}\r\n\tgetProductTrackingNotes() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getTrackingNotes(this.productid, 'product').subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.tracking = res;\r\n\t\t\tenvironment.production ? '' : console.log('tracking notes data ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading tracking notes data ', err);\r\n\t\t});\r\n\t}\r\n\taddTrackingNotes() {\r\n\t\tvar modalRef = this.modalService.open(TrackingComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' });\r\n\t\tmodalRef.componentInstance.params = { id: this.product.id, type: 'product', refno: this.product.ilc, status: this.product.status };\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\tthis.getProductTrackingNotes();\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\tinitializeFileUploader() {\r\n\t\tthis.uploader = new FileUploader({\r\n\t\t\tauthTokenHeader: 'authorization',\r\n\t\t\tauthToken: 'Bearer ' + this.userdata.token,\r\n\t\t\turl: environment.API_URL + 'api/Documents/UploadProductPictures',\r\n\t\t\tmethod: 'POST',\r\n\t\t\tremoveAfterUpload: true,\r\n\t\t\tqueueLimit: 100\r\n\t\t})\r\n\t\tthis.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n\t\t\tform.append('companyid', this.userdata.companyid);\r\n\t\t\tform.append('createby', this.userdata.email);\r\n\t\t\tform.append('refno', this.productData.id ? this.productData.id : null);\r\n\t\t\tform.append('dtype', 'item-files');\r\n\t\t};\r\n\t\tthis.response = '';\r\n\t\tthis.uploader.response.subscribe(res => {\r\n\t\t\tenvironment.production ? '' : console.log('res ' + res);\r\n\t\t\tthis.response = res\r\n\t\t});\r\n\t\tthis.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n\t}\r\n\r\n\r\n\tselectedFileOnChanged(event: any) {\r\n\t\tenvironment.production ? '' : console.log(event.target.value);\r\n\t\t// var filename = event.target.value.Replace('C:\\'fakepath\\','')\r\n\t\tthis.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n\t\tthis.product.pic = this.filename;\r\n\t\tif (!event.target.files[0] || event.target.files[0].length == 0) {\r\n\t\t\tthis.msg = 'You must select an image';\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar mimeType = event.target.files[0].type;\r\n\t\tif (mimeType.match(/image\\/*/) == null) {\r\n\t\t\tthis.msg = \"Only images are supported\";\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar reader = new FileReader();\r\n\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\treader.onload = (_event) => {\r\n\t\t\tthis.msg = \"\";\r\n\t\t\tthis.product.pic = reader.result;\r\n\t\t}\r\n\t\tthis.uploadFile();\r\n\t}\r\n\tuploadFile() {\r\n\t\tthis.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n\t\t\tif (status == 200) {\r\n\t\t\t\tlet tempRes = JSON.parse(response);\r\n\t\t\t} else {\r\n\t\t\t\t// this.toaster.Success('File uploaded');\r\n\t\t\t\tthis.initializeFileUploader();\r\n\t\t\t}\r\n\t\t};\r\n\t\tthis.uploader.queue[0].upload();\r\n\t}\r\n\topenMultipleUom(content) {\r\n\t\tthis.getProductMultipleUOM();\r\n\t\tthis.sellUOM = null;\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' }).result.then((result) => {\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n\tpostMultipleUOM() {\r\n\t\tvar postObj = {\r\n\t\t\t\"id\": null,\r\n\t\t\t\"prodid\": this.product.id,\r\n\t\t\t\"uom\": this.sellUOM,\r\n\t\t\t\"active\": true,\r\n\t\t\t\"companyid\": this.userdata.companyid,\r\n\t\t\t\"createby\": this.userdata.email,\r\n\t\t\t\"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\"updateby\": null,\r\n\t\t\t\"updatedate\": null\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postProdSaleUOM(postObj).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t}\r\n\t\t\t\tthis.sellUOM = null;\r\n\t\t\t\tthis.prodSellUOMList = res.data;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\tgetProductMultipleUOM() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getProdSaleUOM(this.product.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.prodSellUOMList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\tdeleteLonInterestRate(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteProdSaleUOM(id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getProductMultipleUOM();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t})\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n {{ 'ExtraInfo_Icon.CreatedOn_Label' | translate }} : {{product.createdate}} {{\r\n 'ExtraInfo_Icon.By_label' | translate }}\r\n {{product.createby}}\r\n {{ 'ExtraInfo_Icon.UpdatedOn_Label' | translate }} : {{product.updatedate}} {{\r\n 'ExtraInfo_Icon.By_label' | translate }}\r\n {{product.updateby}}\r\n {{ 'ExtraInfo_Icon.DeletedOn_Label' | translate }} : {{product.deletedate}} {{\r\n 'ExtraInfo_Icon.By_label' | translate }}\r\n {{product.deleteby}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
UID: {{product.uid}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{ 'Form_Inputs.ProductType_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{ 'Form_Inputs.LookupCode_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{ 'Form_Inputs.Description_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{ 'Form_Inputs.Department_Required' | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
{{ 'Form_Inputs.Status_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{ 'Form_Inputs.PurchaseConfig_Section' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'Form_Inputs.SalesConfig_Section' |\r\n translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
{{ 'Form_Inputs.SellUOM_Required' | translate }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{\r\n 'Form_Inputs.ProductionConfig_Section'\r\n | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ 'Form_Inputs.OptionalDetails_Section' |\r\n translate }}\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
Product Sell UOM\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
\r\n
\r\n Save\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Actions\r\n \r\n UOM \r\n \r\n ID\r\n \r\n CreateBy \r\n \r\n CreateDate \r\n
\r\n \r\n {{item.uom}}{{item.id}}{{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\n\r\n@Component({\r\n selector: 'app-addons',\r\n templateUrl: './addons.component.html',\r\n styleUrls: ['./addons.component.scss']\r\n})\r\nexport class AddonsComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = [];\r\n modalRef:any = null;\r\n product: any;\r\n timingList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n searchText:any;\r\n addonData: any = {\r\n \"id\": null,\r\n \"createby\": '',\r\n \"createdate\": '',\r\n \"updateby\": '',\r\n \"updatedate\": '',\r\n \"active\": true,\r\n \"approved\": true,\r\n \"prodid\": '',\r\n \"maxallowed\": '',\r\n \"minallowed\": '',\r\n \"price\": ''\r\n };\r\n response: any;\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n isview: boolean;\r\n addonFilterData: any = {\r\n supplierid: '',\r\n dept: '',\r\n cat: '',\r\n subcat: '',\r\n\r\n }\r\n\r\n deptList: any = []\r\n supplierList: any = []\r\n catList: any = []\r\n subCatlist: any = []\r\n substituteSearchItemList: any = []\r\n constructor(private modalService: NgbModal,\r\n private datepipe: DatePipe,\r\n private route: ActivatedRoute,\r\n private toastr: NotificationService,\r\n private maincomponent: AddProductComponent,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n var isservice = false;\r\n this.service.getParentCat(isservice).subscribe(res => {\r\n this.deptList = res;\r\n environment.production ? '' : console.log('dept list list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading dept list ', err);\r\n });\r\n\r\n\r\n this.service.getProductSupplier().subscribe(res => {\r\n this.supplierList = res;\r\n environment.production ? '' : console.log('supplierList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading supplierList data', err);\r\n });\r\n this.getAddonList();\r\n }\r\n\r\n getCatUsingDept() {\r\n this.service.getProductCategory(this.addonFilterData.dept, false).subscribe(res => {\r\n this.catList = res;\r\n environment.production ? '' : console.log('catList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading catList data', err);\r\n });\r\n }\r\n getSubCatUsingCategory() {\r\n this.commonService.getSubCategory(this.addonFilterData.cat).subscribe(res => {\r\n this.subCatlist = res;\r\n environment.production ? '' : console.log('SubcatList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading catList data', err);\r\n });\r\n }\r\n getSearSubstitudeItems() {\r\n this.loader.start();\r\n this.service.getSubtitudeCatlog(this.addonFilterData.supplierid, this.addonFilterData.dept, this.addonFilterData.cat, this.addonFilterData.subcat, this.addonFilterData.searchtxt).subscribe(res => {\r\n this.loader.stop();\r\n this.substituteSearchItemList = res;\r\n this.substituteSearchItemList.forEach(element => {\r\n element.cost = Number(element.cost).toFixed(this.userdata.decimals_allowed) ? Number(element.cost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.landedcost = Number(element.landedcost).toFixed(this.userdata.decimals_allowed) ? Number(element.landedcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.price = Number(element.price).toFixed(this.userdata.decimals_allowed) ? Number(element.price).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.pocost = Number(element.pocost).toFixed(this.userdata.decimals_allowed) ? Number(element.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n getAddonList() {\r\n this.loader.start();\r\n this.service.getAddonList(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n console.log(res)\r\n this.timingList = res;\r\n this.timingList.forEach(rev => {\r\n rev.active = rev.active ? 'Yes' : 'No';\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n open(content, data, action) {\r\n console.log('log', action);\r\n\r\n if (action == 'view') {\r\n this.isview = true\r\n } else if (action == 'edit') {\r\n this.isview = false\r\n }\r\n if (data.id) {\r\n this.addonData = {\r\n active: data.active,\r\n approved: data.approved,\r\n createby: data.createby,\r\n createdate: data.createdate,\r\n description: data.description,\r\n id: data.id,\r\n prodid: data.prodid,\r\n rating: data.rating,\r\n updateby: data.updateby,\r\n updatedate: data.updatedate\r\n };\r\n } else {\r\n this.addonData = {\r\n active: true,\r\n maxallowed: 0,\r\n minallowed: 0,\r\n price: 0\r\n };\r\n this.addonFilterData = {\r\n supplierid: '',\r\n dept: '',\r\n cat: '',\r\n subcat: '',\r\n }\r\n\r\n }\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n closemodal() {\r\n this.modalService.dismissAll()\r\n }\r\n postProductAddons() {\r\n this.addonData.companyid = this.userdata.companyid;\r\n if (this.addonData.id != undefined && this.addonData.id != null) {\r\n this.addonData.createby = this.addonData.createby;\r\n this.addonData.createdate = this.datepipe.transform(this.addonData.createdate, this.userdata.postdatetimeformat);\r\n this.addonData.updateby = this.userdata.email;\r\n this.addonData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n else {\r\n this.addonData.prodid = this.product.id;\r\n this.addonData.createby = this.userdata.email;\r\n this.addonData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.addonData.active = true;\r\n\r\n environment.production ? '' : console.log('post addon data', this.addonData);\r\n this.loader.start();\r\n this.service.postAddon(this.addonData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.getAddonList();\r\n\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n }\r\n deleteAddon(item) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteAddon(item.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getAddonList();\r\n this.modalService.dismissAll();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading delete Currency', err);\r\n });\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n addValue(details_content, item) {\r\n this.addonData.main_prodid = item.id;\r\n this.modalRef = this.modalService.open(details_content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' });\r\n this.modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n\r\n closeModal2() {\r\n this.modalRef.close()\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • Add Addons
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
ActionsILCDescriptionPriceMin ValueMin ValueActive\r\n CreateBy\r\n CreateDate\r\n UpdateBy\r\n UpdateDate
\r\n
\r\n \r\n
    \r\n \r\n
  • Delete
  • \r\n
\r\n
\r\n
{{item.ilc}}{{item.description}}{{item.price}}{{item.minallowed}}{{item.maxallowed}}{{item.active}}{{item.createby}}{{item.createdate | date : userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate | date : userdata.displaydatetimeformat}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
Products
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ActionILCDescriptionPo CostLanded CostDonotorderMilcPicPuomQtyQtyavailableQtyonhandQtyonorderReorderqtySupplierTpcode
\r\n \r\n {{item.ilc}}{{item.desc}}{{item.pocost}}{{item.landedcost}}{{item.donotorder}}{{item.milc}}{{item.pic}}{{item.puom}}{{item.qty}}{{item.qtyavailable}}{{item.qtyonhand}}{{item.qtyonorder}}{{item.reorderqty}}{{item.supplier}}{{item.tpcode}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
Add Detials
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DatePipe } from '@angular/common';\r\nimport Swal from 'sweetalert2';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { PrintlabelComponent } from 'src/app/components/modal/printlabel/printlabel.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n\tselector: 'app-alias',\r\n\ttemplateUrl: './alias.component.html',\r\n\tstyleUrls: ['./alias.component.scss']\r\n})\r\nexport class AliasComponent implements OnInit {\r\n\tpublic closeResult: string;\r\n\tpublic categories = []\r\n\tproduct: any;\r\n\taliasList: any = [];\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\tsearchText:any;\r\n\taliasData: any = {\r\n\t\t\"id\": null,\r\n\t\t\"prodid\": '',\r\n\t\t\"alias\": \"\",\r\n\t\t\"active\": true,\r\n\t\t\"companyid\": '',\r\n\t\t\"createby\": \"\",\r\n\t\t\"createdate\": \"\",\r\n\t\t\"updateby\": \"\",\r\n\t\t\"updatedate\": \"\",\r\n\t}\r\n\tisView: boolean = false;\r\n\tresponse: any;\r\n\tlastaction: any;\r\n\tfieldsetDisabled = false;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: InventoryServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.product = maincomponent.product;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t\tthis.getProductAlias();\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/alias/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tgetProductAlias() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getProductAlias(this.product.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.aliasList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tmodalFunct(content) {\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t\tthis.getProductAlias();\r\n\t\t}, (reason) => {\r\n\t\t\t//this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t});\r\n\t}\r\n\topen(content, data, action) {\r\n\t\tif (data) {\r\n\t\t\tthis.aliasData = {\r\n\t\t\t\tactive: data.active,\r\n\t\t\t\talias: data.alias,\r\n\t\t\t\tcompanyid: data.companyid,\r\n\t\t\t\tid: data.id,\r\n\t\t\t\tprodid: data.prodid\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tthis.aliasData = {\r\n\t\t\t\tactive: true\r\n\t\t\t};\r\n\t\t}\r\n\t\tthis.isView = false;\r\n\t\tthis.modalFunct(content);\r\n\t\tif (action == 'view') {\r\n\t\t\tthis.isView = true;\r\n\t\t\tthis.modalFunct(content);\r\n\t\t}\r\n\t\tif (action == 'edit') {\r\n\t\t\tthis.isView = false;\r\n\t\t\tthis.modalFunct(content);\r\n\t\t}\r\n\t}\r\n\tprivate getDismissReason(reason: any): string {\r\n\t\tif (reason === ModalDismissReasons.ESC) {\r\n\t\t\treturn 'by pressing ESC';\r\n\t\t} else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n\t\t\treturn 'by clicking on a backdrop';\r\n\t\t} else {\r\n\t\t\treturn `with: ${reason}`;\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr('alias');\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.aliasList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\tpostAlias() {\r\n\t\tthis.aliasData.companyid = this.userdata.companyid;\r\n\t\tthis.aliasData.prodid = this.product.id;\r\n\t\tif (this.aliasData.id) {\r\n\t\t\tthis.aliasData.createby = this.aliasData.createby;\r\n\t\t\tthis.aliasData.createdate = this.datepipe.transform(this.aliasData.createdate, this.userdata.postdatetimeformat);\r\n\t\t\tthis.aliasData.updateby = this.userdata.email;\r\n\t\t\tthis.aliasData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.aliasData.createby = this.userdata.email;\r\n\t\t\tthis.aliasData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tenvironment.production ? '' : console.log('post alias datais', this.aliasData);\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postItemAlias(this.aliasData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tthis.aliasList = res.data;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\r\n\t}\r\n\tprint(item) {\r\n\t\tvar modalRef = this.modalService.open(PrintlabelComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n\t\tmodalRef.componentInstance.id = item.id;\r\n\t\tmodalRef.componentInstance.type = \"pa\";\r\n\t\tmodalRef.componentInstance.name = \"1\";\r\n\t\tmodalRef.componentInstance.desc = \"1\";\r\n\t\tmodalRef.componentInstance.alt = \"1\";\r\n\t\t// modalRef.componentInstance.name = 'printpo';\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\tdelete(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteItemAlias(id, this.product.id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t\tthis.getProductAlias();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading delete action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Alias_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions \r\n {{ 'Table_Columns.Alias_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Active_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateDate_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateDate_Column' | translate }} \r\n
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Edit_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Delete_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.PrintBarcode_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.alias}}{{item.active}} {{item.createby}}{{item.createdate |\r\n\t\t\t\t\t\t\tdate:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n\t\t\t\t\t\t\tdate:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
{{ 'Modal_Title' | translate }}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.Alias_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\n\r\n@Component({\r\n selector: 'app-auditlogs',\r\n templateUrl: './auditlogs.component.html',\r\n styleUrls: ['./auditlogs.component.scss']\r\n})\r\nexport class AuditlogsComponent implements OnInit {\r\n userdata: any;\r\n product: any;\r\n appname: any = environment.APP_NAME;\r\n auditLogs: any = []\r\n constructor(private maincomponent: AddProductComponent,\r\n private loader: NgxUiLoaderService,\r\n private commonservice: CommonServices,\r\n private service: InventoryServices) {\r\n // this.product = JSON.parse(localStorage.getItem(this.appname + 'editproduct'));\r\n this.product = this.maincomponent.product\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n this.getProductAuditLogs();\r\n }\r\n\r\n getProductAuditLogs() {\r\n this.loader.start();\r\n this.commonservice.getAuditLogs(this.product.id, 'product').subscribe(res => {\r\n this.loader.stop();\r\n this.auditLogs = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n}\r\n","
    \r\n
  • \r\n
    {{n.logdate | date : userdata.date_format + ' HH:mm'}}
    \r\n

    Module: {{n.module}}

    \r\n

    {{n.refno}} : {{n.notes}}

    \r\n {{n.email }}\r\n
  • \r\n
\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'binLocatFilter',\r\n pure: false\r\n})\r\nexport class BinLocationFilterPipe implements PipeTransform {\r\n\r\n transform(items: any[], term): any {\r\n if (items?.length === 0 || term == '') {\r\n return items;\r\n }\r\n const data = [];\r\n for(const item of items) {\r\n if( item['binid']?.toLowerCase().includes(term.toLowerCase()) \r\n || item.description?.toLowerCase().includes(term.toLowerCase()) \r\n ) {\r\n data.push(item);\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport Swal from 'sweetalert2';\r\nimport { I } from '@angular/cdk/keycodes';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { AdjustQtyComponent } from '../../modal/adjust-qty/adjust-qty.component';\r\nimport { ProductBinComponent } from '../../modal/product-bin/product-bin.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n\tselector: 'app-binlocations',\r\n\ttemplateUrl: './binlocations.component.html',\r\n\tstyleUrls: ['./binlocations.component.scss']\r\n})\r\nexport class BinlocationsComponent implements OnInit {\r\n\tpublic closeResult: string;\r\n\tpublic categories = []\r\n\tbin\r\n\tsearchText: string = '';\r\n\tbins: any;\r\n\ttotalOnhandQty: any = 0\r\n\ttotalMax: any = 0;\r\n\ttotalMin: any = 0;\r\n\ttotalSold: any = 0;\r\n\ttotalAvail: any = 0;\r\n\ttotalOnHold: any = 0;\r\n\tbinLocationList: any = [];\r\n\tbinData: any = {\r\n\t\t\"active\": false,\r\n\t\t\"companyid\": '',\r\n\t\t\"cnt\": 0,\r\n\t\t\"binid\": '',\r\n\t\t\"onhold\": 0,\r\n\t\t\"sold\": 0,\r\n\t\t\"minqty\": 0,\r\n\t\t\"maxqty\": 0,\r\n\t\t\"availableqty\": 0,\r\n\t\t\"reorderpoint\": 0,\r\n\t\t'reorderqty': 0,\r\n\t\t\"notes\": '',\r\n\t\t\"createby\": '',\r\n\t\t\"createdate\": '',\r\n\t\t\"updateby\": '',\r\n\t\t\"updatedate\": '',\r\n\t}\r\n\tbinList: any = [];\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\tisView: boolean = false;\r\n\tresponse: any;\r\n\tlastaction: any;\r\n\tfieldsetDisabled = false;\r\n\tproduct: any;\r\n\tforsale = true;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate service: InventoryServices,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate commonService: AppServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\tthis.product = maincomponent.product;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t\tthis.getProductBins();\r\n\t\t\r\n\r\n\t}\r\n\tgetProductBins() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getProductBins(this.product.id, this.forsale ? 1 : 0).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.binLocationList = res;\r\n\t\t\tthis.setProductBins();\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\tsetProductBins() {\r\n\t\tthis.totalOnhandQty = 0;\r\n\t\tthis.totalMax = 0;\r\n\t\tthis.totalMin = 0;\r\n\t\tthis.totalAvail = 0;\r\n\t\t// this.totalSold = 0\r\n\t\tthis.totalOnHold = 0\r\n\t\tthis.binLocationList.forEach(element => {\r\n\t\t\telement.cnt = element.cnt ? element.cnt : 0\r\n\t\t\telement.maxqty = element.maxqty ? element.maxqty : 0;\r\n\t\t\telement.minqty = element.minqty ? element.minqty : 0;\r\n\t\t\telement.availableqty = element.availableqty ? element.availableqty : 0;\r\n\t\t\telement.sold = element.sold ? element.sold : 0;\r\n\t\t\telement.onhold = element.onhold ? element.onhold : 0;\r\n\t\t\tif (element.active == true) {\r\n\t\t\t\tthis.totalOnhandQty += element.cnt;\r\n\t\t\t\tthis.totalMax += element.maxqty;\r\n\t\t\t\tthis.totalMin += element.minqty;\r\n\t\t\t\tthis.totalAvail += element.availableqty;\r\n\t\t\t\t// this.totalSold += element.sold;\r\n\t\t\t\tthis.totalOnHold += element.onhold;\r\n\t\t\t}\r\n\t\t\telement.binid = element.binid.toString();\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/binlocations/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\tdeleteProdBin(item) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Do you want to delete bin location?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tif (item.id == undefined || item.id == null) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.service.deleteProdBin(item.id).subscribe((res: any) => {\r\n\t\t\t\t\tenvironment.production ? '' : console.log('delete response ', res);\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getProductBins();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading get purchase req action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tchangeForsale(item) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to update bin forsale?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.getToggleBinForSale(item.binid).subscribe((res: any) => {\r\n\t\t\t\t\tenvironment.production ? '' : console.log('delete response ', res);\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getProductBins();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading get purchase req action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tchangeIncludeOnhand(item) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to update bin include onhand?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.getBinIncludeOnHand(item.binid).subscribe((res: any) => {\r\n\t\t\t\t\tenvironment.production ? '' : console.log('delete response ', res);\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getProductBins();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading get purchase req action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tadjustQty(item) {\r\n\t\tvar modalRef = this.modalService.open(AdjustQtyComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n\t\tmodalRef.componentInstance.fromParent = { id: this.maincomponent.product.id, frombinlocation: item.binid };\r\n\t\tenvironment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result == 'save') {\r\n\t\t\t\tthis.getProductBins();\r\n\t\t\t}\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n\topenProductBin(id, action) {\r\n\t\tvar modalRef = this.modalService.open(ProductBinComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n\t\tmodalRef.componentInstance.params = id ? { id: id, action: action } : { prodid: this.product.id, action: action };\r\n\t\tenvironment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result == 'save') {\r\n\t\t\t\tthis.getProductBins();\r\n\t\t\t}\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n\tprivate getDismissReason(reason: any): string {\r\n\t\tif (reason === ModalDismissReasons.ESC) {\r\n\t\t\treturn 'by pressing ESC';\r\n\t\t} else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n\t\t\treturn 'by clicking on a backdrop';\r\n\t\t} else {\r\n\t\t\treturn `with: ${reason}`;\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr('description');\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.binLocationList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.ToolTip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions\r\n {{ 'Table_Columns.Code_Column' | translate }} \r\n \r\n {{ 'Table_Columns.BinID_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Name_Column' | translate }} \r\n \r\n {{ 'Table_Columns.OnHand_Column' | translate }} \r\n \r\n {{ 'Table_Columns.OnHold_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Available_Column' | translate }} \r\n \r\n {{ 'Table_Columns.MinQty_Column' | translate }} \r\n \r\n {{ 'Table_Columns.MaxQty_Column' | translate }} \r\n \r\n {{ 'Table_Columns.ReorderPoint_Column' | translate }} \r\n \r\n {{ 'Table_Columns.ReorderQty_Column' | translate }} \r\n \r\n {{ 'Table_Columns.IncludeOnhand_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Forsale_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Notes_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Active_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreatedBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreatedDate_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdatedBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdatedDate_Column' | translate }} \r\n
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' |\r\n translate }}\r\n
  • {{ 'Table_Actions.Edit_Action' | translate }}\r\n
  • \r\n
  • {{ 'Table_Actions.Adjust_Action' | translate\r\n }}
  • \r\n
  • {{ 'Table_Actions.UpdateForSale_Action' |\r\n translate }}
  • \r\n
  • {{\r\n 'Table_Actions.Delete_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.code}}{{item.binid}}{{item.description}}{{item.cnt}}{{item.onhold}}{{item.availableqty}}{{item.minqty}}{{item.maxqty}}{{item.reorderpoint}}{{item.reorderqty}}\r\n \r\n \r\n \r\n {{item.active}}{{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}
\r\n Total\r\n \r\n {{totalOnhandQty}}\r\n \r\n {{totalOnHold}}\r\n \r\n {{totalAvail}}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ModalDismissReasons, NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { reportServices } from 'src/app/components/reports/reports.service';\r\nimport { settingServices } from 'src/app/components/settings/setting.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n\tselector: 'app-compatibility',\r\n\ttemplateUrl: './compatibility.component.html',\r\n\tstyleUrls: ['./compatibility.component.scss']\r\n})\r\nexport class CompatibilityComponent implements OnInit {\r\n\tpublic closeResult: string;\r\n\tpublic categories = []\r\n\tproduct: any;\r\n\tdetailsList: any = [];\r\n\tuserdata: any;\r\n\tsearchText:any;\r\n\tappname = environment.APP_NAME;\r\n\tdetailsData: any = {\r\n\t\t\"id\": null,\r\n\t\t\"prodid\": '',\r\n\t\t\"field_name\": \"\",\r\n\t\t\"field_value\": \"\",\r\n\t\t\"companyid\": '',\r\n\t\t\"createby\": \"\",\r\n\t\t\"createdate\": \"\",\r\n\t\t\"updateby\": \"\",\r\n\t\t\"updatedate\": \"\",\r\n\t}\r\n\tisView: boolean = false;\r\n\tresponse: any;\r\n\tlastaction: any;\r\n\tfieldsetDisabled = false;\r\n\tsearchtxt: any = '';\r\n\tdeviceList: any = [];\r\n\tfilter: any = {\r\n\t\tname: '',\r\n\t\tilc: '',\r\n\t\ttype: '',\r\n\t\tactive: '',\r\n\t}\r\n\tcompanyDevices: any = [];\r\n\tdeviceTypes: any = [];\r\n\tmaincheckbox: any = false;\r\n\tisSaved = false;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate settingService: settingServices,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate reportService: reportServices,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: InventoryServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.product = maincomponent.product;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t\tthis.getProductCompatibility();\r\n\r\n\t\tthis.commonService.getDeviceTypeList('').subscribe(res => {\r\n\t\t\tthis.deviceTypes = res;\r\n\t\t\tthis.loader.stop();\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/compatibility/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tgetProductCompatibility() {\r\n\t\tthis.loader.start();\r\n\t\tthis.reportService.getItemCompatibility(this.product.id, this.searchtxt).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.deviceList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n\tgetCompanyDevices() {\r\n\t\tthis.loader.start();\r\n\t\tthis.settingService.getCompanyDevice(this.filter.name, this.filter.ilc, this.filter.type, this.filter.active).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.companyDevices = res;\r\n\t\t\tthis.companyDevices.forEach(device => {\r\n\t\t\t\tdevice.isactive = device.active ? 'Yes' : 'No';\r\n\t\t\t})\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading customer devices data', err);\r\n\t\t});\r\n\t}\r\n\r\n\topen(content) {\r\n\t\tthis.filter = {\r\n\t\t\tname: '',\r\n\t\t\tilc: '',\r\n\t\t\ttype: '',\r\n\t\t\tactive: '',\r\n\t\t}\r\n\t\tthis.companyDevices = [];\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t\tif (this.isSaved) {\r\n\t\t\t\tthis.getProductCompatibility();\r\n\t\t\t}\r\n\t\t}, (reason) => {\r\n\t\t\t//this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t});\r\n\t}\r\n\tprivate getDismissReason(reason: any): string {\r\n\t\tif (reason === ModalDismissReasons.ESC) {\r\n\t\t\treturn 'by pressing ESC';\r\n\t\t} else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n\t\t\treturn 'by clicking on a backdrop';\r\n\t\t} else {\r\n\t\t\treturn `with: ${reason}`;\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event,column) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(column);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.deviceList.sort((a, b) => {\r\n\t\t let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\t \r\n\t if (!valueA && !valueB) {\r\n\t\treturn 0; \r\n\t }\r\n\t if (!valueA) {\r\n\t\treturn -this.sortDir; \r\n\t }\r\n\t if (!valueB) {\r\n\t\treturn this.sortDir; \r\n\t }\r\n\t \r\n\t if (valueA > valueB) {\r\n\t\treturn this.sortDir;\r\n\t }\r\n\t if (valueA < valueB) {\r\n\t\treturn -this.sortDir;\r\n\t }\r\n\t return 0;\r\n\t });\r\n\t }\r\n\t \r\n\t //end\r\n\t \r\n\t//#endregion Sorting Table Header\r\n\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t\tif (this.isSaved) {\r\n\t\t\tthis.getProductCompatibility();\r\n\t\t}\r\n\t}\r\n\tpostDevice(device) {\r\n\t\tif (!device.checked) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar postOb: any = {\r\n\t\t\t\"id\": null,\r\n\t\t\t\"prodid\": this.product.id,\r\n\t\t\t\"ilc\": this.product.ilc,\r\n\t\t\t\"description\": this.product.description,\r\n\t\t\t\"createby\": null,\r\n\t\t\t\"createdate\": null,\r\n\t\t\t\"deviceid\": null\r\n\t\t}\r\n\t\tthis.detailsData.companyid = this.userdata.companyid;\r\n\t\tthis.detailsData.prodid = this.product.id;\r\n\t\tif (this.detailsData.id) {\r\n\t\t\tthis.detailsData.createby = this.detailsData.createby;\r\n\t\t\tthis.detailsData.createdate = this.datepipe.transform(this.detailsData.createdate, this.userdata.postdatetimeformat);\r\n\t\t\tthis.detailsData.updateby = this.userdata.email;\r\n\t\t\tthis.detailsData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.detailsData.createby = this.userdata.email;\r\n\t\t\tthis.detailsData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tpostOb.companyid = this.userdata.companyid;\r\n\t\tpostOb.createby = this.userdata.email;\r\n\t\tpostOb.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\tpostOb.deviceid = device.id\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.postDeviceMaterial(postOb).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.isSaved = true;\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.toastr.Error('Error occurred while post device material');\r\n\t\t})\r\n\r\n\t}\r\n\r\n\tdelete(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.commonService.deleteDeviceMaterial(id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.isSaved = true;\r\n\t\t\t\t\t\tthis.getProductCompatibility();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tthis.toastr.Error('Error occurred while delete device inventory');\r\n\t\t\t\t})\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Compatibility_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions\r\n {{ 'Table_Columns.Name_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Model_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Serial_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Make_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Manufacturer_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Description_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateDate_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateDate_Column' | translate }} \r\n
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.Delete_Action' | translate }}\r\n
  • \r\n
\r\n
\r\n
{{item.name}}{{item.model}}{{item.serial}}{{item.make}}{{item.manufacturer}}{{item.description}}{{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n

{{ 'Modal_Title' | translate }}

\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {{ 'Modal_Columns.ILCBarcode_Column' | translate }}{{ 'Modal_Columns.Serial_Column' | translate }}{{ 'Modal_Columns.Model_Column' | translate }}{{ 'Modal_Columns.Name_Column' | translate }}{{ 'Modal_Columns.Type_Column' | translate }}{{ 'Modal_Columns.Class_Column' | translate }}{{ 'Modal_Columns.Manufacturer_Column' | translate }}{{ 'Modal_Columns.ThirdPartyCode_Column' | translate }}{{ 'Modal_Columns.Active_Column' | translate }}
\r\n \r\n \r\n {{item.ilc}}\r\n {{item.serial}}{{item.model}}\r\n
\r\n
{{item.name ? item.name: ''}}\r\n
{{item.name}}\r\n
\r\n
{{item.type}}{{item.device_class}}{{item.manufacturer}}{{item.tpcode}}{{item.isactive}}\r\n
\r\n
\r\n
\r\n

No Devices Found

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ModalDismissReasons, NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MasterdataComponent } from 'src/app/components/modal/masterdata/masterdata.component';\r\n\r\n@Component({\r\n\tselector: 'app-details',\r\n\ttemplateUrl: './details.component.html',\r\n\tstyleUrls: ['./details.component.scss']\r\n})\r\nexport class DetailsComponent implements OnInit {\r\n\tpublic closeResult: string;\r\n\tpublic categories = []\r\n\tproduct: any;\r\n\tdetailsList: any = [];\r\n\tuserdata: any;\r\n\tsearchText: any;\r\n\tappname = environment.APP_NAME;\r\n\tdetailTypeList: any = [];\r\n\tdetailTypeHdrList: any = [];\r\n\tdetailsData: any;\r\n\tisView: boolean = false;\r\n\tresponse: any;\r\n\tlastaction: any;\r\n\tfieldsetDisabled = false;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: InventoryServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.product = maincomponent.product;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t\tthis.initialize();\r\n\t\tthis.getProductDetails();\r\n\t\tthis.getDetailType();\r\n\t}\r\n\tinitialize() {\r\n\t\tthis.detailsData = {\r\n\t\t\t\"id\": null,\r\n\t\t\t\"detail_type\": null,\r\n\t\t\t\"description\": \"\",\r\n\t\t\t\"display_order\": '',\r\n\t\t\t\"createby\": \"\",\r\n\t\t\t\"createdate\": \"\",\r\n\t\t\t\"updateby\": \"\",\r\n\t\t\t\"updatedate\": \"\",\r\n\t\t\t\"active\": true,\r\n\t\t\t\"prodid\": null,\r\n\t\t\t\"detail_type_hdr\": null,\r\n\t\t\t\"companyid\": null\r\n\t\t}\r\n\t}\r\n\tgetDetailType() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getProductDetailTypes().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.detailTypeList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetDetailTypeHdrs() {\r\n\t\tif (!this.detailsData.detail_type) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getProductDetailTypeHdrs(this.detailsData.detail_type).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.detailTypeHdrList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\tgetDetailById(id, content) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getInventoryDetailsById(id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.detailsData = res;\r\n\t\t\tthis.detailsData.detail_type_hdr = this.detailsData.detail_type_hdr ? '' + this.detailsData.detail_type_hdr : null;\r\n\t\t\tthis.detailsData.detail_type = this.detailsData.detail_type ? '' + this.detailsData.detail_type : null;\r\n\t\t\tthis.getDetailTypeHdrs();\r\n\t\t\tthis.modalFunct(content);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\taddDetailType() {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(MasterdataComponent, {\r\n\t\t\tariaLabelledBy: 'modal-basic-title',\r\n\t\t\tsize: 'lg',\r\n\t\t});\r\n\t\tmodalRef.componentInstance.type = 'itemdetailtype';\r\n\t\tmodalRef.result\r\n\t\t\t.then((result) => {\r\n\t\t\t\tthis.getDetailTypeHdrs();\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\t}\r\n\taddDetailTypeHdr() {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(MasterdataComponent, {\r\n\t\t\tariaLabelledBy: 'modal-basic-title',\r\n\t\t\tsize: 'lg',\r\n\t\t});\r\n\t\tmodalRef.componentInstance.type = 'itemdetailtypehdr';\r\n\t\tmodalRef.result\r\n\t\t\t.then((result) => {\r\n\t\t\t\tthis.getDetailTypeHdrs();\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/details/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tgetProductDetails() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getInventoryDetails(this.product.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.detailsList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tmodalFunct(content) {\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t\tthis.getProductDetails();\r\n\t\t}, (reason) => {\r\n\t\t\t//this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t});\r\n\t}\r\n\topen(content, data, action) {\r\n\t\tthis.isView = false;\r\n\t\tif (data) {\r\n\t\t\tthis.getDetailById(data.id, content);\r\n\t\t} else {\r\n\t\t\tthis.initialize();\r\n\t\t\tthis.modalFunct(content);\r\n\t\t}\r\n\t\tif (action == 'view') {\r\n\t\t\tthis.isView = true;\r\n\t\t\t// this.modalFunct(content);\r\n\t\t}\r\n\t\tif (action == 'edit') {\r\n\t\t\tthis.isView = false;\r\n\t\t\t// this.modalFunct(content);\r\n\t\t}\r\n\t}\r\n\tprivate getDismissReason(reason: any): string {\r\n\t\tif (reason === ModalDismissReasons.ESC) {\r\n\t\t\treturn 'by pressing ESC';\r\n\t\t} else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n\t\t\treturn 'by clicking on a backdrop';\r\n\t\t} else {\r\n\t\t\treturn `with: ${reason}`;\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event, coloum) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(coloum);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.detailsList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\tpostDetails() {\r\n\t\tthis.detailsData.companyid = this.userdata.companyid;\r\n\t\tthis.detailsData.prodid = this.product.id;\r\n\t\tif (this.detailsData.id) {\r\n\t\t\tthis.detailsData.createby = this.detailsData.createby;\r\n\t\t\tthis.detailsData.createdate = this.datepipe.transform(this.detailsData.createdate, this.userdata.postdatetimeformat);\r\n\t\t\tthis.detailsData.updateby = this.userdata.email;\r\n\t\t\tthis.detailsData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.detailsData.createby = this.userdata.email;\r\n\t\t\tthis.detailsData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postInventoryDetails(this.detailsData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tthis.detailsList = res.data;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\r\n\t}\r\n\tdelete(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteInventoryDetails(id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t\tthis.getProductDetails();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading delete action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Description_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions\r\n {{ 'Table_Columns.DetailType_Column' | translate }} \r\n \r\n {{ 'Table_Columns.DetailTypeHdr_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Description_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateDate_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateDate_Column' | translate }} \r\n
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Edit_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Delete_Action' | translate }}\r\n
  • \r\n
\r\n
\r\n
{{item.detail_type}}{{item.detail_type_hdr}}{{item.description}}{{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
{{ 'Modal_Title' | translate }}{{detailsData.id}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ 'Modal_Inputs.detailtype_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n {{ 'Modal_Inputs.detailtypehdrs_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.FieldValue_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { ModalDismissReasons, NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\n\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { DocumentsComponent } from 'src/app/components/modal/documents/documents.component';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\n@Component({\r\n selector: 'app-documents',\r\n templateUrl: './documents.component.html',\r\n styleUrls: ['./documents.component.scss']\r\n})\r\nexport class DocumentTabComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = [];\r\n searchText:any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n docList: any = [];\r\n title: any = ''\r\n docType: any = ''\r\n fieldsetDisabled = false;\r\n reference: any\r\n format: any;\r\n product: any;\r\n isView: boolean = false;\r\n lastaction: any;\r\n docURL:any;\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private route: ActivatedRoute,\r\n private maincomponent: AddProductComponent,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private commonService: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private service: InventoryServices,) {\r\n this.categories = categoryDB.category;\r\n\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.docURL=environment.DOC_URL+'/'+this.userdata.companyid+'/'\r\n this.format = this.userdata.date_format;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.getProductDocuments()\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/documents/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n \r\n\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\nonSortClick(event,colum) {\r\n\tlet target = event.currentTarget,\r\n\t\tchildtarget = target.querySelector('i'),\r\n\t\tclassList = childtarget.classList;\r\n\r\n\tif (classList.contains('fa-chevron-up')) {\r\n\t\tclassList.remove('fa-chevron-up');\r\n\t\tclassList.add('fa-chevron-down');\r\n\t\ttarget.classList.add('Sorted');\r\n\t\tthis.sortDir = -1;\r\n\t} else {\r\n\t\tclassList.add('fa-chevron-up');\r\n\t\tclassList.remove('fa-chevron-down');\r\n\t\ttarget.classList.remove('Sorted');\r\n\t\tthis.sortDir = 1;\r\n\t}\r\n\tthis.sortArr(colum);\r\n}\r\n\r\nsortArr(colName: any) {\r\n\tthis.docList.sort((a, b) => {\r\n\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\nif (!valueA && !valueB) {\r\n\treturn 0; \r\n}\r\nif (!valueA) {\r\n\treturn -this.sortDir; \r\n}\r\nif (!valueB) {\r\n\treturn this.sortDir; \r\n}\r\n\r\nif (valueA > valueB) {\r\n\treturn this.sortDir;\r\n}\r\nif (valueA < valueB) {\r\n\treturn -this.sortDir;\r\n}\r\nreturn 0;\r\n});\r\n}\r\n\r\n//#endregion Sorting Table Header\r\n\r\n\r\n getProductDocuments() {\r\n this.loader.start();\r\n this.service.getProductDocuments(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n this.docList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n viewDocument(doc) {\r\n const url = environment.DOC_URL + '/' + this.userdata.companyid + '/' + doc.name;\r\n window.open(url, '_blank');\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n\r\n uploadDoc(item, action) {\r\n var modalRef = null;\r\n if (action == '') {\r\n modalRef = this.modalService.open(DocumentsComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.refno = this.product.ilc;\r\n modalRef.componentInstance.id = this.product.id;\r\n modalRef.result.then((result) => {\r\n this.getProductDocuments()\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n this.getProductDocuments()\r\n\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (action == 'edit') {\r\n modalRef = this.modalService.open(DocumentsComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.refno = this.product.ilc;\r\n // modalRef.componentInstance.id = this.product.id;\r\n modalRef.componentInstance.id = this.docList.id\r\n modalRef.result.then((result) => {\r\n this.getProductDocuments()\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n this.getProductDocuments()\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n }\r\n getDocList() {\r\n this.commonService.getDocList(this.maincomponent.product.ilc).subscribe(res => {\r\n this.docList = res;\r\n environment.production ? '' : console.log('doc list ', this.docList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading doc list ', err);\r\n });\r\n }\r\n // getInventoryItemsDetials() {\r\n // this.service.getInventoryItemsDetials(this.maincomponent.product.id).subscribe(res => {\r\n // this.docList = res;\r\n // environment.production ? '' : console.log('product type ', res);\r\n // }, err => {\r\n // environment.production ? '' : console.log('Error : While loading product type data', err);\r\n // });\r\n // }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Document_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions{{ 'Table_Columns.Title_Column' | translate }}{{ 'Table_Columns.Document_Column' | translate }}{{ 'Table_Columns.Type_Column' | translate }}{{ 'Table_Columns.CreateBy_Column' | translate }}{{ 'Table_Columns.CreateDate_Column' | translate }}
\r\n
\r\n \r\n \r\n \r\n
\r\n
{{item.description}}{{item.name}} {{item.dtype}}{{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DatePipe } from '@angular/common';\r\nimport Swal from 'sweetalert2';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'app-lottracking',\r\n\ttemplateUrl: './lottracking.component.html',\r\n\tstyleUrls: ['./lottracking.component.scss']\r\n})\r\nexport class LottrackingComponent implements OnInit {\r\n\tLotTrackList: any = [];\r\n\tproduct: any = {};\r\n\tlotData: any = {}\r\n\tbinList: any = []\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: ToastrService,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: InventoryServices) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n\t\tthis.product = maincomponent.product;\r\n\r\n\t\tthis.service.getBinLocationList().subscribe(res => {\r\n\t\t\tthis.binList = res;\r\n\t\t\tenvironment.production ? '' : console.log(' bin list data ', this.binList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading bin list ', err);\r\n\t\t});\r\n\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tthis.getTrackingLot();\r\n\r\n\t}\r\n\r\n\tgetTrackingLot() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getLotTrackingData(this.product.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.LotTrackList = res\r\n\t\t\tthis.LotTrackList.forEach(item => {\r\n\t\t\t\titem.sold = item.sold ? item.sold : 0;\r\n\t\t\t\tif (item.expirydate) {\r\n\t\t\t\t\tvar dte = item.expirydate.split('T');\r\n\t\t\t\t\titem.expirydate = dte[0];\r\n\t\t\t\t}\r\n\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n\r\n\r\n\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event,colum) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(colum);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.LotTrackList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\tif (!valueA && !valueB) {\r\n\t\treturn 0; \r\n\t}\r\n\tif (!valueA) {\r\n\t\treturn -this.sortDir; \r\n\t}\r\n\tif (!valueB) {\r\n\t\treturn this.sortDir; \r\n\t}\r\n\r\n\tif (valueA > valueB) {\r\n\t\treturn this.sortDir;\r\n\t}\r\n\tif (valueA < valueB) {\r\n\t\treturn -this.sortDir;\r\n\t}\r\n\treturn 0;\r\n});\r\n\t}\r\n\r\n\t//#endregion Sorting Table Header\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\tgoToEdit(item, content) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getLotDetailsById(item.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.lotData = res\r\n\t\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\t\t// this.closeResult = `Closed with: ${result}`;\r\n\t\t\t}, (reason) => {\r\n\t\t\t\t// this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t\t});\r\n\t\t})\r\n\t}\r\n\tpostLot() {\r\n\t\tthis.lotData.companyid = this.userdata.companyid;\r\n\t\tthis.lotData.createby = this.lotData.createby;\r\n\t\tthis.lotData.createdate = this.datepipe.transform(this.lotData.createdate, this.userdata.postdatetimeformat);\r\n\t\tthis.lotData.updateby = this.userdata.email;\r\n\t\tthis.lotData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\r\n\t\tthis.lotData.active = true;\r\n\r\n\t\tenvironment.production ? '' : console.log('post review data', this.lotData);\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postLotDetails(this.lotData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.success(res.message);\r\n\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.getTrackingLot()\r\n\t\t\t\tthis.closeModal();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\r\n\t}\r\n\tpostProductReview() {\r\n\r\n\t}\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions\r\n ID\r\n \r\n Number \r\n \r\n Bin Location \r\n \r\n Count\r\n \r\n Sold\r\n \r\n Expiry\r\n \r\n Notes\r\n
\r\n
\r\n \r\n
    \r\n
  • Edit
  • \r\n
\r\n
\r\n
{{item.id}} {{item.name}}{{item.bin_name}}{{item.cnt}}{{item.sold}}{{item.expirydate}}{{item.notes}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
Lot# {{lotData.id}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n Please enter description\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { SalesServices } from 'src/app/components/Sales/sales.service';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { getLocaleCurrencyCode } from '@angular/common';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n@Component({\r\n selector: 'app-loyaltyprograms',\r\n templateUrl: './loyaltyprograms.component.html',\r\n styleUrls: ['./loyaltyprograms.component.scss']\r\n})\r\nexport class LoyaltyprogramsComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n product: any;\r\n searchText:any;\r\n loyalityPrograms: any = [];\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private service: InventoryServices,\r\n private maincomponent: AddProductComponent,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private route: ActivatedRoute,\r\n private loader: NgxUiLoaderService) {\r\n this.categories = categoryDB.category;\r\n this.product = maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.getProductLoyalityPrograms();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n \r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/inventory/productitems/loyaltyprograms/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations:any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n //#region Sorting Table Header\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n onSortClick(event, colum) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n\r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr(colum);\r\n }\r\n\r\n sortArr(colName: any) {\r\n this.loyalityPrograms.sort((a, b) => {\r\n let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n if (!valueA && !valueB) {\r\n return 0;\r\n }\r\n if (!valueA) {\r\n return -this.sortDir;\r\n }\r\n if (!valueB) {\r\n return this.sortDir;\r\n }\r\n\r\n if (valueA > valueB) {\r\n return this.sortDir;\r\n }\r\n if (valueA < valueB) {\r\n return -this.sortDir;\r\n }\r\n return 0;\r\n });\r\n }\r\n\r\n\r\n getProductLoyalityPrograms() {\r\n this.loader.start();\r\n this.service.getProductLoyalityPrograms(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n this.loyalityPrograms = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Loyalty_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions{{ 'Table_Columns.Name_Column' | translate }}{{ 'Table_Columns.Active_Column' | translate }}{{ 'Table_Columns.CreateBy_Column' | translate }} {{ 'Table_Columns.CreateDate_Column' | translate }} {{ 'Table_Columns.UpdateBy_Column' | translate }} {{ 'Table_Columns.UpdateDate_Column' | translate }}
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Edit_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Delete_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.name}}{{item.active}}{{item.createby}}{{item.createdate}}{{item.updateby}}/td>\r\n {{item.updatedate}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
{{ 'Modal_Title' | translate }}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { FileItem, FileUploader } from 'ng2-file-upload';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport Swal from 'sweetalert2';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { AddProductComponent } from '../add-product.component';\r\n\r\n@Component({\r\n selector: 'app-pictures',\r\n templateUrl: './pictures.component.html',\r\n styleUrls: ['./pictures.component.scss']\r\n})\r\nexport class PicturesComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n picList: any = [];\r\n public environment = environment;\r\n showMain = false;\r\n pictureData: any = {}\r\n uploader: FileUploader;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n response: string;\r\n filename: any;\r\n filepath: string;\r\n\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n constructor(private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private datepipe: DatePipe,\r\n private route: ActivatedRoute,\r\n private loader: NgxUiLoaderService,\r\n private maincomponent: AddProductComponent,\r\n private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = this.maincomponent.product;\r\n this.filepath = environment.DOC_URL + '/' + this.userdata.companyid + '/';\r\n\r\n this.initializeFileUploader();\r\n\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.getProductPictures();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n getProductPictures() {\r\n this.loader.start();\r\n this.service.getProductPictures(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n this.picList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'prod-picture-files');\r\n };\r\n this.response = '';\r\n this.uploader.response.subscribe(res => {\r\n environment.production ? '' : console.log('res ' + res);\r\n // this.toastr.Success(\"File uploaded sucessfully\")\r\n this.response = res.data;\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n }\r\n uploadFile() {\r\n this.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n } else {\r\n // Swal.fire('', 'File uploaded', 'success')\r\n }\r\n };\r\n this.uploader.queue[0].upload();\r\n }\r\n\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n this.postPictureData();\r\n }\r\n viewDocument(doc) {\r\n const url = this.filepath + doc.filename;\r\n window.open(url, '_blank');\r\n }\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n postPictureData() {\r\n this.uploadFile();\r\n var data = {\r\n \"createby\": this.userdata.email,\r\n \"companyid\": this.userdata.companyid,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"prodid\": this.product.id,\r\n \"filename\": this.filename,\r\n \"mainpic\": this.pictureData.mainpic,\r\n \"orderby\": 1,\r\n \"active\": true,\r\n\r\n }\r\n environment.production ? '' : console.log('post review data', data);\r\n this.loader.start();\r\n this.service.postPicture(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.picList = res.data;\r\n this.closemodal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading single item post ', err);\r\n });\r\n }\r\n changeStatus(item) {\r\n this.loader.start();\r\n this.service.getPostProductMainPicture(item.id, this.product.id, item.mainpic).subscribe(res => {\r\n this.loader.stop();\r\n if (res == '1') {\r\n\r\n this.toastr.Success('Main Picture Updated');\r\n\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n\r\n deletePic(item) {\r\n Swal.fire({\r\n title: 'Do you want to delete product picture?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.loader.start();\r\n this.service.getProductDeletePicture(item.id).subscribe(res => {\r\n this.loader.stop();\r\n if (res == '1') {\r\n\r\n this.toastr.Success('Picture Deleted');\r\n\r\n }\r\n this.getProductPictures();\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n closemodal() {\r\n this.modalService.dismissAll()\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{item.file_name}}\r\n
\r\n
Main Pic
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
Add Product review
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-pohistory',\r\n templateUrl: './pohistory.component.html',\r\n styleUrls: ['./pohistory.component.scss']\r\n})\r\nexport class PohistoryComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n historyList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n totalQty: any = 0;\r\n totalShippedQty: any = 0;\r\n totalReceivedqty: any = 0;\r\n totalDamageqty: any = 0;\r\n totalOverageqty: any = 0;\r\n filter: any = {\r\n searchtxt: '',\r\n fromdate: '',\r\n todate: ''\r\n };\r\n totalPOCost: any = 0;\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private loader: NgxUiLoaderService,\r\n private datepipe: DatePipe,\r\n private maincomponent: AddProductComponent,\r\n private purchaseService: purchaseServices,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.categories = categoryDB.category;\r\n this.product = this.maincomponent.product;\r\n this.getProductOrders();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/pohistory/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event,colum) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(colum);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.historyList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\tif (!valueA && !valueB) {\r\n\t\treturn 0; \r\n\t}\r\n\tif (!valueA) {\r\n\t\treturn -this.sortDir; \r\n\t}\r\n\tif (!valueB) {\r\n\t\treturn this.sortDir; \r\n\t}\r\n\r\n\tif (valueA > valueB) {\r\n\t\treturn this.sortDir;\r\n\t}\r\n\tif (valueA < valueB) {\r\n\t\treturn -this.sortDir;\r\n\t}\r\n\treturn 0;\r\n});\r\n\t}\r\n\r\n\t//#endregion Sorting Table Header\r\n\r\n getProductOrders() {\r\n this.loader.start();\r\n this.purchaseService.getPurchaseRequestItemHistory(this.product.id,\r\n this.filter.searchtxt,\r\n this.datepipe.transform(this.filter.fromdate, this.userdata.date_format),\r\n this.datepipe.transform(this.filter.todate, this.userdata.date_format),\r\n ).subscribe(res => {\r\n this.loader.stop();\r\n this.historyList = res;\r\n this.totalQty = 0;\r\n this.totalShippedQty = 0;\r\n this.totalReceivedqty = 0;\r\n this.totalPOCost = 0;\r\n this.historyList.forEach(po => {\r\n this.totalQty += po.qty;\r\n this.totalShippedQty += po.shippedqty ? Number(po.shippedqty) : 0;\r\n this.totalReceivedqty += po.receivedqty;\r\n this.totalPOCost += po.cost ? Number(po.cost) : 0;\r\n this.totalDamageqty += po.damageqty ? Number(po.damageqty) : 0;\r\n this.totalOverageqty += po.overageqty ? Number(po.overageqty) : 0;\r\n po.cost = po.cost ? Number(po.cost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n po.shippedqty = po.shippedqty ? Number(po.shippedqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n po.receivedqty = po.receivedqty ? Number(po.receivedqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n po.damageqty = po.damageqty ? Number(po.damageqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n po.overageqty = po.overageqty ? Number(po.overageqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n po.cost = po.cost ? Number(po.cost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n this.totalQty = this.totalQty ? Number(this.totalQty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.totalPOCost = this.totalPOCost ? Number(this.totalPOCost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.totalShippedQty = this.totalShippedQty ? Number(this.totalShippedQty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.totalReceivedqty = this.totalReceivedqty ? Number(this.totalReceivedqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.totalDamageqty = this.totalDamageqty ? Number(this.totalDamageqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.totalOverageqty = this.totalOverageqty ? Number(this.totalOverageqty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'Table_Columns.ILC_Column' | translate }} {{ 'Table_Columns.Description_Column' | translate }} {{ 'Table_Columns.PON_Column' | translate }}{{ 'Table_Columns.PODate_Column' | translate }}{{ 'Table_Columns.Type_Column' | translate }}{{ 'Table_Columns.POTitle_Column' | translate }}{{ 'Table_Columns.Supplier_Column' | translate }}{{ 'Table_Columns.QtyOrdered_Column' | translate }}{{ 'Table_Columns.POCost_Column' | translate }}{{ 'Table_Columns.QtyShipped_Column' | translate }}{{ 'Table_Columns.QtyReceived_Column' | translate }}{{ 'Table_Columns.QtyDamage_Column' | translate }}{{ 'Table_Columns.QtyOverage_Column' | translate }}{{ 'Table_Columns.Status_Column' | translate }}{{ 'Table_Columns.DueDate_Column' | translate }}{{ 'Table_Columns.CreateBy_Column' | translate }} {{ 'Table_Columns.CreateDate_Column' | translate }} {{ 'Table_Columns.UpdateBy_Column' | translate }} {{ 'Table_Columns.UpdateDate_Column' | translate }}
{{item.ilc}}{{item.description}}{{item.pon}}{{item.podate | date: userdata.date_format}}{{item.potype}}{{item.potitle}}{{item.supplier}}{{item.qty}}{{item.cost}}{{item.shippedqty}}{{item.receivedqty}}{{item.damageqty}}{{item.overageqty}}{{item.status}}{{item.duedate | date: userdata.date_format}}{{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate | date:userdata.displaydatetimeformat}}
Total {{totalQty}}{{totalPOCost}}{{totalShippedQty}}{{totalReceivedqty}}{{totalDamageqty}}{{totalOverageqty}}
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-priceauditlogs',\r\n templateUrl: './priceauditlogs.component.html',\r\n styleUrls: ['./priceauditlogs.component.scss']\r\n})\r\nexport class PriceauditlogsComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n product:any;\r\n pricings:any=[];\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private loader: NgxUiLoaderService,\r\n private maincomponent: AddProductComponent,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private service: InventoryServices,\r\n private route: ActivatedRoute) {\r\n\r\n this.categories = categoryDB.category;\r\n this.product=maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.getProductPricings();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/pricinglog/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\nonSortClick(event,colum) {\r\n\tlet target = event.currentTarget,\r\n\t\tchildtarget = target.querySelector('i'),\r\n\t\tclassList = childtarget.classList;\r\n\r\n\tif (classList.contains('fa-chevron-up')) {\r\n\t\tclassList.remove('fa-chevron-up');\r\n\t\tclassList.add('fa-chevron-down');\r\n\t\ttarget.classList.add('Sorted');\r\n\t\tthis.sortDir = -1;\r\n\t} else {\r\n\t\tclassList.add('fa-chevron-up');\r\n\t\tclassList.remove('fa-chevron-down');\r\n\t\ttarget.classList.remove('Sorted');\r\n\t\tthis.sortDir = 1;\r\n\t}\r\n\tthis.sortArr(colum);\r\n}\r\n\r\nsortArr(colName: any) {\r\n\tthis.pricings.sort((a, b) => {\r\n\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\nif (!valueA && !valueB) {\r\n\treturn 0; \r\n}\r\nif (!valueA) {\r\n\treturn -this.sortDir; \r\n}\r\nif (!valueB) {\r\n\treturn this.sortDir; \r\n}\r\n\r\nif (valueA > valueB) {\r\n\treturn this.sortDir;\r\n}\r\nif (valueA < valueB) {\r\n\treturn -this.sortDir;\r\n}\r\nreturn 0;\r\n});\r\n}\r\n\r\n//#endregion Sorting Table Header\r\n\r\n getProductPricings() {\r\n this.loader.start();\r\n this.service.getProductPricing(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n this.pricings = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'Table_Columns.POCost_Column' | translate }}{{ 'Table_Columns.LandedCost_Column' | translate }}{{ 'Table_Columns.AvgCost_Column' | translate }} {{ 'Table_Columns.Store_Column' | translate }}{{ 'Table_Columns.Wholesale_Column' | translate }}{{ 'Table_Columns.Online_Column' | translate }}{{ 'Table_Columns.Service_Column' | translate }}{{ 'Table_Columns.Flat_Column' | translate }}{{ 'Table_Columns.CreateDate_Column' | translate }}{{ 'Table_Columns.CreateBy_Column' | translate }}{{ 'Table_Columns.Notes_Column' | translate }}
{{item.pocost}}{{item.landedcost}}{{item.avgcost}}{{item.store}}{{item.wholesale}}{{item.online}}{{item.service}}{{item.flat}}{{item.doe | date:'yyy-MM-dd HH:mm'}}{{item.eby}}{{item.notes}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
Pricing
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport Swal from 'sweetalert2';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-review',\r\n templateUrl: './review.component.html',\r\n styleUrls: ['./review.component.scss']\r\n})\r\nexport class ReviewComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n reviewList: any = [];\r\n userdata: any;\r\n searchText:any;\r\n appname = environment.APP_NAME;\r\n reviewData: any = {\r\n \"id\": null,\r\n \"description\": '',\r\n \"createby\": '',\r\n \"createdate\": '',\r\n \"updateby\": '',\r\n \"updatedate\": '',\r\n \"rating\": '',\r\n \"active\": true,\r\n \"approved\": true,\r\n \"prodid\": '',\r\n };\r\n response: any;\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n isview: boolean;\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private datepipe: DatePipe,\r\n private route: ActivatedRoute,\r\n private toastr: NotificationService,\r\n private maincomponent: AddProductComponent,\r\n private loader: NgxUiLoaderService,\r\n private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.getProductReviews();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/reviews/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n onSortClick(event,colum) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n \r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr(colum);\r\n }\r\n \r\n sortArr(colName: any) {\r\n this.reviewList.sort((a, b) => {\r\n let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n \r\n if (!valueA && !valueB) {\r\n return 0; \r\n }\r\n if (!valueA) {\r\n return -this.sortDir; \r\n }\r\n if (!valueB) {\r\n return this.sortDir; \r\n }\r\n \r\n if (valueA > valueB) {\r\n return this.sortDir;\r\n }\r\n if (valueA < valueB) {\r\n return -this.sortDir;\r\n }\r\n return 0;\r\n });\r\n }\r\n \r\n //#endregion Sorting Table Header\r\n getProductReviews() {\r\n this.loader.start();\r\n this.service.getProductReviews(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n console.log(res)\r\n this.reviewList = res;\r\n this.reviewList.forEach(rev => {\r\n rev.active = rev.active ? 'Yes' : 'No';\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n open(content, data, action) {\r\n console.log('log', action);\r\n\r\n if (action == 'view') {\r\n this.isview = true\r\n } else if (action == 'edit') {\r\n this.isview = false\r\n }\r\n if (data.id) {\r\n this.reviewData = {\r\n active: data.active,\r\n approved: data.approved,\r\n createby: data.createby,\r\n createdate: data.createdate,\r\n description: data.description,\r\n id: data.id,\r\n prodid: data.prodid,\r\n rating: data.rating,\r\n updateby: data.updateby,\r\n updatedate: data.updatedate\r\n };\r\n } else {\r\n this.reviewData = {};\r\n }\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n closemodal() {\r\n this.modalService.dismissAll()\r\n }\r\n postProductReview() {\r\n this.reviewData.companyid = this.userdata.companyid;\r\n if (this.reviewData.id != undefined && this.reviewData.id != null) {\r\n this.reviewData.createby = this.reviewData.createby;\r\n this.reviewData.createdate = this.datepipe.transform(this.reviewData.createdate, this.userdata.postdatetimeformat);\r\n this.reviewData.updateby = this.userdata.email;\r\n this.reviewData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n else {\r\n this.reviewData.prodid = this.product.id;\r\n this.reviewData.createby = this.userdata.email;\r\n this.reviewData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.reviewData.active = true;\r\n\r\n environment.production ? '' : console.log('post review data', this.reviewData);\r\n this.loader.start();\r\n this.service.postItemReview(this.reviewData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.reviewList = res.data;\r\n this.reviewList.forEach(rev => {\r\n rev.active = rev.active ? 'Yes' : 'No';\r\n })\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.Reviews_Tooltip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
Actions{{ 'Table_Columns.Description_Column' | translate }}{{ 'Table_Columns.Rating_Column' | translate }}{{ 'Table_Columns.Active_Column' | translate }}\r\n {{ 'Table_Columns.CreateBy_Column' | translate }}\r\n {{ 'Table_Columns.CreateDate_Column' | translate }}\r\n {{ 'Table_Columns.UpdateBy_Column' | translate }}\r\n {{ 'Table_Columns.UpdateDate_Column' | translate }}
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' | translate }}
  • \r\n
  • {{ 'Table_Actions.Edit_Action' | translate }}\r\n
  • \r\n
  • {{ 'Table_Actions.Delete_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.rating}}{{item.active}}{{item.createby}}{{item.createdate | date : userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate | date : userdata.displaydatetimeformat}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
{{ 'Modal_Title' | translate }}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Input.Rating_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Input.Description_Required' | translate }}\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ModalDismissReasons, NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { SerialComponent } from '../../modal/serial/serial.component';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-serial',\r\n templateUrl: './serials.component.html',\r\n styleUrls: ['./serials.component.scss']\r\n})\r\nexport class SerialsComponent implements OnInit {\r\n filter: any = {\r\n bincode: '',\r\n serialno: '',\r\n status: '',\r\n }\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n serialList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n serialStatus: any = [];\r\n status: string;\r\n private langChangeSubscription: Subscription;\r\n constructor(\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private service: InventoryServices,\r\n private maincomponent: AddProductComponent,\r\n private commonService: CommonServices,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n commonService.getComboEnums('serialnostatus').subscribe(res => {\r\n this.serialStatus = res;\r\n console.log('statuslist', res);\r\n })\r\n this.getProductSerials();\r\n }\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/serials/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n getProductSerials() {\r\n this.loader.start();\r\n this.status = this.filter.status.toString()\r\n this.service.getProductSerials(this.product.id, this.filter.serialno ? this.filter.serialno : '', this.filter.bincode ? this.filter.bincode : '', this.status ? this.status : '').subscribe(res => {\r\n this.loader.stop();\r\n this.serialList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n // /#region Sorting Table Header\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n onSortClick(event,colum) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n\r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr(colum);\r\n }\r\n sortArr(colName: any) {\r\n this.serialList.sort((a, b) => {\r\n let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n \r\n if (!valueA && !valueB) {\r\n return 0;\r\n }\r\n if (!valueA) {\r\n return -this.sortDir;\r\n }\r\n if (!valueB) {\r\n return this.sortDir;\r\n }\r\n \r\n if (valueA > valueB) {\r\n return this.sortDir;\r\n }\r\n if (valueA < valueB) {\r\n return -this.sortDir;\r\n }\r\n return 0;\r\n });\r\n }\r\n //#endregion Sorting Table Headr\r\n\r\n\r\n open(item, action) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(SerialComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = this.product;\r\n modalRef.componentInstance.editData = item;\r\n modalRef.componentInstance.action = action;\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.getProductSerials();\r\n environment.production ? '' : console.log('closed');\r\n }, (reason) => {\r\n\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n\r\n public settings = {\r\n actions: {\r\n position: 'left',\r\n },\r\n columns: {\r\n serialno: {\r\n title: 'Serial No.',\r\n },\r\n lastupdated: {\r\n title: 'Last Updated',\r\n width: '30%',\r\n },\r\n updatedby: {\r\n title: 'Updated By',\r\n },\r\n islocal: {\r\n title: 'Status',\r\n type: 'html',\r\n },\r\n },\r\n };\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Columns.ToolTip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions{{'Table_Columns.Serial_Column' |\r\n translate}} {{'Table_Columns.BIN_Column' |\r\n translate}} {{'Table_Columns.Status_Column' |\r\n translate}} \r\n {{'Table_Columns.WarrantyExpiryDate_Column' | translate}} \r\n {{'Table_Columns.LastUpdated_Column' | translate}} \r\n {{'Table_Columns.CreateDate_Column' | translate}} \r\n {{'Table_Columns.UpdatedBy_Column' | translate}}
\r\n
\r\n \r\n
    \r\n
  • {{'Table_Actions.View_Action' | translate}}
  • \r\n
  • {{'Table_Actions.Edit_Action' | translate}}
  • \r\n
\r\n
\r\n
{{item.serial}}{{item.binlocation}}{{item.status}}{{item.warrantyexpirydate | date:userdata.date_format}}{{item.lastupdated | date:userdata.date_format}}{{item.purchasedate | date:userdata.date_format}}{{item.updateby}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
Serials
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\n\r\n@Component({\r\n selector: 'app-substituteproduct',\r\n templateUrl: './substituteproduct.component.html',\r\n styleUrls: ['./substituteproduct.component.scss']\r\n})\r\nexport class SubstituteproductComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = [];\r\n searchText:any;\r\n product: any;\r\n substituteItemList: any = [];\r\n substituteSearchItemList: any = [];\r\n supplierList: any = [];\r\n catList: any = [];\r\n subCatlist: any = [];\r\n binData: any = {}\r\n deptList: any = []\r\n subStitudeData: any = {\r\n supplierid: '',\r\n dept: '',\r\n cat: '',\r\n subcat: '',\r\n searchtxt: ''\r\n }\r\n singleItemData: any = {}\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n constructor(\r\n private modalService: NgbModal,\r\n private route: ActivatedRoute,\r\n private commonService: CommonServices,\r\n private datepipe: DatePipe, private loader: NgxUiLoaderService,\r\n private service: InventoryServices,\r\n private toastr: NotificationService,\r\n private maincomponent: AddProductComponent) {\r\n this.categories = categoryDB.category;\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n var isservice = false;\r\n this.service.getParentCat(isservice).subscribe(res => {\r\n this.deptList = res;\r\n environment.production ? '' : console.log('dept list list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading dept list ', err);\r\n });\r\n\r\n\r\n this.service.getProductSupplier().subscribe(res => {\r\n this.supplierList = res;\r\n environment.production ? '' : console.log('supplierList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading supplierList data', err);\r\n });\r\n this.getProductSubstitute();\r\n }\r\n\r\n getSearSubstitudeItems() {\r\n this.loader.start();\r\n this.service.getSubtitudeCatlog(this.subStitudeData.supplierid, this.subStitudeData.dept, this.subStitudeData.cat, this.subStitudeData.subcat, this.subStitudeData.searchtxt).subscribe(res => {\r\n this.loader.stop();\r\n this.substituteSearchItemList = res;\r\n this.substituteSearchItemList.forEach(element => {\r\n element.landedcost = element.landedcost ? Number(element.landedcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.price = element.price ? Number(element.price).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.pocost = element.pocost ? Number(element.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n //#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event,coloum) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(coloum);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.substituteItemList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\r\n getProductSubstitute() {\r\n this.loader.start();\r\n this.service.getProductSubstitutes(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n this.substituteItemList = res;\r\n this.substituteItemList.forEach(element => {\r\n element.landedcost = Number(element.landedcost).toFixed(this.userdata.decimals_allowed) ? Number(element.landedcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.price = Number(element.price).toFixed(this.userdata.decimals_allowed) ? Number(element.price).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.pocost = Number(element.pocost).toFixed(this.userdata.decimals_allowed) ? Number(element.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n getCatUsingDept() {\r\n this.service.getProductCategory(this.subStitudeData.dept, false).subscribe(res => {\r\n this.catList = res;\r\n environment.production ? '' : console.log('catList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading catList data', err);\r\n });\r\n }\r\n getSubCatUsingCategory() {\r\n this.commonService.getSubCategory(this.subStitudeData.cat).subscribe(res => {\r\n this.subCatlist = res;\r\n environment.production ? '' : console.log('SubcatList list ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading catList data', err);\r\n });\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n }\r\n postSingleItem(event, item) {\r\n environment.production ? '' : console.log('selected item', item);\r\n if (event.target.checked) {\r\n var data = {\r\n \"createby\": this.userdata.email,\r\n \"companyid\": this.userdata.companyid,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"prodid\": this.product.id,\r\n \"sub_prodid\": item.id\r\n }\r\n environment.production ? '' : console.log('post review data', data);\r\n this.loader.start();\r\n this.service.postSingleSubstitudeData(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.substituteItemList = res.data;\r\n this.substituteItemList.forEach(element => {\r\n element.landedcost = Number(element.landedcost).toFixed(this.userdata.decimals_allowed) ? Number(element.landedcost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.price = Number(element.price).toFixed(this.userdata.decimals_allowed) ? Number(element.price).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.pocost = Number(element.pocost).toFixed(this.userdata.decimals_allowed) ? Number(element.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading single item post ', err);\r\n });\r\n }\r\n }\r\n eventCheck(event) {\r\n if (event.target.checked) {\r\n\r\n }\r\n }\r\n closemodal() {\r\n this.substituteSearchItemList = [];\r\n this.subStitudeData = {\r\n supplierid: '',\r\n dept: '',\r\n cat: '',\r\n subcat: '',\r\n searchtxt: ''\r\n }\r\n this.modalService.dismissAll()\r\n }\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', backdrop: 'static', size: 'xl' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n addItem() {\r\n\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • Add Substitute Product
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ActionsILCAILCDescriptionSupplierLanded CostPricePO CostCreateBy CreateDate UpdateBy UpdateDate
\r\n
\r\n \r\n
    \r\n
  • Delete
  • \r\n
\r\n
\r\n
{{item.ilc}}{{item.alic}}{{item.description}}{{item.supplier}}{{item.landedcost}}{{item.price}}{{item.pocost}}{{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate | date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
Substitute product
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ILCDescriptionPO CostLanded CostDonotorderMilcPicPur. UOMQtyQty AvailableQty OnHandQty OnOrderReorder QtySupplierTP Code
\r\n
\r\n \r\n \r\n
\r\n
{{item.ilc}}{{item.desc}}{{item.pocost}}{{item.landedcost}}{{item.donotorder}}{{item.milc}}{{item.pic}}{{item.puom}}{{item.qty}}{{item.qtyavailable}}{{item.qtyonhand}}{{item.qtyonorder}}{{item.reorderqty}}{{item.supplier}}{{item.tpcode}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'supplierfilter',\r\n pure: false\r\n})\r\nexport class SupplierfilterPipe implements PipeTransform {\r\n\r\n \r\n transform(items: any[], term): any {\r\n if (items?.length === 0 || term == '') {\r\n return items;\r\n }\r\n const data = [];\r\n for(const item of items) {\r\n if( item['name']?.toLowerCase().includes(term.toLowerCase()) \r\n || item.contact?.toLowerCase().includes(term.toLowerCase()) \r\n || item.email?.toLowerCase().includes(term.toLowerCase()) \r\n ) {\r\n data.push(item);\r\n }\r\n }\r\n return data;\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\n\r\n@Component({\r\n\tselector: 'app-suppliers',\r\n\ttemplateUrl: './suppliers.component.html',\r\n\tstyleUrls: ['./suppliers.component.scss']\r\n})\r\nexport class SuppliersComponent implements OnInit {\r\n\tsearchText: string = '';\r\n\tpublic closeResult: string;\r\n\tpublic categories = []\r\n\tproduct: any;\r\n\tsupplierList: any = [];\r\n\ttabsupplierList: any = []\r\n\tsupplierData: any = {\r\n\t\t\"id\": null,\r\n\t\t\"prodid\": '',\r\n\t\t\"supplierid\": '',\r\n\t\t\"active\": true,\r\n\t\t\"cost\": 0,\r\n\t\t\"isprimary\": true,\r\n\t\t\"companyid\": '',\r\n\t\t\"itemcode\": \"\",\r\n\t\t\"deletedate\": \"\",\r\n\t\t\"createby\": \"\",\r\n\t\t\"createdate\": \"\",\r\n\t\t\"updateby\": \"\",\r\n\t\t\"updatedate\": \"\",\r\n\t\t\"uom\": ''\r\n\t}\r\n\tuomList: any = [];\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\tisView: boolean = false;\r\n\tresponse: any;\r\n\tlastaction: any;\r\n\tfieldsetDisabled = false;\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(private modalService: NgbModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate maincomponent: AddProductComponent,\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate purchaseService: purchaseServices,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: InventoryServices,\r\n\t\tprivate toastr: NotificationService) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.product = maincomponent.product;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t\tthis.service.getProductSupplier().subscribe(res => {\r\n\t\t\tthis.supplierList = res;\r\n\t\t\tenvironment.production ? '' : console.log(' supplier list data ', this.supplierList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading supplier list ', err);\r\n\t\t});\r\n\t\tthis.getProdUom();\r\n\t\tthis.getProductSupliers();\r\n\t}\r\n\tgetProdUom() {\r\n\t\tthis.purchaseService.getProdUom().subscribe(res => {\r\n\t\t\tthis.uomList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\t\tthis.product.uom = this.product.uom\r\n\t}\r\n\r\n\tgetProductSupliers() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getProductSupliers(this.product.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.tabsupplierList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\r\n\t}\r\n\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/suppliers/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\topen(content, item) {\r\n\t\tif (item == null) {\r\n\t\t\tthis.supplierData = {\r\n\t\t\t\t\"active\": true,\r\n\t\t\t\t\"cost\": 0,\r\n\t\t\t\t\"isprimary\": true,\r\n\t\t\t\t\"supplierid\": '',\r\n\t\t\t\t\"uom\": ''\r\n\t\t\t};\r\n\t\t\tthis.isView = false;\r\n\t\t}\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t\tthis.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t});\r\n\t}\r\n\tgoToView(content, item) {\r\n\t\tthis.isView = true;\r\n\t\tthis.supplierData = item;\r\n\t\tthis.open(content, item)\r\n\t}\r\n\tgoToEdit(content, item) {\r\n\t\tthis.isView = false;\r\n\t\tthis.supplierData = item;\r\n\t\tenvironment.production ? '' : console.log('supplier edit data', this.supplierData);\r\n\t\tthis.open(content, item)\r\n\t}\r\n\r\n\tprivate getDismissReason(reason: any): string {\r\n\t\tif (reason === ModalDismissReasons.ESC) {\r\n\t\t\treturn 'by pressing ESC';\r\n\t\t} else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n\t\t\treturn 'by clicking on a backdrop';\r\n\t\t} else {\r\n\t\t\treturn `with: ${reason}`;\r\n\t\t}\r\n\t}\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event, colum) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(colum);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.tabsupplierList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\r\n\t//#endregion Sorting Table Header\r\n\r\n\tpostSupplier() {\r\n\t\tthis.isView = true;\r\n\t\tthis.supplierData.companyid = this.userdata.companyid;\r\n\t\tthis.supplierData.prodid = this.product.id;\r\n\t\tif (this.supplierData.id) {\r\n\t\t\tthis.supplierData.createby = this.supplierData.createby;\r\n\t\t\tthis.supplierData.createdate = this.datepipe.transform(this.supplierData.createdate, this.userdata.postdatetimeformat);\r\n\t\t\tthis.supplierData.updateby = this.userdata.email;\r\n\t\t\tthis.supplierData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthis.supplierData.createby = this.userdata.email;\r\n\t\t\tthis.supplierData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tenvironment.production ? '' : console.log('post alias datais', this.supplierData);\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postItemSupplier(this.supplierData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tthis.tabsupplierList = res.data;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.closeModal();\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('post product response ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.isView = false;\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\t}\r\n\tdeleteSupplier(item) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteProductSupliers(item.id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getProductSupliers();\r\n\t\t\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading delete Currency', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
    \r\n
  • {{\r\n 'Table_Columns.Supplier_ToolTip' | translate }}
  • \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Actions\r\n {{ 'Table_Columns.Name_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Contact_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UOM_Column' | translate }} \r\n \r\n {{ 'Table_Columns.IsLocal_Column' | translate }} \r\n \r\n {{ 'Table_Columns.ItemCode_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Cost_Column' | translate }} \r\n \r\n {{ 'Table_Columns.Email_Column' | translate }} \r\n \r\n {{ 'Table_Columns.IsPrimary_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.CreateDate_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateBy_Column' | translate }} \r\n \r\n {{ 'Table_Columns.UpdateDate_Column' | translate }} \r\n
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.View_Action' | translate\r\n }}
  • \r\n
  • {{\r\n 'Table_Actions.Edit_Action' | translate }}
  • \r\n
  • {{\r\n 'Table_Actions.Delete_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.name}}{{item.primarycontact}}{{item.uom}}{{item.islocal}}{{item.itemcode}}{{item.cost | number:'1.2-2'}}{{item.email}}{{item.isprimary}}{{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
{{ 'Modal_Title' | translate }}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.Supplier_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.ItemCode_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.Cost_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport * as moment from 'moment';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n\tselector: 'app-tax',\r\n\ttemplateUrl: './tax.component.html',\r\n\tstyleUrls: ['./tax.component.scss']\r\n})\r\nexport class TaxComponent implements OnInit {\r\n\t@ViewChild('clearDateField') clearDateField: ElementRef;\r\n\r\n\ttaxList: any;\r\n\tfieldsetDisabled: boolean;\r\n\ttaxData: any = {\r\n\t\ttaxid: '',\r\n\t\tactive: true\r\n\t};\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\tcloseResult: string;\r\n\tformat: any;\r\n\ttaxtypeList: any;\r\n\r\n\taction: any = '';\r\n\tproduct: any;\r\n\ttotalLeaves: number;\r\n\tlastaction: any;\r\n\r\n\tconstructor(\r\n\t\tprivate modalService: NgbModal,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate service: InventoryServices,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate mainComponent: AddProductComponent,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate route: ActivatedRoute\r\n\t) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format;\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\r\n\t\tthis.product = mainComponent.product;\r\n\t\t// this.taxData.todate = this.datepipe.transform(new Date(), 'yyyy-MM-dd')\r\n\r\n\t\tthis.commonService.getTaxList('sales').subscribe(res => {\r\n\t\t\tthis.taxtypeList = res;\r\n\t\t\tenvironment.production ? '' : console.log('type taxes list data ', this.taxtypeList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading expType list ', err);\r\n\t\t});\r\n\t\tthis.getInventoryTax(this.product.id);\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\r\n\t\tif (this.lastaction == 'view') {\r\n\t\t\tthis.fieldsetDisabled = true;\r\n\t\t} else if (this.lastaction == 'edit') {\r\n\t\t\tthis.fieldsetDisabled = false;\r\n\t\t}\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t}\r\n\r\n//#region Sorting Table Header\r\nsortDir = 1;//1= 'ASE' -1= DSC\r\nonSortClick(event,colum) {\r\n\tlet target = event.currentTarget,\r\n\t\tchildtarget = target.querySelector('i'),\r\n\t\tclassList = childtarget.classList;\r\n\r\n\tif (classList.contains('fa-chevron-up')) {\r\n\t\tclassList.remove('fa-chevron-up');\r\n\t\tclassList.add('fa-chevron-down');\r\n\t\ttarget.classList.add('Sorted');\r\n\t\tthis.sortDir = -1;\r\n\t} else {\r\n\t\tclassList.add('fa-chevron-up');\r\n\t\tclassList.remove('fa-chevron-down');\r\n\t\ttarget.classList.remove('Sorted');\r\n\t\tthis.sortDir = 1;\r\n\t}\r\n\tthis.sortArr(colum);\r\n}\r\n\r\nsortArr(colName: any) {\r\n\tthis.taxList.sort((a, b) => {\r\n\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\nif (!valueA && !valueB) {\r\n\treturn 0; \r\n}\r\nif (!valueA) {\r\n\treturn -this.sortDir; \r\n}\r\nif (!valueB) {\r\n\treturn this.sortDir; \r\n}\r\n\r\nif (valueA > valueB) {\r\n\treturn this.sortDir;\r\n}\r\nif (valueA < valueB) {\r\n\treturn -this.sortDir;\r\n}\r\nreturn 0;\r\n});\r\n}\r\n\r\n//#endregion Sorting Table Header\r\n\r\n\r\n\taddTax(content, item, action) {\r\n\t\tif (action == 'view') {\r\n\t\t\tthis.action = 'view';\r\n\t\t} else {\r\n\t\t\tthis.action = '';\r\n\t\t}\r\n\t\tif (item != null) {\r\n\t\t\tthis.getInventoryTaxByID(item.id)\r\n\t\t} else {\r\n\t\t\t// this.taxData = {\r\n\t\t\t// taxid:'',\r\n\t\t\t// active:true\r\n\t\t\t// };\r\n\t\t}\r\n\t\tthis.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t\t// this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n\t\t});\r\n\t}\r\n\tcloseModal() {\r\n\t\tthis.modalService.dismissAll();\r\n\t\tthis.taxData = {\r\n\t\t\ttaxid: '',\r\n\t\t\tactive: true\r\n\t\t};\r\n\t}\r\n\tsaveTax() {\r\n\t\tif (this.taxData.id != undefined && this.taxData.id != null) {\r\n\t\t\tthis.taxData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t\tthis.taxData.updateby = this.userdata.email;\r\n\t\t\tthis.taxData.createby = this.taxData.createby;\r\n\t\t\tthis.taxData.createdate = this.datepipe.transform(this.taxData.createdate, this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.taxData.createby = this.userdata.email;\r\n\t\t\tthis.taxData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tthis.taxData.companyid = this.userdata.companyid;\r\n\t\tthis.taxData.prodid = this.product.id;\r\n\t\tthis.taxData.effective_from = this.datepipe.transform(this.taxData.effective_from, 'yyyy-MM-dd')\r\n\t\tthis.taxData.effective_to = this.datepipe.transform(this.taxData.effective_to, 'yyyy-MM-dd')\r\n\t\tenvironment.production ? '' : console.log('taxData post ' + this.taxData);\r\n\t\t// return false\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postInventoryTax(this.taxData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.getInventoryTax(this.product.id);\r\n\t\t\t\tthis.taxData = {\r\n\t\t\t\t\ttaxid: '',\r\n\t\t\t\t\tactive: true\r\n\t\t\t\t};\r\n\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While post taxData details ', err);\r\n\t\t});\r\n\t}\r\n\tgetInventoryTax(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getInventoryTax(id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.taxList = res;\r\n\t\t\tenvironment.production ? '' : console.log('taxList index List ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading taxList index list ', err);\r\n\t\t});\r\n\t}\r\n\tgetInventoryTaxByID(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getInventoryTaxByID(id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.taxData = res;\r\n\t\t\tenvironment.production ? '' : console.log('taxData by id List ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading taxData by id list ', err);\r\n\t\t});\r\n\t}\r\n\r\n\tupdateCalcs() {\r\n\t\tvar a = moment(this.taxData.effective_from, \"YYYY-MM-DD\");\r\n\t\tvar b = moment(this.taxData.effective_to, \"YYYY-MM-DD\");\r\n\t\tthis.totalLeaves = moment.duration(b.diff(a)).asDays();\r\n\t\tif (this.totalLeaves) {\r\n\t\t\tthis.checkDate()\r\n\r\n\t\t}\r\n\r\n\t}\r\n\tcheckDate() {\r\n\t\tvar startDate = this.datepipe.transform(this.taxData.effective_from, ('dd/MM/yyyy'));\r\n\t\tvar endDate = this.datepipe.transform(this.taxData.effective_to, ('dd/MM/yyyy'));\r\n\t\tvar regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n\t\tif (parseInt(endDate.replace(regExp, \"$3$2$1\")) > parseInt(startDate.replace(regExp, \"$3$2$1\"))) {\r\n\t\t\tenvironment.production ? '' : console.log('start date is greater than end date');\r\n\t\t} else {\r\n\t\t\tthis.taxData.effective_to = null\r\n\t\t\tthis.totalLeaves = 0;\r\n\t\t\tthis.toastr.Error(\"End date should be greater than start date\")\r\n\t\t\tthis.clearDateField.nativeElement.value = '';\r\n\t\t\treturn false\r\n\t\t}\r\n\t}\r\n\tdeleteTax(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Do you want to delete item tax?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteTemTax(id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.getInventoryTax(this.product.id);\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While delete product ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
NameFrom DateTo DateActiveCreateBy CreateDate UpdateBy UpdateDate
\r\n
\r\n \r\n
    \r\n
  • View
  • \r\n
  • Edit
  • \r\n
  • Delete\r\n
  • \r\n
\r\n
\r\n
{{item.name}}\r\n {{item.effective_from | date: format}}\r\n {{item.effective_to | date: format}}{{item.active}} {{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}{{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
Tax
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n From Date is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n To Date is required\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { AddProductComponent } from '../add-product.component';\r\n\r\n@Component({\r\n selector: 'app-timeing',\r\n templateUrl: './timeing.component.html',\r\n styleUrls: ['./timeing.component.scss']\r\n})\r\nexport class TimeingComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n timingList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n timingData: any = {\r\n \"id\": null,\r\n \"description\": '',\r\n \"createby\": '',\r\n \"createdate\": '',\r\n \"updateby\": '',\r\n \"updatedate\": '',\r\n \"rating\": '',\r\n \"active\": true,\r\n \"approved\": true,\r\n \"prodid\": '',\r\n \"dayavail\": ''\r\n };\r\n response: any;\r\n lastaction: any;\r\n fieldsetDisabled = false;\r\n isview: boolean;\r\n daysList: any = []\r\n constructor(private modalService: NgbModal,\r\n private datepipe: DatePipe,\r\n private route: ActivatedRoute,\r\n private toastr: NotificationService,\r\n private maincomponent: AddProductComponent,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n if (this.lastaction == 'view') {\r\n this.fieldsetDisabled = true;\r\n } else if (this.lastaction == 'edit') {\r\n this.fieldsetDisabled = false;\r\n }\r\n this.commonService.getComboEnums('dayavail').subscribe(res => {\r\n this.daysList = res;\r\n environment.production ? '' : console.log(' daysList list ', this.daysList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading daysList List ', err);\r\n });\r\n this.getTimingList();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n getTimingList() {\r\n this.loader.start();\r\n this.service.getTiming(this.product.id).subscribe(res => {\r\n this.loader.stop();\r\n console.log(res)\r\n this.timingList = res;\r\n this.timingList.forEach(rev => {\r\n rev.active = rev.active ? 'Yes' : 'No';\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n getTimingByID(content, item, action) {\r\n this.loader.start();\r\n this.service.getTimingByID(item.id).subscribe(res => {\r\n this.loader.stop();\r\n this.timingData = res;\r\n if (action == 'view') {\r\n this.isview = true\r\n } else if (action == 'edit') {\r\n this.isview = false\r\n }\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n open(content) {\r\n this.timingData = {\r\n active: true,\r\n dayavail: ''\r\n };\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n closemodal() {\r\n this.modalService.dismissAll()\r\n }\r\n postProductTiming() {\r\n this.timingData.companyid = this.userdata.companyid;\r\n if (this.timingData.id != undefined && this.timingData.id != null) {\r\n this.timingData.createby = this.timingData.createby;\r\n this.timingData.createdate = this.datepipe.transform(this.timingData.createdate, this.userdata.postdatetimeformat);\r\n this.timingData.updateby = this.userdata.email;\r\n this.timingData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n else {\r\n this.timingData.prodid = this.product.id;\r\n this.timingData.createby = this.userdata.email;\r\n this.timingData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.timingData.active = true;\r\n\r\n environment.production ? '' : console.log('post review data', this.timingData);\r\n this.loader.start();\r\n this.service.postTiming(this.timingData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.getTimingList();\r\n\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n }\r\n deleteSupplier(item) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteTiming(item.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getTimingList();\r\n this.modalService.dismissAll();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading delete Currency', err);\r\n });\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
Day availableStart dateEnd dateActive\r\n CreateBy\r\n CreateDate\r\n UpdateBy\r\n UpdateDate
\r\n
\r\n \r\n
    \r\n
  • View
  • \r\n
  • Edit\r\n
  • \r\n
  • Delete
  • \r\n
\r\n
\r\n
{{item.startdate | date : userdata.displaydatetimeformat}}{{item.enddate | date : userdata.displaydatetimeformat}}{{item.active}}{{item.createby}}{{item.createdate | date : userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate | date : userdata.displaydatetimeformat}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
Timing
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { categoryDB } from '../../../../../shared/tables/category';\r\nimport { NgbModal, ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AddProductComponent } from '../add-product.component';\r\nimport { DatePipe } from '@angular/common';\r\nimport * as moment from 'moment';\r\nimport Swal from 'sweetalert2';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-transactionhistory',\r\n templateUrl: './transactionhistory.component.html',\r\n styleUrls: ['./transactionhistory.component.scss']\r\n})\r\nexport class TransactionhistoryComponent implements OnInit {\r\n public closeResult: string;\r\n public categories = []\r\n product: any;\r\n transactionList: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n fromdate: any;\r\n todate: any;\r\n searchtext: any = '';\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n\tprivate translate: TranslateService,\r\n\tprivate languageService: LanguageService,\r\n\tprivate http: HttpClient,\r\n\tprivate toastr:NotificationService, private datepipe: DatePipe, private maincomponent: AddProductComponent, private loader: NgxUiLoaderService, private service: InventoryServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.product = maincomponent.product;\r\n this.todate = moment().add(1, 'days').format('YYYY-MM-DD');\r\n this.fromdate = moment().subtract(182, 'days').format('YYYY-MM-DD');\r\n this.getProductTransactions();\r\n }\r\n\r\n ngOnInit(): void {\r\n\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\tthis.loadComponentTranslations(lang);\r\n\t});\r\n }\r\n\r\n \tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/inventory/productitems/transactionhistory/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n //#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event,column) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr(column);\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.transactionList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\tif (!valueA && !valueB) {\r\n\t\treturn 0; \r\n\t}\r\n\tif (!valueA) {\r\n\t\treturn -this.sortDir; \r\n\t}\r\n\tif (!valueB) {\r\n\t\treturn this.sortDir; \r\n\t}\r\n\r\n\tif (valueA > valueB) {\r\n\t\treturn this.sortDir;\r\n\t}\r\n\tif (valueA < valueB) {\r\n\t\treturn -this.sortDir;\r\n\t}\r\n\treturn 0;\r\n});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n getProductTransactions() {\r\n this.loader.start();\r\n this.service.getItemAnalyses(this.product.id, this.datepipe.transform(new Date(this.fromdate), this.userdata.postdateformat), this.datepipe.transform(new Date(this.todate), this.userdata.postdateformat), this.searchtext).subscribe((res) => {\r\n this.loader.stop();\r\n this.transactionList = res;\r\n this.transactionList.forEach(item => {\r\n item.pocost = item.pocost ? Number(item.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.avgcost_weighted = item.avgcost_weighted ? Number(item.avgcost_weighted).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.avgcost_fifo = item.avgcost_fifo ? Number(item.avgcost_fifo).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.saleprice = item.saleprice ? Number(item.saleprice).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n\r\n\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n undoProductTrans(item) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to undo selected transaction?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.undoProductTransaction(item.customer, item.id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.getProductTransactions();\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading expType list ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n

{{product.qtyonhand}}

\r\n
\r\n
\r\n
\r\n

{{product.qtyonorder}}

\r\n
\r\n
\r\n
\r\n

{{product.qtyavailable}}

\r\n
\r\n
\r\n
\r\n

{{product.qtyonhold}}

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'Table_Columns.Action_Column' | translate }}{{ 'Table_Columns.TxnID_Column' | translate }}{{ 'Table_Columns.TxnDate_Column' | translate }}{{ 'Table_Columns.FromLocation_Column' | translate }}{{ 'Table_Columns.ToLocation_Column' | translate }}{{ 'Table_Columns.TxnQty_Column' | translate }}{{ 'Table_Columns.UOM_Column' | translate }}{{ 'Table_Columns.POCost_Column' | translate }}{{ 'Table_Columns.AvgCostWeighted_Column' | translate }}{{ 'Table_Columns.AvgCostFIFO_Column' | translate }}{{ 'Table_Columns.Price_Column' | translate }}{{ 'Table_Columns.TxnType_Column' | translate }}{{ 'Table_Columns.Serial_Column' | translate }}{{ 'Table_Columns.TxnBy_Column' | translate }}{{ 'Table_Columns.Customer_Column' | translate }}{{ 'Table_Columns.Receipt_Column' | translate }}{{ 'Table_Columns.RefNo_Column' | translate }}{{ 'Table_Columns.RefDetails_Column' | translate }}
\r\n
\r\n \r\n
    \r\n
  • {{ 'Table_Actions.Undo_Action' | translate }}
  • \r\n
\r\n
\r\n
{{item.id}}{{item.trandate| date:userdata.date_format}}{{item.from_bin_location}}{{item.to_bin_location}}{{item.txnqty}}{{item.uom}}{{item.pocost}}{{item.avgcost_weighted}}{{item.avgcost_fifo}}{{item.saleprice}}{{item.trantype}}{{item.serial}}{{item.tranby}}{{item.customer}}{{item.receipt}}{{item.refno}}{{item.ref_details}}
\r\n
\r\n
\r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbModal, NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { UomRatioComponent } from '../uom-ratio/uom-ratio.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-adduom',\r\n templateUrl: './adduom.component.html',\r\n styleUrls: ['./adduom.component.scss']\r\n})\r\nexport class AdduomComponent implements OnInit {\r\n @Input('uom') uom;\r\n itemList: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n master: any = {\r\n id: null,\r\n description: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n updatedate: null,\r\n active: true\r\n }\r\n issaved = false;\r\n private langChangeSubscription: Subscription; \r\n constructor(private modalService: NgbModal, private cdRef: ChangeDetectorRef, private toastr: NotificationService, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService, private purchaseservice: purchaseServices,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getProductUOMIndexValues()\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log('uom');\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n getProductUOMIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProductUOMIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n editMasterData(item) {\r\n this.master = {\r\n active: item.active,\r\n companyid: item.companyid,\r\n createby: item.createby,\r\n createdate: item.createdate,\r\n deleteby: item.deleteby,\r\n deletedate: item.deletedate,\r\n description: item.description,\r\n id: item.id,\r\n qty: item.qty,\r\n updateby: item.updateby,\r\n updatedate: item.updatedate\r\n }\r\n }\r\n deleteProductUOM(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProductUOM(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.issaved = true;\r\n this.getProductUOMIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting uom');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n postProductUOM() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.master.createby = this.userdata.email;\r\n } else {\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.master.updateby = this.userdata.email;\r\n }\r\n this.loader.start();\r\n this.service.postProductUOM(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.issaved = true;\r\n this.master.description = ''\r\n this.master.qty = ''\r\n this.getProductUOMIndexValues();\r\n } else {\r\n this.toastr.Error('Record not saved or updated');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post uom');\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.issaved ? 'save' : 'Modal Closed');\r\n }\r\n uomRatioModal(uom) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(UomRatioComponent, { ariaLabelledBy: 'modal-basic-title', size: 'md' });\r\n modalRef.componentInstance.uom = uom;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n

Product UOM

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n  \r\n \r\n
\r\n Save\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ID#DescriptionQtyActiveAction
{{item.id}}{{item.description}}{{item.qty}}{{item.active}}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { SerialComponent } from '../serial/serial.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-adjust-qty',\r\n templateUrl: './adjust-qty.component.html',\r\n styleUrls: ['./adjust-qty.component.scss']\r\n})\r\nexport class AdjustQtyComponent implements OnInit {\r\n @Input() fromParent;\r\n\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n ownItemProdBinList: any = [];\r\n actionType: any = []\r\n closeResult: string;\r\n serialList: any = [];\r\n isSaved = false;\r\n setReadonly = false;\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n // this.loader.start();\r\n this.service.getAdjustQty(this.fromParent.id).subscribe(res => {\r\n this.loader.stop();\r\n this.itemData = res;\r\n this.getProdBins();\r\n if (this.itemData.isserilized) {\r\n this.itemData.adjustqty = 1;\r\n }\r\n this.itemData.action = '';\r\n environment.production ? '' : console.log('adjust qty response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post adjust qty ', err);\r\n });\r\n this.service.getActionType().subscribe(res => {\r\n this.actionType = res;\r\n environment.production ? '' : console.log(' bin list data ', this.ownItemProdBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n getProdBins() {\r\n this.service.getProductBin(this.fromParent.id).subscribe(res => {\r\n this.ownItemProdBinList = res;\r\n this.itemData.frombinlocation = this.fromParent.frombinlocation ? this.fromParent.frombinlocation : null;\r\n if (this.fromParent.frombinlocation) {\r\n this.setReadonly = true;\r\n this.selectOwnBinLocation(this.fromParent.frombinlocation);\r\n }\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n selectOwnBinLocation(id) {\r\n environment.production ? '' : console.log(id);\r\n let obj = this.ownItemProdBinList.find(x => x.Value == id);\r\n this.itemData.total = obj.Value2;\r\n environment.production ? '' : console.log(obj);\r\n this.getSerial()\r\n }\r\n closemodal() {\r\n this.activeModal.close(this.isSaved ? 'save' : '');\r\n }\r\n getSerial() {\r\n this.service.getSerialListUsingBin(this.itemData.frombinlocation, this.fromParent.id).subscribe(res => {\r\n this.serialList = res;\r\n environment.production ? '' : console.log('serial list data ', this.serialList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n serial(id: any, frombinlocation: any, serial: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n postTransferRequest() {\r\n if (this.itemData.isserilized) {\r\n if (!this.itemData.serial || this.itemData.serial == undefined) {\r\n this.toastr.Error('Please select serial no')\r\n return false\r\n }\r\n }\r\n var data = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.fromParent.id,\r\n \"tiid\": this.itemData.tiid,\r\n \"module\": this.itemData.module,\r\n \"username\": this.userdata.username,\r\n \"createby\": this.userdata.email,\r\n \"tobinlocation\": this.itemData.frombinlocation,\r\n \"frombinlocation\": this.itemData.frombinlocation,\r\n \"qty\": this.itemData.qty,\r\n \"qtycount\": this.itemData.adjustqty ? this.itemData.adjustqty : 1,\r\n \"action\": this.itemData.action,\r\n \"msg\": this.itemData.msg,\r\n \"ttype\": 3,//it means adjust\r\n \"adjustqty\": this.itemData.adjustqty,\r\n \"refid\": this.itemData.refid,\r\n \"serial\": this.itemData.serial,\r\n \"ilc\": this.itemData.ilc,\r\n \"description\": this.itemData.description,\r\n \"isserilized\": this.itemData.isserilized,\r\n \"customerid\": this.itemData.customerid,\r\n \"adjusttype\": this.itemData.action,\r\n \"qty2pick\": this.itemData.qty2pick,\r\n \"uom\":this.itemData.uom\r\n }\r\n this.loader.start();\r\n this.service.postTransferHoldAdjust(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n this.closemodal()\r\n }\r\n environment.production ? '' : console.log('post product response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n open() {\r\n var modalRef = null;\r\n this.fromParent.binid = this.itemData.frombinlocation;\r\n modalRef = this.modalService.open(SerialComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = this.fromParent;\r\n modalRef.componentInstance.action = 'add';\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.getSerial();\r\n environment.production ? '' : console.log('closed');\r\n }, (reason) => {\r\n\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
Adjustment
\r\n \r\n
\r\n
\r\n
\r\n
\r\n ILC: Serilized\r\n \r\n
\r\n
\r\n Description\r\n \r\n
\r\n
\r\n Bin Location\r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n On-hand Qty\r\n \r\n
\r\n\r\n
\r\n Adjust Qty\r\n \r\n
\r\n
\r\n Action Type\r\n \r\n
\r\n
\r\n Serial- Provide serial for serilized item only \r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
\r\n
\r\n
\r\n Reason/Notes\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-binholddetails',\r\n templateUrl: './binholddetails.component.html',\r\n styleUrls: ['./binholddetails.component.scss']\r\n})\r\nexport class BinholddetailsComponent implements OnInit {\r\n\r\n @ViewChild('itemData') itemdata;\r\n\r\n //#region userdata block\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n totalRows: any = 0;\r\n listData: any = []\r\n //#endregion userdata block\r\n item: any;\r\n private langChangeSubscription: Subscription; \r\n constructor(\r\n private datePipe: DatePipe,\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal, private toaster: NotificationService, private service: InventoryServices, private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, ) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n }\r\n // InventoryItems/Get_Binholddetails\r\n ngOnInit(): void {\r\n this.item = this.itemdata;\r\n this.getProductBins()\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n \r\n getProductBins() {\r\n this.loader.start();\r\n this.service.getBinHoldDetails(this.item.binid, this.item.prodid).subscribe(res => {\r\n this.loader.stop();\r\n this.listData = res;\r\n if(this.listData.length==0){\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n refresh(item) {\r\n this.loader.start();\r\n this.service.unHoldQty(item.customerid, item.eid).subscribe(res => {\r\n this.loader.stop();\r\n this.toaster.Success('Transaction reverted');\r\n this.getProductBins();\r\n item.newcount = 0;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n}\r\n","\r\n
\r\n
Bin Hold Details\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
CustomerCountSerialNotesAction
{{item.name}}{{item.txnqty}}{{item.serial}}{{item.notes}}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport { BinholddetailsComponent } from '../binholddetails/binholddetails.component';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { SerialsListComponent } from '../serials/serials.component';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-binlocation',\r\n templateUrl: './binlocations.component.html',\r\n styleUrls: ['./binlocations.component.scss']\r\n})\r\nexport class BinlocationsListComponent implements OnInit {\r\n\r\n @ViewChild('id') id;\r\n @ViewChild('isSerilzed') isSerilzed;\r\n\r\n //#region userdata block\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n totalRows: any = 0;\r\n //#endregion userdata block\r\n totalOnhandQty: any = 0;\r\n totalMax: any = 0;\r\n totalMin: any = 0;\r\n totalAvail: any = 0;\r\n totalSold: any = 0\r\n totalOnHold: any = 0\r\n binLocations: any = [];\r\n Serilzed: boolean = false;\r\n searchText: any\r\n filteredItems: any = [];\r\n itemid: any;\r\n forsale = true;\r\n private langChangeSubscription: Subscription; \r\n constructor(\r\n private router: Router,\r\n private datePipe: DatePipe,\r\n private modalService: NgbModal,\r\n private service: InventoryServices,\r\n private activeModal: NgbActiveModal, private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n ) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n\r\n }\r\n\r\n gotoEdit(data: any) {\r\n const encrptData = btoa(data.id);\r\n const url = this.router.serializeUrl(this.router.createUrlTree(['/binlocation/addbinlocation'], { queryParams: { id: encrptData, action: 'edit' } }));\r\n window.open(url, '_blank');\r\n }\r\n\r\n openBinHoldDetail(item) {\r\n if (item.onhold == 0) {\r\n return;\r\n }\r\n var modalRef\r\n modalRef = this.modalService.open(BinholddetailsComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' })\r\n modalRef.componentInstance.itemdata = item;\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.getProductBins()\r\n // this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.getProductBins()\r\n });\r\n }\r\n serialModal(item) {\r\n var modalRef\r\n modalRef = this.modalService.open(SerialsListComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' })\r\n // modalRef.componentInstance.itemdata = item;\r\n modalRef.componentInstance.itemdata = {\r\n prodid: item.prodid,\r\n binid: item.binid,\r\n bincode: item.code,\r\n searchtxt: '',\r\n status: ''\r\n }\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.getProductBins();\r\n }, (reason) => {\r\n this.getProductBins();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.itemid = this.id;\r\n this.getProductBins();\r\n if (this.isSerilzed == 'YES') {\r\n this.Serilzed = true;\r\n } else {\r\n this.Serilzed = false;\r\n }\r\n console.log('isserialized', this.isSerilzed);\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n \r\n getProductBins() {\r\n this.loader.start();\r\n this.service.getProductBins(this.itemid, this.forsale ? 1 : 0).subscribe(res => {\r\n this.loader.stop();\r\n this.binLocations = res;\r\n this.totalOnhandQty = 0;\r\n this.totalMax = 0;\r\n this.totalMin = 0;\r\n this.totalAvail = 0;\r\n // this.totalSold = 0\r\n this.totalOnHold = 0\r\n this.binLocations.forEach(element => {\r\n if (element.active == true) {\r\n this.totalOnhandQty += element.cnt ? element.cnt : 0\r\n this.totalMax += element.maxqty ? element.maxqty : 0;\r\n this.totalMin += element.minqty ? element.minqty : 0;\r\n this.totalAvail += element.availableqty ? element.availableqty : 0;\r\n // this.totalSold += element.sold ? element.sold : 0;\r\n this.totalOnHold += element.onhold ? element.onhold : 0\r\n }\r\n element.binid = element.binid.toString();\r\n\r\n });\r\n this.filteredItems = this.binLocations;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n onSearchChange() {\r\n this.filterItems();\r\n }\r\n\r\n\r\n\r\n filterItems() {\r\n this.filteredItems = this.binLocations.filter(item => item.description.toLowerCase().includes(this.searchText.toLowerCase()));\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n\r\n","\r\n
\r\n
Bin Locations\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
BinDescriptionOn HandOn HoldAvailableInclude OnHandActive
{{item.code}}{{item.description}}\r\n {{item.cnt}}\r\n {{item.cnt}}\r\n {{item.onhold}}{{item.availableqty}}YesNoYesNo\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { I } from '@angular/cdk/keycodes';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { fakeAsync } from '@angular/core/testing';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { flash } from 'ng-animate';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { SerialComponent } from '../serial/serial.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-holdqty',\r\n templateUrl: './holdqty.component.html',\r\n styleUrls: ['./holdqty.component.scss']\r\n})\r\nexport class HoldqtyComponent implements OnInit {\r\n @Input() fromParent;\r\n @ViewChild('Customer') Customer;\r\n customerid_validation: any;\r\n keyword = 'Text';\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n customerList: any = [];\r\n ownItemProdBinList: any = []\r\n serialList: any = []\r\n closeResult: string;\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private commonService: CommonServices,\r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, \r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.service.getHoldQty(this.fromParent.id).subscribe(res => {\r\n this.loader.stop();\r\n this.itemData = res;\r\n if (this.itemData.isserilized) {\r\n this.itemData.holdqty = 1;\r\n }\r\n this.getOwnBinLocation();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n\r\n this.commonService.getCustomerList().subscribe(res => {\r\n this.customerList = res;\r\n }, err => {\r\n });\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n closemodal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n setFromBinLocation() {\r\n this.itemData.frombinlocation = this.fromParent.binid ? '' + this.fromParent.binid : null;\r\n this.itemData.frombinlocation ? this.selectOwnBinLocation(this.itemData.frombinlocation) : '';\r\n }\r\n selectOwnBinLocation(id) {\r\n environment.production ? '' : console.log(id);\r\n let obj = this.ownItemProdBinList.find(x => x.Value == id);\r\n this.itemData.qty = obj.Value2;\r\n environment.production ? '' : console.log(obj);\r\n this.getSerial();\r\n }\r\n getSerial() {\r\n if (!this.itemData.isserilized) {\r\n return;\r\n }\r\n this.service.getSerialListUsingBin(this.itemData.frombinlocation, this.fromParent.id,).subscribe(res => {\r\n this.serialList = res;\r\n environment.production ? '' : console.log('serial list data ', this.serialList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n selectCustomer(event) {\r\n this.itemData.customerid = event.Value;\r\n }\r\n getOwnBinLocation() {\r\n this.service.getProductBin(this.fromParent.id).subscribe(res => {\r\n this.ownItemProdBinList = res;\r\n this.setFromBinLocation();\r\n }, err => {\r\n });\r\n }\r\n onFocusedCustomer(event) {\r\n this.Customer.clear();\r\n }\r\n postHoldQty() {\r\n if (!this.itemData.customerid) {\r\n this.toastr.Error('Please select customer')\r\n return false;\r\n }\r\n if (this.itemData.isserilized) {\r\n if (!this.itemData.serial || this.itemData.serial == undefined) {\r\n this.toastr.Error('Please select serial no')\r\n return false\r\n }\r\n }\r\n if (this.itemData.qty <= 0) {\r\n this.toastr.Error('Qty should be greater than one')\r\n return false\r\n }\r\n var data = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.fromParent.id,\r\n \"tiid\": this.itemData.tiid,\r\n \"module\": this.itemData.module,\r\n \"username\": this.userdata.username,\r\n \"createby\": this.userdata.email,\r\n \"tobinlocation\": this.itemData.frombinlocation,\r\n \"frombinlocation\": this.itemData.frombinlocation,\r\n \"qty\": this.itemData.qty,\r\n \"qtycount\": this.itemData.holdqty ? this.itemData.holdqty : 1,\r\n \"action\": this.itemData.action,\r\n \"msg\": this.itemData.msg,\r\n \"ttype\": 6,//it means hold\r\n \"refid\": this.itemData.refid,\r\n \"serial\": this.itemData.serial,\r\n \"ilc\": this.itemData.ilc,\r\n \"description\": this.itemData.description,\r\n \"isserilized\": this.itemData.isserilized,\r\n \"customerid\": this.itemData.customerid,\r\n \"adjusttype\": this.itemData.adjusttype,\r\n \"qty2pick\": this.itemData.qty2pick,\r\n \"uom\": this.itemData.uom\r\n }\r\n\r\n this.loader.start();\r\n this.service.postTransferHoldAdjust(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n if (!this.itemData.isserilized) {\r\n this.getOwnBinLocation()\r\n this.closemodal()\r\n\r\n } else {\r\n this.getOwnBinLocation()\r\n this.itemData.frombinlocation = '';\r\n this.itemData.serial = '';\r\n this.itemData.qty = 0;\r\n this.Customer.clear()\r\n this.Customer.close()\r\n this.itemData.msg = ''\r\n\r\n }\r\n environment.production ? '' : console.log('post product response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n checkValidation(itemData) {\r\n if (itemData.holdqty > itemData.qty) {\r\n this.toastr.Error('Hold qty should be less than onhand qty');\r\n itemData.holdqty = 1;\r\n }\r\n if (itemData.holdqty <= 0) {\r\n this.toastr.Error('Please enter correct qty');\r\n itemData.holdqty = 1;\r\n }\r\n }\r\n open() {\r\n var modalRef = null;\r\n this.fromParent.binid = this.itemData.frombinlocation;\r\n modalRef = this.modalService.open(SerialComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = this.fromParent;\r\n modalRef.componentInstance.actoin = 'add';\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.getSerial();\r\n environment.production ? '' : console.log('closed');\r\n }, (reason) => {\r\n this.getSerial();\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
Hold QTY
\r\n \r\n
\r\n
\r\n
\r\n
\r\n ILC : Serilized\r\n \r\n
\r\n
\r\n Description\r\n \r\n
\r\n
\r\n From bin location\r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n Total\r\n \r\n
\r\n\r\n
\r\n Hold Qty\r\n \r\n
\r\n
\r\n Serial- Provide serial for serilized item only \r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n \r\n Add Serial\r\n \r\n
\r\n
\r\n
\r\n
\r\n Customer \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Reason/Notes\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\n\r\n@Component({\r\n selector: 'app-itemanalysis',\r\n templateUrl: './itemanalysis.component.html',\r\n styleUrls: ['./itemanalysis.component.scss']\r\n})\r\nexport class ItemanalysisComponent implements OnInit {\r\n @Input() fromParent;\r\n fdate: any;\r\n edate: any;\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n searchtext: any = '';\r\n itemDataList: any = [];\r\n fromdate: any;\r\n private langChangeSubscription: Subscription; \r\n todate: any;\r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private commonService: CommonServices,\r\n private loader: NgxUiLoaderService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.todate = moment().add(1, 'days').format('YYYY-MM-DD');\r\n this.fromdate = moment().subtract(180, 'days').format('YYYY-MM-DD');\r\n }\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.getItemAnylsisList()\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/purchase/inventoryreplenishment/itemanalysis/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n }\r\n\r\n refresh() {\r\n sessionStorage.removeItem(this.constructor.name + '-FILTER_LIST')\r\n this.searchtext = '';\r\n this.todate = moment().add(1, 'days').format('YYYY-MM-DD');\r\n this.fromdate = moment().subtract(180, 'days').format('YYYY-MM-DD');\r\n this.getItemAnylsisList()\r\n }\r\n getItemAnylsisList() {\r\n this.loader.start()\r\n this.service.getItemAnalyses(this.fromParent.id, this.datepipe.transform(new Date(this.fromdate), this.userdata.postdateformat), this.datepipe.transform(new Date(this.todate), this.userdata.postdateformat), this.searchtext).subscribe((res) => {\r\n this.loader.stop();\r\n this.itemDataList = res;\r\n this.itemDataList.forEach(item => {\r\n item.pocost = item.pocost ? Number(item.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.avgcost_weighted = item.avgcost_weighted ? Number(item.avgcost_weighted).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.avgcost_fifo = item.avgcost_fifo ? Number(item.avgcost_fifo).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.saleprice = item.saleprice ? Number(item.saleprice).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n environment.production ? '' : console.log('itemdata list response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post itemdata list ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
\r\n
{{ 'Page_title' | translate }}\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{ 'Index_table.TxnID_column' | translate }}{{ 'Index_table.TxnDate_column' | translate }}{{ 'Index_table.FromLocation_column' | translate }}{{ 'Index_table.ToLocation_column' | translate }}{{ 'Index_table.TxnQty_column' | translate }}{{ 'Index_table.UOM_column' | translate }}{{ 'Index_table.POCost_column' | translate }}{{ 'Index_table.AVGCostWeighted_column' | translate }}{{ 'Index_table.AVGCostFIFO_column' | translate }}{{ 'Index_table.Price_column' | translate }}{{ 'Index_table.TxnType_column' | translate }}{{ 'Index_table.Serial_column' | translate }}{{ 'Index_table.TxnBy_column' | translate }}{{ 'Index_table.Customer_column' | translate }}{{ 'Index_table.Receipt_column' | translate }}{{ 'Index_table.Refno_column' | translate }}{{ 'Index_table.RefDetail_column' | translate }}
{{item.id}}{{item.trandate| date:userdata.displaydatetimeformat}}{{item.from_bin_location}}{{item.to_bin_location}}{{item.txnqty}}{{item.uom}}{{item.pocost}}{{item.avgcost_weighted}}{{item.avgcost_fifo}}{{item.saleprice}}{{item.trantype}}{{item.serial}}{{item.tranby}}{{item.customer}}{{item.receipt}}{{item.refno}}{{item.ref_details}}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { reportServices } from 'src/app/components/reports/reports.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-itemcompatibility',\r\n templateUrl: './itemcompatibility.component.html',\r\n styleUrls: ['./itemcompatibility.component.scss']\r\n})\r\nexport class ItemCompatibilityComponent implements OnInit {\r\n @Input() fromParent;\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n searchtxt: any = '';\r\n deviceList: any = []\r\n itemData1: any = {}\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: reportServices,\r\n private datepipe: DatePipe,\r\n private commonService: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.getItemCompatibility()\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n getItemCompatibility() {\r\n this.loader.start()\r\n this.service.getItemCompatibility(this.fromParent.id, this.searchtxt).subscribe(res => {\r\n this.loader.stop();\r\n this.deviceList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n}\r\n","\r\n\t
\r\n\t\t
Item Compatibility\r\n\t\t
\r\n\t\t\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
NameModelSerialMakeManufacturerDescription
{{item.name}}{{item.model}}{{item.serial}}{{item.make}}{{item.manufacturer}}{{item.description}}
\r\n\t\t\t
\r\n\t\t
\r\n\t
\r\n\t\r\n
","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { SerialComponent } from '../serial/serial.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-product-bin',\r\n templateUrl: './product-bin.component.html',\r\n styleUrls: ['./product-bin.component.scss']\r\n})\r\nexport class ProductBinComponent implements OnInit {\r\n @Input() params;\r\n\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n ownItemProdBinList: any = [];\r\n actionType: any = []\r\n closeResult: string;\r\n serialList: any = [];\r\n isSaved = false;\r\n setReadonly = false;\r\n binData: any;\r\n isView = false;\r\n action: any;\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, \r\n \r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.service.getBinLocationList().subscribe(res => {\r\n this.binList = res;\r\n }, err => {\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.action = this.params.action;\r\n this.isView = this.action == 'view' ? true : false;\r\n this.setReadonly = this.action == 'add' ? false : true;\r\n this.binData = this.params;\r\n this.getBinLocationById();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/inventory/productitems/binlocations/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n getBinLocationById() {\r\n if (!this.binData.id) {\r\n this.binData.active = true;\r\n this.binData.minqty=0;\r\n this.binData.maxqty=0;\r\n this.binData.reorderpoint=0;\r\n this.binData.reorderqty=0;\r\n return;\r\n }\r\n this.loader.start();\r\n this.service.getBinLocationById(this.binData.id).subscribe(res => {\r\n this.loader.stop();\r\n this.binData = res;\r\n this.binData.binid = '' + this.binData.binid;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n closemodal() {\r\n this.activeModal.close(this.isSaved ? 'save' : '');\r\n }\r\n addBin() {\r\n this.binData.companyid = this.userdata.companyid;\r\n if (this.binData.id) {\r\n this.binData.createby = this.binData.createby;\r\n this.binData.createdate = this.datepipe.transform(this.binData.createdate, this.userdata.postdatetimeformat);\r\n this.binData.updateby = this.userdata.email;\r\n this.binData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n else {\r\n this.binData.prodid = this.binData.prodid;\r\n this.binData.createby = this.userdata.email;\r\n this.binData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.loader.start();\r\n this.service.postBinLocation(this.binData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n this.closemodal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product bin location ', err);\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
{{ 'Modal_Title' | translate }}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n {{ 'Modal_Inputs.BinLocation_Required' | translate }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\n\r\n@Component({\r\n selector: 'app-purchasehistory',\r\n templateUrl: './purchasehistory.component.html',\r\n styleUrls: ['./purchasehistory.component.scss']\r\n})\r\nexport class PurchasehistoryComponent implements OnInit {\r\n @Input() fromParent;\r\n itemData: any = {}\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n private langChangeSubscription: Subscription; \r\n searchtext: any = '';\r\n itemDataList: any = []\r\n itemData1: any = {}\r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private purchaseService: purchaseServices,\r\n private datepipe: DatePipe,\r\n private commonService: CommonServices,\r\n private loader: NgxUiLoaderService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.getPurchaseOrderList()\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/purchase/inventoryreplenishment/purchasehistory/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n\r\n getPurchaseOrderList() {\r\n this.loader.start()\r\n this.purchaseService.getPurchaseRequestItemHistory(this.fromParent.id, this.searchtext, '', '').subscribe(res => {\r\n this.loader.stop();\r\n this.itemDataList = res;\r\n environment.production ? '' : console.log('getProdOrders response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading getProdOrders ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n}\r\n","\r\n
\r\n\t
{{ 'Page_title' | translate }}\r\n\t
\r\n\t\r\n
\r\n
\r\n\t
\r\n\t\t\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t
\r\n\t
\r\n\t
\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
{{ 'Index_table.ILC_column' | translate }}{{ 'Index_table.Description_column' | translate }}{{ 'Index_table.PO#_column' | translate }}{{ 'Index_table.PODate_column' | translate }}{{ 'Index_table.DueDate_column' | translate }}{{ 'Index_table.Type_column' | translate }}{{ 'Index_table.POTitle_column' | translate }}{{ 'Index_table.POCost_column' | translate }}{{ 'Index_table.QtyOrdered_column' | translate }}{{ 'Index_table.QtyShipped_column' | translate }}{{ 'Index_table.QtyReceived_column' | translate }}{{ 'Index_table.Status_column' | translate }}
{{item.ilc}}{{item.description}}{{item.pon}}{{item.podate | date:'yyy-MM-dd'}}{{item.duedate | date:'yyy-MM-dd'}}{{item.potype}}{{item.potitle}}{{item.pocost | number:'1.2-2'}}{{item.qty}}{{item.shippedqty}}{{item.receivedqty}}{{item.status}}
\r\n\t\t
\r\n\t
\r\n
\r\n\r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-serial',\r\n templateUrl: './serial.component.html',\r\n styleUrls: ['./serial.component.scss']\r\n})\r\n\r\nexport class SerialComponent implements OnInit {\r\n serialdata: any = {\r\n status: '',\r\n pon: '',\r\n binid: ''\r\n }\r\n @Input() fromParent;\r\n @Input() editData;\r\n @Input() action;\r\n binList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n ownItemProdBinList: any = [];\r\n actionType: any = []\r\n closeResult: string;\r\n allBinList: any = [];\r\n statusList: any = [];\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.service.getBinLocationList().subscribe(res => {\r\n this.allBinList = res;\r\n this.serialdata.binid = this.fromParent.binid;\r\n environment.production ? '' : console.log(' bin list data ', this.allBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n this.getStatusList();\r\n }\r\n getStatusList() {\r\n this.commonService.getComboEnums('serialnostatus').subscribe(res => {\r\n this.statusList = res;\r\n environment.production ? '' : console.log(' status list data ', this.statusList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n });\r\n }\r\n ngOnInit(): void {\r\n setTimeout(() => {\r\n if (this.editData != null && this.editData != '') {\r\n this.serialdata = this.editData;\r\n this.serialdata.binid = this.editData.binid.toString();\r\n }\r\n }, 1000)\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/inventory/productitems/serials/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n closemodal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n postSerial() {\r\n var data;\r\n if (this.serialdata.id) {\r\n this.serialdata.createdate = this.serialdata.createdate ? this.datepipe.transform(new Date(this.serialdata.createdate), this.userdata.postdatetimeformat) : null;\r\n this.serialdata.updateby = this.userdata.email;\r\n this.serialdata.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n data = this.serialdata;\r\n } else {\r\n data = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"createby\": this.userdata.email,\r\n \"companyid\": this.userdata.companyid,\r\n \"lastupdated\": this.datepipe.transform(this.serialdata.lastupdated, this.userdata.postdatetimeformat),\r\n \"serial\": this.serialdata.serial,\r\n \"updateby\": this.serialdata.updateby,\r\n \"id\": this.serialdata.id,\r\n \"prodid\": this.fromParent.id,\r\n \"pon\": this.serialdata.pon,\r\n \"purchasefrom\": this.serialdata.purchasefrom,\r\n \"purchasedate\": this.datepipe.transform(this.serialdata.purchasedate, this.userdata.postdatetimeformat),\r\n \"manufacturer\": this.serialdata.manufacturer,\r\n \"saledate\": this.datepipe.transform(this.serialdata.saledate, this.userdata.postdatetimeformat),\r\n \"orderno\": this.serialdata.orderno,\r\n \"notes\": this.serialdata.notes,\r\n \"warrantyexpirydate\": this.datepipe.transform(this.serialdata.saledate, this.userdata.postdatetimeformat),\r\n \"status\": this.serialdata.status,\r\n \"binid\": this.serialdata.binid\r\n }\r\n }\r\n environment.production ? '' : console.log('post transfer datais', data);\r\n this.loader.start();\r\n this.service.postSerial(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closemodal()\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
{{'Modal_Title' | translate}}
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'Modal_Inputs.Serial_Required' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n {{'Modal_Inputs.BinLocation_Required' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{'Modal_Inputs.Status_Required' | translate}}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-serials',\r\n templateUrl: './serials.component.html',\r\n styleUrls: ['./serials.component.scss']\r\n})\r\nexport class SerialsListComponent implements OnInit {\r\n @ViewChild('itemdata') itemdata;\r\n serialList: any = []\r\n filteredItems: any = []\r\n searchText: any;\r\n userdata: any;\r\n appName = environment.APP_NAME;\r\n serialStatus: any = [];\r\n filter: any = {\r\n prodid: '',\r\n bincode: '',\r\n serialno: '',\r\n status: ''\r\n }\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal, private commonService: CommonServices, private service: InventoryServices, private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appName + 'userprofile'));\r\n commonService.getComboEnums('serialnostatus').subscribe(res => {\r\n this.serialStatus = res;\r\n })\r\n }\r\n ngOnInit(): void {\r\n this.filter = this.itemdata;\r\n this.getProductSerials();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n onSearchChange() {\r\n this.filterItems();\r\n }\r\n\r\n getProductSerials() {\r\n this.loader.start();\r\n this.service.getProductSerials(this.filter.prodid, this.filter.serialno ? this.filter.serialno : '', this.filter.bincode ? this.filter.bincode : '', this.filter.status ? this.filter.status : '').subscribe(res => {\r\n this.loader.stop();\r\n this.serialList = res;\r\n this.filteredItems = this.serialList\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n //#region Sorting Table Header\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n onSortClick(event,colum) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n\r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr(colum);\r\n }\r\n sortArr(colName: any) {\r\n this.filteredItems.sort((a, b) => {\r\n let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n \r\n if (!valueA && !valueB) {\r\n return 0;\r\n }\r\n if (!valueA) {\r\n return -this.sortDir;\r\n }\r\n if (!valueB) {\r\n return this.sortDir;\r\n }\r\n \r\n if (valueA > valueB) {\r\n return this.sortDir;\r\n }\r\n if (valueA < valueB) {\r\n return -this.sortDir;\r\n }\r\n return 0;\r\n });\r\n }\r\n //#endregion Sorting Table Heade\r\n\r\n filterItems() {\r\n this.filteredItems = this.serialList.filter(item => item.serial.toLowerCase().includes(this.searchText.toLowerCase()));\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n}","\r\n
\r\n
Serials\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
SerialBINStatusLast Updated
{{item.serial}} {{item.binlocation}} {{item.status}}{{item.lastupdated | date:userdata.displaydatetimeformat}}
\r\n
\r\n
\r\n \r\n
","import { DatePipe } from '@angular/common';\r\nimport { AfterViewInit, Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { ProductListComponent } from '../../products.component';\r\nimport { SerialComponent } from '../serial/serial.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-transfer-qty',\r\n templateUrl: './transfer-qty.component.html',\r\n styleUrls: ['./transfer-qty.component.scss']\r\n})\r\nexport class TransferQtyComponent implements OnInit {\r\n @Input() fromParent;\r\n itemData: any = {}\r\n allBinList: any = []\r\n ownItemProdBinList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n closeResult: string;\r\n serial: any = {}\r\n serialList: any = [];\r\n filteredBins: any = [];\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n //get own item prod bin\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.service.getTransferQty(this.fromParent.id).subscribe(res => {\r\n this.loader.stop();\r\n this.itemData = res;\r\n if (this.itemData.isserilized) {\r\n this.itemData.qtycount = 1;\r\n }\r\n this.itemData.tobinlocation = null;\r\n this.itemData.serial = null;\r\n this.getOwnBinLocation();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n this.getBinLocation();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n\t} \r\n setFromBinLocation() {\r\n this.itemData.frombinlocation = this.fromParent.binid ? '' + this.fromParent.binid : null;\r\n this.itemData.frombinlocation ? this.selectOwnBinLocation(this.itemData.frombinlocation) : '';\r\n }\r\n\r\n getOwnBinLocation() {\r\n this.service.getProductBin(this.fromParent.id).subscribe(res => {\r\n this.ownItemProdBinList = res;\r\n this.setFromBinLocation();\r\n environment.production ? '' : console.log(' bin list data ', this.ownItemProdBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n getBinLocation() {\r\n this.service.getBinLocationList().subscribe(res => {\r\n this.allBinList = res;\r\n environment.production ? '' : console.log(' bin list data ', this.allBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n filterBinLocations() {\r\n this.filteredBins = this.allBinList.filter(item => item.Value !== this.itemData.frombinlocation);\r\n }\r\n getSerial() {\r\n if (!this.itemData.frombinlocation || !this.itemData.isserilized) {\r\n return;\r\n }\r\n this.service.getSerialListUsingBin(this.itemData.frombinlocation, this.fromParent.id).subscribe(res => {\r\n this.serialList = res;\r\n environment.production ? '' : console.log('serial list data ', this.serialList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n closemodal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n selectOwnBinLocation(id) {\r\n environment.production ? '' : console.log(id);\r\n let obj = this.ownItemProdBinList.find(x => x.Value == id);\r\n this.itemData.availableqty = obj.Value2;\r\n this.getSerial();\r\n this.filterBinLocations();\r\n }\r\n checkQty() {\r\n if (this.itemData.qtycount > this.itemData.availableqty) {\r\n this.toastr.Error('Transfer qty should not be greater than onhand qty.')\r\n this.itemData.qtycount = 0;\r\n }\r\n }\r\n\r\n postTransferRequest() {\r\n if (this.itemData.isserilized) {\r\n if (!this.itemData.serial || this.itemData.serial == undefined) {\r\n this.toastr.Error('Please select serial#')\r\n return false\r\n }\r\n }\r\n if (this.itemData.availableqty == 0) {\r\n this.toastr.Error('Transfer qty should not be greater than onhand qty.')\r\n return false\r\n }\r\n if (this.itemData.qtycount == 0) {\r\n return false\r\n }\r\n var data = {\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.fromParent.id,\r\n \"tiid\": this.itemData.tiid,\r\n \"module\": this.itemData.module,\r\n \"username\": this.userdata.username,\r\n \"createby\": this.userdata.email,\r\n \"tobinlocation\": this.itemData.tobinlocation,\r\n \"frombinlocation\": this.itemData.frombinlocation,\r\n \"qty\": this.itemData.qty,\r\n \"qtycount\": this.itemData.qtycount ? this.itemData.qtycount : 1,\r\n \"action\": this.itemData.action,\r\n \"msg\": this.itemData.msg,\r\n \"ttype\": 4,//it means transfer\r\n \"refid\": this.itemData.refid,\r\n \"serial\": this.itemData.serial,\r\n \"ilc\": this.itemData.ilc,\r\n \"description\": this.itemData.description,\r\n \"isserilized\": this.itemData.isserilized,\r\n \"customerid\": this.itemData.customerid,\r\n \"adjusttype\": this.itemData.adjusttype,\r\n \"qty2pick\": this.itemData.qty2pick,\r\n \"uom\": this.itemData.uom,\r\n }\r\n this.loader.start();\r\n this.service.postTransferHoldAdjust(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n if (!this.itemData.isserilized) {\r\n this.getOwnBinLocation()\r\n this.closemodal()\r\n\r\n } else {\r\n this.getOwnBinLocation()\r\n this.itemData.frombinlocation = '';\r\n this.itemData.tobinlocation = '';\r\n this.itemData.serial = '';\r\n this.itemData.availableqty = 0\r\n }\r\n environment.production ? '' : console.log('post product response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n\r\n }\r\n updateQtyOnLocation() {\r\n\r\n }\r\n\r\n\r\n open() {\r\n var modalRef = null;\r\n this.fromParent.binid = this.itemData.frombinlocation;\r\n modalRef = this.modalService.open(SerialComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = this.fromParent;\r\n modalRef.componentInstance.actoin = 'add';\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.getSerial();\r\n environment.production ? '' : console.log('closed');\r\n }, (reason) => {\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
Transfer QTY
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n : Serilized\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n Please select bin\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n Please select bin\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n \r\n Add Serial\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../../inventory.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\n\r\n@Component({\r\n selector: 'app-transferserials',\r\n templateUrl: './transferserials.component.html',\r\n styleUrls: ['./transferserials.component.scss']\r\n})\r\nexport class TransferserialsComponent implements OnInit {\r\n @Input() fromParent;\r\n itemData: any = {}\r\n allBinList: any = []\r\n ownItemProdBinList: any = []\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n closeResult: string;\r\n serial: any = {}\r\n serialList: any = [];\r\n selectall: any = false;\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal,\r\n private service: InventoryServices,\r\n private datepipe: DatePipe,\r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n //get own item prod bin\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('item data', this.fromParent);\r\n this.service.getTransferQty(this.fromParent.id).subscribe(res => {\r\n this.loader.stop();\r\n this.itemData = res;\r\n if (this.itemData.isserilized) {\r\n this.itemData.qtycount = 1;\r\n }\r\n this.itemData.frombinlocation = null;\r\n this.itemData.tobinlocation = null;\r\n this.itemData.serial = ''\r\n environment.production ? '' : console.log('transfer response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n this.getOwnBinLocation();\r\n this.getBinLocation();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n getOwnBinLocation() {\r\n this.service.getProductBin(this.fromParent.id).subscribe(res => {\r\n this.ownItemProdBinList = res;\r\n environment.production ? '' : console.log(' bin list data ', this.ownItemProdBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n getBinLocation() {\r\n this.service.getBinLocationList().subscribe(res => {\r\n this.allBinList = res;\r\n environment.production ? '' : console.log(' bin list data ', this.allBinList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n onAllChange() {\r\n if (this.selectall) {\r\n this.serialList.forEach(srlno => {\r\n srlno.checked = true;\r\n })\r\n } else {\r\n this.serialList.forEach(srlno => {\r\n srlno.checked = false;\r\n })\r\n }\r\n }\r\n onChange() {\r\n this.selectall = true;\r\n this.serialList.forEach(srlno => {\r\n if (!srlno.checked) {\r\n this.selectall = false;\r\n }\r\n })\r\n }\r\n getSerial() {\r\n this.service.getSerialListUsingBin(this.itemData.frombinlocation, this.fromParent.id).subscribe(res => {\r\n this.serialList = res;\r\n this.serialList.forEach(srlno => {\r\n srlno.checked = false;\r\n })\r\n environment.production ? '' : console.log('serial list data ', this.serialList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n closemodal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n selectOwnBinLocation(id) {\r\n environment.production ? '' : console.log(id);\r\n let obj = this.ownItemProdBinList.find(x => x.Value == id);\r\n this.itemData.availableqty = obj.Value2;\r\n this.getSerial();\r\n environment.production ? '' : console.log(obj);\r\n }\r\n checkQty() {\r\n if (this.itemData.qtycount > this.itemData.availableqty) {\r\n this.toastr.Error('Transfer qty should not be greater than onhand qty.')\r\n this.itemData.qtycount = 0;\r\n }\r\n }\r\n\r\n postTransferRequest() {\r\n var serials = [];\r\n this.serialList.forEach(srlno => {\r\n if (srlno.checked) {\r\n serials.push(srlno.Value1);\r\n }\r\n })\r\n if (serials.length == 0) {\r\n this.toastr.Error('Please select serial no')\r\n return false\r\n }\r\n var data = {\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.fromParent.id,\r\n \"username\": this.userdata.username,\r\n \"tobinlocation\": this.itemData.tobinlocation,\r\n \"frombinlocation\": this.itemData.frombinlocation,\r\n \"action\": this.itemData.action,\r\n \"msg\": this.itemData.msg,\r\n \"ttype\": 4,//it means transfer\r\n \"ilc\": this.itemData.ilc,\r\n \"description\": this.itemData.description,\r\n \"isserilized\": this.itemData.isserilized,\r\n \"serialIds\": serials,\r\n }\r\n this.loader.start();\r\n this.service.postProdMoveSerials(data).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.closemodal();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
Transfer Serials
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n Please select bin\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
\r\n
\r\n Please select bin\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Serial No
\r\n \r\n {{item.Value}}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { purchaseServices } from 'src/app/components/purchase/purchase.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-uom-ratio',\r\n templateUrl: './uom-ratio.component.html',\r\n styleUrls: ['./uom-ratio.component.scss']\r\n})\r\nexport class UomRatioComponent implements OnInit {\r\n @Input('uom') uom;\r\n itemList: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n master: any = {\r\n id: null,\r\n from_uom: null,\r\n to_uom: null,\r\n ratio: 0,\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n updatedate: null,\r\n active: true\r\n }\r\n uomList: any = [];\r\n produom: any;\r\n prodUOMList: any = [];\r\n private langChangeSubscription: Subscription; \r\n constructor(private modalService: NgbModal, private cdRef: ChangeDetectorRef, private toastr: NotificationService, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService, private commoanService: CommonServices,\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commoanService.getProdUom().subscribe(res => {\r\n this.uomList = res;\r\n }, err => {\r\n });\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n this.produom = this.uom;\r\n this.master.from_uom = this.produom.description;\r\n this.getProductUOMIndexValues();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n getProductUOMIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProductUOMRatio(this.produom.id).subscribe(res => {\r\n this.loader.stop();\r\n this.prodUOMList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n editMasterData(item) {\r\n this.loader.start();\r\n this.service.getProductUOMRatioByID(item.id).subscribe(res => {\r\n this.loader.stop();\r\n this.master = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n deleteProductUOM(item) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProductUOMRatio(item.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getProductUOMIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting product uom ratio');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n postProductUOM() {\r\n if (this.master.id) {\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.master.updateby = this.userdata.email;\r\n } else {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.master.createby = this.userdata.email;\r\n this.master.from_uom_id = this.produom.id;\r\n }\r\n this.loader.start();\r\n this.service.postProductUOMRatio(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.master.id = null;\r\n this.master.ratio = 0;\r\n this.master.to_uom = null;\r\n this.getProductUOMIndexValues();\r\n } else {\r\n this.toastr.Error('Record not saved or updated');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post product uom ratio');\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n}\r\n","\r\n
\r\n

UOM Ratio

\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Select from UOM\r\n {{item.Text}}\r\n \r\n
\r\n
\r\n \r\n \r\n Select to UOM\r\n {{item.Text}}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
From UOMTo UOMRatioAction
{{item.from_uom}}{{item.to_uom}}{{item.ratio}}\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ProductListComponent } from './products.component';\r\nimport { AddProductComponent } from './add-product/add-product.component';\r\n\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n children: [\r\n {\r\n path: '',\r\n component: ProductListComponent,\r\n data: {\r\n title: 'Products',\r\n breadcrumb: 'Product List'\r\n }\r\n },\r\n {\r\n path: 'add-product',\r\n component: AddProductComponent,\r\n data: {\r\n title: 'Product #',\r\n breadcrumb: 'Add Product'\r\n }\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ProductsRoutingModule { }\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ModalDismissReasons, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { ExcelService } from 'src/app/shared/service/excel.service';\r\nimport { ExportDataServices } from 'src/app/shared/service/exportdata.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NavService } from 'src/app/shared/service/nav.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { categoryDB } from '../../../shared/tables/category';\r\nimport { DocumentsComponent } from '../../modal/documents/documents.component';\r\nimport { PrintlabelComponent } from '../../modal/printlabel/printlabel.component';\r\nimport { InventoryServices } from '../inventory.service';\r\nimport { AdjustQtyComponent } from './modal/adjust-qty/adjust-qty.component';\r\nimport { BinlocationsListComponent } from './modal/binlocations/binlocations.component';\r\nimport { HoldqtyComponent } from './modal/holdqty/holdqty.component';\r\nimport { ItemanalysisComponent } from './modal/itemanalysis/itemanalysis.component';\r\nimport { ItemCompatibilityComponent } from './modal/itemcompatibility/itemcompatibility.component';\r\nimport { PurchasehistoryComponent } from './modal/purchasehistory/purchasehistory.component';\r\nimport { SerialsListComponent } from './modal/serials/serials.component';\r\nimport { TransferQtyComponent } from './modal/transfer-qty/transfer-qty.component';\r\nimport { TransferserialsComponent } from './modal/transferserials/transferserials.component';\r\n\r\n@Component({\r\n selector: 'app-product-list',\r\n templateUrl: './products.component.html',\r\n styleUrls: ['./products.component.scss'],\r\n})\r\nexport class ProductListComponent implements OnInit {\r\n //#region userdata block\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n totalRows: any = 0;\r\n totalPages: any = 0;\r\n currentPage: any = 1;\r\n //#endregion userdata block\r\n\r\n public isShow: boolean = false;\r\n content: any;\r\n isCollapsed = true;\r\n filter: any = {\r\n name: '',\r\n searchtxt: '',\r\n status: '',\r\n serilized: '',\r\n supplier: '',\r\n deptid: '',\r\n type: '',\r\n tpsync: '',\r\n desc: '',\r\n category: '',\r\n };\r\n\r\n editSetDept: any;\r\n keyword: any = 'Text';\r\n public closeResult: string;\r\n public categories = [];\r\n\r\n products: any;\r\n public arrowicon: boolean = true;\r\n statusList: any = [];\r\n prodList: any = [];\r\n\r\n deptList: any = [];\r\n categoryList: any = [];\r\n formula: string = 'Product List';\r\n reportColumnList: any = [];\r\n\r\n selectedProductstatus: any = [];\r\n dropdownSettings: IDropdownSettings;\r\n stringData: string;\r\n hideRightNav: boolean = true;\r\n hideLeftNav: boolean = false;\r\n productType: any = [];\r\n componentName: any;\r\n menuData: any;\r\n menuActions: any;\r\n private langChangeSubscription: Subscription;\r\n translatedTitle: any;\r\n constructor(\r\n private modalService: NgbModal,\r\n private datetime: DatePipe,\r\n private router: Router,\r\n private service: InventoryServices,\r\n private loader: NgxUiLoaderService,\r\n private cd: ChangeDetectorRef,\r\n private toaster: NotificationService,\r\n private excel: ExcelService,\r\n private elementRef: ElementRef,\r\n private toastr: NotificationService,\r\n private commonservice: CommonServices,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private exportData: ExportDataServices,\r\n private http: HttpClient\r\n ) {\r\n this.menuData = JSON.parse(localStorage.getItem('EzyBooks-menu'));\r\n setTimeout(() => {\r\n this.menuData.forEach((data) => {\r\n if (data.title.toLowerCase() == 'inventory') {\r\n var module = data;\r\n module.children.forEach((data) => {\r\n if (data.title.toLowerCase() == 'product items') {\r\n this.menuActions = data.menuActions;\r\n }\r\n });\r\n }\r\n });\r\n //\r\n }, 1000);\r\n\r\n //#region userdata block\r\n this.userdata = JSON.parse(\r\n localStorage.getItem(this.appname + 'userprofile')\r\n );\r\n this.format = this.userdata.date_format;\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = this.userdata.date_format.toUpperCase();\r\n //#endregion userdata block\r\n\r\n this.categories = categoryDB.category;\r\n\r\n var d = new Date();\r\n // alert(d.getTimezoneOffset());\r\n this.commonservice.getComboEnums('prodstatus').subscribe(\r\n (res) => {\r\n this.statusList = res;\r\n this.setStatus();\r\n environment.production ? '' : console.log('statusList ', res);\r\n },\r\n (err) => {\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading statusList data', err);\r\n }\r\n );\r\n // var date_time_format = \"dd-MM-yyyy\"\r\n this.componentName = this.elementRef.nativeElement.tagName.toLowerCase();\r\n\r\n this.filter.enddate = this.datetime.transform(new Date(), 'yyyy-MM-dd');\r\n this.filter.fromdate = this.userdata.fromdate;\r\n environment.production\r\n ? ''\r\n : console.log('from date', this.filter.fromdate);\r\n environment.production ? '' : console.log('end date', this.filter.enddate);\r\n\r\n var buttons = {\r\n foo: 'bar',\r\n fiz: 'buz',\r\n };\r\n\r\n for (var property in buttons) {\r\n environment.production ? '' : console.log(property); // Outputs: foo, fiz or fiz, foo\r\n }\r\n\r\n this.commonservice.getDepartmentList(false).subscribe(\r\n (res) => {\r\n this.deptList = res;\r\n const newFirstAllElement = { Text: 'All', Value: '' };\r\n this.deptList = [newFirstAllElement].concat(this.deptList);\r\n environment.production ? '' : console.log('department data ', res);\r\n },\r\n (err) => {\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading department data', err);\r\n }\r\n );\r\n this.commonservice.getComboEnums('prodtype').subscribe(\r\n (res) => {\r\n this.productType = res;\r\n environment.production ? '' : console.log('product type ', res);\r\n },\r\n (err) => {\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading product type data', err);\r\n }\r\n );\r\n //setting for multiselect droddown.\r\n this.dropdownSettings = {\r\n singleSelection: false,\r\n idField: 'stringValue',\r\n textField: 'Text',\r\n selectAllText: 'Select All',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 2,\r\n allowSearchFilter: true,\r\n };\r\n }\r\n gotoEdit(data) {\r\n const encrptData = btoa(data.id);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'edit' },\r\n replaceUrl: true,\r\n });\r\n return;\r\n }\r\n\r\n sortDir = 1; //1= 'ASE' -1= DSC\r\n onSortClick(event, column) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n\r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr(column);\r\n }\r\n\r\n sortArr(colName: any) {\r\n this.products.sort((a, b) => {\r\n let valueA =\r\n a[colName] && typeof a[colName] === 'string'\r\n ? a[colName].toLowerCase()\r\n : a[colName];\r\n let valueB =\r\n b[colName] && typeof b[colName] === 'string'\r\n ? b[colName].toLowerCase()\r\n : b[colName];\r\n\r\n if (!valueA && !valueB) {\r\n return 0;\r\n }\r\n if (!valueA) {\r\n return -this.sortDir;\r\n }\r\n const numericColumns = ['retailprice', 'pocost', 'landedcost'];\r\n if (numericColumns.includes(colName)) {\r\n valueA = valueA ? parseFloat(valueA) : 0;\r\n valueB = valueB ? parseFloat(valueB) : 0;\r\n }\r\n if (!valueB) {\r\n return this.sortDir;\r\n }\r\n\r\n if (valueA > valueB) {\r\n return this.sortDir;\r\n }\r\n if (valueA < valueB) {\r\n return -this.sortDir;\r\n }\r\n return 0;\r\n });\r\n }\r\n\r\n clicked(actionname, data) {\r\n var modalRef = null;\r\n if (actionname.toLowerCase() == 'view') {\r\n const encrptData = btoa(data.id); // encode a string\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n //set edit data to header component\r\n\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'view' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'edit') {\r\n const encrptData = btoa(data.id); // encode a string\r\n //set edit data to header component\r\n\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'edit' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'clone') {\r\n const encrptData = btoa(data.id); // encode a string\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'add' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'transfer') {\r\n modalRef = this.modalService.open(TransferQtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.gotoPage('first');\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'hold') {\r\n modalRef = this.modalService.open(HoldqtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.gotoPage('first');\r\n },\r\n (reason) => {\r\n this.gotoPage('first');\r\n }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'adjust') {\r\n modalRef = this.modalService.open(AdjustQtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then(\r\n (result) => {\r\n if (result == 'save') {\r\n this.gotoPage('first');\r\n }\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'item analysis') {\r\n modalRef = this.modalService.open(ItemanalysisComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'purchase history') {\r\n modalRef = this.modalService.open(PurchasehistoryComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'item compatibility') {\r\n modalRef = this.modalService.open(ItemCompatibilityComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n\r\n if (actionname.toLowerCase() == 'print main ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = data.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '0';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'print manufacturer ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = data.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '2';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'print alt ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = data.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '1';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'document manager') {\r\n modalRef = this.modalService.open(DocumentsComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.refno = data.ilc;\r\n modalRef.componentInstance.id = data.id;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'delete') {\r\n this.deleteProduct(data.id);\r\n }\r\n\r\n if (actionname.toLowerCase() == 'move serials') {\r\n modalRef = this.modalService.open(TransferserialsComponent, {\r\n size: 'md',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n\r\n environment.production ? '' : console.log(actionname);\r\n }\r\n\r\n onorderclick(data) {\r\n var modalRef = this.modalService.open(PurchasehistoryComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.fromParent = data;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n\r\n deleteProduct(id) {\r\n Swal.fire({\r\n title: 'Do you want to delete product?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No',\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProduct(id).subscribe(\r\n (res) => {\r\n environment.production ? '' : console.log('delete response ', res);\r\n this.loader.stop();\r\n this.toaster.Success('Product Deleted!');\r\n this.gotoPage('first');\r\n },\r\n (err) => {\r\n this.loader.stop();\r\n environment.production\r\n ? ''\r\n : console.log('Error : While delete product ', err);\r\n }\r\n );\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n });\r\n }\r\n\r\n coloumclick(data) {\r\n setTimeout(() => {\r\n var modalRef = this.modalService.open(BinlocationsListComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.id = data.id;\r\n modalRef.componentInstance.isSerilzed = data.isserilized;\r\n modalRef.result\r\n .then((result) => {\r\n this.gotoPage('first');\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n this.gotoPage('first');\r\n\r\n environment.production ? '' : console.log(error);\r\n });\r\n }, 500);\r\n }\r\n\r\n onserialclick(data) {\r\n var modalRef = this.modalService.open(SerialsListComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.itemdata = {\r\n prodid: data.id,\r\n bincode: '',\r\n serialno: '',\r\n status: 'availableforsale',\r\n };\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n export(type) {\r\n this.filter.typename = 'InventoryIndex';\r\n this.filter.file_type = type;\r\n this.filter.pg = this.currentPage;\r\n this.filter.from = \"index\";\r\n this.exportData.params = this.filter;\r\n this.exportData.export();\r\n }\r\n getCatData(deptid) {\r\n this.loader.start();\r\n this.commonservice.getCategory(Number(deptid), false).subscribe(\r\n (res) => {\r\n this.categoryList = res;\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Category data ', res);\r\n },\r\n (err) => {\r\n this.loader.stop();\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading category data', err);\r\n }\r\n );\r\n }\r\n goToAdd() {\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: null, action: 'add' },\r\n replaceUrl: true,\r\n });\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n clickEvent() {\r\n this.arrowicon = !this.arrowicon;\r\n }\r\n\r\n inputDeptCleared() {\r\n this.filter.deptid = '';\r\n this.filter.category = '';\r\n }\r\n\r\n open(content) {\r\n this.modalService\r\n .open(content, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n })\r\n .result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n }\r\n );\r\n }\r\n\r\n private getDismissReason(reason: any): string {\r\n if (reason === ModalDismissReasons.ESC) {\r\n return 'by pressing ESC';\r\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\r\n return 'by clicking on a backdrop';\r\n } else {\r\n return `with: ${reason}`;\r\n }\r\n }\r\n\r\n refresh() {\r\n sessionStorage.removeItem(this.componentName + '-FILTER_LIST');\r\n this.filter.searchtxt = '';\r\n this.filter.desc = '';\r\n this.filter.type = '';\r\n this.filter.category = '';\r\n this.filter.deptid = '';\r\n this.selectedProductstatus = '';\r\n this.filter.status = '';\r\n this.filter.serilized = '';\r\n this.gotoPage('first');\r\n }\r\n\r\n ngOnInit() {\r\n if (sessionStorage.getItem(this.componentName + '-FILTER_LIST')) {\r\n this.filter = JSON.parse(\r\n sessionStorage.getItem(this.componentName + '-FILTER_LIST')\r\n );\r\n }\r\n //#region Grid Settings\r\n\r\n\r\n var editDataForHeader = '';\r\n this.commonservice.headerEditItemData.next(editDataForHeader); //end '\r\n //#region Grid Settings\r\n this.getItems();\r\n this.cd.detectChanges();\r\n var editDataForHeader = '';\r\n this.commonservice.headerEditItemData.next(editDataForHeader); //end '\r\n this.langChangeSubscription = this.languageService\r\n .getCurrentLanguage()\r\n .subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/inventory/productitems/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang); \r\n this.updatePageTitle();\r\n });\r\n }\r\n\r\n private updatePageTitle(): void {\r\n\t\tthis.translatedTitle = this.translate.instant('Page_Title'); // Translate the title key\r\n\t\tthis.commonservice.headerTitleItemData.next(this.translatedTitle);\r\n\t\tconsole.log(this.translatedTitle);\r\n }\r\n\r\n selectSupplier(item) {\r\n this.filter.supplier = parseFloat(item.Value);\r\n this.gotoPage('first');\r\n }\r\n selectDepartment(item) {\r\n this.getCatData(this.filter.deptid);\r\n this.gotoPage('first');\r\n }\r\n hideNavButtons(isright, isleft) {\r\n this.hideRightNav = isright;\r\n this.hideLeftNav = isleft;\r\n }\r\n gotoPage(page) {\r\n // this.hideNav = true\r\n if (page == 'first') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else if (page == 'prev') {\r\n if (this.currentPage == '2') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else {\r\n this.currentPage--;\r\n this.hideNavButtons(false, false);\r\n }\r\n } else if (page == 'next') {\r\n if (this.currentPage == this.totalPages - 1) {\r\n this.currentPage = this.totalPages;\r\n this.hideNavButtons(false, true);\r\n } else {\r\n this.currentPage++;\r\n this.hideNavButtons(false, false);\r\n }\r\n } else if (page == 'last') {\r\n this.currentPage = this.totalPages;\r\n this.hideRightNav = false;\r\n this.hideLeftNav = true;\r\n }\r\n this.getItems();\r\n }\r\n getItems() {\r\n this.loader.start();\r\n this.service\r\n .getInventoryItems(\r\n this.currentPage,\r\n this.filter.serilized,\r\n this.filter.searchtxt,\r\n this.filter.supplier,\r\n this.filter.category,\r\n this.filter.deptid,\r\n this.filter.status,\r\n this.filter.tpsync\r\n )\r\n .subscribe(\r\n (res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.prodList = res.data;\r\n this.totalPages = res.total_pages;\r\n }\r\n this.prodList.forEach((element) => {\r\n if (element.landedcost != null && element.landedcost != 0) {\r\n element.landedcost = element.landedcost.toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n } else {\r\n element.landedcost = parseFloat('0').toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n }\r\n if (element.retailprice != null && element.retailprice != 0) {\r\n element.retailprice = element.retailprice.toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n } else {\r\n element.retailprice = parseFloat('0').toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n }\r\n\r\n if (element.pocost != null && element.pocost != 0) {\r\n element.pocost = element.pocost.toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n } else {\r\n element.pocost = parseFloat('0').toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n }\r\n if (element.avgcost != null && element.avgcost != 0) {\r\n element.avgcost = element.avgcost.toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n } else {\r\n element.avgcost = parseFloat('0').toFixed(\r\n this.userdata.decimals_allowed\r\n );\r\n }\r\n if (element.pic == null) {\r\n element.filename = '/assets/images/no-image.png';\r\n } else {\r\n element.filename =\r\n environment.DOC_URL +\r\n '/' +\r\n this.userdata.companyid +\r\n '/' +\r\n element.pic;\r\n }\r\n element.prefer_to_produce = element.prefer_to_produce\r\n ? 'Yes'\r\n : 'No';\r\n element.prefer_to_purchase = element.prefer_to_purchase\r\n ? 'Yes'\r\n : 'No';\r\n });\r\n\r\n this.products = this.prodList.reverse();\r\n //#region Get total rows\r\n this.totalRows = this.prodList.length;\r\n //#region Get total rows\r\n },\r\n (err) => {\r\n this.loader.stop();\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading product list ', err);\r\n }\r\n );\r\n }\r\n\r\n onCustomAction(event): void {\r\n switch (event.action) {\r\n case 'view':\r\n this.modalService.open(this.content, {\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n this.printDiv('PrintTable');\r\n break;\r\n case 'edit':\r\n environment.production ? '' : console.log('edit', event);\r\n this.router.navigate(['/products/physical/add-product']);\r\n this.service.productDtForEdit = event.data;\r\n\r\n break;\r\n case 'delete':\r\n alert('delete');\r\n break;\r\n }\r\n }\r\n printDiv(divName) {\r\n var printContents = document.getElementById(divName).innerHTML;\r\n const originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n window.location.reload();\r\n }\r\n setStatus() {\r\n var arrayData = [];\r\n this.selectedProductstatus = [];\r\n if (this.filter.status) {\r\n environment.production\r\n ? ''\r\n : console.log('status list', this.filter.status.split());\r\n arrayData = this.filter.status.split(',');\r\n }\r\n if (arrayData.length == this.statusList.length) {\r\n this.selectedProductstatus = this.statusList;\r\n } else {\r\n arrayData.forEach((element) => {\r\n this.statusList.forEach((mainStatus) => {\r\n if (element == mainStatus.stringValue) {\r\n this.selectedProductstatus.push(mainStatus);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.langChangeSubscription) {\r\n\t\t\tthis.langChangeSubscription.unsubscribe();\r\n\t\t }\r\n sessionStorage.setItem(\r\n this.componentName + '-FILTER_LIST',\r\n JSON.stringify(this.filter)\r\n );\r\n this.modalService.dismissAll();\r\n }\r\n //#region NgAutocomplete\r\n onItemSelect(item: any) {\r\n let arrayData = [];\r\n this.selectedProductstatus.forEach((data) => {\r\n arrayData.push('' + data.stringValue);\r\n });\r\n arrayData = arrayData.filter((c, index) => {\r\n return arrayData.indexOf(c) === index;\r\n });\r\n this.stringData = arrayData.toString();\r\n this.filter.status = this.stringData;\r\n environment.production ? '' : console.log(this.filter.status);\r\n this.gotoPage('first');\r\n }\r\n onSelectAll(items: any) {\r\n let arrayData = [];\r\n items.forEach((data) => {\r\n arrayData.push('' + data.stringValue);\r\n });\r\n this.stringData = arrayData.toString();\r\n this.filter.status = this.stringData;\r\n this.gotoPage('first');\r\n }\r\n\r\n onItemDeSelect($event) {\r\n let arrayData = [];\r\n this.selectedProductstatus.forEach((data) => {\r\n arrayData.push('' + data.stringValue);\r\n });\r\n arrayData = arrayData.filter((c, index) => {\r\n return arrayData.indexOf(c) === index;\r\n });\r\n this.stringData = arrayData.toString();\r\n this.filter.status = this.stringData;\r\n environment.production ? '' : console.log(this.filter.status);\r\n this.gotoPage('first');\r\n }\r\n //#endregion\r\n}\r\n\r\n@Component({\r\n selector: 'll-button-comp',\r\n template: `\r\n
\r\n \r\n \r\n
  • \r\n {{ n.title }}\r\n
  • \r\n \r\n
    \r\n `,\r\n})\r\nexport class ProductActionColumn implements OnInit {\r\n @Input() rowData: any;\r\n @Output() click: EventEmitter = new EventEmitter(null);\r\n menuData: any;\r\n menuActions: any;\r\n closeResult: any;\r\n itemData: any;\r\n binList: any = [];\r\n constructor(\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private router: Router,\r\n private modalService: NgbModal,\r\n private service: InventoryServices,\r\n private maincomponent: ProductListComponent,\r\n private navservice: NavService,\r\n private toaster: NotificationService\r\n ) {\r\n this.menuData = JSON.parse(localStorage.getItem('EzyBooks-menu'));\r\n //\r\n setTimeout(() => {\r\n this.menuData.forEach((data) => {\r\n if (data.title.toLowerCase() == 'inventory') {\r\n var module = data;\r\n module.children.forEach((data) => {\r\n if (data.title.toLowerCase() == 'product items') {\r\n this.menuActions = data.menuActions;\r\n }\r\n });\r\n }\r\n });\r\n //\r\n }, 1000);\r\n }\r\n renderValue: string;\r\n ngOnInit() {\r\n this.renderValue = this.rowData.id;\r\n this.itemData = this.rowData;\r\n }\r\n clicked(actionname) {\r\n var modalRef = null;\r\n\r\n environment.production ? '' : console.log('itemdata', this.itemData);\r\n if (actionname.toLowerCase() == 'view') {\r\n const encrptData = btoa(this.rowData.id); // encode a string\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n //set edit data to header component\r\n\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'view' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'edit') {\r\n const encrptData = btoa(this.rowData.id); // encode a string\r\n //set edit data to header component\r\n\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'edit' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'clone') {\r\n const encrptData = btoa(this.rowData.id); // encode a string\r\n environment.production ? '' : console.log('enycrypted data', encrptData);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'add' },\r\n replaceUrl: true,\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'transfer') {\r\n modalRef = this.modalService.open(TransferQtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.maincomponent.gotoPage('first');\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'hold') {\r\n modalRef = this.modalService.open(HoldqtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n this.maincomponent.gotoPage('first');\r\n },\r\n (reason) => {\r\n this.maincomponent.gotoPage('first');\r\n }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'adjust') {\r\n modalRef = this.modalService.open(AdjustQtyComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then(\r\n (result) => {\r\n if (result == 'save') {\r\n this.maincomponent.gotoPage('first');\r\n }\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'item analysis') {\r\n modalRef = this.modalService.open(ItemanalysisComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'purchase history') {\r\n modalRef = this.modalService.open(PurchasehistoryComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n if (actionname.toLowerCase() == 'item compatibility') {\r\n modalRef = this.modalService.open(ItemCompatibilityComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n environment.production\r\n ? ''\r\n : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then(\r\n (result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n },\r\n (reason) => { }\r\n );\r\n }\r\n\r\n if (actionname.toLowerCase() == 'print main ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = this.rowData.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '0';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'print manufacturer ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = this.rowData.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '2';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'print alt ilc label') {\r\n modalRef = this.modalService.open(PrintlabelComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.id = this.rowData.id;\r\n modalRef.componentInstance.type = 'p';\r\n modalRef.componentInstance.name = '1';\r\n modalRef.componentInstance.desc = '1';\r\n modalRef.componentInstance.alt = '1';\r\n // modalRef.componentInstance.name = 'printpo';\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'document manager') {\r\n modalRef = this.modalService.open(DocumentsComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'lg',\r\n windowClass: 'index-class',\r\n backdropClass: 'index-backdrop',\r\n });\r\n modalRef.componentInstance.refno = this.rowData.ilc;\r\n modalRef.componentInstance.id = this.rowData.id;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n if (actionname.toLowerCase() == 'delete') {\r\n this.deleteProduct(this.rowData.id);\r\n }\r\n\r\n if (actionname.toLowerCase() == 'move serials') {\r\n modalRef = this.modalService.open(TransferserialsComponent, {\r\n size: 'md',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n\r\n environment.production ? '' : console.log(actionname);\r\n }\r\n\r\n deleteProduct(id) {\r\n Swal.fire({\r\n title: 'Do you want to delete product?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No',\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProduct(id).subscribe(\r\n (res) => {\r\n environment.production ? '' : console.log('delete response ', res);\r\n this.loader.stop();\r\n this.toaster.Success('Product Deleted!');\r\n this.maincomponent.gotoPage('first');\r\n },\r\n (err) => {\r\n this.loader.stop();\r\n environment.production\r\n ? ''\r\n : console.log('Error : While delete product ', err);\r\n }\r\n );\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.modalService.dismissAll();\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'll-button-comp',\r\n template: `\r\n \r\n {{ onHold }}\r\n \r\n `,\r\n})\r\nexport class OnHoldComponent implements OnInit {\r\n @Input() rowData: any;\r\n @Input() name: any;\r\n @Output() click: EventEmitter = new EventEmitter(null);\r\n renderValue: string;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n onHold: any;\r\n id: any;\r\n constructor(\r\n private modalService: NgbModal,\r\n private maincomponent: ProductListComponent\r\n ) {\r\n this.userdata = JSON.parse(\r\n localStorage.getItem(this.appname + 'userprofile')\r\n );\r\n }\r\n ngOnInit() {\r\n if (this.name == 'qtyonhand') {\r\n this.onHold = this.rowData.qtyonhand;\r\n }\r\n if (this.name == 'qtyhold') {\r\n this.onHold = this.rowData.qtyhold;\r\n }\r\n if (this.name == 'qtyavail') {\r\n this.onHold = this.rowData.qtyavail;\r\n }\r\n this.id = this.rowData.id;\r\n }\r\n\r\n open() {\r\n setTimeout(() => {\r\n var modalRef = this.modalService.open(BinlocationsListComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.id = this.rowData.id;\r\n modalRef.componentInstance.isSerilzed = this.rowData.isserilized;\r\n modalRef.result\r\n .then((result) => {\r\n this.maincomponent.gotoPage('first');\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n this.maincomponent.gotoPage('first');\r\n\r\n environment.production ? '' : console.log(error);\r\n });\r\n }, 500);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'll-button-comp',\r\n template: `\r\n \r\n {{ onHold }}\r\n \r\n `,\r\n})\r\nexport class OrderHistoryComponent implements OnInit {\r\n @Input() rowData: any;\r\n @Output() click: EventEmitter = new EventEmitter(null);\r\n renderValue: string;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n onHold: any;\r\n id: any;\r\n constructor(private modalService: NgbModal) {\r\n this.userdata = JSON.parse(\r\n localStorage.getItem(this.appname + 'userprofile')\r\n );\r\n }\r\n ngOnInit() {\r\n this.onHold = this.rowData.qtyonorder;\r\n this.id = this.rowData.id;\r\n // console.log('rowData', this.rowData)\r\n }\r\n\r\n open() {\r\n var modalRef = this.modalService.open(PurchasehistoryComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.fromParent = this.rowData;\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n}\r\n@Component({\r\n selector: 'll-button-comp',\r\n template: `\r\n \r\n {{ cnt }}\r\n \r\n `,\r\n})\r\nexport class SerialNosComponent implements OnInit {\r\n @Input() rowData: any;\r\n @Output() click: EventEmitter = new EventEmitter(null);\r\n renderValue: string;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n cnt: any;\r\n id: any;\r\n constructor(private modalService: NgbModal) {\r\n this.userdata = JSON.parse(\r\n localStorage.getItem(this.appname + 'userprofile')\r\n );\r\n }\r\n ngOnInit() {\r\n this.cnt = this.rowData.nos;\r\n this.id = this.rowData.id;\r\n }\r\n\r\n open() {\r\n var modalRef = this.modalService.open(SerialsListComponent, {\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n backdrop: 'static',\r\n });\r\n modalRef.componentInstance.itemdata = {\r\n prodid: this.rowData.id,\r\n bincode: '',\r\n serialno: '',\r\n status: 'availableforsale',\r\n };\r\n modalRef.result\r\n .then((result) => {\r\n environment.production ? '' : console.log(result);\r\n })\r\n .catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'my-name-component',\r\n template: `{{\r\n name\r\n }}`,\r\n})\r\nexport class openproductcomponent implements OnInit {\r\n @Input() value;\r\n @Input() rowData: any;\r\n\r\n name;\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() {\r\n this.name = this.value.ilc;\r\n }\r\n gotoEdit() {\r\n const encrptData = btoa(this.rowData.id);\r\n this.router.navigate(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'edit' },\r\n replaceUrl: true,\r\n });\r\n return;\r\n const url = this.router.serializeUrl(\r\n this.router.createUrlTree(['products/add-product'], {\r\n queryParams: { id: encrptData, action: 'edit' },\r\n })\r\n );\r\n window.open(url, '_blank');\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
      \r\n
    • {{ 'Index_Filter.Filter_Options.AddProduct_Option' |\r\n translate }}
    • \r\n
    • {{ 'Index_Filter.Filter_Options.ExportCSV_Option' |\r\n translate }}
    • \r\n
    • {{ 'Index_Filter.Filter_Options.ExportExcel_Option'\r\n | translate }}
    • \r\n
    • {{ 'Index_Filter.Filter_Options.ExportPDF_Option' |\r\n translate }}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Index_Table.Actions_Column' | translate }}{{ 'Index_Table.ILCNum_Column' |\r\n translate }} {{\r\n 'Index_Table.Description_Column' | translate }} {{\r\n 'Index_Table.Supplier_Column' | translate }} {{\r\n 'Index_Table.Department_Column' | translate }} {{\r\n 'Index_Table.Category_Column' | translate }} {{\r\n 'Index_Table.MinQty_Column' | translate }} {{\r\n 'Index_Table.MaxQty_Column' | translate }} {{\r\n 'Index_Table.Reorderpoint_Column' | translate }} {{\r\n 'Index_Table.OnHandQty_Column' | translate }} {{\r\n 'Index_Table.OnHoldQty_Column' | translate }} {{\r\n 'Index_Table.AvailableQty_Column' | translate }} {{\r\n 'Index_Table.OnOrderQty_Column' | translate }} {{\r\n 'Index_Table.SerialNumbers_Column' | translate }} {{\r\n 'Index_Table.RetailPrice_Column' | translate }} {{\r\n 'Index_Table.POCost_Column' | translate }} {{\r\n 'Index_Table.LandedCost_Column' | translate }} {{\r\n 'Index_Table.Status_Column' | translate }} {{\r\n 'Index_Table.Picture_Column' | translate }} {{ 'Index_Table.Type_Column' |\r\n translate }} {{\r\n 'Index_Table.TPCode_Column' | translate }} {{\r\n 'Index_Table.TPCodeExtra_Column' | translate }} {{\r\n 'Index_Table.Serialized_Column' | translate }} {{\r\n 'Index_Table.TPSync_Column' | translate }} {{\r\n 'Index_Table.AvgCost_Column' | translate }} {{\r\n 'Index_Table.InvLeadTime_Column' | translate }} {{\r\n 'Index_Table.ProdLeadTime_Column' | translate }} {{\r\n 'Index_Table.PreferToProduce_Column' | translate }} {{\r\n 'Index_Table.LastPurchaseDate_Column' | translate }} {{\r\n 'Index_Table.PreferToPurchase_Column' | translate }} {{ 'Index_Table.ID_Column' |\r\n translate }} {{\r\n 'Index_Table.CreateBy_Column' | translate }} {{\r\n 'Index_Table.CreateDate_Column' | translate }} {{\r\n 'Index_Table.UpdateBy_Column' | translate }} {{\r\n 'Index_Table.UpdateDate_Column' | translate }}
    \r\n
    \r\n \r\n
      \r\n
    • {{n.title}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ product.ilc }}\r\n
    \r\n {{ product.status }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ product.description ? product.description : '' }}\r\n
    \r\n {{ product.description }}\r\n
    \r\n
    {{ product.suppliername }}{{ product.dept_name }}{{ product.category }}{{ product.minqty }}{{ product.maxqty }}{{ product.reorderpoint }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ product.retailprice }}{{ product.pocost }}{{ product.landedcost }}\r\n {{ product.status }}\r\n \r\n \r\n \r\n \r\n {{ product.ptype }}{{ product.tpcode }}{{ product.tpcodeextra }}{{ product.isserilized }}{{ product.tpsync }}{{ product.avgcost }}{{ product.inventory_lead_time\r\n }}{{ product.production_lead_time\r\n }}{{ product.prefer_to_produce }}\r\n {{ product.last_purchase_date |\r\n date: userdata.date_format }}{{ product.prefer_to_purchase\r\n }}{{ product.id }}{{ product.createby }}{{ product.createdate | date:\r\n userdata.displaydatetimeformat }}{{ product.updateby }}{{ product.updatedate | date:\r\n userdata.displaydatetimeformat }}
    \r\n\r\n
    \r\n
    \r\n {{'Totalrow_Label' | translate }} : {{totalRows}}\r\n
    \r\n \r\n \r\n
    \r\n {{currentPage}} of {{totalPages}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Ng2SmartTableModule } from 'ng2-smart-table';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ProductsRoutingModule } from './products-routing.module';\r\nimport { ProductActionColumn, ProductListComponent } from './products.component';\r\nimport { AddProductComponent } from './add-product/add-product.component';\r\nimport { GalleryModule } from '@ks89/angular-modal-gallery';\r\nimport 'hammerjs';\r\nimport 'mousetrap';\r\nimport { DropzoneModule } from 'ngx-dropzone-wrapper';\r\nimport { DROPZONE_CONFIG } from 'ngx-dropzone-wrapper';\r\nimport { DropzoneConfigInterface } from 'ngx-dropzone-wrapper';\r\nimport { AliasComponent } from './add-product/alias/alias.component';\r\nimport { BinlocationsComponent } from './add-product/binlocations/binlocations.component';\r\nimport { SuppliersComponent } from './add-product/suppliers/suppliers.component';\r\nimport { PriceauditlogsComponent } from './add-product/priceauditlogs/priceauditlogs.component';\r\nimport { PohistoryComponent } from './add-product/pohistory/pohistory.component';\r\nimport { TransactionhistoryComponent } from './add-product/transactionhistory/transactionhistory.component';\r\nimport { PicturesComponent } from './add-product/pictures/pictures.component';\r\nimport { LoyaltyprogramsComponent } from './add-product/loyaltyprograms/loyaltyprograms.component';\r\nimport { DocumentTabComponent } from './add-product/documents/documents.component';\r\nimport { ReviewComponent } from './add-product/review/review.component';\r\nimport { AuditlogsComponent } from './add-product/auditlogs/auditlogs.component';\r\nimport { SerialsComponent } from './add-product/serials/serials.component';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatMomentDateModule } from \"@angular/material-moment-adapter\";\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { CKEditorModule } from 'ng2-ckeditor';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { SubstituteproductComponent } from './add-product/substituteproduct/substituteproduct.component';\r\nimport { AdjustQtyComponent } from './modal/adjust-qty/adjust-qty.component';\r\nimport { TransferQtyComponent } from './modal/transfer-qty/transfer-qty.component';\r\nimport { HoldqtyComponent } from './modal/holdqty/holdqty.component';\r\nimport { ItemanalysisComponent } from './modal/itemanalysis/itemanalysis.component';\r\nimport { PurchasehistoryComponent } from './modal/purchasehistory/purchasehistory.component';\r\nimport { FileUploadModule } from 'ng2-file-upload';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { AdduomComponent } from './modal/adduom/adduom.component';\r\n// import { NgxMatSelectSearchModule } from 'ngx-mat-select-search';\r\nimport { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\nimport { BinLocationFilterPipe } from './add-product/binlocations/bin-location-filter.pipe';\r\nimport { SupplierfilterPipe } from './add-product/suppliers/supplierfilter.pipe';\r\nimport { BinholddetailsComponent } from './modal/binholddetails/binholddetails.component';\r\nimport { TaxComponent } from './add-product/tax/tax.component';\r\nimport { BinlocationsListComponent } from './modal/binlocations/binlocations.component';\r\nimport { SerialsListComponent } from './modal/serials/serials.component';\r\nimport { LottrackingComponent } from './add-product/lottracking/lottracking.component';\r\nimport { AddonsComponent } from './add-product/addons/addons.component';\r\nimport { TimeingComponent } from './add-product/timeing/timeing.component';\r\nimport { ResizeModule } from '../../modal/resize/resize-border.module';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { TransferserialsComponent } from './modal/transferserials/transferserials.component';\r\nimport { NgImageSliderModule } from 'ng-image-slider';\r\nimport { ProductBinComponent } from './modal/product-bin/product-bin.component';\r\nimport { UomRatioComponent } from './modal/uom-ratio/uom-ratio.component';\r\nimport { DetailsComponent } from './add-product/details/details.component';\r\nimport { ItemCompatibilityComponent } from './modal/itemcompatibility/itemcompatibility.component';\r\nimport { CompatibilityComponent } from './add-product/compatibility/compatibility.component';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { NgToggleModule } from 'ng-toggle-button';\r\nconst DEFAULT_DROPZONE_CONFIG: DropzoneConfigInterface = {\r\n maxFilesize: 50,\r\n url: 'https://httpbin.org/post',\r\n};\r\n\r\n@NgModule({\r\n declarations: [ProductListComponent, AddProductComponent, AliasComponent, DetailsComponent,CompatibilityComponent, BinlocationsComponent, SuppliersComponent, PriceauditlogsComponent, PohistoryComponent, TransactionhistoryComponent, PicturesComponent, LoyaltyprogramsComponent, DocumentTabComponent, ReviewComponent, AuditlogsComponent, SerialsComponent, ProductActionColumn, SubstituteproductComponent, AdjustQtyComponent, ProductBinComponent, TransferQtyComponent, HoldqtyComponent, ItemanalysisComponent, PurchasehistoryComponent, ItemCompatibilityComponent, AdduomComponent, BinLocationFilterPipe, SupplierfilterPipe, BinholddetailsComponent, TaxComponent, BinlocationsListComponent, SerialsListComponent, LottrackingComponent, AddonsComponent, TimeingComponent, TransferserialsComponent, UomRatioComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CKEditorModule,\r\n AutocompleteLibModule,\r\n ProductsRoutingModule,\r\n Ng2SmartTableModule,\r\n NgbModule,\r\n DropzoneModule,\r\n GalleryModule.forRoot(),\r\n NgxUiLoaderModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatMomentDateModule,\r\n FileUploadModule,\r\n MatChipsModule,\r\n MatAutocompleteModule,\r\n AngularMultiSelectModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n ResizeModule,\r\n NgToggleModule,\r\n NgSelectModule,\r\n NgImageSliderModule,\r\n HttpClientModule, \r\nTranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n \r\n ],\r\n providers: [\r\n {\r\n provide: DROPZONE_CONFIG,\r\n useValue: DEFAULT_DROPZONE_CONFIG\r\n },\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMATS },\r\n NgbActiveModal\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA,\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class ProductsModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } ","import { Injectable } from '@angular/core';\r\nimport {Subject} from 'rxjs'\r\n \r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class KeyBoardService {\r\n keyBoard:Subject=new Subject();\r\n sendMessage(message:any)\r\n {\r\n this.keyBoard.next(message)\r\n }\r\n}","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DashboardServices } from '../../dashboard/dashboard.service';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\n\r\n@Component({\r\n selector: 'app-addcard',\r\n templateUrl: './addcard.component.html',\r\n styleUrls: ['./addcard.component.scss']\r\n})\r\nexport class AddcardComponent implements OnInit {\r\n fullScreen = false;\r\n userData: any;\r\n @ViewChild('iFrameID') iFrameID;\r\n appname = environment.APP_NAME;\r\n farmheight:any;\r\n @Input() title: string;\r\n @Input() url: string;\r\n\r\n constructor(private service: DashboardServices, private salesService: SalesServices,\r\n private toaster: NotificationService, private loader: NgxUiLoaderService, private router: Router, private modalService: NgbModal) {\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n var iFrame = document.getElementById('iFrameID') as HTMLIFrameElement;\r\n if(iFrame && iFrame.contentWindow) {\r\n this.farmheight = iFrame.contentWindow.document.body.scrollHeight + \"px\";\r\n console.log(this.farmheight);\r\n }\r\n \r\n }\r\n\r\n ngOnChanges() {\r\n var iFrame = document.getElementById('iFrameID') as HTMLIFrameElement;\r\n if(iFrame && iFrame.contentWindow) {\r\n this.farmheight = iFrame.contentWindow.document.body.scrollHeight + \"px\";\r\n console.log(this.farmheight);\r\n }\r\n \r\n }\r\n dismissModal() {\r\n this.modalService.dismissAll();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    {{ title }}

    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { DomSanitizer } from \"@angular/platform-browser\";\r\n\r\n@Pipe({\r\n\r\n name: 'urlsafe'\r\n\r\n})\r\n\r\nexport class urlSafePipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(url) {\r\n\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n\r\n }\r\n\r\n}","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { ModalContactsComponent } from '../contacts/contacts.component';\r\n\r\n@Component({\r\n selector: 'app-addcontact',\r\n templateUrl: './addcontact.component.html',\r\n styleUrls: ['./addcontact.component.scss']\r\n})\r\nexport class CustomerContactsModalComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n modalRef: any\r\n userdata: any;\r\n\r\n private langChangeSubscription: Subscription;\r\n\r\n appname = environment.APP_NAME;\r\n contact: any = {\r\n loyalitypoints: 0,\r\n istech: false,\r\n notifyme: false,\r\n soa: false,\r\n isprimary: false,\r\n active: true,\r\n pass: ''\r\n }\r\n @Input('customerid') customerid;\r\n contactList: any = [];\r\n selectedContact: any;\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private datepipe: DatePipe, private service: SalesServices) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/sales/invoices/addcontactmodal/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n addContact() {\r\n this.contact.customerid = this.customerid;\r\n this.contact.companyid = this.userdata.companyid;\r\n this.contact.createby = this.userdata.email;\r\n this.contact.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.contact.contactid = this.contact.contactid ? this.contact.contactid : null;\r\n this.loader.start();\r\n this.service.postContact(this.contact).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal('save');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer contact ', err);\r\n });\r\n }\r\n\r\n openContact() {\r\n this.modalRef = this.modalService.open(ModalContactsComponent, { size: 'xl', });\r\n this.modalRef.result.then((result: any) => {\r\n if (result != undefined) {\r\n this.contact.name = result.name;\r\n this.contact.email = result.email;\r\n this.contact.phone = result.phone ? result.phone : result.mobile;\r\n this.contact.notes = result.notes;\r\n this.contact.contactid = result.id;\r\n }\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n\r\n closeModal(action) {\r\n this.activeModal.close(action);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'ModalTitle' | translate }}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ 'ModalInputs.NameRequired' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'ModalInputs.Email_required' | translate }}
    \r\n
    {{ 'ModalInputs.valid_email_required' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'ModalInputs.Phone_required' | translate }}\r\n
    \r\n
    \r\n Must have 7 digits\r\n
    \r\n
    \r\n Please insert a valid phone number like \"+1345232323\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-addsupplier',\r\n templateUrl: './addsupplier.component.html',\r\n styleUrls: ['./addsupplier.component.scss']\r\n})\r\nexport class SupplierContactsModalComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n @ViewChild('supplierid') supplierid;\r\n contact: any = {}\r\n contactList: any = [];\r\n selectedContact: any;\r\n constructor(private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private datepipe: DatePipe, private service: purchaseServices) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n }\r\n selectContact(item) {\r\n this.selectedContact = item;\r\n this.closeModal();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n saveContact() {\r\n if ((this.contact.id)) {\r\n this.contact.updateby = this.userdata.email;\r\n this.contact.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.contact.companyid = this.userdata.companyid;\r\n this.contact.supplierid = this.supplierid;\r\n this.contact.createby = this.userdata.email;\r\n this.contact.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.loader.start();\r\n this.service.postSupplierContact(this.contact).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading lead contact ', err);\r\n });\r\n }\r\n\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedContact);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Contacts
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Name is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Email is required
    \r\n
    Valid Email is required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport { GenericprintComponent } from '../genericprint/genericprint.component';\r\n\r\n@Component({\r\n selector: 'app-apstatement',\r\n templateUrl: './apstatement.component.html',\r\n styleUrls: ['./apstatement.component.scss']\r\n})\r\nexport class ApstatementComponent implements OnInit {\r\n //#region userdata block\r\n fullScreen = false;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n format: any;\r\n //#endregion userdata block\r\n apstatement: any = {\r\n type: '0',\r\n template: '1'\r\n }\r\n apStMentList: any = []\r\n @Input('id') id;\r\n constructor(private activeModal: NgbActiveModal,\r\n private modalService: NgbModal,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private service: accountServices,\r\n private toastr: NotificationService) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.apstatement.fromdate = this.datepipe.transform(this.userdata.fromdate, this.userdata.postdateformat);\r\n this.apstatement.todate = this.datepipe.transform(this.userdata.enddate, this.userdata.postdateformat);\r\n\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n }\r\n saveAPStatement() {\r\n //Service not available\r\n\r\n this.apstatement.companyid = this.userdata.companyid;\r\n this.apstatement.supplierid = [this.id]\r\n this.apstatement.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.apstatement.createby = this.userdata.email;\r\n this.apstatement.companyname = this.userdata.companyname;\r\n this.apstatement.fromdate = this.datepipe.transform(this.apstatement.fromdate, this.userdata.postdateformat);\r\n this.apstatement.todate = this.datepipe.transform(this.apstatement.todate, this.userdata.postdateformat);\r\n this.apstatement.sendinemail = false;\r\n this.apstatement.printonly = false;\r\n environment.production ? '' : console.log(this.apstatement);\r\n\r\n this.loader.start();\r\n this.service.postAPstatement(this.apstatement).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n }\r\n this.apstatement = {}\r\n this.apStMentList = res.data;\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading Post AR statements', err);\r\n });\r\n }\r\n\r\n apstatementprint() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n modalRef.componentInstance.id = this.id;\r\n modalRef.componentInstance.typename = \"apstatement\";\r\n modalRef.componentInstance.type = this.apstatement.type;\r\n modalRef.componentInstance.fromdate = this.datepipe.transform(this.apstatement.fromdate, this.userdata.date_format);\r\n modalRef.componentInstance.todate = this.datepipe.transform(this.apstatement.todate, this.userdata.date_format);\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n download(element) {\r\n var printURL = environment.DOC_URL + '/' + this.userdata.companyid + '/' + element.doc_name\r\n window.open(printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    AP Supplier Statement\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Ref NameCreatedEmailedTypeDoc NameCreatebyCreatedateDocument
    {{item.ref_name}}YesNoYesNo{{item.type}}{{item.doc_name}}{{item.createby}}{{item.createdate |date:userdata.displaydatetimeformat}}
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport { GenericprintComponent } from '../genericprint/genericprint.component';\r\nimport * as moment from 'moment';\r\n\r\n@Component({\r\n selector: 'app-arstatements',\r\n templateUrl: './arstatements.component.html',\r\n styleUrls: ['./arstatements.component.scss']\r\n})\r\nexport class ArstatementsComponent implements OnInit {\r\n //#region userdata block\r\n fullScreen = false;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n format: any;\r\n //#endregion userdata block\r\n arstatement: any = {\r\n type: '1',\r\n template: '1'\r\n }\r\n arStMentList: any = []\r\n @Input('id') id;\r\n customerid: any;\r\n constructor(private activeModal: NgbActiveModal,\r\n private modalService: NgbModal,\r\n private datepipe: DatePipe,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService,\r\n private service: accountServices) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format;\r\n this.arstatement.fromdate = moment().subtract(30, 'days').format('YYYY-MM-DD');\r\n this.arstatement.todate = this.datepipe.transform(this.userdata.enddate, this.userdata.postdateformat);\r\n\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n // this.getARStatements();\r\n }\r\n saveARStatement() {\r\n this.arStMentList = [];\r\n this.arstatement.companyid = this.userdata.companyid;\r\n this.arstatement.customerid = [this.id]\r\n this.arstatement.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.arstatement.createby = this.userdata.email;\r\n this.arstatement.companyname = this.userdata.companyname;\r\n this.arstatement.fromdate = this.datepipe.transform(this.arstatement.fromdate, this.userdata.postdateformat);\r\n this.arstatement.todate = this.datepipe.transform(this.arstatement.todate, this.userdata.postdateformat);\r\n this.arstatement.sendinemail = false;\r\n this.arstatement.printonly = false;\r\n this.arstatement.logo = this.userdata.logo;\r\n environment.production ? '' : console.log(this.arstatement);\r\n this.loader.start();\r\n this.service.postARstatement(this.arstatement).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.arstatement = {}\r\n this.arStMentList = res.data;\r\n this.ngOnInit();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading Post AR statements', err);\r\n });\r\n }\r\n getARStatements() {\r\n this.loader.start();\r\n this.service.getARStatements(this.customerid).subscribe(res => {\r\n this.loader.stop();\r\n this.arStMentList = res;\r\n environment.production ? '' : console.log('get AR statements list', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading get AR statements', err);\r\n });\r\n }\r\n\r\n arstatementprint() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n modalRef.componentInstance.id = this.id;\r\n modalRef.componentInstance.name = \"printarstmt\";\r\n modalRef.componentInstance.type = this.arstatement.type;\r\n modalRef.componentInstance.fromdate = this.datepipe.transform(this.arstatement.fromdate, this.userdata.postdateformat);\r\n modalRef.componentInstance.todate = this.datepipe.transform(this.arstatement.todate, this.userdata.postdateformat);\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n ngOnInit(): void {\r\n this.customerid = this.id;\r\n this.getARStatements();\r\n }\r\n download(element) {\r\n var printURL = environment.DOC_URL + '/' + this.userdata.companyid + '/' + element.doc_name\r\n\r\n window.open(printURL, '_blank');\r\n this.closeModal();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    AR Statement\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Ref NameFrom DateTo DateTypeFile NameCreatebyCreatedateAction
    {{item.ref_name}}{{item.fromdate |date:userdata.date_format}}{{item.fromdate |date:userdata.date_format}}{{item.type}}{{item.doc_name}}{{item.createby}}{{item.createdate\r\n |date:userdata.displaydatetimeformat}}
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, Output } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n\tselector: 'app-assemblycatalog',\r\n\ttemplateUrl: './assemblycatalog.component.html',\r\n\tstyleUrls: ['./assemblycatalog.component.scss']\r\n})\r\nexport class AssemblycatalogComponent implements OnInit {\r\n\tfullScreen = false;\r\n\tassemItemList: any = [];\r\n\tappname = environment.APP_NAME;\r\n\tuserdata: any;\r\n\tproduct: any = '';\r\n\tassembliesList: any = [];\r\n\t// assemItemList: any = [];\r\n\tallRowChecked = false;\r\n\tconstructor(\r\n\t\tprivate modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate commoanService: CommonServices,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t}\r\n\r\n\tsearchAssemblies() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commoanService.getAssembliesCatalog(this.product).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.assembliesList = res;\r\n\t\t\tthis.assembliesList.forEach(p => {\r\n\t\t\t\tp.qty = 0;\r\n\t\t\t\tp.checked = false;\r\n\t\t\t\tp.assemblyLines.forEach(al => {\r\n\t\t\t\t\tal.desc = al.description;\r\n\t\t\t\t\tal.id = al.prodid;\r\n\t\t\t\t\tal.cost = al.landedcost;\r\n\t\t\t\t\tal.custom_name = null;\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t\tenvironment.production ? '' : console.log('asemblies list data ', this.assembliesList);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading expType list ', err);\r\n\t\t});\r\n\t}\r\n\tassemblyItemCheck(item) {\r\n\t\titem.checked = !item.checked;\r\n\t\tif (item.checked == false) {\r\n\t\t\tthis.allRowChecked = false;\r\n\t\t}\r\n\r\n\t\tif (this.assembliesList.every(element => element.checked === true)) {\r\n\t\t\tthis.allRowChecked = true;\r\n\t\t}\r\n\t}\r\n\tassemblyAllItemCheck() {\r\n\t\tif (!this.allRowChecked) {\r\n\t\t\tthis.assembliesList.forEach(item => {\r\n\t\t\t\titem.checked = true;\r\n\t\t\t})\r\n\t\t} else {\r\n\t\t\tthis.assembliesList.forEach(item => {\r\n\t\t\t\titem.checked = false;\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\tassembliesSave() {\r\n\t\tthis.assemItemList = [];\r\n\t\tif (this.assembliesList.length > 0) {\r\n\t\t\tthis.assembliesList.forEach(ai => {\r\n\t\t\t\tif (ai.checked && ai.qty > 0) {\r\n\t\t\t\t\tai.assemblyLines.forEach(itm => {\r\n\t\t\t\t\t\titm.grp = ai.custom_name ? ai.custom_name : ai.name;\r\n\t\t\t\t\t\titm.geid = itm.assid;\r\n\t\t\t\t\t\titm.qty = (itm.qty ? Number(itm.qty) : 0) * Number(ai.qty)\r\n\t\t\t\t\t\tthis.assemItemList.push(itm);\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t\tthis.closeModal();\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close(this.assemItemList);\r\n\t}\r\n\tngOnInit(): void {\r\n\t}\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n {{ 'Assemblies_Catalog_Title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n {{ 'AssembliesCatalog_Table.No#_Column' | translate }}{{ 'AssembliesCatalog_Table.Name_Column' | translate }}{{ 'AssembliesCatalog_Table.GroupName_Column' | translate }}{{ 'AssembliesCatalog_Table.Status_Column' | translate }}{{ 'AssembliesCatalog_Table.QTY_Column' | translate }}
    \r\n \r\n {{data.assno}} {{data.name}}\r\n \r\n {{data.status}}\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { assetServices } from '../../assets/asset.service';\r\nimport { AddassetsComponent } from '../../assets/assets/addassets/addassets.component';\r\nimport * as moment from 'moment';\r\nimport { hrServices } from '../../hr/hr.services';\r\n\r\n@Component({\r\n selector: 'app-assetassignment',\r\n templateUrl: './assetassignment.component.html',\r\n styleUrls: ['./assetassignment.component.scss']\r\n})\r\nexport class AssetassignmentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('lastaction') lastaction;\r\n @Input('id') id;\r\n @ViewChild('Location') Location;\r\n pageTitel: any;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n asset: any = {\r\n locationid: '',\r\n assignto: '',\r\n duedate: '',\r\n condition: '',\r\n }\r\n assignToList: any = []\r\n locationList: any = [];\r\n conditionList: any = [];\r\n\r\n keywordLocationSearch: any = 'Text';\r\n editSetLocation: any;\r\n location_validation: any;\r\n\r\n totalLeaves: any;\r\n isSingleClicked: boolean = true;\r\n legalTypeList: any = []\r\n constructor(private loader: NgxUiLoaderService,\r\n\r\n private datepipe: DatePipe,\r\n private toastr: NotificationService,\r\n private commonservice: CommonServices,\r\n private service: assetServices,\r\n private hrservice: hrServices,\r\n private modalService: NgbModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n this.service.getAssetLocation().subscribe(res => {\r\n this.locationList = res;\r\n environment.production ? '' : console.log('locationList list data ', this.locationList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading locationList list ', err);\r\n });\r\n this.commonservice.getAssignTo().subscribe(res => {\r\n this.assignToList = res;\r\n environment.production ? '' : console.log('assignto list', this.assignToList);\r\n environment.production ? '' : console.log(' bug newassignToList list data ', this.assignToList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading newassignToList list ', err);\r\n });\r\n this.hrservice.getContractLegalType().subscribe(res => {\r\n this.legalTypeList = res;\r\n environment.production ? '' : console.log(' payment method list data ', this.legalTypeList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n });\r\n this.commonservice.getComboEnums('assetconditions').subscribe(res => {\r\n this.conditionList = res;\r\n environment.production ? '' : console.log('conditionList list data ', this.conditionList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading conditionList list ', err);\r\n });\r\n }\r\n //====== Location dropodown\r\n selectLocation(item) {\r\n this.asset.locationid = item.Value;\r\n }\r\n inputLocationCleared() {\r\n this.asset.locationid = null;\r\n }\r\n onFocusedLocation(item) {\r\n this.Location ? this.Location.clear() : '';\r\n }\r\n onAnySearchChange(item) {\r\n\r\n }\r\n setLocation() {\r\n if (this.asset.locationid != undefined && this.asset.locationid != null) {\r\n this.locationList.forEach(element => {\r\n if (element.Value == this.asset.locationid) {\r\n this.editSetLocation = element;\r\n }\r\n });\r\n }\r\n }\r\n //====== Location dropodown\r\n\r\n\r\n checkDate() {\r\n var startDate = this.datepipe.transform(new Date(), ('dd/MM/yyyy'));\r\n var endDate = this.datepipe.transform(this.asset.duedate, ('dd/MM/yyyy'));\r\n var regExp = /(\\d{1,2})\\/(\\d{1,2})\\/(\\d{2,4})/;\r\n if (parseInt(endDate.replace(regExp, \"$3$2$1\")) >= parseInt(startDate.replace(regExp, \"$3$2$1\"))) {\r\n environment.production ? '' : console.log('start date is greater than end date');\r\n } else {\r\n this.asset.duedate = null\r\n this.toastr.Error(\"Due date should be greater than current date\")\r\n return false\r\n }\r\n }\r\n ngOnInit(): void {\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll()\r\n }\r\n postAssignment() {\r\n var obj = {\r\n \"assid\": this.id,\r\n \"assignto\": this.asset.assignto,\r\n \"locationid\": this.asset.locationid,\r\n \"doa\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"actionby\": this.userdata.email,\r\n // \"contractid\": 1,\r\n \"duedate\": this.datepipe.transform(this.asset.duedate, this.userdata.postdateformat),\r\n \"notes\": this.asset.notes,\r\n \"lastaction\": this.lastaction,\r\n \"companyid\": this.userdata.companyid,\r\n \"condition\": this.asset.condition,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdateformat),\r\n }\r\n this.loader.start();\r\n this.service.postAssetAssignment(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSingleClicked = true;\r\n this.modalService.dismissAll(res);\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error occurred while post asset assignment', err);\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Asset Assignment
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n

    Action : {{lastaction}}

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Assign to is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Assign to is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Condition is required\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, Output } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderConfig, NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { assetServices } from '../../assets/asset.service';\r\nimport { AddassetsComponent } from '../../assets/assets/addassets/addassets.component';\r\nimport * as moment from 'moment';\r\n\r\n@Component({\r\n selector: 'app-assetservicelog',\r\n templateUrl: './assetservicelog.component.html',\r\n styleUrls: ['./assetservicelog.component.scss']\r\n})\r\nexport class AssetservicelogComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('tabmaintenancelog') tabmaintenancelog;\r\n @Input('assetLog') assetLog;\r\n @Input('assetid') assetid;\r\n @Input('action') action;\r\n pageTitel: any;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n asset: any = {\r\n type: '',\r\n locationid: '',\r\n condition: '',\r\n status: '',\r\n labor: '',\r\n notes: '',\r\n parts: '',\r\n serviceby: '',\r\n description: ''\r\n }\r\n response: any;\r\n mainList: any = [];\r\n assetdata: any = [];\r\n assignToList: any = []\r\n locationList: any = [];\r\n conditionList: any = [];\r\n assetServiceTypeList: any = [];\r\n assetServiceStatusList: any = [];\r\n isView: boolean = false;\r\n constructor(\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private toastr: NotificationService,\r\n private commonservice: CommonServices,\r\n private service: assetServices,\r\n private modalService: NgbModal,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.service.getAssetLocation().subscribe(res => {\r\n this.locationList = res;\r\n environment.production ? '' : console.log('locationList list data ', this.locationList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading locationList list ', err);\r\n });\r\n\r\n this.commonservice.getAssignTo().subscribe(res => {\r\n this.assignToList = res;\r\n environment.production ? '' : console.log('assignto list', this.assignToList);\r\n environment.production ? '' : console.log(' bug newassignToList list data ', this.assignToList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading newassignToList list ', err);\r\n });\r\n\r\n this.commonservice.getComboEnums('assetconditions').subscribe(res => {\r\n this.conditionList = res;\r\n environment.production ? '' : console.log('conditionList list data ', this.conditionList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading conditionList list ', err);\r\n });\r\n this.commonservice.getComboEnums('assetservicetypes').subscribe(res => {\r\n this.assetServiceTypeList = res;\r\n environment.production ? '' : console.log('assetServiceTypeList list data ', this.assetServiceTypeList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading assetServiceTypeList list ', err);\r\n });\r\n this.commonservice.getComboEnums('assetservicestatus').subscribe(res => {\r\n this.assetServiceStatusList = res;\r\n environment.production ? '' : console.log('assetservicestatus list data ', this.assetServiceStatusList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading assetservicestatus list ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.assetLog != undefined && this.assetLog != null) {\r\n this.asset = this.assetLog;\r\n } else {\r\n this.asset.dos = this.datepipe.transform(new Date(), this.userdata.postdateformat);\r\n this.asset.nextdue = moment().add(7, 'days').format('YYYY-MM-DD');\r\n }\r\n if (this.action == 'view') {\r\n this.isView = true;\r\n } else {\r\n this.isView = false;\r\n }\r\n }\r\n postServiceLog() {\r\n var obj\r\n if (this.asset.id == undefined || this.asset.id == null) {\r\n obj = {\r\n \"description\": this.asset.description,\r\n \"type\": this.asset.type,\r\n \"labor\": this.asset.labor,\r\n \"parts\": this.asset.parts,\r\n \"dos\": this.datepipe.transform(new Date(this.asset.dos), this.userdata.postdatetimeformat),\r\n \"nextdue\": this.datepipe.transform(new Date(this.asset.nextdue), this.userdata.postdatetimeformat),\r\n \"serviceby\": this.asset.serviceby,\r\n \"notes\": this.asset.notes,\r\n \"assid\": this.assetid,\r\n \"status\": this.asset.status,\r\n \"companyid\": this.userdata.companyid,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"condition\": this.asset.condition,\r\n \"locationid\": this.asset.locationid,\r\n }\r\n }\r\n else {\r\n obj = {\r\n \"id\": this.asset.id,\r\n \"description\": this.asset.description,\r\n \"type\": this.asset.type,\r\n \"labor\": this.asset.labor,\r\n \"parts\": this.asset.parts,\r\n \"dos\": this.datepipe.transform(new Date(this.asset.dos), this.userdata.postdateformat),\r\n \"nextdue\": this.datepipe.transform(new Date(this.asset.nextdue), this.userdata.postdateformat),\r\n \"serviceby\": this.asset.serviceby,\r\n \"notes\": this.asset.notes,\r\n \"assid\": this.asset.assid,\r\n \"status\": this.asset.status,\r\n \"companyid\": this.userdata.companyid,\r\n \"createby\": this.asset.createby,\r\n \"createdate\": this.datepipe.transform(new Date(this.asset.createdate), this.userdata.postdatetimeformat),\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"condition\": this.asset.condition,\r\n \"locationid\": this.asset.locationid,\r\n }\r\n }\r\n environment.production ? '' : console.log('post service call ', obj);\r\n // return true\r\n this.loader.start();\r\n this.service.postAssetServiceLog(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.modalService.dismissAll(res.data);\r\n }\r\n else {\r\n this.asset = {};\r\n this.modalService.dismissAll();\r\n }\r\n\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n }\r\n\r\n}\r\nfunction ouput(arg0: string) {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n
    Service Log
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please enter description\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please select type\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n Please enter date of service\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please select status\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SchedulerServices } from '../../scheduler/scheduler.service';\r\nimport { serviceManagerServices } from '../../servicemanager/servicemanager.service';\r\nimport { EdittimematerialmodalComponent } from '../../servicemanager/servicetickets/timematerials/edittimematerialmodal/edittimematerialmodal.component';\r\n\r\n@Component({\r\n selector: 'app-audit',\r\n templateUrl: './audit.component.html',\r\n styleUrls: ['./audit.component.scss']\r\n})\r\nexport class AuditComponent implements OnInit {\r\n fullScreen = false;\r\n @Input() tid: any;\r\n @Input() ticket: any;\r\n @ViewChild('Technician') Technician: any;\r\n unauditList: any = [];\r\n isTimeCard = true;\r\n private langChangeSubscription: Subscription;\r\n status: any = 'submitted';\r\n technician: any;\r\n technicianList: any = [];\r\n userdata: any;\r\n appname: any = environment.APP_NAME;\r\n inventoryItems: any = [];\r\n serviceItems: any = [];\r\n keywordTechSearch: any = 'Text';\r\n materialMainCheckbox: any;\r\n timeCardMainCheckbox: any;\r\n isView: boolean;\r\n TicketItemLocations: any[];\r\n constructor(private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private modalService: NgbModal, private toastr: NotificationService, private activeModal: NgbActiveModal, private schedulerService: SchedulerServices, private service: serviceManagerServices, private datepipe: DatePipe, private loader: NgxUiLoaderService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getTechList();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getAuditCards();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/audit/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n getTechList() {\r\n this.schedulerService.getSchedulerResources().subscribe((res: any) => {\r\n this.technicianList = res;\r\n });\r\n }\r\n getAuditCards() {\r\n this.loader.start();\r\n this.service.getUnauditedCards(this.tid).subscribe(res => {\r\n this.loader.stop();\r\n this.unauditList = res;\r\n if (this.unauditList != null && this.unauditList.unAuditedTicketCards != undefined) {\r\n this.unauditList.unAuditedTicketCards.forEach(item => {\r\n item.ischecked = false;\r\n item.approvedhrs = item.hrs;\r\n item.dw = item.dw ? this.datepipe.transform(new Date(item.dw), this.userdata.date_format) : '';\r\n });\r\n }\r\n this.filterItems();\r\n })\r\n }\r\n filterItems() {\r\n this.inventoryItems = [];\r\n this.serviceItems = [];\r\n if (!this.isTimeCard) {\r\n this.unauditList.unAuditedTicketItems.forEach(item => {\r\n if (item.status == this.status) {\r\n this.inventoryItems.push(item);\r\n }\r\n })\r\n this.inventoryItems.forEach(item => {\r\n this.calculateLineTotal(item);\r\n })\r\n } else {\r\n this.unauditList.unAuditedTicketCards.forEach(item => {\r\n if (item.status == this.status) {\r\n this.serviceItems.push(item);\r\n }\r\n })\r\n }\r\n }\r\n getAuditItem() {\r\n this.loader.start();\r\n this.service.getUnauditedItems(this.tid).subscribe(res => {\r\n this.loader.stop();\r\n this.unauditList = res;\r\n if (this.unauditList != null && this.unauditList.unAuditedTicketItems != undefined) {\r\n this.unauditList.unAuditedTicketItems.forEach(item => {\r\n item.ischecked = false;\r\n item.bookingtime = item.bookingtime ? this.datepipe.transform(new Date(item.bookingtime), 'yyy-MM-dd') : '';\r\n item.total = (item.hrs ? Number(item.hrs) : 0) * (item.rate ? Number(item.rate) : 0);\r\n item.rate = Number(item.rate).toFixed(this.userdata.decimals_allowed);\r\n item.total = Number(item.total).toFixed(this.userdata.decimals_allowed);\r\n });\r\n }\r\n this.filterItems();\r\n })\r\n }\r\n validateHrs(item) {\r\n if (item.approvedhrs && item.approvedhrs > item.hrs) {\r\n this.toastr.Error('Approved hrs cannot exceed actual hrs');\r\n item.approvedhrs = item.hrs;\r\n } else if (!item.approvedhrs) {\r\n item.approvedhrs = item.hrs;\r\n }\r\n }\r\n calculateLineTotal(item) {\r\n item.total = (item.qty ? Number(item.qty) : 0) * (item.rate ? Number(item.rate) : 0);\r\n item.rate = Number(item.rate).toFixed(this.userdata.decimals_allowed);\r\n item.total = Number(item.total).toFixed(this.userdata.decimals_allowed);\r\n // this.goToEdit(item, 'edit');\r\n }\r\n checkTimeCardValue() {\r\n if (this.timeCardMainCheckbox) {\r\n this.serviceItems.forEach(item => {\r\n item.ischecked = true;\r\n })\r\n } else {\r\n this.serviceItems.forEach(item => {\r\n item.ischecked = false;\r\n })\r\n }\r\n }\r\n checkMatrialValue() {\r\n if (this.materialMainCheckbox) {\r\n this.inventoryItems.forEach(item => {\r\n item.ischecked = true;\r\n })\r\n } else {\r\n this.inventoryItems.forEach(item => {\r\n item.ischecked = false;\r\n })\r\n }\r\n }\r\n selectTechnician(event) {\r\n\r\n }\r\n\r\n onFocusedTech(event) {\r\n\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close();\r\n }\r\n postAudit(action) {\r\n if (this.isTimeCard) {\r\n this.postAuditCards(action);\r\n } else {\r\n this.postAuditItems(action);\r\n }\r\n }\r\n postAuditItems(action) {\r\n var unAuditedTicketItems = [];\r\n this.inventoryItems.forEach(item => {\r\n if (item.ischecked) {\r\n unAuditedTicketItems.push(item);\r\n }\r\n })\r\n if (unAuditedTicketItems.length == 0) {\r\n // Swal.fire('', 'Select item from list', 'error');\r\n this.toastr.Error('Select item from list');\r\n return;\r\n }\r\n var postObj = {\r\n \"tid\": this.tid,\r\n \"companyid\": this.userdata.companyid,\r\n \"status\": action,\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"unAuditedTicketItems\": unAuditedTicketItems\r\n }\r\n this.loader.start();\r\n this.service.postAuditedItem(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.getAuditItem();\r\n })\r\n }\r\n\r\n postAuditCards(action) {\r\n var unAuditedTicketItems = [];\r\n this.serviceItems.forEach(item => {\r\n if (item.ischecked) {\r\n unAuditedTicketItems.push(item);\r\n }\r\n })\r\n if (unAuditedTicketItems.length == 0) {\r\n // Swal.fire('', 'Select item from list', 'error');\r\n this.toastr.Error('Select item from list');\r\n return;\r\n }\r\n var postObj = {\r\n \"tid\": this.tid,\r\n \"companyid\": this.userdata.companyid,\r\n \"status\": action,\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"unAuditedTicketCards\": unAuditedTicketItems\r\n }\r\n this.loader.start();\r\n this.service.postAuditedCard(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.getAuditCards();\r\n })\r\n }\r\n\r\n calculateHrs(item) {\r\n let newTime1: any;\r\n let newTime2: any;\r\n\r\n const date1 = new Date(item.startime),\r\n date2 = new Date(item.endtime);\r\n if (JSON.stringify(date1) === 'null') {\r\n newTime1 = this.toTime(item.startime);\r\n } else {\r\n newTime1 = this.toTime(date1.toTimeString());\r\n }\r\n\r\n if (JSON.stringify(date2) === 'null') {\r\n newTime2 = this.toTime(item.endtime);\r\n } else {\r\n newTime2 = this.toTime(date2.toTimeString());\r\n }\r\n\r\n var duration = newTime2 - newTime1;\r\n var hours = Math.floor((duration % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\r\n var minutes = Math.floor((duration % (1000 * 60 * 60)) / (1000 * 60));\r\n item.hrs = this.timeStringToFloat(hours + '.' + minutes);\r\n environment.production ? '' : console.log('timeDifference : ', item.hrs);\r\n this.calculateTotal(item);\r\n var totalWrkHrs = 0, totalWrkMnt = 0;\r\n totalWrkHrs = hours;\r\n totalWrkMnt = minutes;\r\n totalWrkHrs += totalWrkMnt / 60;\r\n item.hrs = totalWrkHrs.toFixed(2)\r\n }\r\n\r\n toTime(timeString) {\r\n var timeTokens = timeString.split(' ');\r\n timeTokens = timeTokens[0].split(':');\r\n return new Date(1970, 0, 1, timeTokens[0], timeTokens[1]);\r\n }\r\n\r\n timeStringToFloat(time) {\r\n var hoursMinutes = time.split(/[.:]/);\r\n var hours = parseInt(hoursMinutes[0], 10);\r\n var minutes = hoursMinutes[1] ? parseInt(hoursMinutes[1], 10) : 0;\r\n return this.round(hours + minutes / 60, 1);\r\n }\r\n\r\n round(value, precision) {\r\n var multiplier = Math.pow(10, precision || 0);\r\n return Math.round(value * multiplier) / multiplier;\r\n }\r\n\r\n calculateTotal(item) {\r\n if (item.hrs < 0) {\r\n item.hrs = 0;\r\n }\r\n if (item.rate < 0) {\r\n item.rate = 0;\r\n }\r\n var total = Number(item.hrs) * Number(item.rate);\r\n\r\n item.total = Number(total).toFixed(this.userdata.decimals_allowed);\r\n }\r\n goToEdit(item, action) {\r\n if (action == 'view') {\r\n this.isView = true;\r\n } else {\r\n this.isView = false;\r\n }\r\n var modalRef = null;\r\n modalRef = this.modalService.open(EdittimematerialmodalComponent, { ariaLabelledBy: 'modal-basic-title', backdrop: 'static', size: 'xl' })\r\n modalRef.componentInstance.params = { 'ticket': this.ticket, 'item': item, 'action': this.isView, 'prodid': item.prodid };\r\n modalRef.result.then((result) => {\r\n if (result == 'save') {\r\n this.getAuditItem();\r\n }\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n {{ 'PageTitle' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
      \r\n
    • {{ 'dropDown.Audit' | translate }}
    • \r\n
    • {{ 'dropDown.Approve' | translate }}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n {{ 'TableColumns.CodeColumn' | translate }}{{ 'TableColumns.DescriptionColumn' | translate }}{{ 'TableColumns.TechnicianColumn' | translate }}{{ 'TableColumns.DateColumn' | translate }}{{ 'TableColumns.QtyColumn' | translate }}{{ 'TableColumns.RateColumn' | translate }}{{ 'TableColumns.TotalColumn' | translate }}{{ 'TableColumns.NotesColumn' | translate }}{{ 'TableColumns.StatusColumn' | translate }}
    \r\n \r\n {{data.ilc}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.status}}\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n {{ 'Form_Table.Code_Column1' | translate }}{{ 'Form_Table.Type_Column2' | translate }}{{ 'Form_Table.Description_Column3' | translate }}{{ 'Form_Table.Technician_Column4' | translate }}{{ 'Form_Table.Date_Column5' | translate }}{{ 'Form_Table.StartTime_Column6' | translate }}{{ 'Form_Table.Endtime_Column7' | translate }}{{ 'Form_Table.hr_Column8' | translate }}{{ 'Form_Table.Approvehrs_Column9' | translate }}\r\n {{ 'Form_Table.rate_Column10' | translate }}{{ 'Form_Table.Notes_Column11' | translate }}{{ 'Form_Table.Status_Column12' | translate }}
    \r\n \r\n {{data.ilc}}{{data.worktype}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{data.status}}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { hrServices } from '../../hr/hr.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\n\r\n@Component({\r\n selector: 'app-authorization',\r\n templateUrl: './authorization.component.html',\r\n styleUrls: ['./authorization.component.scss']\r\n})\r\nexport class AuthorizationModalComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n modalRef: any\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n authorizedby: any;\r\n authorizationnotes: any;\r\n employeeList: any = [];\r\n issaved = false;\r\n req: any = { authorizedby: null, authorizationnotes: '' };\r\n constructor(private activeModal: NgbActiveModal, private commonService: CommonServices, private hrService: hrServices,\r\n private toastr: NotificationService) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.getEmployees();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n getEmployees() {\r\n this.commonService.getGetSalesApprovers().subscribe(res => {\r\n this.employeeList = res;\r\n }, err => {\r\n });\r\n }\r\n submit() {\r\n if (!this.req.authorizedby) {\r\n this.toastr.Error('Please select authorizedby');\r\n return;\r\n }\r\n this.issaved = true;\r\n this.closeModal('save');\r\n }\r\n\r\n closeModal(action) {\r\n this.activeModal.close(action == 'save' ? { 'authorizedby': this.req.authorizedby, 'authorizationnotes': this.req.authorizationnotes } : action);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Authorization Required.
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    Please enter authorizedby\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-chequetracking',\r\n templateUrl: './chequetracking.component.html',\r\n styleUrls: ['./chequetracking.component.scss']\r\n})\r\nexport class ChequetrackingComponent implements OnInit {\r\n fullScreen = false;\r\n tracking: any = {};\r\n @Input('params') params;\r\n billPayment: any;\r\n userdata: any;\r\n appname: any = environment.APP_NAME;\r\n issuedStatus: any = [];\r\n t_bill_payment_files: any = [];\r\n trackingLog: any = [];\r\n uploader: FileUploader;\r\n response: any;\r\n filename: any;\r\n statusList: any = [];\r\n constructor(private activeModal: NgbActiveModal, private toastr: NotificationService, private loader: NgxUiLoaderService, private service: CommonServices, private datepipe: DatePipe) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n service.getComboEnums('BillPaychequestatus').subscribe(res => {\r\n this.statusList = res;\r\n })\r\n this.initialize();\r\n }\r\n initialize() {\r\n this.tracking = {\r\n \"id\": null,\r\n \"status\": \"\",\r\n \"notes\": \"\",\r\n \"createdate\": \"\",\r\n \"createby\": \"\",\r\n \"bpid\": null,\r\n \"reason\": \"\",\r\n \"partynotified\": false,\r\n \"t_bill_payment_files\": []\r\n }\r\n }\r\n ngOnInit(): void {\r\n this.billPayment = this.params;\r\n this.getTrackingLog();\r\n }\r\n closeModal(action) {\r\n this.activeModal.close(action);\r\n }\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('refno', this.billPayment.number);\r\n form.append('createby', this.userdata.email);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'cheque-tracking-files');\r\n };\r\n this.response = '';\r\n this.uploader.response.subscribe(res => {\r\n environment.production ? '' : console.log('res ' + res);\r\n this.response = res.data;\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n this.uploader.onAfterAddingAll = (files: any) => {\r\n files.forEach(fileItem => {\r\n environment.production ? '' : console.log('file name: ' + fileItem.file.name);\r\n this.t_bill_payment_files.push({\r\n \"id\": null,\r\n \"bpid\": this.billPayment.bpid,\r\n \"rptid\": this.billPayment.rptid ? this.billPayment.rptid : '',\r\n \"file_url\": fileItem.file.name,\r\n \"active\": true,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n })\r\n });\r\n };\r\n }\r\n cancelAttachment() {\r\n this.t_bill_payment_files = [];\r\n }\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop();\r\n }\r\n uploadFile() {\r\n this.t_bill_payment_files.forEach((file, index) => {\r\n if (this.t_bill_payment_files.length - 1 == index) {\r\n this.t_bill_payment_files = [];\r\n this.getTrackingLog();\r\n }\r\n this.uploader.queue[index].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n environment.production ? '' : console.log('upload', status);\r\n } else {\r\n // this.toastr.Success(\"File uploaded falid\")\r\n environment.production ? '' : console.log('upload faild', status);\r\n // Swal.fire('', 'File uploaded', 'success');\r\n }\r\n };\r\n this.uploader.queue[index].upload();\r\n })\r\n }\r\n getTrackingLog() {\r\n this.initialize();\r\n this.loader.start();\r\n this.service.getIssuedChequeTracking(this.billPayment.bpid).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.trackingLog = res;\r\n this.trackingLog.forEach(item => {\r\n item.files.forEach(element => {\r\n element.url = environment.DOC_URL + '/' + element.file_url;\r\n })\r\n })\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n saveTracking() {\r\n if (!this.tracking.cleardate) {\r\n this.toastr.Error('Please select cheque clear date');\r\n return;\r\n }\r\n if (!this.tracking.status) {\r\n this.toastr.Error('Please select status');\r\n return;\r\n }\r\n this.tracking.bpid = this.billPayment.bpid;\r\n this.tracking.t_bill_payment_files = this.t_bill_payment_files;\r\n this.tracking.companyid = this.userdata.companyid;\r\n this.tracking.cleardate = this.datepipe.transform(new Date(this.tracking.cleardate), this.userdata.postdatetimeformat);\r\n this.tracking.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.tracking.updateby = this.userdata.email;\r\n this.loader.start();\r\n this.service.postIssuedTracking(this.tracking).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n if (this.t_bill_payment_files.length > 0) {\r\n this.uploadFile();\r\n } else {\r\n this.getTrackingLog();\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Cheque Tracking# {{billPayment.cheque_no}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n 0\">{{t_bill_payment_files.length}} file\r\n attached\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    IDNotesReasonParty NotifiedFilesStatusCreated ByCreate Date
    {{item.id}}{{item.notes}}{{item.reason}}YesNo{{file.file_url}}\r\n {{item.status}}{{item.createby}}{{item.createdate | date:userdata.postdatetimeformat}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AngularCsv } from 'angular-csv-ext/dist/Angular-csv';\r\nimport { NgxFileDropEntry, FileSystemFileEntry, FileSystemDirectoryEntry } from 'ngx-file-drop';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { ExcelService } from 'src/app/shared/service/excel.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { reportServices } from '../../reports/reports.service';\r\nimport { ReportgenericprintComponent } from '../reportgenericprint/reportgenericprint.component';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport Swal from 'sweetalert2';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { Subscription } from 'rxjs';\r\n// import { Papa } from 'ngx-papaparse';\r\n\r\n@Component({\r\n selector: 'app-coamodal',\r\n templateUrl: './coamodal.component.html',\r\n styleUrls: ['./coamodal.component.scss']\r\n})\r\nexport class COAModalComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('coa_id') coa_id;\r\n @Input('coa_name') coa_name;\r\n @Input('params') params;\r\n //#region userdata block\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n totalRows: any = 0;\r\n //#endregion userdata block\r\n coa: any = {\r\n \"id\": null,\r\n \"name\": '',\r\n \"description\": '',\r\n \"seq\": 1,\r\n \"coano\": null,\r\n \"createby\": '',\r\n \"createdate\": \"\",\r\n \"companyid\": null,\r\n \"parentid\": '',\r\n \"active\": true,\r\n \"detail_type\": '',\r\n \"account_type\": '',\r\n \"updateby\": '',\r\n \"updatedate\": '',\r\n };\r\n closeResult: string;\r\n isShow = false;\r\n isSaved = false;\r\n public config = {\r\n printMode: 'template-popup',\r\n popupProperties: 'toolbar=yes,scrollbars=yes,resizable=yes,top=0,left=0,fullscreen=yes',\r\n styles: ['#print-section {width:100%;display: block !important; page-break-after: always;}', '.TaskPrint {width:100%;}', 'body { width:100%;}', 'table {width:100%}']\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n glAccList: any = [];\r\n accountGroupingList: any = []\r\n accountTypesList: any = [];\r\n detailsTypesList: any = [];\r\n parentCoaList: any = [];\r\n isEdit = false;\r\n title: any = '';\r\n private langChangeSubscription: Subscription;\r\n postRes: any={};\r\n constructor(\r\n private loader: NgxUiLoaderService,\r\n private excel: ExcelService,\r\n private modalService: NgbModal,\r\n private service: accountServices,\r\n private datepipe: DatePipe,\r\n private toastr: NotificationService,\r\n private commonservice: CommonServices,\r\n private activeModal: NgbActiveModal,\r\n private languageService: LanguageService,\r\n private translate: TranslateService,\r\n private http: HttpClient,\r\n\r\n ) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n var editDataForHeader = ''\r\n this.commonservice.headerEditItemData.next(editDataForHeader);\r\n this.accountType();\r\n }\r\n\r\n accountType() {\r\n this.service.getAccountType().subscribe(res => {\r\n this.accountTypesList = res;\r\n environment.production ? '' : console.log('Account type', res);\r\n })\r\n }\r\n detailType() {\r\n this.service.getAccountDetailTypes(this.coa.account_type).subscribe(res => {\r\n this.detailsTypesList = res;\r\n environment.production ? '' : console.log('Details Type data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading contract types data', err);\r\n });\r\n }\r\n\r\n parentCoa() {\r\n this.service.getSubAccount(this.coa.account_type).subscribe(res => {\r\n this.parentCoaList = res;\r\n environment.production ? '' : console.log('Sub account data ', res);\r\n })\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close({ 'type': this.isSaved ? 'save' : '', 'data': this.postRes });\r\n }\r\n\r\n getDismissReason(reason: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n ngOnInit() {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n // If you need to do anything additional when the language changes, do it here\r\n\r\n this.loadComponentTranslations(lang);\r\n });\r\n\r\n if (this.params.action == 'new') {\r\n this.isEdit = false;\r\n } else if (this.params.action == 'add') {\r\n this.isEdit = true;\r\n this.coa.account_type = this.params.account_type;\r\n this.coa.detail_type = this.params.detail_type;\r\n this.coa.parentid = this.params.parentid;\r\n this.title = this.params.title;\r\n } else {\r\n this.isEdit = true;\r\n this.getAccountDetails(this.params.id);\r\n }\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/accounts/coa/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n getAccountDetails(id) {\r\n this.loader.start();\r\n this.service.getCOADetails(id).subscribe(res => {\r\n this.loader.stop();\r\n this.coa = res;\r\n this.title = this.coa.coano + '-' + this.coa.name;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n saveCoa() {\r\n if (this.coa.id == undefined || this.coa.id == null) {\r\n var account_type;\r\n var account_type_id;\r\n this.accountTypesList.forEach(acc => {\r\n if (this.coa.account_type == acc.Value) {\r\n account_type = acc.Text;\r\n account_type_id = acc.Value;\r\n }\r\n })\r\n this.coa.parentid = this.coa.parentid ? this.coa.parentid : account_type_id;\r\n this.coa.account_type = account_type ? account_type : (this.coa.account_type ? this.coa.account_type : '');\r\n\r\n this.coa.companyid = this.userdata.companyid;\r\n this.coa.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.coa.createby = this.userdata.email;\r\n } else {\r\n this.coa.createdate = this.datepipe.transform(new Date(this.coa.createdate), this.userdata.postdatetimeformat);\r\n this.coa.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.coa.updateby = this.userdata.email;\r\n }\r\n // this.coa.parentid = Number(this.coa.parentid);\r\n environment.production ? '' : console.log(JSON.stringify(this.coa));\r\n this.loader.start();\r\n this.service.postCoa(this.coa).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.postRes = res.data;\r\n this.isSaved = true;\r\n }\r\n this.coa = {};\r\n this.closeModal();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading chart of account ', err);\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{'Modal_title' | translate}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please select account type\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please enter name\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    COA# {{title}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please enter name\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-composeemail',\r\n templateUrl: './composeemail.component.html',\r\n styleUrls: ['./composeemail.component.scss']\r\n})\r\nexport class ComposeemailComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('flag') flag;\r\n @Input('id') id;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n isShowCopanyLogo = false;\r\n compose: any = {\r\n \"msg\": \"\",\r\n \"createby\": null,\r\n \"from\": null,\r\n \"sendername\": null,\r\n \"to\": null,\r\n \"cc\": null,\r\n \"default_template\":false,\r\n \"bcc\": null,\r\n \"subject\": \"\",\r\n \"id\": null,\r\n \"template_code\": false,\r\n \"default_sender\": false,\r\n \"companyname\": null,\r\n \"logo\": null,\r\n \"currency\": null,\r\n \"contactno\": null,\r\n \"bankname\": null,\r\n \"bankaccname\": null,\r\n \"bankaccno\": null,\r\n \"bankbic\": null,\r\n \"duedate\": null,\r\n \"to_name\": null,\r\n \"amt\": null,\r\n \"refno\": null,\r\n \"companyid\": null,\r\n \"use_template\": false,\r\n \"attachtickettoinvoice\": false,\r\n \"multipleEmails\": [\r\n ]\r\n }\r\n templateList: any = [];\r\n dcument: any;\r\n uploader: FileUploader;\r\n filename: any;\r\n multipleFiles: any = [];\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private toastr: NotificationService,private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient, private commonService: CommonServices,\r\n private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo += this.userdata.logo;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n this.getComposeEmail();\r\n this.getEmailTemplates();\r\n this.initializeFileUploader();\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/assets/assets/inoutlogs/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n getEmailTemplates() {\r\n this.loader.start();\r\n this.commonService.getEmailTemplateLists().subscribe(res => {\r\n this.loader.stop();\r\n this.templateList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n getComposeEmail() {\r\n this.loader.start()\r\n this.service.getComposeEmail(this.id, this.flag).subscribe(res => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.compose = res;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading currency data', err);\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n checkUploadFiles() {\r\n if (this.compose.to_name == undefined || this.compose.to_name == null || this.compose.to_name == '') {\r\n this.toastr.Error('Please enter a recipient name')\r\n return;\r\n }\r\n if (this.compose.to == undefined || this.compose.to == null || this.compose.to == '') {\r\n this.toastr.Error('Please enter a recipient email')\r\n return;\r\n }\r\n if (this.compose.subject == undefined || this.compose.subject == null || this.compose.subject == '') {\r\n this.toastr.Error('Please enter subject')\r\n return;\r\n }\r\n // if (this.multipleFiles.length > 0) {\r\n // this.uploadFile();\r\n // } else {\r\n this.save();\r\n // }\r\n }\r\n save() {\r\n this.compose.from_name = this.userdata.name;\r\n this.compose.createby = this.userdata.email;\r\n this.compose.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.compose.companyid = this.userdata.companyid;\r\n this.compose.multipleFiles = this.multipleFiles;\r\n this.loader.start();\r\n this.service.postEmail(this.compose).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeFileUploader();\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While post email', err);\r\n })\r\n }\r\n\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop();\r\n this.uploadFile();\r\n }\r\n\r\n cancelAttachment() {\r\n this.multipleFiles = [];\r\n }\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'emailattachment');\r\n };\r\n this.uploader.response.subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n res = JSON.parse(res)\r\n if (res.status_code == \"1\") {\r\n // res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n // res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n this.uploader.onAfterAddingAll = (files: any) => {\r\n files.forEach(fileItem => {\r\n environment.production ? '' : console.log('file name: ' + fileItem.file.name);\r\n this.multipleFiles.push({\r\n \"file_name\": fileItem.file.name,\r\n })\r\n });\r\n };\r\n }\r\n uploadFile() {\r\n var files = this.multipleFiles;\r\n files.forEach((file, index) => {\r\n if (files.length - 1 == index) {\r\n // this.save();\r\n }\r\n this.uploader.queue[index].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n environment.production ? '' : console.log('upload', status);\r\n } else {\r\n environment.production ? '' : console.log('upload faild', status);\r\n }\r\n };\r\n this.uploader.queue[index].upload();\r\n })\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'Modal_Title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n 0\">{{multipleFiles.length}} file attached\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { serviceManagerServices } from '../../servicemanager/servicemanager.service';\r\nimport { FileUploader } from 'ng2-file-upload';\r\n\r\n@Component({\r\n selector: 'app-composeemailwithattachment',\r\n templateUrl: './composeemailwithattachment.component.html',\r\n styleUrls: ['./composeemailwithattachment.component.scss']\r\n})\r\nexport class ComposeemailwithattachmentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('flag') flag;\r\n @Input('id') id;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n isShowCopanyLogo = false;\r\n compose: any = {\r\n \"msg\": \"\",\r\n \"createby\": null,\r\n \"from\": null,\r\n \"sendername\": null,\r\n \"to\": null,\r\n \"cc\": null,\r\n \"bcc\": null,\r\n \"subject\": \"\",\r\n \"id\": null,\r\n \"template_code\": false,\r\n \"default_sender\": false,\r\n \"companyname\": null,\r\n \"logo\": null,\r\n \"currency\": null,\r\n \"contactno\": null,\r\n \"bankname\": null,\r\n \"bankaccname\": null,\r\n \"bankaccno\": null,\r\n \"bankbic\": null,\r\n \"duedate\": null,\r\n \"to_name\": null,\r\n \"amt\": null,\r\n \"refno\": null,\r\n \"companyid\": null,\r\n \"use_template\": 'default',\r\n \"attachtickettoinvoice\": false,\r\n \"multipleEmails\": [\r\n ]\r\n }\r\n dcument: any;\r\n uploader: FileUploader;\r\n filename: any;\r\n templateList:any=[];\r\n constructor(private modalService: NgbModal,\r\n private toastr: NotificationService, private commonService:CommonServices,\r\n private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo += this.userdata.logo;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getComposeEmail();\r\n this.getEmailTemplates();\r\n }\r\n getEmailTemplates() {\r\n this.loader.start();\r\n this.commonService.getEmailTemplateLists().subscribe(res => {\r\n this.loader.stop();\r\n this.templateList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n getComposeEmail() {\r\n this.loader.start()\r\n this.service.getComposeEmail(this.id, this.flag).subscribe(res => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.compose = res;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading currency data', err);\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n save() {\r\n if (this.compose.to_name == undefined || this.compose.to_name == null || this.compose.to_name == '') {\r\n this.toastr.Error('Please enter a recipient name')\r\n return;\r\n }\r\n if (this.compose.to == undefined || this.compose.to == null || this.compose.to == '') {\r\n this.toastr.Error('Please enter a recipient email')\r\n\r\n return;\r\n }\r\n if (this.compose.subject == undefined || this.compose.subject == null || this.compose.subject == '') {\r\n this.toastr.Error('Please enter subject')\r\n return;\r\n }\r\n this.compose.from_name = this.userdata.name;\r\n this.compose.createby = this.userdata.email;\r\n this.compose.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.compose.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postEmail(this.compose).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While post email', err);\r\n })\r\n }\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n }\r\n viewDocument(doc) {\r\n const url = environment.DOC_URL + '/' + this.userdata.companyid + '/' + doc.name;\r\n window.open(url, '_blank');\r\n }\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'emailattachment');\r\n };\r\n this.uploader.response.subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n res = JSON.parse(res)\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeFileUploader();\r\n }\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n }\r\n uploadFile() {\r\n this.loader.start()\r\n this.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n this.loader.stop();\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n } else {\r\n this.initializeFileUploader();\r\n this.toastr.success('File uploaded');\r\n }\r\n };\r\n this.uploader.queue[0].upload();\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Compose email\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-contacts',\r\n templateUrl: './contacts.component.html',\r\n styleUrls: ['./contacts.component.scss']\r\n})\r\nexport class ModalContactsComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n contact: any = {\r\n name: '',\r\n }\r\n contactList: any = [];\r\n selectedContact: any;\r\n constructor(private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private datepipe: DatePipe,) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.getContact();\r\n }\r\n selectContact(item) {\r\n this.selectedContact = item;\r\n this.closeModal();\r\n }\r\n getContact() {\r\n this.loader.start();\r\n this.commonService.getContact(this.contact.name).subscribe(res => {\r\n this.loader.stop();\r\n this.contactList = res;\r\n environment.production ? '' : console.log('contact list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading contact list data', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedContact);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Contacts\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    NameEmailPhone NotesActiveCreateByCreateDate UpdateByUpdateDate
    {{item.name}}{{item.email}}{{item.phone}}{{item.notes}}{{item.active}}\r\n {{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { hrServices } from '../../hr/hr.services';\r\nimport { settingServices } from '../../settings/setting.service';\r\n\r\n@Component({\r\n selector: 'app-createoffer',\r\n templateUrl: './createoffer.component.html',\r\n styleUrls: ['./createoffer.component.scss']\r\n})\r\nexport class ModalCreateOfferComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n private langChangeSubscription: Subscription;\r\n appname = environment.APP_NAME;\r\n @Input('params') params;\r\n offerData: any = {\r\n offer_type: '',\r\n paytype: '',\r\n workshiftid: '',\r\n status: '',\r\n designationid: '',\r\n locationid: '',\r\n worktimezone: '',\r\n contractid: '',\r\n id: null,\r\n gender: '',\r\n name: '',\r\n email: '',\r\n work_email: ''\r\n }\r\n selectedList: any = [];\r\n designationList: any = [];\r\n locationList: any = [];\r\n timezoneList: any = [];\r\n isSaved = false;\r\n contractList: any = [];\r\n componentList: any = [];\r\n offerStatusList: any = [];\r\n offertype: any = [];\r\n shiftList: any = [];\r\n paytypeList: any = [];\r\n lastaction: any;\r\n personalEmailAsWorkEmail = false;\r\n constructor(private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private settingService: settingServices,\r\n private service: hrServices,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private toastr: NotificationService,\r\n private commonsevice: CommonServices,\r\n private datepipe: DatePipe,) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.commonsevice.getComboEnums('employeeofferstatus').subscribe(res => {\r\n this.offerStatusList = res;\r\n }, err => {\r\n });\r\n this.commonsevice.getComboEnums('employmentoffertype').subscribe(res => {\r\n this.offertype = res;\r\n }, err => {\r\n });\r\n this.service.getcompShiftDrop().subscribe(res => {\r\n this.shiftList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n\r\n this.commonsevice.getComboEnums('paytype').subscribe(res => {\r\n this.paytypeList = res;\r\n }, err => {\r\n });\r\n this.commonsevice.getCompLocation().subscribe(res => {\r\n this.locationList = res;\r\n }, err => {\r\n });\r\n this.commonsevice.getDesignationList().subscribe(res => {\r\n this.designationList = res;\r\n }, err => {\r\n });\r\n this.settingService.getClockTimezone().subscribe(res => {\r\n this.timezoneList = res;\r\n }, err => {\r\n });\r\n this.selectedList = [];\r\n this.getContracts();\r\n this.getSalaryComponentList();\r\n }\r\n getOfferDetailsById(id) {\r\n this.service.getJobOfferById(id).subscribe(res => {\r\n this.offerData = res;\r\n this.selectedList = this.offerData.offerComponents;\r\n this.selectedList.forEach(item => {\r\n this.calculateInDecimal(item);\r\n })\r\n })\r\n }\r\n getContracts() {\r\n this.loader.start();\r\n this.service.getContractLegalType().subscribe(res => {\r\n this.loader.stop();\r\n this.contractList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n getSalaryComponentList() {\r\n this.loader.start();\r\n this.settingService.getCompanySalaryComponentList().subscribe(res => {\r\n this.loader.stop();\r\n this.componentList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n calculateInDecimal(item) {\r\n item.fix_value = item.fix_value ? Number(item.fix_value).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.max_value = item.max_value ? Number(item.max_value).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.monthly_amt = item.monthly_amt ? Number(item.monthly_amt).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.annually_amt = item.annually_amt ? Number(item.annually_amt).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n addSalaryComponent(item) {\r\n item.companyid = this.userdata.companyid;\r\n this.selectedList.push(item);\r\n }\r\n selectComponent(item) {\r\n this.selectedList.push({\r\n 'type': item.Value3,\r\n 'description': item.Text,\r\n 'max_value': item.max_value,\r\n 'fix_value': item.fax_value,\r\n 'company_salary_componentid': item.Value,\r\n 'companyid': this.userdata.companyid,\r\n 'monthly_amt': '0.00',\r\n 'annually_amt': '0.00'\r\n // 'employment_offerid': this.mainComponent.applicationData.id\r\n })\r\n this.offerData.selectedComponent = [];\r\n }\r\n\r\n ngOnInit(): void {\r\n this.lastaction = this.params.action;\r\n if (this.params.action != 'add') {\r\n this.getOfferDetailsById(this.params.id);\r\n } else {\r\n this.offerData.gender = this.params.gender;\r\n this.offerData.name = this.params.name;\r\n this.offerData.email = this.params.email;\r\n }\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n onChangePersonalEmailAsWork() {\r\n if (this.personalEmailAsWorkEmail) {\r\n this.offerData.work_email = this.offerData.email;\r\n } else {\r\n this.offerData.work_email = '';\r\n }\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/hr/jobapplications/offers/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close(this.isSaved ? 'save' : '');\r\n }\r\n\r\n saveOffer() {\r\n this.offerData.companyid = this.userdata.companyid;\r\n if (this.offerData.id) {\r\n this.offerData.createby = this.offerData.createby;\r\n this.offerData.createdate = this.datepipe.transform(this.offerData.createdate, this.userdata.postdatetimeformat)\r\n this.offerData.updateby = this.userdata.email;\r\n this.offerData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n } else {\r\n this.offerData.refid = this.params.refid;\r\n this.offerData.createby = this.userdata.email;\r\n this.offerData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n }\r\n this.offerData.date_accepted = this.offerData.date_accepted ? this.datepipe.transform(this.offerData.date_accepted, this.userdata.postdateformat) : null;\r\n this.offerData.expected_doj = this.offerData.expected_doj ? this.datepipe.transform(this.offerData.expected_doj, this.userdata.postdateformat) : null;\r\n\r\n this.offerData.t_employment_offer_components = this.selectedList;\r\n this.offerData.contractid = this.offerData.contractid ? Number(this.offerData.contractid) : null;\r\n this.loader.start();\r\n this.service.postJobOffer(this.offerData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n }\r\n this.selectedList = []\r\n this.offerData = {};\r\n this.closeModal();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading Post education history ', err);\r\n });\r\n }\r\n deleteOfferComponent(index, item) {\r\n if (item.id == undefined || item.id == null) {\r\n this.selectedList.splice(index, 1);\r\n return;\r\n }\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.selectedList.splice(index, 1);\r\n this.loader.start();\r\n this.service.deleteJobOfferComponent(item.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n\r\n
    \r\n
    {{ 'Offer_Details_Modal.Modal_Title' | translate\r\n }} {{offerData.id}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.offer_type_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.expected_doj_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.contract_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.pay_type_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Annual_pay_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.monthlysalary_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Hours_Week_Placeholder' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Paid_off_days_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.paid_sick_days_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Regular_rate_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Cost_center_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Designation_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'Modal_Inputs.Status_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Salary_Components_Table.actions_Column1' |\r\n translate }}{{ 'Salary_Components_Table.type_Column2' | translate\r\n }}{{ 'Salary_Components_Table.description_column3' |\r\n translate }}{{ 'Salary_Components_Table.fixamount_Column4' |\r\n translate }}{{ 'Salary_Components_Table.maxamount_Column5' |\r\n translate }}{{ 'Salary_Components_Table.monthlymount_Column6' |\r\n translate }}{{ 'Salary_Components_Table.annuallymount_Column7' |\r\n translate }}
    \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\n\r\n@Component({\r\n selector: 'app-credit',\r\n templateUrl: './credit.component.html',\r\n styleUrls: ['./credit.component.scss']\r\n})\r\nexport class CreditComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('customerid') customerid = null;\r\n creditInfo: any;\r\n credit: any = {\r\n amt: 0,\r\n payment_type: '',\r\n memo: 'Credit applied',\r\n currency: '',\r\n notify_customer: false,\r\n roe: 0,\r\n allDues: []\r\n };\r\n receivePayment = true;\r\n paymentTypeList: any = [];\r\n customerCredits: any = [];\r\n item: any = {};\r\n selectCreditTotal: any = 0.0;\r\n duepayments: any = []\r\n credtitotal: any = 0;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n currencyList: any = [];\r\n balanceTotal: any = 0;\r\n appliedPayTotal: any = 0;\r\n constructor(private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private toaster:ToastrService,\r\n private datepipe: DatePipe, private service: SalesServices, private loader: NgxUiLoaderService, private commonService: CommonServices, private cd: ChangeDetectorRef, private activeModal: NgbActiveModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.credit.trandate = datepipe.transform(new Date(), this.userdata.date_format);\r\n this.credit.roe = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.credit.amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.appliedPayTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.balanceTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.commonService.getComboEnums('paymenttype').subscribe(res => {\r\n this.paymentTypeList = res;\r\n environment.production ? '' : console.log('payment types data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment types data', err);\r\n });\r\n\r\n this.commonService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n this.selectROE();\r\n }, err => {\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getAvailableCredit();\r\n }\r\n\r\n getAvailableCredit() {\r\n this.credtitotal = 0;\r\n this.service.getCustCreditBal(this.customerid).subscribe(res => {\r\n this.credit = res;\r\n this.balanceTotal = 0;\r\n this.credit.allDues.forEach(inv => {\r\n this.balanceTotal += (inv.bal ? Number(inv.bal) : 0);\r\n inv.bal = inv.bal ? Number(inv.bal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n inv.invdate = this.datepipe.transform(new Date(inv.invdate), this.userdata.date_format);\r\n })\r\n this.balanceTotal = this.balanceTotal ? Number(this.balanceTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.credit.trandate = this.datepipe.transform(new Date(), this.userdata.date_format);\r\n this.credit.payment_type = 'normal';\r\n this.credtitotal = this.credit.availbalance ? Number(this.credit.availbalance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.selectROE();\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading creditInfo', err);\r\n });\r\n }\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.credit.currency == element.Value) {\r\n this.credit.roe = element.Value2;\r\n }\r\n else if (!this.credit.currency) {\r\n this.credit.roe = '';\r\n }\r\n })\r\n this.credit.roe = this.credit.roe ? Number(this.credit.roe).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n selectInv(item) {\r\n environment.production ? '' : console.log('selected item', item);\r\n this.credit.allDues.forEach(element => {\r\n if (element.Value == item) {\r\n var list = element.Text.split('-')\r\n this.credit.amt = list[1] ? Number(list[1]).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n });\r\n }\r\n getCurrentROE() {\r\n\t\tif (!this.credit.currency) {\r\n\t\t\tthis.toaster.error('Please select currency');\r\n\t\t\treturn;\r\n\t\t}\r\n \r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getExchangeRate(this.userdata.currency, this.credit.currency).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.credit.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n deleteLine(item) {\r\n this.loader.start();\r\n this.service.deleteCustomerCredit(item.pay_id, item.avail_credit).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.getAvailableCredit();\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n selectCreditLineItemCheckBox(event, item) {\r\n environment.production ? '' : console.log('item selected', event.target.checked);\r\n if (event.target.checked == true) {\r\n item.pay_applied = item.pay_applied = Number(item.bal).toFixed(this.userdata.decimals_allowed);\r\n } else {\r\n item.pay_applied = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n this.cd.detectChanges();\r\n this.calculatetotal(item);\r\n environment.production ? '' : console.log('updated list', this.duepayments);\r\n }\r\n calculatetotal(item) {\r\n if (item.pay_applied == undefined || item.pay_applied == '' || item.pay_applied == null) {\r\n item.pay_applied = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n if (item.pay_applied > 0) {\r\n if (Number(item.pay_applied) > Number(item.bal)) {\r\n item.pay_applied = item.bal;\r\n }\r\n item.checked = true;\r\n } else {\r\n item.checked = false;\r\n }\r\n this.calculateCreditTotal()\r\n }\r\n calculateCreditTotal() {\r\n this.credit.amt = 0;\r\n this.balanceTotal = 0;\r\n this.credit.allDues.forEach(element => {\r\n this.balanceTotal += element.bal ? Number(element.bal) : 0;\r\n if (element.pay_applied > 0) {\r\n this.credit.amt += Number(element.pay_applied);\r\n }\r\n });\r\n this.credit.amt = Number(this.credit.amt).toFixed(this.userdata.decimals_allowed);\r\n this.appliedPayTotal = Number(this.credit.amt).toFixed(this.userdata.decimals_allowed);\r\n this.balanceTotal = Number(this.balanceTotal).toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n postCredit() {\r\n var isInvSelected = false;\r\n var allDues = [];\r\n if (this.credit.allDues.length > 0) {\r\n this.credit.allDues.forEach(due => {\r\n if (due.pay_applied > 0) {\r\n isInvSelected = true;\r\n allDues.push(due);\r\n }\r\n })\r\n }\r\n if (!isInvSelected) {\r\n this.toastr.Error('Please select invoice');\r\n return;\r\n }\r\n if ((this.credit.availbalance ? this.credit.availbalance : 0) < this.credit.amt) {\r\n this.toastr.Error('Applied payment cannot exceed the credit available');\r\n return;\r\n }\r\n if (!this.credit.memo) {\r\n this.toastr.Error('Please enter memo');\r\n return;\r\n }\r\n if (!this.credit.currency) {\r\n this.toastr.Error('Please select currency');\r\n return;\r\n }\r\n this.credit.createby = this.userdata.email;\r\n this.credit.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.credit.trandate = this.datepipe.transform(new Date(this.credit.trandate), this.userdata.postdatetimeformat);\r\n this.credit.allDues = allDues;\r\n this.loader.start();\r\n this.service.postCustomerCredit(this.credit).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.modalService.dismissAll();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading credit ', err);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Customer Credits
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    Customer Name: {{credit.customer}}
    Available Credit :\r\n {{credtitotal}}\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Currency is\r\n required
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Memo is required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    Inv DatePayment TermsBalanceApplied AmountActions
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{item.invdate}}\r\n \r\n {{item.payment_terms}}\r\n \r\n {{item.bal}}\r\n \r\n \r\n \r\n
    \r\n \r\n
      \r\n
    • Delete\r\n
    • \r\n
    \r\n
    \r\n
    Totals{{balanceTotal}}{{appliedPayTotal}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { environment } from 'src/environments/environment';\r\nimport { DashboardServices } from '../../dashboard/dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-customerannouncements',\r\n templateUrl: './customerannouncements.component.html',\r\n styleUrls: ['./customerannouncements.component.scss']\r\n})\r\nexport class CustomerannouncementsComponent implements OnInit {\r\n announcements: any = [{}];\r\n fullScreen = false;\r\n userdata: any;\r\n appname = environment.APP_NAME\r\n constructor(private activeModal: NgbActiveModal, private service: DashboardServices) { }\r\n\r\n ngOnInit(): void {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getDashBoardData()\r\n }\r\n\r\n getDashBoardData() {\r\n this.service.getHomeAnnouncements().subscribe(res => {\r\n // var dashboardData = res;\r\n this.announcements = res;\r\n environment.production ? '' : console.log(res);\r\n }, err => {\r\n\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n //#region Sorting Table Header\r\n sortDir = 1;//1= 'ASE' -1= DSC\r\n onSortClick(event) {\r\n let target = event.currentTarget,\r\n childtarget = target.querySelector('i'),\r\n classList = childtarget.classList;\r\n\r\n if (classList.contains('fa-chevron-up')) {\r\n classList.remove('fa-chevron-up');\r\n classList.add('fa-chevron-down');\r\n target.classList.add('Sorted');\r\n this.sortDir = -1;\r\n } else {\r\n classList.add('fa-chevron-up');\r\n classList.remove('fa-chevron-down');\r\n target.classList.remove('Sorted');\r\n this.sortDir = 1;\r\n }\r\n this.sortArr('title');\r\n }\r\n\r\n sortArr(colName: any) {\r\n this.announcements.announcements.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n }\r\n //#endregion Sorting Table Header\r\n}\r\n","\r\n
    \r\n
    \r\n
    Announcements
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Title \r\n \r\n Description \r\n \r\n Start Date \r\n \r\n End Date \r\n
    \r\n {{item.title}}\r\n \r\n {{item.description}}\r\n \r\n {{item.startdate | date:userdata.date_format}}\r\n \r\n {{item.enddate | date:userdata.date_format}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\n\r\n@Component({\r\n selector: 'app-customerlist',\r\n templateUrl: './customerlist.component.html',\r\n styleUrls: ['./customerlist.component.scss']\r\n})\r\nexport class CustomerlistComponent implements OnInit {\r\n fullScreen = false;\r\n @ViewChild('custname') custname;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n setCustomerValue: any;\r\n keyword = 'name';\r\n validatecustomer: any;\r\n customerList: any = []\r\n customer: any = {\r\n searchtxt: '',\r\n siteid: '',\r\n }\r\n selectedCustomer: any = {};\r\n constructor(private activeModal: NgbActiveModal,\r\n private commonServices: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private datePipe: DatePipe,\r\n private toastr: NotificationService,\r\n private service: SalesServices,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n getCustomers() {\r\n if (this.customer.name == '') {\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonServices.getCustomers(this.customer.searchtxt, this.customer.siteid).subscribe(res => {\r\n this.loader.stop();\r\n this.customerList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n selectCustomer(item) {\r\n this.selectedCustomer = item;\r\n this.closeModal();\r\n }\r\n addCustomer() {\r\n if (this.customer.name == null || this.customer.name == undefined || this.customer.name == '') {\r\n this.toastr.Error('Please enter customer name');\r\n return;\r\n }\r\n if (this.customer.primaryphone == null || this.customer.primaryphone == undefined || this.customer.primaryphone == '') {\r\n this.toastr.Error('Please enter phone number');\r\n return;\r\n }\r\n var obj = {\r\n id: null,\r\n name: this.customer.name,\r\n mainemail: this.customer.email,\r\n companyid: this.userdata.companyid,\r\n primaryphone: this.customer.primaryphone,\r\n createby: this.userdata.email,\r\n status: this.customer.status,\r\n createdate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n updateby: null,\r\n updatedate: null\r\n }\r\n this.loader.start();\r\n this.service.postcustomer(obj).subscribe(res => {\r\n this.loader.stop();\r\n // this.customerList = res;\r\n if (res != null) {\r\n this.customer.name = '';\r\n this.customer.email = '';\r\n this.customer.primaryphone = '';\r\n this.getCustomers();\r\n }\r\n environment.production ? '' : console.log('post customer response ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post customer ', err);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedCustomer);\r\n }\r\n ngOnInit(): void {\r\n this.customer.name = this.custname ? this.custname : '';\r\n this.getCustomers();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Customer List\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    CodeNameShortNameTPAcc#Auth Required?PhoneEmail
    {{item.accountno}}{{item.name}}{{item.shortname}}\r\n {{item.tpaccno}}YesNo{{item.primaryphone}}{{item.mainemail}}
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Input, OnInit, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { interval, Subscription } from 'rxjs';\r\n@Component({\r\n selector: 'app-customerprojjoblistmodal',\r\n templateUrl: './customerprojjoblistmodal.component.html',\r\n styleUrls: ['./customerprojjoblistmodal.component.scss']\r\n})\r\nexport class CustomerProjJoblistModalComponent implements OnInit {\r\n @Input('searchtxt') searchtxt;\r\n @Input('customerid') customerid;\r\n @ViewChild('Customer') Customer;\r\n jobList: any = [];\r\n subscription: Subscription;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n customerList: any = [];\r\n keyword2 = 'name';\r\n selectedJob: any = '';\r\n customer: any = {\r\n siteid: '',\r\n projjob: '',\r\n customerid: '',\r\n searchtxt: ''\r\n };\r\n cust: any;\r\n siteList: any = [];\r\n constructor(private activeModal: NgbActiveModal,\r\n private modalService: NgbModal,\r\n private commoanService: CommonServices,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private loader: NgxUiLoaderService) {\r\n this.getCompanySites();\r\n }\r\n\r\n getProjJobslist() {\r\n if (this.searchtxt == undefined || this.searchtxt == null || this.searchtxt.length < 3) {\r\n return;\r\n }\r\n if (this.customer.customerid == undefined || this.customer.customerid == null) {\r\n this.customerid = '';\r\n }\r\n this.loader.start();\r\n this.commoanService.getProjJobslist(this.customer.projjob, this.customer.customerid).subscribe(res => {\r\n this.loader.stop();\r\n this.jobList = res;\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n }\r\n selectCustomer(item) {\r\n\r\n }\r\n selectJob(item) {\r\n this.selectedJob = item;\r\n this.jobList = [];\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n // this.getProjJobslist();\r\n }\r\n selectSite() {\r\n if (this.customer.siteid) {\r\n this.onChangeSearch('');\r\n } else {\r\n this.customerList = [];\r\n }\r\n }\r\n getCompanySites() {\r\n this.loader.start();\r\n this.commoanService.getCompanySites().subscribe(res => {\r\n this.loader.stop();\r\n this.siteList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n onFocused($event) {\r\n this.Customer.clear();\r\n }\r\n onChangeSearch(val: string) {\r\n this.loader.start();\r\n this.commoanService.getCustomers(this.customer.searchtxt, this.customer.siteid).subscribe(res => {\r\n this.loader.stop();\r\n this.customerList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n Select Site\r\n {{item.Text}}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n
    Ezb Ref#Third Party Ref#Project NameTypeCustomerSiteTechService Notes
    \r\n
    {{item.proj}}\r\n
    \r\n
    \r\n
    \r\n {{item.tpcode}}
    \r\n \r\n
    \r\n
    Ezb Ref# : {{item.proj}}\r\n
    \r\n
    Third Party Ref# : {{item.tpcode}}\r\n
    \r\n
    Type : {{item.type}}
    \r\n
    Customer : {{item.customername}}
    \r\n
    Scope : {{item.name}}
    \r\n
    Site : {{item.siteother}}
    \r\n
    Tech : {{item.assignto}}
    \r\n
    Service Notes : {{item.servicenotes}}
    \r\n
    \r\n
    \r\n
    \r\n
    {{item.name}}\r\n
    \r\n
    \r\n
    {{item.type}}
    \r\n
    \r\n
    {{item.customername}}
    \r\n
    \r\n
    {{item.siteother}}
    \r\n
    \r\n
    {{item.assignto}}
    \r\n
    \r\n
    {{item.servicenotes}}
    \r\n
    \r\n
    Your search result yielded no results
    \r\n
    \r\n\r\n
    \r\n
    ","import { NgModule } from '@angular/core';\r\n\r\nimport { CustomerProjJoblistModalComponent } from './customerprojjoblistmodal.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\n\r\n\r\n@NgModule({\r\n declarations: [CustomerProjJoblistModalComponent],\r\n imports: [CommonModule, FormsModule, NgbModule, NgbTooltipModule, AutocompleteLibModule, NgSelectModule],\r\n exports: [CustomerProjJoblistModalComponent],\r\n})\r\nexport class CustomerProjJoblistModule { }","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\n\r\n@Component({\r\n selector: 'app-customersite',\r\n templateUrl: './customersite.component.html',\r\n styleUrls: ['./customersite.component.scss']\r\n})\r\nexport class CustomersiteComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('customerid') customerid;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n site: any = {\r\n isprimary: false,\r\n specmap: false\r\n }\r\n filename: any;\r\n uploader: FileUploader;\r\n private langChangeSubscription: Subscription; \r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private datepipe: DatePipe,\r\n private saleService: SalesServices,\r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n ) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n }\r\n\r\n addSites() {\r\n if (this.site.name == undefined || this.site.name == null) {\r\n this.toastr.Error('Enter site name')\r\n return;\r\n }\r\n if (this.site.id != undefined && this.site.id != null) {\r\n this.site.updateby = this.userdata.email;\r\n this.site.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.site.createby = this.userdata.email;\r\n this.site.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.site.active = true;\r\n }\r\n this.site.customerid = this.customerid;\r\n this.site.companyid = this.userdata.companyid;\r\n this.site.pic = this.filename ? this.filename : null;\r\n\r\n this.loader.start();\r\n this.saleService.postSites(this.site).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n if (this.filename != undefined) {\r\n this.uploadFile();\r\n }\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal('save');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While post customer sites ', err);\r\n });\r\n }\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n }\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('refno', this.customerid);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'cust-site-file');\r\n };\r\n // this.response = '';\r\n this.uploader.response.subscribe(res => {\r\n environment.production ? '' : console.log('res ' + res);\r\n // this.toastr.Success(\"File uploaded sucessfully\")\r\n // this.response = res\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n }\r\n uploadFile() {\r\n this.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n } else {\r\n // Swal.fire('', 'File uploaded', 'success')\r\n }\r\n };\r\n this.uploader.queue[0].upload();\r\n }\r\n\r\n closeModal(value) {\r\n this.activeModal.close(value);\r\n }\r\n ngOnInit(): void {\r\n console.log('selected customer id', this.customerid);\r\n \r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n \r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/basicinfo/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n \r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'title' | translate }}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    ","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\nimport { KeyBoardService } from '../../keymovements/keyboard.service';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-defaultproductsearchmodal',\r\n templateUrl: './defaultproductsearchmodal.component.html',\r\n styleUrls: ['./defaultproductsearchmodal.component.scss']\r\n})\r\nexport class DefaultProductSearchModalComponent implements OnInit {\r\n productList: any = [];\r\n selectedProduct: any;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n searchtxt: any;\r\n userdata: any;\r\n appname: any = environment.APP_NAME;\r\n filter: any = {\r\n searchtxt: '',\r\n ptype: 'inventory',\r\n pricetype: 'retail'\r\n }\r\n prodtypeList: any = [];\r\n fullScreen = false;\r\n priceingTypeList: any = [];\r\n decimal:any=1;\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n private commonService: CommonServices,\r\n private keyboardService: KeyBoardService,\r\n private salesService: SalesServices,\r\n private service: InventoryServices,\r\n private router: Router,\r\n private toaster: ToastrService,\r\n private modalService: NgbModal,\r\n private loader: NgxUiLoaderService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.decimal = this.userdata.decimals_allowed;\r\n this.commonService.getComboEnums('prodtypesales').subscribe(res => {\r\n this.prodtypeList = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('orderpricingtype').subscribe(res => {\r\n this.priceingTypeList = res;\r\n }, err => {\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.selectedProduct)\r\n }\r\n\r\n getProducts() {\r\n this.loader.start();\r\n this.commonService.getProductCatalog(this.filter.ptype, this.filter.pricetype, this.filter.searchtxt, '', '', '', '').subscribe(res => {\r\n this.loader.stop();\r\n this.productList = res;\r\n this.productList.forEach(p => {\r\n p.qty = 0;\r\n p.name = p.desc;\r\n })\r\n this.productList.map(item => item.name = `${item.desc ? item.desc : ''} ${item.ilc}`);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n\r\n }\r\n selectProduct(item) {\r\n this.selectedProduct = item\r\n this.closeModal();\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Products
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Search
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ILCDescriptionThird Party CodePrice
    {{item.ilc}}{{item.desc}}{{item.tpcode}}{{item.price | number: '1.'+decimal +'-'+ decimal}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-departmentmodal',\r\n templateUrl: './departmentmodal.component.html',\r\n styleUrls: ['./departmentmodal.component.scss']\r\n})\r\nexport class DepartmentmodalComponent implements OnInit {\r\n fullScreen = false;\r\n custDept: any;\r\n @Input('params') params;\r\n siteList: any = [];\r\n deptList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n private langChangeSubscription: Subscription;\r\n isDataSave = false;\r\n constructor(private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient, private activemodal: NgbActiveModal, private datepipe: DatePipe, private commonService: CommonServices, private toastr: NotificationService, private loader: NgxUiLoaderService,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.initialize();\r\n\r\n }\r\n \r\n\r\n ngOnInit(): void {\r\n this.custDept.customerid = this.params.customerid ? this.params.customerid : null;\r\n this.custDept.siteid = this.params.siteid ? this.params.siteid : '';\r\n this.getCustomerSite();\r\n this.getCustomerDeptIndexValues();\r\n this.langChangeSubscription = this.languageService\r\n .getCurrentLanguage()\r\n .subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/sales/salesorders/basicinfo/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n initialize() {\r\n this.custDept = {\r\n id: null,\r\n customerid: null,\r\n siteid: '',\r\n name: '',\r\n poc: '',\r\n phone: '',\r\n createby: '',\r\n createdate: null,\r\n updateby: '',\r\n updatedate: null,\r\n active: true,\r\n }\r\n }\r\n refresh() {\r\n this.initialize();\r\n this.custDept.customerid = this.params.customerid;\r\n }\r\n closeModal(action) {\r\n this.activemodal.close(this.isDataSave ? 'save' : action);\r\n }\r\n getCustomerSite() {\r\n this.commonService.getCustomerSiteList(this.custDept.customerid).subscribe(res => {\r\n this.siteList = res;\r\n }, err => {\r\n });\r\n }\r\n\r\n\r\n getCustomerDeptIndexValues() {\r\n this.deptList = [];\r\n this.loader.start();\r\n this.commonService.getCustomerDeptIndex(this.custDept.customerid, '').subscribe(res => {\r\n this.loader.stop();\r\n this.deptList = res;\r\n this.deptList.forEach(item => {\r\n item.active = item.active == 1 ? true : false;\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postCustomerDept() {\r\n if (this.custDept.id) {\r\n this.custDept.updateby = this.userdata.email;\r\n this.custDept.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.custDept.createdate = this.datepipe.transform(new Date(this.custDept.createdate), this.userdata.postdatetimeformat);\r\n } else {\r\n this.custDept.createby = this.userdata.email;\r\n this.custDept.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.custDept.companyid = this.userdata.companyid;\r\n }\r\n this.loader.start();\r\n this.commonService.postCustomerDept(this.custDept).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isDataSave = true;\r\n this.refresh();\r\n this.getCustomerDeptIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post customer dept');\r\n })\r\n }\r\n getCustDepartmentById(id) {\r\n this.loader.start();\r\n this.commonService.getCustomerDeptByID(id).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.custDept = res;\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete customer dept');\r\n })\r\n }\r\n deleteCustomerDept(id) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.commonService.deleteCustomerDept(id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initialize();\r\n this.getCustomerDeptIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete customer dept');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    {{ 'Department_Modal' | translate }}

    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n  \r\n \r\n  \r\n \r\n  \r\n \r\n
    \r\n {{ 'Department_Modal_Inputs.Save_Button' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Department_Table.SiteId_Column' | translate }}{{ 'Department_Table.Name_Column' | translate }}{{ 'Department_Table.POC_Column' | translate }}{{ 'Department_Table.Phone_Column' | translate }}{{ 'Department_Table.Active_Column' | translate }}{{ 'Department_Table.Createby_Column' | translate }}{{ 'Department_Table.Createdate_Column' | translate }}{{ 'Department_Table.Updateby_Column' | translate }}{{ 'Department_Table.Updatedate_Column' | translate }}{{ 'Department_Table.Actions_Column' | translate }}
    {{item.siteid}}{{item.name}}{{item.poc}}{{item.phone}}YesNo\r\n {{item.createby}}{{item.createdate}}{{item.updateby}}{{item.updatedate}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-device',\r\n templateUrl: './device.component.html',\r\n styleUrls: ['./device.component.scss']\r\n})\r\nexport class DeviceComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n device: any = {\r\n name: '',\r\n ilc: '',\r\n type: '',\r\n }\r\n \r\nprivate langChangeSubscription: Subscription; \r\n\r\n deviceList: any = [];\r\n selectedDevice: any;\r\n constructor(\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private datepipe: DatePipe,) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.getDevice();\r\n }\r\n getDevice() {\r\n this.loader.start();\r\n this.commonService.getDevice(this.device.name, this.device.ilc, this.device.type,).subscribe(res => {\r\n this.loader.stop();\r\n this.deviceList = res;\r\n environment.production ? '' : console.log('device list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading device list data', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\nthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\tthis.loadComponentTranslations(lang); \r\n}); \r\n }\r\n\r\n\r\n \r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/equipements&devices/devicemodal/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n selectDevice(item) {\r\n this.selectedDevice = item;\r\n this.closeModal();\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.selectedDevice);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'Title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Form_Table.Name_Column1' | translate }}{{ 'Form_Table.Description_Column2' | translate }}{{ 'Form_Table.Class_Column3' | translate }}{{ 'Form_Table.ILC_Column4' | translate }}{{ 'Form_Table.Make_Column5' | translate }}{{ 'Form_Table.Manufacturer_Column6' | translate }}{{ 'Form_Table.Model_Column7' | translate }}{{ 'Form_Table.Serial_Column8' | translate }}{{ 'Form_Table.Thirdpartycode_Column9' | translate }}{{ 'Form_Table.Type_Column10' | translate }}{{ 'Form_Table.Yearmanfatured_Column11' | translate }}{{ 'Form_Table.Active_Column12' | translate }}{{ 'Form_Table.createby_Column13' | translate }}{{ 'Form_Table.Createdate_Column14' | translate }}{{ 'Form_Table.updateby_Column15' | translate }}{{ 'Form_Table.UpdateDate_Column16' | translate }}
    {{item.name}}{{item.description}}{{item.device_class}}{{item.ilc}}\r\n {{item.make}}{{item.manufacturer}}{{item.model}}{{item.serial}}{{item.tpcode}}{{item.type}}{{item.yearmanufactured}}{{item.active}}\r\n {{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-deviceinventory',\r\n templateUrl: './deviceinventory.component.html',\r\n styleUrls: ['./deviceinventory.component.scss']\r\n})\r\nexport class DeviceInventoryComponent implements OnInit {\r\n fullScreen = false;\r\n @ViewChild('Product') Product;\r\n @Input('device') device;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n // printURL: any;\r\n itemList: any;\r\n modalTitle: any;\r\n productList: any = [];\r\n master: any = {\r\n \"id\": null,\r\n \"prodid\": null,\r\n \"ilc\": \"\",\r\n \"description\": \"\",\r\n \"createby\": \"\",\r\n \"createdate\": \"\",\r\n \"deviceid\": null\r\n }\r\n showtitle: boolean;\r\n countryList: any = [];\r\n deviceDetails: any;\r\n filter: any = {\r\n categoryid: null,\r\n supplierid: '',\r\n subcategoryid: null,\r\n deptid: null,\r\n productsearchby: 0,\r\n pricingtype: 'retail',\r\n ptype: 'inventory',\r\n }\r\n subCategoryList: any = [];\r\n categoryList: any = [];\r\n searchitem: any;\r\n deptList: any = [];\r\n keyword2 = 'ilc';\r\n isSaved = false;\r\n constructor(private cdRef: ChangeDetectorRef,\r\n private toastr: NotificationService,\r\n private commonService: CommonServices,\r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private datepipe: DatePipe,\r\n private service: CommonServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getDepartmentList();\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.isSaved ? 'save' : 'Modal Closed');\r\n }\r\n getDepartmentList() {\r\n this.commonService.getDepartmentList(false).subscribe(res => {\r\n this.deptList = res\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n ngOnInit(): void {\r\n if (this.device) {\r\n this.deviceDetails = this.device;\r\n }\r\n this.getDeviceMaterials();\r\n this.showtitle = true;\r\n this.cdRef.detectChanges();\r\n }\r\n initializeValues() {\r\n this.master = {\r\n \"id\": null,\r\n \"prodid\": null,\r\n \"ilc\": \"\",\r\n \"description\": \"\",\r\n \"createby\": \"\",\r\n \"createdate\": \"\",\r\n \"deviceid\": null\r\n };\r\n }\r\n editMasterData(item) {\r\n this.master = item;\r\n }\r\n validatePostValues() {\r\n if (this.master.name == undefined || this.master.name == '') {\r\n Swal.fire('', 'Please enter description', 'warning');\r\n return;\r\n }\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n }\r\n\r\n selectCategory() {\r\n this.filter.subcategoryid = null;\r\n this.filter.supplierid = '';\r\n this.searchitem = '';\r\n this.commonService.getSubCategory(this.filter.categoryid).subscribe(res => {\r\n this.subCategoryList = res\r\n this.searchProduct();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n selectDept() {\r\n this.filter.categoryid = null;\r\n this.filter.subcategoryid = null;\r\n this.filter.supplierid = null;\r\n this.commonService.getCategory(this.filter.deptid, false).subscribe(res => {\r\n this.categoryList = res\r\n this.searchProduct();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n // ***** Device Inventory begin ***********\r\n getDeviceMaterials() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDeviceMaterialsByDeviceID(this.deviceDetails.id).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDeviceMaterials() {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.master.deviceid = this.device.id\r\n this.loader.start();\r\n this.service.postDeviceMaterial(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n this.Product ? this.Product.clear() : '';\r\n this.Product.close()\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteDeviceMaterial(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDeviceMaterial(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n this.getDeviceMaterials();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete device inventory');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Device Inventory end ***********\r\n searchProduct() {\r\n\r\n }\r\n\r\n selectEvent(item) {\r\n // do something with selected item\r\n // this.toastr.Success(\"Item added into list\")\r\n if (item) {\r\n this.master.prodid = item.id;\r\n this.master.ilc = item.ilc;\r\n this.master.description = item.desc;\r\n this.postDeviceMaterials();\r\n }\r\n }\r\n\r\n onChangeSearch(val: string) {\r\n // fetch remote data from here\r\n // And reassign the 'data' which is binded to 'data' property.\r\n this.commonService.getProductCatalog(this.filter.ptype, this.filter.pricingtype, this.searchitem, this.filter.deptid, this.filter.categoryid, this.filter.subcategoryid, '').subscribe(res => {\r\n this.productList = res;\r\n this.productList.forEach(p => {\r\n p.qty = 0;\r\n p.name = p.ilc;\r\n })\r\n this.productList.map(item => item.ilc = `${item.desc ? item.desc : ''} ${item.ilc}`);\r\n environment.production ? '' : console.log('product list data ', this.productList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n\r\n }\r\n\r\n onFocused(e) {\r\n this.Product.clear();\r\n // do something when input is focused\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n

    Device# {{deviceDetails.ilc}} Inventory

    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ID#ILCDescriptionCreateByCreateDateAction
    {{item.id}}{{item.ilc}}{{item.description}}{{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    No Items Found

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { MasterdataComponent } from '../masterdata/masterdata.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-documents',\r\n templateUrl: './documents.component.html',\r\n styleUrls: ['./documents.component.scss']\r\n})\r\nexport class DocumentsComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('refno') refno;\r\n @Input('id') id;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n docList: any = [];\r\n docTypeList: any = [];\r\n uploader: FileUploader;\r\n filename: any;\r\n \r\nprivate langChangeSubscription: Subscription;\r\n response: string;\r\n dcument: any;\r\n title: any = ''\r\n docType: any = '';\r\n fieldsetDisabled: boolean;\r\n isDataSave = false;\r\n constructor(private activeModal: NgbActiveModal,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private modalService: NgbModal,\r\n private router: Router,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.initializeFileUploader();\r\n this.getDocType();\r\n }\r\n\r\n getDocType() {\r\n var docType = '';\r\n if (this.docType) {\r\n docType = this.docType;\r\n }\r\n this.commonService.getDocType().subscribe(res => {\r\n this.docTypeList = res;\r\n this.docType = docType;\r\n environment.production ? '' : console.log('doc type list ', this.docTypeList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading doc type list ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n environment.production ? '' : console.log('refno', this.refno);\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n this.getDocList(); \r\n }\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/documents/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n\r\n getDocList() {\r\n this.commonService.getDocList(this.refno).subscribe(res => {\r\n this.docList = res;\r\n this.docList.forEach(item => {\r\n item.file_url = environment.DOC_URL + '/' + this.userdata.companyid + '/' + item.name;\r\n })\r\n environment.production ? '' : console.log('doc list ', this.docList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading doc list ', err);\r\n });\r\n }\r\n\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n }\r\n viewDocument(doc) {\r\n const url = environment.DOC_URL + '/' + this.userdata.companyid + '/' + doc.name;\r\n window.open(url, '_blank');\r\n }\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('title', this.title);\r\n form.append('refno', this.refno);\r\n form.append('createdate', this.datePipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', this.docType);\r\n };\r\n this.response = '';\r\n this.uploader.response.subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n res = JSON.parse(res)\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isDataSave = true;\r\n this.dcument = '';\r\n this.title = '';\r\n this.docType = '';\r\n this.dcument = ''\r\n this.initializeFileUploader();\r\n this.getDocList();\r\n // this.closeModal();\r\n this.response = res.data;\r\n }\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n }\r\n uploadFile() {\r\n if (this.title == undefined || this.title == null || this.title == '') {\r\n this.toastr.Error('Please enter title')\r\n return;\r\n }\r\n if (this.filename == undefined || this.filename == null || this.filename == '') {\r\n this.toastr.Error('Please choose file')\r\n return;\r\n }\r\n this.loader.start()\r\n this.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n this.loader.stop();\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n } else {\r\n this.initializeFileUploader();\r\n this.toastr.success('File uploaded');\r\n }\r\n };\r\n this.uploader.queue[0].upload();\r\n }\r\n closeModal(action) {\r\n this.activeModal.close(this.isDataSave ? 'save' : action);\r\n }\r\n\r\n //open Master Modal code\r\n openMasterModal() {\r\n // var modalRef = this.modalService.open(MasterdataComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n var modalRef = null;\r\n modalRef = this.modalService.open(MasterdataComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.documenttype = 'documenttype';\r\n modalRef.result.then((result) => {\r\n if (result == 'save') {\r\n this.getDocType();\r\n }\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n deleteDocument(id) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.commonService.deleteDocument(id).subscribe(res => {\r\n environment.production ? '' : console.log('deleted condition data ', res);\r\n this.loader.stop();\r\n if (res != null) {\r\n this.toastr.Success('Document Deleted!');\r\n this.getDocList();\r\n this.isDataSave = true;\r\n } else {\r\n this.toastr.Error('Document not deleted');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading delete condition ', err);\r\n });\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'Modal_Title' | translate }}\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-dsccode',\r\n templateUrl: './dsccode.component.html',\r\n styleUrls: ['./dsccode.component.scss']\r\n})\r\nexport class DSCcodeComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('shippingagent') shippingagent;\r\n @Input('vessel') vessel;\r\n\r\n userdata: any;\r\n private langChangeSubscription: Subscription;\r\n appname = environment.APP_NAME;\r\n // printURL: any;\r\n itemList: any;\r\n modalTitle: any;\r\n master: any = {\r\n id: null,\r\n code: '',\r\n description: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n updatedate: null,\r\n active: true\r\n }\r\n showtitle: boolean;\r\n\r\n constructor(\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, \r\n private cdRef: ChangeDetectorRef, private toastr: NotificationService, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.shippingagent == 'shippingagent') {\r\n this.modalTitle = 'Shipping Agent';\r\n this.getShippingAgentIndexValues();\r\n }\r\n else if (this.vessel == 'vessel') {\r\n this.modalTitle = 'Vessels';\r\n this.getVesselsIndexValues();\r\n }\r\n else if (this.vessel == 'terms') {\r\n this.modalTitle = 'Terms';\r\n this.getTermsIndexValues();\r\n }\r\n // console.log('log for title', this.term);\r\n\r\n this.showtitle = true;\r\n this.cdRef.detectChanges();\r\n \r\nthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\tthis.loadComponentTranslations(lang); \r\n}); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/purchase/customsdeclaration/basic/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n initializeValues() {\r\n this.master = {\r\n id: null,\r\n code: '',\r\n description: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n };\r\n }\r\n editMasterData(item) {\r\n this.master = item;\r\n }\r\n deleteMasterData(item) {\r\n if (this.shippingagent == 'shippingagent') {\r\n this.deleteShippingAgent(item);\r\n }\r\n else if (this.vessel == 'vessel') {\r\n this.deleteVessels(item);\r\n }\r\n }\r\n validatePostValues() {\r\n if (this.master.description == undefined || this.master.description == '') {\r\n Swal.fire('', 'Please enter name', 'warning');\r\n return;\r\n }\r\n if (this.master.code == undefined || this.master.code == '') {\r\n Swal.fire('', 'Please enter code', 'warning');\r\n return;\r\n }\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n if (this.shippingagent == 'shippingagent') {\r\n this.postShippingAgent();\r\n }\r\n else if (this.vessel == 'vessel') {\r\n this.postVessels();\r\n }\r\n else if (this.vessel == 'terms') {\r\n this.postTerms();\r\n }\r\n }\r\n\r\n // ***** shipping agent begin ***********\r\n getShippingAgentIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getShippingAgentIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(element => {\r\n element.code = element.CODE;\r\n element.description = element.NAME\r\n })\r\n environment.production ? '' : console.log('shipping agent', this.itemList)\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postShippingAgent() {\r\n var postobj = {\r\n id: this.master.id,\r\n CODE: this.master.code,\r\n NAME: this.master.description,\r\n companyid: this.userdata.companyid,\r\n createby: this.master.id ? this.master.createby : this.userdata.email,\r\n createdate: this.master.id ? this.master.createdate : this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n updateby: this.master.id ? this.userdata.email : null,\r\n updatedate: this.master.id ? this.datepipe.transform(new Date(), this.userdata.postdatetimeformat) : null\r\n\r\n }\r\n this.loader.start();\r\n this.service.postShippingAgent(postobj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n this.itemList.forEach(element => {\r\n element.code = element.CODE;\r\n element.description = element.NAME\r\n })\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteShippingAgent(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteShippingAgent(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getShippingAgentIndexValues();\r\n } else {\r\n this.toastr.Error('Record not deleted');\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete shipping agent');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** shipping agent end ***********\r\n\r\n // ***** Vessels begin ***********\r\n getVesselsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getVesselsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postVessels() {\r\n this.loader.start();\r\n this.service.postVessels(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteVessels(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteVessels(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getVesselsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete vessels');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Vessels end ***********\r\n //*****Terms start code ********/\r\n getTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postTerms() {\r\n this.loader.start();\r\n this.master.active = 1;\r\n this.service.postDeliveryTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteVessels(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete vessels');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ******terms code end ******\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    {{modalTitle}}

    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Modal3_Table.ID_Column' | translate }}{{ 'Modal3_Table.Code_Column' | translate }}{{ 'Modal3_Table.Description_Column' | translate }}{{ 'Modal3_Table.Action_Column' | translate }}
    {{item.id}}{{item.code}}{{item.description}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-empadhocpayments',\r\n templateUrl: './empadhocpayments.component.html',\r\n styleUrls: ['./empadhocpayments.component.scss']\r\n})\r\nexport class EmpadhocpaymentsComponent implements OnInit {\r\n header: any;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n setCustomerValue: any;\r\n keyword = 'name';\r\n validatecustomer: any;\r\n paymentList: any = [];\r\n subscription: Subscription;\r\n employeeList: any = [];\r\n ref_type: any = '';\r\n empid:any=null;\r\n searchtxt: any = '';\r\n selectedReference: any = {};\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n constructor(private commonService: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private toastr:NotificationService,\r\n private datepipe: DatePipe\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getReferences();\r\n }\r\n\r\n getReferences() {\r\n if(!this.empid){\r\n // this.toastr.Error('Please select employee');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonService.getEmployeeAdHocPayRef(this.empid,this.ref_type, this.searchtxt).subscribe((data) => {\r\n this.loader.stop();\r\n this.paymentList = data;\r\n environment.production ? '' : console.log('employee list data ', data);\r\n }, (err) => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n }\r\n );\r\n }\r\n\r\n selectRef(data) {\r\n this.selectedReference = data;\r\n }\r\n preventEvent(event: Event): void {\r\n event.stopPropagation(); // Prevents event bubbling\r\n event.preventDefault(); // Prevents default action (if any)\r\n }\r\n\r\n ngAfterViewInit() {\r\n const source = interval(500);\r\n this.subscription = source.subscribe(val => {\r\n if (!this.SearchElement.nativeElement.focus()) {\r\n this.SearchElement.nativeElement.focus()\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n console.log('destroyed')\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Award#NamePOCPayment TermsCurrencyLocal
    \r\n
    {{item.refno}}\r\n
    \r\n
    \r\n
    {{item.emp_name}}\r\n
    \r\n
    \r\n
    {{item.description}}\r\n
    \r\n
    \r\n
    {{item.currency}}\r\n
    \r\n
    \r\n
    {{item.roe}}\r\n
    \r\n
    \r\n
    {{item.amount}}
    \r\n
    \r\n
    Your search result yielded no results
    \r\n
    \r\n
    \r\n
    ","import {NgModule} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgToggleModule } from 'ng-toggle-button';\r\nimport { EmpadhocpaymentsComponent } from './empadhocpayments.component';\r\n\r\n@NgModule({\r\n declarations: [EmpadhocpaymentsComponent],\r\n imports:[CommonModule, FormsModule, NgbModule, NgbTooltipModule, NgToggleModule],\r\n exports: [EmpadhocpaymentsComponent],\r\n})\r\nexport class EmpAdhocPaymentListModule {}","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SupplierListComponent } from '../supplier-list/supplier-list.component';\r\nimport { PartysComponent } from '../partysmodal/partysmodal.component';\r\nimport { ProjjoblistmodalComponent } from '../projjoblistmodal/projjoblistmodal.component';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { param } from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-expensereqmodal',\r\n templateUrl: './expensereq.component.html',\r\n styleUrls: ['./expensereq.component.scss']\r\n})\r\nexport class ExpenseReqModalComponent implements OnInit {\r\n fullScreen = false;\r\n @Input() params;\r\n poDetails: any = {\r\n costingItems: []\r\n };\r\n itemStatus: any = ''\r\n userdata: any;\r\n fieldsetDisabled = false;\r\n expRequestData: any = {\r\n \"id\": null,\r\n \"submittedby\": null,\r\n \"expensedate\": null,\r\n \"description\": \"\",\r\n \"notes\": \"\",\r\n \"seq\": null,\r\n \"reqno\": \"\",\r\n \"companyid\": null,\r\n \"projectid\": null,\r\n \"approvedby\": \"\",\r\n \"receiptno\": \"\",\r\n \"expno\": \"\",\r\n \"status\": \"pending\",\r\n \"currency\": \"\",\r\n \"ticketid\": null,\r\n \"supplierid\": null,\r\n \"supplier\": \"\",\r\n \"tags\": \"\",\r\n \"roe\": 0,\r\n \"tpcode\": \"\",\r\n \"reimbursable\": false,\r\n \"projref\": \"\",\r\n \"payment_mode\": \"\",\r\n \"cheque_no\": \"\",\r\n \"amount\": 0,\r\n \"createby\": \"\",\r\n \"createdate\": null,\r\n \"updateby\": \"\",\r\n \"updatedate\": null,\r\n \"margin\": 0\r\n }\r\n private langChangeSubscription: Subscription;\r\n appname = environment.APP_NAME;\r\n reimbursTypes: any = [];\r\n partyTypeList: any = [];\r\n totalTaxableAmount = 0;\r\n employeeList: any = [];\r\n statusList: any = [];\r\n paymentModes: any = [];\r\n currencyList: any = [];\r\n isSaved = false;\r\n @ViewChild(SupplierListComponent, { static: false }) SupplierComponent: SupplierListComponent;\r\n @ViewChild(PartysComponent, { static: false }) PartyComponent: PartysComponent;\r\n @ViewChild(ProjjoblistmodalComponent, { static: false }) ProjectsComponent: ProjjoblistmodalComponent;\r\n constructor(private activeModal: NgbActiveModal,\r\n private translate: TranslateService,\r\n private http: HttpClient,\r\n private commonService: CommonServices,\r\n private toaster: NotificationService,\r\n private languageService: LanguageService, private loader: NgxUiLoaderService, private toastr: NotificationService, private datepipe: DatePipe, private service: purchaseServices, private modalService: NgbModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getEmployeeList(); this.service.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n this.selectROE();\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('expreqpaymentmode').subscribe(res => {\r\n this.paymentModes = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('expreqstatus').subscribe(res => {\r\n this.statusList = res;\r\n }, err => {\r\n });\r\n }\r\n\r\n addExpenseReq() {\r\n if (this.expRequestData.id) {\r\n this.expRequestData.updateby = this.userdata.email;\r\n this.expRequestData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.expRequestData.t_expensetracking = this.expRequestData.expenseTrackings;\r\n this.expRequestData.t_exptransactions = this.expRequestData.expenseTransactions;\r\n }\r\n else {\r\n this.expRequestData.companyid = this.userdata.companyid;\r\n this.expRequestData.createby = this.userdata.email;\r\n this.expRequestData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.expRequestData.expensedate = this.datepipe.transform((this.expRequestData.expensedate), this.userdata.postdatetimeformat);\r\n this.loader.start();\r\n this.service.postExpenseReuest(this.expRequestData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isSaved = true;\r\n }\r\n this.closeModal();\r\n }, err => {\r\n this.loader.stop()\r\n environment.production ? '' : console.log('Error : While loading post expense ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n if (this.params.ticketid) {\r\n this.expRequestData.projref = this.params.projref;\r\n this.expRequestData.ticketid = this.params.ticketid;\r\n }\r\n if (this.params.id) {\r\n this.getExpReqDetails(this.params.id);\r\n } else {\r\n this.expRequestData.roe = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.amount = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.margin = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.expensedate = this.datepipe.transform(new Date(), this.userdata.date_format);\r\n }\r\n }\r\n getExpReqDetails(id) {\r\n this.loader.start();\r\n this.service.getExpenseReuestByID(id).subscribe(res => {\r\n this.loader.stop();\r\n this.expRequestData = res;\r\n this.expRequestData.roe = this.expRequestData.roe ? Number(0).toFixed(this.userdata.decimals_allowed) : Number(this.expRequestData.roe).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.amount = this.expRequestData.amount ? Number(0).toFixed(this.userdata.decimals_allowed) : Number(this.expRequestData.amount).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.margin = this.expRequestData.margin ? Number(0).toFixed(this.userdata.decimals_allowed) : Number(this.expRequestData.margin).toFixed(this.userdata.decimals_allowed);\r\n this.expRequestData.submittedby = this.expRequestData.submittedby ? '' + this.expRequestData.submittedby : null;\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n getEmployeeList() {\r\n this.loader.start();\r\n this.commonService.getEmployees().subscribe(data => {\r\n this.loader.stop();\r\n this.employeeList = data;\r\n }, err => {\r\n });\r\n }\r\n\r\n getCurrentROE() {\r\n if (!this.expRequestData.currency) {\r\n this.toaster.Error('Please select currency');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonService.getExchangeRate(this.userdata.currency, this.expRequestData.currency).subscribe(res => {\r\n this.loader.stop();\r\n this.expRequestData.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/purchase/expenserequest/basic/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n SelectedSupplier() {\r\n this.SupplierComponent.islocal = this.expRequestData.supplierid ? false : true;\r\n if (this.SupplierComponent.selectedSupplier) {\r\n if (this.SupplierComponent.selectedSupplier != null) {\r\n if (this.SupplierComponent.selectedSupplier.id == undefined) {\r\n return;\r\n }\r\n this.expRequestData.supplierid = this.SupplierComponent.selectedSupplier.id\r\n this.expRequestData.supplier = this.SupplierComponent.selectedSupplier.name;\r\n this.expRequestData.payment_terms = this.SupplierComponent.selectedSupplier.paymentterms;\r\n this.expRequestData.currency = this.SupplierComponent.selectedSupplier.currency;\r\n this.selectROE();\r\n }\r\n }\r\n }\r\n selectedJob() {\r\n this.ProjectsComponent.searchtxt = this.expRequestData.projref ? this.expRequestData.projref : '';\r\n this.ProjectsComponent.customerid = '';\r\n if (this.ProjectsComponent.selectedJob) {\r\n if (this.ProjectsComponent.selectedJob == null || this.ProjectsComponent.selectedJob == '') {\r\n return;\r\n }\r\n this.expRequestData.projref = this.ProjectsComponent.selectedJob.tpcode ? this.ProjectsComponent.selectedJob.tpcode : this.ProjectsComponent.selectedJob.proj;\r\n if (this.ProjectsComponent.selectedJob.type == 'project') {\r\n this.expRequestData.projid = this.ProjectsComponent.selectedJob.refid;\r\n } else if (this.ProjectsComponent.selectedJob.type == 'ticket') {\r\n this.expRequestData.ticketid = this.ProjectsComponent.selectedJob.refid;\r\n }\r\n }\r\n }\r\n\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.expRequestData.currency == element.Value) {\r\n this.expRequestData.roe = Number(element.Value2).toFixed(this.userdata.decimals_allowed) ? Number(element.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n else if (!this.expRequestData.currency) {\r\n this.expRequestData.roe = '';\r\n }\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.isSaved ? 'saved' : 'modal closed');\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Expense Request# {{expRequestData.reqno}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{ 'form_inputs.date_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n {{ 'form_inputs.submittedBy_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ 'form_inputs.supplier_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'form_inputs.amount_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'form_inputs.currency_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-genericintegration',\r\n templateUrl: './genericintegration.component.html',\r\n styleUrls: ['./genericintegration.component.scss']\r\n})\r\nexport class GenericintegrationComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('name') name;\r\n @Input('url') url;\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n constructor(private modalService: NgbModal, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n ngOnInit(): void {\r\n // this.loader.start();\r\n setTimeout(() => {\r\n // this.loader.stop();\r\n }, 2000)\r\n this.printURL = this.url;\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Integration\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-genericprint',\r\n templateUrl: './genericprint.component.html',\r\n styleUrls: ['./genericprint.component.scss'],\r\n})\r\nexport class GenericprintComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('name') name;\r\n @Input('id') id;\r\n @Input('reviewer_type') reviewer_type;\r\n @Input('type') type;\r\n @Input('typename') typename;\r\n @Input('fromdate') fromdate;\r\n @Input('todate') todate;\r\n @Input('status') status;\r\n @Input('assignto') assignto;\r\n @Input('params') params;\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n private langChangeSubscription: Subscription;\r\n\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private modalService: NgbModal,\r\n private router: Router,\r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private datepipe: DatePipe,\r\n private service: CommonServices,\r\n public print: NgxPrintElementService\r\n ) {\r\n this.userdata = JSON.parse(\r\n localStorage.getItem(this.appname + 'userprofile')\r\n );\r\n }\r\n ngOnInit(): void {\r\n this.loader.start();\r\n setTimeout(() => {\r\n this.loader.stop();\r\n }, 2000);\r\n environment.production\r\n ? ''\r\n : console.log('print actual module', this.typename);\r\n\r\n if (this.type == 'batchprint') {\r\n if (this.assignto == undefined || this.assignto == null) {\r\n this.assignto = '';\r\n }\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/batchdownloadpdf?companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name +\r\n '&status=' +\r\n this.status +\r\n '&fromdate=' +\r\n this.fromdate +\r\n '&todate=' +\r\n this.todate +\r\n '&id=' +\r\n this.id +\r\n '&assignto=' +\r\n this.assignto;\r\n // const url = this.router.serializeUrl( this.printURL); //for andy's issue redirecting to new tab for print 04/03/2023\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.name == 'printtrwithbarcodes' || this.name == 'printptwithbarcodes') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/downloadhtml?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name;\r\n }\r\n else if (this.type == 'batchprinthtml') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/batchdownloadhtml?companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name +\r\n '&status=' +\r\n this.status +\r\n '&fromdate=' +\r\n this.fromdate +\r\n '&todate=' +\r\n this.todate +\r\n '&assignto=' +\r\n this.assignto;\r\n // const url = this.router.serializeUrl( this.printURL); //for andy's issue redirecting to new tab for print 04/03/2023\r\n window.open(this.printURL, '_blank');\r\n this.closeModal();\r\n } else if (this.name == 'printarstmt') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/downloadstmtpdf?id=' +\r\n this.id +\r\n '&type=' +\r\n this.type +\r\n '&fromdate=' +\r\n this.fromdate +\r\n '&todate=' +\r\n this.todate +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printcd') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printcd?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printvd') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printvd?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'apstatement') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printapstmts?id=' +\r\n this.id +\r\n '&type=' +\r\n this.type +\r\n '&fromdate=' +\r\n this.fromdate +\r\n '&todate=' +\r\n this.todate +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'emp_payslip') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/downloadpdf?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=payslip';\r\n // this.printURL = environment.API_URL + 'public/payslip?id=' + this.id + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printbt') {\r\n //Batch print\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printbt?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printp') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printp?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // this.printURL = environment.API_URL + 'public/downloadpdf?id=' + this.id + '&companyid=' + this.userdata.companyid + '&vw=' + this.typename;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'viewseq') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/print4x2view?start=' +\r\n this.params.start +\r\n '&qty=' +\r\n this.params.qty +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printseq') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/print4x2sequence?start=' +\r\n this.params.start +\r\n '&qty=' +\r\n this.params.qty +\r\n '&printerid=' +\r\n this.params.printerid +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printso') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printso?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo;\r\n // this.printURL = environment.API_URL + 'public/downloadpdf?id=' + this.id + '&companyid=' + this.userdata.companyid + '&vw=' + this.typename;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'printes') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/printes?companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&status=' +\r\n this.status +\r\n '&fromdate=' +\r\n this.fromdate +\r\n '&todate=' +\r\n this.todate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'intership') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/intership?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&empid=' +\r\n this.params.empid;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'release') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/release?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&empid=' +\r\n this.params.empid;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.name == 'printass') {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/downloadasspdf?id=' +\r\n this.id +\r\n '&reviewer_type=' +\r\n this.reviewer_type +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else {\r\n this.printURL =\r\n environment.API_URL +\r\n 'public/downloadpdf?id=' +\r\n this.id +\r\n '&companyid=' +\r\n this.userdata.companyid +\r\n '&un=' +\r\n this.userdata.company_web_token +\r\n '&actionby=' +\r\n this.userdata.email +\r\n '&actiondate=' +\r\n this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +\r\n '&logo=' +\r\n this.userdata.logo +\r\n '&vw=' +\r\n this.name;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/basicinfo/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n {{ 'Projjoblistmodal.Print' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    ","import { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {\r\n FileSystemFileEntry,\r\n NgxFileDropEntry\r\n} from 'ngx-file-drop';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n// import { Papa } from 'ngx-papaparse';\r\n\r\n@Component({\r\n selector: 'app-import',\r\n templateUrl: './import.component.html',\r\n styleUrls: ['./import.component.scss'],\r\n})\r\nexport class ImportComponent implements OnInit {\r\n fullScreen = false;\r\n selectedCSVFileName: any;\r\n private langChangeSubscription: Subscription;\r\n isCSV_Valid: boolean;\r\n @Input('title') title;\r\n\r\n rulelist: any = [];\r\n csvContent: any;\r\n contacts: any[];\r\n properties: any[];\r\n flag: boolean;\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private toastr: NotificationService\r\n ) {\r\n environment.production ? '' : console.log('rule', this.rulelist);\r\n const csvData = '';\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/import/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n \r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n public files: NgxFileDropEntry[] = [];\r\n\r\n public dropped(files: NgxFileDropEntry[]) {\r\n for (const droppedFile of files) {\r\n // Is it a file?\r\n if (\r\n droppedFile.fileEntry.isFile &&\r\n this.isFileAllowed(droppedFile.fileEntry.name)\r\n ) {\r\n this.files = files;\r\n const fileEntry = droppedFile.fileEntry as FileSystemFileEntry;\r\n fileEntry.file((file: File) => {\r\n // Here you can access the real file\r\n environment.production\r\n ? ''\r\n : console.log(droppedFile.relativePath, file);\r\n const formData = new FormData();\r\n formData.append('File', file, droppedFile.relativePath);\r\n });\r\n } else {\r\n this.toastr.Error(\r\n \"Only files in '.csv' format are accepted and directories are not allowed.\"\r\n );\r\n return false;\r\n }\r\n }\r\n }\r\n // csvToArray(str, delimiter = \",\") {\r\n // // slice from start of text to the first \\n index\r\n // // use split to create an array from string by delimiter\r\n // const headers = str.slice(0, str.indexOf(\"\\n\")).split(delimiter);\r\n\r\n // // slice from \\n index + 1 to the end of the text\r\n // // use split to create an array of each csv value row\r\n // const rows = str.slice(str.indexOf(\"\\n\") + 1).split(\"\\n\");\r\n // }\r\n\r\n isFileAllowed(fileName: string) {\r\n let isFileAllowed = false;\r\n const allowedFiles = ['.csv'];\r\n const regex = /(?:\\.([^.]+))?$/;\r\n const extension = regex.exec(fileName);\r\n if (undefined !== extension && null !== extension) {\r\n for (const ext of allowedFiles) {\r\n if (ext === extension[0]) {\r\n isFileAllowed = true;\r\n }\r\n }\r\n }\r\n return isFileAllowed;\r\n }\r\n //open csv file and read\r\n\r\n // fileChangeListener($event: any): void {\r\n\r\n // const files = $event.srcElement.files;\r\n\r\n // if (files !== null && files !== undefined && files.length > 0) {\r\n // this.selectedCSVFileName = files[0].name;\r\n\r\n // const reader: FileReader = new FileReader();\r\n // reader.readAsText(files[0]);\r\n // reader.onload = e => {\r\n\r\n // const csv = reader.result;\r\n // const results = this.papa.parse(csv as string, { header: false });\r\n // // this.papa.parse(results.data[0], {\r\n // // complete: function (results) {\r\n // // environment.production ? '' : console.log('skfdsdfsd', results);\r\n // // }\r\n // // });\r\n // environment.production ? '' : console.log('csv file 11 ', results);\r\n\r\n // // VALIDATE PARSED CSV FILE\r\n // if (results !== null && results !== undefined && results.data !== null &&\r\n // results.data !== undefined && results.data.length > 0 && results.errors.length === 0) {\r\n // this.isCSV_Valid = true;\r\n\r\n // // PERFORM OPERATIONS ON PARSED CSV\r\n // let csvTableHeader = results.data[0];\r\n\r\n // let csvTableData = [...results.data.slice(1, results.data.length)];\r\n // environment.production ? '' : console.log('csv file ', csvTableData);\r\n\r\n // } else {\r\n // for (let i = 0; i < results.errors.length; i++) {\r\n // environment.production ? '' : console.log('Error Parsing CSV File: ', results.errors[i].message);\r\n // }\r\n // }\r\n // };\r\n // } else {\r\n // environment.production ? '' : console.log('No File Selected');\r\n // }\r\n\r\n // }\r\n //\r\n\r\n onFileLoad(fileLoadedEvent) {\r\n const textFromFileLoaded = fileLoadedEvent.target.result;\r\n this.csvContent = textFromFileLoaded;\r\n environment.production ? '' : console.log('csv', this.csvContent);\r\n\r\n //Flag is for e xtracting first line\r\n let flag = false;\r\n // Main Data\r\n let objarray: Array = [];\r\n //Properties\r\n let prop: Array = [];\r\n //Total Length\r\n let size: any = 0;\r\n\r\n for (const line of this.csvContent.split(/[\\r\\n]+/)) {\r\n if (flag) {\r\n let obj = {};\r\n for (let k = 0; k < size; k++) {\r\n //Dynamic Object Properties\r\n obj[prop[k]] = line.split(',')[k];\r\n }\r\n objarray.push(obj);\r\n } else {\r\n //First Line of CSV will be having Properties\r\n for (let k = 0; k < line.split(',').length; k++) {\r\n size = line.split(',').length;\r\n //Removing all the spaces to make them usefull\r\n prop.push(line.split(',')[k].replace(/ /g, ''));\r\n }\r\n flag = true;\r\n }\r\n }\r\n this.contacts = objarray;\r\n this.properties = [];\r\n\r\n this.properties = prop;\r\n environment.production ? '' : console.log(this.properties);\r\n environment.production ? '' : console.log(this.contacts);\r\n this.flag = true;\r\n // environment.production ? '' : console.log(this.csvContent);\r\n }\r\n\r\n onFileSelect(input: HTMLInputElement) {\r\n const files = input.files;\r\n var fileTypes = ['csv']; //acceptable file types\r\n\r\n if (files && files.length) {\r\n var extension = input.files[0].name.split('.').pop().toLowerCase(), //file extension from input file\r\n isSuccess = fileTypes.indexOf(extension) > -1; //is extension in acceptable types\r\n //environment.production ? '' : console.log(isSuccess);\r\n // environment.production ? '' : console.log(\"Filename: \" + files[0].name);\r\n // environment.production ? '' : console.log(\"Type: \" + files[0].type);\r\n // environment.production ? '' : console.log(\"Size: \" + files[0].size + \" bytes\");\r\n if (isSuccess) {\r\n const fileToRead = files[0];\r\n\r\n const fileReader = new FileReader();\r\n fileReader.onload = this.onFileLoad;\r\n\r\n fileReader.readAsText(fileToRead, 'UTF-8');\r\n } else {\r\n // this.toastr.error(\"Invalid File Type\", 'Failed');\r\n }\r\n }\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{title}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{ 'Upload_Section.Title' | translate }}      \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'Upload_Section.Button_Label' | translate }}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n
    {{ 'Rules_Section.Title' | translate }}
    {{ item.name }}
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n\r\n \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\n\r\n@Component({\r\n selector: 'app-itemcodelist',\r\n templateUrl: './itemcodelist.component.html',\r\n styleUrls: ['./itemcodelist.component.scss']\r\n})\r\nexport class ItemcodelistComponent implements OnInit {\r\n fullScreen = false;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n codeList: any = [];\r\n serialno: any = '';\r\n cpcCodeLst: any = [];\r\n constructor(private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private service: purchaseServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n getCodeList() {\r\n this.loader.start();\r\n this.service.getCodes(this.serialno).subscribe(res => {\r\n this.loader.stop();\r\n this.codeList = res;\r\n environment.production ? '' : console.log('codeList data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading codeList data', err);\r\n });\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n }\r\n\r\n closeModal(item) {\r\n var code = { code: item };\r\n this.activeModal.close(code);\r\n }\r\n select(item) {\r\n\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Items Code List\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    Search by Code Or Description
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Show
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    CodeDescriptionUOMDuty
    {{item.code}}{{item.description}}{{item.uom}}{{item.rate}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AngularCsv } from 'angular-csv-ext/dist/Angular-csv';\r\nimport { NgxFileDropEntry, FileSystemFileEntry, FileSystemDirectoryEntry } from 'ngx-file-drop';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { ExcelService } from 'src/app/shared/service/excel.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { reportServices } from '../../reports/reports.service';\r\nimport { ReportgenericprintComponent } from '../reportgenericprint/reportgenericprint.component';\r\n// import { Papa } from 'ngx-papaparse';\r\n\r\n@Component({\r\n selector: 'app-ledgers',\r\n templateUrl: './ledgers.component.html',\r\n styleUrls: ['./ledgers.component.scss']\r\n})\r\nexport class LedgersComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('coa_id') coa_id;\r\n @Input('coa_name') coa_name;\r\n //#region userdata block\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n totalRows: any = 0;\r\n //#endregion userdata block\r\n\r\n ledgerList: any;\r\n public isShow: boolean = false\r\n dataXLSX: any;\r\n formula: string = 'Ledger';\r\n ledg: any = {\r\n fromdate: '',\r\n enddate: '',\r\n coa: '',\r\n refno: ''\r\n };\r\n dropdownSettings = {};\r\n dropdownList: any = [];\r\n public isCollapsed = false;\r\n\r\n closeResult: string;\r\n public config = {\r\n printMode: 'template-popup',\r\n popupProperties: 'toolbar=yes,scrollbars=yes,resizable=yes,top=0,left=0,fullscreen=yes',\r\n styles: ['#print-section {width:100%;display: block !important; page-break-after: always;}', '.TaskPrint {width:100%;}', 'body { width:100%;}', 'table {width:100%}']\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n\r\n\r\n glAccList: any = [];\r\n accountGroupingList: any = []\r\n constructor(\r\n private loader: NgxUiLoaderService,\r\n private excel: ExcelService,\r\n private modalService: NgbModal,\r\n private service: reportServices,\r\n private datepipe: DatePipe,\r\n private appService: AppServices,\r\n private commonservice: CommonServices,\r\n private activeModal: NgbActiveModal\r\n\r\n ) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n this.settings.pager.perPage = Number(this.userdata.grid_page_size ? this.userdata.grid_page_size : 10);\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n\r\n //added for delete for header title by mayur 23/04/23\r\n var editDataForHeader = ''\r\n this.commonservice.headerEditItemData.next(editDataForHeader);\r\n\r\n this.ledg.fromdate = this.userdata.fromdate;\r\n this.ledg.todate = this.datepipe.transform(new Date(), 'yyyy-MM-dd')\r\n environment.production ? '' : console.log('from date', this.ledg.fromdate);\r\n environment.production ? '' : console.log('end date', this.ledg.todate);\r\n this.getglaccountlist();\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n open(content) {\r\n this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n\r\n getDismissReason(reason: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n getglaccountlist() {\r\n this.appService.getGlAccounts().subscribe(res => {\r\n this.glAccList = res;\r\n this.dropdownList = [];\r\n this.glAccList.forEach(element => {\r\n this.dropdownList.push({\r\n \"id\": Number(element.Value),\r\n \"itemName\": element.Text,\r\n \"category\": element.Value1,\r\n })\r\n });\r\n this.accountGroupingList = Array.from(new Set(this.glAccList.map(({ Value1 }) => Value1)));\r\n environment.production ? '' : console.log('list', this.accountGroupingList);\r\n environment.production ? '' : console.log('glAccount', res)\r\n })\r\n }\r\n ngOnInit() {\r\n //#region Grid Settings\r\n if (this.userdata.grid_inline_filter === false) {\r\n this.settings.hideSubHeader = true;\r\n environment.production ? '' : console.log('settings.hideSubHeader :', this.settings.hideSubHeader);\r\n } else {\r\n this.settings.hideSubHeader = false;\r\n environment.production ? '' : console.log('settings.hideSubHeader :', this.settings.hideSubHeader);\r\n }\r\n this.settings.pager.perPage = this.userdata.grid_page_size;\r\n environment.production ? '' : console.log('settings.perPage :', this.settings.pager.perPage);\r\n //#region Grid Settings\r\n\r\n this.getBalanceSheet();\r\n this.dropdownSettings = {\r\n disabled: false,\r\n itemDisabled: false,\r\n singleSelection: true,\r\n text: \"Select GL Account\",\r\n groupBy: 'category',\r\n enableSearchFilter: true,\r\n searchPlaceholderText: 'Search GL Acount'\r\n };\r\n }\r\n\r\n onItemSelect(item: any) {\r\n environment.production ? '' : console.log(item);\r\n this.ledg.coa = item.id;\r\n environment.production ? '' : console.log(this.ledg.coa);\r\n }\r\n OnItemDeSelect(item: any) {\r\n environment.production ? '' : console.log(item);\r\n this.ledg.coa = '';\r\n environment.production ? '' : console.log(this.ledg.coa);\r\n }\r\n\r\n getBalanceSheet() {\r\n this.loader.start();\r\n\r\n this.service.getAccountDetails(\r\n this.coa_id,\r\n this.datepipe.transform(this.ledg.fromdate, this.userdata.postdateformat),\r\n this.datepipe.transform(this.ledg.todate, this.userdata.postdateformat)\r\n ).subscribe(res => {\r\n this.loader.stop();\r\n\r\n this.ledgerList = res;\r\n this.ledgerList.forEach(element => {\r\n element.tran_date = element.tran_date ? this.datepipe.transform(new Date(element.tran_date), this.userdata.postdateformat) : null\r\n if (element.dr != null && element.dr != 0) {\r\n element.dr = element.dr.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.dr = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n if (element.cr != null && element.cr != 0) {\r\n element.cr = element.cr.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.cr = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n if (element.running_total != null && element.running_total != 0) {\r\n element.running_total = element.running_total.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.running_total = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n });\r\n\r\n environment.production ? '' : console.log('ledgerList data ', res);\r\n\r\n //#region Get total rows\r\n this.totalRows = this.ledgerList != null ? this.ledgerList.length : null;\r\n environment.production ? '' : console.log('Total Rows', this.totalRows);\r\n //#region Get total rows\r\n\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading ledgerList ', err);\r\n });\r\n }\r\n\r\n public settings = {\r\n pager: {\r\n display: true,\r\n perPage: 0\r\n },\r\n hideSubHeader: true,\r\n actions: false,\r\n columns: {\r\n // sort:true,\r\n tran_date: {\r\n title: 'Date',\r\n sort: true,\r\n },\r\n narration: {\r\n title: 'Description',\r\n sort: true,\r\n type: 'html',\r\n },\r\n refno: {\r\n title: 'Refno',\r\n sort: true,\r\n },\r\n dr: {\r\n title: 'Debit',\r\n sort: true,\r\n },\r\n cr: {\r\n title: 'Credit',\r\n sort: true,\r\n },\r\n running_total: {\r\n title: 'Running Total',\r\n sort: true,\r\n },\r\n },\r\n };\r\n\r\n exportAsXLSX(): void {\r\n this.dataXLSX = this.ledgerList;\r\n this.excel.exportAsExcelFile(this.dataXLSX, this.formula);\r\n }\r\n exportAsCSV() {\r\n var reportColumnList = [];\r\n for (var property in this.ledgerList[0]) {\r\n reportColumnList.push(property)\r\n }\r\n var data = this.ledgerList;\r\n var options = {\r\n title: this.formula,\r\n fieldSeparator: ',',\r\n quoteStrings: '\"',\r\n decimalseparator: '.',\r\n showLabels: true,\r\n showTitle: true,\r\n useBom: true,\r\n headers: reportColumnList\r\n };\r\n new AngularCsv(data, this.formula, options);\r\n }\r\n\r\n print() {\r\n var modalRef = this.modalService.open(ReportgenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.params = { fromdate: this.datepipe.transform(this.ledg.fromdate, this.userdata.postdateformat), todate: this.datepipe.transform(this.ledg.todate, this.userdata.postdateformat), coa: this.coa_id };\r\n modalRef.componentInstance.typename = 'details';\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{coa_name}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
      \r\n
    • Export to csv
    • \r\n
    • Export to excel
    • \r\n
    • Print
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport { PartysComponent } from '../partysmodal/partysmodal.component';\r\n\r\n@Component({\r\n selector: 'app-loanapplication',\r\n templateUrl: './loanapplication.component.html',\r\n styleUrls: ['./loanapplication.component.scss']\r\n})\r\nexport class LoanApplicationModalComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n private langChangeSubscription: Subscription; \r\n appname = environment.APP_NAME;\r\n contactList: any = [];\r\n selectedContact: any;\r\n partyTypeList: any = [];\r\n loanAppStatus: any = [];\r\n loanTypes: any = [];\r\n loanapp: any = {\r\n \"id\": null,\r\n \"companyid\": null,\r\n \"applicationdate\": null,\r\n \"loantype\": \"\",\r\n \"requested_amt\": 0,\r\n \"currency\": \"\",\r\n \"status\": \"submitted\",\r\n \"approved_amt\": 0,\r\n \"approveby\": \"\",\r\n \"approvedate\": \"\",\r\n \"loanappno\": \"\",\r\n \"createby\": \"\",\r\n \"createdate\": \"\",\r\n \"updateby\": \"\",\r\n \"updatedate\": \"\",\r\n \"deleteby\": \"\",\r\n \"deletedate\": \"\",\r\n \"seq\": null,\r\n \"party_type\": \"\",\r\n \"party_id\": null,\r\n \"priority\": \"medium\",\r\n \"expected_date\": \"\",\r\n \"party_name\": \"\",\r\n \"category\": \"\"\r\n }\r\n currencyList: any = [];\r\n priorityList: any = [];\r\n fieldsetDisabled = false;\r\n isShowFields = true;\r\n uploader: FileUploader;\r\n filename: any;\r\n response: any;\r\n t_loan_app_documents: any = [];\r\n uploadedFiles: any = [];\r\n loanCatList: any = [];\r\n isSaved = false;\r\n @Input() params;\r\n @ViewChild(PartysComponent, { static: false }) PartyComponent: PartysComponent;\r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private modalService: NgbModal,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private datepipe: DatePipe, private service: accountServices) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.loanapp.applicationdate = datepipe.transform(new Date(), this.userdata.date_format);\r\n this.commonService.getComboEnums('partytype').subscribe(res => {\r\n this.partyTypeList = res;\r\n })\r\n this.commonService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('loanapppriorities').subscribe(res => {\r\n this.priorityList = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('loanappstatus').subscribe(res => {\r\n this.loanAppStatus = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('loancategory').subscribe(res => {\r\n this.loanCatList = res;\r\n }, err => {\r\n });\r\n }\r\n selectContact(item) {\r\n this.selectedContact = item;\r\n this.closeModal();\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.params.id) {\r\n this.getLoanApplicationById(this.params.id);\r\n } else if (this.params.party_id) {\r\n this.loanapp.party_id = this.params.party_id;\r\n this.loanapp.party_name = this.params.party_name;\r\n this.loanapp.party_type = this.params.party_type;\r\n }\r\n if (this.params.from == 'userprofile') {\r\n this.isShowFields = false;\r\n }\r\n this.initializeFileUploader();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n \r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/hr/loanapplications/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n\r\n\r\n getLoanType() {\r\n if (!this.loanapp.category) {\r\n return;\r\n }\r\n \r\n this.loader.start();\r\n this.commonService.getLoanType(this.loanapp.category).subscribe(res => {\r\n this.loader.stop();\r\n this.loanTypes = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n getLoanApplicationById(id) {\r\n this.loader.start();\r\n this.service.getLoanApplicationById(id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.loanapp = res;\r\n \r\n this.uploadedFiles = this.loanapp.documents;\r\n this.uploadedFiles.forEach(element => {\r\n element.file_url = environment.DOC_URL + '/' + this.userdata.companyid + '/' + element.file_name\r\n });\r\n this.getLoanType();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading lead contact ', err);\r\n });\r\n }\r\n selectPartyType() {\r\n this.loanapp.party_id = null;\r\n this.loanapp.party_name = '';\r\n this.PartyComponent.type = this.loanapp.party_type;\r\n }\r\n selectedParty() {\r\n this.PartyComponent.type = this.loanapp.party_type;\r\n if (this.PartyComponent.selectedParty) {\r\n if (this.PartyComponent.selectedParty == null || this.PartyComponent.selectedParty == '') {\r\n return;\r\n }\r\n this.loanapp.party_id = this.PartyComponent.selectedParty.Value;\r\n this.loanapp.party_name = this.PartyComponent.selectedParty.Text;\r\n this.loanapp.currency = this.PartyComponent.selectedParty.Value4;\r\n this.PartyComponent.selectedParty = '';\r\n }\r\n }\r\n openFile(file) {\r\n\r\n }\r\n saveloanapp() {\r\n if ((this.loanapp.id)) {\r\n this.loanapp.updateby = this.userdata.email;\r\n this.loanapp.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.loanapp.createdate = this.datepipe.transform(new Date(this.loanapp.createdate), this.userdata.postdatetimeformat);\r\n // this.loanapp.t_loan_app_documents.forEach(item => {\r\n // this.t_loan_app_documents.push(item);\r\n // })\r\n } else {\r\n this.loanapp.companyid = this.userdata.companyid;\r\n this.loanapp.createby = this.userdata.email;\r\n this.loanapp.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n if(!this.loanapp.currency) {\r\n this.loanapp.currency = this.userdata.currency;\r\n }\r\n this.loanapp.expected_date = this.loanapp.expected_date ? this.datepipe.transform(new Date(this.loanapp.expected_date), this.userdata.postdatetimeformat) : null;\r\n this.loanapp.applicationdate = this.loanapp.applicationdate ? this.datepipe.transform(new Date(this.loanapp.applicationdate), this.userdata.postdatetimeformat) : null;\r\n this.loanapp.approvedate = this.loanapp.approvedate ? this.datepipe.transform(new Date(this.loanapp.approvedate), this.userdata.postdatetimeformat) : null;\r\n this.loanapp.t_loan_app_documents = this.t_loan_app_documents;\r\n this.loader.start();\r\n this.service.postLoanApplication(this.loanapp).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n if (this.t_loan_app_documents.length > 0) {\r\n this.uploadFile()\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading lead contact ', err);\r\n });\r\n }\r\n //File uploader code\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n }\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('createby', this.userdata.email);\r\n form.append('refno', this.loanapp.id);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'loan-files');\r\n };\r\n this.response = '';\r\n this.uploader.response.subscribe((res: any) => {\r\n this.loader.stop();\r\n res = JSON.parse(res);\r\n if (res != null) {\r\n this.response = res.data;\r\n }\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n this.uploader.onAfterAddingAll = (files: any) => {\r\n files.forEach(fileItem => {\r\n // fileItem.file.name = fileItem.file.name.replace(/\\.[^/.]+$/, \"\");\r\n environment.production ? '' : console.log('file name: ' + fileItem.file.name);\r\n this.t_loan_app_documents.push({\r\n \"loan_app_id\": this.loanapp.id,\r\n \"file_name\": fileItem.file.name,\r\n \"active\": true,\r\n \"companyid\": this.userdata.companyid,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n })\r\n });\r\n };\r\n }\r\n uploadFile() {\r\n this.t_loan_app_documents.forEach((file, index) => {\r\n if (this.t_loan_app_documents.length - 1 == index) {\r\n this.t_loan_app_documents = [];\r\n }\r\n this.uploader.queue[index].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n // this.toastr.Success(\"File uploaded sucessfully\")\r\n environment.production ? '' : console.log('upload', status);\r\n } else {\r\n // this.toastr.Success(\"File uploaded falid\")\r\n environment.production ? '' : console.log('upload faild', status);\r\n // Swal.fire('', 'File uploaded', 'success');\r\n }\r\n };\r\n this.uploader.queue[index].upload();\r\n })\r\n }\r\n cancelAttachment() {\r\n this.t_loan_app_documents = [];\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.isSaved ? 'save' : 'closed');\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'modal_title' | translate }} {{loanapp.loanappno}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{ 'modal_inputs.date_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'modal_inputs.loan_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ 'modal_inputs.partyname_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'modal_inputs.currency_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{ 'modal_inputs.requesetdamt_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {{ 'modal_inputs.expecteddate_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n 0\">{{t_loan_app_documents.length}} file\r\n attached\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n {{item.file_name}}\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\n\r\n@Component({\r\n selector: 'app-makepayment',\r\n templateUrl: './makepayment.component.html',\r\n styleUrls: ['./makepayment.component.scss']\r\n})\r\nexport class MakepaymentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('id') id;\r\n @Input('totalcost') totalcost;\r\n @Input('dueamount') dueamount;\r\n @Input('invoiceno') invoiceno;\r\n\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n paymentMethodList: any = [];\r\n payment: any = {\r\n bankid: ''\r\n }\r\n totalTrCost: any = 0\r\n companyBanks: any = [];\r\n constructor(private activeModal: NgbActiveModal,\r\n private datepipe: DatePipe,\r\n private service: accountServices,\r\n private loader: NgxUiLoaderService,\r\n private toaster: NotificationService,\r\n private commonService: CommonServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commonService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethodList = res;\r\n }, err => {\r\n });\r\n }\r\n getPaymentAccounts() {\r\n var type = '';\r\n this.paymentMethodList.forEach(item => {\r\n if (item.Value == this.payment.mop) {\r\n type = item.Value1 ? item.Value1 : '';\r\n }\r\n })\r\n this.commonService.getCompMOPBankList(this.payment.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n }\r\n addPayment() {\r\n var paymentobj = {\r\n \"id\": this.id,\r\n \"companyid\": this.userdata.companyid,\r\n \"payment_type\": this.payment.payment_type,\r\n \"dop\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"refno\": this.invoiceno,\r\n \"memo\": this.payment.memo,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"status\": 'active',\r\n \"isposted\": true,\r\n \"postedby\": this.userdata.email,\r\n \"posteddate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"coa_id\": Number(this.payment.coa_id),\r\n \"bankid\": this.payment.bankid\r\n }\r\n environment.production ? '' : console.log(this.payment);\r\n this.loader.start();\r\n // return false;\r\n this.service.postVendPayment(paymentobj).subscribe(res => {\r\n environment.production ? '' : console.log(res)\r\n this.payment = {}\r\n this.loader.stop();\r\n this.toaster.Success('Record Saved')\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.payment.amt = this.totalcost;\r\n this.payment.balance = this.totalcost - this.dueamount;\r\n }\r\n chagneAmt() {\r\n this.payment.balance = this.totalcost - this.payment.amt;\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Transactions\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Expense TotalTransaction TotalBalance
    {{dueamount}}{{totalTrCost}}{{totalcost}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { SpecmapServices } from '../../specmap/specmap.service';\r\n\r\n@Component({\r\n selector: 'app-masterdata',\r\n templateUrl: './masterdata.component.html',\r\n styleUrls: ['./masterdata.component.scss']\r\n})\r\nexport class MasterdataComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('type') type;\r\n @Input('assetlocation') assetlocation;\r\n @Input('assetcondition') assetcondition;\r\n @Input('assetaction') assetaction;\r\n @Input('empdesignation') empdesignation;\r\n @Input('term') term;\r\n @Input('invoiceterm') invoiceterm;\r\n @Input('manufacturer') manufacturer;\r\n @Input('warehouse') warehouse;\r\n @Input('paymentmethod') paymentmethod;\r\n @Input('employeedepartment') employeedepartment;\r\n @Input('documenttype') documenttype;\r\n @Input('emplocation') emplocation;\r\n\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n itemList: any;\r\n private langChangeSubscription: Subscription;\r\n modalTitle: any;\r\n master: any = {\r\n id: null,\r\n description: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n updatedate: null,\r\n active: true\r\n }\r\n showtitle: boolean;\r\n isCodeFieldShow: boolean = false;\r\n isDataSave = false;\r\n markerTypes: any = [];\r\n detailTypeList: any = [];\r\n constructor(private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient, private modalService: NgbModal, private specmapService: SpecmapServices, private toastr: NotificationService, private cdRef: ChangeDetectorRef, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: CommonServices, public print: NgxPrintElementService, private purchaseservice: purchaseServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n closeModal(action) {\r\n this.isCodeFieldShow = false;\r\n this.activeModal.close(this.isDataSave ? 'save' : action);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.initializeValues();\r\n if (this.type == 'deliveryroutes') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Delivery Routes';\r\n this.getDeliveryRouteIndexValues();\r\n }\r\n if (this.type == 'cpc') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'CPC List';\r\n this.getCpcIndexValues();\r\n }\r\n if (this.type == 'disputereason') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Dispute Reason';\r\n this.getDisputeReasonIndexValues();\r\n }\r\n if (this.type == 'projectype') {\r\n this.modalTitle = 'Project Types';\r\n this.getProjectTypeIndexValues();\r\n }\r\n else if (this.type == 'sotype') {\r\n this.modalTitle = 'Sales Order Types';\r\n this.getSOTypeIndexValues();\r\n }\r\n else if (this.type == 'contracttype') {\r\n this.modalTitle = 'Contract Types';\r\n this.getContractTypeIndexValues();\r\n }\r\n else if (this.type == 'tasktype') {\r\n this.modalTitle = 'Task Types';\r\n this.getTaskTypeIndexValues();\r\n }\r\n else if (this.type == 'salesrequesttype') {\r\n this.modalTitle = 'Sales Request Types';\r\n this.getSalesRequestTypeIndexValues();\r\n }\r\n else if (this.empdesignation == 'empdesignation') {\r\n this.modalTitle = 'Designation';\r\n this.getDesignationIndexValues();\r\n }\r\n else if (this.assetlocation == 'assetlocation') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Assets Location';\r\n this.getAssetsLocationIndexValues();\r\n }\r\n else if (this.assetcondition == 'assetcondition') {\r\n this.modalTitle = 'Assets Condition';\r\n this.getAssetsConditionIndexValues();\r\n }\r\n else if (this.assetaction == 'assetaction') {\r\n this.modalTitle = 'Assets Action';\r\n this.getAssetsActionIndexValues();\r\n }\r\n else if (this.invoiceterm == 'invoiceterm') {\r\n this.modalTitle = 'Invoice Terms';\r\n this.getInvoiceTermsIndexValues();\r\n }\r\n else if (this.term == 'quoteterm') {\r\n this.modalTitle = 'Quote Terms';\r\n this.getQuoteTermsIndexValues();\r\n }\r\n else if (this.term == 'estimateterm') {\r\n this.modalTitle = 'Estimate Terms';\r\n this.getEstimateTermsIndexValues();\r\n }\r\n else if (this.term == 'poterm') {\r\n this.modalTitle = 'Purchase Order Terms';\r\n this.getPOTermsIndexValues();\r\n }\r\n else if (this.term == 'soterm') {\r\n this.modalTitle = 'SO Terms';\r\n this.getSOTermsIndexValues();\r\n }\r\n else if (this.term == 'projecterm') {\r\n this.modalTitle = 'Payment Terms';\r\n this.getProjectTermsIndexValues();\r\n }\r\n else if (this.manufacturer == 'manufacturer') {\r\n this.modalTitle = 'Manufacturer';\r\n this.getManufacturerIndexValues();\r\n }\r\n else if (this.warehouse == 'warehouse') {\r\n this.modalTitle = 'Warehouse';\r\n this.getWarehouseIndexValues();\r\n }\r\n else if (this.paymentmethod == 'paymentmethod') {\r\n this.modalTitle = 'Payment Method';\r\n this.getPaymentMethodIndexValues();\r\n }\r\n else if (this.employeedepartment == 'employeedepartment') {\r\n this.modalTitle = 'Employee Department';\r\n this.getEmployeeDepartmentIndexValues();\r\n }\r\n else if (this.documenttype == 'documenttype') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Document Type';\r\n this.getDocumentTypeIndexValues();\r\n }\r\n else if (this.emplocation == 'emplocation') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Add Location';\r\n this.getLocationIndexValues();\r\n }\r\n else if (this.type == 'customertypes') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Customer Types';\r\n this.getCustomerTypeIndexValues();\r\n }\r\n else if (this.type == 'devicetypes') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Device Types';\r\n this.getMarkerTypes();\r\n this.getDeviceTypeIndexValues();\r\n }\r\n else if (this.type == 'deviceclass') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Device Class';\r\n this.getDeviceClassIndexValues();\r\n }\r\n else if (this.type == 'piterms') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Purchase Invoice Terms';\r\n this.getPITermsIndexValues();\r\n }\r\n else if (this.type == 'disputereason') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Dispute Reason';\r\n this.getDisputeReasonIndexValues();\r\n }\r\n else if (this.type == 'writeoffreasons') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Writeoff Reason';\r\n this.getWriteoffReasonIndexValues();\r\n }\r\n else if (this.type == 'companytrades') {\r\n this.isCodeFieldShow = true;\r\n this.modalTitle = 'Company Trade';\r\n this.getCompanyTradeIndexValues();\r\n } else if (this.type == 'companyregistertype') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Company Register Types';\r\n this.getRegisterTypeIndex();\r\n } else if (this.type == 'itemdetailtype') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Item Detail Type';\r\n this.getProductDetailTypeIndexValues();\r\n } else if (this.type == 'itemdetailtypehdr') {\r\n this.isCodeFieldShow = false;\r\n this.modalTitle = 'Item Detail Type Hdr';\r\n this.getDetailTypes();\r\n this.getProductDetailTypeHdrIndexValues();\r\n }\r\n\r\n environment.production ? '' : console.log('log for title', this.term);\r\n\r\n this.showtitle = true;\r\n this.cdRef.detectChanges();\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/inventory/binlocations/basic/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n ngOnDestroy() {\r\n if (this.langChangeSubscription) {\r\n this.langChangeSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n initializeValues() {\r\n this.master = {\r\n id: null,\r\n code: null,\r\n description: '',\r\n marker_type_id: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n active: true,\r\n detail_type: ''\r\n };\r\n }\r\n editMasterData(item) {\r\n this.master = item;\r\n this.master.active = true;\r\n if (this.type == 'deliveryroutes') {\r\n this.master.description = item.name;\r\n }\r\n if (this.type == 'companytrades' || this.type == 'devicetypes' || this.type == 'deviceclass') {\r\n this.master.code = item.tpcode;\r\n }\r\n }\r\n deleteMasterData(item) {\r\n this.isDataSave = true;\r\n if (this.type == 'projectype') {\r\n this.deleteProjectType(item);\r\n } else if (this.type == 'deliveryroutes') {\r\n this.deleteDeliveryRoute(item)\r\n } else if (this.type == 'salesrequesttype') {\r\n this.deleteSalesRequestType(item)\r\n } else if (this.type == 'cpc') {\r\n this.deleteCPC(item);\r\n } else if (this.type == 'contracttype') {\r\n this.deleteContractType(item);\r\n }\r\n else if (this.type == 'tasktype') {\r\n this.deleteTaskType(item);\r\n }\r\n else if (this.empdesignation == 'empdesignation') {\r\n this.deleteDesignation(item);\r\n }\r\n else if (this.assetlocation == 'assetlocation') {\r\n\r\n this.deleteAssetsLocation(item);\r\n }\r\n else if (this.assetcondition == 'assetcondition') {\r\n this.deleteAssetsCondition(item);\r\n }\r\n else if (this.assetaction == 'assetaction') {\r\n this.deleteAssetsAction(item);\r\n }\r\n else if (this.invoiceterm == 'invoiceterm') {\r\n this.deleteInvoiceTerms(item);\r\n }\r\n else if (this.term == 'quoteterm') {\r\n this.deleteQuoteTerms(item);\r\n }\r\n else if (this.term == 'estimateterm') {\r\n this.deleteEstimateTerms(item);\r\n }\r\n else if (this.term == 'poterm') {\r\n this.deletePOTerms(item);\r\n }\r\n else if (this.term == 'soterm') {\r\n this.deleteSOTerms(item);\r\n }\r\n else if (this.term == 'projecterm') {\r\n this.deleteProjectTerms(item);\r\n }\r\n else if (this.manufacturer == 'manufacturer') {\r\n this.deleteManufacturer(item);\r\n }\r\n else if (this.warehouse == 'warehouse') {\r\n this.deleteWarehouse(item);\r\n }\r\n else if (this.paymentmethod == 'paymentmethod') {\r\n this.deletePaymentMethod(item);\r\n }\r\n else if (this.employeedepartment == 'employeedepartment') {\r\n this.deleteEmployeeDepartment(item);\r\n }\r\n else if (this.documenttype == 'documenttype') {\r\n this.deleteDocumentType(item);\r\n }\r\n else if (this.emplocation == 'emplocation') {\r\n this.deleteLocation(item);\r\n }\r\n else if (this.type == 'sotype') {\r\n this.deleteSOType(item);\r\n } else if (this.type == 'customertypes') {\r\n this.deleteCustomerType(item);\r\n } else if (this.type == 'devicetypes') {\r\n this.deleteDeviceType(item);\r\n } else if (this.type == 'deviceclass') {\r\n this.deleteDeviceClass(item);\r\n }\r\n else if (this.type == 'disputereason') {\r\n this.deleteDisputeReason(item);\r\n } else if (this.type == 'piterms') {\r\n this.deletePITerm(item);\r\n } else if (this.type == 'companytrades') {\r\n this.deleteCompanyTrade(item);\r\n } else if (this.type == 'companyregistertype') {\r\n this.deleteRegisterType(item);\r\n } else if (this.type == 'itemdetailtype') {\r\n this.deleteProductDetailType(item);\r\n } else if (this.type == 'itemdetailtypehdr') {\r\n this.deleteProductDetailTypeHdr(item);\r\n }\r\n }\r\n validatePostValues() {\r\n if (this.master.description == undefined || this.master.description == '') {\r\n this.toastr.Error('Please enter description')\r\n return;\r\n }\r\n this.isDataSave = true;\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n if (this.type == 'cpc') {\r\n this.postCPC();\r\n } else if (this.type == 'deliveryroutes') {\r\n this.postDeliveryRoute();\r\n } else if (this.type == 'salesrequesttype') {\r\n this.postSalesRequestType();\r\n } else if (this.type == 'projectype') {\r\n this.postProjectType();\r\n } else if (this.type == 'sotype') {\r\n this.postSOType();\r\n } else if (this.type == 'contracttype') {\r\n this.postContractType();\r\n }\r\n else if (this.type == 'tasktype') {\r\n this.postTaskType();\r\n }\r\n else if (this.empdesignation == 'empdesignation') {\r\n this.postDesignation();\r\n }\r\n else if (this.assetlocation == 'assetlocation') {\r\n this.postAssetsLocation();\r\n }\r\n else if (this.assetcondition == 'assetcondition') {\r\n this.postAssetsCondition();\r\n }\r\n else if (this.assetaction == 'assetaction') {\r\n this.postAssetsAction();\r\n }\r\n else if (this.invoiceterm == 'invoiceterm') {\r\n this.postInvoiceTerms();\r\n }\r\n else if (this.term == 'quoteterm') {\r\n this.postQuoteTerms();\r\n }\r\n else if (this.term == 'estimateterm') {\r\n this.postEstimateTerms();\r\n }\r\n else if (this.term == 'poterm') {\r\n this.postPOTerms();\r\n }\r\n else if (this.term == 'soterm') {\r\n this.postSOTerms();\r\n }\r\n else if (this.term == 'projecterm') {\r\n this.postProjectTerms();\r\n }\r\n else if (this.manufacturer == 'manufacturer') {\r\n this.postManufacturer();\r\n }\r\n else if (this.warehouse == 'warehouse') {\r\n this.postWarehouse();\r\n }\r\n else if (this.paymentmethod == 'paymentmethod') {\r\n this.postPaymentMethod();\r\n }\r\n else if (this.employeedepartment == 'employeedepartment') {\r\n this.postEmployeeDepartment();\r\n }\r\n else if (this.documenttype == 'documenttype') {\r\n this.postDocumentType();\r\n }\r\n else if (this.emplocation == 'emplocation') {\r\n this.postLocation();\r\n }\r\n else if (this.type == 'customertypes') {\r\n this.postCustomerType();\r\n }\r\n else if (this.type == 'devicetypes') {\r\n this.postDeviceType();\r\n } else if (this.type == 'deviceclass') {\r\n this.postDeviceClass();\r\n } else if (this.type == 'disputereason') {\r\n this.postDisputeReason();\r\n } else if (this.type == 'piterms') {\r\n this.postPITerms();\r\n } else if (this.type == 'writeoffreasons') {\r\n this.postWriteoffReason();\r\n } else if (this.type == 'companytrades') {\r\n this.postCompanyTrade();\r\n } else if (this.type == 'companyregistertype') {\r\n this.postRegisterType();\r\n } else if (this.type == 'itemdetailtype') {\r\n this.postProductDetailType();\r\n } else if (this.type == 'itemdetailtypehdr') {\r\n this.postProductDetailTypeHdr();\r\n }\r\n }\r\n // ***** sales request type begins ***********\r\n getSalesRequestTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getSalesRequestType(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.active = item.active == 1 ? true : false;\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postSalesRequestType() {\r\n this.master.active = this.master.active ? 1 : 0;\r\n this.loader.start();\r\n this.service.postSalesRequestType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isDataSave = true;\r\n this.initializeValues();\r\n this.getSalesRequestTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteSalesRequestType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteSalesRequestType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getSalesRequestTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete sales req type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** sales request type ends ***********\r\n\r\n // ***** cpc begin ***********\r\n getCpcIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getCPCIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.active = item.active == 1 ? true : false;\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postCPC() {\r\n this.master.active = this.master.active ? 1 : 0;\r\n this.loader.start();\r\n this.service.postCPC(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isDataSave = true;\r\n this.initializeValues();\r\n this.getCpcIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n\r\n deleteCPC(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteCPC(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCpcIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete cpc');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** cpc end ***********\r\n\r\n // ***** delivery route begin ***********\r\n getDeliveryRouteIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDeliveryRouteIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.active = item.active == 1 ? true : false;\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDeliveryRoute() {\r\n this.master.active = this.master.active ? 1 : 0;\r\n this.master.name = this.master.description ? this.master.description : ''\r\n this.loader.start();\r\n this.service.postDeliveryRoute(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isDataSave = true;\r\n this.initializeValues();\r\n this.getDeliveryRouteIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n\r\n deleteDeliveryRoute(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDeliveryRoute(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDeliveryRouteIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete delivery route');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n //delivery route end\r\n // ***** project type begin ***********\r\n getProjectTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProjectTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postProjectType() {\r\n this.loader.start();\r\n this.service.postProjectType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProjectTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteProjectType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProjectType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProjectTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete project type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** project type end ***********\r\n\r\n // ***** contract type begin ***********\r\n getContractTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getContractTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postContractType() {\r\n this.loader.start();\r\n this.service.postContractType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getContractTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteContractType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteContractType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getContractTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete contract type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** contract type end ***********\r\n\r\n // ***** Task type begin ***********\r\n getTaskTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getTaskTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postTaskType() {\r\n this.loader.start();\r\n this.service.postTaskType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getTaskTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteTaskType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteTaskType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getTaskTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete task type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n // ***** Task type end ***********\r\n\r\n getDesignationIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDesignationIndex('').subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDesignation() {\r\n this.loader.start();\r\n this.service.postDesignation(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDesignationIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteDesignation(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDesignation(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDesignationIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete emp designation');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Designation end ***********\r\n\r\n // ***** Assets Location begin ***********\r\n getAssetsLocationIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getAssetsLocationIndex('').subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postAssetsLocation() {\r\n this.loader.start();\r\n this.service.postAssetsLocation(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsLocationIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteAssetsLocation(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteAssetsLocation(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsLocationIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete asset location');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Assets Location end ***********\r\n\r\n // ***** Assets Condition begin ***********\r\n getAssetsConditionIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getAssetsConditionIndex('').subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postAssetsCondition() {\r\n this.loader.start();\r\n this.service.postAssetsCondition(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsConditionIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteAssetsCondition(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteAssetsCondition(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsConditionIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting asset condition');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Assets Condition end ***********\r\n\r\n // ***** Assets Action begin ***********\r\n getAssetsActionIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getAssetsActionIndex('').subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postAssetsAction() {\r\n this.loader.start();\r\n this.service.postAssetsAction(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsActionIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteAssetsAction(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteAssetsAction(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getAssetsActionIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting asset action');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Assets Action end ***********\r\n\r\n // ***** Invoice Terms begin ***********\r\n getInvoiceTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getInvoiceTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postInvoiceTerms() {\r\n this.loader.start();\r\n this.service.postInvoiceTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getInvoiceTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post invoice term');\r\n })\r\n }\r\n deleteInvoiceTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteInvoiceTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getInvoiceTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting invoice term');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Invoice Terms end ***********\r\n\r\n // ***** Quote Terms begin ***********\r\n getQuoteTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getQuoteTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postQuoteTerms() {\r\n this.loader.start();\r\n this.service.postQuoteTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post quote term');\r\n })\r\n }\r\n deleteQuoteTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteQuoteTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getQuoteTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting quote term');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Quote Terms end ***********\r\n // ***** Estimate Terms begin ***********\r\n getEstimateTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getEstimateTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postEstimateTerms() {\r\n this.loader.start();\r\n this.service.postEstimateTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post estimate terms');\r\n })\r\n }\r\n deleteEstimateTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteEstimateTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getEstimateTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting estimate terms');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n // ***** Estimate Terms end ***********\r\n // ***** PO Terms begin ***********\r\n getPOTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getPOTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postPOTerms() {\r\n this.loader.start();\r\n this.service.postPOTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post po terms');\r\n })\r\n }\r\n deletePOTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deletePOTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getPOTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting po terms');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** PO Terms end ***********\r\n\r\n // ***** SO Terms begin ***********\r\n getSOTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getSOTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postSOTerms() {\r\n this.loader.start();\r\n this.service.postSOTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post so terms');\r\n })\r\n }\r\n deleteSOTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteSOTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getSOTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting so term');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** SO Terms end ***********\r\n\r\n // ***** Project Terms begin ***********\r\n getProjectTermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProjectTermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postProjectTerms() {\r\n this.loader.start();\r\n this.service.postProjectTerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProjectTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post project term');\r\n })\r\n }\r\n deleteProjectTerms(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProjectTerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProjectTermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting project term');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Project Terms end ***********\r\n\r\n // ***** Product Manufacturer begin ***********\r\n getManufacturerIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getManufacturerIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(element => {\r\n element.description = element.name;\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postManufacturer() {\r\n this.master.name = this.master.description;\r\n this.loader.start();\r\n this.service.postManufacturer(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getManufacturerIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post manufacturer service');\r\n })\r\n }\r\n deleteManufacturer(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteManufacturer(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getManufacturerIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting manufacturer');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Product Manufacturer end ***********\r\n\r\n // ***** binLocation warehouse begin ***********\r\n getWarehouseIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getWarehouseIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postWarehouse() {\r\n this.master.name = this.master.description;\r\n this.loader.start();\r\n this.service.postWarehouse(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getWarehouseIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post warehouse service');\r\n })\r\n }\r\n deleteWarehouse(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteWarehouse(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getWarehouseIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting warehouse');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** binLocation warehouse end ***********\r\n\r\n // ***** paybill payment method begin ***********\r\n getPaymentMethodIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getPaymentMethodIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n postPaymentMethod() {\r\n // this.master.name = this.master.description;\r\n this.loader.start();\r\n this.service.postPaymentMethod(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getPaymentMethodIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post payment method');\r\n })\r\n }\r\n deletePaymentMethod(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deletePaymentMethod(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getPaymentMethodIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting payment method');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** paybill payment method end ***********\r\n\r\n // ***** employee department begin ***********\r\n getEmployeeDepartmentIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getEmpDepartmentIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postEmployeeDepartment() {\r\n // this.master.name = this.master.description;\r\n this.loader.start();\r\n this.service.postEmpDepartment(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getEmployeeDepartmentIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post emp department');\r\n })\r\n }\r\n deleteEmployeeDepartment(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteEmpDepartment(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getEmployeeDepartmentIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting emp department');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** document type end ***********\r\n\r\n // ***** employee department begin ***********\r\n getDocumentTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDocumentTypeIndex('', '').subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('document type list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDocumentType() {\r\n this.master.parentid = null;\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.roles = 'ADM';\r\n }\r\n this.loader.start();\r\n this.service.postDocumentType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDocumentTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post document type');\r\n })\r\n }\r\n deleteDocumentType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDocumentType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDocumentTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting document type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** employee department end ***********\r\n\r\n\r\n // ***** product uom begin ***********\r\n\r\n // ***** employee department begin ***********\r\n getLocationIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getLocationIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(element => {\r\n element.description = element.Text;\r\n element.id = element.Value;\r\n element.active = 'true';\r\n })\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postLocation() {\r\n var master = {\r\n id: this.master.id ? this.master.id : null,\r\n name: this.master.description,\r\n code: this.master.code,\r\n address: '',\r\n active: true,\r\n companyid: this.userdata.companyid,\r\n createby: this.master.createby ? this.master.createby : this.userdata.email,\r\n createdate: this.master.createdate ? this.datepipe.transform(new Date(this.master.createdate), this.userdata.postdatetimeformat) : this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n updateby: this.master.id ? this.userdata.email : null,\r\n updatedate: this.master.id ? this.datepipe.transform(new Date(), this.userdata.postdatetimeformat) : null\r\n };\r\n\r\n this.loader.start();\r\n this.service.postLocation(master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n this.itemList.forEach(element => {\r\n element.description = element.name;\r\n element.id = element.id;\r\n element.active = 'true';\r\n })\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post location list');\r\n })\r\n }\r\n deleteLocation(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteLocation(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getLocationIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting location list');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** employee department end ***********\r\n // ***** sales order type begin ***********\r\n getSOTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getSOTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postSOType() {\r\n this.loader.start();\r\n this.service.postSOType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList = res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteSOType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteSOType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getSOTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete so type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** contract type end ***********\r\n\r\n // ***** customer types begin ***********\r\n getCustomerTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getCustomerTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postCustomerType() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postCustomerType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCustomerTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post customer type');\r\n })\r\n }\r\n deleteCustomerType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteCustomerType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCustomerTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting customer type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** customer type end ***********\r\n\r\n // *****Dispute Begin ***********\r\n getDisputeReasonIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDisputeReasonIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDisputeReason() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postDisputeReason(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDisputeReasonIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post dispute reason');\r\n })\r\n }\r\n deleteDisputeReason(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDisputeReason(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCustomerTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting dispute reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Dispute reason end ***********\r\n // ***** device class start ***********\r\n getDeviceClassIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDeviceClassIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.code = item.tpcode;\r\n })\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDeviceClass() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.tpcode = this.master.code;\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postDeviceClass(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDeviceClassIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post device type');\r\n })\r\n }\r\n deleteDeviceClass(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDeviceClass(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDeviceClassIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting device type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** device class end ***********\r\n // ***** device type start ***********\r\n getMarkerTypes() {\r\n this.markerTypes = [];\r\n this.loader.start();\r\n this.specmapService.getSpecMapCategories().subscribe(res => {\r\n this.loader.stop();\r\n this.markerTypes = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n getDeviceTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getDeviceTypeIndex(this.master.description).subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.code = item.tpcode;\r\n })\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postDeviceType() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.tpcode = this.master.code;\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postDeviceType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDeviceTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post device type');\r\n })\r\n }\r\n deleteDeviceType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteDeviceType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getDeviceTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting device type');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** device type end ***********\r\n\r\n // ***** purchase invoice terms start ***********\r\n getPITermsIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getPITermsIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postPITerms() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postPITerms(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getPITermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post pi terms');\r\n })\r\n }\r\n deletePITerm(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deletePITerms(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getPITermsIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting pi terms');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** device type end ***********\r\n // *****Writeoff Begin ***********\r\n getWriteoffReasonIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getWriteoffReasonIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postWriteoffReason() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postWriteoffReason(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getWriteoffReasonIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post writeoff reason');\r\n })\r\n }\r\n deleteWriteoffReason(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteWriteoffReason(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getWriteoffReasonIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting writeoff reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Writeoff reason end ***********\r\n\r\n // *****Company Trade Begin ***********\r\n getCompanyTradeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getCompanyTradeIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.code = item.tpcode;\r\n });\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postCompanyTrade() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.tpcode = this.master.code;\r\n this.loader.start();\r\n this.service.postCompanyTrade(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCompanyTradeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post writeoff reason');\r\n })\r\n }\r\n deleteCompanyTrade(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteCompanyTrade(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getCompanyTradeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting writeoff reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Company trade end ***********\r\n // *****Company register type ***********\r\n getRegisterTypeIndex() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getRegisterTypeIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postRegisterType() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postRegisterType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getRegisterTypeIndex();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post writeoff reason');\r\n })\r\n }\r\n deleteRegisterType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteRegisterType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getRegisterTypeIndex();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting writeoff reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Company Register type end ***********\r\n // *****Item Detail Type Begin ***********\r\n getProductDetailTypeIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProductDetailTypeIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.code = item.tpcode;\r\n });\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postProductDetailType() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.loader.start();\r\n this.service.postProductDetailType(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProductDetailTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post writeoff reason');\r\n })\r\n }\r\n deleteProductDetailType(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProductDetailType(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProductDetailTypeIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting writeoff reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** Item Detail Type end ***********\r\n // *****Item Detail Type Hdrs Begin ***********\r\n getProductDetailTypeHdrIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getProductDetailTypeHdrIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n this.itemList.forEach(item => {\r\n item.code = item.tpcode;\r\n });\r\n environment.production ? '' : console.log('location list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postProductDetailTypeHdr() {\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.id = this.master.id;\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.tpcode = this.master.code;\r\n this.loader.start();\r\n this.service.postProductDetailTypeHdr(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProductDetailTypeHdrIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post writeoff reason');\r\n })\r\n }\r\n deleteProductDetailTypeHdr(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteProductDetailTypeHdr(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getProductDetailTypeHdrIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while deleting writeoff reason');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n getDetailTypes() {\r\n this.detailTypeList = [];\r\n this.loader.start();\r\n this.service.getProductDetailTypes().subscribe(res => {\r\n this.loader.stop();\r\n this.detailTypeList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n // ***** Item Detail Type Hdrs end ***********\r\n}\r\n","\r\n
    \r\n
    \r\n

    {{modalTitle}}

    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n  \r\n \r\n \r\n \r\n
    \r\n {{ 'Save_button' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Modal_Table.Number_Column' | translate }}{{ 'Modal_Table.Description_Column' | translate }}{{ 'Modal_Table.Code_Column' | translate }}{{ 'Modal_Table.Active_Column' | translate }}{{ 'Modal_Table.Action_Column' | translate }}
    {{item.id}}{{item.description}}{{item.code}}YesNo\r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { projectmanagerServices } from '../../projectmanager/projectmanager.service';\r\n\r\n@Component({\r\n selector: 'app-milestone',\r\n templateUrl: './milestone.component.html',\r\n styleUrls: ['./milestone.component.scss']\r\n})\r\nexport class MilestoneComponent implements OnInit {\r\n fullScreen = false;\r\n statusList: any = [];\r\n appname = environment.APP_NAME;\r\n\r\n constructor(private modalService: NgbModal, private activeModal: NgbActiveModal, private commonService: CommonServices, private service: projectmanagerServices) {\r\n\r\n this.commonService.getComboEnums('milestonestatus').subscribe(res => {\r\n this.statusList = res;\r\n environment.production ? '' : console.log('tmile stone status ', this.statusList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading mile stone status ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Milestone
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { Subscription, interval } from 'rxjs';\r\n@Component({\r\n selector: 'app-partysmodal',\r\n templateUrl: './partysmodal.component.html',\r\n styleUrls: ['./partysmodal.component.scss']\r\n})\r\nexport class PartysComponent implements OnInit {\r\n @Input('type') type;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n @ViewChild('SearchElement') SearchElement:ElementRef;\r\n setCustomerValue: any;\r\n keyword = 'name';\r\n validatecustomer: any;\r\n customerList: any = []\r\n customer: any = {\r\n name: '',\r\n email: '',\r\n primaryphone: '',\r\n status: 'active'\r\n }\r\n selectedParty: any;\r\n typeList: any = []\r\n searchtxt: any = '';\r\n subscription: Subscription;\r\n constructor(private activeModal: NgbActiveModal,\r\n private commonServices: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private datePipe: DatePipe,\r\n private toastr: NotificationService,\r\n private service: SalesServices,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n getPartyList() {\r\n if (this.searchtxt == undefined || this.searchtxt == null || this.searchtxt == '') {\r\n return;\r\n }\r\n if (this.type == undefined || this.type == null || this.type == '') {\r\n this.toastr.Error('Please select party type');\r\n return;\r\n }\r\n if (this.searchtxt.length < 3) {\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonServices.getPartyList(this.type, this.searchtxt).subscribe(res => {\r\n this.loader.stop();\r\n this.customerList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n selectCustomer(item) {\r\n this.selectedParty = item;\r\n this.searchtxt = '';\r\n this.customerList = [];\r\n }\r\n\r\n ngAfterViewInit() {\r\n const source = interval(500);\r\n this.subscription = source.subscribe(val => {\r\n if(!this.SearchElement.nativeElement.focus()){\r\n this.SearchElement.nativeElement.focus()\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n console.log('destroyed')\r\n }\r\n\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedParty);\r\n }\r\n ngOnInit(): void {\r\n // this.customer.name = this.type ? this.type : '';\r\n this.getPartyList();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    IDNameEmail
    {{item.Value}}\r\n {{item.Text}}\r\n {{item.Value1}}\r\n
    \r\n
    Your search result yielded no results
    \r\n
    \r\n
    \r\n
    \r\n","import {NgModule} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { PartysComponent } from './partysmodal.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [PartysComponent],\r\n imports:[CommonModule, FormsModule, NgbModule, NgbTooltipModule],\r\n exports: [PartysComponent],\r\n})\r\nexport class PartysmodalModule {}","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { CreditComponent } from '../credit/credit.component';\r\nimport { GenericprintComponent } from '../genericprint/genericprint.component';\r\n\r\n@Component({\r\n selector: 'app-payment',\r\n templateUrl: './payment.component.html',\r\n styleUrls: ['./payment.component.scss']\r\n})\r\n\r\nexport class PaymentComponent implements OnInit {\r\n fullScreen = false;\r\n @ViewChild('content') Content: ElementRef;\r\n @Input('invoiceid') invoiceid = null;\r\n @Input('customerid') customerid = null;\r\n appname = environment.APP_NAME;\r\n paidTotal: any = 0;\r\n total: any = 0;\r\n allCheck: any = false;\r\n list: any;\r\n overDueBal: any = 0;\r\n customerPaymentsList: any = []\r\n payment: any = {\r\n leave_credit: false,\r\n notify_customer: false,\r\n mop: '',\r\n payment_type: 'normal',\r\n amt: 0,\r\n availbalance: 0,\r\n bankid: '',\r\n tendered_amt: 0\r\n }\r\n userdata: any;\r\n paymentMethodList: any = [];\r\n paymentTypeList: any = []\r\n dueInv: any = {\r\n availbalance: 0\r\n };\r\n dueTotal: any = 0;\r\n paidCurrTotal: any = 0;\r\n baseTotal: any = 0;\r\n duepayments: any = []\r\n dueList: any = []\r\n customer: any = {\r\n name: '',\r\n id: null\r\n }\r\n dueBaseTotal: any = 0;\r\n decimal: any = '1.2-2';\r\n isNumberShow = false;\r\n selectedMOP: any;\r\n currencyList: any = [];\r\n companyBanks: any = [];\r\n receivedBaseAmount: any = 0;\r\n fxLossGain: any = 0;\r\n constructor(private modalService: NgbModal,\r\n private serviceSales: SalesServices,\r\n private appService: AppServices,\r\n private toaster: NotificationService,\r\n private activeModal: NgbActiveModal,\r\n private datePipe: DatePipe,\r\n private commonService: CommonServices, private datepipe: DatePipe, private cd: ChangeDetectorRef, private loader: NgxUiLoaderService, private service: SalesServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.payment.trandate = this.datepipe.transform(new Date(), this.userdata.postdateformat);\r\n if (this.userdata.decimals_allowed) {\r\n this.decimal = '1.' + this.userdata.decimals_allowed + '-' + this.userdata.decimals_allowed;\r\n }\r\n this.commonService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethodList = res;\r\n environment.production ? '' : console.log('payment method data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n this.appService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n environment.production ? '' : console.log(' currency list data ', this.currencyList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading Currency list ', err);\r\n });\r\n // this.commonService.getPaymentTypes().subscribe(res => {\r\n // this.paymentTypeList = res;\r\n // environment.production ? '' : console.log('payment types data ', res);\r\n // }, err => {\r\n // environment.production ? '' : console.log('Error : While loading payment types data', err);\r\n // });\r\n this.commonService.getComboEnums('paymenttype').subscribe(res => {\r\n this.paymentTypeList = res;\r\n environment.production ? '' : console.log('payment types data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment types data', err);\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.getInvoiceList(this.customerid, this.invoiceid);\r\n this.getCustomerDetails();\r\n }\r\n\r\n getPaymentAccounts() {\r\n this.commonService.getCompMOPBankList(this.payment.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n }\r\n openCreditModal() {\r\n var modalRef = this.modalService.open(CreditComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' });\r\n modalRef.componentInstance.customerid = this.customerid;\r\n modalRef.result.then((result) => {\r\n }, (reason) => {\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n getCustomerDetails() {\r\n this.loader.start();\r\n this.serviceSales.getCustomerDetails(this.customerid).subscribe(res => {\r\n this.customer = res;\r\n this.loader.stop();\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n getInvoiceList(customerid, invid) {\r\n this.service.getReceivePaymentList(customerid, '', '', invid ? invid : '', 'customer').subscribe(res => {\r\n this.dueInv = res;\r\n if (this.dueInv.currency) {\r\n this.selectROE()\r\n }\r\n this.dueTotal = 0;\r\n this.duepayments = this.dueInv.duepayments;\r\n this.payment.availbalance = this.dueInv.availbalance ? Number(this.dueInv.availbalance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.dueInv.availbalance = this.dueInv.availbalance ? Number(this.dueInv.availbalance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.duepayments.forEach(element => {\r\n element.invdate = this.datePipe.transform(element.invdate, this.userdata.postdateformat);\r\n this.dueTotal += element.bal;\r\n element.bal = element.bal ? Number(element.bal).toFixed(this.userdata.decimals_allowed) : 0.00;\r\n element.paidamt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.checked = false;\r\n if (element.ttype == 1) {\r\n element.type = 'Sales Invoice';\r\n } else if (element.ttype == 2) {\r\n element.type = 'Sales Order';\r\n }\r\n element.duebasetotal = (element.roe ? Number(element.roe) : 1) * (element.bal ? Number(element.bal) : 0);\r\n this.dueBaseTotal += Number(element.duebasetotal);\r\n element.duebasetotal = element.duebasetotal ? Number(element.duebasetotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n element.basetotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n element.paidbasecurrtotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n this.dueBaseTotal = this.dueBaseTotal ? Number(this.dueBaseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.baseTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.paidCurrTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.dueTotal = this.dueTotal ? Number(this.dueTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.paidTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n environment.production ? '' : console.log('due list ', this.duepayments);\r\n\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n }\r\n print(item) {\r\n var printtype;\r\n if (item.ttype == 1) {\r\n printtype = 'printi';\r\n } else if (item.ttype == 2) {\r\n printtype = 'printso';\r\n }\r\n var modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n modalRef.componentInstance.id = item.refid;\r\n modalRef.componentInstance.name = printtype;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((Error) => {\r\n environment.production ? '' : console.log(Error);\r\n });\r\n }\r\n selectPaymentType() {\r\n this.isNumberShow = false;\r\n this.paymentMethodList.forEach(element => {\r\n if (element.Value == this.payment.mop) {\r\n this.selectedMOP = element;\r\n if (element.Value1 == 'cheque') {\r\n this.isNumberShow = true;\r\n }\r\n }\r\n });\r\n this.makeChequeFieldsNull();\r\n this.getPaymentAccounts();\r\n }\r\n makeChequeFieldsNull() {\r\n this.payment.number = '';\r\n this.payment.cheque_details = '';\r\n this.payment.cheque_date = null;\r\n }\r\n change(item) {\r\n if (item.paidamt == undefined || item.paidamt == null) {\r\n item.paidamt = 0;\r\n }\r\n if (item.paidamt > 0) {\r\n item.checked = true;\r\n this.allCheck = true;\r\n } else {\r\n item.checked = false;\r\n this.allCheck = false;\r\n }\r\n if (Number(item.bal) < Number(item.paidamt)) {\r\n item.paidamt = item.bal;\r\n }\r\n this.calculateLineItemTotal();\r\n }\r\n selectAll(event) {\r\n if (event.target.checked == true) {\r\n this.allCheck = true;\r\n this.duepayments.forEach(element => {\r\n element.checked = true;\r\n });\r\n } else {\r\n this.allCheck = false;\r\n this.duepayments.forEach(element => {\r\n element.checked = false;\r\n });\r\n }\r\n this.calculateLineItemTotal();\r\n }\r\n updatePayAmt() {\r\n if (this.payment.tendered_amt == undefined || this.payment.tendered_amt == null || this.payment.tendered_amt == '') {\r\n this.payment.tendered_amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n if (Number(this.payment.tendered_amt) > Number(this.paidTotal)) {\r\n this.payment.change = Number(this.payment.tendered_amt) - Number(this.paidTotal);\r\n } else {\r\n this.payment.change = 0;\r\n }\r\n this.payment.change = Number(this.payment.change).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.fxLossGain = (this.baseTotal ? Number(this.baseTotal) : 0) - (this.paidCurrTotal ? Number(this.paidCurrTotal) : 0);\r\n this.fxLossGain = this.fxLossGain ? Number(this.fxLossGain).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.receivedBaseAmount = (((this.payment.tendered_amt ? Number(this.payment.tendered_amt) : 0) - (this.payment.change ? Number(this.payment.change) : 0)) * Number(this.payment.roe ? this.payment.roe : 0));\r\n this.receivedBaseAmount = this.receivedBaseAmount ? Number(this.receivedBaseAmount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n\r\n }\r\n calculateLineItemTotal() {\r\n this.paidTotal = 0;\r\n this.dueTotal = 0;\r\n this.baseTotal = 0;\r\n this.fxLossGain = 0;\r\n this.receivedBaseAmount = 0;\r\n this.payment.change = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.allCheck = true;\r\n this.duepayments.forEach(element => {\r\n if (element.checked) {\r\n element.paidamt = (element.paidamt > 0) ? Number(element.paidamt).toFixed(this.userdata.decimals_allowed) : Number(element.bal).toFixed(this.userdata.decimals_allowed);\r\n this.paidTotal += Number(element.paidamt);\r\n } else {\r\n this.allCheck = false;\r\n element.paidamt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n element.basetotal = (element.roe ? Number(element.roe) : 1) * (element.paidamt ? Number(element.paidamt) : 0);\r\n this.baseTotal += Number(element.basetotal);\r\n element.basetotal = element.basetotal ? Number(element.basetotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.dueTotal += element.bal ? Number(element.bal) : 0;\r\n element.bal = Number(element.bal).toFixed(this.userdata.decimals_allowed);\r\n element.paidbasecurrtotal = (element.paidamt ? element.paidamt : 0) * (this.payment.roe ? this.payment.roe : 1);\r\n element.paidbasecurrtotal = element.paidbasecurrtotal ? Number(element.paidbasecurrtotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n this.baseTotal = this.baseTotal ? Number(this.baseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.payment.tendered_amt = Number(this.paidTotal).toFixed(this.userdata.decimals_allowed);\r\n this.paidTotal = Number(this.paidTotal).toFixed(this.userdata.decimals_allowed);\r\n this.dueTotal = Number(this.dueTotal).toFixed(this.userdata.decimals_allowed);\r\n this.paidCurrTotal = (this.paidTotal ? Number(this.paidTotal) : 0) * (this.payment.roe ? this.payment.roe : 1);\r\n this.paidCurrTotal = this.paidCurrTotal ? Number(this.paidCurrTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.fxLossGain = (this.baseTotal ? Number(this.baseTotal) : 0) - (this.paidCurrTotal ? Number(this.paidCurrTotal) : 0);\r\n this.fxLossGain = this.fxLossGain ? Number(this.fxLossGain).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.receivedBaseAmount = (((this.payment.tendered_amt ? Number(this.payment.tendered_amt) : 0) - (this.payment.change ? Number(this.payment.change) : 0)) * Number(this.payment.roe ? this.payment.roe : 0));\r\n this.receivedBaseAmount = this.receivedBaseAmount ? Number(this.receivedBaseAmount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n }\r\n trackByIndex(index: number, obj: any): any {\r\n return index;\r\n }\r\n addPayment() {\r\n if (this.selectedMOP.Value1 == 'cheque' && (this.payment.number == null || this.payment.number == '')) {\r\n this.toaster.Error(\"Please enter cheque#\");\r\n return;\r\n }\r\n if (this.selectedMOP.Value1 == 'online' && (this.payment.bankid == '' || this.payment.bankid == null)) {\r\n this.toaster.Error(\"Please select bank\");\r\n return;\r\n }\r\n if (this.payment.tendered_amt == undefined || this.payment.tendered_amt == null || this.payment.tendered_amt == 0) {\r\n this.toaster.Error('Please enter amount')\r\n return;\r\n }\r\n if (this.payment.memo == undefined || this.payment.memo == null || this.payment.memo == '') {\r\n this.toaster.Error(\"Please enter memo\");\r\n return;\r\n }\r\n if (!this.dueInv.currency) {\r\n this.toaster.Error('Please select currency ')\r\n return;\r\n }\r\n if (this.payment.tendered_amt < this.paidTotal) {\r\n this.toaster.Error(\"Please check payment amount, it can not be less than invoice payment grand total.\");\r\n return;\r\n }\r\n\r\n this.dueList = [];\r\n this.duepayments.forEach(element => {\r\n if (element.checked) {\r\n this.dueList.push({\r\n \"customer_name\": element.customer_name,\r\n \"status\": element.status,\r\n \"refno\": element.refno,\r\n \"projref\": element.projref,\r\n \"currency\": element.currency,\r\n \"bal\": element.bal ? Number(element.bal) : 0,\r\n \"pay\": element.paidamt ? Number(element.paidamt) : 0,\r\n \"refid\": element.refid,\r\n \"ttype\": element.ttype,\r\n \"chekd\": element.checked,\r\n \"invdate\": element.invdate\r\n })\r\n }\r\n });\r\n var obj = {\r\n \"notes\": this.payment.notes,\r\n \"memo\": this.payment.memo,\r\n \"change\": this.payment.change ? Number(this.payment.change) : 0,\r\n \"amt\": this.paidTotal ? Number(this.paidTotal) : 0,\r\n \"availbalance\": this.payment.availbalance ? Number(this.payment.availbalance) : 0,\r\n \"currency\": this.dueInv.currency,\r\n \"partyid\": this.customerid,\r\n \"party_name\": this.customer.name,\r\n \"party_type\": 'customer',\r\n \"companyid\": this.userdata.companyid,\r\n \"notify_customer\": this.payment.notify_customer,\r\n \"mop\": Number(this.payment.mop),\r\n \"leave_credit\": this.payment.leave_credit,\r\n \"trandate\": this.datepipe.transform(this.payment.trandate, this.userdata.postdateformat),\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"payment_type\": this.payment.payment_type,\r\n \"companyname\": this.userdata.compayname,\r\n \"phone\": this.userdata.phone,\r\n \"duepayments\": this.dueList,\r\n \"roe\": this.payment.roe ? Number(this.payment.roe) : 0,\r\n \"bankid\": this.payment.bankid ? this.payment.bankid : null,\r\n \"cheque_details\": this.payment.cheque_details ? this.payment.cheque_details : '',\r\n \"cheque_date\": this.payment.cheque_date ? this.datepipe.transform(new Date(this.payment.cheque_date), this.userdata.date_format) : null,\r\n \"tendered_amt\": this.payment.tendered_amt ? this.payment.tendered_amt : 0,\r\n \"fx_loss_gain\": (this.baseTotal ? Number(this.baseTotal) : 0) - (this.paidCurrTotal ? Number(this.paidCurrTotal) : 0)\r\n }\r\n environment.production ? '' : console.log('payment data', obj);\r\n // return false\r\n this.loader.start();\r\n this.service.postPayment(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toaster.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message) : this.toaster.Error(res.message);\r\n return;\r\n }\r\n this.paidTotal = 0;\r\n this.dueTotal = 0;\r\n this.dueBaseTotal = 0;\r\n this.baseTotal = 0;\r\n this.paidCurrTotal = 0;\r\n this.fxLossGain = 0;\r\n this.receivedBaseAmount = 0;\r\n this.payment = {\r\n trandate: this.datepipe.transform(new Date(), this.userdata.postdateformat),\r\n leave_credit: false,\r\n notify_customer: false,\r\n mop: '',\r\n payment_type: 'normal'\r\n }\r\n this.duepayments = [];\r\n this.getInvoiceList(this.customerid, this.invoiceid);\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading device ', err);\r\n });\r\n }\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.dueInv.currency == element.Value) {\r\n this.payment.roe = Number(element.Value2).toFixed(this.userdata.decimals_allowed) ? Number(element.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n else if (!this.dueInv.currency) {\r\n this.payment.roe = '';\r\n }\r\n })\r\n }\r\n getCurrentROE() {\r\n if (!this.dueInv.currency) {\r\n this.toaster.Error('Please select currency');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonService.getExchangeRate(this.userdata.currency, this.dueInv.currency).subscribe(res => {\r\n this.loader.stop();\r\n this.dueInv.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Receive Payments
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Customer Name : {{customer.name}}

    \r\n
    \r\n 0\">Available Credits: {{dueInv.availbalance}}\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Payment method is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Bank name is required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Amount is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Payment Type is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Memo is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Currency is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    TypeProject/Job RefDateStatusCurr.Total DueTotal Due({{userdata.currency}})Paid AmountBase Total ({{userdata.currency}})Paid Amt({{userdata.currency}})Actions
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{item.type}}\r\n \r\n {{item.projref}}\r\n {{item.invdate}}\r\n {{item.status}}\r\n {{item.currency}}\r\n {{item.bal}}{{item.duebasetotal}}\r\n \r\n {{item.basetotal}}\r\n {{item.paidbasecurrtotal}}\r\n \r\n
    \r\n \r\n
      \r\n
    • Print
    • \r\n
    \r\n
    \r\n
    Totals{{ dueTotal }}{{ dueBaseTotal }}\r\n {{paidTotal}}\r\n {{ baseTotal }}\r\n {{ paidCurrTotal}}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { PickitemComponent } from '../../Sales/salesorders/modal/pickitem/pickitem.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n\tselector: 'app-pickuporder',\r\n\ttemplateUrl: './pickuporder.component.html',\r\n\tstyleUrls: ['./pickuporder.component.scss']\r\n})\r\nexport class PickuporderComponent implements OnInit {\r\n\tfullScreen = false;\r\n\t@ViewChild('id') id;\r\n\r\n\t//#region userdata block\r\n\tappname = environment.APP_NAME;\r\n\tuserdata: any;\r\n\tcompanyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n\tformat: any;\r\n\ttotalRows: any = 0;\r\n\t//#endregion userdata block\r\n\tbuttonclicked = false;\r\n\tporder: any = {\r\n\t\tstatus: '',\r\n\t\tnotes: ''\r\n\t};\r\n\tpickupOrder: any = {\r\n\t\tlstItem: [{\r\n\t\t\t\"id\": null,\r\n\t\t\t\"prodid\": null,\r\n\t\t\t\"description\": null,\r\n\t\t\t\"ilc\": null,\r\n\t\t\t\"availableqty\": 0,\r\n\t\t\t\"receivedqty\": 0,\r\n\t\t\t\"qtyonorder\": 0\r\n\t\t}]\r\n\t};\r\n\titemBins: any[];\r\n\tisView: boolean;\r\n\tdeliveryStatusList: any = [];\r\n\torderid: any;\r\n\tpickupOrderItems: any = [];\r\n\tconstructor(\r\n\t\tprivate toaster: NotificationService,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate modalService: NgbModal,\r\n\t\tprivate service: SalesServices,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate toster: ToastrService,\r\n\t\tprivate activeModal: NgbActiveModal, private router: Router, private loader: NgxUiLoaderService,) {\r\n\t\t//#region userdata block\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\t//#endregion userdata block\r\n\t\tthis.commonService.getComboEnums('deliverystatus').subscribe(res => {\r\n\t\t\tthis.deliveryStatusList = res;\r\n\t\t\tenvironment.production ? '' : console.log(' get deliveryStatus list', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading deliveryStatus list ', err);\r\n\t\t});\r\n\t}\r\n\ttoggleClick(item) {\r\n\t\tthis.itemBins = item.itemBins;\r\n\t}\r\n\tgetPickupOrder(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getPickupOrder(id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.pickupOrder = res;\r\n\t\t\tenvironment.production ? '' : console.log(' get pickup order list', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading pickup order list ', err);\r\n\t\t});\r\n\t}\r\n\tupdateOrderStatus() {\r\n\t\tif (this.porder.status == '' || this.porder.status == undefined) {\r\n\t\t\tthis.toster.error('Please select status');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.porder.notes == '' || this.porder.notes == undefined) {\r\n\t\t\tthis.toster.error('Please enter notes');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getUpdatePickupOrder(this.orderid, this.porder.status, this.porder.notes).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.toster.success('Order status updated!');\r\n\t\t\tthis.modalService.dismissAll();\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\topenPickItem(item) {\r\n\t\tvar modalRef = null;\r\n\t\tthis.isView = true;\r\n\t\tmodalRef = this.modalService.open(PickitemComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' })\r\n\t\tmodalRef.componentInstance.params = { refid: this.pickupOrder.orderid, refno: this.pickupOrder.orderno, customerid: this.pickupOrder.customerid, prodid: item.prodid, qty2pick: (item.qtyonorder - item.receivedqty), module: '', uom: item.uom };\r\n\t\tmodalRef.componentInstance.tiid = this.id;\r\n\t\tmodalRef.componentInstance.customerid = this.pickupOrder.customerid;\r\n\t\tmodalRef.componentInstance.prodid = item.prodid;\r\n\t\tmodalRef.componentInstance.orderid = this.pickupOrder.orderid;\r\n\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\t// this.closeResult = `Closed with: ${result}`;\r\n\t\t\tthis.getPickupOrder(this.orderid);\r\n\t\t\tenvironment.production ? '' : console.log('closed');\r\n\t\t}, (reason) => {\r\n\t\t\tthis.getPickupOrder(this.orderid);\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.orderid = this.id;\r\n\t\tthis.getPickupOrder(this.orderid)\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Pickup Order\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    ILCDescriptionUOMOnHandOrderQtyTotalQty2bPickedAction
    \r\n \r\n \r\n {{item.ilc}}\r\n {{item.description}}{{item.uom}}{{item.qtyonhand}}{{item.qtyonorder}}{{item.qtyonorder - item.receivedqty}}\r\n
    0 ? '' : 'none'\">\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Bin Code\r\n \r\n Bin Name\r\n \r\n Qty\r\n
    \r\n {{bin.code}}\r\n \r\n {{bin.name}}\r\n \r\n {{bin.cnt}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { ProductviewComponent } from '../productview/productview.component';\r\n\r\n@Component({\r\n selector: 'app-pocosting',\r\n templateUrl: './pocosting.component.html',\r\n styleUrls: ['./pocosting.component.scss']\r\n})\r\nexport class PocostingComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('params') params;\r\n poDetails: any = {\r\n pon: ''\r\n };\r\n private langChangeSubscription: Subscription;\r\n costingItems: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n poCostingDetails: any = {\r\n \"id\": null,\r\n \"sid\": null,\r\n \"doc\": null,\r\n \"dor\": null,\r\n \"notes\": null,\r\n \"duty\": 0,\r\n \"invtotal\": 0,\r\n \"pototal\": 0,\r\n \"warehousefee\": 0,\r\n \"freight\": 0,\r\n \"haulfee\": 0,\r\n \"wfee\": 0,\r\n \"customsfee\": 0,\r\n \"docfee\": 0,\r\n \"cratefee\": 0,\r\n \"tax\": 0,\r\n \"insurance\": 0,\r\n \"handlingfee\": 0,\r\n \"servicefee\": 0,\r\n \"fdeliveryfee\": 0,\r\n \"otherfee\": 0,\r\n \"ldeliveryfee\": 0,\r\n \"hzmatfee\": 0,\r\n \"companyid\": null,\r\n \"totalcf\": 0,\r\n \"wfpercentage\": 0,\r\n \"approvedby\": null,\r\n \"approveddate\": null,\r\n \"iscosted\": false,\r\n \"deletedate\": null,\r\n \"createby\": null,\r\n \"createdate\": null,\r\n \"updateby\": null,\r\n \"updatedate\": null,\r\n \"demurragefee\": 0\r\n };\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private activeModal: NgbActiveModal,\r\n private toastr: NotificationService, private datepipe: DatePipe, private loader: NgxUiLoaderService, private service: purchaseServices, private modalService: NgbModal, private router: Router) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.poDetails = this.params;\r\n this.getPOCosting();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/purchase/purchaseorders/pocosting/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n getPOItems() {\r\n this.loader.start();\r\n this.service.getPOItemConsting(this.poDetails.id).subscribe(res => {\r\n this.loader.stop();\r\n this.costingItems = res;\r\n this.costingItems.forEach(item => {\r\n item.podate = this.datepipe.transform(item.podate, this.userdata.date_format);\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n getPOCosting() {\r\n this.loader.start();\r\n this.service.getPOCosting(this.poDetails.id).subscribe(res => {\r\n this.loader.stop();\r\n this.poCostingDetails = res;\r\n this.poCostingDetails.iscosted = this.poCostingDetails.iscosted ? (this.poCostingDetails.iscosted ? this.poCostingDetails.iscosted : false) : false;\r\n this.makeDecimals();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n\r\n recalculate() {\r\n this.costingItems.forEach(item => {\r\n item.podate = this.datepipe.transform(item.podate, this.userdata.postdatetimeformat);\r\n })\r\n this.loader.start();\r\n var obj = {\r\n \"items\": JSON.stringify(this.costingItems),\r\n \"id\": this.poDetails.id,\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid\r\n }\r\n this.service.postRecalculateItem(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getPOItems();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading bol data ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n onSortClick(event) {\r\n\r\n }\r\n tabClick(event) {\r\n if (event.nextId == '2') {\r\n this.getPOItems();\r\n }\r\n }\r\n ProdctView(value) {\r\n var modalRef = this.modalService.open(ProductviewComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.item = value;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n this.getPOItems();\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n postPOCosting() {\r\n if (this.poCostingDetails.dor == undefined || this.poCostingDetails.dor == null) {\r\n this.toastr.Error('Please enter date of release');\r\n return;\r\n }\r\n if (this.poCostingDetails.doc == undefined || this.poCostingDetails.doc == null) {\r\n this.toastr.Error('Please enter date of calculation');\r\n return;\r\n }\r\n if (this.poCostingDetails.id == undefined || this.poCostingDetails.id == null || this.poCostingDetails.id == 0) {\r\n this.poCostingDetails.companyid = this.userdata.companyid;\r\n this.poCostingDetails.createby = this.userdata.email;\r\n this.poCostingDetails.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.poCostingDetails.updateby = this.userdata.email;\r\n this.poCostingDetails.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.poCostingDetails.approveddate = this.datepipe.transform(this.poCostingDetails.approveddate, this.userdata.postdateformat);\r\n this.poCostingDetails.dor = this.datepipe.transform(this.poCostingDetails.dor, this.userdata.postdateformat);\r\n this.poCostingDetails.doc = this.datepipe.transform(this.poCostingDetails.doc, this.userdata.postdateformat);\r\n this.loader.start();\r\n this.service.postPOCosting(this.poCostingDetails).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getPOCosting();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n approvePOCosting() {\r\n if (this.costingItems.length == 0) {\r\n this.toastr.Error('Please check PO if received & try again')\r\n return;\r\n }\r\n this.loader.start();\r\n this.service.postApprovePOCosting(this.poDetails.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.redirectAction();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n\r\n redirectAction() {\r\n Swal.fire({\r\n title: 'PO costing submitted, Do you want to review pricing?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.closeModal();\r\n this.router.navigate(['/pricings'], { replaceUrl: true });\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n this.closeModal();\r\n }\r\n })\r\n }\r\n calculatePercent() {\r\n var perValue = 0;\r\n if (this.poCostingDetails.wfpercentage) {\r\n perValue = this.poCostingDetails.wfpercentage;\r\n } else {\r\n this.poCostingDetails.wfpercentage = 0;\r\n }\r\n this.poCostingDetails.wfee = (Number(this.poCostingDetails.pototal) * Number(perValue)) / 100;\r\n this.poCostingDetails.wfee = this.poCostingDetails.wfee ? Number(this.poCostingDetails.wfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.wfpercentage ? Number(this.poCostingDetails.wfpercentage).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.calculateTotal();\r\n }\r\n calculateTotal() {\r\n var costTotal = 0;\r\n // var invtotal = this.poCostingDetails.invtotal ? Number(this.poCostingDetails.invtotal) : 0;\r\n var duty = this.poCostingDetails.duty ? Number(this.poCostingDetails.duty) : 0;\r\n var warehousefee = this.poCostingDetails.warehousefee ? Number(this.poCostingDetails.warehousefee) : 0;\r\n var freight = this.poCostingDetails.freight ? Number(this.poCostingDetails.freight) : 0;\r\n var haulfee = this.poCostingDetails.haulfee ? Number(this.poCostingDetails.haulfee) : 0;\r\n var customsfee = this.poCostingDetails.customsfee ? Number(this.poCostingDetails.customsfee) : 0;\r\n var docfee = this.poCostingDetails.docfee ? Number(this.poCostingDetails.docfee) : 0;\r\n var cratefee = this.poCostingDetails.cratefee ? Number(this.poCostingDetails.cratefee) : 0;\r\n var tax = this.poCostingDetails.tax ? Number(this.poCostingDetails.tax) : 0;\r\n var insurance = this.poCostingDetails.insurance ? Number(this.poCostingDetails.insurance) : 0;\r\n var handlingfee = this.poCostingDetails.handlingfee ? Number(this.poCostingDetails.handlingfee) : 0;\r\n var servicefee = this.poCostingDetails.servicefee ? Number(this.poCostingDetails.servicefee) : 0;\r\n var fdeliveryfee = this.poCostingDetails.fdeliveryfee ? Number(this.poCostingDetails.fdeliveryfee) : 0;\r\n var otherfee = this.poCostingDetails.otherfee ? Number(this.poCostingDetails.otherfee) : 0;\r\n var ldeliveryfee = this.poCostingDetails.ldeliveryfee ? Number(this.poCostingDetails.ldeliveryfee) : 0;\r\n var hzmatfee = this.poCostingDetails.hzmatfee ? Number(this.poCostingDetails.hzmatfee) : 0;\r\n var wfpercentage = this.poCostingDetails.wfpercentage ? Number(this.poCostingDetails.wfpercentage) : 0;\r\n var demurragefee = this.poCostingDetails.demurragefee ? Number(this.poCostingDetails.demurragefee) : 0;\r\n var wfee = this.poCostingDetails.wfee ? Number(this.poCostingDetails.wfee) : 0;\r\n costTotal = duty + warehousefee + freight + haulfee + customsfee + docfee + cratefee + tax + insurance + handlingfee + servicefee + fdeliveryfee + otherfee + ldeliveryfee + hzmatfee + demurragefee + wfee;\r\n this.poCostingDetails.costing_total = costTotal ? Number(costTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.makeDecimals();\r\n }\r\n makeDecimals() {\r\n this.poCostingDetails.pototal = this.poCostingDetails.pototal ? Number(this.poCostingDetails.pototal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.invtotal = this.poCostingDetails.invtotal ? Number(this.poCostingDetails.invtotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.cf = this.poCostingDetails.cf ? Number(this.poCostingDetails.cf).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.duty = this.poCostingDetails.duty ? Number(this.poCostingDetails.duty).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.warehousefee = this.poCostingDetails.warehousefee ? Number(this.poCostingDetails.warehousefee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.freight = this.poCostingDetails.freight ? Number(this.poCostingDetails.freight).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.haulfee = this.poCostingDetails.haulfee ? Number(this.poCostingDetails.haulfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.customsfee = this.poCostingDetails.customsfee ? Number(this.poCostingDetails.customsfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.docfee = this.poCostingDetails.docfee ? Number(this.poCostingDetails.docfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.cratefee = this.poCostingDetails.cratefee ? Number(this.poCostingDetails.cratefee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.tax = this.poCostingDetails.tax ? Number(this.poCostingDetails.tax).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.insurance = this.poCostingDetails.insurance ? Number(this.poCostingDetails.insurance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.handlingfee = this.poCostingDetails.handlingfee ? Number(this.poCostingDetails.handlingfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.servicefee = this.poCostingDetails.servicefee ? Number(this.poCostingDetails.servicefee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.fdeliveryfee = this.poCostingDetails.fdeliveryfee ? Number(this.poCostingDetails.fdeliveryfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.otherfee = this.poCostingDetails.otherfee ? Number(this.poCostingDetails.otherfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.ldeliveryfee = this.poCostingDetails.ldeliveryfee ? Number(this.poCostingDetails.ldeliveryfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.hzmatfee = this.poCostingDetails.hzmatfee ? Number(this.poCostingDetails.hzmatfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.wfpercentage = this.poCostingDetails.wfpercentage ? Number(this.poCostingDetails.wfpercentage).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.demurragefee = this.poCostingDetails.demurragefee ? Number(this.poCostingDetails.demurragefee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.rate = this.poCostingDetails.rate ? Number(this.poCostingDetails.rate).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.wfee = this.poCostingDetails.wfee ? Number(this.poCostingDetails.wfee).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.poCostingDetails.costing_total = this.poCostingDetails.costing_total ? Number(this.poCostingDetails.costing_total).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'PageTitle' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n {{ 'IndexTable.ILCColumn' | translate }} \r\n \r\n {{ 'IndexTable.DescriptionColumn' | translate }} \r\n \r\n {{ 'IndexTable.TypeColumn' | translate }} \r\n \r\n {{ 'IndexTable.PurchaseUOMColumn' | translate }} \r\n \r\n {{ 'IndexTable.ExpectedColumn' | translate }} \r\n \r\n {{ 'IndexTable.ReceivedColumn' | translate }} \r\n \r\n {{ 'IndexTable.POCostColumn' | translate }}\r\n \r\n {{ 'IndexTable.LandedCostColumn' | translate }} \r\n \r\n {{ 'IndexTable.AvgCostColumn' | translate }} \r\n \r\n {{ 'IndexTable.SalesMarginPercentColumn' | translate }} \r\n \r\n {{ 'IndexTable.SalesMarginColumn' | translate }} \r\n \r\n {{ 'IndexTable.SalesRetailColumn' | translate }} \r\n \r\n {{ 'IndexTable.ServiceColumn' | translate }} \r\n \r\n {{ 'IndexTable.FlatPriceColumn' | translate }} \r\n \r\n {{ 'IndexTable.UOMColumn' | translate }} \r\n \r\n {{ 'IndexTable.SellQtyColumn' | translate }} \r\n
    \r\n {{item.ilc}}\r\n \r\n {{item.description}}\r\n \r\n {{item.ptype}}\r\n \r\n {{item.puom}}\r\n \r\n {{item.expected}}\r\n \r\n {{item.received}}\r\n \r\n {{item.pocost}}\r\n \r\n {{item.landedcost}}\r\n \r\n {{item.avgcost}}\r\n \r\n {{item.salepricepercentage}}\r\n \r\n {{item.salesmargin}}\r\n \r\n {{item.salesprice}}\r\n \r\n {{item.service}}\r\n \r\n {{item.flatprice}}\r\n \r\n {{item.uom}}\r\n \r\n {{item.actualqtytosell}}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-printlabel',\r\n templateUrl: './printlabel.component.html',\r\n styleUrls: ['./printlabel.component.scss']\r\n})\r\nexport class PrintlabelComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('name') name;\r\n @Input('id') id;\r\n @Input('type') type;\r\n @Input('desc') desc;\r\n @Input('alt') alt;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n constructor(private activeModal: NgbActiveModal, private loader: NgxUiLoaderService,) { \r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n ngOnInit(): void {\r\n this.loader.start();\r\n setTimeout(() => {\r\n this.loader.stop();\r\n }, 2000)\r\n this.printURL = environment.API_URL + 'public/printoptions?id='+ this.id + '&lbltype=' + this.type + '&qty=' + '1' + '&printcompanyname=' + this.name + '&companyid=' + this.userdata.companyid + '&printdesc=' + this.desc + '&alt=' + this.alt + '&un=' + this.userdata.company_web_token;\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Print Option\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, HostListener, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ItemanalysisComponent } from '../../inventory/products/modal/itemanalysis/itemanalysis.component';\r\nimport { PurchasehistoryComponent } from '../../inventory/products/modal/purchasehistory/purchasehistory.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-productcatalog',\r\n templateUrl: './productcatalog.component.html',\r\n styleUrls: ['./productcatalog.component.scss']\r\n})\r\nexport class ProductcatalogComponent implements OnInit {\r\n private langChangeSubscription: Subscription;\r\n fullScreen = false;\r\n @Output('soItemList') soItemList;\r\n @Output('params') params;\r\n @Output('lastPage') lastPage;\r\n @ViewChild('Depart') Depart;\r\n @ViewChild('Cat') Cat;\r\n @ViewChild('SubCat') SubCat;\r\n @Output('customerDiscount') customerDiscount;\r\n\r\n appname = environment.APP_NAME;\r\n keyword1 = 'Text';\r\n keyword2 = 'Text';\r\n keyword3 = 'Text';\r\n department: any;\r\n categories: any;\r\n subcategories: any;\r\n userdata: any;\r\n product: any = '';\r\n\r\n pcatg: any = {\r\n categoryid: null,\r\n supplierid: '',\r\n subcategoryid: null,\r\n deptid: null,\r\n productsearchby: 0,\r\n pricingtype: 'retail',\r\n ptype: 'inventory',\r\n }\r\n assembliesList: any = [];\r\n // soItemList: any = [];\r\n searchby: any = {\r\n ptype: '',\r\n pricingtype: '',\r\n productsearchby: '',\r\n }\r\n productList: any = [];\r\n categoryList: any = []\r\n supplierList: any = []\r\n isShowtileView: boolean = false;\r\n isShowGridView: boolean = true;\r\n subCategoryList: any = [];\r\n deptList: any = [];\r\n priceingTypeList: any = [];\r\n myDropShow = true;\r\n @HostListener('scroll', ['$event'])\r\n onWindowScroll(event) {\r\n this.myDropShow = false;\r\n }\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private commoanService: CommonServices,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n // this.pcatg.pricingtype = this.userdata.default_pricing_type;\r\n this.commoanService.getDepartmentList(false).subscribe(res => {\r\n this.deptList = res\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n this.commoanService.getComboEnums('orderpricingtype').subscribe(res => {\r\n this.priceingTypeList = res;\r\n }, err => {\r\n });\r\n }\r\n\r\n showDropdown() {\r\n this.myDropShow = true;\r\n }\r\n selectCategory() {\r\n this.pcatg.subcategoryid = null;\r\n this.pcatg.supplierid = '';\r\n this.product = '';\r\n this.commoanService.getSubCategory(this.pcatg.categoryid).subscribe(res => {\r\n this.subCategoryList = res\r\n this.searchProduct();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n selectDept() {\r\n this.pcatg.categoryid = null;\r\n this.pcatg.subcategoryid = null;\r\n this.pcatg.supplierid = null;\r\n this.commoanService.getCategory(this.pcatg.deptid, false).subscribe(res => {\r\n this.categoryList = res\r\n this.searchProduct();\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n searchProduct() {\r\n var deptid = this.pcatg.deptid ? (this.pcatg.deptid == 'null' ? '' : this.pcatg.deptid) : '';\r\n var categoryid = this.pcatg.categoryid ? (this.pcatg.categoryid == 'null' ? '' : this.pcatg.categoryid) : '';\r\n var subcategoryid = this.pcatg.subcategoryid ? (this.pcatg.subcategoryid == 'null' ? '' : this.pcatg.subcategoryid) : '';\r\n\r\n this.loader.start();\r\n this.commoanService.getProductCatalog(this.pcatg.ptype, this.pcatg.pricingtype, this.product, deptid, this.pcatg.supplierid, categoryid, subcategoryid).subscribe(res => {\r\n this.loader.stop();\r\n this.productList = res;\r\n this.productList.forEach(element => {\r\n if (element.retailprice != null && element.retailprice != 0) {\r\n element.retailprice = element.retailprice.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.retailprice = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n });\r\n this.productList.forEach(item => {\r\n item.qty = 1;\r\n if (item.pic) {\r\n item.pic = environment.DOC_URL + '/' + this.userdata.companyid + '/' + item.pic;\r\n }\r\n })\r\n environment.production ? '' : console.log('product list data ', this.productList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n }\r\n\r\n purchasehistory(item) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(PurchasehistoryComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = { id: item.id };\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n }, (reason) => {\r\n });\r\n }\r\n\r\n itemalysis(item) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(ItemanalysisComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl' });\r\n modalRef.componentInstance.fromParent = { id: item.id };\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n gridView() {\r\n this.isShowtileView = false;\r\n this.isShowGridView = true\r\n }\r\n tileView() {\r\n this.isShowtileView = true;\r\n this.isShowGridView = false\r\n }\r\n addproduct(data) {\r\n\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.soItemList);\r\n }\r\n ngOnInit(): void {\r\n this.pcatg.pricingtype = this.params ? (this.params.pricingtype ? this.params.pricingtype : this.userdata.default_pricing_type) : this.userdata.default_pricing_type;\r\n // this.searchProduct();\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/accounts/creditnotes/productcatlog/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n\r\n selectEvent(item) {\r\n // do something with selected item\r\n this.toastr.Success(\"Item added into list\")\r\n item.qty = item.qty ? (item.qty == 0 ? 1 : item.qty) : 1;\r\n var discount = this.customerDiscount ? Number(this.customerDiscount).toFixed(this.userdata.decimals_allowed) : (item.discount ? Number(item.discount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed))\r\n if (discount !== null || discount !== undefined) {\r\n item.discount = discount;\r\n } else {\r\n item.discount = 0;\r\n }\r\n var itmObj = {\r\n \"prodid\": item.id,\r\n \"cost\": item.cost ? item.cost : 0,\r\n \"pocost\": item.pocost ? item.pocost : 0,\r\n \"landedcost\": item.cost ? item.cost : 0,\r\n \"price\": item.price ? Number(item.price).toFixed(this.userdata.decimals_allowed) : 0,\r\n \"qty\": item.qty ? item.qty : 1,\r\n \"hrs\": item.qty ? item.qty : 1,\r\n \"description\": item.desc,\r\n \"qtyrtd\": item.qtyrtd ? item.qtyrtd : 0,\r\n \"active\": 1,\r\n \"ilc\": item.ilc,\r\n \"qtyonhand\": item.qtyonhand,\r\n \"discount\": item.discount ? item.discount : Number(0).toFixed(this.userdata.decimals_allowed),\r\n \"tax\": item.tax ? item.tax : 0,\r\n \"bin\": item.bin,\r\n \"isservice\": item.isservice,\r\n \"returnable\": item.returnable,\r\n \"qtyreturn\": item.qtyreturn ? item.qtyreturn : 0,\r\n \"isserilized\": item.isserilized,\r\n \"tpcode\": item.tpcode ? item.tpcode : null,\r\n \"serial\": item.serial ? item.serial : null,\r\n \"grp\": item.grp ? item.grp : null,\r\n \"geid\": item.geid ? item.geid : null,\r\n \"deplete_qty\": item.deplete_qty ? item.deplete_qty : 0,\r\n \"lotid\": item.lotid ? item.lotid : 0,\r\n \"linetype\": item.linetype ? item.linetype : 'parts',\r\n \"tech\": item.tech ? item.tech : null,\r\n \"datecreated\": null,\r\n \"line_total\": Number(item.price ? item.price : 0) * (item.qty ? Number(item.qty) : 0),\r\n \"deletedate\": null,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": null,\r\n \"deleteby\": null,\r\n \"srs_id\": item.srs_id ? item.srs_id : null,\r\n \"taxid\": item.taxid ? item.taxid : null,\r\n \"discount_type\": \"percent\",\r\n \"dis_amt\": Number(0).toFixed(this.userdata.decimals_allowed),\r\n \"tax_amt\": Number(0).toFixed(this.userdata.decimals_allowed),\r\n \"uom\": item.uom,\r\n \"margin\": item.margin,\r\n // \"landedcost\": item.landedcost ? item.landedcost : Number(0).toFixed(this.userdata.decimals_allowed),\r\n \"rate\": item.price ? Number(item.price).toFixed(this.userdata.decimals_allowed) : 0,\r\n };\r\n if (this.soItemList.length > 0) {\r\n var isItemExists = false;\r\n if (this.lastPage !== 'estimate') {\r\n this.soItemList.forEach(i => {\r\n if ((i.prodid == item.id) && !isItemExists) {\r\n i.qty = (i.qty ? Number(i.qty) : 0) + (item.qty ? Number(item.qty) : 0);\r\n isItemExists = true;\r\n }\r\n })\r\n }\r\n if (!isItemExists) {\r\n for (var i = 0; i <= this.soItemList.length; i++) {\r\n if (!this.soItemList[i].prodid) {\r\n this.soItemList[i] = itmObj\r\n break\r\n }\r\n if (i == this.soItemList.length - 1) {\r\n this.soItemList.push(itmObj);\r\n break;\r\n }\r\n }\r\n }\r\n } else {\r\n this.soItemList = [];\r\n this.soItemList.push(itmObj);\r\n }\r\n }\r\n\r\n selectsubcatEvent(event) {\r\n this.pcatg.subcategoryid = event.Value;\r\n this.searchProduct()\r\n }\r\n\r\n\r\n selectcatEvent(event) {\r\n this.pcatg.categoryid = event.Value;\r\n this.searchProduct();\r\n this.selectCategory();\r\n }\r\n\r\n selectdeptEvent(event) {\r\n this.pcatg.deptid = event.Value;\r\n this.searchProduct();\r\n this.selectDept()\r\n }\r\n\r\n onDeptFocused(event) {\r\n this.Depart.clear();\r\n }\r\n\r\n onCatFocused(event) {\r\n this.Cat.clear();\r\n }\r\n\r\n onSubFocused(event) {\r\n this.SubCat.clear();\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{'Index_Filter.product_catalog_title' | translate }}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    {{item.ilc}}
    \r\n
    \r\n {{'Index_Filter.description_Text' | translate }} \r\n {{item.desc}}
    \r\n {{'Index_Filter.uom_Text' | translate }} {{item.uom}}\r\n
    \r\n
    {{'Index_Filter.do_not_sell_Text' | translate }} {{'Index_Filter.do_notsell_OptionYes' | translate }}{{'Index_Filter.do_notsell_OptionNo' | translate }}\r\n
    \r\n
    {{'Index_Filter.instock_Text' | translate }} {{item.qtyonhand}}
    \r\n
    {{'Index_Filter.price_Text' | translate }} {{item.price|number:'1.2-2'}}
    \r\n
    \r\n {{'Index_Filter.qty_Text' | translate }}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{'Catlog_Table.ILC_Column' | translate }}{{'Catlog_Table.Description_Column' | translate }}{{'Catlog_Table.QtyInStock_Column' | translate }}{{'Catlog_Table.QtyOnOrder_Column' | translate }}{{'Catlog_Table.DoNotSell_Column' | translate }}{{'Catlog_Table.QtyAvail_Column' | translate }} {{'Catlog_Table.Price_Column' | translate }} {{'Catlog_Table.UOM_Column' | translate }}{{'Catlog_Table.Qty_Column' | translate }}{{'Catlog_Table.Actions_Column' | translate }}
    {{item.ilc}}{{item.desc}}{{item.qtyonhand}}{{item.qtyonorder}}{{item.donosell}}{{item.qtyavailable}}{{item.price | number:'1.2-2'}}{{item.uom}}\r\n
    \r\n \r\n  \r\n  \r\n \r\n \r\n \r\n
      \r\n
    • {{'Catlog_Table.item_analysis_button' | translate }}
    • \r\n
    • {{'Catlog_Table.purchase_history_button' | translate }}
    • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, HostListener, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ItemanalysisComponent } from '../../inventory/products/modal/itemanalysis/itemanalysis.component';\r\nimport { PurchasehistoryComponent } from '../../inventory/products/modal/purchasehistory/purchasehistory.component';\r\n\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\n\r\n@Component({\r\n selector: 'app-productcatlog4purchase',\r\n templateUrl: './productcatlog4purchase.component.html',\r\n styleUrls: ['./productcatlog4purchase.component.scss']\r\n})\r\nexport class Productcatlog4purchaseComponent implements OnInit {\r\n fullScreen = false;\r\n @Output('purchaseItemList') purchaseItemList;\r\n @Output('supplierid') supplierid;\r\n appname = environment.APP_NAME;\r\n private langChangeSubscription: Subscription;\r\n userdata: any;\r\n product: any = '';\r\n pcatg: any = {\r\n categoryid: '',\r\n deptid: '',\r\n subcategoryid: '',\r\n supplierid: ''\r\n }\r\n @ViewChild('myDrop') myDrop;\r\n assembliesList: any = [];\r\n // purchaseItemList: any = [];\r\n searchby: any = {\r\n ptype: '',\r\n pricingtype: '',\r\n productsearchby: '',\r\n }\r\n productList: any = [];\r\n categoryList: any = []\r\n supplierList: any = []\r\n deptList: any = []\r\n subCategoryList: any = []\r\n isShowtileView: boolean = false;\r\n isShowGridView: boolean = true;\r\n focusIn = false;\r\n myDropShow = true;\r\n @HostListener('scroll', ['$event'])\r\n onWindowScroll(event) {\r\n if (this.myDropShow == true) {\r\n this.myDropShow = false;\r\n }\r\n }\r\n constructor(\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private commoanService: CommonServices,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n this.commoanService.getsuppliersList().subscribe(res => {\r\n this.supplierList = res\r\n environment.production ? '' : console.log('supplier list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading supplier list ', err);\r\n });\r\n this.commoanService.getDepartmentList(false).subscribe(res => {\r\n this.deptList = res\r\n environment.production ? '' : console.log('category list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading category list ', err);\r\n });\r\n }\r\n showDropdown() {\r\n this.myDropShow = true;\r\n }\r\n selectCategory() {\r\n this.commoanService.getSubCategory(this.pcatg.categoryid).subscribe(res => {\r\n this.subCategoryList = res\r\n environment.production ? '' : console.log('category list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading category list ', err);\r\n });\r\n }\r\n selectDept() {\r\n this.pcatg.categoryid = '';\r\n this.pcatg.subcategoryid = ''\r\n this.commoanService.getCategory(this.pcatg.deptid, false).subscribe(res => {\r\n this.categoryList = res\r\n environment.production ? '' : console.log('category list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading category list ', err);\r\n });\r\n }\r\n searchProduct() {\r\n this.loader.start();\r\n this.commoanService.getProductCatalogforPO(this.product, this.pcatg.supplierid, this.pcatg.categoryid, this.pcatg.deptid, this.pcatg.categoryid).subscribe(res => {\r\n this.loader.stop();\r\n this.productList = res;\r\n this.productList.forEach(element => {\r\n if (element.pocost != null && element.pocost != 0) {\r\n element.pocost = element.pocost.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.pocost = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n if (element.cost != null && element.cost != 0) {\r\n element.cost = element.cost.toFixed(this.userdata.decimals_allowed);\r\n }\r\n else {\r\n element.cost = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n }\r\n });\r\n this.productList.forEach(item => {\r\n item.qty = 1;\r\n if (item.pic) {\r\n item.pic = environment.DOC_URL + '/' + this.userdata.companyid + '/' + item.pic;\r\n }\r\n\r\n })\r\n environment.production ? '' : console.log('product list data ', this.productList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n }\r\n\r\n purchasehistory(item) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(PurchasehistoryComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' })\r\n modalRef.componentInstance.fromParent = { id: item.prodid };\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n }, (reason) => {\r\n });\r\n }\r\n\r\n itemalysis(item) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(ItemanalysisComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl' });\r\n modalRef.componentInstance.fromParent = { id: item.prodid };\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n gridView() {\r\n this.isShowtileView = false;\r\n this.isShowGridView = true\r\n }\r\n tileView() {\r\n this.isShowtileView = true;\r\n this.isShowGridView = false\r\n }\r\n addproduct(data) {\r\n\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.purchaseItemList);\r\n }\r\n ngOnInit(): void {\r\n this.pcatg.supplierid = this.supplierid ? this.supplierid : '';\r\n this.searchProduct();\r\n this.langChangeSubscription = this.languageService\r\n .getCurrentLanguage()\r\n .subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/purchase/purchaseinvoices/purchasecatalog4purchase/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n \r\n onSortPro(item) {\r\n\r\n }\r\n\r\n selectEvent(item) {\r\n // do something with selected item\r\n this.toastr.Success(\"Item added into list\")\r\n item.qty = item.qty ? (item.qty == 0 ? 1 : item.qty) : 1;\r\n var itmObj = {\r\n \"prodid\": item.prodid,\r\n \"cost\": item.pocost ? Number(item.pocost) : 0,\r\n \"landedcost\": item.cost ? Number(item.cost) : 0,\r\n \"price\": item.price ? Number(item.price).toFixed(this.userdata.decimals_allowed) : 0,\r\n \"qty\": item.qty ? item.qty : 1,\r\n \"description\": item.desc,\r\n \"qtyrtd\": item.qtyrtd ? item.qtyrtd : 0,\r\n \"active\": true,\r\n \"ilc\": item.ilc,\r\n \"qtyonhand\": item.qtyonhand,\r\n \"discount\": item.discount ? item.discount : 0,\r\n \"tax\": item.tax ? item.tax : 0,\r\n \"bin\": item.bin,\r\n \"isservice\": item.isservice,\r\n \"returnable\": item.returnable,\r\n \"qtyreturn\": item.qtyreturn ? item.qtyreturn : 0,\r\n \"isserilized\": item.isserilized,\r\n \"tpcode\": item.tpcode ? item.tpcode : null,\r\n \"serial\": item.serial ? item.serial : null,\r\n \"grp\": item.grp ? item.grp : null,\r\n \"geid\": item.geid ? item.geid : null,\r\n \"deplete_qty\": item.deplete_qty ? item.deplete_qty : 0,\r\n \"lotid\": item.lotid ? item.lotid : 0,\r\n \"linetype\": item.linetype ? item.linetype : null,\r\n \"tech\": item.tech ? item.tech : null,\r\n \"datecreated\": null,\r\n \"line_total\": 0,\r\n \"deletedate\": null,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": null,\r\n \"deleteby\": null,\r\n \"srs_id\": item.srs_id ? item.srs_id : null,\r\n \"taxid\": item.taxid ? item.taxid : null,\r\n \"discount_type\": \"percent\",\r\n \"dis_amt\": 0,\r\n \"tax_amt\": 0,\r\n \"uom\": item.puom\r\n };\r\n if (this.purchaseItemList.length > 0) {\r\n var isItemExists = false;\r\n this.purchaseItemList.forEach(i => {\r\n if (i.prodid == item.prodid) {\r\n i.qty = Number(i.qty) + Number(item.qty);\r\n isItemExists = true;\r\n }\r\n })\r\n if (!isItemExists) {\r\n this.purchaseItemList.push(itmObj)\r\n }\r\n } else {\r\n this.purchaseItemList.push(itmObj);\r\n }\r\n }\r\n\r\n selectEvents(item) {\r\n for (var i = 0; i <= this.purchaseItemList.length; i++) {\r\n if (this.purchaseItemList[i].prodid == item.prodid) {\r\n this.purchaseItemList[i].qty = (this.purchaseItemList[i].qty ? Number(this.purchaseItemList[i].qty) : 0) + (item.qty ? item.qty : 1);\r\n // this.calculateLineItemTotal(this.purchaseItemList[i]);\r\n this.toastr.Success(\"Item added into list\");\r\n\r\n break\r\n }\r\n if (this.purchaseItemList[i].prodid == '') {\r\n this.purchaseItemList[i].receivedqty = 0;\r\n this.purchaseItemList[i].damageqty = 0;\r\n this.purchaseItemList[i].overageqty = 0;\r\n this.purchaseItemList[i].shippedqty = 0;\r\n this.purchaseItemList[i].description = item.desc;\r\n this.purchaseItemList[i].active = true;\r\n this.purchaseItemList[i].qty = item.qty ? item.qty : 1;\r\n this.purchaseItemList[i].cost = item.pocost ? Number(item.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].tax = item.tax ? Number(item.tax).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].taxid = null;\r\n this.purchaseItemList[i].tax_amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].discount = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].dis_amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].wo = '';\r\n this.purchaseItemList[i].uom = item.puom;\r\n this.purchaseItemList[i].discount_type = '';\r\n this.purchaseItemList[i].line_total = 0;\r\n this.purchaseItemList[i].prodid = item.prodid;\r\n this.purchaseItemList[i].ilc = item.ilc;\r\n this.purchaseItemList[i].pohdrid = 0;\r\n this.purchaseItemList[i].createby = null;\r\n this.purchaseItemList[i].createdate = null;\r\n this.purchaseItemList[i].milc = item.milc;\r\n this.purchaseItemList[i].tpcode = null;\r\n this.purchaseItemList[i].landedcost = item.cost ? Number(item.cost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList[i].serials = null;\r\n this.toastr.Success(\"Item added into list\");\r\n // this.calculateLineItemTotal(this.purchaseItemList[i]);\r\n // this.createROW();\r\n break\r\n }\r\n if (i == this.purchaseItemList.length - 1) {\r\n item.receivedqty = 0;\r\n item.damageqty = 0;\r\n item.overageqty = 0;\r\n item.shippedqty = 0;\r\n item.description = item.desc;\r\n item.active = true;\r\n item.qty = item.qty ? item.qty : 1;\r\n item.cost = item.pocost ? Number(item.pocost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.tax = Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.taxid = null;\r\n item.tax_amt = 0;\r\n item.discount = 0;\r\n item.dis_amt = 0;\r\n item.wo = '';\r\n item.uom = item.puom;\r\n item.discount_type = 'percent';\r\n item.line_total = item.qty * item.cost;\r\n item.landedcost = item.cost ? Number(item.cost).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n item.line_total = parseFloat(item.line_total).toFixed(this.userdata.decimals_allowed);\r\n this.purchaseItemList.push(item);\r\n // this.calculateLineItemTotal(this.purchaseItemList[this.purchaseItemList.length - 1]);\r\n this.toastr.Success(\"Item added into list\");\r\n break\r\n }\r\n\r\n }\r\n }\r\n}\r\n\r\n\r\n\r\n","\r\n
    \r\n
    \r\n
    {{ 'Modal1_Title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ 'Modal1_Table.ILC_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.Description_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.Primary_Supplier_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.Instock_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.DoNotOrder_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.ReorderQty_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.PO_Cost_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.QTY_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.UOM_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.Cost_Column' | translate }}\r\n \r\n \r\n {{ 'Modal1_Table.Actions_Column' | translate }}\r\n \r\n
    \r\n {{data.ilc}}\r\n \r\n {{data.desc}}\r\n \r\n {{data.supplier}}\r\n \r\n {{data.qtyonhand}}\r\n \r\n {{data.donotorder}}\r\n \r\n {{data.reorderqty}}\r\n \r\n {{data.pocost}}\r\n \r\n {{data.puom}}\r\n \r\n {{data.cost}}\r\n \r\n
    \r\n \r\n  \r\n  \r\n \r\n \r\n \r\n
      \r\n
    • Item Analysis
    • \r\n
    • Purchase History
    • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\n\r\n@Component({\r\n selector: 'app-productview',\r\n templateUrl: './productview.component.html',\r\n styleUrls: ['./productview.component.scss']\r\n})\r\nexport class ProductviewComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('item') item;\r\n @Input('poid') poid;\r\n poDetails: any = {\r\n costingItems: []\r\n };\r\n itemStatus: any = ''\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n constructor(private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private toastr: NotificationService, private datepipe: DatePipe, private service: purchaseServices, private modalService: NgbModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n postItem() {\r\n var postObj = {\r\n \"id\": this.item.prodid,\r\n \"companyid\": this.userdata.companyid,\r\n \"ilc\": this.item.ilc,\r\n \"description\": this.item.description,\r\n \"salepricepercentage\": this.item.salepricepercentage ? this.item.salepricepercentage : 0,\r\n \"salesprice\": this.item.salesprice,\r\n \"landedcost\": this.item.landedcost,\r\n \"isserilized\": this.item.isserilized,\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n }\r\n this.loader.start();\r\n this.service.postPOProdUpdate(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.poDetails = res.data;\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading updated po item ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.item.isserilized == true) {\r\n this.itemStatus = 'Serilized'\r\n } else {\r\n this.itemStatus = ''\r\n }\r\n this.calculateSalesTotal();\r\n environment.production ? '' : console.log('modal data ', this.item);\r\n }\r\n\r\n calculateSalesTotal() {\r\n this.item.landedcost = this.item.landedcost ? this.item.landedcost : 0;\r\n var salepricepercentage = this.item.salepricepercentage ? this.item.salepricepercentage : 0;\r\n var salesPercentValue = salepricepercentage / 100;\r\n this.item.salesprice = parseFloat(this.item.landedcost) + (this.item.landedcost * salesPercentValue);\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Product View\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport {\r\n Component,\r\n ElementRef,\r\n Input,\r\n OnInit,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n@Component({\r\n selector: 'app-projjoblistmodal',\r\n templateUrl: './projjoblistmodal.component.html',\r\n styleUrls: ['./projjoblistmodal.component.scss'],\r\n})\r\nexport class ProjjoblistmodalComponent implements OnInit {\r\n @Input('searchtxt') searchtxt;\r\n @Input('customerid') customerid;\r\n jobList: any = [];\r\n subscription: Subscription;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n selectedJob: any = '';\r\n private langChangeSubscription: Subscription;\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n private modalService: NgbModal,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n\r\n private commoanService: CommonServices,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private loader: NgxUiLoaderService\r\n ) {\r\n this.getProjJobslist();\r\n }\r\n\r\n getProjJobslist() {\r\n if (\r\n this.searchtxt == undefined ||\r\n this.searchtxt == null ||\r\n this.searchtxt.length < 3\r\n ) {\r\n return;\r\n }\r\n if (this.customerid == undefined || this.customerid == null) {\r\n this.customerid = '';\r\n }\r\n this.loader.start();\r\n this.commoanService\r\n .getProjJobslist(this.searchtxt, this.customerid)\r\n .subscribe(\r\n (res) => {\r\n this.loader.stop();\r\n this.jobList = res;\r\n },\r\n (err) => {\r\n this.loader.stop();\r\n environment.production\r\n ? ''\r\n : console.log('Error : While loading expType list ', err);\r\n }\r\n );\r\n }\r\n selectJob(item) {\r\n this.selectedJob = item;\r\n this.jobList = [];\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\nthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\tthis.loadComponentTranslations(lang); \r\n}); \r\n // this.getProjJobslist();\r\n }\r\n // ngAfterViewInit() {\r\n\r\n // const source = interval(500);\r\n // this.subscription = source.subscribe(val => {\r\n // if(!this.SearchElement.nativeElement.focus()){\r\n // this.SearchElement.nativeElement.focus()\r\n // }\r\n // });\r\n // }\r\n\r\n // ngOnDestroy() {\r\n // this.subscription.unsubscribe();\r\n // console.log('destroyed')\r\n // }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/basicinfo/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Projjoblistmodal.Table.Ezb_Ref_coloum' | translate }}{{ 'Projjoblistmodal.Table.ThirdParty_ref' | translate }}{{ 'Projjoblistmodal.Table.ProjectName_coloum' | translate }}{{ 'Projjoblistmodal.Table.Type_coloum' | translate }}{{ 'Projjoblistmodal.Table.Customer_coloum' | translate }}{{ 'Projjoblistmodal.Table.Site_coloum' | translate }}{{ 'Projjoblistmodal.Table.Tech_Coloum' | translate }}{{ 'Projjoblistmodal.Table.Service_notes_coloum' | translate }}
    \r\n
    {{item.proj}}\r\n
    \r\n
    \r\n
    \r\n {{item.tpcode}}
    \r\n \r\n
    \r\n
    Ezb Ref# : {{item.proj}}\r\n
    \r\n
    Third Party Ref# : {{item.tpcode}}\r\n
    \r\n
    Type : {{item.type}}
    \r\n
    Customer : {{item.customername}}
    \r\n
    Scope : {{item.name}}
    \r\n
    Site : {{item.siteother}}
    \r\n
    Tech : {{item.assignto}}
    \r\n
    Service Notes : {{item.servicenotes}}
    \r\n
    \r\n
    \r\n
    \r\n
    {{item.name}}
    \r\n
    \r\n
    {{item.type}}
    \r\n
    \r\n
    {{item.customername}}
    \r\n
    \r\n
    {{item.siteother}}
    \r\n
    \r\n
    {{item.assignto}}
    \r\n
    \r\n
    {{item.servicenotes}}
    \r\n
    \r\n
    {{ 'Projjoblistmodal.Result' | translate }}
    \r\n
    \r\n\r\n
    \r\n
    ","import { NgModule } from '@angular/core';\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { ProjjoblistmodalComponent } from './projjoblistmodal.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [ProjjoblistmodalComponent],\r\n imports:[HttpClientModule, \r\n TranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n \r\n ,CommonModule, FormsModule, NgbModule, NgbTooltipModule],\r\n exports: [ProjjoblistmodalComponent],\r\n})\r\nexport class ProjjoblistModule {}\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } \r\n ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-projjoblistpomodal',\r\n templateUrl: './projjoblistpomodal.component.html',\r\n styleUrls: ['./projjoblistpomodal.component.scss']\r\n})\r\nexport class ProjjoblistpomodalComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('searchtxt') searchtxt;\r\n @Input('customerid') customerid;\r\n jobList: any = [];\r\n selectedJob: any = '';\r\n soOrderTypes: any = [];\r\n ordertype: any = '';\r\n constructor(private activeModal: NgbActiveModal,\r\n private modalService: NgbModal,\r\n private commoanService: CommonServices,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe,\r\n private loader: NgxUiLoaderService) {\r\n this.getSalesOrderTypes();\r\n }\r\n getSalesOrderTypes() {\r\n this.soOrderTypes = []\r\n this.commoanService.getSOTypes().subscribe((res: any) => {\r\n this.soOrderTypes = res;\r\n }, err => {\r\n });\r\n }\r\n getProjJobslist() {\r\n if (this.searchtxt == undefined || this.searchtxt == null) {\r\n this.searchtxt == '';\r\n return;\r\n }\r\n if (this.customerid == undefined || this.customerid == null) {\r\n this.customerid = '';\r\n }\r\n if (this.searchtxt.length < 3) {\r\n return\r\n }\r\n this.loader.start();\r\n this.commoanService.getProjJobslist(this.searchtxt, this.customerid).subscribe(res => {\r\n this.loader.stop();\r\n this.jobList = res;\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n }\r\n selectJob(item) {\r\n if (this.ordertype == '') {\r\n this.toastr.Error('Please select order type');\r\n return;\r\n }\r\n this.selectedJob = item;\r\n this.selectedJob.ordertype = this.ordertype;\r\n this.activeModal.close(this.selectedJob)\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getProjJobslist();\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Sales Order Details\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Ezb Ref#Third Party Ref#TypeCustomerScopeSiteTechService Notes
    \r\n
    {{item.proj}}
    \r\n\r\n
    \r\n
    {{item.tpcode}}
    \r\n
    \r\n
    \r\n {{item.type}}
    \r\n
    \r\n
    \r\n {{item.customername}}
    \r\n
    \r\n
    {{item.name}}
    \r\n
    \r\n
    {{item.siteother}}
    \r\n
    \r\n
    {{item.assignto}}
    \r\n
    \r\n
    {{item.servicenotes}}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-purchaseinvoicepayment',\r\n templateUrl: './purchaseinvoicepayment.component.html',\r\n styleUrls: ['./purchaseinvoicepayment.component.scss']\r\n})\r\nexport class PurchaseinvoicepaymentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('id') id;\r\n @Input('totalcost') totalcost;\r\n @Input('dueamount') dueamount;\r\n\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n paymentMethodList: any = [];\r\n payment: any = {}\r\n companyBanks: any = [];\r\n constructor(private activeModal: NgbActiveModal,\r\n private commonService: CommonServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commonService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethodList = res;\r\n environment.production ? '' : console.log('paymentMethodList list', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading paymentMethodList list ', err);\r\n });\r\n }\r\n getPaymentAccounts() {\r\n var type = '';\r\n this.paymentMethodList.forEach(item => {\r\n if (item.Value == this.payment.mop) {\r\n type = item.Value1 ? item.Value1 : '';\r\n }\r\n })\r\n this.commonService.getCompMOPBankList(this.payment.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.payment.amt = this.totalcost;\r\n this.payment.balance = this.dueamount;\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Purchase Invoice Transactions\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    PI TotalTransaction TotalBalance
    {{this.payment.amt}}{{this.payment.balance}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-purchaserequest',\r\n templateUrl: './purchaserequest.component.html',\r\n styleUrls: ['./purchaserequest.component.scss']\r\n})\r\nexport class PurchaserequestComponent implements OnInit {\r\n fullScreen = false;\r\n appname = environment.APP_NAME;\r\n purchaseRequest: any = {\r\n searchtxt: '',\r\n fromdate: '',\r\n todate: '',\r\n status: '',\r\n type: ''\r\n }\r\n supplierListData: any = [];\r\n purchaseRequestData: any;\r\n userdata: any;\r\n purchaseData: any;\r\n totalPages: any = 0;\r\n currentPage: any = 1;\r\n hideRightNav: boolean = true;\r\n hideLeftNav: boolean = false;\r\n totalRows: any = 0;\r\n constructor(\r\n private loader: NgxUiLoaderService, private activeModal: NgbActiveModal, private commonService: CommonServices, private service: purchaseServices, private datepipe: DatePipe\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n this.purchaseRequest.fromdate = this.userdata.fromdate;\r\n this.purchaseRequest.enddate = this.userdata.enddate;\r\n this.getpurchaseData();\r\n }\r\n\r\n getpurchaseData() {\r\n this.loader.start();\r\n this.service.getPurchaseRequest(this.currentPage, this.purchaseRequest.type, this.purchaseRequest.status, this.datepipe.transform(this.purchaseRequest.fromdate, this.userdata.postdateformat),\r\n this.datepipe.transform(this.purchaseRequest.enddate, this.userdata.postdateformat), this.purchaseRequest.searchtxt).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.purchaseData = res.data;\r\n this.totalPages = res.total_pages;\r\n }\r\n this.purchaseData.forEach(item => {\r\n item.ischecked = false;\r\n })\r\n this.totalRows = this.purchaseData.length;\r\n })\r\n }\r\n hideNavButtons(isright, isleft) {\r\n this.hideRightNav = isright;\r\n this.hideLeftNav = isleft;\r\n }\r\n gotoPage(page) {\r\n // this.hideNav = true\r\n if (page == 'first') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else if (page == 'prev') {\r\n if (this.currentPage == '2') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else {\r\n this.currentPage--;\r\n this.hideNavButtons(false, false);\r\n }\r\n } else if (page == 'next') {\r\n if (this.currentPage == this.totalPages - 1) {\r\n this.currentPage = this.totalPages;\r\n this.hideNavButtons(false, true);\r\n } else {\r\n this.currentPage++;\r\n this.hideNavButtons(false, false);\r\n }\r\n\r\n } else if (page == 'last') {\r\n this.currentPage = this.totalPages;\r\n this.hideRightNav = false\r\n this.hideLeftNav = true\r\n }\r\n this.getpurchaseData();\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Purchase Requests\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Req#Proj/Job Ref#Supplier Customer/Site# RequestedBy Notes Status CreateBy CreateDate UpdateBy UpdateDate
    {{n.req_no}}{{n.descrorderrefiption}}{{n.supplier}}{{n.orderref_extra}}{{n.requestby}}{{n.ponotes}}{{n.status}}{{n.createby}}{{n.createdate |\r\n date:userdata.displaydatetimeformat}}{{n.updateby}}{{n.updatedate |\r\n date:userdata.displaydatetimeformat}}
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n \r\n \r\n
    \r\n {{currentPage}} of {{totalPages}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ThemeService } from 'ng2-charts';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\n\r\n@Component({\r\n selector: 'app-purchaserequestitemanaylsis',\r\n templateUrl: './purchaserequestitemanaylsis.component.html',\r\n styleUrls: ['./purchaserequestitemanaylsis.component.scss']\r\n})\r\nexport class PurchaserequestitemanaylsisComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('poid') poid\r\n order: any\r\n codeList: any = []\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n fromdate: any;\r\n todate: any;\r\n searchtext: any;\r\n constructor(\r\n private modalService: NgbModal,\r\n private activeModal: NgbActiveModal,\r\n private inventoryService: InventoryServices,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private service: purchaseServices,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getItemAnlysisList();\r\n }\r\n\r\n getItemAnlysisList() {\r\n this.loader.start();\r\n this.inventoryService.getItemAnalyses(this.poid, this.datepipe.transform(new Date(this.fromdate), this.userdata.postdateformat), this.datepipe.transform(new Date(this.todate), this.userdata.postdateformat), this.searchtext).subscribe((res) => {\r\n this.loader.stop();\r\n this.codeList = res;\r\n environment.production ? '' : console.log(' item analysis item list ', this.codeList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll('')\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Item Analysis\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    Search by orders
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Show
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    TranIDSerialLast LocationQtyNew LocationQtyTypeCustomerReceiptTxn DateTxn By
    {{item.tranid}}{{item.serial}}{{item.lastlocation}}{{item.qty}}{{item.newlocation}}{{item.qty}}{{item.TranType}}{{item.customer}}{{item.receipt}}{{item.dot | date: userdata.date_format_}}{{item.tranby}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\n\r\n@Component({\r\n selector: 'app-purchaserequestitemhistory',\r\n templateUrl: './purchaserequestitemhistory.component.html',\r\n styleUrls: ['./purchaserequestitemhistory.component.scss']\r\n})\r\nexport class PurchaserequestitemhistoryComponent implements OnInit {\r\n @Input('poid') poid;\r\n codeList: any = []\r\n serialno: any\r\n fullScreen = false;\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private service: purchaseServices,\r\n private modalService: NgbModal) { }\r\n\r\n ngOnInit(): void {\r\n this.getHistoryList()\r\n }\r\n closeModal() {\r\n this.modalService.dismissAll('')\r\n }\r\n getHistoryList() {\r\n this.loader.start();\r\n this.service.getPurchaseRequestItemHistory(this.poid, '', '', '').subscribe(res => {\r\n this.loader.stop();\r\n this.codeList = res;\r\n environment.production ? '' : console.log('item history ', this.codeList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n\r\n}\r\nfunction input(arg0: string) {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n
    Item History\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    Search by Code Or Description
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Show
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    Po#IlcDescriptionPodateQtyStatus
    {{item.pon}}{{item.ilc}}{{item.description}}{{item.podate}}{{item.qty}}{{item.status}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, Type } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { IntegrationServices } from 'src/app/components/integrations/integration.service'\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\n@Component({\r\n selector: 'app-qbonlinemodal',\r\n templateUrl: './qbonlinemodal.component.html',\r\n styleUrls: ['./qbonlinemodal.component.scss']\r\n})\r\nexport class QbonlinemodalComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('type') type;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n listRes: any = [];\r\n showtitle: boolean;\r\n modalTitle: any;\r\n customer: any = {\r\n id: null,\r\n name: '',\r\n accountno: '',\r\n shortname: '',\r\n status: '',\r\n tpaccno: '',\r\n }\r\n supplier: any = {\r\n id: null,\r\n name: '',\r\n accno: '',\r\n shortname: '',\r\n status: '',\r\n tpcode: '',\r\n }\r\n invoiceData: any = {\r\n tax: 0,\r\n discount: 0,\r\n salesrep: '',\r\n invno: '',\r\n project: '',\r\n projectloc: '',\r\n customer: '',\r\n tpsync: '',\r\n fdate: '',\r\n status: ''\r\n }\r\n filter: any = {\r\n name: '',\r\n ilc: '',\r\n whatyouarethinking: '',\r\n status: '',\r\n serialized: '',\r\n supplier: '',\r\n deptid: '',\r\n type: '',\r\n tpsync: '',\r\n desc: '',\r\n category: ''\r\n }\r\n currentPage:any=1;\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private SalesServices: SalesServices,\r\n private service: InventoryServices,\r\n private purchaseServices: purchaseServices,\r\n private IntegrationServices: IntegrationServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n ngOnInit(): void {\r\n this.showtitle = true;\r\n if (this.type == 'customer') {\r\n this.modalTitle = 'Customer List';\r\n this.getCustomersList();\r\n }\r\n if (this.type == 'supplier') {\r\n this.modalTitle = 'Supplier List';\r\n this.getSupplierList();\r\n }\r\n if (this.type == 'invoices') {\r\n this.modalTitle = 'Invoice List';\r\n this.getInvoices();\r\n }\r\n if (this.type == 'inventory') {\r\n this.modalTitle = 'Inventory List';\r\n this.getItems();\r\n }\r\n }\r\n\r\n //Get Customer List==============\r\n getCustomersList() {\r\n this.listRes = [];\r\n this.loader.start();\r\n this.SalesServices.getCustomers(1, this.customer.searchtxt, '', '', '', this.customer.status).subscribe(res => {\r\n this.loader.stop();\r\n this.listRes = res;\r\n environment.production ? '' : console.log('customers list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customers list ', err);\r\n });\r\n }\r\n\r\n //Get Supplier List==============\r\n getSupplierList() {\r\n this.listRes = [];\r\n this.loader.start();\r\n this.purchaseServices.getsuppliers(1,'', '', this.supplier.searchtxt, this.supplier.status\r\n ).subscribe(res => {\r\n this.loader.stop();\r\n this.listRes = res;\r\n environment.production ? '' : console.log('supplier list data', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading supplier list ', err);\r\n });\r\n }\r\n\r\n //Get Invoice List==============\r\n getInvoices() {\r\n this.loader.start();\r\n this.listRes = [];\r\n this.SalesServices.getInvoices(\r\n this.currentPage,\r\n '',\r\n this.datepipe.transform(this.invoiceData.fdate, this.userdata.postdateformat),\r\n this.datepipe.transform(this.invoiceData.edate, this.userdata.postdateformat),\r\n this.invoiceData.status, '',''\r\n ).subscribe(res => {\r\n this.loader.stop();\r\n this.listRes = res;\r\n this.listRes.forEach(element => {\r\n element.name = element.invno;\r\n element.description = element.customer;\r\n // element.duedate = this.datepipe.transform(element.duedate, this.format);\r\n\r\n environment.production ? '' : console.log('invoices list data ', res);\r\n });\r\n\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading invoice list ', err);\r\n });\r\n }\r\n\r\n //Get Product List==============\r\n getItems() {\r\n this.loader.start();\r\n this.service.getInventoryItems(1, this.filter.serialized, this.filter.searchtext, this.filter.supplier, this.filter.category, this.filter.deptid, this.filter.status, this.filter.tpsync).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res == null) {\r\n return;\r\n }\r\n this.listRes = res.data;\r\n this.listRes.forEach(element => {\r\n element.name = element.ilc;\r\n })\r\n environment.production ? '' : console.log('product list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading product list ', err);\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{modalTitle}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n Action\r\n
    \r\n
    NameDescriptionIs SyncedTP No
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{item.name}}{{item.description}}{{item.issynce}}{{item.tpaccno}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgForm } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n@Component({\r\n selector: 'app-quickaddproduct',\r\n templateUrl: './quickaddproduct.component.html',\r\n styleUrls: ['./quickaddproduct.component.scss']\r\n})\r\nexport class QuickaddproductComponent implements OnInit {\r\n private langChangeSubscription: Subscription; \r\n fullScreen = false;\r\n @Input('productdata') productdata;\r\n product: any = {\r\n ptype: 'inventory',\r\n dept: null,\r\n cat: null,\r\n supplierid: null,\r\n status: 'active',\r\n pocost:0,\r\n landedcost:0,\r\n store:0\r\n }\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n deptList: any = [];\r\n productType: any = [];\r\n supplierList: any = [];\r\n categoryList: any = [];\r\n statusList: any = [];\r\n form: NgForm;\r\n isSaved = false;\r\n refid: any;\r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private activeModal: NgbActiveModal, private router: Router, private loader: NgxUiLoaderService, private service: InventoryServices, private datepipe: DatePipe, private commonService: CommonServices) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commonService.getDepartmentList(false).subscribe(res => {\r\n this.deptList = res;\r\n environment.production ? '' : console.log('department data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading department data', err);\r\n });\r\n\r\n this.commonService.getComboEnums('prodtype').subscribe(res => {\r\n this.productType = res;\r\n environment.production ? '' : console.log('product type ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading Sub category data', err);\r\n });\r\n this.service.getProductSupplier().subscribe(res => {\r\n this.supplierList = res;\r\n environment.production ? '' : console.log('supplierList type ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading supplierList data', err);\r\n });\r\n this.commonService.getComboEnums('assemblystatus').subscribe(res => {\r\n this.statusList = res;\r\n environment.production ? '' : console.log('statusList ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading statusList data', err);\r\n });\r\n\r\n }\r\n getCatData() {\r\n this.loader.start();\r\n this.commonService.getCategory(this.product.dept, false).subscribe(res => {\r\n this.categoryList = res;\r\n this.loader.stop();\r\n\r\n environment.production ? '' : console.log('Category data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n\r\n environment.production ? '' : console.log('Error : While loading category data', err);\r\n });\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.productdata) {\r\n this.product = this.productdata;\r\n }\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/modal/quickaddproduct/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n closeModal() {\r\n\r\n this.activeModal.close(this.isSaved ? this.refid : '');\r\n }\r\n\r\n postQuickItem() {\r\n if (this.product.ilc == undefined || this.product.ilc == null) {\r\n this.toastr.Error('Please enter ilc')\r\n return;\r\n }\r\n var t_prodbinsList = [];\r\n t_prodbinsList.push({\r\n prodid: null,\r\n active: true,\r\n companyid: this.userdata.companyid,\r\n cnt: 0,\r\n binid: this.userdata.default_inventory_bin_location,\r\n onhold: 0,\r\n sold: 0,\r\n minqty: 0,\r\n maxqty: 0,\r\n availableqty: 0,\r\n notes: '',\r\n createby: this.userdata.email,\r\n createdate: this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n })\r\n var productObj = {\r\n \"ilc\": this.product.ilc,\r\n \"description\": this.product.description,\r\n \"dept\": this.product.dept,\r\n \"supplierid\": this.product.supplierid,\r\n \"cat\": this.product.cat,\r\n \"ptype\": this.product.ptype,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"status\": this.product.status,\r\n \"companyid\": this.userdata.companyid,\r\n \"landedcost\": this.product.landedcost,\r\n \"store\": this.product.store,\r\n \"puom\": this.product.puom ? this.product.puom : 'EA',\r\n \"pocost\": parseFloat(this.product.pocost),\r\n \"t_prodbins\": t_prodbinsList\r\n\r\n }\r\n environment.production ? '' : console.log('quick item', productObj);\r\n this.loader.start();\r\n this.service.postProduct(productObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.refid = res.refid;\r\n this.isSaved = true;\r\n this.product = {};\r\n this.closeModal()\r\n }\r\n environment.production ? '' : console.log('post quick product response ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post product ', err);\r\n });\r\n }\r\n\r\n validateIlc() {\r\n this.loader.start();\r\n this.commonService.validateIlc(this.product.ilc).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n this.product.ilc = '';\r\n return;\r\n }\r\n }\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading discountTypeList data', err);\r\n });\r\n\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{'QuickAdd_Title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{'ProductType_Error' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{'ILC_Error' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{'Description_Error' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    {{'Supplier_Error' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    {{'Department_Error' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{'Status_Error' | translate }}
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { GenericprintComponent } from '../genericprint/genericprint.component';\r\n\r\n@Component({\r\n\tselector: 'app-quotemodal',\r\n\ttemplateUrl: './quotemodal.component.html',\r\n\tstyleUrls: ['./quotemodal.component.scss']\r\n})\r\nexport class QuotemodalComponent implements OnInit {\r\n\tfullScreen = false;\r\n\t@ViewChild('Customer') Customer;\r\n\r\n\t//#region userdata block\r\n\tappname = environment.APP_NAME;\r\n\tuserdata: any;\r\n\tcompanyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n\tformat: any;\r\n\ttotalRows: any = 0;\r\n\t//#endregion userdata block\r\n\tqoute: any = {\r\n\t\tstatus: '',\r\n\t\tsalesrep: '',\r\n\t\tquoteno: '',\r\n\t\tproject: '',\r\n\t\tcustomer: '',\r\n\t\ttpsync: '',\r\n\t\tsearchtxt: ''\r\n\t}\r\n\tstatusList: any = [];\r\n\testimateList: any = [];\r\n\tstringData: string;\r\n\tselectedQuotestatus: any = [];\r\n\tdropdownSettings: IDropdownSettings;\r\n\tcustomerList: any = [];\r\n\tkeyword = 'name';\r\n\ttotalPages: any = 0;\r\n\tcurrentPage: any = 1;\r\n\thideRightNav: boolean = true;\r\n\thideLeftNav: boolean = false;\r\n\tconstructor(\r\n\t\tprivate toaster: NotificationService,\r\n\t\tprivate service: SalesServices,\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal, private router: Router, private loader: NgxUiLoaderService,) {\r\n\t\t//#region userdata block\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\t//#endregion userdata block\r\n\r\n\t\tthis.qoute.fromdate = this.userdata.fromdate;\r\n\t\tthis.qoute.enddate = this.userdata.enddate;\r\n\t\tthis.getEstimateList();\r\n\t\tthis.commonService.getComboEnums('quotestatus').subscribe(res => {\r\n\t\t\tthis.statusList = res;\r\n\t\t\tenvironment.production ? '' : console.log(' status list data ', this.statusList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading status list ', err);\r\n\t\t});\r\n\t\tthis.dropdownSettings = {\r\n\t\t\tsingleSelection: false,\r\n\t\t\tidField: 'stringValue',\r\n\t\t\ttextField: 'Text',\r\n\t\t\tselectAllText: 'Select All',\r\n\t\t\tunSelectAllText: 'UnSelect All',\r\n\t\t\titemsShowLimit: 2,\r\n\t\t\tallowSearchFilter: true\r\n\t\t}\r\n\t}\r\n\r\n\tgetEstimateList() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getQuoteList(this.currentPage, this.qoute.searchtxt, this.datePipe.transform(this.qoute.fromdate, this.userdata.postdateformat),\r\n\t\t\tthis.datePipe.transform(this.qoute.enddate, this.userdata.postdateformat),\r\n\t\t\tthis.qoute.status, '').subscribe((res: any) => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tif (res != null) {\r\n\t\t\t\t\tthis.estimateList = res.data;\r\n\t\t\t\t\tthis.totalPages = res.total_pages;\r\n\t\t\t\t}\r\n\t\t\t\tthis.estimateList.forEach(element => {\r\n\t\t\t\t\telement.estimatedate = this.datePipe.transform(element.estimatedate, this.format);\r\n\t\t\t\t\telement.expirydate = this.datePipe.transform(element.expirydate, this.format);\r\n\t\t\t\t\tif (element.amt != null && element.amt != 0) {\r\n\t\t\t\t\t\telement.amt = element.amt.toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\telement.amt = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tthis.totalRows = this.estimateList.length;\r\n\t\t\t\tenvironment.production ? '' : console.log('estimate list data ', res);\r\n\r\n\t\t\t}, err => {\r\n\t\t\t\tthis.loader.stop();\r\n\t\t\t\tenvironment.production ? '' : console.log('Error : While loading invoice list ', err);\r\n\t\t\t});\r\n\t}\r\n\t//#region NgAutocomplete\r\n\tonItemSelect(item: any) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedQuotestatus.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.qoute.status = this.stringData;\r\n\t\tenvironment.production ? '' : console.log(this.qoute.status);\r\n\t\tthis.gotoPage('first');\r\n\t}\r\n\tonSelectAll(items: any) {\r\n\t\tlet arrayData = [];\r\n\t\titems.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.qoute.status = this.stringData;\r\n\t\tthis.gotoPage('first');\r\n\t}\r\n\r\n\tonItemDeSelect($event) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedQuotestatus.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.qoute.status = this.stringData;\r\n\t\tenvironment.production ? '' : console.log(this.qoute.status);\r\n\t\tthis.gotoPage('first');\r\n\t}\r\n\t//#endregion\r\n\r\n\tonFocused(e) {\r\n\t\tthis.Customer.clear();\r\n\t\tenvironment.production ? '' : console.log('select event onfocus', e);\r\n\t}\r\n\tselectEvent(item) {\r\n\t\tenvironment.production ? '' : console.log('select event', item);\r\n\t\tthis.qoute.customer = parseFloat(item.id)\r\n\t\tthis.gotoPage('first');\r\n\t}\r\n\tinputCustomerCleared() {\r\n\t\tthis.qoute.customer = null;\r\n\t\tenvironment.production ? '' : console.log('Customer value cleared ', this.qoute.customer);\r\n\t}\r\n\tonChangeSearch(val: string) {\r\n\t\tenvironment.production ? '' : console.log('select event onchange', val);\r\n\t}\r\n\tprintQuote(quoteid) {\r\n\t\tvar modalRef = null;\r\n\t\tmodalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n\t\tmodalRef.componentInstance.id = quoteid;\r\n\t\tmodalRef.componentInstance.name = 'printq';\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\tquote2SalesOrder(quoteid) {\r\n\t\tvar createSoResponse\r\n\t\tthis.service.createQoute2Salesorder(quoteid).subscribe(res => {\r\n\t\t\tcreateSoResponse = res;\r\n\t\t\tSwal.fire('', 'Sales order created!', 'success');\r\n\t\t\t// const encrptData = btoa(createSoResponse); \r\n\t\t\t// const url = this.router.serializeUrl(this.router.createUrlTree(['/salesorders/newsales'], { queryParams: { id: encrptData, action: 'edit' } }));\r\n\t\t\t// window.open(url, '_blank');\r\n\t\t\tthis.gotoPage('first');\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading sales order data', err);\r\n\t\t});\r\n\t}\r\n\tngOnInit(): void {\r\n\t}\r\n\r\n\thideNavButtons(isright, isleft) {\r\n\t\tthis.hideRightNav = isright;\r\n\t\tthis.hideLeftNav = isleft;\r\n\t}\r\n\tgotoPage(page) {\r\n\t\t// this.hideNav = true\r\n\t\tif (page == 'first') {\r\n\t\t\tthis.currentPage = 1;\r\n\t\t\tthis.hideNavButtons(true, false);\r\n\t\t} else if (page == 'prev') {\r\n\t\t\tif (this.currentPage == '2') {\r\n\t\t\t\tthis.currentPage = 1;\r\n\t\t\t\tthis.hideNavButtons(true, false);\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentPage--;\r\n\t\t\t\tthis.hideNavButtons(false, false);\r\n\t\t\t}\r\n\t\t} else if (page == 'next') {\r\n\t\t\tif (this.currentPage == this.totalPages - 1) {\r\n\t\t\t\tthis.currentPage = this.totalPages;\r\n\t\t\t\tthis.hideNavButtons(false, true);\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentPage++;\r\n\t\t\t\tthis.hideNavButtons(false, false);\r\n\t\t\t}\r\n\r\n\t\t} else if (page == 'last') {\r\n\t\t\tthis.currentPage = this.totalPages;\r\n\t\t\tthis.hideRightNav = false\r\n\t\t\tthis.hideLeftNav = true\r\n\t\t}\r\n\t\tthis.getEstimateList();\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Quotes/Estimates\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ActionQte/Est#Customer NameProject Ref#CurrencyQuoteTotalDateExpiryDateStatusTPSyncCreateByCreateDateUpdateByUpdateDate
    \r\n \r\n  \r\n  \r\n \r\n {{item.estno}}{{item.customer}}{{item.projref}}{{item.currency}}{{item.amt}}{{item.estimatedate}}{{item.expirydate}}{{item.status}} {{item.tpsync}}{{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n \r\n \r\n
    \r\n {{currentPage}} of {{totalPages}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { element } from 'screenfull';\r\n\r\n\r\n@Component({\r\n selector: 'app-receivedchequetracking',\r\n templateUrl: './receivedchequetracking.component.html',\r\n styleUrls: ['./receivedchequetracking.component.scss']\r\n})\r\nexport class ReceivedchequetrackingComponent implements OnInit {\r\n private langChangeSubscription: Subscription;\r\n fullScreen = false;\r\n receivePayment: any;\r\n @Input('params') params;\r\n tracking: any = {\r\n };\r\n userdata: any;\r\n appname: any = environment.APP_NAME;\r\n statusList: any = [];\r\n uploader: FileUploader;\r\n t_received_payment_files: any = [];\r\n filename: any;\r\n response: any;\r\n trackingLog: any = [];\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private toastr: NotificationService,\r\n private service: CommonServices,\r\n private datepipe: DatePipe) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.service.getComboEnums('ReceivePaychequestatus').subscribe(res => {\r\n this.statusList = res;\r\n environment.production ? '' : console.log('status list', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n this.receivePayment = this.params;\r\n this.getTrackingLog();\r\n }\r\n initialize() {\r\n this.tracking = {\r\n status: '',\r\n notes: '',\r\n partynotified: false,\r\n reason: '',\r\n t_received_payment_files: []\r\n };\r\n this.initializeFileUploader();\r\n }\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/accounts/receivables/chequereceived/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n closeModal(action) {\r\n this.activeModal.close(action);\r\n }\r\n\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n authTokenHeader: 'authorization',\r\n authToken: 'Bearer ' + this.userdata.token,\r\n url: environment.API_URL + 'api/Documents/UploadFiles',\r\n method: 'POST',\r\n removeAfterUpload: true,\r\n queueLimit: 100\r\n })\r\n this.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n form.append('companyid', this.userdata.companyid);\r\n form.append('refno', this.receivePayment.number);\r\n form.append('createby', this.userdata.email);\r\n form.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n form.append('dtype', 'cheque-tracking-files');\r\n };\r\n this.response = '';\r\n this.uploader.response.subscribe(res => {\r\n environment.production ? '' : console.log('res ' + res);\r\n this.response = res.data;\r\n });\r\n this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n this.uploader.onAfterAddingAll = (files: any) => {\r\n files.forEach(fileItem => {\r\n environment.production ? '' : console.log('file name: ' + fileItem.file.name);\r\n this.t_received_payment_files.push({\r\n \"id\": null,\r\n \"rpid\": this.receivePayment.rpid,\r\n \"rptid\": this.receivePayment.rptid ? this.receivePayment.rptid : '',\r\n \"file_url\": fileItem.file.name,\r\n \"active\": true,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n })\r\n });\r\n };\r\n }\r\n cancelAttachment() {\r\n this.t_received_payment_files = [];\r\n }\r\n selectedFileOnChanged(event: any) {\r\n environment.production ? '' : console.log(event.target.value);\r\n this.filename = event.target.value.split(/(\\\\|\\/)/g).pop();\r\n }\r\n uploadFile() {\r\n this.t_received_payment_files.forEach((file, index) => {\r\n if (this.t_received_payment_files.length - 1 == index) {\r\n this.t_received_payment_files = [];\r\n this.getTrackingLog();\r\n }\r\n this.uploader.queue[index].onSuccess = function (response, status, headers) {\r\n if (status == 200) {\r\n let tempRes = JSON.parse(response);\r\n environment.production ? '' : console.log('upload', status);\r\n } else {\r\n // this.toastr.Success(\"File uploaded falid\")\r\n environment.production ? '' : console.log('upload faild', status);\r\n // Swal.fire('', 'File uploaded', 'success');\r\n }\r\n };\r\n this.uploader.queue[index].upload();\r\n })\r\n }\r\n getTrackingLog() {\r\n this.initialize();\r\n this.loader.start();\r\n this.service.getReceivedChequeTracking(this.receivePayment.rpid).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.trackingLog = res;\r\n this.trackingLog.forEach(item => {\r\n item.files.forEach(element => {\r\n element.url = environment.DOC_URL + '/' + element.file_url;\r\n })\r\n })\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n saveTracking() {\r\n if (this.tracking.status == null && this.tracking.status == '') {\r\n this.toastr.Error('Please select status');\r\n return;\r\n }\r\n this.tracking.rpid = this.receivePayment.rpid;\r\n this.tracking.companyid = this.userdata.companyid;\r\n this.tracking.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.tracking.createby = this.userdata.email;\r\n this.tracking.t_received_payment_files = this.t_received_payment_files;\r\n this.loader.start();\r\n this.service.postReceivedTracking(this.tracking).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n this.tracking = res.data;\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n if (this.t_received_payment_files.length > 0) {\r\n this.uploadFile();\r\n } else {\r\n this.getTrackingLog();\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'RCTracking_Template.RCTracking_Title' | translate\r\n }}# {{receivePayment.number}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n 0\">{{t_received_payment_files.length}} file\r\n attached\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    IDNotesReasonParty NotifiedFilesStatusCreated ByCreate Date
    {{item.id}}{{item.notes}}{{item.reason}}YesNo{{file.file_url}}\r\n {{item.status}}{{item.createby}}{{item.createdate | date:userdata.postdatetimeformat}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { ReceiveserilizeditemsComponent } from '../receiveserilizeditems/receiveserilizeditems.component';\r\n\r\n@Component({\r\n selector: 'app-receivepo',\r\n templateUrl: './receivepo.component.html',\r\n styleUrls: ['./receivepo.component.scss']\r\n})\r\nexport class ReceivepoComponent implements OnInit {\r\n fullScreen = false;\r\n buttonclicked = false;\r\n @Input('poid') poid;\r\n @Input('prodid') prodid;\r\n binlocation: any;\r\n private langChangeSubscription: Subscription; \r\n poDetails: any = {\r\n lstItems: [{\r\n itemBins: [{\r\n code: ''\r\n }]\r\n }],\r\n status: '',\r\n msg: ''\r\n };\r\n keyword2 = 'Value';\r\n poStatusList: any = [];\r\n postatus: any;\r\n appname = environment.APP_NAME;\r\n userdata: any;\r\n binLocationList: any;\r\n constructor(\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private activeModal: NgbActiveModal,\r\n private toastr: NotificationService,\r\n private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: purchaseServices, private commonService: CommonServices, private modalService: NgbModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getBINLocations();\r\n this.getPOStatus();\r\n this.getPODetails();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/purchase/receiveitemsbybol/receive/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n selectBin(item) {\r\n this.binLocationList.forEach(element => {\r\n if (element.Value == item.newbin) {\r\n item.newbincode = element.Text;\r\n }\r\n })\r\n }\r\n getBINLocations() {\r\n this.commonService.getBinLocation().subscribe(res => {\r\n this.binLocationList = res;\r\n environment.production ? '' : console.log('binlocation data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading binlocation data', err);\r\n });\r\n }\r\n getPOStatus() {\r\n this.commonService.getComboEnums('postatus').subscribe(res => {\r\n this.poStatusList = res;\r\n environment.production ? '' : console.log('PO Status List', this.poStatusList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n getPODetails() {\r\n this.loader.start();\r\n this.service.getReceivePO(this.poid, this.prodid?this.prodid:'').subscribe(res => {\r\n this.loader.stop();\r\n this.poDetails = res;\r\n if (this.poDetails.lstItems.length > 0) {\r\n this.poDetails.lstItems.forEach(po => {\r\n po.newbin = null;\r\n })\r\n }\r\n environment.production ? '' : console.log(' supplier po data ', this.poDetails);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n checkReceivedTotal(item, lineitem) {\r\n var receivedcnt = 0;\r\n if (item.itemBins.length > 0) {\r\n item.itemBins.forEach(element => {\r\n receivedcnt += Number(element.receivedcnt);\r\n })\r\n }\r\n if (item.newbin && item.newbincnt) {\r\n receivedcnt += item.newbincnt;\r\n }\r\n if (receivedcnt > (item.qty - item.receivedqty)) {\r\n this.toastr.Error(\"Receive quantity shouldn't be greater than the order quantity or pending quantity\");\r\n setTimeout(() => {\r\n lineitem.receivedcnt = 0;\r\n\r\n }, 100);\r\n }\r\n\r\n if(item.newbincnt > (item.qty - item.receivedqty)) {\r\n setTimeout(() => {\r\n item.newbincnt = 0;\r\n }, 100);\r\n }\r\n \r\n }\r\n postReceivePO() {\r\n var lstItems = [];\r\n if (this.poDetails != null) {\r\n if (this.poDetails.lstItems != null && this.poDetails.lstItems != undefined) {\r\n this.poDetails.lstItems.forEach(item => {\r\n if (item.itemBins != null && item.itemBins != undefined) {\r\n var binLoc = [];\r\n item.itemBins.forEach(bin => {\r\n if (bin.receivedcnt > 0) {\r\n binLoc.push({\r\n binid: bin.binid,\r\n code: bin.code,\r\n name: bin.name,\r\n receivedcnt: bin.receivedcnt\r\n })\r\n }\r\n })\r\n if (item.newbin != undefined && item.newbin != null && item.newbincnt != undefined && item.newbincnt != null && item.newbincnt > 0) {\r\n var newBin;\r\n this.binLocationList.forEach(bin => {\r\n if (bin.Value == item.newbin) {\r\n newBin = bin;\r\n }\r\n })\r\n binLoc.push({\r\n binid: parseFloat(item.newbin),\r\n code: newBin.Value1,\r\n name: newBin.Text,\r\n receivedcnt: item.newbincnt\r\n })\r\n }\r\n if (binLoc.length == 0) {\r\n return;\r\n }\r\n item.itemBins = binLoc;\r\n lstItems.push(item);\r\n }\r\n })\r\n }\r\n }\r\n\r\n if (lstItems.length == 0) {\r\n\r\n this.toastr.Error('Please enter received qty')\r\n return;\r\n }\r\n\r\n var postObj = {\r\n \"poid\": this.poDetails.poid,\r\n \"pon\": this.poDetails.pon,\r\n \"shippingfees\": 0,\r\n \"adjustment\": 0,\r\n \"msg\": this.poDetails.msg,\r\n \"status\": this.poDetails.status,\r\n \"companyid\": this.userdata.companyid,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"lstItems\": lstItems\r\n }\r\n console.log('check received qty', lstItems);\r\n\r\n this.loader.start();\r\n this.service.postReceivePO(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n // window.location.reload();\r\n }\r\n\r\n onSortClick(event) {\r\n\r\n }\r\n\r\n selectEvent($event, item) {\r\n item.newbin = $event.Value;\r\n this.binLocationList.forEach(element => {\r\n if (element.Value == item.newbin) {\r\n item.newbincode = element.Text;\r\n }\r\n })\r\n item.newbin\r\n }\r\n\r\n serilizepo(item) {\r\n var modalRef = this.modalService.open(ReceiveserilizeditemsComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.item = item;\r\n modalRef.componentInstance.po = this.poDetails;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n this.getPODetails();\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n this.getPODetails();\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'Page_title' | translate }}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {{ 'Index_table.ILC_column' | translate }} \r\n \r\n {{ 'Index_table.Description_column' | translate }} \r\n \r\n {{ 'Index_table.Serilized_column' | translate }} \r\n \r\n {{ 'Index_table.LotTracking_column' | translate }} \r\n \r\n {{ 'Index_table.PurUOM_column' | translate }}\r\n \r\n {{ 'Index_table.OrderQty_column' | translate }} \r\n \r\n {{ 'Index_table.Cost_column' | translate }} \r\n \r\n {{ 'Index_table.Qty2beReceived_column' | translate }} \r\n \r\n {{ 'Index_table.OverageQty_column' | translate }} \r\n \r\n {{ 'Index_table.DamageQty_column' | translate }} \r\n \r\n {{ 'Index_table.Serial_column' | translate }} \r\n
    \r\n 0 && !item.isserilized\"\r\n (click)=\"item.buttonclicked = !item.buttonclicked\">\r\n \r\n {{item.ilc}}\r\n \r\n {{item.description}}\r\n \r\n No\r\n Yes \r\n \r\n {{item.lot_tracking}}\r\n \r\n {{item.uom}}\r\n \r\n {{item.qty}}\r\n \r\n\r\n \r\n \r\n {{item.qty - item.receivedqty}}\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n {{item.serial}}\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Lot Number\r\n \r\n Lot Notes\r\n \r\n Lot Expiry\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Bin\r\n \r\n Description\r\n \r\n QtyReceived\r\n
    \r\n {{loc.code}}\r\n \r\n {{loc.name}}\r\n \r\n \r\n
    \r\n \r\n \r\n \r\n {{loc.Value}} -\r\n {{loc.Text}}\r\n \r\n\r\n \r\n \r\n {{item.newbincode}}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\n\r\n@Component({\r\n selector: 'app-receiveserilizeditems',\r\n templateUrl: './receiveserilizeditems.component.html',\r\n styleUrls: ['./receiveserilizeditems.component.scss']\r\n})\r\nexport class ReceiveserilizeditemsComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('item') item;\r\n @Input('po') po;\r\n @ViewChild('Location') Location;\r\n binLocationList: any;\r\n serialno: any;\r\n locationKeyword = 'Text';\r\n serialNoList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n notes: any;\r\n binid: any = '';\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private service: purchaseServices,\r\n private inventory: InventoryServices,\r\n private commonService: CommonServices,\r\n private toastr: NotificationService,\r\n private datepipe: DatePipe) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\r\n }\r\n\r\n getBINLocations() {\r\n this.commonService.getBinLocation().subscribe(res => {\r\n this.binLocationList = res;\r\n environment.production ? '' : console.log('binlocation data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading binlocation data', err);\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.getBINLocations();\r\n }\r\n removeSrl(index) {\r\n this.serialNoList.splice(index, 1);\r\n }\r\n checkSerial(){\r\n if (!this.serialno) {\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonService.getCheckProductSerialExists(this.item.prodid, this.serialno).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res.status_code == '1') {\r\n this.toastr.Error(\"Duplicate serial# please check.\");\r\n }else{\r\n this.addSerial();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n addSerial() {\r\n if (!this.serialno) {\r\n return;\r\n }\r\n if (this.serialNoList.length == (this.item.qty - this.item.receivedqty)) {\r\n this.toastr.Error('Serials count should not be greater than qty to be receive');\r\n return;\r\n }\r\n if (this.serialNoList.length > 0) {\r\n var isExists = false;\r\n this.serialNoList.forEach(srl => {\r\n if (srl == this.serialno) {\r\n this.toastr.Error('Duplicate serial# please check');\r\n isExists = true;\r\n }\r\n })\r\n if (!isExists) {\r\n this.serialNoList.push(this.serialno);\r\n }\r\n } else {\r\n this.serialNoList.push(this.serialno);\r\n }\r\n this.serialno = null;\r\n }\r\n\r\n postSerialNumber() {\r\n if (this.serialNoList.length == 0) {\r\n Swal.fire('', 'Please enter serial#', 'warning');\r\n return;\r\n }\r\n if (this.binid == '') {\r\n Swal.fire('', 'Please select bin', 'warning');\r\n return;\r\n }\r\n var serials = [];\r\n this.serialNoList.forEach(serial => {\r\n serials.push({\r\n serialno: serial\r\n })\r\n })\r\n var postObj = {\r\n \"id\": this.item.id,\r\n \"poid\": this.po.poid,\r\n \"binid\": this.binid,\r\n \"pon\": this.po.pon,\r\n \"shippingfees\": this.po.shippingfees,\r\n \"adjustment\": this.po.adjustment,\r\n \"msg\": this.notes,\r\n \"status\": \"received\",\r\n \"companyid\": this.userdata.companyid,\r\n \"prodid\": this.item.prodid,\r\n \"ilc\": this.item.ilc,\r\n \"description\": this.item.description,\r\n \"qty\": this.item.qty,\r\n \"cost\": this.item.cost,\r\n \"pohdrid\": this.item.pohdrid,\r\n \"receivedqty\": this.serialNoList.length,\r\n \"serials\": serials,\r\n \"updateby\": this.userdata.email,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat)\r\n }\r\n this.loader.start();\r\n this.inventory.postReceiveSerilizedItems(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n environment.production ? '' : console.log('serial post item data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading serial post item data ', err);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n selectlocation(event) {\r\n this.binid = event.Value;\r\n }\r\n\r\n onFocusedlocation(event) {\r\n this.Location.clear();\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Receive Serial Item\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n ILC# {{item.ilc}}\r\n
    \r\n
    \r\n Description {{item.description}}\r\n
    \r\n
    \r\n Qty2bReceived# {{item.qty-item.receivedqty}}\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Serial No. 0\" style=\"color: red;\">  Total\r\n Serials({{serialNoList.length}})\r\n \r\n Actions\r\n
    \r\n {{srl}}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-reportgenericprint',\r\n templateUrl: './reportgenericprint.component.html',\r\n styleUrls: ['./reportgenericprint.component.scss']\r\n})\r\nexport class ReportgenericprintComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('params') params;\r\n @Input('typename') typename;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n printURL: any;\r\n constructor(private modalService: NgbModal, private datepipe: DatePipe, private router: Router, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n ngOnInit(): void {\r\n this.loader.start();\r\n setTimeout(() => {\r\n this.loader.stop();\r\n }, 2000)\r\n if (this.typename == 'customeragingsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&customerid=' + this.params.customerid + '¤cy=' + this.params.currency + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // this.printURL = environment.API_URL + 'public/downloadpdf?id=' + this.id + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&vw=' + this.typename;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'details') {\r\n this.printURL = environment.API_URL + 'reports/ledgers?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&coa=' + this.params.coa + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'bslc') {\r\n this.printURL = environment.API_URL + 'reports/bslc?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.asondate + '&period=' + this.params.period + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'bsyc') {\r\n this.printURL = environment.API_URL + 'reports/bsyc?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.asondate + '&period=' + this.params.period + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'hbalancesheet') {\r\n this.printURL = environment.API_URL + 'reports/hbalancesheet?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.fromdate + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'vbalancesheet') {\r\n this.printURL = environment.API_URL + 'reports/vbalancesheet?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.fromdate + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'pl') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'trialbalance') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'ledgers') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&coa=' + this.params.coa + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'journals') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'refno=' + this.params.refno + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'audittrails') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&module=' + this.params.module + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'deletedtransactions') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'creditusesummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'customerid=' + this.params.customerid + '&seldate=' + this.params.seldate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'invoiceshistory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'invno=' + this.params.qteno + '&customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'quoteshistory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'qteno=' + this.params.qteno + '&customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'salesbycategory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'vendoragingsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&supplierid=' + this.params.supplierid + '¤cy=' + this.params.currency + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'expensehistory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'expno=' + this.params.expno + '&supplier=' + this.params.supplier + '&expensetype=' + this.params.type + '&submittedby=' + this.params.submittedby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'expensesummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'expno=' + this.params.expno + '&supplierid=' + this.params.supplierid + '&type=' + this.params.type + '&createby=' + this.params.createby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'purchaseordersummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'supplierid=' + this.params.supplierid + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'prodreplunishment') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&supplierid=' + this.params.supplierid + '&cat=' + this.params.cat + '&van=' + this.params.van + '&minmax=' + this.params.minmax + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'prodorderhistory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&proj=' + this.params.proj + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'prodmovementhistory') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&serial=' + this.params.serial + '&proj=' + this.params.proj + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&deptid=' + this.params.deptid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'revenuebyproducts') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'landedcostaudit') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&pon=' + this.params.pon + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'salesvscostsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'stockcostreport') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.category + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'stocksummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'stockaudit') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'dept=' + this.params.dept + '&cat=' + this.params.cat + '&printcount=' + this.params.printcount + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'productspriceauditing') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'bolsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'bol=' + this.params.bol + '&po=' + this.params.po + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'serialsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&bin=' + this.params.bin + '&customer=' + this.params.customer + '&serialno=' + this.params.serialno + '&manufactuer=' + this.params.manufactuer + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'catalogsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'inventorybybin') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.cat + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'materialcosting') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'womaterialspending') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'invbalance') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'asondate=' + this.params.asondate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'invvaluebyinvoice') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'asondate=' + this.params.asondate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'sopickstatus') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'orderno=' + this.params.orderno + '&orderref=' + this.params.orderref + '&ilc=' + this.params.ilc + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'materialdj') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&trantype=' + this.params.trantype + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'salesbymonth') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.category + '&supplier=' + this.params.supplier + '&year=' + this.params.year + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'salesbyyear') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.category + '&supplier=' + this.params.supplier + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'bolcostingexport') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'assemblysalesbymonth') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'assname=' + this.params.assname + '&yr=' + this.params.yr + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'prodcostingreview') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'lotexpiry') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'inventorycountdiscrepancy') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'internaltransfers') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'notcounteditems') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'countid=' + this.params.countid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'Customer') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'dailytransactions') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'customer=' + this.params.customer + '&reference=' + this.params.reference + '&mop=' + this.params.mop + '&receivedby=' + this.params.receivedby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&ordertype=' + this.params.ordertype + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'sotransactions') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'recenttransactions') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'transactiontpsync') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&txttype=' + this.params.txttype + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'techticketlogs') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'tech=' + this.params.tech + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'ticketsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'customer=' + this.params.customer + '&proj=' + this.params.projid + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'timesheetpdf') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'unbilledtimelogs') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&customerid=' + this.params.customerid + '&projid=' + this.params.projid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'joborders') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'pon=' + this.params.orderno + '&name=' + this.params.customerid + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'jobinvoices') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'num=' + this.params.inv + '&name=' + this.params.cust + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'techhours') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'tech=' + this.params.tech + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'clockinout') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'servicecontractticketsummary') {\r\n // this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeshistory') {\r\n if (this.params.patype == undefined || this.params.patype == null) {\r\n this.params.patype = ''\r\n }\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&gender=' + this.params.gender + '&email=' + this.params.email + '&paytype=' + this.params.patype + '&etype=' + this.params.etype + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeespaysummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeespaysummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeebirthdays') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&gender=' + this.params.gender + '&email=' + this.params.email + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeworkpermits') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.tech + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeaccesscards') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.ename + '&code=' + this.params.code + '&fromdate=' + this.params.fdate + '&todate=' + this.params.edate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeconcessionpasses') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeinsurances') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeepensions') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeeappraisals') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeedisciplinarylog') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeehurricanepocs') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'employeejobapps') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'position=' + this.params.position + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'ticketsinventorycost') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&logo=' + this.userdata.logo;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'rfqreport') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + this.params.ids;\r\n // this.printURL = environment.API_URL + 'reports/RfqReportpdf?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + this.params.ids;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'receivebol') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&sid=' + this.params.sid + '&bol=' + this.params.bol + '&pon=' + this.params.pon + '&ilc=' + this.params.ilc;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'pensioninsurcontributions' || this.typename == 'epfcontributions' || this.typename == 'esiccontributions' || this.typename == 'payrollsummary') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'assesments') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&assid=' + this.params.assid + '&employeeid=' + this.params.employeeid;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n else if (this.typename == 'countdetails') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&searchtxt=' + this.params.searchtxt + '&countedby=' + this.params.countedby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'customerpayments') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext + '&customerid=' + this.params.customerid + '¤cy=' + this.params.currency + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'chequesissued') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'chequesreceived') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'customerwallethistory') {\r\n if (this.params.searchtext == undefined || this.params.searchtext == null) {\r\n this.params.searchtext = ''\r\n }\r\n if (this.params.tranntype == undefined || this.params.tranntype == null) {\r\n this.params.tranntype = ''\r\n }\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext + '&tranntype=' + this.params.tranntype + '&fromdate=' + this.params.fdate + '&todate=' + this.params.edate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else if (this.typename == 'customerwalletbalance') {\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n } else {\r\n if (this.params.id == undefined || this.params.id == null) {\r\n this.params.id = ''\r\n }\r\n if (this.params.ilc == undefined || this.params.ilc == null) {\r\n this.params.ilc = ''\r\n }\r\n if (this.params.desc == undefined || this.params.desc == null) {\r\n this.params.desc = ''\r\n }\r\n this.printURL = environment.API_URL + 'reports/' + this.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&logo=' + this.userdata.logo + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&countedby=' + this.params.countedby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate;\r\n // window.open(this.printURL, '_blank');\r\n // this.closeModal();\r\n }\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Print\r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    ","import { Component, OnInit, Input, ElementRef } from '@angular/core';\r\nimport { fromEvent,merge } from 'rxjs';\r\nimport { filter, take, startWith,map } from 'rxjs/operators';\r\nexport enum TypeDrag {\r\n Move,\r\n Top,\r\n Bottom,\r\n Left,\r\n Right,\r\n TopRight,\r\n BottomRight,\r\n TopLeft,\r\n BottomLeft\r\n}\r\n\r\n@Component({\r\n selector: 'resize-border',\r\n templateUrl: './resize-border.component.html',\r\n styleUrls: ['./resize-border.component.scss']\r\n})\r\nexport class ResizeBorderComponent implements OnInit {\r\n rect: any;\r\n incr: number[] = [0, 0, 0, 0];\r\n nativeElement: any;\r\n typeDrag: TypeDrag;\r\n origin: any;\r\n onDrag: boolean = false;\r\n moveSubscription: any;\r\n modalContent: any;\r\n\r\n classNames = [\r\n 'cell-top',\r\n 'cell-border-top',\r\n 'cell-border-bottom',\r\n 'cell-border-left',\r\n 'cell-border-right',\r\n 'cell-top-right',\r\n 'cell-bottom-right',\r\n 'cell-top-left',\r\n 'cell-bottom-left'\r\n ];\r\n\r\n style: any = null;\r\n constructor(private elementRef: ElementRef) {}\r\n\r\n @Input() set dragHolder(value:any) {\r\n value.classList.add('cell-top');\r\n }\r\n\r\n ngOnInit(): void {\r\n setTimeout(()=> {\r\n this.modalContent = this.findModalContent(this.elementRef.nativeElement);\r\n },1000)\r\n merge(\r\n fromEvent(this.elementRef.nativeElement, 'mousedown'),\r\n fromEvent(this.elementRef.nativeElement, 'touchstart').pipe(map((event:TouchEvent)=>({\r\n target:event.target,\r\n screenX:event.touches[0].screenX,\r\n screenY:event.touches[0].screenY\r\n }))\r\n ))\r\n .pipe(\r\n filter((event: MouseEvent) => {\r\n const classs = (event.target as any).className;\r\n if (classs && typeof classs === 'string') {\r\n const className = classs.split(' ');\r\n return className.indexOf('cell-top') >= 0\r\n ? true\r\n : this.classNames.indexOf(classs) >= 0;\r\n }\r\n return false;\r\n })\r\n )\r\n .subscribe((event: MouseEvent) => {\r\n this.rect = this.modalContent.getBoundingClientRect();\r\n console.log(typeof(event))\r\n this.origin = { x: event.screenX, y: event.screenY };\r\n\r\n this.onDrag = true;\r\n const className = (event.target as any).className.split(' ');\r\n this.typeDrag =\r\n className.indexOf('cell-top') >= 0\r\n ? TypeDrag.Move\r\n : (this.classNames.indexOf(className[0]) as TypeDrag);\r\n\r\n this.incr =\r\n this.typeDrag == TypeDrag.Move\r\n ? [1, 0, 1, 0]\r\n : this.typeDrag == TypeDrag.Top\r\n ? [1, -1, 0, 0]\r\n : this.typeDrag == TypeDrag.Bottom\r\n ? [0, 1, 0, 0]\r\n : this.typeDrag == TypeDrag.Right\r\n ? [0, 0, 0, 1]\r\n : this.typeDrag == TypeDrag.Left\r\n ? [0, 0, 1, -1]\r\n : this.typeDrag == TypeDrag.TopRight\r\n ? [1, -1, 0, 1]\r\n : this.typeDrag == TypeDrag.TopLeft\r\n ? [1, -1, 1, -1]\r\n : this.typeDrag == TypeDrag.BottomRight\r\n ? [0, 1, 0, 1]\r\n : [0, 1, 1, -1];\r\n\r\n this.onDrag = true;\r\n\r\n merge(fromEvent(document, 'mouseup'),\r\n fromEvent(document,'touchend')\r\n )\r\n .pipe(take(1))\r\n .subscribe(() => {\r\n if (this.moveSubscription) {\r\n this.moveSubscription.unsubscribe();\r\n this.moveSubscription = undefined;\r\n this.onDrag = false;\r\n }\r\n });\r\n\r\n if (!this.moveSubscription) {\r\n this.moveSubscription = merge(\r\n fromEvent(document, 'mousemove'),\r\n fromEvent(document, 'touchmove').pipe(map((event:TouchEvent)=>({\r\n target:event.target,\r\n screenX:event.touches[0].screenX,\r\n screenY:event.touches[0].screenY\r\n }))\r\n ))\r\n .pipe(startWith({ screenY: this.origin.y, screenX: this.origin.x }))\r\n .subscribe((moveEvent: MouseEvent) => {\r\n const incrTop = moveEvent.screenY - this.origin.y;\r\n const incrLeft = moveEvent.screenX - this.origin.x;\r\n const width = this.rect.width + this.incr[3] * incrLeft;\r\n const heigth = this.rect.height + this.incr[1] * incrTop;\r\n this.modalContent.style['max-width'] =\r\n (width < 50 ? 50 : width) + 'px';\r\n this.modalContent.style['margin-top'] =\r\n this.rect.top + this.incr[0] * incrTop + 'px';\r\n this.modalContent.style['margin-left'] =\r\n this.rect.left + this.incr[2] * incrLeft + 'px';\r\n this.style = {\r\n width: (width < 50 ? 50 : width - 1) + 'px',\r\n height: (heigth < 75 ? 75 : heigth - 1) + 'px'\r\n };\r\n });\r\n }\r\n });\r\n }\r\n\r\n findModalContent(element: HTMLElement) {\r\n return element.className == 'modal-dialog modal-xl' || element.className == 'modal-dialog modal-lg' || element.className == 'modal-dialog modal-md' || element.className == 'modal-dialog modal-sm' || element.className == 'modal-dialog'\r\n ? element\r\n : element.parentElement\r\n ? this.findModalContent(element.parentElement)\r\n : null;\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { NgModule } from \"@angular/core\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { ResizeBorderComponent } from \"./resize-border.component\";\r\n\r\n@NgModule({\r\n declarations: [ResizeBorderComponent],\r\n imports: [CommonModule],\r\n exports: [ResizeBorderComponent]\r\n})\r\nexport class ResizeModule {}","import { DatePipe } from '@angular/common';\r\nimport { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NavService } from 'src/app/shared/service/nav.service';\r\nimport { projectCategoryDB } from 'src/app/shared/tables/project-category-db';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport * as moment from 'moment';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\n\r\n@Component({\r\n\tselector: 'app-reviewtransactions',\r\n\ttemplateUrl: './reviewtransactions.component.html',\r\n\tstyleUrls: ['./reviewtransactions.component.scss']\r\n})\r\nexport class ReviewtransactionsComponent implements OnInit {\r\n\tfullScreen = false;\r\n\t@Input('batchid') batchid;\r\n\t@Input('fromdate') fromdate;\r\n\t@Input('todate') todate;\r\n\t@Input('txntype') txntype;\r\n\t@ViewChild('reviewTransTable') reviewTransTable: any;\r\n\tpublic isCollapsed = true;\r\n\t//#region userdata block\r\n\tappname = environment.APP_NAME;\r\n\tuserdata: any;\r\n\tcompanyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n\tformat: any;\r\n\ttotalRows: any;\r\n\t//#endregion userdata block\r\n\r\n\tTransactionType: any;\r\n\r\n\treview: any = {\r\n\t\tfromdate: '',\r\n\t\ttodate: '',\r\n\t\tnarr: '',\r\n\t\ttxtype: ''\r\n\t}\r\n\tpublic isShow: boolean = false\r\n\r\n\tdropdowntoggle() {\r\n\t\tthis.isShow = !this.isShow;\r\n\t}\r\n\tpublic arrowicon: boolean = true;\r\n\tclickEvent() {\r\n\t\tthis.arrowicon = !this.arrowicon;\r\n\t}\r\n\tpublic projectData = [];\r\n\r\n\treviewTransData: any;\r\n\r\n\t//#region Ng multiselect dropdown\r\n\ttxtTypeSetting: IDropdownSettings;\r\n\ttxtypeList: any = [];\r\n\tselectedtxType = [];\r\n\r\n\tstatusSetting: IDropdownSettings;\r\n\tstatusList: any = [];\r\n\tselectedstatus = [];\r\n\tselectedtype = [];\r\n\tstringData = '';\r\n\t//#endregion Ng multiselect dropdown\r\n\r\n\tselectedRows: any;\r\n\tconstructor(\r\n\t\tprivate service: accountServices,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\r\n\t) {\r\n\t\t//#region userdata block\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tthis.settings.pager.perPage = Number(this.userdata.grid_page_size ? this.userdata.grid_page_size : 15);\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\t//#endregion userdata block\r\n\r\n\t\tthis.review.fromdate = this.userdata.fromdate;\r\n\t\tthis.review.todate = this.datepipe.transform(new Date(), 'yyyy-MM-dd')\r\n\t\tenvironment.production ? '' : console.log('from date', this.review.fromdate);\r\n\t\tenvironment.production ? '' : console.log('end date', this.review.todate);\r\n\r\n\t\tthis.projectData = projectCategoryDB.projectDB;\r\n\r\n\t\tthis.commonService.getComboEnums('paymenttrantype').subscribe(res => {\r\n\t\t\tthis.txtypeList = res;\r\n\t\t\tenvironment.production ? '' : console.log('Trans Type list ', this.txtypeList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Trans Type List ', err);\r\n\t\t});\r\n\r\n\t\tthis.commonService.getComboEnums('journaltype').subscribe(res => {\r\n\t\t\tthis.TransactionType = res;\r\n\t\t\t// this.selectedstatus = this.statusList;\r\n\t\t\tenvironment.production ? '' : console.log('Status list ', this.statusList);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Status List ', err);\r\n\t\t});\r\n\t}\r\n\r\n\tpublic settings = {\r\n\t\tselectMode: 'multi',\r\n\t\tpager: {\r\n\t\t\tdisplay: true,\r\n\t\t\tperPage: 0\r\n\t\t},\r\n\t\thideSubHeader: false,\r\n\t\tperPage: 25,\r\n\t\tactions: false,\r\n\t\tcolumns: {\r\n\t\t\t// customColumn: {\r\n\t\t\t// \ttitle: 'Actions',\r\n\t\t\t// \ttype: 'custom',\r\n\t\t\t// \tfilter: false,\r\n\t\t\t// \trenderComponent: ReviewTransactionsActionColumn,\r\n\t\t\t// \tonComponentInitFunction(instance) {\r\n\t\t\t// \t\t//do stuff with component\r\n\t\t\t// \t\tinstance.id = 1;\r\n\t\t\t// \t\tinstance.click.subscribe(row => {\r\n\t\t\t// \t\t\tconsole.debug('row', row, this.someMethod());\r\n\t\t\t// \t\t});\r\n\t\t\t// \t\t// instance.subscribe(data => environment.production ? '' : console.log(data))\r\n\t\t\t// \t},\r\n\t\t\t// \tvaluePrepareFunction: (cell, row) => {\r\n\t\t\t// \t\treturn row.columnName;\r\n\t\t\t// \t},\r\n\t\t\t// },\r\n\t\t\ttransactiondate: {\r\n\t\t\t\ttitle: 'Txn Date',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t\twidth: '100px',\r\n\t\t\t},\r\n\t\t\tcustomer: {\r\n\t\t\t\ttitle: 'Party'\r\n\t\t\t},\r\n\t\t\tnum: {\r\n\t\t\t\ttitle: 'RefNo ',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t},\r\n\t\t\tcurrency: {\r\n\t\t\t\ttitle: 'Cur.',\r\n\t\t\t},\r\n\t\t\tamt: {\r\n\t\t\t\ttitle: 'Amount',\r\n\t\t\t},\r\n\t\t\ttxntype: {\r\n\t\t\t\ttitle: 'Txn Type',\r\n\t\t\t},\r\n\t\t\tMemo: {\r\n\t\t\t\ttitle: 'Memo',\r\n\t\t\t},\r\n\t\t\tNarration: {\r\n\t\t\t\ttitle: 'Narration',\r\n\t\t\t}\r\n\t\t},\r\n\t};\r\n\tonUserRowSelect(event) {\r\n\t\tthis.selectedRows = event.selected;\r\n\t\tif (this.selectedRows.length == this.reviewTransData.length) {\r\n\t\t\tthis.reviewTransTable.isAllSelected = true;\r\n\t\t} else {\r\n\t\t\tthis.reviewTransTable.isAllSelected = false;\r\n\t\t}\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tthis.review.fromdate = this.fromdate;\r\n\t\tthis.review.todate = this.todate;\r\n\t\t//#region Grid Settings\r\n\t\tif (this.userdata.grid_inline_filter === false) {\r\n\t\t\tthis.settings.hideSubHeader = true;\r\n\t\t\tenvironment.production ? '' : console.log('settings.hideSubHeader :', this.settings.hideSubHeader);\r\n\t\t} else {\r\n\t\t\tthis.settings.hideSubHeader = false;\r\n\t\t\tenvironment.production ? '' : console.log('settings.hideSubHeader :', this.settings.hideSubHeader);\r\n\t\t}\r\n\t\tthis.settings.perPage = this.userdata.grid_page_size;\r\n\t\tenvironment.production ? '' : console.log('settings.perPage :', this.settings.perPage);\r\n\t\tvar editDataForHeader = '';\r\n\t\tthis.commonService.headerEditItemData.next(editDataForHeader); //end '\r\n\t\t//#region Grid Settings\r\n\r\n\t\t//#region NgAutocomplete\r\n\t\tthis.txtTypeSetting = {\r\n\t\t\tsingleSelection: false,\r\n\t\t\tidField: 'stringValue',\r\n\t\t\ttextField: 'Text',\r\n\t\t\tselectAllText: 'Select All',\r\n\t\t\tunSelectAllText: 'UnSelect All',\r\n\t\t\titemsShowLimit: 2,\r\n\t\t\tallowSearchFilter: true\r\n\t\t}\r\n\r\n\t\tthis.statusSetting = {\r\n\t\t\tsingleSelection: false,\r\n\t\t\tidField: 'stringValue',\r\n\t\t\ttextField: 'Text',\r\n\t\t\tselectAllText: 'Select All',\r\n\t\t\tunSelectAllText: 'UnSelect All',\r\n\t\t\titemsShowLimit: 2,\r\n\t\t\tallowSearchFilter: true\r\n\t\t}\r\n\t\t//#endregion\r\n\r\n\t\tthis.getReviewTransactions();\r\n\t\t// this.getTransactiontypes();\r\n\t}\r\n\r\n\r\n\tgetTransactiontypes() {\r\n\t\tthis.service.getTrasanctionTypes().subscribe(data => {\r\n\t\t\tthis.TransactionType = data;\r\n\t\t\tenvironment.production ? '' : console.log('Transaction Type', this.TransactionType);\r\n\t\t})\r\n\t}\r\n\r\n\t//#region NgAutocomplete TxType\r\n\tonItemSelectTxType(item: any) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedtxType.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t\tenvironment.production ? '' : console.log(arrayData);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.txtype = this.stringData;\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\tonSelectAllTxType(items: any) {\r\n\t\tlet arrayData = [];\r\n\t\titems.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.txtype = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Selected All: ', this.review.txtype);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\tonItemDeSelectTxType($event) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedtxType.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.txtype = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Item DeSelect :', this.review.txtype);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\tonDeSelectAllTxType(items: any) {\r\n\t\tthis.review.txtype = '';\r\n\t\tenvironment.production ? '' : console.log('Deselected All: ', this.review.txtype);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\t//#endregion\r\n\r\n\t//#region NgAutocomplete Status\r\n\tonItemSelectStatus(item: any) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedstatus.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t\tenvironment.production ? '' : console.log(arrayData);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.status = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Item Selected: ', this.review.status);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\tonItemSelectType(item: any) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedtype.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t\tenvironment.production ? '' : console.log(arrayData);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.txtype = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Item Selected: ', this.review.txtype);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\r\n\tonSelectAllStatus(items: any) {\r\n\t\tlet arrayData = [];\r\n\t\titems.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.status = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Selected All: ', this.review.status);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\tonItemDeSelectStatus($event) {\r\n\t\tlet arrayData = [];\r\n\t\tthis.selectedstatus.forEach(data => {\r\n\t\t\tarrayData.push('' + data.stringValue);\r\n\t\t})\r\n\t\tarrayData = arrayData.filter((c, index) => {\r\n\t\t\treturn arrayData.indexOf(c) === index;\r\n\t\t});\r\n\t\tthis.stringData = arrayData.toString();\r\n\t\tthis.review.status = this.stringData;\r\n\t\tenvironment.production ? '' : console.log('Item DeSelect :', this.review.status);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\r\n\tonDeSelectAllStatus(items: any) {\r\n\t\tthis.review.status = '';\r\n\t\tenvironment.production ? '' : console.log('Deselected All: ', this.review.status);\r\n\t\tthis.getReviewTransactions();\r\n\t}\r\n\t//#endregion\r\n\tconvertToDate(dateString: string): Date {\r\n\t\tconst timestamp = Date.parse(dateString);\r\n\t\tif (!isNaN(timestamp)) {\r\n\t\t\treturn new Date(timestamp);\r\n\t\t} else {\r\n\t\t\tthrow new Error('Invalid date format');\r\n\t\t}\r\n\t}\r\n\tgetReviewTransactions() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getReviewTrans(this.datepipe.transform(new Date(this.review.fromdate), this.userdata.postdateformat), this.datepipe.transform(new Date(this.review.todate), this.userdata.postdateformat), this.review.txtype, this.review.narr).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.reviewTransData = res;\r\n\t\t\tthis.reviewTransData.forEach(element => {\r\n\t\t\t\tconst dateObject = this.convertToDate(element.txndate);\r\n\t\t\t\telement.transactiondate = this.datepipe.transform(new Date(dateObject), this.format);\r\n\t\t\t\tif (element.amt != null && element.amt != 0) {\r\n\t\t\t\t\telement.amt = element.amt.toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\telement.amt = parseFloat(\"0\").toFixed(this.userdata.decimals_allowed);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//#region Get total rows\r\n\t\t\tthis.totalRows = this.reviewTransData != null ? this.reviewTransData.length : null;\r\n\t\t\tenvironment.production ? '' : console.log('Total Rows', this.totalRows);\r\n\t\t\t//#region Get total rows\r\n\r\n\t\t\tenvironment.production ? '' : console.log('Review Transaction Data ', this.reviewTransData);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Review Transaction Data ', err);\r\n\t\t});\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\tpostTransaction() {\r\n\t\tvar tranids = [];\r\n\t\tif (this.selectedRows.length > 0) {\r\n\t\t\tthis.selectedRows.forEach(item => {\r\n\t\t\t\ttranids.push({\r\n\t\t\t\t\t\"id\": null,\r\n\t\t\t\t\t\"batchid\": this.batchid,\r\n\t\t\t\t\t\"txndate\": this.datepipe.transform(new Date(item.txndate), this.userdata.postdatetimeformat),\r\n\t\t\t\t\t\"refid\": item.id,\r\n\t\t\t\t\t\"refno\": item.num,\r\n\t\t\t\t\t\"party\": item.customer,\r\n\t\t\t\t\t\"currency\": item.currency,\r\n\t\t\t\t\t\"roe\": item.roe,\r\n\t\t\t\t\t\"amt\": item.amt,\r\n\t\t\t\t\t\"trantype\": item.txntype,\r\n\t\t\t\t\t\"narration\": item.memo,\r\n\t\t\t\t\t\"status\": item.status\r\n\t\t\t\t})\r\n\t\t\t})\r\n\t\t}\r\n\t\tif (tranids.length == 0) {\r\n\t\t\tSwal.fire('', 'Please select transaction', 'error');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar postObj = {\r\n\t\t\t\"id\": this.batchid,\r\n\t\t\t\"companyid\": this.userdata.companyid,\r\n\t\t\t\"updateby\": this.userdata.email,\r\n\t\t\t\"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\"batchEntries\": tranids\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postBatchTransactions(postObj).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.getReviewTransactions();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading complete signup data ', err);\r\n\t\t});\r\n\t}\r\n\r\n}\r\n\r\n\r\n@Component({\r\n\tselector: 'll-button-comp',\r\n\ttemplate: ` \r\n\t
    \r\n\t\r\n\t\t\r\n\t
    \r\n\t`\r\n})\r\n\r\nexport class ReviewTransactionsActionColumn implements OnInit {\r\n\t@Input() rowData: any;\r\n\t@Output() click: EventEmitter = new EventEmitter(null);\r\n\trenderValue: string;\r\n\tmenuData: any;\r\n\tmenuActions: any;\r\n\r\n\tconstructor(private navservice: NavService, private toastr: ToastrService, private commonService: CommonServices, private loader: NgxUiLoaderService, private maincomponent: ReviewtransactionsComponent, private datepipe: DatePipe) {\r\n\t\tthis.menuData = JSON.parse(localStorage.getItem('EzyBooks-menu'));\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.menuData.forEach(data => {\r\n\t\t\t\tif (data.title.toLowerCase() == 'accounts') {\r\n\t\t\t\t\tvar module = data;\r\n\r\n\t\t\t\t\tmodule.children.forEach(data => {\r\n\t\t\t\t\t\tif (data.title.toLowerCase() == 'review transactions') {\r\n\t\t\t\t\t\t\tthis.menuActions = data.menuActions;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\tenvironment.production ? '' : console.log(this.menuActions)\r\n\t\t}, 1000);\r\n\t}\r\n\tngOnInit() {\r\n\t\tthis.renderValue = this.rowData.id;\r\n\t}\r\n\r\n\tclicked(actionname) {\r\n\t\tif (actionname.toLowerCase() == 'post transaction') {\r\n\t\t\t// this.postTransaction(this.rowData.id);\r\n\t\t}\r\n\t}\r\n\r\n}","\r\n
    \r\n
    \r\n
    Pending Transactions\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\nimport { InventoryServices } from '../../inventory/inventory.service';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\n\r\n@Component({\r\n\tselector: 'app-salesrequest',\r\n\ttemplateUrl: './salesrequest.component.html',\r\n\tstyleUrls: ['./salesrequest.component.scss']\r\n})\r\nexport class SalesrequestComponent implements OnInit {\r\n\tfullScreen = false;\r\n\tcompanyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n\tformat: any;\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\tsalesRequest: any = {\r\n\t\tstatus: '',\r\n\t\tsearchtxt: '',\r\n\t\tfromdate: '',\r\n\t\ttodate: '',\r\n\t\ttype: ''\r\n\t}\r\n\tselectedSalesReqstatus: any = []\r\n\tsalesRequestOrders: any = [];\r\n\tinternalBinList: any = [];\r\n\ttotalPages: any = 0;\r\n\tcurrentPage: any = 1;\r\n\thideRightNav: boolean = true;\r\n\thideLeftNav: boolean = false;\r\n\ttotalRows: any = 0;\r\n\tconstructor(private activeModal: NgbActiveModal,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: SalesServices,\r\n\t\tprivate inventoryService: InventoryServices,\r\n\t\tprivate commonService: CommonServices,\r\n\t\tprivate datepipe: DatePipe,) {\r\n\t\t//#region userdata block\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\t//#endregion userdata block\r\n\r\n\t\tthis.salesRequest.todate = this.userdata.enddate;\r\n\t\tthis.salesRequest.fromdate = this.userdata.fromdate;\r\n\t\tenvironment.production ? '' : console.log('from date', this.salesRequest.fromdate);\r\n\t\tenvironment.production ? '' : console.log('end date', this.salesRequest.todate);\r\n\t\t// this.requestby = this.userdata.email\r\n\r\n\t\tthis.getSalesRequests();\r\n\t}\r\n\r\n\tgetSalesRequests() {\r\n\t\tthis.loader.start();\r\n\t\tvar editDataForHeader = '';\r\n\t\tthis.commonService.headerEditItemData.next(editDataForHeader); //end '\r\n\t\tthis.service.getSalesRequest(this.currentPage, this.salesRequest.type, this.salesRequest.status, this.datepipe.transform(this.salesRequest.fromdate, this.userdata.postdateformat), this.datepipe.transform(this.salesRequest.todate, this.userdata.postdateformat), this.salesRequest.searchtxt).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tthis.salesRequestOrders = res.data;\r\n\t\t\t\tthis.totalPages = res.total_pages;\r\n\t\t\t}\r\n\t\t\tthis.salesRequestOrders.forEach(item => {\r\n\t\t\t\titem.ischecked = false;\r\n\t\t\t})\r\n\t\t\tthis.totalRows = this.salesRequestOrders.length;\r\n\t\t\tenvironment.production ? '' : console.log('salesOrders list data ', res);\r\n\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading product list ', err);\r\n\t\t});\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t}\r\n\r\n\thideNavButtons(isright, isleft) {\r\n\t\tthis.hideRightNav = isright;\r\n\t\tthis.hideLeftNav = isleft;\r\n\t}\r\n\tgotoPage(page) {\r\n\t\t// this.hideNav = true\r\n\t\tif (page == 'first') {\r\n\t\t\tthis.currentPage = 1;\r\n\t\t\tthis.hideNavButtons(true, false);\r\n\t\t} else if (page == 'prev') {\r\n\t\t\tif (this.currentPage == '2') {\r\n\t\t\t\tthis.currentPage = 1;\r\n\t\t\t\tthis.hideNavButtons(true, false);\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentPage--;\r\n\t\t\t\tthis.hideNavButtons(false, false);\r\n\t\t\t}\r\n\t\t} else if (page == 'next') {\r\n\t\t\tif (this.currentPage == this.totalPages - 1) {\r\n\t\t\t\tthis.currentPage = this.totalPages;\r\n\t\t\t\tthis.hideNavButtons(false, true);\r\n\t\t\t} else {\r\n\t\t\t\tthis.currentPage++;\r\n\t\t\t\tthis.hideNavButtons(false, false);\r\n\t\t\t}\r\n\r\n\t\t} else if (page == 'last') {\r\n\t\t\tthis.currentPage = this.totalPages;\r\n\t\t\tthis.hideRightNav = false\r\n\t\t\tthis.hideLeftNav = true\r\n\t\t}\r\n\t\tthis.getSalesRequests();\r\n\t}\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Sales Requests\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Req# OrderRef Order# Orderref Extra# Request Date Date Expected RequestBy Requested For Custome Origi Priorit Status Create Date Createby
    \r\n {{n.req_no}} {{n.orderref}} {{n.orderno}} {{n.orderref_extra}} {{n.requestdate | date:'yyy-MM-dd'}} {{n.duedate | date:'yyy-MM-dd'}}{{n.requestby}}{{n.requested_for}}{{n.customer}}{{n.origin}}{{n.priority}}{{n.status}}{{n.createdate | date:'yyy-MM-dd hh:mm a'}}{{n.createby}}
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n \r\n \r\n
    \r\n {{currentPage}} of {{totalPages}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'app-serialsmodal',\r\n templateUrl: './serialsmodal.component.html',\r\n styleUrls: ['./serialsmodal.component.scss']\r\n})\r\nexport class SerialsmodalComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('serials') serials;\r\n @Input('selectedSerial') selectedSerial;\r\n searchTxt: any;\r\n serialList: any = [];\r\n filteredSerials: any = [];\r\n isSaved = false;\r\n constructor(private activemodal: NgbActiveModal) { }\r\n\r\n ngOnInit(): void {\r\n var selectedSrls = this.selectedSerial != '' ? this.selectedSerial.split(',') : [];\r\n var srls = this.serials.split(',');\r\n this.serialList = [];\r\n srls.forEach(item => {\r\n var isFound = false;\r\n selectedSrls.forEach(srlno => {\r\n if (item == srlno) {\r\n isFound = true;\r\n }\r\n })\r\n this.serialList.push({\r\n checked: isFound,\r\n srno: item\r\n })\r\n })\r\n this.filteredSerials = this.serialList;\r\n }\r\n onSearch() {\r\n if (this.searchTxt == undefined) {\r\n return;\r\n }\r\n this.filteredSerials = this.serialList.filter(item => item.srno.toLowerCase().includes(this.searchTxt.toLowerCase()));\r\n }\r\n closeModal() {\r\n var srls;\r\n this.filteredSerials.forEach(item => {\r\n if (item.checked) {\r\n if (srls == undefined) {\r\n srls = item.srno;\r\n } else {\r\n srls = srls + ',' + item.srno;\r\n }\r\n }\r\n })\r\n var finalSrls = this.isSaved ? srls : ''\r\n this.activemodal.close(finalSrls);\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Choose Serial
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Serials
    \r\n
    \r\n {{item.srno}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-shippingport',\r\n templateUrl: './shippingport.component.html',\r\n styleUrls: ['./shippingport.component.scss']\r\n})\r\nexport class ShippingportComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('shippingport') shippingport;\r\n @Input('dischargeport') dischargeport;\r\n\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n // printURL: any;\r\n itemList: any;\r\n modalTitle: any;\r\n master: any = {\r\n id: null,\r\n code: '',\r\n name: '',\r\n seaport: '',\r\n airport: '',\r\n country: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n updatedate: null,\r\n active: true\r\n }\r\n showtitle: boolean;\r\n countryList:any = [];\r\n private langChangeSubscription: Subscription; \r\n constructor(private cdRef: ChangeDetectorRef, \r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n private toastr: NotificationService,\r\n private commonService: CommonServices,\r\n private activeModal: NgbActiveModal, \r\n private loader: NgxUiLoaderService, \r\n private datepipe: DatePipe, \r\n private service: CommonServices,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getCountries();\r\n }\r\n\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n getCountries() {\r\n\t\tthis.commonService.getCountries().subscribe(res => {\r\n\t\t\tthis.countryList = res;\r\n\t\t\tenvironment.production ? '' : console.log('country list data ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading country list data', err);\r\n\t\t});\r\n\t}\r\n ngOnInit(): void {\r\n if (this.shippingport == 'shippingport') {\r\n this.modalTitle = 'Shipping Port';\r\n this.getShippingPortIndexValues();\r\n }\r\n else if (this.dischargeport == 'dischargeport') {\r\n this.modalTitle = 'Discharge Port';\r\n this.getShippingPortIndexValues();\r\n }\r\n // console.log('log for title', this.term);\r\n\r\n this.showtitle = true;\r\n this.cdRef.detectChanges();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/purchase/customsdeclaration/basic/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n\r\n\r\n\r\n\r\n\r\n initializeValues() {\r\n this.master = {\r\n id: null,\r\n code: '',\r\n name: '',\r\n seaport: '',\r\n airport: '',\r\n country: '',\r\n createby: null,\r\n createdate: null,\r\n updateby: null,\r\n active: true\r\n };\r\n }\r\n editMasterData(item) {\r\n this.master = item;\r\n }\r\n deleteMasterData(item) {\r\n if (this.shippingport == 'shippingport') {\r\n this.deleteShippingPort(item);\r\n }\r\n else if (this.dischargeport == 'dischargeport') {\r\n this.deleteShippingPort(item);\r\n }\r\n }\r\n validatePostValues() {\r\n if (this.master.name == undefined || this.master.name == '') {\r\n Swal.fire('', 'Please enter description', 'warning');\r\n return;\r\n }\r\n if (this.master.id == undefined || this.master.id == null) {\r\n this.master.companyid = this.userdata.companyid;\r\n this.master.createby = this.userdata.email;\r\n this.master.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.master.updateby = this.userdata.email;\r\n this.master.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n if (this.shippingport == 'shippingport') {\r\n this.postShippingPort();\r\n }\r\n else if (this.dischargeport == 'dischargeport') {\r\n this.postShippingPort();\r\n }\r\n }\r\n\r\n // ***** shipping port begin ***********\r\n getShippingPortIndexValues() {\r\n this.itemList = [];\r\n this.loader.start();\r\n this.service.getShippingPortIndex().subscribe(res => {\r\n this.loader.stop();\r\n this.itemList = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n postShippingPort() {\r\n this.loader.start();\r\n this.service.postShippingPort(this.master).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.itemList=res.data;\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while post service call');\r\n })\r\n }\r\n deleteShippingPort(master) {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.service.deleteShippingPort(master.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeValues();\r\n this.getShippingPortIndexValues();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n this.toastr.Error('Error occurred while delete shipping port');\r\n })\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n // ***** shipping port end ***********\r\n\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    {{modalTitle}}

    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Modal_Table.ID_Column' | translate }}{{ 'Modal_Table.Code_Column' | translate }}{{ 'Modal_Table.Name_Column' | translate }}{{ 'Modal_Table.Seaport_Column' | translate }}{{ 'Modal_Table.Airport_Column' | translate }}{{ 'Modal_Table.Country_Column' | translate }}{{ 'Modal_Table.Action_Column' | translate }}
    {{item.id}}{{item.code}}{{item.name}}{{item.seaport}}{{item.airport}}{{item.country}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { element } from 'screenfull';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\n\r\n@Component({\r\n selector: 'app-shortshipmentpo',\r\n templateUrl: './shortshipmentpo.component.html',\r\n styleUrls: ['./shortshipmentpo.component.scss']\r\n})\r\nexport class ShortshipmentpoComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('poid') poid;\r\n @Input('pon') pon;\r\n poItems: any = [];\r\n qtyOnOrderTotal = 0;\r\n shippedQtyTotal = 0;\r\n receivedQtyTotal = 0;\r\n shortQtyTotal = 0;\r\n poDetails: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n constructor(private activeModal: NgbActiveModal,\r\n private toaster: NotificationService,\r\n private loader: NgxUiLoaderService, private datepipe: DatePipe, private toastr: NotificationService, private service: purchaseServices, private modalService: NgbModal) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.getPOItems();\r\n }\r\n getPOItems() {\r\n this.loader.start();\r\n this.service.getShortPOItems(this.poid).subscribe(res => {\r\n this.loader.stop();\r\n this.poItems = res;\r\n this.qtyOnOrderTotal = 0;\r\n this.shippedQtyTotal = 0;\r\n this.receivedQtyTotal = 0;\r\n this.shortQtyTotal = 0;\r\n if (this.poItems != null) {\r\n this.poItems.forEach(item => {\r\n item.shortqty = ((item.qty ? Number(item.qty) : 0) - (item.qty ? Number(item.receivedqty) : 0));\r\n this.qtyOnOrderTotal += item.qty;\r\n this.shippedQtyTotal += item.shippedqty;\r\n this.receivedQtyTotal += item.receivedqty;\r\n this.shortQtyTotal += item.shortqty;\r\n })\r\n }\r\n environment.production ? '' : console.log(' supplier po data ', this.poItems);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n postShortPO() {\r\n var itemsLists = [];\r\n if (this.poItems != null && this.poItems != undefined) {\r\n this.poItems.forEach(item => {\r\n if (item.shortqty > 0) {\r\n itemsLists.push({\r\n \"poeid\": item.poeid,\r\n \"ilc\": item.ilc,\r\n \"description\": item.description,\r\n \"qty\": item.qty,\r\n \"shippedqty\": item.shippedqty,\r\n \"receivedqty\": item.receivedqty,\r\n \"shortqty\": item.shortqty\r\n })\r\n }\r\n })\r\n }\r\n if (itemsLists.length == 0) {\r\n this.toaster.Error('Please enter short qty')\r\n return;\r\n }\r\n\r\n var postObj = {\r\n \"companyid\": this.userdata.companyid,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"pon\": this.pon,\r\n \"itemsLists\": itemsLists\r\n }\r\n this.loader.start();\r\n this.service.postPOShortItems(postObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading po data ', err);\r\n });\r\n }\r\n calculateItemTotal(item) {\r\n this.shortQtyTotal = 0;\r\n item.shortqty = item.shortqty ? item.shortqty : 0;\r\n var qt2berecv = ((item.qty ? item.qty : 0) - (item.receivedqty ? item.receivedqty : 0));\r\n if (item.shortqty > qt2berecv) {\r\n item.shortqty = (item.qty ? item.qty : 0) - (item.receivedqty ? item.receivedqty : 0)\r\n }\r\n this.poItems.forEach(item => {\r\n if (item.shortqty != null && item.shortqty != '' && item.shortqty > 0) {\r\n this.shortQtyTotal += item.shortqty;\r\n }\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n onSortClick(event) {\r\n\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Purchase Order-Short Shipment\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n ILC \r\n \r\n Description \r\n \r\n QtyOnOrder \r\n \r\n ShippedQty \r\n \r\n ReceivedQty \r\n \r\n ShortQty \r\n
    \r\n {{item.ilc}}\r\n \r\n {{item.description}}\r\n \r\n {{item.qty}}\r\n \r\n {{item.shippedqty}}\r\n \r\n {{item.receivedqty}}\r\n \r\n \r\n
    \r\n Totals\r\n \r\n {{qtyOnOrderTotal}}\r\n \r\n {{shippedQtyTotal}}\r\n \r\n {{receivedQtyTotal}}\r\n \r\n {{shortQtyTotal}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\n\r\n@Component({\r\n selector: 'app-singlebillpayment',\r\n templateUrl: './singlebillpayment.component.html',\r\n styleUrls: ['./singlebillpayment.component.scss']\r\n})\r\nexport class SinglebillpaymentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('params') params;\r\n isShowAvailableCredit: any = false;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n paymentMethods: any = [];\r\n selectedMOP: any;\r\n paying_amt: any = 0;\r\n payBillData: any = {\r\n payment_type: 'normal',\r\n mop: '',\r\n checkbookid: '',\r\n notify: '0',\r\n change: 0,\r\n leave_debit: false,\r\n amt: 0,\r\n memo: '',\r\n notes: '',\r\n trandate: new Date(),\r\n bankid: '',\r\n currency: '',\r\n roe: 0,\r\n tendered_amt: 0,\r\n fx_loss_gain: 0\r\n };\r\n supplier: any = {\r\n availbalance: 0\r\n };\r\n checkbookList: any = [];\r\n totalPayment: any = 0;\r\n isShowChequeFields = false;\r\n companyBanks: any = [];\r\n currencyList: any = [];\r\n baseTotal: any = 0;\r\n constructor(private activeModal: NgbActiveModal, private appService: AppServices, private toastr: NotificationService, private loader: NgxUiLoaderService, private service: accountServices, private commanService: CommonServices, private datepipe: DatePipe, private detectChange: ChangeDetectorRef, private modalService: NgbModal, private router: Router, private toaster: ToastrService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.payBillData.tendered_amt = this.params.amt;\r\n this.totalPayment = this.params.amt;\r\n this.paying_amt = this.params.amt;\r\n this.payBillData.currency = this.params.currency ? this.params.currency : '';\r\n this.payBillData.roe = this.params.roe ? this.params.roe : 0;\r\n this.baseTotal = (this.params.amt ? this.params.amt : 0) * (this.params.roe ? this.params.roe : 0);\r\n this.baseTotal = this.baseTotal ? Number(this.baseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.getpaymentMethods();\r\n this.appService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n environment.production ? '' : console.log(' currency list data ', this.currencyList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading Currency list ', err);\r\n });\r\n this.updatePayAmt();\r\n }\r\n setChequeBookFieldsNull() {\r\n this.isShowChequeFields = false;\r\n this.payBillData.checkbookid = '';\r\n this.payBillData.number = '';\r\n }\r\n getPaymentAccounts() {\r\n var type = '';\r\n this.paymentMethods.forEach(item => {\r\n if (item.Value == this.payBillData.mop) {\r\n type = item.Value1 ? item.Value1 : '';\r\n }\r\n })\r\n this.commanService.getCompMOPBankList(this.payBillData.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n this.setChequeBookFieldsNull();\r\n }\r\n getpaymentMethods() {\r\n this.commanService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethods = res;\r\n environment.production ? '' : console.log('payment method data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n }\r\n selectCheckBooks() {\r\n this.selectedMOP = null;\r\n this.setChequeBookFieldsNull();\r\n if (this.payBillData.mop == '') {\r\n return;\r\n }\r\n this.paymentMethods.forEach(mop => {\r\n if (mop.Value == this.payBillData.mop) {\r\n this.selectedMOP = mop;\r\n }\r\n })\r\n if (this.selectedMOP.Value1 == 'cheque') {\r\n this.isShowChequeFields = true;\r\n this.getCheckBooks();\r\n }\r\n }\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.payBillData.currency == element.Value) {\r\n this.payBillData.roe = Number(element.Value2).toFixed(this.userdata.decimals_allowed) ? Number(element.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n else if (!this.payBillData.currency) {\r\n this.payBillData.roe = '';\r\n }\r\n })\r\n }\r\n getCheckBooks() {\r\n this.commanService.getCheckBooks(this.payBillData.bankid).subscribe(res => {\r\n this.checkbookList = res;\r\n environment.production ? '' : console.log('checkbooks data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading checkbooks data', err);\r\n });\r\n }\r\n getCheckBookNos() {\r\n this.commanService.getCheckBookNos(this.payBillData.checkbookid).subscribe((res: any) => {\r\n this.payBillData.number = res.refid;\r\n environment.production ? '' : console.log('checkbookNos data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading checkbookNos data', err);\r\n });\r\n }\r\n updatePayAmt() {\r\n if (this.payBillData.tendered_amt == undefined || this.payBillData.tendered_amt == null || this.payBillData.tendered_amt == '') {\r\n this.payBillData.tendered_amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n if (Number(this.payBillData.tendered_amt) > Number(this.totalPayment)) {\r\n this.payBillData.change = Number(this.payBillData.tendered_amt) - Number(this.totalPayment);\r\n } else {\r\n this.payBillData.change = 0;\r\n }\r\n this.paying_amt = (Number(this.payBillData.tendered_amt) - Number(this.payBillData.change)).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.payBillData.change = Number(this.payBillData.change).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.payBillData.receivedbaseamount = ((this.paying_amt ? Number(this.paying_amt) : 0) * Number(this.payBillData.roe ? this.payBillData.roe : 0));\r\n this.payBillData.receivedbaseamount = this.payBillData.receivedbaseamount ? Number(this.payBillData.receivedbaseamount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.payBillData.fx_loss_gain = ((this.paying_amt ? Number(this.paying_amt) : 0) * Number(this.params.roe ? this.params.roe : 0)) - Number(this.payBillData.receivedbaseamount);\r\n this.payBillData.fx_loss_gain = this.payBillData.fx_loss_gain ? Number(this.payBillData.fx_loss_gain).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n billPayment() {\r\n var duebills = [];\r\n var dueBal = 0;\r\n if (this.payBillData.tendered_amt > 0) {\r\n dueBal = (this.params.amt ? Number(this.params.amt) : 0) - (this.payBillData.tendered_amt ? Number(this.payBillData.tendered_amt) : 0);\r\n } else {\r\n dueBal = Number(this.params.amt);\r\n }\r\n duebills.push({\r\n \"companyname\": this.params.companyname,\r\n \"status\": dueBal <= 0 ? 'paid' : 'partiallypaid',\r\n \"refno\": this.params.refno,\r\n \"bal\": this.params.amt ? Number(this.params.amt) : 0,\r\n \"pay\": dueBal <= 0 ? this.params.amt : this.payBillData.tendered_amt,\r\n \"refid\": this.params.refid,\r\n \"ttype\": this.params.ttype,\r\n \"billref\": this.payBillData.memo,\r\n \"currency\": this.params.currency,\r\n \"billdate\": this.params.billdate\r\n });\r\n if (!this.payBillData.mop) {\r\n this.toastr.Error(\"Please select method of payment\")\r\n return;\r\n }\r\n if (this.selectedMOP.Value1 == 'cheque' && this.payBillData.number == '') {\r\n this.toastr.Error(\"Please select payment cheque\");\r\n return;\r\n }\r\n if (this.payBillData.tendered_amt == undefined || this.payBillData.tendered_amt == null || this.payBillData.tendered_amt <= 0) {\r\n this.toastr.Error(\"Please enter amount\");\r\n return;\r\n }\r\n if (!this.payBillData.currency) {\r\n this.toastr.Error('Please select currency');\r\n return;\r\n }\r\n if (this.payBillData.memo == undefined || this.payBillData.memo == null || this.payBillData.memo == '') {\r\n this.toastr.Error(\"Please enter memo\");\r\n return;\r\n }\r\n var postData = {\r\n \"id\": null,\r\n \"notes\": this.payBillData.notes,\r\n \"memo\": this.payBillData.memo,\r\n \"change\": this.payBillData.leave_debit ? this.payBillData.change : 0,\r\n \"leave_debit\": this.payBillData.leave_debit,\r\n \"number\": this.payBillData.number,\r\n \"currency\": this.payBillData.currency,\r\n \"amt\": this.payBillData.change > 0 ? Number(this.params.amt) : Number(this.payBillData.tendered_amt),\r\n \"tendered_amt\": Number(this.payBillData.tendered_amt),\r\n \"availbalance\": 0,\r\n \"partyid\": this.params.partyid,\r\n \"companyid\": this.userdata.companyid,\r\n \"checkbookid\": this.payBillData.checkbookid,\r\n \"supplier_name\": this.payBillData.name,\r\n \"notify\": this.payBillData.notify,\r\n \"mop\": this.payBillData.mop,\r\n \"bankid\": this.payBillData.bankid,\r\n \"payment_type\": this.payBillData.payment_type,\r\n \"trandate\": this.datepipe.transform(new Date(this.payBillData.trandate), this.userdata.postdatetimeformat),\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyname\": this.userdata.compayname,\r\n \"phone\": this.userdata.phone,\r\n \"duebills\": duebills,\r\n // \"paymentfiles\": this.paymentFiles,\r\n \"roe\": this.payBillData.roe,\r\n \"party_type\": this.params.party_type,\r\n \"party_name\": this.params.party_name,\r\n \"notify_party\": false,\r\n \"fx_loss_gain\": this.payBillData.fx_loss_gain\r\n }\r\n environment.production ? '' : console.log(JSON.stringify(postData));\r\n this.loader.start();\r\n this.service.postBillPayment(postData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.closeModal();\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close();\r\n }\r\n getCurrentROE() {\r\n if (!this.payBillData.currency) {\r\n this.toaster.error('Please select currency');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commanService.getExchangeRate(this.userdata.currency, this.payBillData.currency).subscribe(res => {\r\n this.loader.stop();\r\n this.payBillData.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Bill Payment
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    0\" (click)=\"applyCredit()\">\r\n
    Available Credit: {{supplier.availbalance}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Payment Method is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Cash/Bank is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Please select checkbook
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Currency is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    Amount is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Memo is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NavService } from 'src/app/shared/service/nav.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { CreditComponent } from '../credit/credit.component';\r\n@Component({\r\n selector: 'app-singlereceivepayment',\r\n templateUrl: './singlereceivepayment.component.html',\r\n styleUrls: ['./singlereceivepayment.component.scss']\r\n})\r\nexport class SinglereceivepaymentComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('params') params;\r\n payment: any = {\r\n amt: 0,\r\n looking: '',\r\n notify: '0',\r\n leave_credit: false,\r\n trandate: new Date(),\r\n mop: '',\r\n change: 0,\r\n payment_type: 'normal',\r\n bankid: '',\r\n cheque_details: '',\r\n number: '',\r\n cheque_date: new Date(),\r\n currency: '',\r\n roe: 0,\r\n creditavail: 0,\r\n tendered_amt: 0,\r\n fx_loss_gain: 0\r\n }\r\n baseTotal: any = 0;\r\n paymentMethodList: any = [];\r\n paymentTypeList: any = [];\r\n appname = environment.APP_NAME;\r\n isNumberShow = false;\r\n selectedMOP: any;\r\n userdata: any;\r\n duepayments: any = [];\r\n receivePayment: any;\r\n currencyList: any = [];\r\n isShowAvailableCredit = true;\r\n customer: any = {\r\n creditAvail: 0.0\r\n }\r\n companyBanks: any = [];\r\n paying_amt: any = 0;\r\n constructor(private activeModal: NgbActiveModal, private service: SalesServices, private toaster: ToastrService,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe, private appService: AppServices, private datepipe: DatePipe, private cd: ChangeDetectorRef, private router: Router, private modalService: NgbModal, private commoanService: CommonServices, private loader: NgxUiLoaderService, private navservice: NavService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commoanService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethodList = res;\r\n environment.production ? '' : console.log('payment method data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n this.commoanService.getComboEnums('paymenttype').subscribe(res => {\r\n this.paymentTypeList = res;\r\n environment.production ? '' : console.log('payment types data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment types data', err);\r\n });\r\n this.appService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n environment.production ? '' : console.log(' currency list data ', this.currencyList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading Currency list ', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.payment.tendered_amt = this.params.pay;\r\n this.paying_amt = this.params.pay;\r\n this.baseTotal = (this.params.pay ? this.params.pay : 0) * (this.params.roe ? this.params.roe : 0);\r\n this.baseTotal = this.baseTotal ? Number(this.baseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.getCustomerCredit();\r\n }\r\n getPaymentAccounts() {\r\n var type = '';\r\n this.paymentMethodList.forEach(item => {\r\n if (item.Value == this.payment.mop) {\r\n type = item.Value1 ? item.Value1 : '';\r\n }\r\n })\r\n this.commoanService.getCompMOPBankList(this.payment.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n }\r\n getCustomerCredit() {\r\n this.loader.start();\r\n this.commoanService.getCustomerCreditAvailable(this.params.customerid).subscribe(res => {\r\n this.loader.stop();\r\n this.customer = res;\r\n this.customer.availbalance = this.customer.availbalance ? Number(this.customer.availbalance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.payment.currency == element.Value) {\r\n this.payment.roe = Number(element.Value2).toFixed(this.userdata.decimals_allowed) ? Number(element.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n else if (!this.payment.currency) {\r\n this.payment.roe = '';\r\n }\r\n this.updatePayAmt();\r\n })\r\n }\r\n\r\n applyCredit() {\r\n var modalRef = this.modalService.open(CreditComponent, { ariaLabelledBy: 'modal-basic-title', backdrop: 'static', size: 'lg', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n modalRef.componentInstance.customerid = this.params.customerid;\r\n modalRef.result.then((result) => {\r\n }).catch((error) => {\r\n });\r\n }\r\n makeChequeFieldsNull() {\r\n this.payment.number = '';\r\n this.payment.cheque_details = '';\r\n this.payment.cheque_date = null;\r\n }\r\n selectPaymentType() {\r\n this.isNumberShow = false;\r\n this.paymentMethodList.forEach(element => {\r\n if (element.Value == this.payment.mop) {\r\n this.selectedMOP = element;\r\n if (element.Value1 == 'cheque') {\r\n this.isNumberShow = true;\r\n }\r\n }\r\n });\r\n this.getPaymentAccounts();\r\n this.makeChequeFieldsNull();\r\n }\r\n updatePayAmt() {\r\n if (this.payment.tendered_amt != undefined || this.payment.tendered_amt != null || this.payment.tendered_amt != '') {\r\n if (Number(this.payment.tendered_amt) > Number(this.params.pay)) {\r\n this.payment.change = Number(this.payment.tendered_amt) - Number(this.params.pay);\r\n this.payment.change = this.payment.change.toFixed(this.userdata.decimals_allowed);\r\n } else {\r\n this.payment.change = 0;\r\n }\r\n Number(this.payment.tendered_amt).toFixed(this.userdata.decimals_allowed);\r\n Number(this.payment.change).toFixed(this.userdata.decimals_allowed);\r\n } else {\r\n this.payment.tendered_amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n this.paying_amt = (Number(this.payment.tendered_amt) - Number(this.payment.change)).toFixed(this.userdata.decimals_allowed);\r\n var baseTotal = Number(this.params.bal ? this.params.bal : 0) * Number(this.params.roe ? this.params.roe : 0);\r\n\r\n this.payment.receivedbaseamount = ((this.paying_amt ? Number(this.paying_amt) : 0) * Number(this.payment.roe ? this.payment.roe : 0));\r\n this.payment.receivedbaseamount = this.payment.receivedbaseamount ? Number(this.payment.receivedbaseamount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.payment.fx_loss_gain = ((this.paying_amt ? Number(this.paying_amt) : 0) * Number(this.params.roe ? this.params.roe : 0)) - Number(this.payment.receivedbaseamount);\r\n this.payment.fx_loss_gain = this.payment.fx_loss_gain ? Number(this.payment.fx_loss_gain).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n addPayment() {\r\n var dueList = [];\r\n if (!this.payment.mop) {\r\n this.toastr.Error(\"Please select method of payment\");\r\n return;\r\n }\r\n if (this.selectedMOP.Value1 == 'cheque' && this.payment.number == '') {\r\n this.toastr.Error(\"Please enter cheque#\");\r\n return;\r\n }\r\n if (this.selectedMOP.Value1 == 'online' && this.payment.bankid == '') {\r\n this.toastr.Error(\"Please select bank\");\r\n return;\r\n }\r\n if (this.payment.tendered_amt == undefined || this.payment.tendered_amt == null || this.payment.tendered_amt <= 0) {\r\n this.toastr.Error(\"Please enter amount\");\r\n return;\r\n }\r\n if (!this.payment.currency) {\r\n this.toastr.Error('Please select currency');\r\n return;\r\n }\r\n if (this.payment.memo == undefined || this.payment.memo == null || this.payment.memo == '') {\r\n this.toastr.Error(\"Please enter memo\");\r\n return;\r\n }\r\n dueList.push({\r\n \"companyname\": this.params.companyname,\r\n \"status\": this.params.status,\r\n \"refno\": this.params.refno,\r\n \"projref\": this.params.projref,\r\n \"currency\": this.params.currency,\r\n \"bal\": this.params.pay,\r\n \"pay\": (this.payment.tendered_amt ? this.payment.tendered_amt : 0) > Number(this.params.pay) ? Number(this.params.pay) : (this.payment.tendered_amt ? this.payment.tendered_amt : 0),\r\n \"refid\": this.params.refid,\r\n \"ttype\": this.params.ttype,\r\n \"invdate\": this.params.invdate\r\n })\r\n\r\n var obj = {\r\n \"notes\": this.payment.notes,\r\n \"memo\": this.payment.memo,\r\n \"change\": Number(this.payment.change),\r\n \"amt\": this.payment.change > 0 ? Number(this.params.pay) : Number(this.payment.tendered_amt),\r\n \"availbalance\": Number(this.params.availbalance),\r\n \"partyid\": this.params.customerid,\r\n \"party_type\": 'customer',\r\n \"party_name\": this.params.companyname,\r\n \"companyid\": this.userdata.companyid,\r\n \"notify\": this.payment.notify,\r\n \"currency\": this.params.currency,\r\n \"mop\": Number(this.payment.mop),\r\n \"leave_credit\": this.payment.leave_credit,\r\n \"trandate\": this.datepipe.transform(new Date(this.payment.trandate), this.userdata.postdatetimeformat),\r\n \"cheque_date\": this.payment.cheque_date ? this.datepipe.transform(new Date(this.payment.cheque_date), this.userdata.postdatetimeformat) : null,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"payment_type\": this.payment.payment_type,\r\n \"duepayments\": dueList,\r\n \"number\": this.payment.number,\r\n \"cheque_details\": this.payment.cheque_details,\r\n \"fx_loss_gain\": this.payment.fx_loss_gain ? Number(this.payment.fx_loss_gain) : 0,\r\n \"roe\": this.payment.roe,\r\n \"bankid\": this.payment.bankid,\r\n \"tendered_amt\": Number(this.payment.tendered_amt)\r\n }\r\n environment.production ? '' : console.log('payment data', obj);\r\n this.loader.start();\r\n this.service.postPayment(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading device ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activeModal.close();\r\n }\r\n getCurrentROE() {\r\n if (!this.payment.currency) {\r\n this.toaster.error('Please select currency');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commoanService.getExchangeRate(this.userdata.currency, this.payment.currency).subscribe(res => {\r\n this.loader.stop();\r\n this.payment.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Receive Payment
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    0\" (click)=\"applyCredit()\">\r\n
    Available Credit: {{customer.availbalance}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-site',\r\n templateUrl: './site.component.html',\r\n styleUrls: ['./site.component.scss']\r\n})\r\nexport class SiteComponent implements OnInit {\r\n fullScreen = false;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n format: any;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n site: any = {\r\n name: '',\r\n }\r\n siteList: any = [];\r\n selectedSite: any;\r\n constructor(private activeModal: NgbActiveModal,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private datepipe: DatePipe,) {\r\n //#region userdata block\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.date_format\r\n this.companyLogo += this.userdata.logo;\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#endregion userdata block\r\n this.getSite();\r\n }\r\n getSite() {\r\n this.loader.start();\r\n this.commonService.getSite(this.site.name).subscribe(res => {\r\n this.loader.stop();\r\n this.siteList = res;\r\n environment.production ? '' : console.log('site list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading site list data', err);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n selectSite(item) {\r\n this.selectedSite = item;\r\n this.closeModal();\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.selectedSite);\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    Sites\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    NameAddress1Address2Address3Address4DirectionsEastNorthSouthWestLatLngPicShortNameZipSpecmapTypeActiveCreateByCreateDateUpdateByUpdateDate
    {{item.name}}\r\n {{item.address1}}{{item.address2}}{{item.address3}}{{item.address4}}{{item.directions}}{{item.east}}\r\n {{item.north}}\r\n {{item.south}}\r\n {{item.west}}\r\n {{item.lat}}\r\n {{item.lng}}\r\n {{item.pic}}\r\n {{item.shortname}}{{item.zip}}\r\n {{item.specmap}}{{item.type}}{{item.active}}\r\n {{item.createby}}{{item.createdate |\r\n date:userdata.displaydatetimeformat}}\r\n {{item.updateby}}{{item.updatedate |\r\n date:userdata.displaydatetimeformat}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { MapsAPILoader } from '@agm/core';\r\nimport { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, ElementRef, Input, NgZone, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, NgForm } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { POSServices } from 'src/app/components/pos/pos.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { settingServices } from '../../settings/setting.service';\r\nimport { SiteComponent } from '../site/site.component';\r\n\r\n@Component({\r\n\tselector: 'app-sitesmodal',\r\n\ttemplateUrl: './sitesmodal.component.html',\r\n\tstyleUrls: ['./sitesmodal.component.scss']\r\n})\r\nexport class SitesmodalComponent implements OnInit {\r\n\tfullScreen = false;\r\n\t@ViewChild('content') Content: ElementRef;\r\n\t@ViewChild('product') product: any;\r\n\t@Input('params') params;\r\n\t@ViewChild('search')\r\n\tpublic searchElementRef: ElementRef;\r\n\tappname = environment.APP_NAME;\r\n\tsearchText: string = '';\r\n\tisEdit: boolean = false;\r\n\tisView: boolean = false;\r\n\tsite: any = {}\r\n\tkeyword2: any = 'ilc';\r\n\tmaterialsearch = 'desc';\r\n\tcustomerSiteList: any = []\r\n\tuserdata: any;\r\n\tsubmitted = false;\r\n\tproductList: any = [];\r\n\tform: NgForm;\r\n\tfieldsetDisabled = false;\r\n\tmaterialList: any = [];\r\n\tdeptList: any;\r\n\tcategoryList: any;\r\n\tcategoryid: any = '';\r\n\tsiteid: any;\r\n\tmaterial: any;\r\n\tdeptid: any = '';\r\n\tsearchtext: any;\r\n\tpositem: any = [];\r\n\tsubCategoryList: any;\r\n\tmaterialData: any = {};\r\n\tresponse: any;\r\n\tlastaction: string;\r\n\tcustomer: any;\r\n\tfilename: any;\r\n\tuploader: FileUploader;\r\n\tpicURL: any;\r\n\tsubcatid: any = '';\r\n\tformat: any;\r\n\tgeoCoder: any;\r\n\tzoom: any;\r\n\tcustomerDevideTickets: any = [];\r\n\taction: any;\r\n\ttabTitle: any = '';\r\n\ttypeList: any = [];\r\n\tprivate langChangeSubscription: Subscription;\r\n\tconstructor(\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\t\tprivate modalService: NgbModal,\r\n\t\tprivate activeModal: NgbActiveModal,\r\n\t\tprivate toastr: NotificationService,\r\n\t\tprivate datepipe: DatePipe,\r\n\t\tprivate loader: NgxUiLoaderService,\r\n\t\tprivate service: SalesServices,\r\n\t\tprivate settingService: settingServices,\r\n\t\tprivate route: ActivatedRoute,\r\n\t\tprivate commanservice: CommonServices,\r\n\t\tprivate toaster: NotificationService,\r\n\t\tprivate posService: POSServices,\r\n\t\tprivate mapsAPILoader: MapsAPILoader,\r\n\t\tprivate ngZone: NgZone,\r\n\t) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format;\r\n\t\tthis.lastaction = this.route.snapshot.queryParamMap.get('action');\r\n\t\tthis.getDeptData();\r\n\t}\r\n\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.mapsAPILoader.load().then(() => {\r\n\t\t\tthis.geoCoder = new google.maps.Geocoder;\r\n\t\t\tlet autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement);\r\n\t\t\tautocomplete.addListener(\"place_changed\", () => {\r\n\t\t\t\tthis.ngZone.run(() => {\r\n\t\t\t\t\t//get the place result\r\n\t\t\t\t\tlet place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\t\t\t\t\tthis.site.directions = place.formatted_address;\r\n\t\t\t\t\t//verify result\r\n\t\t\t\t\tif (place.geometry === undefined || place.geometry === null) {\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//set latitude, longitude and zoom\r\n\t\t\t\t\tthis.site.lat = place.geometry.location.lat();\r\n\t\t\t\t\tthis.site.lng = place.geometry.location.lng();\r\n\t\t\t\t\tthis.zoom = 12;\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t});\r\n\t\tif (this.params) {\r\n\t\t\tthis.action = this.params.action;\r\n\t\t\tif (this.action == 'view') {\r\n\t\t\t\tthis.isView = true;\r\n\t\t\t\tthis.fieldsetDisabled = true;\r\n\t\t\t} else if (this.action == 'edit') {\r\n\t\t\t\tthis.isView = false;\r\n\t\t\t\tthis.isEdit = true;\r\n\t\t\t\tthis.fieldsetDisabled = false;\r\n\t\t\t} else if (this.action == 'new') {\r\n\t\t\t\tthis.isView = false;\r\n\t\t\t\tthis.isEdit = false;\r\n\t\t\t\tthis.site = {\r\n\t\t\t\t\tspecmap: false,\r\n\t\t\t\t\tisprimary: false\r\n\t\t\t\t};\r\n\t\t\t\tthis.fieldsetDisabled = false;\r\n\t\t\t}\r\n\t\t\tif (this.params.from == 'sitemaster') {\r\n\t\t\t\tthis.getSiteTypes();\r\n\t\t\t\tthis.tabTitle = 'Site Details'\r\n\t\t\t\tthis.params.id ? this.getMasterSiteById(this.params.id) : '';\r\n\t\t\t} else {\r\n\t\t\t\tthis.tabTitle = 'Basic info';\r\n\t\t\t\tthis.params.id ? this.getCustomerTicket(this.params.customerid, this.params.id, '') : ''\r\n\t\t\t\tthis.params.id ? this.getSiteById(this.params.id) : '';\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.initializeFileUploader();\r\n\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/settings/sites&locations/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tgetSiteTypes() {\r\n\t\tthis.commanservice.getComboEnums('sitetype').subscribe(res => {\r\n\t\t\tthis.typeList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\t}\r\n\topenSite() {\r\n\t\tvar modalRef = this.modalService.open(SiteComponent, { size: 'xl', });\r\n\t\tmodalRef.result.then((result) => {\r\n\t\t\tif (result != undefined && result != null) {\r\n\t\t\t\tthis.site.name = result.name;\r\n\t\t\t\tthis.site.poc = result.poc;\r\n\t\t\t\tthis.site.email = result.email;\r\n\t\t\t\tthis.site.phone = result.phone;\r\n\t\t\t\tthis.site.zip = result.zip;\r\n\t\t\t\tthis.site.directions = result.directions;\r\n\t\t\t\tthis.site.address1 = result.address1;\r\n\t\t\t\tthis.site.address2 = result.address2;\r\n\t\t\t\tthis.site.address3 = result.address3;\r\n\t\t\t\tthis.site.address4 = result.address4;\r\n\t\t\t\tthis.site.shortname = result.shortname;\r\n\t\t\t\tthis.site.lat = result.lat;\r\n\t\t\t\tthis.site.lng = result.lng;\r\n\t\t\t\tthis.site.pic = result.pic;\r\n\t\t\t\tthis.site.south = result.south;\r\n\t\t\t\tthis.site.west = result.west;\r\n\t\t\t\tthis.site.east = result.east;\r\n\t\t\t\tthis.site.north = result.north;\r\n\t\t\t\tthis.site.specmap = result.specmap;\r\n\t\t\t\tthis.site.siteid = result.id;\r\n\t\t\t}\r\n\t\t}).catch((error) => {\r\n\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t});\r\n\t}\r\n\r\n\tgetSiteById(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getCustomerSiteById(id, this.params.customerid).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.site = res;\r\n\t\t\tthis.getMaterials();\r\n\t\t\tthis.picURL = this.site.pic ? environment.DOC_URL + '/' + this.userdata.companyid + '/' + this.site.pic : '';\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tdelete(id) {\r\n\t\tSwal.fire({\r\n\t\t\ttitle: 'Are you sure want to delete?',\r\n\t\t\t// text: 'You will not be able to recover this file!',\r\n\t\t\ticon: 'warning',\r\n\t\t\tshowCancelButton: true,\r\n\t\t\tconfirmButtonText: 'Yes',\r\n\t\t\tcancelButtonText: 'No'\r\n\t\t}).then((result) => {\r\n\t\t\tif (result.value) {\r\n\t\t\t\tthis.loader.start();\r\n\t\t\t\tthis.service.deleteCustomerSite(id).subscribe((res: any) => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tif (res != null) {\r\n\t\t\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}, err => {\r\n\t\t\t\t\tthis.loader.stop();\r\n\t\t\t\t\tenvironment.production ? '' : console.log('Error : While loading delete action ', err);\r\n\t\t\t\t});\r\n\t\t\t} else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tget f(): { [key: string]: AbstractControl } {\r\n\t\treturn this.site.controls;\r\n\t}\r\n\r\n\tonChangeSearch(val: string) {\r\n\t\tthis.commanservice.getProductCatalog('', '', this.material, '', '', '', '').subscribe(res => {\r\n\t\t\tenvironment.production ? '' : console.log(res);\r\n\t\t\tthis.productList = res;\r\n\t\t})\r\n\t}\r\n\r\n\tonFocused($event) {\r\n\t\tthis.product ? this.product.clear() : '';\r\n\t}\r\n\r\n\tdeleteRow(item) {\r\n\t}\r\n\r\n\tcreateNewRow() {\r\n\t}\r\n\r\n\tselectEvent(item) {\r\n\t\tthis.materialData.siteid = Number(this.site.id);\r\n\t\tthis.materialData.prodid = Number(item.id),\r\n\t\t\tthis.materialData.ilc = item.ilc,\r\n\t\t\tthis.materialData.description = item.desc,\r\n\t\t\tthis.materialData.qty = 1,\r\n\t\t\tthis.materialData.createby = this.userdata.email;\r\n\t\tthis.materialData.companyid = this.userdata.companyid;\r\n\t\tthis.materialData.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\tenvironment.production ? '' : console.log(this.materialData)\r\n\t\tthis.service.postMaterial(this.materialData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.getMaterials();\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tconsole.log(err);\r\n\t\t\tthis.toaster.Error('Error while added material')\r\n\t\t})\r\n\t}\r\n\r\n\tgetMaterials() {\r\n\t\tthis.service.siteMaterial(this.site.id).subscribe(res => {\r\n\t\t\tthis.materialList = res;\r\n\t\t\tenvironment.production ? '' : console.log(res);\r\n\t\t})\r\n\t}\r\n\r\n\tgetPosItems() {\r\n\t\tthis.posService.getPOSItems('', 0, this.deptid, this.categoryid, this.subcatid, '').subscribe(res => {\r\n\t\t\tthis.productList = res\r\n\t\t})\r\n\t}\r\n\r\n\tgetMaterialById(item) {\r\n\t\titem.companyid = this.userdata.companyid;\r\n\t\titem.updateby = this.userdata.email;\r\n\t\titem.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postMaterial(item).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.getMaterials();\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tgetDeptData() {\r\n\t\tthis.commanservice.getDepartmentList(false).subscribe(res => {\r\n\t\t\tthis.deptList = res;\r\n\t\t\tenvironment.production ? '' : console.log('department data ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading department data', err);\r\n\t\t});\r\n\t}\r\n\r\n\tgetCatData() {\r\n\t\tthis.subcatid = ''\r\n\t\tthis.loader.start();\r\n\t\tthis.commanservice.getCategory(this.deptid, false).subscribe(res => {\r\n\t\t\tthis.categoryList = res;\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Category data ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading category data', err);\r\n\t\t});\r\n\t}\r\n\r\n\tgetSubCatdata() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commanservice.getSubCategory(this.categoryid).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.subCategoryList = res;\r\n\t\t\tenvironment.production ? '' : console.log('sub category data ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading Sub category data', err);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tdeleteMaterial(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.deleteMaterial(id).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tthis.getMaterials();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tgetCustomerTicket(customerid, siteid, deviceid) {\r\n\t\tthis.service.getCustomerTicket(customerid, siteid, deviceid).subscribe(res => {\r\n\t\t\tthis.customerDevideTickets = res;\r\n\t\t\tenvironment.production ? '' : console.log('ticket history details data ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading ticket history data', err);\r\n\t\t});\r\n\t}\r\n\r\n\taddSites(): void {\r\n\t\tif (this.params.from == 'sitemaster') {\r\n\t\t\tthis.addMasterSite();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.submitted = true;\r\n\t\tif (this.isEdit) {\r\n\t\t\tthis.site.updateby = this.userdata.email;\r\n\t\t\tthis.site.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.site.customerid = this.params.customerid;\r\n\t\t\tthis.site.createby = this.userdata.email;\r\n\t\t\tthis.site.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t\tthis.site.active = true;\r\n\t\t}\r\n\t\tthis.site.companyid = this.userdata.companyid;\r\n\t\tthis.site.pic = this.filename ? this.filename : (this.site.pic ? this.site.pic : '');\r\n\t\tthis.site.siteid ? this.site.siteid : null;\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postSites(this.site).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tif (this.filename) {\r\n\t\t\t\t\t\tthis.uploadFile();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While post customer sites ', err);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\t//#region Sorting Table Header\r\n\tsortDir = 1;//1= 'ASE' -1= DSC\r\n\tonSortClick(event) {\r\n\t\tlet target = event.currentTarget,\r\n\t\t\tchildtarget = target.querySelector('i'),\r\n\t\t\tclassList = childtarget.classList;\r\n\r\n\t\tif (classList.contains('fa-chevron-up')) {\r\n\t\t\tclassList.remove('fa-chevron-up');\r\n\t\t\tclassList.add('fa-chevron-down');\r\n\t\t\ttarget.classList.add('Sorted');\r\n\t\t\tthis.sortDir = -1;\r\n\t\t} else {\r\n\t\t\tclassList.add('fa-chevron-up');\r\n\t\t\tclassList.remove('fa-chevron-down');\r\n\t\t\ttarget.classList.remove('Sorted');\r\n\t\t\tthis.sortDir = 1;\r\n\t\t}\r\n\t\tthis.sortArr('name');\r\n\t}\r\n\r\n\tsortArr(colName: any) {\r\n\t\tthis.customerSiteList.sort((a, b) => {\r\n\t\t\tlet valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName];\r\n\t\t\tlet valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName];\r\n\r\n\t\t\tif (!valueA && !valueB) {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t\tif (!valueA) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (!valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\r\n\t\t\tif (valueA > valueB) {\r\n\t\t\t\treturn this.sortDir;\r\n\t\t\t}\r\n\t\t\tif (valueA < valueB) {\r\n\t\t\t\treturn -this.sortDir;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t});\r\n\t}\r\n\t//#endregion Sorting Table Header\r\n\r\n\r\n\tselectedFileOnChanged(event: any) {\r\n\t\tenvironment.production ? '' : console.log(event.target.value);\r\n\t\tthis.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n\t}\r\n\r\n\tinitializeFileUploader() {\r\n\t\tthis.uploader = new FileUploader({\r\n\t\t\tauthTokenHeader: 'authorization',\r\n\t\t\tauthToken: 'Bearer ' + this.userdata.token,\r\n\t\t\turl: environment.API_URL + 'api/Documents/UploadFiles',\r\n\t\t\tmethod: 'POST',\r\n\t\t\tremoveAfterUpload: true,\r\n\t\t\tqueueLimit: 100\r\n\t\t})\r\n\t\tthis.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n\t\t\tform.append('companyid', this.userdata.companyid);\r\n\t\t\tform.append('createby', this.userdata.email);\r\n\t\t\tform.append('refno', this.params.customerid);\r\n\t\t\tform.append('createdate', this.datepipe.transform(new Date(), this.userdata.postdatetimeformat));\r\n\t\t\tform.append('dtype', 'cust-site-file');\r\n\t\t};\r\n\t\tthis.response = '';\r\n\t\tthis.uploader.response.subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.closeModal();\r\n\t\t});\r\n\t\tthis.uploader.onAfterAddingFile = (file) => {\r\n\t\t\tfile.withCredentials = false;\r\n\t\t};\r\n\t\t// this.uploader.onAfterAddingAll = (files: any) => {\r\n\t\t// \tfiles.forEach(fileItem => {\r\n\t\t// \t\t// fileItem.file.name = fileItem.file.name.replace(/\\.[^/.]+$/, \"\");\r\n\t\t// \t\tenvironment.production ? '' : console.log('file name: ' + fileItem.file.name);\r\n\t\t// \t});\r\n\t\t// };\r\n\t}\r\n\tuploadFile() {\r\n\t\tthis.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n\t\t\tif (status == 200) {\r\n\t\t\t\tlet tempRes = JSON.parse(response);\r\n\t\t\t} else {\r\n\t\t\t\tthis.toaster.Success('File uploaded')\r\n\t\t\t}\r\n\t\t};\r\n\t\tthis.uploader.queue[0].upload();\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\r\n\t//Site Master Code\r\n\tgetMasterSiteById(id) {\r\n\t\tthis.loader.start();\r\n\t\tthis.settingService.getCompanySiteByID(id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.site = res;\r\n\t\t\tthis.picURL = this.site.pic ? environment.DOC_URL + '/' + this.userdata.companyid + '/' + this.site.pic : '';\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\taddMasterSite(): void {\r\n\t\tthis.submitted = true;\r\n\t\tif (this.isEdit) {\r\n\t\t\tthis.site.updateby = this.userdata.email;\r\n\t\t\tthis.site.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.site.createby = this.userdata.email;\r\n\t\t\tthis.site.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t\tthis.site.active = true;\r\n\t\t}\r\n\t\tthis.site.companyid = this.userdata.companyid;\r\n\t\tthis.site.pic = this.filename ? this.filename : (this.site.pic ? this.site.pic : '');\r\n\t\tthis.loader.start();\r\n\t\tthis.settingService.postCompanySites(this.site).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tif (this.filename) {\r\n\t\t\t\t\t\tthis.uploadFile();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.closeModal();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'modal_title' | translate }} {{site.id}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    {{ 'modal_inputs.name_required' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'modal_inputs.shortName_required' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n {{site.pic}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n@Component({\r\n selector: 'app-sourcelist',\r\n templateUrl: './sourcelist.component.html',\r\n styleUrls: ['./sourcelist.component.scss']\r\n})\r\nexport class SourcelistModalComponent implements OnInit {\r\n @Input() sourcetype: string;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n keyword = 'name';\r\n sourceList: any = []\r\n selectedSource: any;\r\n typeList: any = []\r\n searchtxt: any = '';\r\n subscription: Subscription;\r\n constructor(private activeModal: NgbActiveModal,\r\n private commonServices: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private datePipe: DatePipe,\r\n private toastr: NotificationService,\r\n ) {\r\n console.log('sourcelist')\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n getSourceList() {\r\n if (this.searchtxt == undefined || this.searchtxt == null || this.searchtxt == '') {\r\n return;\r\n }\r\n // if (!this.sourcetype || this.sourcetype.trim() === '') {\r\n // this.toastr.Error('Please select source type');\r\n // return;\r\n // }\r\n if (this.searchtxt.length < 3) {\r\n return;\r\n }\r\n this.loader.start();\r\n this.commonServices.getSourceList(this.sourcetype, this.searchtxt).subscribe(res => {\r\n this.loader.stop();\r\n this.sourceList = res;\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n selectSource(item) {\r\n this.selectedSource = item;\r\n this.searchtxt = '';\r\n this.sourceList = [];\r\n }\r\n\r\n ngAfterViewInit() {\r\n const source = interval(500);\r\n this.subscription = source.subscribe(val => {\r\n if (!this.SearchElement.nativeElement.focus()) {\r\n this.SearchElement.nativeElement.focus()\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n console.log('destroyed')\r\n }\r\n\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedSource);\r\n }\r\n ngOnInit(): void {\r\n // this.customer.name = this.type ? this.type : '';\r\n this.getSourceList();\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    IDNumberParty TypeParty Name
    {{item.source_id}}\r\n {{item.source_no}}\r\n {{item.party_type}}\r\n {{item.party_name}}\r\n
    \r\n
    Your search result yielded no results
    \r\n
    \r\n
    \r\n
    ","import { NgModule } from '@angular/core';\r\n\r\nimport { SourcelistModalComponent } from './sourcelist.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\n\r\n\r\n@NgModule({\r\n declarations: [SourcelistModalComponent],\r\n imports: [CommonModule, FormsModule, NgbModule, NgbTooltipModule, AutocompleteLibModule, NgSelectModule],\r\n exports: [SourcelistModalComponent],\r\n})\r\nexport class SourcelistModule { }","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { Subscription, interval } from 'rxjs';\r\n@Component({\r\n selector: 'app-supplier-list',\r\n templateUrl: './supplier-list.component.html',\r\n styleUrls: ['./supplier-list.component.scss']\r\n})\r\nexport class SupplierListComponent implements OnInit {\r\n header: any;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n setCustomerValue: any;\r\n keyword = 'name';\r\n validatecustomer: any;\r\n supplierList: any = [];\r\n searchTxt: any = '';\r\n islocal: any = false;\r\n @ViewChild('supplier') supplier;\r\n\r\n subscription: Subscription;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n selectedSupplier: any = {};\r\n constructor(private activeModal: NgbActiveModal,\r\n private commonServices: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private datePipe: DatePipe,\r\n private toastr: NotificationService,\r\n private service: SalesServices,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n toggle() {\r\n this.islocal != this.islocal;\r\n console.log('islocal ' + this.islocal);\r\n }\r\n\r\n getSupplier() {\r\n if (this.searchTxt == undefined || this.searchTxt.length < 2) {\r\n return\r\n }\r\n this.loader.start();\r\n this.commonServices.getSuppliersList(this.islocal, this.searchTxt).subscribe(res => {\r\n this.loader.stop();\r\n this.supplierList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.supplierList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n selectSupplier(item) {\r\n this.selectedSupplier = item;\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.selectedSupplier);\r\n }\r\n ngOnInit(): void {\r\n this.commonServices.aClickedEvent\r\n .subscribe((data: any) => {\r\n console.log('Event message from Component for islocal checked: ' + data);\r\n this.islocal = data;\r\n });\r\n this.islocal = this.islocal ? this.islocal : false;\r\n\r\n if (this.searchTxt) {\r\n this.getSupplier();\r\n }\r\n }\r\n\r\n preventEvent(event: Event): void {\r\n event.stopPropagation(); // Prevents event bubbling\r\n event.preventDefault(); // Prevents default action (if any)\r\n }\r\n\r\n ngAfterViewInit() {\r\n const source = interval(500);\r\n this.subscription = source.subscribe(val => {\r\n if (!this.SearchElement.nativeElement.focus()) {\r\n this.SearchElement.nativeElement.focus()\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n console.log('destroyed')\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    Local
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    NamePOCPayment TermsCurrencyLocal
    \r\n
    {{item.name}}
    \r\n \r\n
    \r\n
    Name : {{item.name}}\r\n
    \r\n
    POC : {{item.poc}}\r\n
    \r\n
    Payment Terms : {{item.paymentterms}}
    \r\n
    Currency : {{item.currency}}
    \r\n
    Local : {{item.local}}
    \r\n
    \r\n
    \r\n
    \r\n
    {{item.poc}}
    \r\n\r\n
    \r\n
    {{item.paymentterms}}
    \r\n
    \r\n
    {{item.currency}}
    \r\n
    \r\n
    {{item.local}}
    \r\n
    \r\n
    Your search result yielded no results
    \r\n
    \r\n
    \r\n \r\n
    ","import {NgModule} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { SupplierListComponent } from './supplier-list.component';\r\nimport { NgToggleModule } from 'ng-toggle-button';\r\n\r\n@NgModule({\r\n declarations: [SupplierListComponent],\r\n imports:[CommonModule, FormsModule, NgbModule, NgbTooltipModule, NgToggleModule],\r\n exports: [SupplierListComponent],\r\n})\r\nexport class SupplierListModule {}","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { AddSupplierComponent } from '../../purchase/suppliers/add-supplier/add-supplier.component';\r\nimport Swal from 'sweetalert2';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-suppliercontact',\r\n templateUrl: './suppliercontact.component.html',\r\n styleUrls: ['./suppliercontact.component.scss']\r\n})\r\nexport class SuppliercontactComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('editData') editData\r\n @Input('supplierid') supplierid\r\n @Input('action') action\r\n isEdit: boolean = false;\r\n userdata: any;\r\n contactList: any = []\r\n response: any;\r\n lastaction: string;\r\n fieldsetDisabled = false;\r\n contact: any = {\r\n notifyme: true,\r\n active: true,\r\n isprimary: false\r\n }\r\n appname = environment.APP_NAME;\r\n private langChangeSubscription: Subscription;\r\n constructor(private modalService: NgbModal,\r\n private loader: NgxUiLoaderService,\r\n private service: purchaseServices,\r\n private route: ActivatedRoute,\r\n private toastr: NotificationService,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n private datepipe: DatePipe) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n console.log('edited data', this.editData);\r\n if (this.editData) {\r\n this.contact = this.editData;\r\n }\r\n if (this.action == 'view') {\r\n this.isEdit = true;\r\n }\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/purchase/suppliers/contacts/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => {\r\n\t\t this.translate.setTranslation(lang, translations, true);\r\n\t\t this.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n saveContact() {\r\n if ((this.contact.id)) {\r\n this.contact.updateby = this.userdata.email;\r\n this.contact.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.contact.companyid = this.userdata.companyid;\r\n this.contact.supplierid = this.supplierid\r\n this.contact.createby = this.userdata.email;\r\n this.contact.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.loader.start();\r\n this.service.postSupplierContact(this.contact).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.modalService.dismissAll();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading lead contact ', err);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n\r\n }\r\n\r\n\r\n}\r\nfunction input(arg0: string) {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n","\r\n
    \r\n
    \r\n
    {{'Modal_Title' | translate}}
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{'Modal_Inputs.Name_Required' | translate}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{'Modal_Inputs.Email_Required' | translate}}
    \r\n
    {{'Modal_Inputs.Email_Invalid' | translate}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\nimport { serviceManagerServices } from '../../servicemanager/servicemanager.service';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\n@Component({\r\n selector: 'app-techcopy',\r\n templateUrl: './techcopy.component.html',\r\n styleUrls: ['./techcopy.component.scss']\r\n})\r\nexport class TechCopyComponent implements OnInit {\r\n fullScreen = false;\r\n public config = {\r\n printMode: 'template-popup',\r\n pageTitle: ' ',\r\n popupProperties: 'toolbar=yes,scrollbars=yes,resizable=no,top=0,left=0,fullscreen=yes',\r\n stylesheets: [{ rel: 'stylesheet', href: 'https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css' }],\r\n styles: ['#print-section {width:100%;display: block !important; font-size:16px !important; page-break-after: always;}', '.TaskPrint {width:100%; font-size:16px !important; page-break-after: always;}', 'body { width:100%; font-size:16px !important}', 'table {width:100%; font-size:16px !important;}', 'table tr td { height:50px; }','table tr th { height:50px;}', '@page {size: A4; font-size:16px !important}',' input[type=checkbox] {height: 25px;,width: 25px;}']\r\n }\r\n closeResult: string;\r\n @Input('fromdate') fromdate;\r\n @Input('todate') todate;\r\n @Input('status') status;\r\n @Input('id') id;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n @ViewChild('content') public content: any;\r\n @ViewChild('clientnotes') clientNotes: ElementRef;\r\n isShowCopanyLogo = false;\r\n constructor(private modalService: NgbModal, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: serviceManagerServices, public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo += this.userdata.logo;\r\n }\r\n\r\n ngOnInit() {\r\n if (this.id != undefined && this.id != '' && this.id != null) {\r\n this.getTicketDetails(this.id);\r\n } else {\r\n this.getTicketListForBatchPrint();\r\n }\r\n setTimeout(() => {\r\n //document.getElementById(\"printButton\").click();\r\n }, 2000)\r\n }\r\n\r\n getTicketDetails(ticketid) {\r\n this.service.getTicketDetails(ticketid).subscribe(res => {\r\n if (res != null) {\r\n this.ticketsBatchPrintList.push(res);\r\n }\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading currency data', err);\r\n })\r\n }\r\n\r\n getTicketListForBatchPrint() {\r\n this.loader.start();\r\n this.service.getTicketsForBatchPrint(this.fromdate, this.todate, this.status).subscribe(res => {\r\n this.loader.stop();\r\n this.ticketsBatchPrintList = res;\r\n if (this.ticketsBatchPrintList != undefined && this.ticketsBatchPrintList != null) {\r\n this.ticketsBatchPrintList.forEach(ticket => {\r\n if (ticket.ticketSchedules.length > 0) {\r\n ticket.ticketSchedules.forEach(element => {\r\n element.category=ticket.category;\r\n if (element.schedule_date != null) {\r\n element.schedule_date = this.datepipe.transform(new Date(element.schedule_date),this.userdata.postdateformat);\r\n }\r\n if (element.schedule_time != null) {\r\n var dateTime = this.datepipe.transform(new Date(),this.userdata.postdateformat);\r\n dateTime = dateTime + 'T' + element.schedule_time;\r\n element.schedule_time = this.datepipe.transform(new Date(dateTime), 'hh:mm:ss a');\r\n }\r\n if (element.completeddate != null) {\r\n element.completeddate = this.datepipe.transform(new Date(element.completeddate),this.userdata.postdateformat);\r\n }\r\n if (element.completedtime != null) {\r\n var dateTime = this.datepipe.transform(new Date(),this.userdata.postdateformat);\r\n dateTime = dateTime + 'T' + element.completedtime;\r\n element.completedtime = this.datepipe.transform(new Date(dateTime), 'hh:mm:ss a');\r\n }\r\n if (element.enroutedate != null) {\r\n element.enroutedate = this.datepipe.transform(new Date(element.enroutedate),this.userdata.postdateformat);\r\n }\r\n if (element.enroutetime != null) {\r\n var dateTime = this.datepipe.transform(new Date(),this.userdata.postdateformat);\r\n dateTime = dateTime + 'T' + element.enroutetime;\r\n element.enroutetime = this.datepipe.transform(new Date(dateTime), 'hh:mm:ss a');\r\n }\r\n });\r\n }\r\n });\r\n }\r\n // this.open(this.content);\r\n environment.production ? '' : console.log('ticket batch list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading ticket list ', err);\r\n });\r\n }\r\n getDismissReason(reason: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Print Tech Copy

    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    No records found
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n Service Ticket
    \r\n {{ticket.tno}}\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Customer Name{{ticket.customer_name}}Job in Progress?\r\n \r\n Job Complete?\r\n \r\n
    Site\r\n {{ticket.site_name}}\r\n
    Subject{{ticket.subject}}
    Scope of Work
    Devices\r\n \r\n {{device.name}}  \r\n \r\n
    Service Notes
    Client Notes
    Tech List Call Out TypeSchedule Time Finish Time Travel TimeTotal Time
    {{item.tech}}{{item.category}}{{item.description}}{{item.schedule_date}} {{item.schedule_time}}{{item.completeddate}} {{item.completedtime}}{{item.enroutedate}} {{item.enroutetime}}
    Desc of Work and Important\r\n Findings:
    \r\n
    \r\n Office use only:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n Billable\r\n \r\n Non-Paid\r\n \r\n \r\n Client Services\r\n \r\n Over Time\r\n \r\n \r\n Estimating\r\n \r\n P&R\r\n \r\n \r\n Holiday\r\n \r\n Quality Control\r\n \r\n \r\n MA / Autos\r\n \r\n Sales – New\r\n \r\n
    \r\n MA / Shop\r\n \r\n Sales – Brokerage\r\n \r\n \r\n MA / Tools\r\n \r\n Sunday\r\n \r\n \r\n MA / Off\r\n \r\n Surveys\r\n \r\n \r\n Marketing\r\n \r\n Training\r\n \r\n \r\n Non-Billable\r\n \r\n Warranty\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n Powered by: Sanmol Software\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { environment } from 'src/environments/environment';\r\nimport { serviceManagerServices } from '../../servicemanager/servicemanager.service';\r\nimport { NgxPrintElementService } from 'ngx-print-element';\r\n@Component({\r\n selector: 'app-ticketcopy',\r\n templateUrl: './ticketcopy.component.html',\r\n styleUrls: ['./ticketcopy.component.scss']\r\n})\r\nexport class TicketCopyComponent implements OnInit {\r\n fullScreen = false;\r\n @ViewChild('printButton') printButton: ElementRef;\r\n closeResult: string;\r\n @Input('fromdate') fromdate;\r\n @Input('todate') todate;\r\n @Input('status') status;\r\n @Input('id') id;\r\n companyLogo: any = 'http://ezybooks.net/docs/logos/';\r\n ticketsBatchPrintList: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n isShowCopanyLogo=false;\r\n public config = {\r\n printMode: 'template-popup',\r\n pageTitle: ' ',\r\n popupProperties: 'toolbar=yes,scrollbars=yes,resizable=yes,top=0,left=0,fullscreen=yes',\r\n styles: ['#print-section {width:100%;display: block !important; page-break-after: always; font-size:16px !important}','.TaskPrint {width:100%;}', 'body { width:100%; font-size:16px !important}', 'table {width:100%; font-size:16px !important}', '@page {size: A4; font-size:16px !important}','table tr th, table tr td {font-size:16px !important}']\r\n }\r\n @ViewChild('content') public content: any;\r\n constructor(private modalService: NgbModal, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private service: serviceManagerServices,public print: NgxPrintElementService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo += this.userdata.logo;\r\n }\r\n\r\n ngOnInit() {\r\n if (this.id != undefined && this.id != '' && this.id != null) {\r\n this.getTicketDetails(this.id);\r\n } else {\r\n this.getTicketListForBatchPrint();\r\n }\r\n setTimeout(() => {\r\n //document.getElementById(\"printButton\").click();\r\n }, 2000)\r\n }\r\n\r\n\r\n getTicketDetails(ticketid) {\r\n this.service.getTicketDetails(ticketid).subscribe(res => {\r\n if (res != null) {\r\n this.ticketsBatchPrintList.push(res);\r\n }\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading currency data', err);\r\n })\r\n }\r\n getTicketListForBatchPrint() {\r\n this.loader.start();\r\n this.service.getTicketsForBatchPrint(this.fromdate, this.todate, this.status).subscribe(res => {\r\n this.loader.stop();\r\n this.ticketsBatchPrintList = res;\r\n // this.open(this.content);\r\n environment.production ? '' : console.log('ticket batch list data ', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading ticket list ', err);\r\n });\r\n }\r\n getDismissReason(reason: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n

    Batch Print

    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    No records found
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n Service Ticket\r\n
    {{ticket.tno}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    Basic Information

    \r\n
    \r\n
    \r\n Subject/Title: {{ticket.subject}}
    \r\n Schedule Date : {{ticket.dos}}
    \r\n Schedule Time :\r\n {{ticket.scheduledtime}}
    \r\n Expected/Due Date :{{ticket.duedate}}
    \r\n Cusotmer :{{ticket.customerid}}
    \r\n Category : {{ticket.category}}
    \r\n Project :{{ticket.projid}}
    \r\n Scope of Work :
    \r\n Location of Work :{{ticket.low}}
    \r\n Customer Notice :\r\n Directions to location :{{ticket.directions}}\r\n
    \r\n Assignto :{{ticket.assignto}}
    \r\n Priority : {{ticket.priority}}
    \r\n Status : {{ticket.status}}\r\n
    \r\n
    \r\n
    \r\n

    History

    \r\n
    \r\n
    \r\n {{log.description}} {{log.createby}}\r\n {{log.createdate}}\r\n
    \r\n
    \r\n
    \r\n

    Line Items

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ItemCodeDescriptionQtyAfterHoursNotes
    {{item.ilc}}{{item.description}}{{item.hrs}}{{item.worktype}}{{item.notes}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Checklist

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    DescriptionDevice/EquipCompletedValuesNotes
    {{chklst.description}}{{chklst.deviceid}}{{chklst.completed}}{{chklst.value}}{{chklst.notes}}
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n Customer feedback:
    \r\n\r\n
    \r\n
    \r\n Customer Signature\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { COMMA, ENTER } from '@angular/cdk/keycodes';\r\nimport { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { purchaseServices } from '../../purchase/purchase.service';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\n\r\n@Component({\r\n selector: 'app-tracking',\r\n templateUrl: './tracking.component.html',\r\n styleUrls: ['./tracking.component.scss']\r\n})\r\nexport class TrackingComponent implements OnInit {\r\n fullScreen = false;\r\n @Input('params') params;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n tracking: any = {\r\n title: 'Tracking',\r\n notes: '',\r\n action: '',\r\n status: '',\r\n refno: ''\r\n }\r\n format: any;\r\n trackingNotes: any = [];\r\n //Tags code\r\n tagName: any;\r\n private langChangeSubscription: Subscription;\r\n tagCtrl = new FormControl('');\r\n filteredTags: Observable;\r\n tags: any = [];\r\n allTags: any = [];\r\n @ViewChild('tagInput') tagInput: any;\r\n addOnFocusOut = true;\r\n status: any = '';\r\n readonly separatorKeysCodes = [ENTER, COMMA] as const;\r\n statusList: any = [];\r\n disableSaveBtn: any = false;\r\n //end Tags code\r\n constructor(private activeModal: NgbActiveModal,\r\n private commoanService: CommonServices,\r\n private datepipe: DatePipe,\r\n private loader: NgxUiLoaderService,\r\n private salesService: SalesServices,\r\n private service: purchaseServices,\r\n private modalService: NgbModal,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient,\r\n private toastr: NotificationService,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.format = this.userdata.postdatetimeformat;\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.params.type == 'invoice') {\r\n this.tracking.title = 'Invoice Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('invstatus');\r\n } else if (this.params.type == 'salesorder') {\r\n this.tracking.title = 'Sales Order Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('orderstatus');\r\n } else if (this.params.type == 'quote') {\r\n this.tracking.title = 'Quote Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('quotestatus');\r\n } else if (this.params.type == 'estimate') {\r\n this.tracking.title = 'Estimate Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('estimatestatus');\r\n } else if (this.params.type == 'po') {\r\n this.tracking.title = 'Purchase Order Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('postatus');\r\n }\r\n //new\r\n else if (this.params.type == 'pi') {\r\n this.tracking.title = 'Purchase Invoice Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('pistatus');\r\n } \r\n else if (this.params.type == 'customer') {\r\n this.tracking.title = 'Customer Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('customerstatus');\r\n } \r\n else if (this.params.type == 'supplier') {\r\n this.tracking.title = 'Supplier Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('supplierstatus');\r\n } \r\n else if (this.params.type == 'expense') {\r\n this.tracking.title = 'Expense Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('expensestatus');\r\n }\r\n else if (this.params.type == 'product') {\r\n this.tracking.title = 'Product Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('prodstatus');\r\n }\r\n else if (this.params.type == 'ticket') {\r\n this.tracking.title = 'ticket Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getTicketStatusList();\r\n }\r\n else if (this.params.type == 'contract') {\r\n this.tracking.title = 'Contract Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('contractstatus');\r\n }\r\n else if (this.params.type == 'asset') {\r\n this.tracking.title = 'Asset Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('assetstatus');\r\n }\r\n else if (this.params.type == 'rfq') {\r\n this.tracking.title = 'RFQ Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('rfqstatus');\r\n }\r\n else if (this.params.type == 'project') {\r\n this.tracking.title = 'Project Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('projectstatus');\r\n }\r\n else if (this.params.type == 'milestone') {\r\n this.tracking.title = 'Milestone Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('milestonestatus');\r\n }\r\n else if (this.params.type == 'jobapplication') {\r\n this.tracking.title = 'Job Application Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('jobapplicationstatus');\r\n }else if (this.params.type == 'expensereq') {\r\n this.tracking.title = 'Expense Request Tracking';\r\n this.tracking.refno = this.params.refno;\r\n this.tracking.status = this.params.status.toLowerCase()\r\n this.getStatusList('expreqstatus');\r\n }\r\n this.getTrackingNotes();\r\n this.getTags();\r\n\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n\r\n \r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/invoices/basic/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n\r\n\r\n getStatusList(type) {\r\n this.loader.start();\r\n this.commoanService.getComboEnums(type).subscribe(res => {\r\n this.loader.stop();\r\n this.statusList = res;\r\n environment.production ? '' : console.log('status list data ', this.statusList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n });\r\n }\r\n getTicketStatusList() {\r\n this.loader.start();\r\n this.commoanService.getTicketStatuses().subscribe((res: any) => {\r\n this.loader.stop();\r\n this.statusList = [];\r\n res.forEach(item => {\r\n this.statusList.push({ 'Text': item.Text, 'Value': item.Value })\r\n })\r\n environment.production ? '' : console.log('status list data ', this.statusList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading status list ', err);\r\n });\r\n }\r\n\r\n //#region Tagsinput\r\n getTags() {\r\n this.commoanService.getTags(this.params.type).subscribe((res: any) => {\r\n if (res != null) {\r\n this.allTags = [];\r\n res.forEach(element => {\r\n this.allTags.push(element.Value);\r\n })\r\n }\r\n this.filteredTags = this.tagCtrl.valueChanges.pipe(\r\n startWith(null),\r\n map((tag: string | null) => (tag ? this._filter(tag) : this.allTags.slice())),\r\n );\r\n environment.production ? '' : console.log('Invoice tags data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading Invoice tags data', err);\r\n });\r\n }\r\n\r\n addTag(event: MatChipInputEvent): void {\r\n const value = (event.value || '').trim();\r\n // Add our tag\r\n if (value) {\r\n var isExists = false;\r\n if (this.tags.length > 0) {\r\n this.tags.forEach(element => {\r\n if (element == value) {\r\n isExists = true;\r\n }\r\n })\r\n }\r\n if (!isExists) {\r\n this.tags.push(value);\r\n }\r\n }\r\n var isExists = false;\r\n this.allTags.forEach(element => {\r\n if (element == value) {\r\n isExists = true;\r\n }\r\n })\r\n if (!isExists) {\r\n var postTagObj = {\r\n \"description\": value,\r\n \"active\": true,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"companyid\": this.userdata.companyid,\r\n \"color\": \"\",\r\n \"pg\": this.params.type,\r\n }\r\n this.disableSaveBtn = true;\r\n this.loader.start();\r\n this.commoanService.postTags(postTagObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.disableSaveBtn = false;\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getTags();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n // Clear the input value\r\n event.chipInput!.clear();\r\n this.tagCtrl.setValue(null);\r\n }\r\n\r\n removeTag(tag: string): void {\r\n const index = this.tags.indexOf(tag);\r\n if (index >= 0) {\r\n this.tags.splice(index, 1);\r\n }\r\n }\r\n\r\n selected(event: MatAutocompleteSelectedEvent): void {\r\n this.tags.push(event.option.viewValue);\r\n this.tagInput = '';\r\n this.tagCtrl.setValue(null);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n return this.allTags.filter(tag => tag.toLowerCase().includes(filterValue));\r\n }\r\n //#endregion filter mat-chips\r\n\r\n getTrackingNotes() {\r\n this.commoanService.getTrackingNotes(this.params.id, this.params.type).subscribe(res => {\r\n this.trackingNotes = res;\r\n environment.production ? '' : console.log('tracking notes data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading tracking notes data ', err);\r\n });\r\n }\r\n //#region post Tracking\r\n postTrackingNotes() {\r\n if (this.tracking.notes == undefined || this.tracking.notes == null || !this.tracking.notes || this.tracking.notes == '') {\r\n this.toastr.Error('Please enter notes');\r\n return;\r\n }\r\n // if (this.tags.length == 0) {\r\n // this.toastr.Error('Please enter action');\r\n // return;\r\n // }\r\n\r\n var tags = null;\r\n if (this.tags.length > 0) {\r\n this.tags.forEach((t, i) => {\r\n if (tags == undefined || tags == null) {\r\n tags = t;\r\n } else {\r\n tags += ',' + t;\r\n }\r\n });\r\n }\r\n var trackObj = {\r\n 'id': null,\r\n 'notes': this.tracking.notes,\r\n 'tags': tags,\r\n 'pg': this.params.type,\r\n 'ref_id': this.params.id,\r\n 'createby': this.userdata.email,\r\n 'createdate': this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n 'updateby': null,\r\n 'updatedate': null,\r\n 'companyid': this.userdata.companyid,\r\n 'status': this.tracking.status,\r\n }\r\n environment.production ? '' : console.log('post req', JSON.stringify(trackObj));\r\n this.loader.start();\r\n this.commoanService.postTrackingNotes(trackObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.tracking.notes = null;\r\n this.tags = [];\r\n this.getTrackingNotes();\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading Tracking data', err);\r\n });\r\n }\r\n //#endregion post Tracking\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{tracking.title}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'trackingnotes.Modal_Table.Column1' | translate }}{{ 'trackingnotes.Modal_Table.Column2' | translate }}{{ 'trackingnotes.Modal_Table.Column3' | translate }}{{ 'trackingnotes.Modal_Table.Column4' | translate }}{{ 'trackingnotes.Modal_Table.Column5' | translate }}
    {{item.notes}} {{item.tags}}\r\n {{item.status}}{{item.createby}}{{item.createdate | date:format}}
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport * as moment from 'moment';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { accountServices } from '../../accounts/account.service';\r\nimport { GenericprintComponent } from '../genericprint/genericprint.component';\r\nimport { MasterdataComponent } from '../masterdata/masterdata.component';\r\n\r\n@Component({\r\n selector: 'app-vendorpayment',\r\n templateUrl: './vendorpayment.component.html',\r\n styleUrls: ['./vendorpayment.component.scss']\r\n})\r\nexport class VendorpaymentComponent implements OnInit {\r\n fullScreen = false;\r\n payBillData: any = {\r\n payment_type: 'normal',\r\n mop: '',\r\n checkbookid: '',\r\n notify: '0',\r\n change: '0.00',\r\n amt: '0.00',\r\n leave_debit: false,\r\n bankid: ''\r\n };\r\n paybill: any = {\r\n payment: '',\r\n checkbook: '',\r\n };\r\n public arrowicon: boolean = true;\r\n paidTotal: any = 0;\r\n baseTotal: any = 0;\r\n public isShow: boolean = false;\r\n totalDue: any;\r\n supplierlist: any = []\r\n decimal: any;\r\n paymentTypes: any = [];\r\n paymentMethods: any = [];\r\n checkbookList: any = [];\r\n @Input('id') id;\r\n public projectData = []\r\n duepayments: any = [];\r\n isshowduepayments = false;\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n maincheckbox: any;\r\n selectedMOP: any;\r\n currencyList: any = [];\r\n companyBanks: any = [];\r\n isShowCheckBook = false;\r\n fxLossGain: any = 0;\r\n receivedBaseAmount: any = 0;\r\n paidCurrTotal: any = 0;\r\n dueBaseTotal: any = 0;\r\n constructor(private activeModal: NgbActiveModal, private appService: AppServices, public toastr: NotificationService, private modalService: NgbModal, private loader: NgxUiLoaderService, private service: accountServices, private commanService: CommonServices, private datepipe: DatePipe, private toaster: ToastrService) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n this.decimal = this.userdata.decimals_allowed;\r\n //date range by default 30 days added\r\n this.paybill.enddate = this.userdata.enddate;\r\n this.paybill.fromdate = moment().subtract(30, 'days').format('YYYY-MM-DD');\r\n this.commanService.getComboEnums('paymenttype').subscribe(res => {\r\n this.paymentTypes = res;\r\n }, err => {\r\n });\r\n this.appService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n }, err => {\r\n });\r\n this.getpaymentMethods();\r\n }\r\n setChequeBookFieldsNull() {\r\n this.isShowCheckBook = false;\r\n this.payBillData.checkbookid = '';\r\n this.payBillData.number = '';\r\n }\r\n getPaymentAccounts() {\r\n var type = '';\r\n this.paymentMethods.forEach(item => {\r\n if (item.Value == this.payBillData.mop) {\r\n type = item.Value1 ? item.Value1 : '';\r\n }\r\n })\r\n this.commanService.getCompMOPBankList(this.payBillData.mop).subscribe(res => {\r\n this.companyBanks = res;\r\n }, err => {\r\n });\r\n this.setChequeBookFieldsNull();\r\n }\r\n //open Master Modal code\r\n openPaymentModal() {\r\n // var modalRef = this.modalService.open(MasterdataComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n var modalRef = null;\r\n modalRef = this.modalService.open(MasterdataComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' });\r\n modalRef.componentInstance.paymentmethod = 'paymentmethod';\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.paybill.supplierid = this.id;\r\n var editDataForHeader = '';\r\n this.commanService.headerEditItemData.next(editDataForHeader); //end '\r\n this.getPayBillData();\r\n }\r\n searchPaybill() {\r\n this.paybill.fromdate = this.datepipe.transform(this.paybill.fromdate, this.userdata.postdatetimeformat);\r\n this.paybill.enddate = this.datepipe.transform(this.paybill.enddate, this.userdata.postdatetimeformat);\r\n this.getPayBillData();\r\n }\r\n\r\n getPayBillData() {\r\n this.loader.start();\r\n this.service.getPaybill('', this.paybill.supplierid, 'supplier', this.paybill.fromdate, this.paybill.enddate).subscribe(data => {\r\n this.loader.stop();\r\n this.payBillData = data;\r\n this.dueBaseTotal = 0;\r\n this.payBillData.notify = '0';\r\n this.payBillData.mop = this.payBillData.mop ? this.payBillData.mop : '';\r\n this.payBillData.checkbookid = this.payBillData.checkbookid ? this.payBillData.checkbookid : '';\r\n this.payBillData.bankid = this.payBillData.bankid ? this.payBillData.bankid : '';\r\n this.payBillData.payment_type = 'normal';\r\n environment.production ? '' : console.log('paybill data', this.payBillData);\r\n if (this.payBillData.duebills) {\r\n this.paidTotal = 0\r\n this.duepayments = this.payBillData.duebills;\r\n this.duepayments.forEach(pay => {\r\n if (pay.ttype == 1) {\r\n pay.type = 'Purchase Order';\r\n } else if (pay.ttype == 2) {\r\n pay.type = 'Purchase Invoice';\r\n } else if (pay.ttype == 3) {\r\n pay.type = 'Expense';\r\n }\r\n pay.duebasetotal = (pay.roe ? Number(pay.roe) : 1) * (pay.bal ? Number(pay.bal) : 0);\r\n this.dueBaseTotal += Number(pay.duebasetotal);\r\n pay.duebasetotal = pay.duebasetotal ? Number(pay.duebasetotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n pay.basetotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n pay.paidbasecurrtotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n this.dueBaseTotal = this.dueBaseTotal ? Number(this.dueBaseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.baseTotal = Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n if (this.duepayments.length > 0) {\r\n this.isshowduepayments = true;\r\n }\r\n }\r\n this.payBillData.availbalance = this.payBillData.availbalance ? Number(this.payBillData.availbalance).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.calculateLineItemTotal();\r\n if (this.userdata.currency) {\r\n this.selectROE()\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n clickEvent() {\r\n this.arrowicon = !this.arrowicon;\r\n }\r\n\r\n selectSupplier(item) {\r\n this.paybill.supplierid = Number(item.Value);\r\n this.paybill.fromdate = this.datepipe.transform(this.paybill.fromdate, this.userdata.postdatetimeformat);\r\n this.paybill.enddate = this.datepipe.transform(this.paybill.enddate, this.userdata.postdatetimeformat);\r\n this.getPayBillData();\r\n }\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n getpaymentMethods() {\r\n this.commanService.getPaymentMethods().subscribe(res => {\r\n this.paymentMethods = res;\r\n environment.production ? '' : console.log('payment method data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n }\r\n getCheckBooks() {\r\n this.commanService.getCheckBooks(this.payBillData.bankid).subscribe(res => {\r\n this.checkbookList = res;\r\n }, err => {\r\n });\r\n }\r\n getCheckBookNos() {\r\n this.commanService.getCheckBookNos(this.payBillData.checkbookid).subscribe((res: any) => {\r\n this.payBillData.number = res.refid;\r\n environment.production ? '' : console.log('checkbookNos data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading checkbookNos data', err);\r\n });\r\n }\r\n\r\n selectCheckBooks() {\r\n this.selectedMOP = null;\r\n this.setChequeBookFieldsNull();\r\n if (this.payBillData.mop == '') {\r\n return;\r\n }\r\n this.paymentMethods.forEach(mop => {\r\n if (mop.Value == this.payBillData.mop) {\r\n this.selectedMOP = mop;\r\n }\r\n })\r\n if (this.selectedMOP.Value1 == 'cheque') {\r\n this.isShowCheckBook = true;\r\n this.getCheckBooks();\r\n }\r\n }\r\n\r\n onFocused($event) {\r\n // this.vendor.clear();\r\n }\r\n\r\n\r\n updatePayAmt() {\r\n if (this.payBillData.amt == undefined || this.payBillData.amt == null || this.payBillData.amt == '') {\r\n this.payBillData.amt = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n if (Number(this.payBillData.amt) > Number(this.paidTotal)) {\r\n this.payBillData.change = Number(this.payBillData.amt) - Number(this.paidTotal);\r\n } else {\r\n this.payBillData.change = 0;\r\n }\r\n this.payBillData.change = Number(this.payBillData.change).toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n calculateLineItemTotal() {\r\n this.paidTotal = 0;\r\n this.totalDue = 0;\r\n this.payBillData.amt = 0;\r\n this.fxLossGain = 0;\r\n this.receivedBaseAmount = 0;\r\n this.baseTotal = 0;\r\n this.payBillData.change = Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.maincheckbox = true;\r\n this.duepayments.forEach(element => {\r\n if (element.pay > element.bal) {\r\n element.pay = Number(element.bal);\r\n element.checked = true;\r\n } else if (element.pay > 0) {\r\n element.checked = true;\r\n }\r\n if (element.checked) {\r\n element.pay = (element.pay > 0) ? Number(element.pay).toFixed(this.userdata.decimals_allowed) : Number(element.bal).toFixed(this.userdata.decimals_allowed);\r\n } else {\r\n this.maincheckbox = false;\r\n element.pay = Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n this.paidTotal += Number(element.pay);\r\n this.totalDue += Number(element.bal);\r\n element.bal = Number(element.bal).toFixed(this.userdata.decimals_allowed);\r\n\r\n element.basetotal = (element.roe ? Number(element.roe) : 1) * (element.pay ? Number(element.pay) : 0);\r\n this.baseTotal += Number(element.basetotal);\r\n element.basetotal = element.basetotal ? Number(element.basetotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n element.paidbasecurrtotal = (element.pay ? element.pay : 0) * (this.payBillData.roe ? this.payBillData.roe : 1);\r\n element.paidbasecurrtotal = element.paidbasecurrtotal ? Number(element.paidbasecurrtotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n });\r\n this.baseTotal = this.baseTotal ? Number(this.baseTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n this.payBillData.tendered_amt = Number(this.paidTotal).toFixed(this.userdata.decimals_allowed);\r\n this.paidTotal = Number(this.paidTotal).toFixed(this.userdata.decimals_allowed);\r\n this.totalDue = Number(this.totalDue).toFixed(this.userdata.decimals_allowed);\r\n this.payBillData.amt = this.paidTotal;\r\n\r\n this.paidCurrTotal = Number(this.paidTotal) * (this.payBillData.roe ? this.payBillData.roe : 1);\r\n this.paidCurrTotal = this.paidCurrTotal ? Number(this.paidCurrTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.fxLossGain = (this.baseTotal ? Number(this.baseTotal) : 0) - (this.paidCurrTotal ? Number(this.paidCurrTotal) : 0);\r\n this.fxLossGain = this.fxLossGain ? Number(this.fxLossGain).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n this.receivedBaseAmount = (((this.payBillData.tendered_amt ? Number(this.payBillData.tendered_amt) : 0) - (this.payBillData.change ? Number(this.payBillData.change) : 0)) * Number(this.payBillData.roe ? this.payBillData.roe : 0));\r\n this.receivedBaseAmount = this.receivedBaseAmount ? Number(this.receivedBaseAmount).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n\r\n }\r\n billPayment() {\r\n var duebills = [];\r\n this.duepayments.forEach(element => {\r\n if (element.checked == true) {\r\n duebills.push(element);\r\n }\r\n });\r\n if (!this.payBillData.mop) {\r\n this.toastr.Error(\"Please select payment method\");\r\n return false;\r\n }\r\n\r\n if (!this.payBillData.bankid) {\r\n this.toastr.Error(\"Please select Bank name\");\r\n return false;\r\n }\r\n if (this.selectedMOP.Value1 == 'cheque' && this.payBillData.number == '') {\r\n this.toastr.Error(\"Please select payment cheque\");\r\n return;\r\n }\r\n\r\n if (!this.payBillData.currency) {\r\n this.toastr.Error(\"Please select Currency\");\r\n return;\r\n }\r\n\r\n if (this.payBillData.amt == undefined || this.payBillData.amt == null || this.payBillData.amt <= 0) {\r\n this.toastr.Error(\"Please enter amount\");\r\n return;\r\n }\r\n if (Number(this.payBillData.amt) < this.paidTotal) {\r\n this.toastr.Error('Please check payment amount, it can not be less than bill payment grand total');\r\n return;\r\n }\r\n if (!this.payBillData.currency) {\r\n this.toastr.Error('Please select currency');\r\n return;\r\n }\r\n if (this.payBillData.memo == undefined || this.payBillData.memo == null || this.payBillData.memo == '') {\r\n this.toastr.Error(\"Please enter memo\");\r\n return;\r\n }\r\n var postData = {\r\n \"id\": null,\r\n \"notes\": this.payBillData.notes,\r\n \"memo\": this.payBillData.memo,\r\n \"change\": this.payBillData.leave_debit ? this.payBillData.change : 0,\r\n \"leave_debit\": this.payBillData.leave_debit,\r\n \"number\": this.payBillData.number,\r\n \"currency\": this.payBillData.currency,\r\n \"amt\": this.payBillData.change > 0 ? (Number(this.payBillData.amt) - Number(this.payBillData.change)).toFixed(this.userdata.decimals_allowed) : Number(this.payBillData.amt).toFixed(this.userdata.decimals_allowed),\r\n \"tendered_amt\": Number(this.payBillData.amt),\r\n \"availbalance\": this.payBillData.availbalance,\r\n \"companyid\": this.userdata.companyid,\r\n \"checkbookid\": this.payBillData.checkbookid,\r\n \"notify\": this.payBillData.notify,\r\n \"mop\": Number(this.payBillData.mop),\r\n \"payment_type\": this.payBillData.payment_type,\r\n \"trandate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"createby\": this.userdata.email,\r\n \"companyname\": this.userdata.compayname,\r\n \"phone\": this.userdata.phone,\r\n \"duebills\": duebills,\r\n \"roe\": this.payBillData.roe,\r\n \"bankid\": this.payBillData.bankid,\r\n \"fx_loss_gain\": this.fxLossGain,\r\n \"party_name\": this.payBillData.party_name,\r\n \"partyid\": this.payBillData.partyid,\r\n \"party_type\": 'supplier'\r\n }\r\n environment.production ? '' : console.log(JSON.stringify(postData));\r\n this.loader.start();\r\n this.service.postBillPayment(postData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n this.maincheckbox = false;\r\n this.getPayBillData();\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n onChange() {\r\n if (this.maincheckbox) {\r\n this.duepayments.forEach(element => {\r\n element.checked = true;\r\n element.pay = Number(element.bal);\r\n });\r\n } else {\r\n this.duepayments.forEach(element => {\r\n element.checked = false;\r\n element.pay = 0;\r\n });\r\n }\r\n this.calculateLineItemTotal();\r\n }\r\n onItemChange(item) {\r\n if (item.checked) {\r\n item.pay = Number(item.bal);\r\n } else {\r\n item.pay = 0;\r\n }\r\n this.calculateLineItemTotal();\r\n }\r\n print(item) {\r\n var printtype;\r\n if (item.ttype == 1) {\r\n printtype = 'printpo';\r\n } else if (item.ttype == 2) {\r\n printtype = 'printpi';\r\n } else if (item.ttype == 3) {\r\n printtype = 'printe';\r\n }\r\n var modalRef = null;\r\n modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg' })\r\n modalRef.componentInstance.id = item.refid;\r\n modalRef.componentInstance.name = printtype;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n selectROE() {\r\n this.currencyList.forEach(element => {\r\n if (this.payBillData.currency == element.Value) {\r\n this.payBillData.roe = Number(element.Value2).toFixed(this.userdata.decimals_allowed) ? Number(element.Value2).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }\r\n else if (!this.payBillData.currency) {\r\n this.payBillData.roe = '';\r\n }\r\n })\r\n }\r\n getCurrentROE() {\r\n if (!this.payBillData.currency) {\r\n this.toaster.error('Please select currency');\r\n return;\r\n }\r\n this.loader.start();\r\n this.commanService.getExchangeRate(this.userdata.currency, this.payBillData.currency).subscribe(res => {\r\n this.loader.stop();\r\n this.payBillData.roe = res ? Number(res).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    Supplier Payment\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    PS: Filter supplier payables as per supplier name and\r\n between\r\n date\r\n range then provide payment method and enter amount to be paid and choose bills from list and\r\n Save it.
    \r\n
    \r\n

    Supplier Name: {{payBillData.party_name}}

    \r\n
    Balance: {{payBillData.availbalance}}
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Payment Method is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Bank Name is\r\n required
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Please select Check Book
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Memo is\r\n required
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Amount is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Currency is\r\n required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Due Payments:

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    TypeBill Ref#DateStatusCurr.Total DueTotal Due({{userdata.currency}})Paid AmtBase Total ({{userdata.currency}})Paid Amt({{userdata.currency}})Action
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {{item.type}}\r\n \r\n {{item.billref}}\r\n \r\n {{item.billdate | date: userdata.date_format}}\r\n \r\n {{item.status}}\r\n {{item.currency}}\r\n {{item.bal}}{{item.duebasetotal}}\r\n \r\n \r\n {{item.basetotal}}\r\n {{item.paidbasecurrtotal}}\r\n \r\n
    \r\n \r\n
      \r\n
    • Print
    • \r\n
    \r\n
    \r\n
    Totals{{ totalDue }}{{ dueBaseTotal }}\r\n {{paidTotal}}\r\n {{ baseTotal }}\r\n {{ paidCurrTotal}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\n\r\n@Component({\r\n selector: 'app-openingbalance',\r\n templateUrl: './openingbalance.component.html',\r\n styleUrls: ['./openingbalance.component.scss']\r\n})\r\nexport class OpeningbalanceComponent implements OnInit {\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal, private loader: NgxUiLoaderService,\r\n private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n ) { }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n ngOnInit(): void {\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n}\r\n","\r\n
    \r\n
    Opening Balance\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    ","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { PosComponent } from './pos.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: PosComponent,\r\n data: {\r\n title: \"Point of sale\",\r\n breadcrumb: \"Point of sale\"\r\n }\r\n }\r\n]\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class PosRoutingModule { }","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { AbstractControl, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgbModal, NgbModalOptions } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport * as moment from 'moment';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { AppServices } from 'src/app/shared/service/app.services';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { BinlocationsListComponent } from '../inventory/products/modal/binlocations/binlocations.component';\r\nimport { ItemanalysisComponent } from '../inventory/products/modal/itemanalysis/itemanalysis.component';\r\nimport { ItemCompatibilityComponent } from '../inventory/products/modal/itemcompatibility/itemcompatibility.component';\r\nimport { PurchasehistoryComponent } from '../inventory/products/modal/purchasehistory/purchasehistory.component';\r\nimport { AssemblycatalogComponent } from '../modal/assemblycatalog/assemblycatalog.component';\r\nimport { AuthorizationModalComponent } from '../modal/authorization/authorization.component';\r\nimport { ComposeemailComponent } from '../modal/composeemail/composeemail.component';\r\nimport { CustomerlistComponent } from '../modal/customerlist/customerlist.component';\r\nimport { GenericprintComponent } from '../modal/genericprint/genericprint.component';\r\nimport { PickuporderComponent } from '../modal/pickuporder/pickuporder.component';\r\nimport { ProjjoblistmodalComponent } from '../modal/projjoblistmodal/projjoblistmodal.component';\r\nimport { PurchaserequestComponent } from '../modal/purchaserequest/purchaserequest.component';\r\nimport { QuickaddproductComponent } from '../modal/quickaddproduct/quickaddproduct.component';\r\nimport { QuotemodalComponent } from '../modal/quotemodal/quotemodal.component';\r\nimport { SalesrequestComponent } from '../modal/salesrequest/salesrequest.component';\r\nimport { SerialsmodalComponent } from '../modal/serialsmodal/serialsmodal.component';\r\nimport { SinglereceivepaymentComponent } from '../modal/singlereceivepayment/singlereceivepayment.component';\r\nimport { purchaseServices } from '../purchase/purchase.service';\r\nimport { SalesServices } from '../Sales/sales.service';\r\nimport { SchedulerServices } from '../scheduler/scheduler.service';\r\nimport { CustomerslistComponent } from '../servicemanager/servicecontracts/customerlist/customerlist.component';\r\nimport { OpeningbalanceComponent } from './openingbalance/openingbalance.component';\r\nimport { POSServices } from './pos.service';\r\nimport { IDropdownSettings } from 'ng-multiselect-dropdown';\r\n\r\n@Component({\r\n selector: 'app-pos',\r\n templateUrl: './pos.component.html',\r\n styleUrls: ['./pos.component.scss']\r\n})\r\nexport class PosComponent implements OnInit, OnDestroy {\r\n @ViewChild('Customer') Customer;\r\n @ViewChild('Project') Project;\r\n @ViewChild('Department') Department;\r\n @ViewChild('Category') Category;\r\n @ViewChild('SubCatg') SubCatg;\r\n @ViewChild(CustomerslistComponent, { static: false }) CustomersComponent: CustomerslistComponent;\r\n @ViewChild(ProjjoblistmodalComponent, { static: false }) ProjectsComponent: ProjjoblistmodalComponent;\r\n public isShow: boolean = false\r\n pipe = new DatePipe('en-US');\r\n\r\n // Department\r\n setDepartmentValue: any;\r\n departmentKeyword = 'name';\r\n validatedept: any;\r\n\r\n // Category\r\n setCategoryValue: any;\r\n categoryKeyword = 'name';\r\n validateCateg: any;\r\n\r\n // Sub Category\r\n setSubCatgValue: any;\r\n subCatgKeyword = 'name';\r\n validatesubcatg: any;\r\n\r\n intervalId;\r\n today = null;\r\n closeResult: string;\r\n isCollapsed: boolean = true;\r\n multiPayment = [1];\r\n keyword = 'name';\r\n customer: any = {\r\n showmulticurrencyonreceipts: false,\r\n billactualhrs: false,\r\n authorizationreq: false,\r\n billindividual: false,\r\n latefee_enable: false,\r\n billsbyemail: false,\r\n billsbyprint: false,\r\n monthlyarstatements: false,\r\n rph: 0,\r\n creditlimit: 0,\r\n discount: 0,\r\n latefee: 0,\r\n status: 'active',\r\n creditstatus: 'inactive',\r\n customertype: '',\r\n currency: '',\r\n latefee_type: 'percentage',\r\n parentid: '',\r\n }\r\n editSetCustomer: any;\r\n currencyList: any = [];\r\n creditStatusList: any;\r\n customerTypeList: any = [];\r\n latefeeTypeList: any = [];\r\n projectStatusList: any = [];\r\n searchItem: any = {\r\n pricingtype: 'retail',\r\n deptid: '',\r\n categoryid: '',\r\n subcategoryid: '',\r\n searchtext: '',\r\n qtyonhand: true\r\n }\r\n proj: any = {};\r\n project: any = {\r\n status: '',\r\n }\r\n projectTypeList: any = [];\r\n editSetProjType: any;\r\n ProjTypeInputValue: any;\r\n ProjStatusInputValue: any;\r\n editSetProjStatus: any;\r\n productList: any;\r\n categoryList: any = [];\r\n subCategoryList: any = [];\r\n departmentList: any = [];\r\n isReturnOrder: any = false;\r\n postOrder: any;\r\n paying: any = {\r\n cash: 0,\r\n checks: 0,\r\n creditcard: 0,\r\n debitcard: 0,\r\n change: 0,\r\n duebalance: 0,\r\n memo: '',\r\n isauthorizecredit: false,\r\n onaccount: 0\r\n }\r\n orderEnteries: any = [];\r\n totalItems: any = 0;\r\n itemTotal: any = 0;\r\n uploader: FileUploader;\r\n response: string;\r\n userdata: any;\r\n custStatusList: any = [];\r\n orderStatusList: any = [];\r\n deptList: any = [];\r\n appName = environment.APP_NAME;\r\n submitted = false;\r\n orderTotal: any = 0;\r\n totalDisc: any = 0;\r\n totalTax: any = 0;\r\n totalShipping: any = 0;\r\n projectList: any = [];\r\n projectListData: any = []\r\n projectName: any = 'name';\r\n customerinfo: any = {\r\n discount: 0,\r\n name: null\r\n };\r\n technicianList: any = [];\r\n techkeyword: any = 'title';\r\n tickeList: any = [];\r\n itemPictures: any = [];\r\n priceingTypeList: any = [];\r\n closingReport: any;\r\n additionaltermsfilter: any;\r\n soTermsList: any = [];\r\n customloader=false;\r\n public customerForm: FormGroup = new FormGroup({\r\n name: new FormControl(''),\r\n shortname: new FormControl(''),\r\n tpaccno: new FormControl(''),\r\n customertype: new FormControl(''),\r\n currency: new FormControl(''),\r\n showmulticurrencyonreceipts: new FormControl(''),\r\n creditperiod: new FormControl(''),\r\n creditlimit: new FormControl(''),\r\n creditstatus: new FormControl(''),\r\n rph: new FormControl(''),\r\n billactualhrs: new FormControl(''),\r\n discount: new FormControl(''),\r\n latefee_enable: new FormControl(''),\r\n latefee_type: new FormControl(''),\r\n latefee: new FormControl(''),\r\n parentid: new FormControl(''),\r\n status: new FormControl(''),\r\n accountno: new FormControl(''),\r\n monthlyarstatements: new FormControl(''),\r\n authorizationreq: new FormControl(''),\r\n // contact tab\r\n poc: new FormControl(''),\r\n primaryphone: new FormControl(''),\r\n secondaryphone: new FormControl(''),\r\n fax: new FormControl(''),\r\n mainemail: new FormControl(''),\r\n secondaryemail: new FormControl(''),\r\n //Billing Address Tab\r\n billaddress1: new FormControl(''),\r\n billaddress2: new FormControl(''),\r\n billaddress3: new FormControl(''),\r\n billaddress4: new FormControl(''),\r\n billindividual: new FormControl(''),\r\n billsbyemail: new FormControl(''),\r\n billsbyprint: new FormControl(''),\r\n //Shipping Address Tab\r\n shipaddress1: new FormControl(''),\r\n shipaddress2: new FormControl(''),\r\n shipaddress3: new FormControl(''),\r\n shipaddress4: new FormControl(''),\r\n terms: new FormControl(''),\r\n notes: new FormControl(''),\r\n });\r\n payment: any = {\r\n mop: '',\r\n techid: ''\r\n };\r\n paymentMethodList: any = [];\r\n paymentTypeList: any = []\r\n recentOrders: any = {\r\n fdate: null,\r\n edate: null,\r\n type: '',\r\n status: '',\r\n tpsync: '',\r\n searchtxt: ''\r\n };\r\n stringData: any;\r\n recentOrderList: any = [];\r\n ngbModalOptions: NgbModalOptions = {\r\n backdrop: 'static',\r\n keyboard: false,\r\n ariaLabelledBy: 'modal-basic-title',\r\n size: 'xl',\r\n windowClass: 'index-class', backdropClass: 'index-backdrop'\r\n };\r\n productSellUOMList: any = [];\r\n discountTypeList: any = [];\r\n taxesList: any = [];\r\n soOrderTypes: any = [];\r\n paymentTermsList: any = [];\r\n currentDateTime: any;\r\n totalPages: any = 0;\r\n currentPage: any = 1;\r\n selectedTypes: any = [];\r\n hideRightNav: boolean = true;\r\n hideLeftNav: boolean = false;\r\n totalRows: any = 0;\r\n dropdownTypeSettings: IDropdownSettings;\r\n // @ViewChild('openingbalance') openingbalance;\r\n private langChangeSubscription: Subscription;\r\n constructor(private toastr: NotificationService, private titleService: Title, private purchaseService: purchaseServices, private schedulerService: SchedulerServices, private commoanService: CommonServices, private appService: AppServices, private salesServices: SalesServices, private formBuilder: FormBuilder, private route: ActivatedRoute, private loader: NgxUiLoaderService, private router: Router, private datePipe: DatePipe, private service: POSServices, private commonService: CommonServices, private modalService: NgbModal,\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appName + 'userprofile'));\r\n this.initialize();\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n //#region fromdate & Todate\r\n // this.recentOrders.fdate = this.userdata.fromdate;\r\n this.recentOrders.edate = moment().add(1, 'days').format('YYYY-MM-DD');\r\n this.recentOrders.fdate = moment().subtract(1, 'days').format('YYYY-MM-DD');\r\n this.commonService.getCurrency().subscribe(res => {\r\n this.currencyList = res;\r\n environment.production ? '' : console.log('currency data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading currency data', err);\r\n });\r\n this.commonService.getComboEnums('customercreditstatus').subscribe(res => {\r\n this.creditStatusList = res;\r\n environment.production ? '' : console.log('customer creditStatusList data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading customer types list data', err);\r\n });\r\n this.commonService.getComboEnums('orderpricingtype').subscribe(res => {\r\n this.priceingTypeList = res;\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading customer types list data', err);\r\n });\r\n this.commonService.getComboEnums('latefeetype').subscribe(res => {\r\n this.latefeeTypeList = res;\r\n environment.production ? '' : console.log('fees type data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading fees type data', err);\r\n });\r\n this.commonService.getComboEnums('orderstatus').subscribe(res => {\r\n this.orderStatusList = res;\r\n environment.production ? '' : console.log('orderstatus data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading orderstatus data', err);\r\n });\r\n this.commonService.getComboEnums('customerstatus').subscribe(res => {\r\n this.custStatusList = res;\r\n }, err => {\r\n });\r\n this.commonService.getComboEnums('paymenttype').subscribe(res => {\r\n this.paymentTypeList = res;\r\n environment.production ? '' : console.log('payment types data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment types data', err);\r\n });\r\n this.commoanService.getComboEnums('discounttype').subscribe(res => {\r\n this.discountTypeList = res;\r\n environment.production ? '' : console.log(' ptype list ', this.discountTypeList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading ptype list ', err);\r\n });\r\n this.commoanService.getTaxList('sales').subscribe(res => {\r\n this.taxesList = res;\r\n environment.production ? '' : console.log('type taxes list data ', this.taxesList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n this.schedulerService.getSchedulerResources().subscribe((res: any) => {\r\n this.technicianList = res;\r\n });\r\n this.commoanService.getComboEnums('paymentterms').subscribe(res => {\r\n this.paymentTermsList = res;\r\n environment.production ? '' : console.log(' term List ', this.paymentTermsList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading term List ', err);\r\n });\r\n // this.initializeFileUploader();\r\n this.getDepartments();\r\n this.getCategories();\r\n this.getProdUom();\r\n this.getpaymethods();\r\n this.getSalesOrderTypes();\r\n }\r\n gotoDashboard() {\r\n this.router.navigate(['/dashboard'], { replaceUrl: true });\r\n }\r\n getpaymethods() {\r\n this.commonService.getPOSPaymentMethods().subscribe(res => {\r\n this.paymentMethodList = res;\r\n this.paymentMethodList.forEach(item => {\r\n item.pay = 0;\r\n })\r\n environment.production ? '' : console.log('payment method data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading payment method data', err);\r\n });\r\n }\r\n getSalesOrderTypes() {\r\n this.soOrderTypes = []\r\n this.commoanService.getSOTypes().subscribe((res: any) => {\r\n this.soOrderTypes = res;\r\n }, err => {\r\n });\r\n }\r\n refreshScreen() {\r\n this.productList = [];\r\n this.searchItem = {\r\n pricingtype: 'retail',\r\n deptid: '',\r\n categoryid: '',\r\n subcategoryid: '',\r\n searchtext: '',\r\n qtyonhand: true\r\n }\r\n this.Department ? this.Department.clear() : '';\r\n this.Category ? this.Category.clear() : '';\r\n this.SubCatg ? this.SubCatg.clear() : '';\r\n this.Department ? this.Department.close() : '';\r\n this.Category ? this.Category.close() : '';\r\n this.SubCatg ? this.SubCatg.close() : '';\r\n this.refreshOrder();\r\n\r\n }\r\n initialize() {\r\n this.postOrder = {\r\n \"id\": null,\r\n \"ordertype\": \"\",\r\n \"companyid\": \"\",\r\n \"customerid\": \"\",\r\n \"adjustment\": 0,\r\n \"istaxable\": false,\r\n \"status\": \"\",\r\n \"orderno\": \"\",\r\n \"seq\": \"\",\r\n \"notes\": \"\",\r\n \"createby\": \"\",\r\n \"createdate\": \"\",\r\n \"updateby\": \"\",\r\n \"updatedate\": \"\",\r\n \"salesrep\": this.userdata.email,\r\n \"orderdate\": null,\r\n \"currency\": this.userdata.currency,\r\n \"title\": \"\",\r\n \"payment_terms\": \"dueonreceipt\",\r\n \"terms\": '',\r\n \"tax\": 0,\r\n \"discount\": 0,\r\n \"shippingcharges\": 0,\r\n \"holdfordays\": 0,\r\n \"returnfee\": 0,\r\n \"authorizedby\": \"\",\r\n \"authorizationnotes\": \"\",\r\n \"qbsync\": false,\r\n \"vpsync\": false,\r\n \"signfile\": \"\",\r\n \"cno\": \"\",\r\n \"projid\": \"\",\r\n \"taskid\": \"\",\r\n \"cpsync\": false,\r\n \"sagesync\": false,\r\n \"tallysync\": false,\r\n \"pricingtype\": this.userdata.default_pricing_type,\r\n \"mforderno\": \"\",\r\n \"printtotalonly\": false,\r\n \"deliverynotes\": \"\",\r\n \"deliveredon\": \"\",\r\n \"cidprooftype\": \"\",\r\n \"cidnumber\": \"\",\r\n \"cidexpiry\": \"\",\r\n \"lastaction\": \"\",\r\n \"collectedon\": \"\",\r\n \"signedby\": \"\",\r\n \"deliverytime\": \"\",\r\n \"isposted\": false,\r\n \"postdate\": \"\",\r\n \"postedby\": \"\",\r\n \"donotpost\": false,\r\n \"paiddate\": \"\",\r\n \"tags\": \"\",\r\n \"roe\": \"1\",\r\n \"rpt_link\": \"\",\r\n \"t_orderentry\": [],\r\n \"keepchange\": false,\r\n \"ticketid\": '',\r\n \"dis_amt\": 0,\r\n \"discount_type\": '',\r\n \"line_total_amt\": 0,\r\n \"total_amt\": 0,\r\n \"origin\": 'webpos',\r\n \"priority\": \"medium\",\r\n \"txntype\": \"salesorder\",\r\n }\r\n this.isReturnOrder = false;\r\n this.totalItems = 0;\r\n this.itemTotal = 0;\r\n this.totalDisc = 0;\r\n this.totalTax = 0;\r\n this.totalShipping = 0;\r\n this.orderTotal = 0;\r\n this.ProjectsComponent ? this.ProjectsComponent.selectedJob = '' : null;\r\n this.CustomersComponent ? this.CustomersComponent.selectedCustomer = '' : null;\r\n }\r\n openingbalanceModal() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(OpeningbalanceComponent, { windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n ngOnInit() {\r\n this.intervalId = setInterval(() => {\r\n this.today = this.pipe.transform(Date.now(), 'EEEE, MMMM d, y, h:mm:ss a');\r\n }, 1000);\r\n this.titleService.setTitle('POS');\r\n this.customerForm = this.formBuilder.group({\r\n name: ['', Validators.required],\r\n shortname: ['', Validators.required],\r\n tpaccno: ['', Validators.required],\r\n customertype: ['', Validators.required],\r\n currency: ['', Validators.required],\r\n showmulticurrencyonreceipts: [''],\r\n creditperiod: ['', Validators.required],\r\n creditlimit: ['', Validators.required],\r\n creditstatus: ['', Validators.required],\r\n rph: ['', Validators.required],\r\n billactualhrs: [''],\r\n discount: ['', Validators.required],\r\n latefee_enable: [''],\r\n latefee_type: ['', Validators.required],\r\n latefee: ['', Validators.required],\r\n parentid: [''],\r\n status: ['', Validators.required],\r\n accountno: ['', Validators.required],\r\n monthlyarstatements: [''],\r\n authorizationreq: [''],\r\n // contact tab\r\n poc: ['', Validators.required],\r\n primaryphone: ['', Validators.required],\r\n secondaryphone: ['', Validators.required],\r\n fax: [''],\r\n mainemail: ['', Validators.required],\r\n secondaryemail: [''],\r\n //Billing Address Tab\r\n billaddress1: ['', Validators.required],\r\n billaddress2: ['', Validators.required],\r\n billaddress3: [''],\r\n billaddress4: [''],\r\n billindividual: [''],\r\n billsbyemail: [''],\r\n billsbyprint: [''],\r\n //Shipping Address Tab\r\n shipaddress1: ['', Validators.required],\r\n shipaddress2: ['', Validators.required],\r\n shipaddress3: [''],\r\n shipaddress4: [''],\r\n terms: [''],\r\n notes: [''],\r\n })\r\n this.getSOTerms();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n this.dropdownTypeSettings = {\r\n singleSelection: false,\r\n idField: 'Value',\r\n textField: 'Text',\r\n selectAllText: 'Select All',\r\n unSelectAllText: 'UnSelect All',\r\n itemsShowLimit: 2,\r\n allowSearchFilter: true\r\n }\r\n }\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n get f(): { [key: string]: AbstractControl } {\r\n return this.customerForm.controls;\r\n }\r\n getPOSOrderById(id, type) {\r\n this.closeModal();\r\n this.loader.start();\r\n this.service.getPOSOrderByID(id).subscribe(res => {\r\n this.loader.stop();\r\n this.postOrder = res;\r\n this.customerinfo = this.postOrder.customerinfo;\r\n this.orderEnteries = this.postOrder ? this.postOrder.orderLines : [];\r\n if (type == 'return' || type == 'clone') {\r\n this.customerinfo = type == 'clone' ? { discount: 0, name: null } : this.customerinfo;\r\n this.isReturnOrder = type == 'return' ? true : false;\r\n this.postOrder.id = null;\r\n this.postOrder.customerid = type == 'return' ? this.postOrder.customerid : null;\r\n this.postOrder.ordertype = '';\r\n this.postOrder.txntype = type == 'return' && this.postOrder.txntype == 'salesorder' ? 'salesreturn' : type == 'return' && this.postOrder.txntype == 'salesreceipt' ? 'receiptreturn' : 'salesorder';\r\n this.postOrder.cno = type == 'return' ? this.postOrder.orderno : '';\r\n this.postOrder.title = type == 'return' ? this.postOrder.title : '';\r\n this.postOrder.t_ordertransactions = (type == 'return' || type == 'clone') ? [] : this.postOrder.t_ordertransactions;\r\n this.postOrder.vpsync = false;\r\n this.postOrder.payment_terms = 'net30';\r\n this.postOrder.terms = '';\r\n this.postOrder.orderno = null;\r\n this.orderEnteries.forEach(item => {\r\n item.id = null;\r\n item.createdate = this.datePipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n item.createby = this.userdata.email;\r\n item.updateby = null;\r\n item.updatedate = null;\r\n item.orderid = null;\r\n item.deletedate = null;\r\n item.deleteby = null;\r\n item.active = true;\r\n item.qtyrtd = 0;\r\n item.serial = type == 'clone' ? '' : item.serial\r\n })\r\n } else {\r\n this.isReturnOrder = false;\r\n }\r\n this.setSOTerms();\r\n this.calculateOrderTotal();\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n setTerms() {\r\n if (this.postOrder.title != '' && this.postOrder.title != null) {\r\n this.postOrder.payment_terms = 'net30';\r\n } else {\r\n this.postOrder.payment_terms = 'dueonreceipt';\r\n }\r\n }\r\n\r\n selectSerials(index, item) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(SerialsmodalComponent, { size: 'sm' });\r\n modalRef.componentInstance.serials = item.serial;\r\n modalRef.componentInstance.selectedSerial = item.selectedSerial ? item.selectedSerial : '';\r\n modalRef.result.then((result: any) => {\r\n if (result) {\r\n var srls = result.split(',');\r\n item.qty = srls.length;\r\n item.selectedSerial = result;\r\n this.calculateLineItemTotal(item);\r\n this.toastr.Success('Submitted');\r\n }\r\n }).catch((error) => {\r\n });\r\n }\r\n\r\n getDepartments() {\r\n this.loader.start();\r\n this.commoanService.getDepartmentList(false).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.departmentList = [];\r\n if (res == null) {\r\n return;\r\n }\r\n res.forEach(element => {\r\n this.departmentList.push({\r\n name: element.Text,\r\n id: element.Value\r\n })\r\n });\r\n this.getItems();\r\n environment.production ? '' : console.log(' department list data ', this.departmentList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n\r\n // ***\r\n selectDepartment(item) {\r\n environment.production ? '' : console.log('selected dept', item);\r\n this.searchItem.deptid = item.id;\r\n this.searchItem.categoryid = '';\r\n this.searchItem.subcategoryid = '';\r\n this.validateCateg = '';\r\n this.validatesubcatg = '';\r\n this.getCategories();\r\n }\r\n onAnySearchChange(item) {\r\n environment.production ? '' : console.log('selected dept', item);\r\n }\r\n inputClearedDepartment() {\r\n this.searchItem.deptid = null;\r\n // this.getCategories();\r\n environment.production ? '' : console.log('input remvoed input cleared ', this.searchItem.deptid);\r\n }\r\n onfocusedDepartment(e) {\r\n this.Department.clear();\r\n environment.production ? '' : console.log('input onfocused input cleared ', this.searchItem.deptid);\r\n }\r\n\r\n getCategories() {\r\n this.loader.start();\r\n this.commoanService.getCategory(this.searchItem.deptid, false).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.categoryList = [];\r\n if (res == null) {\r\n return;\r\n }\r\n res.forEach(element => {\r\n this.categoryList.push({\r\n name: element.Text,\r\n id: element.Value\r\n })\r\n });\r\n this.getItems();\r\n environment.production ? '' : console.log(' category list data ', this.categoryList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n // **\r\n // ***\r\n selectCategory(item) {\r\n environment.production ? '' : console.log('selected dept', item);\r\n this.searchItem.categoryid = item.id;\r\n this.searchItem.subcategoryid = '';\r\n this.validatesubcatg = '';\r\n this.getSubCategories();\r\n }\r\n\r\n inputClearedCategory() {\r\n this.searchItem.categoryid = null;\r\n environment.production ? '' : console.log('input remvoed input cleared ', this.searchItem.categoryid);\r\n }\r\n onfocusedCategory(e) {\r\n this.Category.clear();\r\n }\r\n\r\n getSubCategories() {\r\n this.loader.start();\r\n this.commonService.getSubCategory(this.searchItem.categoryid).subscribe(res => {\r\n this.loader.stop();\r\n this.subCategoryList = res;\r\n this.getItems();\r\n environment.production ? '' : console.log(' subcategory list data ', this.subCategoryList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n // ***\r\n selectSubCatg(item) {\r\n environment.production ? '' : console.log('selected dept', item);\r\n this.searchItem.subcategoryid = item.id;\r\n // this.getSubCategories();\r\n }\r\n\r\n inputClearedSubCatg() {\r\n this.searchItem.subcategoryid = null;\r\n environment.production ? '' : console.log('input remvoed input cleared ', this.searchItem.subcategoryid);\r\n }\r\n onfocusedSubCatg(e) {\r\n this.SubCatg.clear();\r\n }\r\n\r\n openAssemblyCatalog() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(AssemblycatalogComponent, this.ngbModalOptions);\r\n modalRef.componentInstance.soItemList = this.orderEnteries;\r\n modalRef.result.then((result) => {\r\n var itemList = result;\r\n if (itemList.length > 0) {\r\n itemList.forEach(item => {\r\n this.addItem(item);\r\n })\r\n }\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n openDetailsModal() {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(ProjjoblistmodalComponent, this.ngbModalOptions);\r\n modalRef.componentInstance.searhtxt = this.postOrder.title ? this.postOrder.title : '';\r\n modalRef.componentInstance.customerid = '';\r\n modalRef.result.then((result) => {\r\n if (result == null || result == '') {\r\n return;\r\n }\r\n this.customerinfo = {\r\n accountno: result.accountno,\r\n authorizationreq: result.authorizationreq,\r\n balance: result.balance ? result.balance : 0,\r\n creditlimit: result.creditlimit ? result.creditlimit : 0,\r\n currency: result.currency ? result.currency : null,\r\n deposit: result.deposit ? result.deposit : 0,\r\n discount: result.discount ? result.discount : 0,\r\n giftcard: result.giftcard ? result.giftcard : 0,\r\n id: result.customerid,\r\n loyality: result.loyalitycredit ? result.loyalitycredit : 0,\r\n mainemail: result.mainemail,\r\n name: result.customername,\r\n primaryphone: result.primaryphone,\r\n salestotal: result.salestotal ? result.salestotal : 0,\r\n shortname: result.shortname ? result.shortname : null,\r\n status: result.status ? result.status : null,\r\n tpaccno: result.tpaccno ? result.tpaccno : null\r\n };\r\n this.postOrder.customerid = result.customerid;\r\n this.postOrder.title = result.tpcode ? result.tpcode : result.proj;\r\n this.setTerms();\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n\r\n selectedJob() {\r\n this.ProjectsComponent.searchtxt = ''; //this.postOrder.title ? this.postOrder.title : '';\r\n this.ProjectsComponent.customerid = this.postOrder.customerid ? this.postOrder.customerid : '';\r\n if (this.ProjectsComponent.selectedJob) {\r\n if (this.ProjectsComponent.selectedJob == null || this.ProjectsComponent.selectedJob == '') {\r\n return;\r\n }\r\n this.customerinfo = {\r\n accountno: this.ProjectsComponent.selectedJob.accountno,\r\n authorizationreq: this.ProjectsComponent.selectedJob.authorizationreq,\r\n balance: this.ProjectsComponent.selectedJob.balance ? this.ProjectsComponent.selectedJob.balance : 0,\r\n creditlimit: this.ProjectsComponent.selectedJob.creditlimit ? this.ProjectsComponent.selectedJob.creditlimit : 0,\r\n currency: this.ProjectsComponent.selectedJob.currency ? this.ProjectsComponent.selectedJob.currency : null,\r\n deposit: this.ProjectsComponent.selectedJob.deposit ? this.ProjectsComponent.selectedJob.deposit : 0,\r\n discount: this.ProjectsComponent.selectedJob.discount ? this.ProjectsComponent.selectedJob.discount : 0,\r\n giftcard: this.ProjectsComponent.selectedJob.giftcard ? this.ProjectsComponent.selectedJob.giftcard : 0,\r\n id: this.ProjectsComponent.selectedJob.customerid,\r\n loyality: this.ProjectsComponent.selectedJob.loyalitycredit ? this.ProjectsComponent.selectedJob.loyalitycredit : 0,\r\n mainemail: this.ProjectsComponent.selectedJob.mainemail,\r\n name: this.ProjectsComponent.selectedJob.customername,\r\n primaryphone: this.ProjectsComponent.selectedJob.primaryphone,\r\n salestotal: this.ProjectsComponent.selectedJob.salestotal ? this.ProjectsComponent.selectedJob.salestotal : 0,\r\n shortname: this.ProjectsComponent.selectedJob.shortname ? this.ProjectsComponent.selectedJob.shortname : null,\r\n status: this.ProjectsComponent.selectedJob.status ? this.ProjectsComponent.selectedJob.status : null,\r\n tpaccno: this.ProjectsComponent.selectedJob.tpaccno ? this.ProjectsComponent.selectedJob.tpaccno : null\r\n };\r\n this.postOrder.customerid = this.ProjectsComponent.selectedJob.customerid;\r\n this.postOrder.title = this.ProjectsComponent.selectedJob.tpcode ? this.ProjectsComponent.selectedJob.tpcode : this.ProjectsComponent.selectedJob.proj;\r\n this.setTerms();\r\n }\r\n }\r\n openPrint(id) {\r\n var modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.id = id;\r\n modalRef.componentInstance.name = 'printso';\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n openEmailState(id) {\r\n var modalRef = this.modalService.open(ComposeemailComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n modalRef.componentInstance.id = id;\r\n modalRef.componentInstance.flag = 'sales_order';\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n doPayment(item) {\r\n var modalRef = this.modalService.open(SinglereceivepaymentComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n modalRef.componentInstance.params = {\r\n \"companyname\": item.customer,\r\n \"customerid\": item.customerid,\r\n \"status\": item.status,\r\n \"refno\": item.orderno,\r\n \"projref\": item.orderref,\r\n \"currency\": item.currency,\r\n \"bal\": item.dueamount,\r\n \"pay\": item.dueamount,\r\n \"refid\": item.id,\r\n \"ttype\": 2,//sales order transaction\r\n \"invdate\": item.orderdate,\r\n \"roe\": item.roe\r\n };\r\n modalRef.result.then((result) => {\r\n this.getPOSRecentOrders();\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n getItems() {\r\n this.customloader= true;\r\n this.service.getPOSItems(this.postOrder.pricingtype, this.searchItem.qtyonhand, this.searchItem.deptid, this.searchItem.categoryid, this.searchItem.subcategoryid, this.searchItem.searchtext).subscribe(res => {\r\n \r\n this.productList = res;\r\n this.productList.forEach(prod => {\r\n if (!prod.qtyonhand) {\r\n prod.qtyonhand = 0;\r\n }\r\n if (prod.pic) {\r\n prod.pic = environment.DOC_URL + '/' + this.userdata.companyid + '/' + prod.pic;\r\n }\r\n })\r\n this.customloader= false;\r\n environment.production ? '' : console.log(' product list data ', this.productList);\r\n }, err => {\r\n this.customloader= false;\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n initializeFileUploader() {\r\n this.uploader = new FileUploader({\r\n url: environment.API_URL,\r\n headers: [{ name: 'Authorization', value: 'Bearer ' + this.userdata.token }],\r\n disableMultipart: true, // 'DisableMultipart' must be 'true' for formatDataFunction to be called.\r\n formatDataFunctionIsAsync: true,\r\n formatDataFunction: async (item) => {\r\n return new Promise((resolve, reject) => {\r\n resolve({\r\n name: item._file.name,\r\n length: item._file.size,\r\n contentType: item._file.type,\r\n date: new Date(),\r\n companyid: this.userdata.companyid\r\n });\r\n });\r\n }\r\n });\r\n this.response = '';\r\n this.uploader.response.subscribe(res => this.response = res);\r\n }\r\n getProdUom() {\r\n this.purchaseService.getProdUom().subscribe(res => {\r\n this.productSellUOMList = res;\r\n environment.production ? '' : console.log(' prod uom list data ', this.productSellUOMList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading prod uom list ', err);\r\n });\r\n }\r\n addItem(item) {\r\n var isItemExists = false;\r\n if (this.orderEnteries.length > 0) {\r\n this.orderEnteries.forEach(element => {\r\n if (element.prodid == item.id) {\r\n element.qty++;\r\n isItemExists = true;\r\n this.calculateLineItemTotal(element);\r\n }\r\n });\r\n }\r\n if (!isItemExists) {\r\n if (item.taxid) {\r\n this.taxesList.forEach(tax => {\r\n if (tax.Value == item.taxid) {\r\n item.tax = tax.Value2;\r\n item.tax_type = tax.Value1;\r\n }\r\n })\r\n }\r\n this.orderEnteries.push({\r\n \"id\": null,\r\n \"orderid\": null,\r\n \"prodid\": item.id,\r\n \"cost\": item.cost,\r\n \"price\": item.price,\r\n \"qty\": item.qty ? item.qty : 1,\r\n \"uom\": item.uom ? item.uom : 'EA',\r\n \"description\": item.desc,\r\n \"qtyrtd\": 0,\r\n \"active\": true,\r\n \"updateby\": null,\r\n \"updatedate\": null,\r\n \"ilc\": item.ilc,\r\n \"discount\": item.geid ? 0 : (this.customerinfo.discount ? this.customerinfo.discount : (item.discount ? item.discount : 0)),\r\n \"discount_type\": this.customerinfo.discount ? 'percent' : (item.discount_type ? item.discount_type : 'percent'),\r\n \"dis_amt\": 0,\r\n \"tax\": item.tax ? item.tax : 0,\r\n \"tax_type\": item.tax_type ? item.tax_type : null,\r\n \"tax_amt\": 0,\r\n \"taxid\": item.taxid ? item.taxid : 0,\r\n \"bin\": \"\",\r\n \"isservice\": false,\r\n \"returnable\": item.retunable,\r\n \"qtyreturn\": 0,\r\n \"isserilized\": item.isserilized,\r\n \"tpcode\": item.tpcode,\r\n \"serial\": \"\",\r\n \"grp\": item.grp ? item.grp : '',\r\n \"geid\": item.geid ? item.geid : null,\r\n \"deplete_qty\": item.deplete_qty ? item.deplete_qty : 0,\r\n \"lotid\": null,\r\n \"linetype\": \"\",\r\n \"tech\": \"\",\r\n \"datecreated\": \"\",\r\n \"line_total\": 0,\r\n });\r\n this.calculateLineItemTotal(this.orderEnteries[this.orderEnteries.length - 1]);\r\n }\r\n }\r\n calculateLineItemTotal(item) {\r\n if (item.taxid) {\r\n this.taxesList.forEach(tax => {\r\n if (tax.Value == item.taxid) {\r\n item.taxid = tax.Value;\r\n item.tax = tax.Value2;\r\n item.tax_type = tax.Value1;\r\n }\r\n })\r\n } else {\r\n item.taxid = null;\r\n item.tax = 0;\r\n item.tax_type = 'amount';\r\n }\r\n var amount = Number(item.qty ? item.qty : 0) * Number(item.price ? item.price : 0);\r\n var discount = 0;\r\n if (item.discount && item.discount_type == 'percent') {\r\n discount = Number(item.discount) / 100;\r\n } else if (item.discount && item.discount_type == 'amount') {\r\n discount = Number(item.discount);\r\n }\r\n item.dis_amt = (item.discount_type == 'percent' ? (amount * discount) : discount);\r\n var tax = 0;\r\n if (item.tax && item.tax_type == 'percent') {\r\n tax = Number(item.tax) / 100;\r\n } else if (item.tax && item.tax_type == 'amount') {\r\n tax = Number(item.tax);\r\n }\r\n amount = amount - (item.discount_type == 'percent' ? (amount * discount) : discount);\r\n item.tax_amt = (item.tax_type == 'percent' ? (amount * tax) : tax);\r\n amount = amount + (item.tax_type == 'percent' ? (amount * tax) : tax);\r\n item.line_total = amount;\r\n item.cost = Number(item.cost ? item.cost : 0);\r\n item.price = Number(item.price ? item.price : 0);\r\n item.qty = Number(item.qty ? item.qty : 0);\r\n this.calculateOrderTotal();\r\n }\r\n calculateOrderTotal() {\r\n this.totalItems = this.orderEnteries.length;\r\n this.itemTotal = 0;\r\n this.totalDisc = 0;\r\n this.totalTax = 0;\r\n this.orderEnteries.forEach(item => {\r\n this.itemTotal += Number(item.line_total);\r\n this.totalDisc += Number(item.dis_amt);\r\n this.totalTax += Number(item.tax_amt);\r\n })\r\n var finalTotal = this.itemTotal + (this.postOrder.adjustment ? Number(this.postOrder.adjustment) : 0) + (this.postOrder.shippingcharges ? Number(this.postOrder.shippingcharges) : 0);\r\n this.orderTotal = finalTotal;\r\n }\r\n qtyOnFocusOutEvent(item) {\r\n this.calculateOrderTotal();\r\n }\r\n minus(item) {\r\n if (item.qty == 1) {\r\n return;\r\n }\r\n item.qty--;\r\n this.calculateLineItemTotal(item);\r\n }\r\n plus(item) {\r\n item.qty++;\r\n this.calculateLineItemTotal(item);\r\n }\r\n deleteItem(item, index) {\r\n if (item.id > 0) {\r\n this.loader.start();\r\n this.service.deletePOSOrderEntry(item.id).subscribe(res => {\r\n this.loader.stop();\r\n if (res != null) {\r\n Swal.fire('', 'Item deleted successfully', 'success');\r\n }\r\n environment.production ? '' : console.log('item deleted', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While delete item', err);\r\n });\r\n }\r\n this.orderEnteries.splice(index, 1);\r\n this.calculateOrderTotal();\r\n }\r\n refreshOrder() {\r\n this.customerinfo = {\r\n discount: 0\r\n };\r\n this.editSetCustomer = {};\r\n this.initialize();\r\n this.orderEnteries = [];\r\n this.calculateOrderTotal();\r\n this.getItems();\r\n }\r\n submitOrder(status) {\r\n if (this.postOrder.customerid == undefined || this.postOrder.customerid == null || this.postOrder.customerid == '') {\r\n this.toastr.Error('Please select customer');\r\n return;\r\n }\r\n if (this.postOrder.ordertype == undefined || this.postOrder.ordertype == null || this.postOrder.ordertype == '') {\r\n this.toastr.Error('Please select order type');\r\n return;\r\n }\r\n\r\n var soTerms;\r\n if (this.soTermsList.length > 0) {\r\n this.soTermsList.forEach((d, i) => {\r\n if (d.checked) {\r\n if (soTerms == undefined || soTerms == null) {\r\n soTerms = d.Value;\r\n } else {\r\n soTerms += ',' + d.Value;\r\n }\r\n }\r\n })\r\n }\r\n\r\n var t_ordertransactions = [];\r\n if (this.isReturnOrder || status != 'draft') {\r\n this.paymentMethodList.forEach(item => {\r\n if (item.pay > 0) {\r\n var payAmt = item.pay;\r\n t_ordertransactions.push({\r\n \"id\": null,\r\n \"orderid\": this.postOrder.id ? this.postOrder.id : null,\r\n \"currency\": this.userdata.currency,\r\n \"mop\": item.Value,\r\n \"trandate\": this.datePipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss'),\r\n \"tranby\": this.userdata.email,\r\n \"memo\": this.paying.memo,\r\n \"change\": 0,\r\n \"techid\": this.postOrder.techid,\r\n \"authby\": null,\r\n \"authnotes\": null,\r\n \"companyid\": this.userdata.companyid,\r\n \"notes\": this.paying.memo,\r\n \"amt\": parseFloat(payAmt).toFixed(2),\r\n \"roe\": 1,\r\n \"signby\": null,\r\n \"signature\": null,\r\n \"isposted\": false,\r\n \"postdate\": null,\r\n \"postedby\": null,\r\n \"donotpost\": false,\r\n \"keepchange\": false,\r\n \"paytype\": 'normal',\r\n \"rpid\": null,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datePipe.transform(new Date(), 'yyyy-MM-dd HH:mm:ss'),\r\n \"updateby\": null,\r\n \"updatedate\": null,\r\n \"tpcode\": null,\r\n })\r\n }\r\n })\r\n } else {\r\n this.postOrder.txntype = 'salesorder';//for draft\r\n }\r\n if (this.postOrder.id > 0) {\r\n this.postOrder.updateby = this.userdata.email;\r\n this.postOrder.updatedate = this.datePipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n } else {\r\n this.postOrder.createby = this.userdata.email;\r\n this.postOrder.createdate = this.datePipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.postOrder.companyid = this.userdata.companyid;\r\n }\r\n this.postOrder.orderdate = this.postOrder.id ? this.datePipe.transform(new Date(this.postOrder.orderdate), this.userdata.postdateformat) : this.datePipe.transform(new Date(), this.userdata.postdateformat);\r\n this.postOrder.duedate = this.postOrder.id ? this.datePipe.transform(new Date(this.postOrder.duedate), this.userdata.postdateformat) : this.datePipe.transform(new Date(), this.userdata.postdateformat);\r\n // this.postOrder.discount = this.totalDisc;\r\n // if (this.isReturnOrder) {\r\n this.orderEnteries.forEach(item => {\r\n item.serial = this.isReturnOrder ? item.selectedSerial ? item.selectedSerial : item.serial : item.serial;\r\n item.createby = item.id ? item.createby : this.userdata.email;\r\n item.createdate = item.id ? this.datePipe.transform(new Date(item.createdate), this.userdata.postdatetimeformat) : this.datePipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n item.updateby = item.id ? this.userdata.email : null;\r\n item.updatedate = item.id ? this.datePipe.transform(new Date(), this.userdata.postdatetimeformat) : null;\r\n })\r\n // }\r\n this.postOrder.t_orderentry = this.orderEnteries;\r\n this.postOrder.status = status;\r\n this.postOrder.t_ordertransactions = t_ordertransactions;\r\n this.postOrder.terms = soTerms;\r\n this.postOrder.total_amt = this.orderTotal ? Number(this.orderTotal).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n // this.postOrder.line_total_amt = this.orderTotal; commited by mayur line total showing all amt + adj + delivery fees\r\n this.postOrder.line_total_amt = this.itemTotal;\r\n\r\n if (status == 'paid' && t_ordertransactions.length > 0 && this.paying.onaccount > 0) {\r\n this.postOrder.status = 'partiallypaid'\r\n } else if (status == 'paid' && t_ordertransactions.length == 0 && this.paying.onaccount > 0) {\r\n this.postOrder.status = 'open'\r\n } else if (status == 'paid' && t_ordertransactions.length > 0 && this.paying.onaccount == 0) {\r\n this.postOrder.status = 'paid'\r\n }\r\n if (t_ordertransactions.length > 0) {\r\n this.postOrder.txntype = this.isReturnOrder ? 'receiptreturn' : 'salesreceipt';\r\n }\r\n delete this.postOrder.orderTranscations;\r\n this.isReturnOrder ? delete this.postOrder.t_ordertransactions : '';\r\n environment.production ? '' : console.log('pos order req ', JSON.stringify(this.postOrder));\r\n this.loader.start();\r\n this.service.postPOSOrder(this.postOrder).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n if (this.postOrder.status != 'draft') {\r\n this.printAck(res.refid);\r\n }\r\n this.orderEnteries = [];\r\n this.initialize();\r\n this.modalService.dismissAll();\r\n this.customerinfo = {};\r\n }\r\n environment.production ? '' : console.log('pos order post rest', res);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While post order ', err);\r\n });\r\n }\r\n\r\n inputTechnicianCleared() {\r\n this.postOrder.techid = null;\r\n }\r\n selectTechnician(item) {\r\n this.postOrder.techid = item.employee_id\r\n }\r\n onFocused(item) {\r\n\r\n }\r\n // viewPicture(content, item) {\r\n // this.itemPictures = item.pictures;\r\n // this.modalService.open(content, { size: 'xl', ariaLabelledBy: 'modal-basic-title', backdrop: 'static' }).result.then((result) => {\r\n // this.closeResult = `Closed with: ${result}`;\r\n // }, (reason) => {\r\n // // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n // });\r\n // }\r\n viewPicture(content, item) {\r\n this.customloader= true;\r\n this.commoanService.getProductPictures(item.id).subscribe(res => {\r\n this.customloader= false;\r\n this.itemPictures = res;\r\n if (this.itemPictures.length == 0) {\r\n this.toastr.Error('No pictures found');\r\n return;\r\n } else {\r\n this.itemPictures.forEach(img => {\r\n if (img.filename) {\r\n img.filename = environment.DOC_URL + '/' + this.userdata.companyid + '/' + img.filename;\r\n }\r\n });\r\n }\r\n this.modalService.open(content, { size: 'xl', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }, err => {\r\n this.customloader= false;\r\n })\r\n }\r\n openRecentOrder(content) {\r\n this.refreshRecentOrders();\r\n this.modalService.open(content, { size: 'xl', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.modalService.dismissAll();\r\n }\r\n openTransaction(content) {\r\n this.paying.isauthorizecredit = false;\r\n if (this.postOrder.customerid == undefined || this.postOrder.customerid == '' || this.postOrder.customerid == null) {\r\n Swal.fire('', 'Please select customer', 'warning');\r\n return;\r\n }\r\n if (this.postOrder.ordertype == undefined || this.postOrder.ordertype == '' || this.postOrder.ordertype == null) {\r\n Swal.fire('', 'Please select order type', 'warning');\r\n return;\r\n }\r\n this.calculateBalance();\r\n if (this.isReturnOrder) {\r\n this.submitOrder('refund');\r\n return;\r\n }\r\n this.getpaymethods()\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n openQuote() {\r\n var modalRef = this.modalService.open(QuotemodalComponent, { size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n // modalRef.componentInstance.name = this.postOrder.customername;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n pickupOrder(item) {\r\n var modalRef = this.modalService.open(PickuporderComponent, { size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n modalRef.componentInstance.id = item.id;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n this.getPOSRecentOrders();\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n openquickAddProdModal() {\r\n var modalRef = this.modalService.open(QuickaddproductComponent, { windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n modalRef.componentInstance.name = this.postOrder.customername;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n openCustomerList() {\r\n var modalRef = this.modalService.open(CustomerlistComponent, this.ngbModalOptions);\r\n modalRef.componentInstance.name = this.customerinfo.name;\r\n modalRef.result.then((result) => {\r\n if (result != null) {\r\n this.customerinfo = result;\r\n this.postOrder.customerid = this.customerinfo.id;\r\n this.customerinfo.balance = result.balance ? result.balance : 0;\r\n this.customerinfo.creditlimit = result.creditlimit ? result.creditlimit : 0;\r\n this.customerinfo.deposit = result.deposit ? result.deposit : 0;\r\n this.customerinfo.discount = result.discount ? result.discount : 0;\r\n this.customerinfo.giftcard = result.giftcard ? result.giftcard : 0;\r\n this.customerinfo.loyality = result.loyalitycredit ? result.loyalitycredit : 0;\r\n this.customerinfo.salestotal = result.salestotal ? result.salestotal : 0;\r\n this.calculateOrderTotal();\r\n }\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n SelectedCustomer() {\r\n if (this.CustomersComponent.selectedCustomer) {\r\n if (this.CustomersComponent.selectedCustomer.name == undefined || this.CustomersComponent.selectedCustomer.name == '' || this.CustomersComponent.selectedCustomer.id == null || this.CustomersComponent.selectedCustomer.id == '') {\r\n return;\r\n }\r\n if (this.CustomersComponent.selectedCustomer.authorizationreq) {\r\n this.openAuthorizationModal();\r\n } else {\r\n this.setSelectedCustomer();\r\n }\r\n }\r\n }\r\n setSelectedCustomer() {\r\n this.customerinfo = this.CustomersComponent.selectedCustomer;\r\n this.postOrder.customerid = this.customerinfo.id;\r\n this.customerinfo.balance = this.CustomersComponent.selectedCustomer.balance ? this.CustomersComponent.selectedCustomer.balance : 0;\r\n this.customerinfo.creditlimit = this.CustomersComponent.selectedCustomer.creditlimit ? this.CustomersComponent.selectedCustomer.creditlimit : 0;\r\n this.customerinfo.deposit = this.CustomersComponent.selectedCustomer.deposit ? this.CustomersComponent.selectedCustomer.deposit : 0;\r\n this.customerinfo.discount = this.CustomersComponent.selectedCustomer.discount ? this.CustomersComponent.selectedCustomer.discount : 0;\r\n this.customerinfo.giftcard = this.CustomersComponent.selectedCustomer.giftcard ? this.CustomersComponent.selectedCustomer.giftcard : 0;\r\n this.customerinfo.loyality = this.CustomersComponent.selectedCustomer.loyalitycredit ? this.CustomersComponent.selectedCustomer.loyalitycredit : 0;\r\n this.customerinfo.salestotal = this.CustomersComponent.selectedCustomer.salestotal ? this.CustomersComponent.selectedCustomer.salestotal : 0;\r\n this.calculateOrderTotal();\r\n this.initializeProjRef();\r\n this.ProjectsComponent.selectedJob = null;\r\n this.ProjectsComponent.jobList = [];\r\n this.CustomersComponent.customer.name = '';\r\n }\r\n openAuthorizationModal() {\r\n var modalRef = this.modalService.open(AuthorizationModalComponent, { size: 'sm', });\r\n modalRef.result.then((result: any) => {\r\n if (result != undefined && result != 'close') {\r\n this.postOrder.authorizedby = result.authorizedby;\r\n this.postOrder.authorizationnotes = result.authorizationnotes;\r\n this.setSelectedCustomer();\r\n }\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n initializeProjRef() {\r\n this.postOrder.projid ? this.postOrder.title = '' : null;\r\n this.postOrder.ticketid ? this.postOrder.title = '' : null;\r\n this.postOrder.projid = '';\r\n this.postOrder.ticketid = '';\r\n }\r\n open(content) {\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n clearInterval(this.intervalId);\r\n this.modalService.dismissAll();\r\n }\r\n collapseshow() {\r\n this.isCollapsed = !this.isCollapsed;\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n\r\n suspendSales() {\r\n\r\n }\r\n\r\n salesReturn() {\r\n\r\n }\r\n refreshRecentOrders() {\r\n this.selectedTypes = [];\r\n this.recentOrders.searchtxt = '';\r\n this.recentOrders.type = '';\r\n this.recentOrders.status = ''\r\n this.recentOrders.edate = moment().add(1, 'days').format('YYYY-MM-DD');\r\n this.recentOrders.fdate = moment().subtract(1, 'days').format('YYYY-MM-DD');\r\n this.currentPage = 1;\r\n this.getPOSRecentOrders();\r\n }\r\n // getPOSRecentOrders\r\n getPOSRecentOrders() {\r\n this.loader.start();\r\n this.service.getPOSRecentOrders(this.currentPage,\r\n this.recentOrders.searchtxt, this.recentOrders.type, this.recentOrders.status, this.datePipe.transform(new Date(this.recentOrders.fdate), this.userdata.postdateformat), this.datePipe.transform(new Date(this.recentOrders.edate), this.userdata.postdateformat)).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n this.recentOrderList = res.data;\r\n this.totalPages = res.total_pages;\r\n }\r\n this.recentOrderList.forEach(item => {\r\n var status = item.status ? item.status.toLowerCase() : '';\r\n if (item.to_be_received == 0) {\r\n item.isshowpickup = false;\r\n } else {\r\n item.isshowpickup = true;\r\n }\r\n if (status == 'draft') {\r\n item.isshowedit = true;\r\n } else {\r\n item.isshowedit = false;\r\n }\r\n if (status == 'collected') {\r\n item.isshowreturn = true;\r\n } else {\r\n item.isshowreturn = false;\r\n }\r\n if (status == 'closed') {\r\n item.isshowpay = false;\r\n } else {\r\n item.isshowpay = true;\r\n }\r\n })\r\n this.totalRows = this.recentOrderList.length;\r\n environment.production ? '' : console.log(' RecentOrders list data ', this.recentOrderList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading RecentOrders list ', err);\r\n });\r\n }\r\n\r\n registerDetails(registerdetails) {\r\n this.modalService.open(registerdetails, { size: 'xl', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n\r\n goBack() {\r\n this.router.navigate[('/dashboard')];\r\n }\r\n //#region DropdownEvents\r\n customerType: any;\r\n changeCustType(e: any) {\r\n let getcustomerTypeData = e.target.value;\r\n this.customerType = getcustomerTypeData;\r\n }\r\n\r\n currency: any;\r\n changecurrency(e: any) {\r\n let getcurrencyData = e.target.value;\r\n this.currency = getcurrencyData;\r\n }\r\n\r\n creditstatus: any;\r\n changecreditstatus(e: any) {\r\n let getcreditstatusData = e.target.value;\r\n this.creditstatus = getcreditstatusData;\r\n }\r\n\r\n latefee_type: any;\r\n changelatefee_type(e: any) {\r\n let getlatefee_typeData = e.target.value;\r\n this.latefee_type = getlatefee_typeData;\r\n }\r\n\r\n changeparentid: any;\r\n changechangeparentid(e: any) {\r\n let getchangeparentidData = e.target.value;\r\n this.changeparentid = getchangeparentidData;\r\n }\r\n\r\n status: any;\r\n changestatus(e: any) {\r\n let getstatusData = e.target.value;\r\n this.status = getstatusData;\r\n }\r\n //#endregion DropdownEvents\r\n openAddCustomer(content) {\r\n var modalRef = null\r\n modalRef = this.modalService.open(content, { size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n addCustomer() {\r\n if (!this.customer.name) {\r\n Swal.fire('', 'Please enter name', 'warning');\r\n return;\r\n }\r\n if (!this.customer.primaryphone) {\r\n Swal.fire('', 'Please enter primaryphone', 'warning');\r\n return;\r\n }\r\n this.submitted = true;\r\n if (this.customerForm.invalid) {\r\n // return;\r\n }\r\n environment.production ? '' : console.log('customer data', this.customer);\r\n var obj = {\r\n id: null,\r\n customertype: this.customer.customertype,\r\n phone: this.customer.phone,\r\n name: this.customer.name,\r\n mainemail: this.customer.mainemail,\r\n secondaryemail: this.customer.secondaryemail,\r\n currency: this.customer.currency,\r\n companyid: this.userdata.companyid,\r\n shortname: this.customer.shortname,\r\n accountno: null,\r\n poc: this.customer.poc,\r\n primaryphone: this.customer.primaryphone,\r\n secondaryphone: this.customer.secondaryphone,\r\n fax: this.customer.fax,\r\n showmulticurrencyonreceipts: this.customer.showmulticurrencyonreceipts,\r\n billaddress1: this.customer.billaddress1,\r\n billaddress2: this.customer.billaddress2 ? this.customer.billaddress2 : null,\r\n billaddress3: this.customer.billaddress3 ? this.customer.billaddress3 : null,\r\n billaddress4: this.customer.billaddress4 ? this.customer.billaddress4 : null,\r\n shipaddress1: this.customer.shipaddress1 ? this.customer.shipaddress1 : null,\r\n shipaddress2: this.customer.shipaddress2 ? this.customer.shipaddress2 : null,\r\n shipaddress3: this.customer.shipaddress3 ? this.customer.shipaddress3 : null,\r\n shipaddress4: this.customer.shipaddress4 ? this.customer.shipaddress4 : null,\r\n creditperiod: this.customer.creditperiod ? Number(this.customer.creditperiod) : null,\r\n creditlimit: this.customer.creditlimit ? Number(this.customer.creditlimit) : this.customer.creditlimit,\r\n discount: this.customer.discount ? Number(this.customer.discount) : this.customer.discount,\r\n billactualhrs: this.customer.billactualhrs,\r\n billindividual: this.customer.billindividual,\r\n latefee_type: this.customer.latefee_type,\r\n latefee_enable: this.customer.latefee_enable,\r\n latefee: Number(this.customer.latefee),\r\n rph: Number(this.customer.rph),\r\n creditstatus: this.customer.creditstatus,\r\n authorizationreq: this.customer.authorizationreq,\r\n billsbyemail: this.customer.billsbyemail,\r\n billsbyprint: this.customer.billsbyprint,\r\n monthlyarstatements: this.customer.monthlyarstatements,\r\n status: this.customer.status,\r\n notice4outsiders: this.customer.notice4outsiders,\r\n tpaccno: this.customer.tpaccno,\r\n notes: this.customer.notes,\r\n updateby: null,\r\n updatedate: null,\r\n parentid: this.customer.parentid,\r\n seq: this.customer.seq,\r\n createby: this.userdata.email,\r\n createdate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n }\r\n this.loader.start();\r\n this.salesServices.postcustomer(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.initializeCustomer();\r\n this.modalService.dismissAll();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post rfq ', err);\r\n });\r\n }\r\n initializeCustomer() {\r\n this.customer = {\r\n showmulticurrencyonreceipts: false,\r\n billactualhrs: false,\r\n authorizationreq: false,\r\n billindividual: false,\r\n latefee_enable: false,\r\n billsbyemail: false,\r\n billsbyprint: false,\r\n monthlyarstatements: false,\r\n rph: 0,\r\n creditlimit: 0,\r\n discount: 0,\r\n latefee: 0,\r\n status: 'active',\r\n creditstatus: 'inactive',\r\n customertype: '',\r\n currency: '',\r\n latefee_type: 'percentage',\r\n parentid: '',\r\n }\r\n }\r\n // environment.production ? '' : console.log('customer data', JSON.stringify(obj));\r\n // return false;\r\n\r\n\r\n //################Calculate Due Balance###################\r\n calculateBalance() {\r\n this.paying.duebalance = 0;\r\n this.paying.change = 0;\r\n var totalPay = 0;\r\n if (this.paying.cash != undefined && this.paying.cash != null && this.paying.cash != '' && this.paying.cash > 0) {\r\n totalPay += Number(this.paying.cash);\r\n }\r\n if (this.paying.checks != undefined && this.paying.checks != null && this.paying.checks != '' && this.paying.checks > 0) {\r\n totalPay += Number(this.paying.checks);\r\n }\r\n if (this.paying.debitcard != undefined && this.paying.debitcard != null && this.paying.debitcard != '' && this.paying.debitcard > 0) {\r\n totalPay += Number(this.paying.debitcard);\r\n }\r\n if (this.paying.creditcard != undefined && this.paying.creditcard != null && this.paying.creditcard != '' && this.paying.creditcard > 0) {\r\n totalPay += Number(this.paying.creditcard);\r\n }\r\n if (Number(this.orderTotal) > totalPay) {\r\n this.paying.duebalance = Number(this.orderTotal) - totalPay;\r\n }\r\n if (Number(this.orderTotal) < totalPay) {\r\n this.paying.change = totalPay - Number(this.orderTotal);\r\n }\r\n if (this.paying.isauthorizecredit && this.paying.duebalance > 0) {\r\n this.paying.onaccount = this.paying.duebalance;\r\n this.paying.duebalance = 0;\r\n }\r\n if (!this.paying.isauthorizecredit) {\r\n this.paying.onaccount = 0\r\n }\r\n }\r\n //########################################################\r\n calculateDueBalance() {\r\n this.paying.duebalance = 0;\r\n this.paying.change = 0;\r\n var totalPay = 0;\r\n this.paymentMethodList.forEach(item => {\r\n if (item.pay != undefined && item.pay != null && item.pay != '' && item.pay > 0) {\r\n totalPay += Number(item.pay);\r\n }\r\n })\r\n if (Number(this.orderTotal) > totalPay) {\r\n this.paying.duebalance = Number(this.orderTotal) - totalPay;\r\n }\r\n if (Number(this.orderTotal) < totalPay) {\r\n this.paying.change = totalPay - Number(this.orderTotal);\r\n }\r\n if (this.paying.isauthorizecredit && this.paying.duebalance > 0) {\r\n this.paying.onaccount = this.paying.duebalance;\r\n this.paying.duebalance = 0;\r\n } else {\r\n this.paying.onaccount = 0;\r\n }\r\n this.paying.duebalance = Number(this.paying.duebalance).toFixed(2);\r\n }\r\n\r\n // Carousel\r\n owlcarouselOptions = {\r\n loop: true,\r\n items: 1,\r\n dots: true,\r\n center: true,\r\n };\r\n\r\n //Create Purchase Request\r\n addPurchaseReq(product) {\r\n var obj = {\r\n \"id\": null,\r\n \"status\": \"newreq\",\r\n \"pon\": \"\",\r\n \"requestby\": this.userdata.email,\r\n \"description\": \"\",\r\n \"companyid\": this.userdata.companyid,\r\n \"ponotes\": \"\",\r\n \"updateby\": null,\r\n \"updatedate\": null,\r\n \"supplierid\": null,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"origin\": \"web\",\r\n \"rfqno\": null,\r\n \"orderref_extra\": \"\",\r\n \"duedate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"priority\": \"medium\",\r\n \"type\": \"\",\r\n \"estimated_deliver_time\": 0,\r\n \"requestedfor\": \"\",\r\n \"requestdate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"seq\": null,\r\n \"req_no\": null,\r\n \"orderref\": this.postOrder.title ? this.postOrder.title : '',\r\n \"t_prs_entry\": []\r\n }\r\n obj.t_prs_entry = [{\r\n \"id\": null,\r\n \"prsid\": null,\r\n \"prodid\": product.id,\r\n \"qty\": 1,\r\n \"ilc\": product.ilc,\r\n \"description\": product.desc,\r\n \"cost\": product.pocost,\r\n \"qtyavailable\": product.qtyavailable ? product.qtyavailable : 0,\r\n \"qtyonhand\": product.qtyonhand ? product.qtyonhand : 0,\r\n \"reorderqty\": product.reorderqty ? product.reorderqty : 0,\r\n \"puom\": product.puom ? product.puom : '',\r\n \"newitem\": false,\r\n \"uom\": product.uom ? product.uom : '',\r\n }]\r\n this.loader.start();\r\n this.purchaseService.postPurchaseRequest(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n //Create Sales Request\r\n addSalesRequest(item) {\r\n if (this.postOrder.customerid == undefined || this.postOrder.customerid == null || this.postOrder.customerid == '') {\r\n this.toastr.Error(\"Please select customer\")\r\n return false\r\n }\r\n var obj = {\r\n \"id\": null,\r\n \"customerid\": this.postOrder.customerid,\r\n \"description\": \"\",\r\n \"status\": \"newreq\",\r\n \"orderno\": \"\",\r\n \"requestby\": this.userdata.email,\r\n \"companyid\": this.userdata.companyid,\r\n \"type\": \"\",\r\n \"requestdate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"rpt_link\": \"\",\r\n \"error_code\": null,\r\n \"error_msg\": null,\r\n \"mw_batchno\": null,\r\n \"updateby\": null,\r\n \"updatedate\": null,\r\n \"duedate\": moment().add(7, 'days').format('YYYY-MM-DD'),\r\n \"request_type\": \"\",\r\n \"priority\": \"medium\",\r\n \"orderref_extra\": \"\",\r\n \"requested_for\": \"\",\r\n \"origin\": \"web\",\r\n \"seq\": null,\r\n \"req_no\": null,\r\n \"orderref\": this.postOrder.title ? this.postOrder.title : '',\r\n \"t_srs_entry\": []\r\n }\r\n obj.t_srs_entry = [\r\n {\r\n \"id\": null,\r\n \"srsid\": null,\r\n \"prodid\": item.id,\r\n \"qty\": 1,\r\n \"ilc\": item.ilc,\r\n \"description\": item.desc,\r\n \"binid\": null,\r\n \"uom\": item.uom,\r\n \"qtyonhand\": item.qtyonhand,\r\n \"price\": item.price,\r\n \"createby\": this.userdata.email,\r\n \"createdate\": this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n }\r\n ]\r\n this.loader.start();\r\n this.salesServices.postSalesRequests(obj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post invoice data ', err);\r\n });\r\n }\r\n\r\n // Open Sales Req modal\r\n openSalesReq() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(SalesrequestComponent, { size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n // Open Purchase Req modal\r\n openPurchaseReq() {\r\n var modalRef = null\r\n modalRef = this.modalService.open(PurchaserequestComponent, { size: 'xl', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n print(item, name) {\r\n var modalRef = null;\r\n modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.id = item.id;\r\n modalRef.componentInstance.name = name;//'printso';\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n printAck(id) {\r\n Swal.fire({\r\n title: 'Would you like to print a receipt?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.print({ id: id }, 'printsr')\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n }\r\n })\r\n }\r\n\r\n getXReport() {\r\n this.loader.start();\r\n this.service.getXReport().subscribe(res => {\r\n this.loader.stop();\r\n this.closingReport = res;\r\n this.closingReport.forEach(item => {\r\n item.amt = item.amt ? Number(item.amt).toFixed(this.userdata.decimals_allowed) : Number(0).toFixed(this.userdata.decimals_allowed);\r\n })\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n openReport(action) {\r\n var modalRef = this.modalService.open(GenericprintComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.id = '';\r\n modalRef.componentInstance.name = (action == 'printx' ? 'printxreport' : 'printzreport');\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n closeRegister(content) {\r\n this.currentDateTime = this.datePipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.getXReport();\r\n this.modalService.open(content, { size: 'lg', ariaLabelledBy: 'modal-basic-title', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n // this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\r\n });\r\n }\r\n\r\n openItemAnalysisModal(item) {\r\n var modalRef = this.modalService.open(ItemanalysisComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.fromParent = item;\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n });\r\n }\r\n openPurchaseHistoryModal(item) {\r\n var modalRef = this.modalService.open(PurchasehistoryComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.fromParent = item;\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n });\r\n }\r\n openItemCompatibilityModal(item) {\r\n var modalRef = this.modalService.open(ItemCompatibilityComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' })\r\n modalRef.componentInstance.fromParent = item;\r\n environment.production ? '' : console.log('id', modalRef.componentInstance.id);\r\n modalRef.result.then((result) => {\r\n this.closeResult = `Closed with: ${result}`;\r\n }, (reason) => {\r\n });\r\n }\r\n openBinDetails(item) {\r\n var modalRef = this.modalService.open(BinlocationsListComponent, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' });\r\n modalRef.componentInstance.id = item.id;\r\n modalRef.componentInstance.isSerilzed = item.isserilized;\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n openAdditionalTerms(content) {\r\n var modalRef = this.modalService.open(content, { ariaLabelledBy: 'modal-basic-title', size: 'xl', backdrop: 'static' });\r\n modalRef.result.then((result) => {\r\n environment.production ? '' : console.log(result);\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n onChangeTermSelectAll() {\r\n if (this.additionaltermsfilter) {\r\n this.soTermsList.forEach(element => {\r\n element.checked = true\r\n });\r\n } else {\r\n this.soTermsList.forEach(element => {\r\n element.checked = false;\r\n });\r\n }\r\n\r\n }\r\n onTermChange() {\r\n this.additionaltermsfilter = true;\r\n this.soTermsList.forEach(element => {\r\n if (!element.checked) {\r\n this.additionaltermsfilter = false;\r\n }\r\n });\r\n }\r\n getSOTerms() {\r\n this.commoanService.getSalesOrerTerms().subscribe(res => {\r\n this.soTermsList = res;\r\n this.setSOTerms();\r\n environment.production ? '' : console.log(' so terms data ', this.soTermsList);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading so terms ', err);\r\n });\r\n }\r\n setSOTerms() {\r\n var termsArray = [];\r\n if (this.postOrder.terms) {\r\n termsArray = this.postOrder.terms.split(',');\r\n }\r\n this.soTermsList.forEach(res => {\r\n res.checked = false;\r\n })\r\n termsArray.forEach(term => {\r\n this.soTermsList.forEach(res => {\r\n if (term == res.Value) {\r\n res.checked = true;\r\n }\r\n })\r\n })\r\n this.onTermChange();\r\n }\r\n\r\n hideNavButtons(isright, isleft) {\r\n this.hideRightNav = isright;\r\n this.hideLeftNav = isleft;\r\n }\r\n gotoPage(page) {\r\n // this.hideNav = true\r\n if (page == 'first') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else if (page == 'prev') {\r\n if (this.currentPage == '2') {\r\n this.currentPage = 1;\r\n this.hideNavButtons(true, false);\r\n } else {\r\n this.currentPage--;\r\n this.hideNavButtons(false, false);\r\n }\r\n } else if (page == 'next') {\r\n if (this.currentPage == this.totalPages - 1) {\r\n this.currentPage = this.totalPages;\r\n this.hideNavButtons(false, true);\r\n } else {\r\n this.currentPage++;\r\n this.hideNavButtons(false, false);\r\n }\r\n\r\n } else if (page == 'last') {\r\n this.currentPage = this.totalPages;\r\n this.hideRightNav = false\r\n this.hideLeftNav = true\r\n }\r\n this.getPOSRecentOrders();\r\n }\r\n\r\n\r\n onTypeSelect(item: any) {\r\n let arrayData = [];\r\n this.selectedTypes.forEach(data => {\r\n arrayData.push('' + data.Value);\r\n })\r\n arrayData = arrayData.filter((c, index) => {\r\n return arrayData.indexOf(c) === index;\r\n });\r\n this.stringData = arrayData.toString();\r\n this.recentOrders.type = this.stringData;\r\n environment.production ? '' : console.log(this.recentOrders.type);\r\n this.gotoPage('first');\r\n }\r\n onTypeSelectAll(items: any) {\r\n let arrayData = [];\r\n items.forEach(data => {\r\n arrayData.push('' + data.Value);\r\n });\r\n this.stringData = arrayData.toString();\r\n this.recentOrders.type = this.stringData;\r\n this.gotoPage('first');\r\n }\r\n\r\n onTypeDeSelect($event) {\r\n let arrayData = [];\r\n this.selectedTypes.forEach(data => {\r\n arrayData.push('' + data.Value);\r\n })\r\n arrayData = arrayData.filter((c, index) => {\r\n return arrayData.indexOf(c) === index;\r\n });\r\n this.stringData = arrayData.toString();\r\n this.recentOrders.type = this.stringData;\r\n environment.production ? '' : console.log(this.recentOrders.type);\r\n this.gotoPage('first');\r\n }\r\n onTypeDeSelectAll($event) {\r\n this.recentOrders.type = '';\r\n this.gotoPage('first');\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    Company: {{userdata.companyname}}   {{today}}
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n Credit Limit
    {{customerinfo.creditlimit | number:'1.2-2'}}\r\n
    \r\n
    \r\n Deposit
    {{customerinfo.deposit | number:'1.2-2'}}\r\n
    \r\n
    \r\n Giftcard
    {{customerinfo.giftcard | number:'1.2-2'}}\r\n
    \r\n
    \r\n Loyality
    {{customerinfo.loyality | number:'1.2-2'}}\r\n
    \r\n
    \r\n Discount
    {{customerinfo.discount | number:'1.2-2'}}{{customerinfo.discount_type}}\r\n
    \r\n
    \r\n Email
    \r\n {{customerinfo.mainemail}}\r\n
    \r\n
    \r\n Phone
    {{customerinfo.primaryphone}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
    Action Product Quantity UOM Price Dis Amt Tax Amt Ext. Total
    \r\n \r\n \r\n \r\n
    \r\n {{entry.ilc}}
    {{entry.description}}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{entry.dis_amt | number:'1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{entry.tax_amt | number:'1.2-2'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{entry.line_total |\r\n number:'1.2-2'}}\r\n
    Totals\r\n {{totalDisc | number:'1.2-2'}}\r\n \r\n {{totalTax | number:'1.2-2'}}\r\n \r\n {{itemTotal | number:'1.2-2'}}\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n Priority  \r\n \r\n
    \r\n
    \r\n
    \r\n Type  \r\n \r\n
    \r\n
    \r\n
    \r\n Delivery Fee:  \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n SalesRep  \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n Ref#  \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n Adjustments:  \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n Payment Terms  \r\n \r\n
    \r\n
    \r\n
    \r\n Add. Terms  \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n Grand Total:  \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
      \r\n
    • Assembly Catalog
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
      \r\n
    • Add to Purchase Request
    • \r\n
    • Add to Sales Request
    • \r\n
    • Item Analysis
    • \r\n
    • Purchase History
    • \r\n
    • Item Compatibility\r\n
    • \r\n
    • Bin Locations
    • \r\n
    • View Pictures
    • \r\n
    \r\n
    \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n \r\n \r\n \r\n On Hand: {{item.qtyonhand}}, {{userdata.currency}} {{item.price |\r\n number:'1.2-2'}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    New Customer
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Name is required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    Primary\r\n Phone required
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Billing Address1 required\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Please select Status\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    Current Register {{currentDateTime}}
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Payment MethodCurrencyAmount
    {{item.mop}}{{item.currency}}{{item.amt}}
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    Current Register (12th Aug, 2022 08:31 AM - 12th Aug, 2022\r\n 08:45 AM)
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    Payment MethodSellExpense
    Cash in hand$1000$0.00
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    Total Sales$0.00
    Total Fund$0.00
    Total Payment$0.00
    Credit Sales$0.00
    Total Sales$0.00
    Total Expenses$0.00
    \r\n
    \r\n
    \r\n

    Details of Product Sold

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    #SKUProductQuantityTotal Amount
    1.serservice2.00$ 110.00
    #2\r\n
    Order Tax: (+) $ 10.90
    \r\n
    Discount: (-) $ 1.00
    \r\n
    Grand Total: $ 119.90
    \r\n
    \r\n
    \r\n
    \r\n

    Details of Product Sold (By Category)

    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    #SKUQuantityTotal Amount
    1.ser2.00$ 110.00
    #2\r\n
    Order Tax: (+) $ 10.90
    \r\n
    Discount: (-) $ 1.00
    \r\n
    Grand Total: $ 119.90
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n User: Admin
    \r\n Email: admin@example.com
    \r\n Business Location Awesome Shop\r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    Suspended Sales
    \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    Suspended Sales
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    Recent Sales
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    ActionOrder#Proj/JobOrder Ref#TypeTxn TypeOriginCustomerOrder TotalPaid AmtDue AmtSales RepStatusOrder DateCreateByCreateDate
    \r\n \r\n \r\n
      \r\n
    • \r\n Edit
    • \r\n
    • Clone
    • \r\n
    • Payment
    • \r\n
    • Pick-up\r\n
    • \r\n
    • \r\n Return
    • \r\n
    • Email
    • \r\n
    • Print A4
    • \r\n
    • Print Receipt
    • \r\n
    • Print Pick Ticket
    • \r\n
    • Print Pick Ticket-\r\n Barcode
    • \r\n
    \r\n
    \r\n \r\n
    {{item.orderno}}{{item.orderref}}{{item.cno}}{{item.ordertype}}{{item.txntype}}{{item.origin}}{{item.customer}}{{item.orderprice | number:'1.2-2'}}{{item.totalpaid | number:'1.2-2'}}{{item.dueamount | number:'1.2-2'}}{{item.salesrep}}{{item.status}}{{item.orderdate|date:userdata.displaydatetimeformat}}\r\n {{item.createby}}{{item.createdate | date:userdata.displaydatetimeformat}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n Total rows : {{totalRows}}\r\n
    \r\n \r\n \r\n
    \r\n {{currentPage}} of {{totalPages}}\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    Payment Transaction
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    Total
    \r\n
    {{userdata.currency}} {{orderTotal|number:'1.2-2'}}
    \r\n
    \r\n
    \r\n
    {{item.Text}}
    \r\n \r\n
    \r\n
    {{userdata.currency}}
    \r\n
    \r\n
    \r\n
    \r\n
    Balance Due
    \r\n
    {{userdata.currency}} {{paying.duebalance|number:'1.2-2'}}
    \r\n
    \r\n
    \r\n
    Change
    \r\n
    {{userdata.currency}} {{paying.change|number:'1.2-2'}}
    \r\n
    \r\n
    0\">\r\n
    Leave Credit/Change on Account?
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    Technician/Auth Person
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n    0\">{{userdata.currency}}\r\n {{paying.onaccount|number:'1.2-2'}}\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n
    \r\n
    Pictures
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \"\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n \r\n
    \r\n
    Additional Terms
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","\r\n\r\nimport { CUSTOM_ELEMENTS_SCHEMA, NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Ng2SmartTableModule } from 'ng2-smart-table';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CountToModule } from 'angular-count-to';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { Ng2GoogleChartsModule } from 'ng2-google-charts';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\n\r\nimport { SharedModule } from '../../shared/shared.module';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { NgxPrintModule } from 'ngx-print';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { CKEditorModule } from 'ng2-ckeditor';\r\nimport { NgxDropFileImageModule } from 'ngx-drop-file-image';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule, MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MatMomentDateModule } from '@angular/material-moment-adapter';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\nimport { PosRoutingModule } from './pos-routing.module';\r\nimport { PosComponent } from './pos.component';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { OpeningbalanceComponent } from './openingbalance/openingbalance.component';\r\nimport { CarouselModule } from 'ngx-owl-carousel-o';\r\nimport { ResizeModule } from '../modal/resize/resize-border.module';\r\nimport { CustomerListModule } from '../servicemanager/servicecontracts/customerlist/customerlist.module';\r\nimport { ProjjoblistModule } from '../modal/projjoblistmodal/projjoblistmodal.module';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';\r\n@NgModule({\r\n declarations: [PosComponent, OpeningbalanceComponent],\r\n imports: [\r\n CommonModule,\r\n PosRoutingModule,\r\n CountToModule,\r\n SharedModule,\r\n ChartsModule,\r\n Ng2GoogleChartsModule,\r\n NgxChartsModule,\r\n Ng2SmartTableModule,\r\n NgbModule,\r\n FormsModule,\r\n NgMultiSelectDropDownModule.forRoot(),\r\n ReactiveFormsModule,\r\n NgxPrintModule,\r\n NgxUiLoaderModule,\r\n CKEditorModule,\r\n NgxDropFileImageModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatMomentDateModule,\r\n AutocompleteLibModule,\r\n MatAutocompleteModule,\r\n CarouselModule,\r\n ResizeModule,\r\n CustomerListModule,\r\n ProjjoblistModule,\r\n HttpClientModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n\r\n ],\r\n providers: [\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMATS },\r\n NgbActiveModal\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA,\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class PosModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n} ","import { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\n\r\nimport { DatePipe } from '@angular/common';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class POSServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n public projectDataForEdit: '';\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n getPOSItems(pricingtype, qtyonhand, deptid, categoryid, subcategoryid, searchtext) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/POS/GetPOSItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pricingtype=' + pricingtype + '&qtyonhand=' + qtyonhand + '&deptid=' + deptid + '&categoryid=' + categoryid + '&subcategoryid=' + subcategoryid + '&searchtxt=' + searchtext + '&saleenddate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd'));\r\n }\r\n\r\n getPOSRecentOrders(pg, searchtxt, type, status, fdate, edate) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/POS/Get_RecentOrders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&fdate=' + fdate + '&edate=' + edate + '&type=' + type + '&status=' + status + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getPOSOrderByID(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/POS/Gett_POSOrderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postPOSOrder(data) {\r\n return this.http.post(this.baseUrl + 'api/POS/Postt_POSOrder', data);\r\n }\r\n\r\n deletePOSOrderEntry(id) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.delete(this.baseUrl + 'api/POS/Delete_POSOrderLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getXReport() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/POS/GetXReport?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '®ister_id=');\r\n }\r\n\r\n getZReport() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/POS/GetZReport?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '®ister_id=');\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\n\r\nimport { DatePipe } from '@angular/common';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class projectmanagerServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n public projectDataForEdit: '';\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n postProject(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Postt_Project', data);\r\n }\r\n getProjectDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Gett_ProjectByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProjects(pg, searchtxt, type, status, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n\r\n getProjectTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n\r\n\r\n //get task\r\n taskList(pg, name, projid, customerid, status, assignto, moduleid, fdate, edate, priority) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Get_TaskIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&name=' + name + '&projid=' + projid + '&customerid=' + customerid + '&status=' + status + '&assignto=' + assignto + '&moduleid=' + moduleid + '&fdate=' + fdate + '&edate=' + edate + '&priority=' + priority);\r\n }\r\n getReviwer() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpManagers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getTaskTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTaskTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getComplexity() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetComplexity?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postTask(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tasks/Postt_Task', data);\r\n }\r\n getTaskDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_TaskByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n }\r\n getPendingReviewTaskLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_PendingReviewTaskLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&taskid=' + id);\r\n }\r\n postReviewTaskLogs(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tasks/Post_ReviewTaskLogs', data);\r\n }\r\n postMilestoneTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Milestones/Post_MilestoneTrackingNotes', data);\r\n }\r\n //ticket - team member\r\n postTeamMember(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tasks/Post_TaskEmployees', data);\r\n }\r\n //get task status list\r\n getTaskStatusList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTaskStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployees?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //getProjectStatus\r\n getProjectStatus() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n\r\n //Get Snags Bugs\r\n\r\n getSnagsList(pg, projid, moduleid, assignto, name, customerid, status, taskid, fdate, edate, priority) {\r\n return this.http.get(this.baseUrl + 'api/Snags/Get_SnagIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&projid=' + projid + '&module_id=' + moduleid + '&assignto=' + assignto + '&name=' + name + '&customerid=' + customerid + '&status=' + status + '&taskid=' + taskid + '&fdate=' + fdate + '&edate=' + edate + '&priority=' + priority);\r\n }\r\n getSnagDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Snags/Gett_SnagByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n }\r\n getProjectList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjects?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&username=' + this.userprofile.username);\r\n }\r\n postBug(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Snags/Postt_Snag', data);\r\n }\r\n getTaskListByProject(proj) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTasks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + proj);\r\n }\r\n getMilestoneListByProject(proj) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProjectMilestones?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + proj);\r\n }\r\n deleteBug() {\r\n return this.http.delete(this.baseUrl + 'api/bugs/Deletet_bugs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBugType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSnagType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssignTo() {\r\n return this.http.get(this.baseUrl + 'api/Scheduler/Gett_Resources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteTaskLogs(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tasks/DeleteTaskLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_TaskLogByTaskID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskSnags(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_TaskSnagByTaskID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskEmployees(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_TaskEmployeesByTaskID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskTestCases(id) {\r\n return this.http.get(this.baseUrl + 'api/Tasks/Gett_TaskTestCasesByTaskID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSnagLogs(id) {\r\n return this.http.delete(this.baseUrl + 'api/Snags/DeleteSnagLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSnagLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Snags/Gett_SnagLogBySnagID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteChecklistLogs(id) {\r\n return this.http.delete(this.baseUrl + 'api/TestCase/DeleteTestCaseLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Get Testcase \r\n testcaseList(pg, name, projid, status, fdate, edate, customerid) {\r\n return this.http.get(this.baseUrl + 'api/TestCase/Get_TestCaseIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&name=' + name + '&projid=' + projid + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&customerid=' + customerid)\r\n }\r\n\r\n //test cases\r\n\r\n //Get Milestones\r\n getMilestoneList(pg, projid, msno, name, customerid, status, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Milestones/Get_MilestoneIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&projid=' + projid + '&msno=' + msno + '&name=' + name + '&customerid=' + customerid + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate)\r\n }\r\n postTestCase(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/TestCase/Postt_TestCase', data);\r\n }\r\n\r\n //project tab\r\n postProjectEmp(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Postt_ProjectEmployees', data);\r\n }\r\n getTeamsResources() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetResources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postMileStone(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Milestones/Postt_Milestone', data);\r\n }\r\n postProjectMileStone(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Postt_ProjectMilestone', data);\r\n }\r\n //Resource tab\r\n postMilestoneEmp(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Milestones/Postt_MilestoneEmployees', data);\r\n }\r\n\r\n //get milestone details \r\n getMileStoneDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Milestones/Gett_MilestoneByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id);\r\n }\r\n getTestCaseDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/TestCase/Gett_TestCaseByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n postReleaseData(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Postt_ProjectReleaseNotes', data);\r\n }\r\n //milestone tab\r\n postMilestoneReleaseData(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Milestones/Postt_MilestoneReleaseNotes', data);\r\n }\r\n //task time log\r\n postTaskTimeLog(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tasks/Postt_TaskLogs', data);\r\n }\r\n //task time log\r\n postMilestoneTimeLog(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Postt_ProjectReleaseNotes', data);\r\n }\r\n //test case time log\r\n postTestcaseTimelog(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/TestCase/Postt_TestCaseLogs', data);\r\n }\r\n //snag time log\r\n postSnagTimelog(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Snags/Postt_SnagLogs', data);\r\n }\r\n //project module\r\n getModuleList(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProjectModulesIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description)\r\n }\r\n postModule(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProjectModule', data);\r\n }\r\n getParentModule(projid, parent_module_id) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectModule?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + projid + '&parent_module_id=' + parent_module_id)\r\n }\r\n getProjectModule(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectModules?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getModuleByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProjectModuleByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // Project tab index service\r\n getProjectTestCases(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectTestCases?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectReleaseNotes(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectReleaseNotes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectExpenses(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectExpenses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectInvoices(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectMilestones(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectMilestones?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectOrders(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectOrders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectQuotes(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectQuotes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectSalesOrders(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectSalesOrders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectSnags(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectSnags?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectTasks(projectid, fromdate, todate, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectTasks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid + '&fromdate=' + fromdate + '&todate=' + todate + '&searchtxt=' + searchtxt);\r\n }\r\n getProjectEmployees(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectEmployees?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n getProjectTrackings(projectid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjectTrackings?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projectid=' + projectid);\r\n }\r\n\r\n //Pricing Method \r\n getPricingMethod() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectPricingMethods?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //tracking notes\r\n postTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Post_ProjectTrackingNotes', data);\r\n }\r\n //created for create unbilled hrs invoice.\r\n createUnbilledHrsInv(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Projects/Post_ProjectsBilling', val);\r\n }\r\n deleteProject(id) {\r\n return this.http.delete(this.baseUrl + 'api/Projects/Delete_Project?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteProjectModule(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProjectModule?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteProjectResource(id) {\r\n return this.http.delete(this.baseUrl + 'api/Projects/Delete_ProjectEmployee?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSnag(id) {\r\n return this.http.delete(this.baseUrl + 'api/Projects/Delete_Project?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //Proj Invoice Batch\r\n postProjInvBatch(val) {\r\n return this.http.post(this.baseUrl + 'api/Projects/Post_ProjInvBatch', val);\r\n }\r\n getProjInvBatchDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjInvBatchByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProjInvBatchEntries(val) {\r\n return this.http.post(this.baseUrl + 'api/Projects/Post_ProjInvBatchEntries', val);\r\n }\r\n getProjInvBatchEntries(batchid) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_GetProjInvBatchEntries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&batchid=' + batchid);\r\n }\r\n getProjUnbilledHrs(employeeid, projectid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_UnBilledProjTaskLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid=' + employeeid + '&projectid=' + projectid + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n deleteProjInvBatch(id) {\r\n return this.http.delete(this.baseUrl + 'api/Projects/Delete_ProjInvBatch?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Get invoice batch index\r\n getInvBatchList(pg, searchtxt, projectid, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjInvBatches?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&projectid=' + projectid + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status)\r\n }\r\n getProjInvBatch2Invoice(id) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Get_ProjInvBatch2Invoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteProjInvBatchEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Projects/Delete_ProjInvBatchEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\n\r\nimport { DatePipe } from '@angular/common';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class purchaseServices {\r\n getJournals(status: string, jno: any, journaltype: any, fdate: any, tdate: any) {\r\n throw new Error('Method not implemented.');\r\n }\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n public projectDataForEdit: '';\r\n public expenseData: ''\r\n public hero: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n getRfqList(pg, searchtxt, fdate, edate, status) {\r\n return this.http.get(this.baseUrl + 'api/RFQ/Get_RFQIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&status=' + status);\r\n }\r\n getShipToList(pg, name, status) {\r\n return this.http.get(this.baseUrl + 'api/Shipto/Get_ShiptoIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&name=' + name + '&status=' + status);\r\n }\r\n //`expense` Requests\r\n getExpenseReuests(pg, searchtxt, status, fdate, edate, submittedby, reimbursable) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Get_ExpenseReqs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&submittedby=' + submittedby + '&reimbursable=' + reimbursable);\r\n }\r\n postExpenseReuest(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Expenses/Postt_ExpenseReq', data);\r\n }\r\n getExpenseReuestByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Get_ExpenseReqByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteExpenseReuestByID(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_ExpenseReq?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postExpenseReuest2Expense(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Expenses/Post_ER2Exp', data);\r\n }\r\n //`expense`\r\n getExpenseList(pg, searchtxt, fdate, edate, type, billorreim, tpsync, status) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Get_ExpenseIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&edate=' + edate + '&billorreim=' + billorreim + '&type=' + type + '&tpsync=' + tpsync + '&status=' + status);\r\n }\r\n postExpense(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Expenses/Postt_Expense', data);\r\n\r\n }\r\n deleteExpenseByID(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_Expense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getsuppliers(pg, type, islocal, searchtxt, status) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Get_SupplierIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&islocal=' + islocal + '&searchtxt=' + searchtxt + '&status=' + status);\r\n }\r\n getRfqStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetRFQStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPriorityList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGenericPirorities?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getRfqToPO(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_RFQ2PO?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&rfqid=' + id);\r\n }\r\n postLocalPO(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tickets/Postt_LocalPurchase', data);\r\n }\r\n postRfqToPO(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_RFQ2PO', data);\r\n }\r\n getProdUom() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdUom?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postRfq(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/RFQ/Postt_RFQ', data);\r\n }\r\n postSupplier(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Suppliers/Postt_Supplier', data);\r\n }\r\n //supplier post tab\r\n postSupplierContact(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Suppliers/Postt_SupplierContact', data);\r\n }\r\n getSupplierContacts(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierContacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n getSupplierOrderList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierOrders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n getSupplierStatement(supplierid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/GetSupplierStatement?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getSupplierRfqList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierRFQs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n getSupplierProductList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n getSupplierInvoiceList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n getSupplierexpesneList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierExpenses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n }\r\n\r\n getRfqDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/RFQ/Gett_RFQByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSupplierDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSupplierInfo(supplierid,) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetSupplierInfo?supplierid=' + supplierid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSupplierStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSupplierStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Tracking\r\n postExpTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Expenses/Post_TrackingNotes', data);\r\n }\r\n postrfqTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/RFQ/Post_TrackingNotes', data);\r\n }\r\n postPoTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_TrackingNotes', data);\r\n }\r\n\r\n postPiTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseInvoices/Post_TrackingNotes', data);\r\n }\r\n //purchase invoice\r\n getPurchaseInvoiceList(pg, searchtxt, status, fromdate, todate, type) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseInvoices/Get_PIIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getCustomDeclarationIndex(pg, searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_CustomDeclarationIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fdate=' + fromdate + '&edate=' + todate + '&status=' + status);\r\n }\r\n getSupplierName() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPIstatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPiSearchBy() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPIIndexSearchBy?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPiTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPITypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPITerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPITerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getCurrency() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postInvoice(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseInvoices/Postt_PurchaseInvoice', data);\r\n }\r\n getInvoiceDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseInvoices/Gett_PurchaseInvoiceByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n //\r\n getPurchaseCatalog(supplierid, searchText) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductCatalog4Purchase?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid + '&searchtxt=' + searchText)\r\n }\r\n //receive item \r\n getReceiveBOLItemList(bol, pon, ilc) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_ReceiveBOL?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bol=' + bol + '&pon=' + pon + '&ilc=' + ilc);\r\n\r\n }\r\n //ship to\r\n getCountryList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCountries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getStatusList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetShip2Status?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postShipToData(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipto/Postt_Shipto', data);\r\n }\r\n getShipToDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipto/Gett_ShiptoByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n\r\n //purchase order\r\n getPurchaseOrderList(pg, status, type, fdate, edate, tpsync, searchtxt, localpo) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_POIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&status=' + status + '&type=' + type + '&fdate=' + fdate + '&edate=' + edate + '&localpo=' + localpo + '&tpsync=' + tpsync);\r\n }\r\n postPurchaseOrder(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Postt_PurchaseOrder', data);\r\n\r\n }\r\n getPurchaseOrderDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Gett_PurchaseOrderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getPurchaseRequest(pg, type, status, fromdate, todate, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequests/Get_PRIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&type=' + type + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getPurchaseReqByID(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequests/Gett_PurchaseRequestByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeletePurchaseReq(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseRequests/Delete_PurchaseRequest?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeletePurchaseReqItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseRequests/Delete_PurchaseRequestItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPurchaseRequestDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequests/Gett_PurchaseRequestItemByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getExpStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetExpenseStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getExpType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetExpenseType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getExpsenseDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Gett_ExpenseByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //create sales order from purchase order\r\n createQoute2Salesorder(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_Purchase2SalesOrder?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n createPO2Salesorder(id, customerid, refid, reftype, projref, ordertype) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_Purchase2SalesOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&refid=' + refid + '&reftype=' + reftype + '&projref=' + projref + '&ordertype=' + ordertype)\r\n }\r\n\r\n getExpenseType(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Get_ExpenseTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') +'&pg=1&rw='+this.userprofile.grid_page_size+ '&searchtxt=' + searchtxt)\r\n }\r\n getExpenseTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Gett_ExpenseTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteExpenseType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_ExpenseType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postExpenseType(data) {\r\n return this.http.post(this.baseUrl + 'api/Expenses/Postt_ExpenseType', data);\r\n }\r\n //custom declration\r\n postDeclration(data) {\r\n return this.http.post(this.baseUrl + 'api/Shipping/Postt_Declaration', data);\r\n }\r\n\r\n getRegemeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetRegime?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getMoneyDeclrationList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetMoneyDeclaredFlag?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeclrationDetailsByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Gett_DeclarationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBOLItem(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_BOLItem', data);\r\n }\r\n deleteBOLItem(id, prodid) {\r\n return this.http.delete(this.baseUrl + 'api/Shipping/Delete_BOLItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n deletePO(sid, poid) {\r\n return this.http.delete(this.baseUrl + 'api/Shipping/Delete_POItems?id=' + sid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&poid=' + poid);\r\n }\r\n deleteContainer(conid) {\r\n return this.http.delete(this.baseUrl + 'api/Shipping/Delete_Containers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&conid=' + conid);\r\n }\r\n deletPO(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseOrders/Delete_PurchaseOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postPORestockManually(id) {\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Get_RestockManually?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&poid=' + id, '');\r\n }\r\n postApprovePO(ids) {\r\n\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/ApprovePO?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + ids, '');\r\n }\r\n\r\n postNotifyPO(id) {\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Notify_PurchaseOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'), '');\r\n }\r\n getReceivePO(poid, prodid) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_ReceivePO?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&poid=' + poid + '&prodid=' + prodid);\r\n }\r\n\r\n getPO2PurchaseInvoice(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseInvoices/Gett_PO2PurchaseInvoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postReceivePO(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_ReceivePO', data);\r\n }\r\n\r\n getShortPOItems(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_ShortPOItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPOShortItems(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_ShortPOItems', data);\r\n }\r\n\r\n getPOCosting(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_POCostingByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPOItemConsting(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_POCostingItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPOCosting(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_POCosting', data);\r\n }\r\n postPOProdUpdate(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_ProdUpdate', data);\r\n }\r\n\r\n postApprovePOCosting(poid) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Approve_POCosting?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&poid=' + poid);\r\n }\r\n getTrackingNotes(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_TrackingNotes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTrackingNotes(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_TrackingNotes', data);\r\n }\r\n postPRtoPO(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_PR2PO', data);\r\n }\r\n postPRtoRFQ(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/RFQ/Post_PR2RFQ', data);\r\n }\r\n postPurchaseRequest(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseRequests/Postt_PurchaseRequest', data);\r\n }\r\n postPurchaseRequestItem(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseRequests/Postt_PurchaseRequestItem', data);\r\n }\r\n //tab custom declration tab\r\n getShippingPort() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetShipingPort?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getContainerType(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetContainerType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getPkgType(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPkgType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getGoodsCategory(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGoodsCategories?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getGauranteeType(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGuaranteeType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getShippingAgentList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetShippingAgent?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n termsOfDeliveryList(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTermsOfDelivery?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getFinancePartyList(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetFinanceParty?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n getCodes(ser) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_ComodityCodes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ser=' + ser)\r\n }\r\n getPref() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPref?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCPC(val) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCPC?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=' + val)\r\n }\r\n // Custom declaration\r\n getBolCosting(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_BOLcostingByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBOLsInfo(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_BOLsInfo?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBOLContainers(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_ContainersInfo?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBOlCosting(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_BOLCosting', data);\r\n }\r\n postApproveBolCosting(sid) {\r\n return this.http.post(this.baseUrl + 'api/Shipping/Approve_BOLCosting?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&sid=' + sid, '')\r\n }\r\n postRecalculateItem(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_SavePOItems', data);\r\n }\r\n getStockReconciliation(id, pon, ilc) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_StockReconciliation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pon=' + pon + '&ilc=' + ilc)\r\n }\r\n getPOListForBol(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_POList?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOpenPOs() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetOpenPOs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPOItems(pon) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_ImportPOItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pon=' + pon);\r\n }\r\n postPOItems(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_MapPOItems', data);\r\n }\r\n getVessals() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetVessals?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=')\r\n }\r\n postRestockManually(id) {\r\n return this.http.post(this.baseUrl + 'api/Shipping/Restock_Manual?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'), '');\r\n }\r\n postRestockItemManually(poid, prodid) {\r\n return this.http.post(this.baseUrl + 'api/Shipping/Restock_Item?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&poid=' + poid + '&prodid=' + prodid, '');\r\n }\r\n getTradersInfo(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_TradersInfo?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBOLItemList(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_Itemslist?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&sid=' + id);\r\n }\r\n getBOLItems(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_BOLItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBOLItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Shipping/Delete_BOLItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&itemid=' + id);\r\n }\r\n getContainers(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_ContainerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postContainer(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_Container', data);\r\n }\r\n deletePOMapping(id) {\r\n return this.http.delete(this.baseUrl + 'api/Shipping/Delete_POMapping?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTrader(id) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_TraderByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTrader(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Shipping/Post_Trader', data);\r\n }\r\n\r\n getShippingVendor(number, type) {\r\n return this.http.get(this.baseUrl + 'api/Shipping/Get_ShippingVendors?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&number=' + number + '&type=' + type);\r\n }\r\n\r\n getPurchaseRequestItemHistory(id, searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Gett_ItemPurchaseHistory?prodid=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n deletePurchaseInvLineITem(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseInvoices/Delete_PurchaseInvoiceLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePurchaseInv(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseInvoices/Delete_PurchaseInvoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteRfqLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/RFQ/Delete_RFQLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteRfq(id) {\r\n return this.http.delete(this.baseUrl + 'api/RFQ/Delete_RFQ?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePoLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseOrders/Delete_PurchaseOrderLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteExpLines(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_Expense?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getRfqDues(ids) {\r\n return this.http.get(this.baseUrl + 'api/RFQ/Approve_RFQs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + ids);\r\n }\r\n approvePurchaseRequest(ids) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequests/ApprovePRS?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + ids);\r\n }\r\n sendForApprovalPurchaseRequest(ids) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseRequests/SendforApproval?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + ids);\r\n }\r\n getSupplierCards(id) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierCards?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + id);\r\n }\r\n getSupplierBanks(id) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + id);\r\n }\r\n getSupplierPayout(id) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierPayoutRules?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + id);\r\n }\r\n\r\n getEmpBanksbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmpBanksByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBankData(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Suppliers/Postt_SupplierBank', data);\r\n }\r\n deleteSupplier(id) {\r\n return this.http.delete(this.baseUrl + 'api/Suppliers/Delete_Supplier?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSupplierBank(id) {\r\n return this.http.delete(this.baseUrl + 'api/Suppliers/Delete_SupplierBank?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postsupplierPayout(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Suppliers/Postt_SupplierPayoutRule', data);\r\n }\r\n deleteSupplierPayout(id) {\r\n return this.http.delete(this.baseUrl + 'api/Suppliers/Delete_SupplierPayoutRule?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteSupplierCard(id) {\r\n return this.http.delete(this.baseUrl + 'api/Suppliers/Delete_SupplierCard?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletExpenseCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_ExpenseCategory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteShipTo(id) {\r\n return this.http.delete(this.baseUrl + 'api/Shipto/Delete_ShipTo?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getSupplierWalletLogs(id, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Gett_SupplierWalletLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postWalletTransaction(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Suppliers/Post_SupplierWallet', data);\r\n }\r\n getSupplierWalletTranByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Suppliers/Get_SupplierWalletTranByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //PO Types\r\n getPOType(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Get_POTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=1&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt)\r\n }\r\n getPOTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseOrders/Gett_POTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePOType(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseOrders/Delete_POType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPOType(data) {\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Postt_POType', data);\r\n }\r\n //PI Types\r\n getPIType(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseInvoices/Get_PITypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=1&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt)\r\n }\r\n getPITypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/PurchaseInvoices/Gett_PITypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePIType(id) {\r\n return this.http.delete(this.baseUrl + 'api/PurchaseInvoices/Delete_PIType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPIType(data) {\r\n return this.http.post(this.baseUrl + 'api/PurchaseInvoices/Postt_PIType', data);\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\n\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class reportServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n public projectDataForEdit: '';\r\n public expenseData: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n // company finicial\r\n getTrialBal(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TrialBalance?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getModules() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetModules?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getBalanceSheet(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BalanceSheet?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getEmpCostingSummary(name, code, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeesPaySummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getBalanceComparsion(asondate, period) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BalanceSheetComparisonLike?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&asondate=' + asondate + '&period=' + period);\r\n }\r\n getBalanceComparsionByYear(asondate, period) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BalanceSheetYealyComparison?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&asondate=' + asondate + '&period=' + period);\r\n }\r\n getPeriodList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBSPeriod?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n getProfitLoss(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_PL?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n //account\r\n getGLMapping(searchtxt, module, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_GLMapping?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&module=' + module + '&searchtxt=' + searchtxt + '&status=' + status);\r\n }\r\n getAuditTrail(refno, module, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_AuditTrails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&refno=' + refno + '&module=' + module + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getDeleteTransactions(type, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_DeletedTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getJournls(fromdate, todate, coa, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Journals?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&coa=' + coa + '&status=' + status);\r\n }\r\n getLedger(coa, refno, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Ledgers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&coa=' + coa + '&refno=' + refno + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getCustomerWalletHistory(searchtxt, tranntype, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_CustomerWalletHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&tranntype=' + tranntype + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n getCustomerWalletBalance(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_CustomerWalletBalance?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getAccountDetails(id, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_Accountdetails?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getContractSummary(searchtxt, dtfilterapplyto, categoryid, status, fdate, edate, tpsync) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ContractSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&dtfilterapplyto=' + dtfilterapplyto + '&categoryid=' + categoryid + '&status=' + status + '&fdate=' + fdate + '&edate=' + edate + '&tpsync=' + tpsync);\r\n }\r\n\r\n //customer receivable \r\n getInvoiceAigningSummary(searchtxt, fromdate, todate, currency, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InvoiceAgingSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '¤cy=' + currency + '&status=' + status);\r\n }\r\n getArSigningSummary(searchtxt, currency, yr, mon) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ARAgingSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '¤cy=' + currency + '&yr=' + yr + '&mon=' + mon);\r\n }\r\n\r\n\r\n getCreditUseSummary(customerid, seldate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_CreditUseSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&seldate=' + seldate);\r\n }\r\n\r\n getinvoice(invno, customer, status, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InvoicesHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&invno=' + invno + '&customer=' + customer + '&status=' + status + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getqoute(qteno, customer, status, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_QuotesHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&qteno=' + qteno + '&customer=' + customer + '&status=' + status + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getSalesByCategory(customer, status, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SalesByCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customer + '&status=' + status + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n\r\n //vendor payables\r\n getAPsummary(searchtxt, currency, yr, mon) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_APAgingSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '¤cy=' + currency + '&yr=' + yr + '&mon=' + mon);\r\n }\r\n getBillAgingSummary(searchtxt, fromdate, todate, currency, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BillAgingSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '¤cy=' + currency + '&status=' + status);\r\n }\r\n getExpenseHistory(searchtxt, type, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ExpenseHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getExpenseSummary(createby, expno, type, supplierid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ExpenseSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&createby=' + createby + '&expno=' + expno + '&type=' + type + '&supplierid=' + supplierid + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getExpenseType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetExpenseType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPurchaseOrderSummary(searchtxt, type, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_PurchaseOrderSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getPurchaseInvoiceSummary(searchtxt, type, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_PurchaseInvoiceSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n // Transactions\r\n getDailyTrList(searchtxt, status, ordertype, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_DailyTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&status=' + status + '&ordertype=' + ordertype + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getSoTransaction(customer, reference, mop, status, ordertype, receivedby, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SoTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customer=' + customer + '&reference=' + reference + '&mop=' + mop + '&status=' + status + '&ordertype=' + ordertype + '&receivedby=' + receivedby + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getThirdPatrySynch(tpsync, month, year, txttype) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TransactionTpSync?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tpsync=' + tpsync + '&month=' + month + '&year=' + year + '&txttype=' + txttype);\r\n }\r\n getCountRefList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInventoryCountRefs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getMaterialCostSummary(month, year) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_MaterialCosting?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&month=' + month + '&year=' + year);\r\n }\r\n getAssemblySummary(isAsc, assname, yr) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_AssemblySalesByMonth?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&isAsc=' + isAsc + '&assname=' + assname + '&yr=' + yr);\r\n }\r\n getBolCostingExport(bol, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BolCostingExport?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bol=' + bol + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getBolSummary(bol, po) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_BolSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bol=' + bol + '&po=' + po);\r\n }\r\n getCatLogSummary(searchtxt, dept, categoryid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_CatalogSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&deptid=' + dept + '&categoryid=' + categoryid);\r\n }\r\n getInternalTransfer(reqno, ilc, desc, binid, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InternalTransfers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&reqno=' + reqno + '&ilc=' + ilc + '&desc=' + desc + '&binid=' + binid + '&status=' + status);\r\n }\r\n getInvAdjustment(trantype, month, year) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_MaterialDj?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&trantype=' + trantype + '&month=' + month + '&year=' + year);\r\n }\r\n getInvBalance(asondate, onhandonly) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InvBalance?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&asondate=' + asondate + '&onhandonly=' + onhandonly);\r\n }\r\n getInvByBin(ilc, desc, category) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InventoryByBin?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&category=' + category);\r\n }\r\n getInvCountDisparancy(ilc, desc, binid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InventoryCountDiscrepancy?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&binid=' + binid);\r\n }\r\n getInvCostComparison(searchtxt, deptid, catid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProdCostingReview?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&categoryid=' + catid);\r\n }\r\n getInvMovmentHistory(searchtxt, trantype, deptid, categoryid, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProdMovementHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&categoryid=' + categoryid + '&trantype=' + trantype + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getSalescountByMonth(searchtxt, category, deptid, year) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SalesByMonth?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&year=' + year + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&category=' + category);\r\n }\r\n getSalesCountByYear(searchtxt, category, deptid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SalesByYear?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&category=' + category);\r\n }\r\n getInvValueByInvoice(asondate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_InvValueByInvoice?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&asondate=' + asondate);\r\n }\r\n getLandedCostAudit(ilc, desc, pon, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_LandedCostaudit?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&pon=' + pon + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getLotExpireList(ilc, desc, binid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_LotExpiry?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&binid=' + binid);\r\n }\r\n getManualStockAudit(printcount, dept, cat) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ManualStockAudit?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&printcount=' + printcount + '&deptid=' + dept + '&categoryid=' + cat);\r\n }\r\n getInvOrderHistory(searchtxt, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProdOrderHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getRecentTransactions(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_RecentTransactions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getPickupHistory(ilc, status, orderno, orderref, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SopickStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&status=' + status + '&orderno=' + orderno + '&orderref=' + orderref + '&fromdate=' + fromdate + '&todate=' + todate);\r\n\r\n }\r\n getPriceAudting(ilc, desc, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProductsPriceAuditing?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getProductSerialSummary(searchtxt, deptid, catid, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SerialSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&categoryid=' + catid + '&status=' + status);\r\n }\r\n getProdReplunishment(minmax, van, searchtxt, dept, cat, supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProdReplunishment?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&page_number=' + '&minmax=' + minmax + '&van=' + van + '&searchtxt=' + searchtxt + '&categoryid=' + cat + '&deptid=' + dept + '&supplierid=' + supplierid);\r\n }\r\n getInvRevenueByProduct(searchtxt, fromdate, todate, dept, categoryid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_RevenueByProducts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '&deptid=' + dept + '&categoryid=' + categoryid);\r\n }\r\n getSalesVsCostSummary(ilc, desc, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SalesVsCostSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getStockCostSummary(ilc, desc, catid, deptid, type) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_StockCostReport?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&desc=' + desc + '&catid=' + catid + '&deptid=' + deptid + '&type=' + type);\r\n }\r\n getStockSummary(ilc, description, dept, categoryid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_StockSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&description=' + description + '&deptid=' + dept + '&categoryid=' + categoryid);\r\n }\r\n getWomaterials(vpsync, month, year) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_WomaterialSpending?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&vpsync=' + vpsync + '&month=' + month + '&year=' + year);\r\n }\r\n getNotCountedItems(countid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_NotCountedItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&countid=' + countid);\r\n }\r\n // getcustomer devices\r\n getCustomerDevices(searchtxt, type) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_CustomerDevices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type);\r\n }\r\n\r\n //Task & Tickets\r\n getTicketTimeLog() {\r\n\r\n }\r\n getTicketSummary(status, customer, proj, site, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TicketSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&status=' + status + '&customer=' + customer + '&proj=' + proj + '&site=' + site + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getUnbilledTimeLogs(projid, customerid, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_UnbilledTimeLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + projid + '&customerid=' + customerid + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getTechTicketLogs(tech, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_TechTicketLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tech=' + tech + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getWorkLogSummary(fromdate, todate, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_WorkLogSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&empid=' + empid);\r\n }\r\n getEmployeeReminders() {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_EmployeeReminders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getOrders(customerid, projid, orderno, status, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProjectOrders?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&projid=' + projid + '&orderno=' + orderno + '&status=' + status + '&fdate=' + fdate + '&tdate=' + tdate);\r\n\r\n }\r\n getServiceContractTicketSummary(contractid, categoryid, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_ServiceContractTicketSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + contractid + '&categoryid=' + categoryid + '&fromdate=' + fdate + '&todate=' + tdate);\r\n }\r\n getServiceContract() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetContracts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getInvoices(projid, customerid, status, invno, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProjectInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + projid + '&customerid=' + customerid + '&invno=' + invno + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getTicketInventory(searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TicketsInventoryCost?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n getUnbilledTimeLog(projid, customerid, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_UnbilledTimeLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&projid=' + projid + '&customerid=' + customerid + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n\r\n\r\n // Reports HR Payroll\r\n\r\n getAccessCard(ename, code, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeAccessCards?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + ename + '&code=' + code + '&fromdate=' + fdate + '&todate=' + tdate);\r\n }\r\n getApprisal(name, code, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeAppraisals?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate)\r\n // Reports/Gett_EmployeeAppraisals\r\n }\r\n getConcessionpasses(name, code, fromdate, todate) {\r\n // Gett_EmployeeConcessionPasses\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeConcessionPasses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n\r\n getDisplinaryLogList(code, name, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeDisciplinaryLog?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&code=' + code + '&name=' + name + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getEmpCosting() {\r\n\r\n }\r\n getEmpAnnivarsary(name, email, code, gender) {\r\n // Gett_EmployeeAnniversaries\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeAnniversaries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&email=' + email + '&code=' + code + '&gender=' + gender)\r\n }\r\n getEmpBirthday(name, email, code, gender) {\r\n // Reports/Gett_EmployeeBirthdays\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeBirthdays?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&email=' + email + '&code=' + code + '&gender=' + gender)\r\n }\r\n getHurricaneContactList(name, code, fromdate, todate) {\r\n // Gett_EmployeeHurricanepocs\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeHurricanepocs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getInsuranceList(name, code, fromdate, todate) {\r\n // Gett_EmployeeInsurances\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeInsurances?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getJobApplicantsList(position, fromdate, todate) {\r\n // Gett_EmployeeJobApps\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeJobApps?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&position=' + position + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n getEmpHurricanePOCsList(name, code, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeHurricanepocs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getEmployeeList(ename, email, phone, code, paytype, etype, gender) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeesHistory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + ename + '&email=' + email + '&phone=' + phone + '&code=' + code + '&paytype=' + paytype + '&etype=' + etype + '&gender=' + gender);\r\n }\r\n getEmpPensionsList(name, code, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeePensions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getWorkpermitList(name, code, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeeWorkPermits?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n\r\n getEmployeePaySummary(name, code, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmployeesPaySummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code + '&fromdate=' + fdate + '&todate=' + tdate);\r\n }\r\n\r\n // task & ticket\r\n getTechHrs(tech, fromdate, todate, status, designation, department) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TechHours?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tech=' + tech + '&fromdate=' + fromdate + '&todate=' + todate + '&department=' + department + '&designation=' + designation + '&status=' + status);\r\n }\r\n // task & ticket\r\n getTechHourDetails(tech, doe) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_GetTechHourDetails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tech=' + tech + '&doe=' + doe);\r\n }\r\n //timesheet\r\n getTimesheet(name, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Timesheet?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n //timeSheetLog\r\n getTimesheetLogs(employeeid_id, fromdate, todate, project_id, type) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_Timesheetlogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid_id=' + employeeid_id + '&projid=' + project_id + '&fromdate=' + fromdate + '&todate=' + todate + '&type=' + type);\r\n }\r\n\r\n getTimesheetHeader(employeeid_id, fromdate, todate, project_id, type) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_TimesheetHeader?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid_id=' + employeeid_id + '&projid=' + project_id + '&fromdate=' + fromdate + '&todate=' + todate + '&type=' + type);\r\n }\r\n\r\n getsnagsummary(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SnagSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getTaskummary(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_TaskSummary?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n // ESIC Contribution\r\n get_ESIC_Contribution(payrollid, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Payroll_ESIC_Contribution?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&payrollid=' + payrollid + '&empid=' + empid);\r\n }\r\n\r\n // EPF Contribution\r\n get_EPF_Contribution(payrollid, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Payroll_EPF_Contribution?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&payrollid=' + payrollid + '&empid=' + empid);\r\n }\r\n\r\n // Employee Roster Details\r\n getRoasterDetails(fromdate, todate, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Employee_Roaster_Details?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&empid=' + empid);\r\n }\r\n\r\n // Monthly attendance Component\r\n getAttendanceMonthly(yr, mon, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_AttendanceMonthly?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&yr=' + yr + '&mon=' + mon + '&empid=' + empid);\r\n }\r\n\r\n // Monthly attendance Component\r\n getPensionInsurContribution(payrollid, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Payroll_Pension_Insur_Contribution?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&payrollid=' + payrollid + '&empid=' + empid);\r\n }\r\n\r\n // Monthly attendance Component\r\n getPaymentsPaid(supplierid, currency, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_PaymentsPaid?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid + '¤cy=' + currency + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n\r\n // CustomerPayments\r\n getCustomerPayments(searchtext, currency, mop, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_PaymentReceived?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + searchtext + '¤cy=' + currency + '&mop=' + mop + '&fdate=' + fdate + '&tdate=' + tdate);\r\n }\r\n getChequesIssued(fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ChequesIssued?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n getChequesReceived(fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ChequesReceived?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n\r\n getSqlErrorLog(fromdate, todate, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SQLErrorLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&searchtxt=' + searchtxt)\r\n }\r\n getSqlJobLog(fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_SQLJobLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n\r\n getOnlinePayments(searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_OnlinePayments?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n\r\n getFSNAnalysis(searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_FSNAnalysis?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getEmpEarlyGoingLateComing(searchtxt, fromdate, todate, empid) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_EmpEarlyGoingLateComing?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate + '&empid=' + empid);\r\n }\r\n getEmpshiftlog(searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_Empshiftlog?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getItemCompatibility(prodid, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ItemCompatibility?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid + '&searchtxt=' + searchtxt);\r\n }\r\n getProfitAndLoss(fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Gett_ProfitLossStatement?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getMappingAcc(status, node_type, account_type, detail_type) {\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_COA_Mapping_Accountant?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&mapping_status='+ status +'&node_type=' + node_type + '&account_type='+ account_type +'&detail_type=' + detail_type);\r\n }\r\n getDetailType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDetailTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProdUomMapping(mapping_type){\r\n return this.http.get(this.baseUrl + 'api/Reports/Get_Product_UOM_Mapping?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&mapping_type='+ mapping_type);\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, ElementRef, Input, NgZone, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SalesServices } from '../../Sales/sales.service';\r\nimport { COMMA, ENTER, T } from '@angular/cdk/keycodes';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { SchedulerServices } from '../scheduler.service';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { serviceManagerServices } from '../../servicemanager/servicemanager.service';\r\nimport { MapsAPILoader } from '@agm/core';\r\nimport { CustomerslistComponent } from '../../servicemanager/servicecontracts/customerlist/customerlist.component';\r\nimport { AuthorizationModalComponent } from '../../modal/authorization/authorization.component';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-schedule',\r\n templateUrl: './schedule.component.html',\r\n styleUrls: ['./schedule.component.scss']\r\n})\r\nexport class ScheduleComponent implements OnInit {\r\n geoCoder: any\r\n @ViewChild('search') public searchElementRef: ElementRef;\r\n zoom: any;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n editSetCustomer: any;\r\n customerSites: any;\r\n tagName: any;\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n tagCtrl = new FormControl('');\r\n filteredTags: Observable;\r\n tags: any = [];\r\n allTags: any = [];\r\n Resources: any = [];\r\n public eventResponse: any = {\r\n \"id\": null,\r\n \"ts_id\": null,\r\n \"siteid\": '',\r\n \"subject\": '',\r\n \"text\": '',\r\n \"status\": 'open',\r\n \"start_date\": null,\r\n \"due_date\": null,\r\n \"end_date\": null,\r\n \"fullday\": 'No',\r\n \"workcompleted\": 'No',\r\n \"multi_day\": 'No',\r\n \"customerid\": null,\r\n \"customer_name\": '',\r\n \"technician\": null,\r\n \"companyid\": null,\r\n \"attentionto\": null,\r\n \"low\": null,\r\n \"requestedby\": null,\r\n \"poc\": '',\r\n \"phone\": '',\r\n \"category\": '',\r\n \"subcategory\": '',\r\n \"notifycustomers\": 'No',\r\n \"priority\": 'low',\r\n \"directions\": '',\r\n \"lat\": '',\r\n \"lng\": '',\r\n \"customer_notice\": '',\r\n \"devices\": '',\r\n \"username\": '',\r\n \"techniciansellist\": [],\r\n \"devicesellist\": [],\r\n \"subcat_default_line\": false,\r\n \"duration\": null,\r\n \"categoryid\": '',\r\n \"subcategoryid\": '',\r\n \"estimatedhrs\": 1,\r\n \"createby\": null,\r\n \"createdate\": null,\r\n \"updateby\": null,\r\n \"upatedate\": null,\r\n \"estimatedhrs_perday_pertech\": 0,\r\n \"is_update_future_tickets\": false,\r\n \"contract_recurrence_id\": null\r\n };\r\n\r\n customerDeviceList: any = [];\r\n public technicianList = [];\r\n @ViewChild('tagInput') tagInput: any;\r\n @ViewChild('Customer') Customer;\r\n @Input('params') params;\r\n isDropDownOpen: boolean = false;\r\n custInfoResponse: any\r\n @ViewChild(CustomerslistComponent, { static: false }) CustomersComponent: CustomerslistComponent;\r\n keyword = 'Text';\r\n site: any;\r\n isShowEndDate = true;\r\n categoryList: any = [];\r\n subCategoryList: any = [];\r\n priorityList: any = [];\r\n statusList: any = [];\r\n totalWorkHrs: any = [];\r\n totalEstimatedHrs: any;\r\n addOnFocusOut = true;\r\n isCloseModal = false;\r\n action: any;\r\n customerInfos: any = {};\r\n private langChangeSubscription: Subscription; \r\n constructor(\r\n private translate: TranslateService, \r\nprivate languageService: LanguageService, \r\nprivate http: HttpClient, \r\n private modalService: NgbModal,\r\n private toastr: NotificationService,\r\n private datePipe: DatePipe, private service: SalesServices,\r\n private loader: NgxUiLoaderService,\r\n private commonService: CommonServices,\r\n private cd: ChangeDetectorRef,\r\n private serviceManager: serviceManagerServices,\r\n private schedulerService: SchedulerServices,\r\n private mapsAPILoader: MapsAPILoader,\r\n private ngZone: NgZone,\r\n private activeModal: NgbActiveModal) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.commonService.getTicketStatuses().subscribe(res => {\r\n this.statusList = res;\r\n });\r\n }\r\n getCustomerDevices() {\r\n this.commonService.getCustomerDevices(this.eventResponse.customerid, this.eventResponse.siteid).subscribe(data => {\r\n this.customerDeviceList = data;\r\n environment.production ? '' : console.log('customerDevice list', this.customerDeviceList)\r\n var deviceArray = [];\r\n if (this.eventResponse.devices) {\r\n deviceArray = this.eventResponse.devices.split(',');\r\n }\r\n if (this.customerDeviceList.length > 0) {\r\n deviceArray.forEach(device => {\r\n this.customerDeviceList.forEach(res => {\r\n if (device == res.Value) {\r\n res.checked = true;\r\n } else {\r\n res.checked = false;\r\n }\r\n })\r\n })\r\n }\r\n })\r\n }\r\n onDateChangeEvent() {\r\n return;\r\n if (this.eventResponse.due_date == undefined || this.eventResponse.due_date == null) {\r\n return;\r\n }\r\n this.calculateHrsInTwoDte(this.eventResponse.start_date, this.eventResponse.due_date)\r\n }\r\n calculateHrsInTwoDte(startDte, endDte) {\r\n //Works for iOS\r\n // var timeStart = new Date((startDte).replace(/-/g, \"/\")).getTime().valueOf();\r\n // var timeEnd = new Date((endDte).replace(/-/g, \"/\")).getTime().valueOf();\r\n var timeStart = new Date(startDte).getTime();\r\n var timeEnd = new Date(endDte).getTime();\r\n var hourDiff = timeEnd - timeStart; //in ms\r\n var secDiff = hourDiff / 1000; //in s\r\n var minDiff = hourDiff / 60 / 1000; //in minutes\r\n var hDiff = hourDiff / 3600 / 1000; //in hours\r\n var hours = Math.floor(hDiff);\r\n var minutes = minDiff - 60 * hours;\r\n this.totalWorkHrs = [];\r\n this.totalWorkHrs.push({\r\n hours: Math.floor(hDiff),\r\n minutes: minutes\r\n })\r\n this.calculateTotalHrs();\r\n }\r\n calculateTotalHrs() {\r\n var totalWrkHrs = 0, totalWrkMnt = 0;\r\n if (this.totalWorkHrs.length > 0) {\r\n this.totalWorkHrs.forEach((element) => {\r\n totalWrkHrs += element.hours;\r\n totalWrkMnt += element.minutes;\r\n });\r\n }\r\n totalWrkHrs += totalWrkMnt / 60;\r\n totalWrkMnt = totalWrkMnt % 60;\r\n var workHrs = ('' + totalWrkHrs).substring(0, 2).replace('.', '');\r\n var workMin = ('' + totalWrkMnt).substring(0, 2).replace('.', '');\r\n this.totalEstimatedHrs = workHrs;\r\n this.totalEstimatedHrs = this.totalEstimatedHrs + '.' + workMin;\r\n this.eventResponse.estimatedhrs = this.timeStringToFloat(this.totalEstimatedHrs);\r\n }\r\n timeStringToFloat(time) {\r\n var hoursMinutes = time.split(/[.:]/);\r\n var hours = parseInt(hoursMinutes[0], 10);\r\n var minutes = hoursMinutes[1] ? parseInt(hoursMinutes[1], 10) : 0;\r\n return this.round(hours + minutes / 60, 1);\r\n }\r\n round(value, precision) {\r\n var multiplier = Math.pow(10, precision || 0);\r\n return Math.round(value * multiplier) / multiplier;\r\n }\r\n confirmationSubmit() {\r\n if (!this.eventResponse.contract_recurrence_id) {\r\n this.Save();\r\n return;\r\n }\r\n Swal.fire({\r\n title: 'Do you want to update this and all future schedules?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.eventResponse.is_update_future_tickets = true;\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n this.eventResponse.is_update_future_tickets = false;\r\n }\r\n this.Save();\r\n })\r\n }\r\n Save() {\r\n if (this.eventResponse.subject == undefined || this.eventResponse.subject == null) {\r\n this.toastr.Error('Please enter subject');\r\n return;\r\n }\r\n if (this.eventResponse.fullday == 'No' && (this.eventResponse.due_date == undefined || this.eventResponse.due_date == null)) {\r\n this.toastr.Error('Please enter end date');\r\n return;\r\n }\r\n if (this.eventResponse.text == undefined || this.eventResponse.text == null) {\r\n this.toastr.Error('Please enter scope of work');\r\n return;\r\n }\r\n if (this.eventResponse.status == undefined || this.eventResponse.status == null) {\r\n this.toastr.Error('Please select status');\r\n return;\r\n }\r\n var techs;\r\n var devices;\r\n var t_ticketdevices = [];\r\n if (this.customerDeviceList.length > 0) {\r\n this.customerDeviceList.forEach((d, i) => {\r\n if (d.checked) {\r\n if (devices == undefined || devices == null) {\r\n devices = d.Value;\r\n } else {\r\n devices += ',' + d.Value;\r\n }\r\n t_ticketdevices.push({\r\n tid: this.eventResponse.id,\r\n deviceid: d.Value\r\n })\r\n }\r\n })\r\n }\r\n var t_ticketemployees = [];\r\n if (this.technicianList.length > 0) {\r\n this.technicianList.forEach((t, i) => {\r\n if (t.checked) {\r\n if (techs == undefined || techs == null) {\r\n techs = t.id;\r\n } else {\r\n techs += ',' + t.id;\r\n }\r\n t_ticketemployees.push({\r\n tid: this.eventResponse.id,\r\n employeeid: t.employee_id,\r\n active: 'true',\r\n })\r\n }\r\n });\r\n }\r\n var tags = null;\r\n if (this.tags.length > 0) {\r\n this.tags.forEach((t, i) => {\r\n if (tags == undefined || tags == null) {\r\n tags = t;\r\n } else {\r\n tags += ',' + t;\r\n }\r\n });\r\n }\r\n this.eventResponse.tags = tags;\r\n if (this.eventResponse.id != undefined && this.eventResponse.id != null && this.eventResponse.id > 0) {\r\n this.eventResponse.updateby = this.userprofile.email;\r\n this.eventResponse.updatedate = this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat);\r\n } else {\r\n this.eventResponse.username = this.userprofile.email;\r\n this.eventResponse.companyid = this.userprofile.companyid;\r\n this.eventResponse.createby = this.userprofile.email;\r\n this.eventResponse.createdate = this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat);\r\n }\r\n this.eventResponse.workcompleted = this.eventResponse.workcompleted == 'Yes' ? 1 : 0;\r\n this.eventResponse.notifycustomers = this.eventResponse.notifycustomers == 'Yes' ? 1 : 0;\r\n this.eventResponse.fullday = this.eventResponse.fullday == 'Yes' ? 1 : 0;\r\n this.eventResponse.multi_day = this.eventResponse.multi_day == 'Yes' ? 1 : 0;\r\n this.eventResponse.exclude_public_holidays = this.eventResponse.exclude_public_holidays == 'Yes' ? 1 : 0;\r\n this.eventResponse.week_days_only = this.eventResponse.week_days_only == 'Yes' ? 1 : 0;\r\n this.eventResponse.techniciansellist = techs ? techs.split(',') : [];\r\n this.eventResponse.devicesellist = devices ? devices.split(',') : [];\r\n this.eventResponse.t_ticketemployees = t_ticketemployees;\r\n this.eventResponse.t_ticketdevices = t_ticketdevices;\r\n this.eventResponse.technician = techs;\r\n this.eventResponse.devices = devices;\r\n this.eventResponse.customer_notice = this.eventResponse.customer_notice;\r\n\r\n environment.production ? '' : console.log('request ' + JSON.stringify(this.eventResponse));\r\n\r\n this.loader.start();\r\n this.schedulerService.postEvent(this.eventResponse).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isCloseModal = true;\r\n this.closeModal();\r\n } else {\r\n this.toastr.Error(res.status)\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n\r\n getSiteInfo() {\r\n if (!this.eventResponse.siteid) {\r\n return;\r\n }\r\n this.commonService.getSiteInfo(this.eventResponse.siteid).subscribe(res => {\r\n this.site = res;\r\n this.eventResponse.poc = this.site.poc ? this.site.poc : this.eventResponse.poc;\r\n this.eventResponse.phone = this.site.phone ? this.site.phone : this.eventResponse.phone;\r\n this.eventResponse.low = this.site.low ? this.site.low : this.eventResponse.low;\r\n // this.eventResponse.customer_notice = this.site.notice ? (this.eventResponse.customer_notice ? this.eventResponse.customer_notice + ', Site Notes: ' + this.site.notice : ('Site Notes: ' + this.site.notice)) : this.eventResponse.customer_notice;\r\n this.eventResponse.customer_notice = this.site.notice ? this.site.notice : this.eventResponse.customer_notice;\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading project data', err);\r\n });\r\n }\r\n ngOnInit(): void {\r\n if (this.params == undefined) {\r\n return;\r\n }\r\n this.eventResponse.id = this.params.id ? this.params.id : null;\r\n this.eventResponse.technician = this.params.technician ? this.params.technician : null;\r\n this.eventResponse.start_date = this.params.start_date ? this.params.start_date : null;\r\n this.eventResponse.end_date = this.params.end_date ? this.params.end_date : null;\r\n this.action = this.params.action ? this.params.action : null;\r\n this.mapsAPILoader.load().then(() => {\r\n this.geoCoder = new google.maps.Geocoder;\r\n let autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement);\r\n autocomplete.addListener(\"place_changed\", () => {\r\n this.ngZone.run(() => {\r\n //get the place result\r\n let place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n this.eventResponse.directions = place.formatted_address;\r\n //verify result\r\n if (place.geometry === undefined || place.geometry === null) {\r\n return;\r\n }\r\n //set latitude, longitude and zoom\r\n this.eventResponse.lat = place.geometry.location.lat();\r\n this.eventResponse.lng = place.geometry.location.lng();\r\n this.zoom = 12;\r\n });\r\n });\r\n });\r\n this.schedulerService.getSchedulerResources().subscribe((res: any) => {\r\n this.Resources = res;\r\n this.technicianList = res;\r\n // this.calendarOptions.resources = this.Resources;\r\n this.cd.detectChanges();\r\n this.setResources();\r\n environment.production ? '' : console.log('resources', this.Resources)\r\n });\r\n var editDataForHeader = '';\r\n this.commonService.headerEditItemData.next(editDataForHeader); //end '\r\n var parentid = ''\r\n this.commonService.getTicketCategories(parentid).subscribe(data => {\r\n this.categoryList = data;\r\n environment.production ? '' : console.log('Category list', this.categoryList)\r\n })\r\n this.commonService.getComboEnums('ticketpriorities').subscribe(data => {\r\n this.priorityList = data;\r\n environment.production ? '' : console.log('Priority list', this.priorityList)\r\n })\r\n\r\n\r\n if (this.eventResponse.id) {\r\n this.schedulerService.getSchedulerEventByID(this.eventResponse.id).subscribe(res => {\r\n environment.production ? '' : console.log('eventresponse', res);\r\n this.loader.stop();\r\n this.eventResponse = res;\r\n if (this.eventResponse.workcompleted) {\r\n this.eventResponse.workcompleted = 'Yes';\r\n } else {\r\n this.eventResponse.workcompleted = 'No';\r\n }\r\n if (this.eventResponse.fullday) {\r\n this.eventResponse.fullday = 'Yes';\r\n this.isShowEndDate = false;\r\n } else {\r\n this.eventResponse.fullday = 'No';\r\n this.isShowEndDate = true;\r\n }\r\n if (this.eventResponse.notifycustomers) {\r\n this.eventResponse.notifycustomers = 'Yes';\r\n } else {\r\n this.eventResponse.notifycustomers = 'No';\r\n }\r\n if (this.eventResponse.multi_day) {\r\n this.eventResponse.multi_day = 'Yes';\r\n } else {\r\n this.eventResponse.multi_day = 'No';\r\n }\r\n if (this.eventResponse.exclude_public_holidays) {\r\n this.eventResponse.exclude_public_holidays = 'Yes';\r\n } else {\r\n this.eventResponse.exclude_public_holidays = 'No';\r\n }\r\n if (this.eventResponse.week_days_only) {\r\n this.eventResponse.week_days_only = 'Yes';\r\n } else {\r\n this.eventResponse.week_days_only = 'No';\r\n }\r\n if (this.eventResponse.siteid != undefined && this.eventResponse.siteid != null) {\r\n this.eventResponse.siteid = '' + this.eventResponse.siteid;\r\n } else {\r\n this.eventResponse.siteid = '';\r\n }\r\n if (this.eventResponse.end_date != undefined && this.eventResponse.end_date != null) {\r\n this.eventResponse.end_date = this.eventResponse.end_date ? this.datePipe.transform(this.eventResponse.end_date, this.userprofile.postdateformat) : null;\r\n }\r\n if (this.eventResponse.tags) {\r\n this.tags = this.eventResponse.tags.split(',');\r\n }\r\n\r\n environment.production ? '' : console.log('eventresponse', this.eventResponse);\r\n this.getCustomerDevices();\r\n this.getSubCategories();\r\n this.getCustomerSites();\r\n this.setResources();\r\n })\r\n }\r\n this.setResources();\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n setResources() {\r\n if (this.technicianList.length > 0 && this.eventResponse.technician) {\r\n var techArray = [];\r\n if (this.eventResponse.technician) {\r\n techArray = this.eventResponse.technician.split(',');\r\n }\r\n this.technicianList.forEach(res => {\r\n res.checked = false;\r\n })\r\n techArray.forEach(tech => {\r\n this.technicianList.forEach(res => {\r\n if (tech == res.id) {\r\n res.checked = true;\r\n }\r\n })\r\n })\r\n }\r\n }\r\n getSubCategories() {\r\n this.categoryList.forEach(element => {\r\n if (element.Value == this.eventResponse.categoryid) {\r\n this.eventResponse.category = element.Text;\r\n }\r\n });\r\n this.loader.start();\r\n this.commonService.getTicketCategories(this.eventResponse.categoryid).subscribe(data => {\r\n this.loader.stop();\r\n this.subCategoryList = data;\r\n this.selectSubCategory();\r\n environment.production ? '' : console.log('SubCategory list', this.subCategoryList)\r\n })\r\n }\r\n\r\n selectSubCategory() {\r\n this.subCategoryList.forEach(element => {\r\n if (element.Value == this.eventResponse.subcategoryid) {\r\n this.eventResponse.subcategory = element.Text;\r\n this.eventResponse.subcategoryid = '' + this.eventResponse.subcategoryid;\r\n }\r\n });\r\n }\r\n selectCustomer(item) {\r\n environment.production ? '' : console.log('selected customer', item);\r\n this.eventResponse.customerid = parseFloat(item.Value);\r\n if (this.isDropDownOpen) {\r\n this.customerInfo()\r\n }\r\n // this.getCustomerDevices();\r\n // this.getCustomerSites();\r\n }\r\n\r\n SelectedCustomer() {\r\n if (this.CustomersComponent.selectedCustomer) {\r\n if (this.CustomersComponent.selectedCustomer.id && this.CustomersComponent.selectedCustomer.authorizationreq) {\r\n this.openAuthorizationModal();\r\n } else {\r\n this.setSelectedCustomer();\r\n }\r\n }\r\n }\r\n setSelectedCustomer() {\r\n this.customerInfos = this.CustomersComponent.selectedCustomer;\r\n this.eventResponse.customerid = this.customerInfos.id;\r\n this.eventResponse.customer_name = this.customerInfos.name;\r\n this.customerInfo()\r\n }\r\n\r\n changeDropDownStatus() {\r\n this.isDropDownOpen = true;\r\n\r\n }\r\n inputCustomerCleared() {\r\n this.eventResponse.customerid = null;\r\n environment.production ? '' : console.log('Customer value cleared', this.eventResponse.customerid);\r\n }\r\n onFocusedCustomer($event) {\r\n if (this.Customer) {\r\n this.Customer.clear();\r\n }\r\n }\r\n getCustomerSites() {\r\n if (this.eventResponse.customerid == undefined || this.eventResponse.customerid == null) {\r\n return;\r\n }\r\n this.commonService.getCustomerSiteList(this.eventResponse.customerid).subscribe(data => {\r\n this.customerSites = data;\r\n this.getCustomerDevices();\r\n environment.production ? '' : console.log('site list', this.customerSites)\r\n })\r\n }\r\n customerInfo() {\r\n if (this.eventResponse.customerid == undefined || this.eventResponse.customerid == null) {\r\n return;\r\n }\r\n this.commonService.getCustomerInfo(this.eventResponse.customerid).subscribe(res => {\r\n this.custInfoResponse = res;\r\n // this.contractList = this.custInfoResponse.contractlist;\r\n this.customerDeviceList = this.custInfoResponse.deviceslist\r\n // this.projectList = this.custInfoResponse.projlist;\r\n this.customerSites = this.custInfoResponse.sitelist;\r\n this.eventResponse.poc = this.custInfoResponse.poc;\r\n this.eventResponse.phone = this.custInfoResponse.primaryphone;\r\n this.eventResponse.low = this.custInfoResponse.low;\r\n this.eventResponse.customer_notice = this.custInfoResponse.notice;\r\n if (this.customerDeviceList.length > 0) {\r\n var deviceArray = [];\r\n if (this.eventResponse.devices) {\r\n deviceArray = this.eventResponse.devices.split(',');\r\n }\r\n if (this.customerDeviceList.length > 0) {\r\n this.customerDeviceList.forEach(res => {\r\n res.checked = false;\r\n })\r\n deviceArray.forEach(device => {\r\n this.customerDeviceList.forEach(res => {\r\n if (device == res.Value) {\r\n res.checked = true;\r\n }\r\n })\r\n })\r\n }\r\n }\r\n environment.production ? '' : console.log('cust data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading project data', err);\r\n });\r\n\r\n\r\n\r\n }\r\n onCustomerChange(custID) {\r\n this.getCustomerDevices();\r\n }\r\n technicianClick(tech) {\r\n tech.checked = !tech.checked;\r\n }\r\n deviceClick(device) {\r\n device.checked = !device.checked;\r\n }\r\n getTags() {\r\n this.commonService.getTags('AddTicket').subscribe((res: any) => {\r\n if (res != null) {\r\n this.allTags = [];\r\n res.forEach(element => {\r\n this.allTags.push(element.Value);\r\n })\r\n }\r\n this.filteredTags = this.tagCtrl.valueChanges.pipe(\r\n startWith(null),\r\n map((tag: string | null) => (tag ? this._filter(tag) : this.allTags.slice())),\r\n );\r\n environment.production ? '' : console.log('tags data ', res);\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading tags data', err);\r\n });\r\n }\r\n\r\n add(event: MatChipInputEvent): void {\r\n const value = (event.value || '').trim();\r\n // Add our tag\r\n if (value) {\r\n var isExists = false;\r\n if (this.tags.length > 0) {\r\n this.tags.forEach(element => {\r\n if (element == value) {\r\n isExists = true;\r\n }\r\n })\r\n }\r\n if (!isExists) {\r\n this.tags.push(value);\r\n }\r\n }\r\n var isExists = false;\r\n this.allTags.forEach(element => {\r\n if (element == value) {\r\n isExists = true;\r\n }\r\n })\r\n if (!isExists) {\r\n var postTagObj = {\r\n \"description\": value,\r\n \"active\": true,\r\n \"createby\": this.userprofile.email,\r\n \"createdate\": this.datePipe.transform(new Date(), this.userprofile.postdatetimeformat),\r\n \"companyid\": this.userprofile.companyid,\r\n \"color\": \"\",\r\n \"pg\": \"AddTicket\",\r\n }\r\n this.loader.start();\r\n this.commonService.postTags(postTagObj).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.getTags();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n });\r\n }\r\n // Clear the input value\r\n event.chipInput!.clear();\r\n\r\n this.tagCtrl.setValue(null);\r\n }\r\n ngOnDestroy() {\r\n this.modalService.dismissAll();\r\n }\r\n remove(tag: string): void {\r\n const index = this.tags.indexOf(tag);\r\n if (index >= 0) {\r\n this.tags.splice(index, 1);\r\n }\r\n }\r\n\r\n selected(event: MatAutocompleteSelectedEvent): void {\r\n this.tags.push(event.option.viewValue);\r\n this.tagInput = '';\r\n this.tagCtrl.setValue(null);\r\n }\r\n\r\n private _filter(value: string): string[] {\r\n const filterValue = value.toLowerCase();\r\n\r\n return this.allTags.filter(tag => tag.toLowerCase().includes(filterValue));\r\n }\r\n //#endregion\r\n\r\n deleteTicket() {\r\n Swal.fire({\r\n title: 'Are you sure want to delete?',\r\n // text: 'You will not be able to recover this file!',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.loader.start();\r\n this.serviceManager.deleteTicket(this.eventResponse.id).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n this.isCloseModal = true;\r\n this.closeModal();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n // Swal.fire(\r\n // 'Cancelled',\r\n // 'Your imaginary file is safe :)',\r\n // 'error'\r\n // )\r\n }\r\n })\r\n }\r\n closeModal() {\r\n this.activeModal.close(this.isCloseModal);\r\n }\r\n openAuthorizationModal() {\r\n var modalRef = this.modalService.open(AuthorizationModalComponent, { size: 'sm', });\r\n modalRef.result.then((result: any) => {\r\n if (result != undefined && result != 'close') {\r\n this.eventResponse.authorizedby = result.authorizedby;\r\n this.eventResponse.authorizationnotes = result.authorizationnotes;\r\n this.setSelectedCustomer();\r\n }\r\n }).catch((error) => {\r\n environment.production ? '' : console.log(error);\r\n });\r\n }\r\n}\r\n","\r\n
    \r\n
    Schedule# {{eventResponse.id}}
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n
      \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{tag}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SchedulerServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n public hero: ''\r\n public expenseData: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n //Scheduler\r\n getSchedulerEvent(val1, val2) {\r\n return this.http.get(this.baseUrl + 'api/Scheduler/Gett_Events?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&startDate=' + val1 + '&endDate=' + val2)\r\n }\r\n\r\n getSchedulerResources() {\r\n return this.http.get(this.baseUrl + 'api/Scheduler/Gett_Resources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSchedulerEventByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Scheduler/Gett_EventInfo?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&technician=&start_date=&due_date=&mode=e&no_fix_customer_sites=')\r\n }\r\n\r\n postEvent(val) {\r\n return this.http.post(this.baseUrl + 'api/Scheduler/Postt_SaveEvent', val);\r\n }\r\n\r\n postUpdateEvent(val) {\r\n return this.http.post(this.baseUrl + 'api/Scheduler/Post_UpdateEvent', val);\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription, interval } from 'rxjs';\r\nimport { SalesServices } from 'src/app/components/Sales/sales.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Component({\r\n selector: 'app-customerlistmodal',\r\n templateUrl: './customerlist.component.html',\r\n styleUrls: ['./customerlist.component.scss']\r\n})\r\nexport class CustomerslistComponent implements OnInit {\r\n @ViewChild('custname') custname;\r\n pos: any = {};\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n setCustomerValue: any;\r\n \r\nprivate langChangeSubscription: Subscription;\r\n keyword = 'name';\r\n validatecustomer: any;\r\n customerList: any = []\r\n customer: any = {\r\n searchtxt: '',\r\n siteid: null,\r\n }\r\n subscription: Subscription;\r\n @ViewChild('SearchElement') SearchElement: ElementRef;\r\n selectedCustomer: any = {};\r\n siteList: any = [];\r\n constructor(private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient,private activeModal: NgbActiveModal,\r\n // private maincomponent:AddContractsComponent,\r\n private commonServices: CommonServices,\r\n private loader: NgxUiLoaderService,\r\n private datePipe: DatePipe,\r\n private toastr: NotificationService,\r\n private service: SalesServices,\r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getCompanySites();\r\n }\r\n\r\n selectSite() {\r\n if (this.customer.siteid) {\r\n this.getCustomers();\r\n } else {\r\n this.customerList = [];\r\n }\r\n }\r\n getCustomers() {\r\n if(!this.customer.siteid){\r\n if (this.customer.searchtxt == '') {\r\n return;\r\n }\r\n if (this.customer.searchtxt.length < 3) {\r\n return;\r\n }\r\n }\r\n this.loader.start();\r\n this.commonServices.getCustomers(this.customer.searchtxt, this.customer.siteid).subscribe(res => {\r\n this.loader.stop();\r\n this.customerList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n getCompanySites() {\r\n this.loader.start();\r\n this.commonServices.getCompanySites().subscribe(res => {\r\n this.loader.stop();\r\n this.siteList = res;\r\n environment.production ? '' : console.log(' customer list data ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading customer list ', err);\r\n });\r\n }\r\n selectCustomer(item) {\r\n this.selectedCustomer = item;\r\n this.customerList = [];\r\n }\r\n addCustomer() {\r\n if (this.customer.searchtxt == null || this.customer.searchtxt == undefined || this.customer.searchtxt == '') {\r\n this.toastr.Error('Please enter customer name');\r\n return;\r\n }\r\n if (this.customer.primaryphone == null || this.customer.primaryphone == undefined || this.customer.primaryphone == '') {\r\n this.toastr.Error('Please enter phone number');\r\n return;\r\n }\r\n var obj = {\r\n id: null,\r\n name: this.customer.searchtxt,\r\n mainemail: this.customer.email,\r\n companyid: this.userdata.companyid,\r\n primaryphone: this.customer.primaryphone,\r\n createby: this.userdata.email,\r\n status: this.customer.status,\r\n createdate: this.datePipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n updateby: null,\r\n updatedate: null\r\n }\r\n this.loader.start();\r\n this.service.postcustomer(obj).subscribe(res => {\r\n this.loader.stop();\r\n // this.customerList = res;\r\n if (res != null) {\r\n this.customer.searchtxt = '';\r\n this.customer.email = '';\r\n this.customer.primaryphone = '';\r\n this.getCustomers();\r\n }\r\n environment.production ? '' : console.log('post customer response ', this.customerList);\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading post customer ', err);\r\n });\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close(this.selectedCustomer);\r\n }\r\n ngOnInit(): void {\r\n this.customer.searchtxt = this.custname ? this.custname : '';\r\n this.getCustomers();\r\n \r\nthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\tthis.loadComponentTranslations(lang); \r\n}); \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/servicemanager/servicecontracts/customerlistmodal/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n \r\n \r\n ngAfterViewInit() {\r\n const source = interval(25000);\r\n this.SearchElement.nativeElement.focus()\r\n this.subscription = source.subscribe(val => {\r\n if (!this.SearchElement.nativeElement.focus()) {\r\n this.SearchElement.nativeElement.focus()\r\n\r\n }\r\n\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription ? this.subscription.unsubscribe() : null;\r\n console.log('destroyed')\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n {{ 'SelectSite' | translate }}\r\n {{item.Text}}\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    {{ 'Form_Table.Code_Column1' | translate }}{{ 'Form_Table.Name_Column2' | translate }}{{ 'Form_Table.StartName_Column3' | translate }}{{ 'Form_Table.TP_Column4' | translate }}{{ 'Form_Table.Auth_Column5' | translate }}{{ 'Form_Table.Phone_Column6' | translate }}{{ 'Form_Table.Email_Column7' | translate }}
    {{item.accountno}}
    \r\n
    {{item.name}}
    \r\n \r\n
    \r\n
    Name: {{item.name}} \r\n
    \r\n
    ShortName: {{item.shortname}}\r\n
    \r\n
    TPAcc#: {{item.tpaccno}}
    \r\n
    Auth Required?: YesNo
    \r\n
    Phone: {{item.primaryphone}}
    \r\n
    Email: {{item.mainemail}}
    \r\n
    \r\n
    \r\n
    \r\n {{item.shortname}}\r\n {{item.tpaccno}}YesNo{{item.primaryphone}}{{item.mainemail}}
    \r\n
    Your search result yielded no results
    \r\n
    \r\n \r\n
    \r\n
    ","import { NgModule } from '@angular/core';\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { CustomerslistComponent } from './customerlist.component';\r\n\r\n@NgModule({\r\n declarations: [CustomerslistComponent],\r\n imports:[HttpClientModule, \r\n TranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n ,CommonModule, FormsModule, NgbModule, NgbTooltipModule, NgSelectModule],\r\n exports: [CustomerslistComponent],\r\n})\r\nexport class CustomerListModule {}\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } \r\n ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { FileUploader } from 'ng2-file-upload';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { element } from 'screenfull';\r\nimport { InventoryServices } from 'src/app/components/inventory/inventory.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\n@Component({\r\n\tselector: 'app-serviceitem',\r\n\ttemplateUrl: './serviceitem.component.html',\r\n\tstyleUrls: ['./serviceitem.component.scss']\r\n})\r\nexport class ServiceitemComponent implements OnInit {\r\n\tprivate langChangeSubscription: Subscription;\r\n\tproduct: any = {\r\n\t\tptype: 'service',\r\n\t\tdept: '',\r\n\t\tcat: '',\r\n\t\trhservice: 0,\r\n\t\tohservice: 0,\r\n\t\tahservice: 0,\r\n\t\tflatprice: 0,\r\n\t\tflatpp: false,\r\n\t\tstatus: 'active',\r\n\t\tsale_online: false,\r\n\t\tparentid: null,\r\n\t\tpocost: 0,\r\n\t\tavgcost: 0,\r\n\t\trhservice_agg: 0,\r\n\t\tahservice_agg: 0,\r\n\t\tohservice_agg: 0\r\n\t};\r\n\tisedit: boolean = true;\r\n\tuserdata: any;\r\n\tappname = environment.APP_NAME;\r\n\t@Input('id') id;\r\n\t@Input('action') action;\r\n\tcategoryList: any;\r\n\taccounts: any;\r\n\tdeptList: any;\r\n\tglAccountList: any = [];\r\n\tglCostofSalesSettings: any = {};\r\n\tglIncomeAccountSettings: any = {};\r\n\tcoa_costofsales: any;\r\n\tcoa_income: any;\r\n\tstatusList: any;\r\n\tlastaction: any;\r\n\taccountGroupingList: any;\r\n\t@ViewChild('glaccount') glaccount;\r\n\tuploader: FileUploader;\r\n\tfilename: any;\r\n\tmsg: any;\r\n\tparentProds: any = [];\r\n\tconstructor(\r\n\r\n\t\tprivate translate: TranslateService,\r\n\t\tprivate languageService: LanguageService,\r\n\t\tprivate http: HttpClient,\r\n\r\n\t\tprivate cdRef: ChangeDetectorRef,\r\n\t\tprivate commonService: CommonServices, private route: ActivatedRoute, private toastr: NotificationService, private activeModal: NgbActiveModal, private loader: NgxUiLoaderService, private datepipe: DatePipe, private invservice: InventoryServices, private ModalService: NgbModal) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\t// this.action = this.route.snapshot.queryParamMap.get('action');\r\n\t\tthis.initializeFileUploader();\r\n\t\tthis.getProducts();\r\n\t}\r\n\r\n\tcloseModal() {\r\n\t\tthis.activeModal.close('Modal Closed');\r\n\t}\r\n\tgetProducts() {\r\n\t\tthis.invservice.getParaentProducts('', 'service').subscribe(res => {\r\n\t\t\tthis.parentProds = res;\r\n\t\t\tthis.parentProds.forEach(item => {\r\n\t\t\t\titem.Value = item.Value ? Number(item.Value) : '';\r\n\t\t\t})\r\n\t\t})\r\n\t}\r\n\tngOnInit(): void {\r\n\t\tif (this.id) {\r\n\t\t\tthis.getitemById();\r\n\t\t\tif (this.action == 'view') {\r\n\t\t\t\tthis.isedit = false;\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.getDeptData();\r\n\t\tthis.commonService.getCOAList('leaf').subscribe(res => {\r\n\t\t\tthis.accounts = res;\r\n\t\t\t// this.dropdownList.forEach(element => {\r\n\t\t\t// \telement.Value = Number(element.Value)\r\n\t\t\t// })\r\n\t\t\tthis.glAccountList = [];\r\n\t\t\tthis.accounts.forEach(element => {\r\n\t\t\t\tthis.glAccountList.push({\r\n\t\t\t\t\t\"id\": Number(element.Value),\r\n\t\t\t\t\t\"itemName\": element.Text,\r\n\t\t\t\t\t\"category\": element.Value1,\r\n\t\t\t\t})\r\n\t\t\t});\r\n\t\t\tthis.accountGroupingList = Array.from(new Set(this.accounts.map(({ Value1 }) => Value1)));\r\n\t\t\tthis.setGLAccounts();\r\n\t\t})\r\n\t\tthis.glIncomeAccountSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select GL Income\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search GL Income'\r\n\t\t};\r\n\r\n\t\tthis.glCostofSalesSettings = {\r\n\t\t\tdisabled: false,\r\n\t\t\titemDisabled: false,\r\n\t\t\tsingleSelection: true,\r\n\t\t\ttext: \"Select GL Cost Sales\",\r\n\t\t\tgroupBy: 'category',\r\n\t\t\tenableSearchFilter: true,\r\n\t\t\tsearchPlaceholderText: 'Search GL Cost Sales'\r\n\t\t};\r\n\t\tthis.commonService.getComboEnums('prodstatus').subscribe(res => {\r\n\t\t\tthis.statusList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\r\n\r\n\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n\t\t\tthis.loadComponentTranslations(lang);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tprivate loadComponentTranslations(lang: string) {\r\n\t\tconst translationFilePath = `./assets/i18n/servicemanager/servicelineitems/${lang}.json`;\r\n\t\tthis.http.get(translationFilePath).subscribe((translations: any) => {\r\n\t\t\tthis.translate.setTranslation(lang, translations, true);\r\n\t\t\tthis.translate.use(lang);\r\n\t\t});\r\n\t}\r\n\r\n\r\n\tsetGLAccounts() {\r\n\t\tif (this.accounts.length == 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.accounts.forEach(element => {\r\n\t\t\tif (this.product.id) {\r\n\t\t\t\tif (element.Value == this.product.coa_income) {\r\n\t\t\t\t\tthis.glIncomeAccountSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: element.Value1,\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (element.Value == this.product.coa_costofsales) {\r\n\t\t\t\t\tthis.glCostofSalesSettings = {\r\n\t\t\t\t\t\tdisabled: false,\r\n\t\t\t\t\t\titemDisabled: false,\r\n\t\t\t\t\t\tsingleSelection: true,\r\n\t\t\t\t\t\ttext: element.Text,\r\n\t\t\t\t\t\tgroupBy: element.Value1,\r\n\t\t\t\t\t\tenableSearchFilter: true,\r\n\t\t\t\t\t\tsearchPlaceholderText: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tgetitemById() {\r\n\t\tthis.loader.start();\r\n\t\tthis.invservice.getInventoryItemsDetials(this.id).subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.product = res;\r\n\t\t\tif (this.product.pic !== null) {\r\n\t\t\t\tthis.filename = this.product.pic;\r\n\t\t\t\tthis.product.pic = environment.DOC_URL + '/' + this.userdata.companyid + '/' + this.product.pic\r\n\t\t\t}\r\n\t\t\tthis.getCatData();\r\n\t\t\tthis.setGLAccounts();\r\n\t\t\tenvironment.production ? '' : console.log('item details ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tgetDeptData() {\r\n\t\tthis.commonService.getDepartmentList(true).subscribe(res => {\r\n\t\t\tthis.deptList = res;\r\n\t\t}, err => {\r\n\t\t});\r\n\t}\r\n\r\n\tgetCatData() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.getCategory(Number(this.product.dept), true).subscribe(res => {\r\n\t\t\tthis.categoryList = res;\r\n\t\t\tthis.loader.stop();\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t});\r\n\t}\r\n\r\n\tonItemSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_income = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_income);\r\n\t}\r\n\r\n\tOnItemDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_income = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_income);\r\n\t}\r\n\r\n\r\n\tonCosSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_costofsales = item.id;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_costofsales);\r\n\t}\r\n\r\n\tOnCosDeSelect(item: any) {\r\n\t\tenvironment.production ? '' : console.log(item);\r\n\t\tthis.product.coa_costofsales = null;\r\n\t\tenvironment.production ? '' : console.log(this.product.coa_costofsales);\r\n\t}\r\n\r\n\r\n\tsaveItem() {\r\n\t\tif (this.product.cat) {\r\n\t\t\tthis.product.cat = parseFloat(this.product.cat);\r\n\t\t}\r\n\t\tif (this.product.dept) {\r\n\t\t\tthis.product.dept = parseFloat(this.product.dept);\r\n\t\t}\r\n\t\tif (this.product.coa_income) {\r\n\t\t\tthis.product.coa_income = parseFloat(this.product.coa_income);\r\n\t\t}\r\n\t\tif (this.product.id) {\r\n\t\t\tthis.product.updateby = this.userdata.email;\r\n\t\t\tthis.product.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.product.id = null;\r\n\t\t\tthis.product.companyid = this.userdata.companyid;\r\n\t\t\tthis.product.createby = this.userdata.email;\r\n\t\t\tthis.product.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tthis.product.pic = this.filename ? this.filename : this.product.pic;\r\n\t\tthis.loader.start();\r\n\t\tthis.invservice.postProduct(this.product).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tthis.ModalService.dismissAll();\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('post product response ', res);\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading post product ', err);\r\n\t\t});\r\n\t}\r\n\tvalidateIlc() {\r\n\t\tthis.loader.start();\r\n\t\tthis.commonService.validateIlc(this.product.ilc).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\tif (this.action == 'view') {\r\n\t\t\t\t\t\tthis.product.ilc = '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tenvironment.production ? '' : console.log('discountTypeList ', res);\r\n\t\t}, err => {\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading discountTypeList data', err);\r\n\t\t});\r\n\t}\r\n\tinitializeFileUploader() {\r\n\t\tthis.uploader = new FileUploader({\r\n\t\t\tauthTokenHeader: 'authorization',\r\n\t\t\tauthToken: 'Bearer ' + this.userdata.token,\r\n\t\t\turl: environment.API_URL + 'api/Documents/UploadProductPictures',\r\n\t\t\tmethod: 'POST',\r\n\t\t\tremoveAfterUpload: true,\r\n\t\t\tqueueLimit: 100\r\n\t\t})\r\n\t\tthis.uploader.onBuildItemForm = (fileItem: any, form: any) => {\r\n\t\t\tform.append('companyid', this.userdata.companyid);\r\n\t\t\tform.append('createby', this.userdata.email);\r\n\t\t\tform.append('dtype', 'item-files');\r\n\t\t};\r\n\t\t// this.response = '';\r\n\t\tthis.uploader.response.subscribe(res => {\r\n\t\t\tenvironment.production ? '' : console.log('res ' + res);\r\n\t\t\t// this.response = res\r\n\t\t});\r\n\t\tthis.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; };\r\n\t}\r\n\r\n\r\n\tselectedFileOnChanged(event: any) {\r\n\t\tenvironment.production ? '' : console.log(event.target.value);\r\n\t\t// var filename = event.target.value.Replace('C:\\'fakepath\\','')\r\n\t\tthis.filename = event.target.value.split(/(\\\\|\\/)/g).pop()\r\n\t\tthis.product.pic = this.filename;\r\n\t\tif (!event.target.files[0] || event.target.files[0].length == 0) {\r\n\t\t\tthis.msg = 'You must select an image';\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar mimeType = event.target.files[0].type;\r\n\t\tif (mimeType.match(/image\\/*/) == null) {\r\n\t\t\tthis.msg = \"Only images are supported\";\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tvar reader = new FileReader();\r\n\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\treader.onload = (_event) => {\r\n\t\t\tthis.msg = \"\";\r\n\t\t\tthis.product.pic = reader.result;\r\n\t\t}\r\n\t\tthis.uploadFile();\r\n\t}\r\n\tuploadFile() {\r\n\t\tthis.uploader.queue[0].onSuccess = function (response, status, headers) {\r\n\t\t\tif (status == 200) {\r\n\t\t\t\tlet tempRes = JSON.parse(response);\r\n\t\t\t} else {\r\n\t\t\t\t// this.toaster.Success('File uploaded');\r\n\t\t\t\tthis.initializeFileUploader();\r\n\t\t\t}\r\n\t\t};\r\n\t\tthis.uploader.queue[0].upload();\r\n\t}\r\n\r\n}\r\n","
    \r\n
    \r\n

    {{ 'Modal_Title' | translate }} {{product.id}}

    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'UID_Text' | translate }} {{product.uid}}
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'Modal_Inputs.Lookupcode_required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'Modal_Inputs.Department_Required' | translate }}
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'Modal_Inputs.status_Required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    {{ 'Modal_Inputs.Description_Required' | translate }}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class serviceManagerServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n tempdata: any;\r\n\r\n userprofile: any;\r\n contractIdForEdit: any = '';\r\n ticketIdForEdit: any = '';\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n //get service contract \r\n getServiceContract(pg, searchtxt, categoryid, subcategoryid, status) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&categoryid=' + categoryid + '&subcategoryid=' + subcategoryid + '&status=' + status);\r\n }\r\n\r\n getTickets(pg, category, searchtxt, status, tags, assignto, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Get_TicketIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&category=' + category + '&searchtxt=' + searchtxt + '&status=' + status + '&tags=' + tags + '&assignto=' + assignto + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n\r\n getTicketsForBatchPrint(fromdate, todate, status,) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_Tickets2Print?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate + '&status=' + status);\r\n }\r\n\r\n getServiceContractPeriods() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServicePeriod?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCategory(parentid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&parentid=' + parentid)\r\n }\r\n getContractStatus(name_of_field) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetComboEnums?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name_of_field=' + name_of_field)\r\n }\r\n getContractTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetContractTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n deleteContract(id) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/DeleteContract?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSites(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerSites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid)\r\n }\r\n //create contract to invoice\r\n createContract2Inv(id) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Gett_Contract2Invoice?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + id)\r\n }\r\n //create ticket to invoice\r\n createTicket2Inv(id, invid) {\r\n return this.http.get(this.baseUrl + 'api/invoices/Gett_Ticket2Invoice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&invid=' + invid)\r\n }\r\n getContractSchduleList(contractid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetContractSchedules?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + contractid)\r\n }\r\n getContractDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Gett_ContractByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n DeleteLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Contracts/DeleteContractLineItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteContractDetailsItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Contracts/DeleteContractDetailsLine?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getGetCreateScheduleFor() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCreateScheduleFor?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postContract(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Contracts/Postt_Contract', data);\r\n }\r\n postTicket(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tickets/Postt_Ticket', data);\r\n }\r\n getTicketDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTicketItems(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_TicketItems', val);\r\n }\r\n postTicketCards(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_TicketCards', val);\r\n }\r\n\r\n getAllTimeLog(tech, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_UnAuditedTechHours?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tech=' + tech + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n postAuditTechHours(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_AuditTechHours', val);\r\n }\r\n postTicketNotes(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_TicketNotes', val);\r\n }\r\n postTechNotes(val) {\r\n return this.http.post(this.baseUrl + 'api/Checklists/Post_Technotes', val);\r\n }\r\n\r\n\r\n postToggleNotes(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_ToggleTicketNotes', val);\r\n }\r\n\r\n postTicketManagerNotes(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_TicketManagerNotes', val);\r\n }\r\n getNotesDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Get_TicketNotesByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n postDeleteNotes(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_TicketLog?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTicketChecklist(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/GetTicketChecklists?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postTicketCheckList(val) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_TicketChecklist', val);\r\n }\r\n\r\n postDeleteChecklist(tid, deviceid) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_CheckList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + tid + '&deviceid=' + deviceid);\r\n }\r\n postDeleteChecklistItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_CheckListItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeleteTicketEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_TicketItem?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeleteTicketCardEntry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_TicketCard?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeleteTicketItemLocation(id, tiid) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_TicketItemLocation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tiid=' + tiid);\r\n }\r\n //Tracking\r\n postTracking(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Contracts/Post_TrackingNotes', data);\r\n }\r\n postQuickUpdate(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Contracts/Postt_QuickUpdateContract', data);\r\n }\r\n // ticket category\r\n\r\n getTicketItems(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Get_TicketItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTicketCategories(name, code) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ServiceCategoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&code=' + code)\r\n }\r\n getTicketCategoryList(parentid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&parentid=' + parentid)\r\n }\r\n\r\n getCategoryById(id) {\r\n return this.http.get(this.baseUrl + 'api/master/Gett_TicketCategoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCategory(data) {\r\n return this.http.post(this.baseUrl + 'api/master/Postt_ServiceCategory', data);\r\n }\r\n getChecklists(pg, displayname, status, group, description) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_Checklists?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&groupid=' + group + '&displayname=' + displayname + '&description=' + description + '&status=' + status)\r\n }\r\n getChecklistsDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_ChecklistByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTicketMaterials(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketMaterials?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n getTicketLocalPurchase(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketLocalPurchase?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n getTicketExpenses(id, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketExpenses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n getTicketInvoices(id, startdate, enddate, invno) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id + '&startdate=' + startdate + '&enddate=' + enddate + '&invno=' + invno);\r\n }\r\n getTicketLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n getTicketTimeLogs(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketTimeLogs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n postCheckList(data) {\r\n return this.http.post(this.baseUrl + 'api/Checklists/Postt_Checklist', data);\r\n }\r\n deleteCheckList(id) {\r\n return this.http.delete(this.baseUrl + 'api/Checklists/Delete_Checklist?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTechRecommendations(pg, searchtxt, type, status, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketRecommdations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getTicketsUsingCustomer(customer) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customer);\r\n }\r\n postTicketQuickUpdate(data) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_QuickUpdate', data);\r\n }\r\n getDepleteStock(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Deplete_TicketItems?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTicketToSalesOrder(id) {\r\n return this.http.get(this.baseUrl + 'api/SalesOrders/Gett_Ticket2SalesOrder?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTechNotes(desc, type) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_Technotes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&desc=' + desc + '&type=' + type);\r\n }\r\n deleteTechNotes(id) {\r\n return this.http.delete(this.baseUrl + 'api/Checklists/Delete_TechNotes?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCheckListGroup(data) {\r\n return this.http.post(this.baseUrl + 'api/Checklists/Postt_Checklistgroup', data);\r\n }\r\n getChecklistgroupByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_ChecklistgroupByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckListGroupIndex(name, type, status) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_Checklistgroups?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&type=' + type + '&status=' + status);\r\n }\r\n\r\n deleteCheckListGroup(id) {\r\n return this.http.delete(this.baseUrl + 'api/Checklists/Delete_ChecklistGroup?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckListGroupList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceChecklistGrp?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckListById(id) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_ChecklistByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckListOptions(id) {\r\n return this.http.get(this.baseUrl + 'api/Checklists/Get_ChecklistoptionsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCheckListOptions(id) {\r\n return this.http.delete(this.baseUrl + 'api/Checklists/Delete_ChecklistOption?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCheckListOptions(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Checklists/Postt_Checklistoptions', data);\r\n }\r\n deleteTicket(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_Ticket?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteTicketCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ServiceCategory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getApprovedTickets(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_ApprovedTicketRecommdations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid)\r\n }\r\n saveRecomTicket(data) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_Recommendations2Ticket', data);\r\n }\r\n saveRecomQuote(data) {\r\n return this.http.post(this.baseUrl + 'api/Quotes/Post_Recommendations2Quote', data);\r\n }\r\n\r\n //Ticket Trip tab\r\n getTicketSchedule(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketSchedules?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id);\r\n }\r\n getTripById(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_TicketTripByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTrip(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tickets/Postt_TicketTrip', data);\r\n }\r\n deleteTrip(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_TicketTrip?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getContractInvoice(id, invno, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractInvoices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + id + '&fdate=' + fdate + '&tdate=' + tdate + '&invno=' + invno);\r\n }\r\n getContractTrackingNotes(id) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractTrackings?contractid=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getContractSchedule(id, ticketno, fdate, tdate) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + id + '&ticketno=' + ticketno + '&fdate=' + fdate + '&tdate=' + tdate);\r\n\r\n }\r\n getRecurrance(id, active, fdate, tdate, recur_pattern) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractRecurrences?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + id + '&fdate=' + fdate + '&tdate=' + tdate + '&recur_pattern=' + recur_pattern + '&active=' + active);\r\n }\r\n getRecurranceByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractRecurrenceByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteRecurrance(id) {\r\n return this.http.delete(this.baseUrl + 'api/Contracts/Delete_ContractRecurrence?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postRecurrance(val, id) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Contracts/Post_ContractRecurrence?is_del_future_tickets=' + id, data);\r\n }\r\n getBillingScheduleList(id, fdate, tdate, recur_pattern, active) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractBillingSchedule?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&contractid=' + id + '&fdate=' + fdate + '&tdate=' + tdate + '&recur_pattern=' + recur_pattern + '&active=' + active);\r\n }\r\n getBillingScheduleByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Contracts/Get_ContractBillingScheduleByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBillingSchedule(id) {\r\n return this.http.delete(this.baseUrl + 'api/Contracts/Delete_ContractBilling?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBillingSchedule(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Contracts/Post_ContractBilling', data);\r\n }\r\n\r\n getUnauditedItems(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_UnAuditedItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id)\r\n }\r\n\r\n getUnauditedCards(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_UnAuditedTimeCards?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&tid=' + id)\r\n }\r\n\r\n postAuditedItem(data) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_AuditItems', data)\r\n }\r\n getCustomerDevices(pg, searchtxt, type) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_CustomerDeviceIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&type=' + type);\r\n }\r\n postAuditedCard(data) {\r\n return this.http.post(this.baseUrl + 'api/Tickets/Post_AuditTimeCards', data)\r\n }\r\n //Non billable time\r\n getNonBillableTimeIndex(pg, tech, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_NonBillableTimeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&tech=' + tech + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getNonBillableTimeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Tickets/Gett_NonBillableTimeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteNonBillableTime(id) {\r\n return this.http.delete(this.baseUrl + 'api/Tickets/Delete_NonBillableTime?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postNonBillableTime(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tickets/Postt_NonBillableTime', data);\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal, NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { SchedulerServices } from 'src/app/components/scheduler/scheduler.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { serviceManagerServices } from '../../../servicemanager.service';\r\nimport { AddticketsComponent } from '../../addtickets/addtickets.component';\r\nimport { Subscription } from 'rxjs';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Component({\r\n selector: 'app-edittimematerialmodal',\r\n templateUrl: './edittimematerialmodal.component.html',\r\n styleUrls: ['./edittimematerialmodal.component.scss']\r\n})\r\nexport class EdittimematerialmodalComponent implements OnInit {\r\n private langChangeSubscription: Subscription;\r\n\r\n fullScreen = false;\r\n timenmaterial: any = [];\r\n userdata: any;\r\n appname = environment.APP_NAME;\r\n ticket: any = { ticketItems: [] };\r\n tempList: any = []\r\n @Input('params') params;\r\n lineItemType: any\r\n technicianList: any = []\r\n isView: any;\r\n product: any;\r\n isSaved = false;\r\n\r\n constructor(\r\n private translate: TranslateService,\r\n private languageService: LanguageService,\r\n private http: HttpClient,\r\n\r\n private datepipe: DatePipe,\r\n private toastr: NotificationService,\r\n private cdr: ChangeDetectorRef,\r\n private activemodel: NgbActiveModal,\r\n private commonService: CommonServices,\r\n private ticketService: serviceManagerServices,\r\n private schedulerService: SchedulerServices,\r\n private loader: NgxUiLoaderService,) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n MY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.product = this.params.item;\r\n this.isView = this.params.action;\r\n this.ticket = this.params.ticket;\r\n this.schedulerService.getSchedulerResources().subscribe((res: any) => {\r\n this.technicianList = res;\r\n const arr = this.ticket.assignto ? this.ticket.assignto.split(',') : [];\r\n var filteredTech = [];\r\n this.technicianList.forEach(data => {\r\n arr.forEach(res => {\r\n if (res == data.id) {\r\n filteredTech.push(data);\r\n }\r\n })\r\n })\r\n this.technicianList = filteredTech;\r\n console.log(this.technicianList);\r\n });\r\n this.commonService.getWorkTypes().subscribe((res: any) => {\r\n this.lineItemType = res;\r\n });\r\n if (this.product.type == 'inventory') {\r\n this.getProdBin();\r\n } else {\r\n this.timenmaterial = this.product;\r\n }\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => {\r\n this.loadComponentTranslations(lang);\r\n });\r\n }\r\n\r\n private loadComponentTranslations(lang: string) {\r\n const translationFilePath = `./assets/i18n/servicemanager/servicetickets/parts&materials /${lang}.json`;\r\n this.http.get(translationFilePath).subscribe((translations: any) => {\r\n this.translate.setTranslation(lang, translations, true);\r\n this.translate.use(lang);\r\n });\r\n }\r\n\r\n getProdBin() {\r\n this.commonService.getProdBins(this.product.prodid).subscribe(res => {\r\n this.tempList = res;\r\n this.timenmaterial = {\r\n status: this.product.status,\r\n bookingtime: this.product.bookingtime,\r\n companyid: this.product.companyid,\r\n description: this.product.description,\r\n id: this.product.id,\r\n ilc: this.product.ilc,\r\n tpcode: this.product.tpcode,\r\n ischecked: this.product.ischecked,\r\n isserilized: this.product.isserilized,\r\n notes: this.product.notes,\r\n prodid: this.product.prodid,\r\n qty: this.product.qty,\r\n rate: this.product.rate,\r\n tech: this.product.tech,\r\n type: this.product.type,\r\n ticketItemLocations: this.product.ticketItemLocations\r\n };\r\n if (this.timenmaterial.isserilized) {\r\n const commonKey = \"name\";\r\n this.tempList.forEach(element => {\r\n if (this.timenmaterial.isserilized) {\r\n element.isserilized = true\r\n element.serialList = element.serial_numbers ? element.serial_numbers.split(',') : [];\r\n element.serialList = element.serialList.map(element => ({\r\n [commonKey]: element\r\n }));\r\n element.serialList.forEach(data => {\r\n data.checked = false;\r\n });\r\n }\r\n });\r\n\r\n this.tempList.forEach(element => {\r\n if (element.serialList) {\r\n element.serialList.forEach(item => {\r\n this.timenmaterial.ticketItemLocations.forEach(data => {\r\n if (item.name === data.serial) {\r\n item.checked = true;\r\n item.id = data.id;\r\n item.binid = data.binid;\r\n item.tid = data.tiid;\r\n item.prodid = data.prodid;\r\n item.code = data.code\r\n }\r\n });\r\n });\r\n }\r\n\r\n });\r\n this.tempList.forEach(element => {\r\n element.qty = 0;\r\n });\r\n console.log('1st time obj', this.tempList);\r\n this.tempList.forEach(element => {\r\n if (element.serialList) {\r\n element.serialList.forEach(item => {\r\n if (item.checked) {\r\n element.qty += 1\r\n } else {\r\n item.id = null;\r\n item.binid = element.binid;\r\n item.tid = this.timenmaterial.id;\r\n item.prodid = element.prodid;\r\n item.code = element.code\r\n }\r\n });\r\n }\r\n });\r\n this.timenmaterial.ticketItemLocations = this.tempList;\r\n console.log('obj', this.tempList);\r\n\r\n } else {\r\n this.tempList.forEach(element => {\r\n this.timenmaterial.ticketItemLocations.forEach(data => {\r\n if (element.code === data.code) {\r\n element.qty = data.qty;\r\n element.binid = data.binid;\r\n element.oldid = data.id\r\n element.tid = data.tiid\r\n element.prodid = data.prodid\r\n }\r\n });\r\n });\r\n this.timenmaterial.ticketItemLocations = this.tempList;\r\n }\r\n\r\n this.cdr.detectChanges();\r\n this.calculateTotalQty();\r\n }, err => {\r\n environment.production ? '' : console.log('Error : While loading binlist data', err);\r\n });\r\n }\r\n saveSingleLineItem() {\r\n var items = [];\r\n if (this.timenmaterial.type == 'inventory') {\r\n var updatedLineItem = []\r\n if (!this.timenmaterial.isserilized) {\r\n this.timenmaterial.qty = 0;\r\n this.timenmaterial.ticketItemLocations.forEach(element => {\r\n if (element.qty > 0 || element.oldid) {\r\n updatedLineItem.push({\r\n binid: element.binid,\r\n code: element.code,\r\n qty: element.qty,\r\n serial: element.name,\r\n id: element.oldid ? element.oldid : null,\r\n tiid: element.tid ? element.tid : this.timenmaterial.id,\r\n prodid: element.prodid\r\n })\r\n this.timenmaterial.qty += element.qty;\r\n }\r\n });\r\n }\r\n else {\r\n this.timenmaterial.qty = 0\r\n this.timenmaterial.ticketItemLocations.forEach(element => {\r\n if (element.serialList) {\r\n element.serialList.forEach(data => {\r\n if (data.checked) {\r\n updatedLineItem.push({\r\n binid: data.binid,\r\n code: data.code,\r\n qty: 1,\r\n serial: data.name,\r\n id: data.id,\r\n tiid: data.tid ? data.tid : this.timenmaterial.id,\r\n prodid: data.prodid,\r\n })\r\n }\r\n });\r\n }\r\n });\r\n updatedLineItem.forEach(element => {\r\n if (element.qty == 1) {\r\n this.timenmaterial.qty += element.qty\r\n }\r\n });\r\n }\r\n this.timenmaterial.ticketItemLocations = updatedLineItem;\r\n var totalQty = 0;\r\n updatedLineItem.forEach(item => {\r\n totalQty += item.qty ? item.qty : 0;\r\n })\r\n this.timenmaterial.qty = totalQty;\r\n } else {\r\n this.timenmaterial.ticketItemLocations = [];\r\n }\r\n this.timenmaterial.tid = this.ticket.id ? this.ticket.id : this.timenmaterial.tid;\r\n this.timenmaterial.bookingtime = this.datepipe.transform(new Date(this.timenmaterial.bookingtime), this.userdata.postdateformat);\r\n this.timenmaterial.updateby = this.userdata.email;\r\n this.timenmaterial.updatedate = this.datepipe.transform(new Date(), this.userdata.postdateformat);\r\n items.push(this.timenmaterial);\r\n var postObj = {\r\n \"companyid\": this.userdata.companyid,\r\n \"tid\": this.ticket.id ? this.ticket.id : this.timenmaterial.tid,\r\n \"ticketitems\": items,\r\n \"updatedate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n \"updateby\": this.userdata.email\r\n }\r\n const postData = JSON.stringify(postObj);\r\n environment.production ? '' : console.log(JSON.stringify(postObj));\r\n this.loader.start();\r\n this.ticketService.postTicketItems(postData).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.isSaved = true;\r\n this.closeModal();\r\n this.timenmaterial = null;\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading expType list ', err);\r\n });\r\n }\r\n closeModal() {\r\n this.activemodel.close(this.isSaved ? 'save' : '');\r\n }\r\n\r\n trackByIndex(index: number, item: any): number {\r\n return item.name;\r\n }\r\n track(index: number, item: any) {\r\n return index;\r\n }\r\n onCheckboxClick(item, event: any, data) {\r\n // The event object contains information about the checkbox click\r\n const isChecked = event.target.checked;\r\n if (isChecked) {\r\n item.qty += 1;\r\n } else {\r\n item.qty -= 1;\r\n\r\n }\r\n data.checked = isChecked\r\n this.calculateTotalQty();\r\n }\r\n calculateTotal(item) {\r\n if (item.qty < 0) {\r\n item.qty = 0;\r\n }\r\n if (item.rate < 0) {\r\n item.rate = 0;\r\n }\r\n var total = Number(item.qty) * Number(item.rate);\r\n\r\n item.total = Number(total).toFixed(this.userdata.decimals_allowed);\r\n }\r\n\r\n checkEnterQty(item) {\r\n if (item.qty > item.onhand) {\r\n this.toastr.Error('Qty should not not be greater than onhand qty');\r\n item.qty = 0;\r\n } else {\r\n this.calculateTotalQty();\r\n }\r\n }\r\n calculateTotalQty() {\r\n this.timenmaterial.qty = 0;\r\n this.timenmaterial.ticketItemLocations.forEach(item => {\r\n this.timenmaterial.qty += item.qty ? Number(item.qty) : 0;\r\n })\r\n this.calculateTotal(this.timenmaterial);\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n
    {{ 'Edit_Mode_Inputs.Title_Text' | translate }}
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Edit_Mode_Inputs.Bin_column' | translate }}{{ 'Edit_Mode_Inputs.On_hand_column' | translate }}{{ 'Edit_Mode_Inputs.Qty_column' | translate }}
    \r\n \r\n \r\n {{item.binid}}-{{item.description}}\r\n {{item.binid}}{{item.onhand}}
    \r\n \r\n
    \r\n {{element.name}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class settingServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n userprofile: any;\r\n\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n getCountryList() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetCountries');\r\n }\r\n getCurrencyList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getCompanyCurrency() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getUserIndex(pg, searchtxt, istech, tracking, roles) {\r\n return this.http.get(this.baseUrl + 'api/Users/Get_UserIndex?currencyid=' + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&istech=' + istech + '&tracking=' + tracking + '&roles=' + roles);\r\n }\r\n deleteUserById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Users/Delete_User?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTradeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTraderType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=');\r\n }\r\n getCultures() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCultures?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=');\r\n }\r\n getBinLocation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBinLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTipSoftwareList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTPIS?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBuisnessTypeList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBusinessTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSchedulerViewsList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSchedulerViews?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSchedulerViewsThemesList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSchedulerEventThemeBy?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getUTCTimeZoneList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetUTCTimezone?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postSettings(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyProfile', data);\r\n }\r\n getCompanyProfile(companyid) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyProfile?companyid=' + companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getEmailTemplate(searchtxt, type, code) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_EmailTemplateIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&code=' + code)\r\n }\r\n getEmailTemplateById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_EmailTemplateByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEmailTemplate(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Postt_EmailTemplate', data)\r\n }\r\n deleteEmailTemplate(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_EmailTemplate?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Ebadmin email templates\r\n\r\n getAdminEmailTemplate(searchtxt, type, code) {\r\n return this.http.get(this.baseUrl + 'api/EbSettings/Get_EmailTemplateIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type + '&code=' + code)\r\n }\r\n getAdminEmailTemplateById(id) {\r\n return this.http.get(this.baseUrl + 'api/EbSettings/Gett_EmailTemplateByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAdminEmailTemplate(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/EbSettings/Postt_EmailTemplate', data)\r\n }\r\n\r\n getEmaillog(pg, searchtxt, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/EmailLog/Get_MailIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&fromdate=' + fromdate + '&todate=' + todate)\r\n }\r\n\r\n getMobileApps() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetMobileApps?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCompanyUserRoles() {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_CompanyUserRoles?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getUserById(id) {\r\n return this.http.get(this.baseUrl + 'api/Users/Get_UserByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getUserDevices(id) {\r\n return this.http.get(this.baseUrl + 'api/Users/Get_UserDevices?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteUserDevice(id) {\r\n return this.http.delete(this.baseUrl + 'api/Users/Delete_UserDevice?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postUsers(data) {\r\n return this.http.post(this.baseUrl + 'api/Users/Postt_User', data);\r\n }\r\n postMapUser(data) {\r\n return this.http.post(this.baseUrl + 'api/Users/Postt_MapUser', data);\r\n }\r\n getCheckUserAvailability(email) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Check_UserAvailability?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&email=' + email)\r\n }\r\n\r\n postSendOTP2ExistingUser(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Users/Post_SendOTP2ExistingUser', val);\r\n }\r\n\r\n postContact(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Customers/Postt_CustomerContact', val);\r\n }\r\n\r\n postFinYear(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyFinYear', val);\r\n }\r\n deleteCompanyContacts(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_Companycontact?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postBank(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyBank', val);\r\n }\r\n getCompShiftById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyShift?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Company Shift==\r\n getCompShiftList(description) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyShifts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n deleteCompanyBank(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyBank?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postShift(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyShift', val);\r\n }\r\n deleteCompanyShift(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyShift?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===\r\n postCurrency(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyCurrency', val);\r\n }\r\n deleteCompanyCurrency(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyCurrency?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Company menu======\r\n getCompanyMenuIndex(linktext, ang_root, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CompanyMenuIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&linktext=' + linktext + '&ang_root=' + ang_root + '&active=' + active)\r\n }\r\n postCompanyMenu(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CompanyMenu', val);\r\n }\r\n postCompanyMenuAction(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CompanyMenuAction', val);\r\n }\r\n getCompanyMenuById(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CompanyMenuByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCompanyParentMenus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyParentMenuId?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getParentMenus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetParentMenuId?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postExporter(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyShippingVendor', data)\r\n }\r\n getCountries(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyCountries?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getDataType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDataTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBankList(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n getCompBankById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyBanks?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // Financial year\r\n getFinancialYearList(startdate, enddate) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyFinYears?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&startdate=' + startdate + '&enddate=' + enddate);\r\n }\r\n\r\n // Tax Configuration\r\n getTaxConfigList(name, type) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyTaxes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&type=' + type);\r\n }\r\n deleteTaxConfigById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyTax?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // CompanyCurrencies\r\n getCurrencieList(name) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name);\r\n }\r\n getCurrencieById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyCurrencies?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // CompanyCountries\r\n getCompCountriesList() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyCountries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // ShippingVendors\r\n getTraderList() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyShippingVendors?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTraderById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyShippingVendorByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteTraderById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyShippingVendor?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // CompanyEmailGroups\r\n getEmailGrpList(name) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyEmailGroups?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name);\r\n }\r\n getEmailGrpById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyEmailLists?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteEmailGrpById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyEmailLists?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // Payment Method\r\n getPaymentMethodList(name) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyMOPs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name);\r\n }\r\n deleteCompanyBankMOP(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyBankMOP?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n // ReminderConfigs\r\n getReminderConfigsList(type) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyReminderConfigs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n getReminderConfigsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyReminderConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // ===========\r\n\r\n getCompPrintersList(name) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyPrinters?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name);\r\n }\r\n postPrinters(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyPrinters', data);\r\n }\r\n getCompPrintersById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyPrinters?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postCompanyEmails(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyEmailLists', data);\r\n }\r\n postCompanyReminder(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyReminderConfig', data);\r\n\r\n }\r\n postAssetsCategory(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_AssetCategory', data);\r\n }\r\n\r\n postCompanyTariff(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyTariff', data);\r\n }\r\n getcompTariffList(description, code) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyTariffs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description + '&code=' + code);\r\n }\r\n\r\n postCountry(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyCountry', val);\r\n }\r\n\r\n getAssetCatDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_AssetCategories?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n postTaxConfiguration(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompantTax', val);\r\n }\r\n getTaxDetailsById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyTax?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCodes(ser) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTariffList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + ser)\r\n }\r\n getTarrfiDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyTariff?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n postSite(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanySite', val);\r\n }\r\n getCompanyLocationById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanySite?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanyLocationList() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postUserBin(data) {\r\n return this.http.post(this.baseUrl + 'api/Users/Post_Userbins', data);\r\n }\r\n\r\n getBinlocation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBinLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getUserBinbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Users/Get_UserBinLocation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteBinUser(id) {\r\n return this.http.delete(this.baseUrl + 'api/Users/Delete_Userbins?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanyLocations() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postUserSite(data) {\r\n return this.http.post(this.baseUrl + 'api/Users/Post_UserSite', data)\r\n }\r\n getUserSitebyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Users/Get_UserSite?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Timezone\r\n postTimezone(data) {\r\n return this.http.post(this.baseUrl + 'api/Employees/Post_EmployeeTimezone', data)\r\n }\r\n getTimezonebyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Employees/Get_EmployeeTimezon?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getClockTimezone() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetClockTimezones?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteTimeZone(id) {\r\n return this.http.delete(this.baseUrl + 'api/Employees/Delete_EmployeeTimezone?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Company salary component\r\n getCompanySalaryComponentbyId(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanySalaryComponent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCompanySalaryComponentbyId(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanySalaryComponent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanySalaryComponent(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanySalaryComponent', data)\r\n }\r\n getSalaryComponentList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSalaryComponent?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // HR-EMP-getComapnysalartCom\r\n getCompanySalaryComponentList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanySalaryComponent?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n //Company Third Party App\r\n getThirdPartyApps() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyThirdPartyApps?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getThirdPartyAppById(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyThirdPartyApp?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteThirdPartyAppById(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyThirdPartyApp?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postThirdPartyApp(data) {\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyThirdPartyApp', data)\r\n }\r\n deleteCompanyMenuAction(id) {\r\n return this.http.delete(this.baseUrl + 'api/Menu/Delete_MenuAction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCompanyMenu(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CompanyMenu?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanyContactById(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ContactByID/' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteCompContact(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Contact/' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanyContact(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Contact', data)\r\n }\r\n //post reminder config\r\n getReminderConfigList(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyReminderConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteReminderConfig(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CompanyMenu?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n deleteCountry(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyCountry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Import service\r\n getImportDataOptions() {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetImportDataOptions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n importCustomer(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Customers', data);\r\n }\r\n\r\n importSupplier(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Suppliers', data);\r\n }\r\n\r\n importProduct(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Products', data);\r\n }\r\n importAssets(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Assets', data);\r\n }\r\n importBins(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Bins', data);\r\n }\r\n importEmployees(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Employees', data);\r\n }\r\n importInvoices(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Invoices', data);\r\n }\r\n importLeads(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Leads', data);\r\n }\r\n importCategories(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_ProdCats', data);\r\n }\r\n importTasks(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Tasks', data);\r\n }\r\n importTickets(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Tickets', data);\r\n }\r\n importProjects(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Projects', data);\r\n }\r\n importServiceItems(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_ServiceItems', data);\r\n }\r\n importServiceChecklists(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_ServiceCheckLists', data);\r\n }\r\n importContracts(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Contracts', data);\r\n }\r\n importSorder(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_SalesOrders', data);\r\n }\r\n importPorder(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_PurchaseOrders', data);\r\n }\r\n importPinvoices(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_PurchaseInvoices', data);\r\n }\r\n importQuotes(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Quote', data);\r\n }\r\n importExpenses(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Expenses', data);\r\n }\r\n importPayments(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_Payments', data);\r\n }\r\n importEmployeeShifts(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_EmployeeShifts', data);\r\n }\r\n importCOA(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Import_ChartofAccounts', data);\r\n }\r\n postCOAStaging(data) {\r\n return this.http.post(this.baseUrl + 'api/Import/Postz_COAStaging', data);\r\n }\r\n getImportFiles(type, fdate, edate) {\r\n return this.http.get(this.baseUrl + 'api/Import/Gett_Import_Files?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type + '&fdate=' + fdate + '&edate=' + edate);\r\n }\r\n // Company site\r\n getCompanySites(name, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_Sites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&active=' + active);\r\n }\r\n postCompanySites(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Site', data);\r\n }\r\n deleteCompanySites(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Site?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanySiteByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_SiteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // Company Contact\r\n getCompanyContact(name, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_Contacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&active=' + active);\r\n }\r\n\r\n deleteCompanyContact(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Contact?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n\r\n // getCompanycontactByID(id) {\r\n // return this.http.get(this.baseUrl + 'api/Master/Gett_ContactByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n // }\r\n getCompanyDevice(name, ilc, type, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_Devices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&ilc=' + ilc + '&type=' + type + '&active=' + active);\r\n }\r\n postCompanyDevice(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Device', data);\r\n }\r\n deleteCompanyDevice(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Device?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanyDeviceByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeviceDetailsList(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceDetails?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDeviceDetails(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceDetails/' + id + '?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeviceDocsList(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceFiles?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteDeviceDocs(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceFiles?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeviceDetails(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeviceDetails', data);\r\n }\r\n postCompanyContacts(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyContacts', data);\r\n }\r\n deleteReminderConfigItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyReminderConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deletePrinter(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyPrinters?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //SQL jobs\r\n getSQLJobs(name, recurring_pattern, active) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanySqlJobs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&recurring_pattern=' + recurring_pattern + '&active=' + active);\r\n }\r\n getSQLJobByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanySQlJob?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSQLJob(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanySQlJob', data);\r\n }\r\n deleteSQLJobs(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanySQlJob?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // Company awards\r\n\r\n getAwardList(name, active) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyAwards?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&active=' + active);\r\n }\r\n getawardByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyAward?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postAwards(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyAward', data);\r\n }\r\n deleteAwards(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyAward?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //income category\r\n getIncomeCategoryList(description) {\r\n return this.http.get(this.baseUrl + 'api/Income/Get_IncomeCategoryIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n getIncomeCategoryByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Income/Gett_IncomeCategoryByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postIncomeCategory(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Income/Postt_IncomeCategory', data);\r\n }\r\n deleteIncomeCategory(id) {\r\n return this.http.delete(this.baseUrl + 'api/Income/Delete_IncomeCategory?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //emailer service\r\n getEmailerIndex(pg, searchtxt, fromdate, todate, status) {\r\n return this.http.get(this.baseUrl + 'api/Emailer/Get_EmailerIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&searchtxt=' + searchtxt + '&status=' + status + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getEmailerByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Emailer/Get_EmailerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSubmitEmailer(id) {\r\n return this.http.get(this.baseUrl + 'api/Emailer/Submit_Emailer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEmailer(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Emailer/Post_Emailer', data);\r\n }\r\n deleteEmailer(id) {\r\n return this.http.delete(this.baseUrl + 'api/Emailer/Delete_Emailer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //CompanyTransactionConfig service\r\n getCompanyTransactionConfigIndex(description, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CompanyTransactionConfigIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description + '&active=' + active);\r\n }\r\n getCompanyTransactionConfigByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CompanyTransactionConfigByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanyTransactionConfig(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CompanyTransactionConfig', data);\r\n }\r\n deleteCompanyTransactionConfig(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CompanyTransactionConfig?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //CompanyUserRoleIndex service\r\n getCompanyUserRoleIndex(description, active) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CompanyUserRoleIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description + '&active=' + active);\r\n }\r\n getCompanyUserRoleByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CompanyUserRoleByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanyUserRole(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CompanyUserRole', data);\r\n }\r\n deleteCompanyUserRole(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CompanyUserRole?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //tds types\r\n getTDSTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Get_TDSTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n getTDSTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Expenses/Gett_TDSTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTDSType(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Expenses/Postt_TDSType', data);\r\n }\r\n deleteTDSType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Expenses/Delete_TDSType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Generic Gls\r\n getCompanyGenericGls(type) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyGenericGls?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n getCompanyGenericGlByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyGenericGlByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanyGenericGls(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyGenericGls', data);\r\n }\r\n deleteCompanyGenericGls(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyGenericGls?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //Generic Gl types\r\n getGenericGlTypes(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_GenericGLTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n getGenericGlTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_GenericGLTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postGenericGlType(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_GenericGLType', data);\r\n }\r\n deleteGenericGlType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_GenericGLType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCOAStaginData(file_refno) {\r\n return this.http.get(this.baseUrl + 'api/Import/Gett_COAStagingFileRefNo?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_refno=' + file_refno);\r\n }\r\n approveCOAMapping(id) {\r\n return this.http.get(this.baseUrl + 'api/Import/Approve_ImportCOA?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postMergeImportCOA(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Import/Merge_ImportCOA', data);\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SpecmapServices } from '../../specmap.service';\r\nimport { MarkersComponent } from '../markers.component';\r\n\r\n@Component({\r\n selector: 'app-addmarker',\r\n templateUrl: './addmarker.component.html',\r\n styleUrls: ['./addmarker.component.scss']\r\n})\r\nexport class AddmarkerModalComponent implements OnInit {\r\n marker: any = {};\r\n editSetLocation: any;\r\n locationList: any = [];\r\n searchLocation: any = 'Text';\r\n userdata: any;\r\n types: any = [];\r\n subTypes: any = [];\r\n @Input('id') id;\r\n actionView: any;\r\n @Input('flag') flag;\r\n appname: any = environment.APP_NAME;\r\n private langChangeSubscription: Subscription; \r\n constructor(private activeModal: NgbActiveModal, private toastr: NotificationService, private datepipe: DatePipe, private service: SpecmapServices, private loader: NgxUiLoaderService, private markersComponent: MarkersComponent, private cdr: ChangeDetectorRef,private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n ) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.getSpecMapSites();\r\n this.getTypes();\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.flag == 'view') {\r\n this.actionView = true;\r\n } else {\r\n this.actionView = false;\r\n }\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n \r\n }\r\n private loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/specmap/markers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n } \r\n getMarkerByid() {\r\n this.service.getMarkersListById(this.id).subscribe(data => {\r\n console.log(data)\r\n this.marker = data;\r\n this.locationList.forEach(element => {\r\n if (element.Value == this.marker.siteid) {\r\n this.editSetLocation = element;\r\n this.cdr.detectChanges();\r\n }\r\n });\r\n if (this.marker.marker_type) {\r\n this.getSubTypes();\r\n }\r\n })\r\n }\r\n\r\n closeModal() {\r\n this.activeModal.close('Modal Closed');\r\n }\r\n\r\n getSpecMapSites() {\r\n this.loader.start();\r\n this.service.getSpecMapSites().subscribe(res => {\r\n this.loader.stop();\r\n this.locationList = res;\r\n if (this.id) {\r\n this.getMarkerByid();\r\n }\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n\r\n\r\n getTypes() {\r\n this.loader.start();\r\n this.service.getSpecMapCategories().subscribe(res => {\r\n this.loader.stop();\r\n this.types = res;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n getSubTypes() {\r\n this.loader.start();\r\n this.service.getSpecMapSubCategories(this.marker.marker_type).subscribe((res: any) => {\r\n this.loader.stop();\r\n this.subTypes = res.lists;\r\n }, err => {\r\n this.loader.stop();\r\n })\r\n }\r\n\r\n saveMarker() {\r\n if (!this.marker.description) {\r\n Swal.fire('', 'Please enter description', 'warning');\r\n return;\r\n }\r\n this.marker.companyid = this.userdata.companyid;\r\n this.marker.active = true;\r\n if (this.marker.id) {\r\n this.marker.updateby = this.userdata.email;\r\n this.marker.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n this.marker.createby = this.marker.createby;\r\n this.marker.createdate = this.datepipe.transform(this.marker.createdate, this.userdata.postdatetimeformat);\r\n } else {\r\n this.marker.createby = this.userdata.email;\r\n this.marker.createdate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n }\r\n this.loader.start();\r\n\r\n this.service.postMarker(this.marker).subscribe((res: any) => {\r\n this.loader.stop();\r\n if (res != null) {\r\n if (res.status_code == \"1\") {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n this.marker = {};\r\n this.activeModal.close();\r\n this.markersComponent.getMarkersList();\r\n } else {\r\n res.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n return;\r\n }\r\n }\r\n })\r\n }\r\n\r\n\r\n selectLocation($event) {\r\n console.log($event);\r\n this.marker.siteid = $event.Value;\r\n }\r\n\r\n inputLocationCleared() {\r\n\r\n }\r\n\r\n onFocusedLocation($event) {\r\n\r\n }\r\n\r\n}\r\n","
    \r\n
    {{ 'Modal_Title' | translate }}{{marker.id}}
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n ","import { DatePipe } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NotificationService } from 'src/app/shared/service/notification.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport Swal from 'sweetalert2';\r\nimport { SpecmapServices } from '../specmap.service';\r\nimport { AddmarkerModalComponent } from './addmarker/addmarker.component';\r\n\r\n@Component({\r\n\tselector: 'app-markers',\r\n\ttemplateUrl: './markers.component.html',\r\n\tstyleUrls: ['./markers.component.scss']\r\n})\r\nexport class MarkersComponent implements OnInit {\r\n\ttotalRows: any;\r\n\tmarkersList: any;\r\n\tdescription: any = '';\r\n\tuserdata: any;\r\n\tformat: any;\r\n\tcompanyLogo: any;\r\n\tappname: any = environment.APP_NAME;\r\n\tlocationList: any;\r\n\tsearchLocation = 'Text';\r\n\tmarkerData: any;\r\n\ttypes: any = [];\r\n\tsubTypes: any = [];\r\n\tfilter: any = {\r\n\t\tsiteid: null,\r\n\t\tmarkertype: null,\r\n\t\tsubmarkertype: null,\r\n\t\tdescription: ''\r\n\t}\r\n\taction: string;\r\n\tmarkerID: any;\r\n\tmenuData: any;\r\n\tmenuActions: any;\r\n\tprivate langChangeSubscription: Subscription; \r\n\tconstructor(private service: SpecmapServices, private toastr: NotificationService, private modalService: NgbModal, private loader: NgxUiLoaderService, private datepipe: DatePipe,private translate: TranslateService, \r\n\t\tprivate languageService: LanguageService, \r\n\t\tprivate http: HttpClient, ) {\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.format = this.userdata.date_format\r\n\t\tthis.companyLogo += this.userdata.logo;\r\n\t\tthis.settings.pager.perPage = Number(this.userdata.grid_page_size ? this.userdata.grid_page_size : 10);\r\n\t\tMY_DATE_FORMATS.display.dateInput = (this.userdata.date_format).toUpperCase();\r\n\t\tthis.menuData = JSON.parse(localStorage.getItem('EzyBooks-menu'));\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.menuData.forEach(data => {\r\n\t\t\t\tif (data.title.toLowerCase() == 'specmap') {\r\n\t\t\t\t\tvar module = data;\r\n\t\t\t\t\tmodule.children.forEach(data => {\r\n\t\t\t\t\t\tif (data.title.toLowerCase() == 'markers') {\r\n\t\t\t\t\t\t\tthis.menuActions = data.menuActions;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}, 1000);\r\n\t\tthis.getMarkersList();\r\n\t\tthis.getSpecMapSites();\r\n\t\tthis.getTypes();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n\t\t\tthis.loadComponentTranslations(lang); \r\n\t\t}); \r\n\t\t \r\n\t}\r\n\tprivate loadComponentTranslations(lang: string) { \r\n\t\tconst translationFilePath = `./assets/i18n/specmap/markers/${lang}.json`; \r\n\t\tthis.http.get(translationFilePath).subscribe((translations:any) => { \r\n\t\tthis.translate.setTranslation(lang, translations, true); \r\n\t\tthis.translate.use(lang); \r\n\t\t}); \r\n\t\t } \r\n\tgetSpecMapSites() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getSpecMapSites().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.locationList = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tgetTypes() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getSpecMapCategories().subscribe(res => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.types = res;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tgetSubTypes() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getSpecMapSubCategories(this.markerData.marker_type).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.subTypes = res.lists;\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\trefresh() {\r\n\t\tthis.filter = {\r\n\t\t\tsiteid: null,\r\n\t\t\tmarkertype: null,\r\n\t\t\tsubmarkertype: null,\r\n\t\t\tdescription: ''\r\n\t\t}\r\n\t\tthis.getMarkersList();\r\n\t}\r\n\r\n\tsaveMarker() {\r\n\t\tif (!this.markerData.description) {\r\n\t\t\tSwal.fire('', 'Please enter description', 'warning');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.markerData.companyid = this.userdata.companyid;\r\n\t\tif (this.markerData.id) {\r\n\t\t\tthis.markerData.updateby = this.userdata.email;\r\n\t\t\tthis.markerData.updatedate = this.datepipe.transform(new Date(), this.userdata.postdatetimeformat);\r\n\t\t} else {\r\n\t\t\tthis.markerData.createby = this.markerData.createby;\r\n\t\t\tthis.markerData.createdate = this.datepipe.transform(this.markerData.createdate, this.userdata.postdatetimeformat);\r\n\t\t}\r\n\t\tthis.loader.start();\r\n\t\tthis.service.postMarker(this.markerData).subscribe((res: any) => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tif (res != null) {\r\n\t\t\t\tif (res.status_code == \"1\") {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'success') : this.toastr.Success(res.message);\r\n\t\t\t\t\tthis.modalService.dismissAll();\r\n\t\t\t\t\tthis.getMarkersList();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tres.msg_type == \"sweetalert\" ? Swal.fire('', res.message, 'error') : this.toastr.Error(res.message);\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t})\r\n\t}\r\n\r\n\tselectLocation(event) {\r\n\t}\r\n\r\n\tonFocusedLocation($event) {\r\n\r\n\t}\r\n\r\n\r\n\tinputLocationCleared() {\r\n\r\n\t}\r\n\r\n\tgetMarkersList() {\r\n\t\tthis.loader.start();\r\n\t\tthis.service.getMarkersList(this.filter.siteid ? this.filter.siteid : '', this.filter.markertype ? this.filter.markertype : '', this.filter.submarkertype ? this.filter.submarkertype : '', this.filter.description).subscribe(data => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tthis.markersList = data;\r\n\t\t\tenvironment.production ? '' : console.log('getmarkerList data ', data);\r\n\t\t\t//#region Get total rows\r\n\t\t\tthis.totalRows = this.markersList != null ? this.markersList.length : null;\r\n\t\t\tenvironment.production ? '' : console.log('Total Rows', this.totalRows);\r\n\t\t\t//#region Get total rows\r\n\r\n\t\t}, err => {\r\n\t\t\tthis.loader.stop();\r\n\t\t\tenvironment.production ? '' : console.log('Error : While loading getMarkerList data ', err);\r\n\t\t});\r\n\t}\r\n\r\n\topen() {\r\n\t\tthis.markerData = {\r\n\t\t\t\"id\": null,\r\n\t\t\t\"siteid\": null,\r\n\t\t\t\"marker_type\": null,\r\n\t\t\t\"lat\": null,\r\n\t\t\t\"lng\": null,\r\n\t\t\t\"description\": null,\r\n\t\t\t\"companyid\": this.userdata.companyid,\r\n\t\t\t\"createby\": this.userdata.email,\r\n\t\t\t\"updateby\": null,\r\n\t\t\t\"updatedate\": null,\r\n\t\t\t\"createdate\": this.datepipe.transform(new Date(), this.userdata.postdatetimeformat),\r\n\t\t\t\"sub_marker_type\": null,\r\n\t\t\t\"active\": true,\r\n\t\t\t\"name\": null\r\n\t\t}\r\n\t\tthis.modalService.open(AddmarkerModalComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' }).result.then((result) => {\r\n\t\t\tthis.getMarkersList();\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\r\n\tclicked(name, data) {\r\n\t\tvar modalRef = null;\r\n\t\tif (data.id) {\r\n\t\t\tthis.markerID = data.id;\r\n\t\t}\r\n\r\n\t\tif (name.toLowerCase() == 'view') {\r\n\t\t\tthis.action = 'view';\r\n\t\t\tmodalRef = this.modalService.open(AddmarkerModalComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n\t\t\tmodalRef.componentInstance.id = data.id;\r\n\t\t\tmodalRef.componentInstance.flag = 'view';\r\n\t\t\tmodalRef.result.then((result) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t\tthis.getMarkersList();\r\n\t\t\t}).catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\r\n\r\n\t\t} else if (name.toLowerCase() == 'edit') {\r\n\t\t\tthis.action = 'edit';\r\n\t\t\tmodalRef = this.modalService.open(AddmarkerModalComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n\t\t\tmodalRef.componentInstance.id = data.id;\r\n\t\t\tmodalRef.componentInstance.flag = 'edit';\r\n\t\t\tmodalRef.result.then((result) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t\tthis.getMarkersList();\r\n\t\t\t}).catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tpublic settings = {\r\n\t\tpager: {\r\n\t\t\tdisplay: true,\r\n\t\t\tperPage: 0\r\n\t\t},\r\n\t\thideSubHeader: true,\r\n\t\tactions: false,\r\n\t\tcolumns: {\r\n\t\t\tcustomColumn: {\r\n\t\t\t\ttitle: 'Actions',\r\n\t\t\t\ttype: 'custom',\r\n\t\t\t\tfilter: false,\r\n\t\t\t\trenderComponent: MarkersActionColumn,\r\n\t\t\t\tonComponentInitFunction(instance) {\r\n\t\t\t\t\t//do stuff with component\r\n\t\t\t\t\tinstance.id = 1;\r\n\t\t\t\t\tinstance.click.subscribe(row => {\r\n\t\t\t\t\t\tconsole.debug('row', row, this.someMethod());\r\n\t\t\t\t\t});\r\n\t\t\t\t\t// instance.subscribe(data => environment.production ? '' : console.log(data))\r\n\t\t\t\t},\r\n\t\t\t\tvaluePrepareFunction: (cell, row) => {\r\n\t\t\t\t\treturn row.columnName;\r\n\t\t\t\t},\r\n\t\t\t},\r\n\t\t\tdescription: {\r\n\t\t\t\ttitle: 'Description',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t\tvaluePrepareFunction: (description) => {\r\n\t\t\t\t\treturn `\r\n\t\t\t\t\t
    ${description ? description : ''}\r\n\t\t\t\t\t
    ${description}
    `\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\ttype: {\r\n\t\t\t\ttitle: 'Type',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t},\r\n\t\t\tsub_type: {\r\n\t\t\t\ttitle: 'SubType',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t},\r\n\t\t\tlat: {\r\n\t\t\t\ttitle: 'Latitude',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t},\r\n\t\t\tlng: {\r\n\t\t\t\ttitle: 'Longitude',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t},\r\n\t\t\tactive: {\r\n\t\t\t\ttitle: 'Active',\r\n\t\t\t\ttype: 'html',\r\n\t\t\t\tvaluePrepareFunction: (active) => {\r\n\t\t\t\t\treturn `${active}`\r\n\t\t\t\t}\r\n\r\n\t\t\t},\r\n\t\t\tid: {\r\n\t\t\t\ttitle: 'Id'\r\n\t\t\t},\r\n\t\t\tcreateby: {\r\n\t\t\t\ttitle: 'CreateBy'\r\n\t\t\t},\r\n\t\t\tcreatedate: {\r\n\t\t\t\ttitle: 'CreateDate',\r\n\t\t\t\tvaluePrepareFunction: (createdate: any) => {\r\n\t\t\t\t\treturn this.datepipe.transform(createdate, this.userdata.displaydatetimeformat)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tupdateby: {\r\n\t\t\t\ttitle: 'UpdateBy'\r\n\t\t\t},\r\n\t\t\tupdatedate: {\r\n\t\t\t\ttitle: 'UpdateDate',\r\n\t\t\t\tvaluePrepareFunction: (updatedate: any) => {\r\n\t\t\t\t\treturn this.datepipe.transform(updatedate, this.userdata.displaydatetimeformat)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t},\r\n\t};\r\n\r\n\r\n\tsortDir = 1;//1= 'ASE' -1= DSC \r\n\tonSortClick(event, column) { \r\n let target = event.currentTarget, \r\n childtarget = target.querySelector('i'), \r\n classList = childtarget.classList; \r\n \r\n if (classList.contains('fa-chevron-up')) { \r\n classList.remove('fa-chevron-up'); \r\n classList.add('fa-chevron-down'); \r\n target.classList.add('Sorted'); \r\n this.sortDir = -1; \r\n } else { \r\n classList.add('fa-chevron-up'); \r\n classList.remove('fa-chevron-down'); \r\n target.classList.remove('Sorted'); \r\n this.sortDir = 1; \r\n } \r\n this.sortArr(column); \r\n\t} \r\n \r\n\tsortArr(colName: any) { \r\n this.markersList.sort((a, b) => { \r\n let valueA = (a[colName] && typeof a[colName] === 'string') ? a[colName].toLowerCase() : a[colName]; \r\n let valueB = (b[colName] && typeof b[colName] === 'string') ? b[colName].toLowerCase() : b[colName]; \r\n \r\n if (!valueA && !valueB) { \r\n return 0; \r\n } \r\n if (!valueA) { \r\n return -this.sortDir; \r\n } \r\n if (!valueB) { \r\n return this.sortDir; \r\n } \r\n \r\n if (valueA > valueB) { \r\n return this.sortDir; \r\n } \r\n if (valueA < valueB) { \r\n return -this.sortDir; \r\n } \r\n return 0; \r\n }); \r\n\t}\r\n\r\n}\r\n\r\n@Component({\r\n\tselector: 'll-button-comp',\r\n\ttemplate: `\r\n\t
    \r\n \r\n
      \r\n
    • {{n.title}}
    • \r\n
    \r\n
    \r\n `\r\n})\r\nexport class MarkersActionColumn implements OnInit {\r\n\t@Input() rowData: any;\r\n\t@Output() click: EventEmitter = new EventEmitter(null);\r\n\tuserdata: any;\r\n\tmarkerID: any;\r\n\tappname = environment.APP_NAME;\r\n\tmenuData: any;\r\n\tmenuActions: any;\r\n\taction: any;\r\n\tconstructor(private modalService: NgbModal, private mainComponent: MarkersComponent) {\r\n\r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n\t\tthis.menuData = JSON.parse(localStorage.getItem('EzyBooks-menu'));\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.menuData.forEach(data => {\r\n\t\t\t\tif (data.title.toLowerCase() == 'specmap') {\r\n\t\t\t\t\tvar module = data;\r\n\t\t\t\t\tmodule.children.forEach(data => {\r\n\t\t\t\t\t\tif (data.title.toLowerCase() == 'markers') {\r\n\t\t\t\t\t\t\tthis.menuActions = data.menuActions;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}, 1000);\r\n\t}\r\n\tngOnInit(): void {\r\n\r\n\t}\r\n\r\n\tclicked(name) {\r\n\t\tvar modalRef = null;\r\n\t\tif (this.rowData.id) {\r\n\t\t\tthis.markerID = this.rowData.id;\r\n\t\t}\r\n\r\n\t\tif (name.toLowerCase() == 'view') {\r\n\t\t\tthis.action = 'view';\r\n\t\t\tmodalRef = this.modalService.open(AddmarkerModalComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n\t\t\tmodalRef.componentInstance.id = this.rowData.id;\r\n\t\t\tmodalRef.componentInstance.flag = 'view';\r\n\t\t\tmodalRef.result.then((result) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t\tthis.mainComponent.getMarkersList();\r\n\t\t\t}).catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\r\n\r\n\t\t} else if (name.toLowerCase() == 'edit') {\r\n\t\t\tthis.action = 'edit';\r\n\t\t\tmodalRef = this.modalService.open(AddmarkerModalComponent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static', windowClass: 'index-class', backdropClass: 'index-backdrop' });\r\n\t\t\tmodalRef.componentInstance.id = this.rowData.id;\r\n\t\t\tmodalRef.componentInstance.flag = 'edit';\r\n\t\t\tmodalRef.result.then((result) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(result);\r\n\t\t\t\tthis.mainComponent.getMarkersList();\r\n\t\t\t}).catch((error) => {\r\n\t\t\t\tenvironment.production ? '' : console.log(error);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n}","
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item.Text}}\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
      \r\n
    • {{ 'Index_Filter.Filter_Options.AddMarker_Option' | translate }}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    {{ 'Index_Table.Actions_Column' | translate }}{{ 'Index_Table.Description_Column' | translate }} {{ 'Index_Table.Type_Column' | translate }} {{ 'Index_Table.SubType_Column' | translate }} {{ 'Index_Table.Latitude_Column' | translate }} {{ 'Index_Table.Longitude_Column' | translate }} {{ 'Index_Table.Active_Column' | translate }} {{ 'Index_Table.Id_Column' | translate }} {{ 'Index_Table.CreatedBy_Column' | translate }} {{ 'Index_Table.CreatedDate_Column' | translate }} {{ 'Index_Table.UpdatedBy_Column' | translate }} {{ 'Index_Table.UpdatedDate_Column' | translate }}
    \r\n
    \r\n \r\n
      \r\n
    • {{n.title}}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{ row.description ? row.description : '' }}\r\n
    \r\n {{ row.description }}\r\n
    \r\n
    {{ row.type }}{{ row.sub_type }}{{ row.lat }}{{ row.lng }}\r\n {{ row.active }}\r\n {{ row.id }}{{ row.createby }}{{ datepipe.transform(row.createdate, userdata.displaydatetimeformat) }}{{ row.updateby }}{{ datepipe.transform(row.updatedate, userdata.displaydatetimeformat) }}
    \r\n \r\n
    \r\n
    \r\n {{ 'total_rows' | translate }} {{totalRows}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpErrorResponse, HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { environment } from '../../../environments/environment'\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { modelLogin, modelComp, TokenParams } from '../../components/auth/login/modelLogin';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { DatePipe } from '@angular/common';\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SpecmapServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n tempdata: any;\r\n\r\n userprofile: any;\r\n contractIdForEdit: any = '';\r\n ticketIdForEdit: any = '';\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n getspecmapdetails(siteid, type, sub_type, search) {\r\n return this.http.get(this.baseUrl + 'api/Specmap/Get_SpecmapMarkerDetails?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + siteid + '&type=' + type + '&sub_type=' + sub_type + '&search=' + search);\r\n }\r\n getSpecMapSites() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSpecmapSites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSpecMapCategories() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSpecmapMarkerTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSpecMapSubCategories(marker_type) {\r\n return this.http.get(this.baseUrl + 'api/Specmap/Get_SpecmapSubMarkerTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&marker_type=' + marker_type);\r\n }\r\n\r\n getspecmap(siteid) {\r\n return this.http.get(this.baseUrl + 'api/Specmap/Get_SpecmapIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + siteid)\r\n }\r\n getSpecmapMarkers(siteid: any, type: any, sub_type: any, search: any) {\r\n return this.http.get(this.baseUrl + '/api/Specmap/Get_SpecmapMarkers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + siteid + '&type=' + type + '&sub_type=' + sub_type + '&searchtxt=' + search);\r\n }\r\n getMarkersList(siteid, markertype, submarkertype, description) {\r\n return this.http.get(this.baseUrl + 'api/Specmap/Get_MarkerIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + siteid + '&markertype=' + markertype + '&submarkertype=' + submarkertype + '&description=' + description)\r\n }\r\n getMarkersListById(id) {\r\n return this.http.get(this.baseUrl + 'api/Specmap/Gett_MarkerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n getMarkerTypes(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_MarkerTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description)\r\n }\r\n\r\n getMarkerTypeById(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_MarkerTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n postMarkerType(data) {\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_MarkerType', data);\r\n }\r\n\r\n postMarker(data) {\r\n return this.http.post(this.baseUrl + 'api/Specmap/Postt_Marker', data)\r\n }\r\n\r\n deleteMarker(id) {\r\n return this.http.delete(this.baseUrl + 'api/Specmap/Delete_Marker?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'))\r\n }\r\n\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { TrackingComponent } from './tracking.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: TrackingComponent,\r\n data: {\r\n title: \"Tracking\",\r\n breadcrumb: \"Tracking\"\r\n }\r\n }\r\n]\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class TrackingRoutingModule { }","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { environment } from 'src/environments/environment';\r\nimport { Events } from 'src/app/shared/service/events.service';\r\nimport { CommonServices } from 'src/app/shared/service/common.service';\r\nimport { ChatSignalr } from '../customerservice/chatsignalr.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { LanguageService } from 'src/app/shared/service/language.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-tracking',\r\n templateUrl: './tracking.component.html',\r\n styleUrls: ['./tracking.component.scss']\r\n})\r\nexport class TrackingComponent implements OnInit {\r\n locationsList: any = [];\r\n location: any;\r\n keyword = 'Text';\r\n\r\n // Hadapsar lat long\r\n lat: number = 18.4892145719125;\r\n lng: number = 73.9519786834717;\r\n connectionStatusEvent: any;\r\n updateLocationEvent: any;\r\n markers: any = [];\r\n markers1: any = [\r\n {\r\n latitude: 18.485307308290057,\r\n longitude: 73.95481109619142,\r\n user_code: 'A',\r\n userid: 1,\r\n heading: 0,\r\n online: 0,\r\n companyid: 0,\r\n createdate: '2023-07-01',\r\n createby: ''\r\n }\r\n ]\r\n private langChangeSubscription: Subscription; \r\n constructor(private signalrHUB: ChatSignalr, private event: Events, private commonService: CommonServices,private translate: TranslateService, \r\n private languageService: LanguageService, \r\n private http: HttpClient, \r\n ) {\r\n environment.production ? '' : console.log('#########in public tracking page#####');\r\n // this.subscripbeEvents();\r\n // this.getLocations();\r\n }\r\n\r\n ngOnInit(): void {\r\n // if (!this.signalrHUB.connectionIsEstablished) {\r\n // this.signalrHUB.connect();\r\n // } else {\r\n // this.signalrHUB.joinLocationReceiveGroup();\r\n // }\r\n this.langChangeSubscription = this.languageService.getCurrentLanguage().subscribe((lang) => { \r\n this.loadComponentTranslations(lang); \r\n }); \r\n }\r\nprivate loadComponentTranslations(lang: string) { \r\n const translationFilePath = `./assets/i18n/sales/customers/${lang}.json`; \r\n this.http.get(translationFilePath).subscribe((translations:any) => { \r\n this.translate.setTranslation(lang, translations, true); \r\n this.translate.use(lang); \r\n }); \r\n\t} \r\n getLocations() {\r\n this.commonService.getLocationIndex().subscribe(res => {\r\n this.locationsList = res;\r\n var isDefault = false;\r\n this.locationsList.forEach((loc, index) => {\r\n if (loc.Value4) {\r\n isDefault = true;\r\n }\r\n if (isDefault) {\r\n this.lat = loc.Value1 ? Number(loc.Value1) : 18.4892145719125;\r\n this.lng = loc.Value3 ? Number(loc.Value3) : 73.9519786834717;\r\n this.location = loc;\r\n return;\r\n }\r\n if (index == this.locationsList.length - 1 && !isDefault) {\r\n this.lat = loc.Value1 ? Number(loc.Value1) : 18.4892145719125;\r\n this.lng = loc.Value3 ? Number(loc.Value3) : 73.9519786834717;\r\n this.location = loc;\r\n }\r\n })\r\n console.log(this.locationsList);\r\n })\r\n }\r\n\r\n \r\n\r\n onFocused($event) {\r\n\r\n }\r\n\r\n selectEvent(event) {\r\n this.lat = event.Value1 ? Number(event.Value1) : 0.00;\r\n this.lng = event.Value3 ? Number(event.Value3) : 0.00;\r\n }\r\n\r\n ngOnDestroy() {\r\n environment.production ? '' : console.log('called ngOnDestroy');\r\n this.connectionStatusEvent.unsubscribe();\r\n this.updateLocationEvent.unsubscribe();\r\n }\r\n subscripbeEvents() {\r\n this.connectionStatusEvent = this.event.subscribe('event:connectionStatus', (event: any) => {\r\n environment.production ? '' : console.log('event connectionStatus' + JSON.stringify(event.data));\r\n this.signalrHUB.joinLocationReceiveGroup();\r\n });\r\n this.updateLocationEvent = this.event.subscribe('event:newLocation', (event: any) => {\r\n var data = event.data ? event.data.split(',') : '';\r\n var curLoc = {\r\n latitude: null,\r\n longitude: null,\r\n user_code: null,\r\n userid: null,\r\n heading: null,\r\n online: null,\r\n companyid: null,\r\n createby: null,\r\n createdate: null\r\n }\r\n if (data.length > 0) {\r\n curLoc.companyid = data[0].split(':')[1];\r\n curLoc.userid = data[1].split(':')[1];\r\n curLoc.latitude = data[2].split(':')[1];\r\n curLoc.longitude = data[3].split(':')[1];\r\n curLoc.heading = data[4].split(':')[1];\r\n curLoc.online = data[5].split(':')[1];\r\n curLoc.user_code = data[6].split(':')[1];\r\n curLoc.createdate = data[7].split(':')[1];\r\n curLoc.createby = data[8].split(':')[1];\r\n\r\n curLoc.user_code = curLoc.user_code ? curLoc.user_code.slice(0, 2) : '';\r\n }\r\n environment.production ? '' : console.log('event newLocation' + JSON.stringify(event.data));\r\n\r\n var isLocExist = false;\r\n if (this.markers.length > 0 && curLoc.userid != null) {\r\n this.markers.forEach(loc => {\r\n if (loc.userid == curLoc.userid) {\r\n loc.latitude = curLoc.latitude;\r\n loc.longitude = curLoc.longitude;\r\n isLocExist = true;\r\n }\r\n })\r\n }\r\n if (!isLocExist && curLoc.userid != null) {\r\n this.markers.push(curLoc);\r\n }\r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    ","import { CUSTOM_ELEMENTS_SCHEMA, NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { CountToModule } from 'angular-count-to';\r\nimport { ChartsModule } from 'ng2-charts';\r\nimport { Ng2GoogleChartsModule } from 'ng2-google-charts';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\n\r\nimport { Ng2SmartTableModule } from 'ng2-smart-table';\r\nimport { NgbActiveModal, NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatMomentDateModule } from \"@angular/material-moment-adapter\";\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MY_DATE_FORMATS } from 'src/app/shared/service/my_date_format';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { CKEditorModule } from 'ng2-ckeditor';\r\nimport { AgmCoreModule, MapsAPILoader } from '@agm/core';\r\nimport { AutocompleteLibModule } from 'angular-ng-autocomplete';\r\n\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\nimport { TrackingComponent } from './tracking.component';\r\nimport { TrackingRoutingModule } from './tracking-routing.module';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\n@NgModule({\r\n declarations: [TrackingComponent],\r\n imports: [\r\n CommonModule,\r\n TrackingRoutingModule,\r\n CountToModule,\r\n SharedModule,\r\n ChartsModule,\r\n Ng2GoogleChartsModule,\r\n NgxChartsModule,\r\n Ng2SmartTableModule,\r\n \r\n FormsModule,\r\n NgbModule,\r\n NgxUiLoaderModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatMomentDateModule,\r\n CKEditorModule,\r\n AutocompleteLibModule,\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyAuoQSNu8Ct-jXbHFdjGLyhYy5Y_mNm3Y4',\r\n libraries: ['places']\r\n }),\r\n HttpClientModule,\r\nTranslateModule.forRoot({ \r\n loader: { \r\n provide: TranslateLoader, \r\n useFactory: HttpLoaderFactory, \r\n deps: [HttpClient] \r\n } \r\n }) \r\n ],\r\n providers: [\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMATS },\r\n NgbActiveModal,\r\n ],\r\n schemas: [\r\n CUSTOM_ELEMENTS_SCHEMA,\r\n NO_ERRORS_SCHEMA\r\n ]\r\n})\r\nexport class TrackingModule { }\r\nexport function HttpLoaderFactory(http: HttpClient) { \r\n return new TranslateHttpLoader(http); \r\n } ","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router, NavigationEnd, PRIMARY_OUTLET } from '@angular/router';\r\n\r\nimport { filter } from 'rxjs/operators';\r\nimport { map } from 'rxjs/internal/operators';\r\n\r\n@Component({\r\n selector: 'app-breadcrumb',\r\n templateUrl: './breadcrumb.component.html',\r\n styleUrls: ['./breadcrumb.component.scss']\r\n})\r\nexport class BreadcrumbComponent implements OnInit {\r\n\r\n public breadcrumbs;\r\n public title: string\r\n\r\n constructor(private activatedRoute: ActivatedRoute,\r\n private router: Router) {\r\n this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .pipe(map(() => this.activatedRoute))\r\n .pipe(map((route) => {\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n return route;\r\n }))\r\n .pipe(filter(route => route.outlet === PRIMARY_OUTLET))\r\n .subscribe(route => {\r\n let snapshot = this.router.routerState.snapshot;\r\n let title = route.snapshot.data['title'];\r\n let parent = route.parent.snapshot.data['breadcrumb'];\r\n let child = route.snapshot.data['breadcrumb'];\r\n this.breadcrumbs = {};\r\n this.title = title;\r\n this.breadcrumbs = {\r\n \"parentBreadcrumb\": parent,\r\n \"childBreadcrumb\": child\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() { }\r\n\r\n ngOnDestroy() { }\r\n\r\n}\r\n","\r\n
    ","import { Component, OnInit, Input } from '@angular/core';\r\nimport * as feather from 'feather-icons';\r\n\r\n@Component({\r\n selector: 'app-feather-icons',\r\n templateUrl: './feather-icons.component.html',\r\n styleUrls: ['./feather-icons.component.scss']\r\n})\r\nexport class FeatherIconsComponent implements OnInit {\r\n\r\n @Input('icon') public icon;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n feather.replace();\r\n });\r\n }\r\n\r\n}\r\n","","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AppServices } from '../../service/app.services';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Events } from '../../service/events.service';\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit, OnDestroy {\r\n appname = environment.APP_NAME;\r\n pipe = new DatePipe('en-US');\r\n intervalId;\r\n today = null;\r\n userprofile: any;\r\n constructor(private service: AppServices, private event: Events) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n if (localStorage.getItem(this.appname + 'userprofile')) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.intervalId = setInterval(() => {\r\n this.today = this.pipe.transform(Date.now(), 'EEEE, MMMM d, y, h:mm:ss a', this.userprofile.scheduler_timezone);\r\n }, 1000);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n clearInterval(this.intervalId);\r\n }\r\n\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n
    {{this.userprofile.name}}
    \r\n
    \r\n
    \r\n

    {{this.userprofile.companyname}}, Ver 2.0.0.0

    \r\n
    \r\n
    \r\n

    Powered by Sanmol Software

    \r\n
    \r\n
    \r\n

    {{today}}

    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { ActivatedRoute, Router, NavigationEnd, PRIMARY_OUTLET } from '@angular/router';\r\nimport { NavService } from '../../service/nav.service';\r\nimport { filter } from 'rxjs/operators';\r\nimport { map } from 'rxjs/internal/operators';\r\nimport { CommonServices } from '../../service/common.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Events } from '../../service/events.service';\r\nimport { DashboardServices } from 'src/app/components/dashboard/dashboard.service';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CustomerannouncementsComponent } from 'src/app/components/modal/customerannouncements/customerannouncements.component';\r\nimport Swal from 'sweetalert2';\r\nimport { LoginComponent } from 'src/app/components/auth/login/login.component';\r\nimport { Title } from '@angular/platform-browser';\r\nimport * as moment from 'moment';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { LanguageService } from '../../service/language.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.scss']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n public right_sidebar: boolean = false;\r\n public open: boolean = false;\r\n public openNav: boolean = false;\r\n public isOpenMobile: boolean;\r\n public breadcrumbs;\r\n public selectedcompanyData;\r\n public title: string;\r\n userdata: any = {\r\n companyid: '',\r\n companyids: []\r\n };\r\n iconClass: any;\r\n appname = environment.APP_NAME;\r\n @Output() rightSidebarEvent = new EventEmitter();\r\n id: any;\r\n editData: string;\r\n ReminderData: any = [{\r\n type: '',\r\n title: '',\r\n notes: ''\r\n },\r\n {\r\n type: '',\r\n title: '',\r\n notes: ''\r\n }];\r\n dashboardData: any;\r\n loader: any;\r\n Lang:any='EN';\r\n announcements: any = [];\r\n reminderLength: any = 0;\r\n companyDropdown: boolean = false;\r\n public isShow: boolean = false\r\n constructor( private languageService: LanguageService,private translate: TranslateService, public navServices: NavService, private events: Events, private commonService: CommonServices, private activatedRoute: ActivatedRoute,\r\n private router: Router, private titleService: Title, private dashboardservice: DashboardServices, private modalService: NgbModal, private loginComponent: LoginComponent) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n if(localStorage.getItem('language')) {\r\n if(localStorage.getItem('language') == 'en') {\r\n this.Lang = 'EN';\r\n } else if (localStorage.getItem('language') == 'es') {\r\n this.Lang = 'ES';\r\n } else if (localStorage.getItem('language') == 'ar') {\r\n this.Lang = 'AR';\r\n }\r\n } else {\r\n this.Lang = 'EN';\r\n }\r\n this.userdata.companyids.forEach(data => {\r\n if (this.userdata.companyid == data.companyid) {\r\n this.selectedcompanyData = data;\r\n }\r\n })\r\n this.router.events\r\n .pipe(filter(event => event instanceof NavigationEnd))\r\n .pipe(map(() => this.activatedRoute))\r\n .pipe(map((route) => {\r\n while (route.firstChild) {\r\n route = route.firstChild;\r\n }\r\n return route;\r\n }))\r\n .pipe(filter(route => route.outlet === PRIMARY_OUTLET))\r\n .subscribe(route => {\r\n let snapshot = this.router.routerState.snapshot;\r\n let title = route.snapshot.data['title'];\r\n let id = route.snapshot.data['id'];\r\n let parent = route.parent.snapshot.data['breadcrumb'];\r\n let child = route.snapshot.data['breadcrumb'];\r\n this.breadcrumbs = {};\r\n this.title = title;\r\n this.setTitle();\r\n this.updateFilterDates();\r\n this.id = id;\r\n this.breadcrumbs = {\r\n \"parentBreadcrumb\": parent,\r\n \"childBreadcrumb\": child\r\n }\r\n });\r\n this.commonService.headerEditItemData.subscribe(value => {\r\n this.editData = value;\r\n this.setTitle();\r\n });\r\n this.commonService.headerTitleItemData.subscribe(value => {\r\n this.title = value;\r\n this.setTitle();\r\n });\r\n if (screen.width < 1200) {\r\n this.collapseSidebar();\r\n }\r\n this.events.subscribe('event:dashboard', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.ReminderData = event.data.reminders;\r\n this.reminderLength = this.ReminderData.length;\r\n });\r\n }\r\n switchLanguage(language: string) {\r\n this.languageService.changeLanguage(language);\r\n if(language == 'en') {\r\n this.Lang = 'EN';\r\n } else if(language == 'es') {\r\n this.Lang = 'ES';\r\n } else if(language == 'ar') {\r\n this.Lang = 'AR';\r\n }\r\n }\r\n setTitle() {\r\n this.titleService.setTitle(this.title + '' + this.editData);\r\n }\r\n updateFilterDates() {\r\n if (localStorage.getItem(this.appname + 'userprofile')) {\r\n var userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n userdata.enddate = moment().add(parseFloat(userdata.future_data_view_days), 'days').format('YYYY-MM-DD');\r\n userdata.fromdate = moment().subtract(parseFloat(userdata.back_data_view_days), 'days').format('YYYY-MM-DD');\r\n if (this.userdata.enddate < userdata.enddate) {\r\n localStorage.setItem(this.appname + 'userprofile', JSON.stringify(userdata));\r\n }\r\n }\r\n }\r\n collapseSidebar() {\r\n this.open = !this.open;\r\n this.navServices.collapseSidebar = !this.navServices.collapseSidebar\r\n }\r\n right_side_bar() {\r\n this.right_sidebar = !this.right_sidebar\r\n this.rightSidebarEvent.emit(this.right_sidebar)\r\n }\r\n\r\n openMobileNav() {\r\n this.openNav = !this.openNav;\r\n }\r\n goToLogout() {\r\n window.localStorage.clear();\r\n window.sessionStorage.clear();\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n // window.location.replace('/auth/login');\r\n\r\n this.events.publish('event:logout', {\r\n data: {\r\n 'from': 'header logout'\r\n }\r\n });\r\n this.router.navigate(['/login'], { replaceUrl: true })\r\n }\r\n\r\n ngOnInit() {\r\n this.getReminderData('')\r\n this.getDashBoardData();\r\n\r\n\r\n }\r\n dropdowntoggle() {\r\n this.isShow = !this.isShow;\r\n }\r\n\r\n toggledropdown() {\r\n this.companyDropdown = !this.companyDropdown;\r\n }\r\n saveImage(img: string) {\r\n environment.production ? '' : console.log(img);\r\n }\r\n\r\n\r\n getReminderData(assign) {\r\n\r\n }\r\n\r\n getDashBoardData() {\r\n // this.loader.start();\r\n this.dashboardservice.getHomeAnnouncements().subscribe(res => {\r\n // this.loader.stop();\r\n\r\n this.announcements = res;\r\n // environment.production ? '' : console.log('Announcements', this.announcements)\r\n }, err => {\r\n // this.loader.stop();\r\n environment.production ? '' : console.log('Error : While loading bin list ', err);\r\n });\r\n }\r\n\r\n gotoAnnouncements() {\r\n this.modalService.open(CustomerannouncementsComponent, { size: 'lg' })\r\n }\r\n\r\n changeCompany(company) {\r\n if (this.userdata.companyid == '') {\r\n return;\r\n }\r\n Swal.fire({\r\n title: 'Are you sure want to switch company?',\r\n icon: 'warning',\r\n showCancelButton: true,\r\n confirmButtonText: 'Yes',\r\n cancelButtonText: 'No'\r\n }).then((result) => {\r\n if (result.value) {\r\n this.selectedcompanyData = company;\r\n this.userdata.companyid = company.companyid;\r\n\r\n localStorage.clear();\r\n if (this.userdata.login_by_auth_token == 0) {\r\n this.loginComponent.tempForm = {\r\n username: this.userdata.email,\r\n companyid: this.userdata.companyid,\r\n password: this.userdata.password,\r\n }\r\n this.loginComponent.doLogin();\r\n } else {\r\n this.loginComponent.socialAuth = {\r\n loginame: this.userdata.email,\r\n companyid: this.userdata.companyid,\r\n auth_token: this.userdata.auth_token,\r\n }\r\n this.loginComponent.doSocialLogin();\r\n }\r\n } else if (result.dismiss === Swal.DismissReason.cancel) {\r\n\r\n\r\n }\r\n })\r\n }\r\n\r\n selectedCompany(company) {\r\n if (this.userdata.companyids.length == 1) {\r\n return false\r\n }\r\n\r\n this.changeCompany(company);\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \"EzyBook\"\r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    {{title}} {{editData}}\r\n \r\n\r\n

    \r\n \r\n
    \r\n
    {{selectedcompanyData.displayname}}
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    {{announcements.length}}
    \r\n
    \r\n\r\n \r\n
    {{announcements.length}}
     \r\n \r\n \r\n {{i + 1}}.\r\n {{n.description}}   \r\n \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n\r\n
    • \r\n \r\n
      {{Lang}}
      \r\n
      \r\n \r\n
    • \r\n \r\n \r\n \r\n \r\n
    • \r\n {{reminderLength}}\r\n \r\n
        \r\n
      • Reminders {{reminderLength}}\r\n
      • \r\n
      • \r\n
        \r\n
        \r\n
        \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{item.title}}\r\n
        \r\n

        {{item.notes}}

        \r\n
        \r\n
        \r\n
      • \r\n
      • All reminders\r\n
      • \r\n
      \r\n
    • \r\n \r\n \r\n \r\n \r\n
    • \r\n \r\n \r\n \r\n
    • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-right-sidebar',\r\n templateUrl: './right-sidebar.component.html',\r\n styleUrls: ['./right-sidebar.component.scss']\r\n})\r\nexport class RightSidebarComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n public users = [\r\n {\r\n img: \"assets/images/dashboard/user.png\",\r\n name: \"Vincent Porter\",\r\n status: \"Online\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/user1.jpg\",\r\n name: \"Ain Chavez\",\r\n status: \"28 minutes ago\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/user2.jpg\",\r\n name: \"Kori Thomas\",\r\n status: \"Online\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/user3.jpg\",\r\n name: \"Erica Hughes\",\r\n status: \"Online\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/man.png\",\r\n name: \"Ginger Johnston\",\r\n status: \"2 minutes ago\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/user5.jpg\",\r\n name: \"Prasanth Anand\",\r\n status: \"2 hour ago\"\r\n },\r\n {\r\n img: \"assets/images/dashboard/designer.jpg\",\r\n name: \"Hileri Jecno\",\r\n status: \"Online\"\r\n }\r\n ]\r\n\r\n ngOnInit() { }\r\n\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n
    QUICK ADD
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • \r\n
      \r\n
      Add Client
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      New Invoice
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      Add Vendor
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      New Expense
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      Record Receipt
      \r\n
      \r\n
    • \r\n
    • \r\n
      \r\n
      Record Payment
      \r\n
      \r\n
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, Input, ViewEncapsulation } from '@angular/core';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AppServices } from '../../service/app.services';\r\nimport { Events } from '../../service/events.service';\r\nimport { NavService, Menu } from '../../service/nav.service';\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SidebarComponent {\r\n searchText: any;\r\n public menuItems: any;\r\n public url: any;\r\n public fileurl: any;\r\n public userData: any;\r\n public menuList: any;\r\n public filteredList: any = [];\r\n appname = environment.APP_NAME;\r\n companyLogo: any;\r\n constructor(private router: Router, private events: Events, public navServices: NavService, public service: AppServices) {\r\n // this.getMenus();\r\n this.applyMenu();\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo = this.userData.logo ? environment.DOC_URL + '/' + this.userData.companyid + '/' + this.userData.logo : 'assets/images/applogo.svg'\r\n // this.navServices.items.subscribe(menuItems => {\r\n // this.menuItems = menuItems\r\n // this.router.events.subscribe((event) => {\r\n // if (event instanceof NavigationEnd) {\r\n // menuItems.filter(items => {\r\n // if (items.path === event.url)\r\n // this.setNavActive(items)\r\n // if (!items.children) return false\r\n // items.children.filter(subItems => {\r\n // if (subItems.path === event.url)\r\n // this.setNavActive(subItems)\r\n // if (!subItems.children) return false\r\n // subItems.children.filter(subSubItems => {\r\n // if (subSubItems.path === event.url)\r\n // this.setNavActive(subSubItems)\r\n // })\r\n // })\r\n // })\r\n // }\r\n // })\r\n // })\r\n\r\n this.events.subscribe('dashboard:menu', (event: any) => {\r\n this.applyMenu();\r\n this.userData = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.companyLogo = this.userData.logo ? environment.DOC_URL + '/' + this.userData.companyid + '/' + this.userData.logo : 'assets/images/applogo.svg'\r\n\r\n });\r\n }\r\n\r\n applyMenu() {\r\n if (!localStorage.getItem(this.appname + 'menu')) {\r\n return;\r\n }\r\n this.menuList = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n this.menuItems = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n environment.production ? '' : console.log('menu', this.menuItems);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.menuItems.filter(items => {\r\n if (items.ang_root === event.url)\r\n this.setNavActive(items)\r\n if (!items.children) return false\r\n items.children.filter(subItems => {\r\n if (subItems.ang_root === event.url)\r\n this.setNavActive(subItems)\r\n if (!subItems.children) return false\r\n subItems.children.filter(subSubItems => {\r\n if (subSubItems.ang_root === event.url)\r\n this.setNavActive(subSubItems)\r\n })\r\n })\r\n })\r\n }\r\n })\r\n }\r\n\r\n // filterMenu() {\r\n // if (this.searchText == '') {\r\n // this.filteredList = [];\r\n // return false;\r\n // }\r\n // var searchText = this.searchText.toLowerCase();\r\n // this.filteredList = this.menuList.filter(f => {\r\n // if (f.title.toLowerCase().includes(searchText))\r\n // return f.title.toLowerCase().includes(searchText)\r\n // if (!f.children) return false;\r\n // f.children.some(c => c.title.includes(searchText))\r\n // }\r\n \r\n// );\r\n// console.log(this.filteredList)\r\n// this.menuList.filter(items => {\r\n// if(items.title.toLowerCase().includes(this.searchText.toLowerCase())) {\r\n// this.filteredList.push(items);\r\n// }\r\n// if(!items.children) return false;\r\n// items.children.filter(subItems => {\r\n// if (subItems.title.toLowerCase().includes(this.searchText.toLowerCase())) {\r\n// this.filteredList.push(items); \r\n// }\r\n// if (!subItems.children) return false;\r\n// subItems.children.filter(subSubItems => {\r\n// if (subSubItems.title.toLowerCase().includes(this.searchText.toLowerCase()))\r\n// this.filteredList.push(items); \r\n// })\r\n// }) \r\n// })\r\n// }\r\n\r\n filterMenu() {\r\n if (this.searchText.trim() === '') {\r\n this.filteredList = [];\r\n return false;\r\n }\r\n \r\n const searchText = this.searchText.toLowerCase();\r\n \r\n this.filteredList = this.menuItems.filter(menuItem => {\r\n return this.searchInMenuItem(menuItem, searchText);\r\n\r\n });\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.filteredList.filter(items => {\r\n if (items.ang_root === event.url)\r\n this.setNavActive(items)\r\n if (!items.children) return false\r\n items.children.filter(subItems => {\r\n if (subItems.ang_root === event.url)\r\n this.setNavActive(subItems)\r\n if (!subItems.children) return false\r\n subItems.children.filter(subSubItems => {\r\n if (subSubItems.ang_root === event.url)\r\n this.setNavActive(subSubItems)\r\n })\r\n })\r\n })\r\n }\r\n })\r\n }\r\n \r\n searchInMenuItem(menuItem, searchText) {\r\n // Check if the current menu item's title includes the search text\r\n if (menuItem.title.toLowerCase().includes(searchText)) {\r\n return true;\r\n }\r\n \r\n // If the menu item has children, recursively search in the children\r\n if (menuItem.children) {\r\n return menuItem.children.some(childItem => this.searchInMenuItem(childItem, searchText));\r\n }\r\n \r\n // If no match found in the current menu item and its children\r\n return false;\r\n }\r\n\r\n\r\n getMenus() {\r\n if (localStorage.getItem(this.appname + 'menu') != null) {\r\n this.menuList = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n this.menuItems = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n return;\r\n }\r\n this.service.getMenuList().subscribe((res: any) => {\r\n\r\n if (res != null) {\r\n localStorage.setItem(this.appname + 'menu', JSON.stringify(res));\r\n }\r\n environment.production ? '' : console.log('Sidebar: ', res);\r\n this.menuList = res;\r\n this.menuItems = res;\r\n environment.production ? '' : console.log('menu', this.menuItems);\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.menuItems.filter(items => {\r\n if (items.ang_root === event.url)\r\n this.setNavActive(items)\r\n if (!items.children) return false\r\n items.children.filter(subItems => {\r\n if (subItems.ang_root === event.url)\r\n this.setNavActive(subItems)\r\n if (!subItems.children) return false\r\n subItems.children.filter(subSubItems => {\r\n if (subSubItems.ang_root === event.url)\r\n this.setNavActive(subSubItems)\r\n })\r\n })\r\n })\r\n }\r\n })\r\n }, err => {\r\n environment.production ? '' : console.log('check err', err);\r\n });\r\n }\r\n //Active Nave state\r\n setNavActive(item) {\r\n // this.menuItems.filter(menuItem => {\r\n // if (menuItem != item)\r\n // menuItem.active = false\r\n // if (menuItem.children && menuItem.children.includes(item))\r\n // menuItem.active = true\r\n // if (menuItem.children) {\r\n // menuItem.children.filter(submenuItems => {\r\n // if (submenuItems.children && submenuItems.children.includes(item)) {\r\n // menuItem.active = true\r\n // submenuItems.active = true\r\n // }\r\n // })\r\n // }\r\n // })\r\n }\r\n\r\n // Click Toggle menu\r\n toggletNavActive(item) {\r\n if (!item.active) {\r\n this.menuItems.forEach(a => {\r\n if (this.menuItems.includes(item))\r\n a.active = false\r\n if (!a.children) return false\r\n a.children.forEach(b => {\r\n if (a.children.includes(item)) {\r\n b.active = false\r\n }\r\n })\r\n });\r\n }\r\n item.active = !item.active\r\n }\r\n\r\n //Fileupload\r\n readUrl(event: any) {\r\n if (event.target.files.length === 0)\r\n return;\r\n //Image upload validation\r\n var mimeType = event.target.files[0].type;\r\n if (mimeType.match(/image\\/*/) == null) {\r\n return;\r\n }\r\n // Image upload\r\n var reader = new FileReader();\r\n reader.readAsDataURL(event.target.files[0]);\r\n reader.onload = (_event) => {\r\n this.url = reader.result;\r\n }\r\n }\r\n\r\n navigate(item) {\r\n if (item.type == 'link') {\r\n if (item.ang_root == '/login') {\r\n window.localStorage.clear();\r\n localStorage.clear();\r\n this.events.publish('event:logout', {\r\n data: {\r\n 'from': 'header logout'\r\n }\r\n });\r\n }\r\n this.router.navigate([item.ang_root], { replaceUrl: true });\r\n }\r\n }\r\n\r\n}\r\n","
    \r\n
    \"EzyBook\"
    \r\n
    \r\n","import * as Chartist from 'chartist';\r\nimport { ChartEvent, ChartType } from 'ng-chartist';\r\n\r\nexport interface Chart {\r\n type: ChartType;\r\n data: Chartist.IChartistData;\r\n options?: any;\r\n responsiveOptions?: any;\r\n events?: ChartEvent;\r\n}\r\n\r\nexport var doughnutData = [\r\n {\r\n value: 100,\r\n name: \"Frontend\"\r\n\r\n },\r\n {\r\n value: 150,\r\n name: \"Backend\"\r\n },\r\n {\r\n value: 150,\r\n name: \"Api\"\r\n },\r\n {\r\n value: 100,\r\n name: \"Issues\"\r\n }\r\n];\r\n\r\nexport var view: any[] = [409, 204];\r\n\r\nexport var pieData = [\r\n {\r\n value: 300,\r\n name: \"Frontend\"\r\n\r\n },\r\n {\r\n value: 50,\r\n name: \"Backend\"\r\n },\r\n {\r\n value: 100,\r\n name: \"Api\"\r\n },\r\n]\r\n\r\n//Options\r\nexport var doughnutChartShowLabels = false;\r\nexport var doughnutChartTooltip = false;\r\nexport var doughnutChartGradient = false;\r\nexport var doughnutChartcolorScheme = {\r\n domain: [\"#ff7f83\", \"#02cccd\", \"#a5a5a5\", \"#ffbc58\"],\r\n};\r\n\r\n// Chart 5 Line chart with area\r\nexport var chart5: Chart = {\r\n type: 'Line',\r\n data: {\r\n labels: [1, 2, 3, 4, 5, 6, 7, 8],\r\n series: [\r\n [5, 9, 7, 8, 5, 3, 5, 4]\r\n ]\r\n },\r\n options: {\r\n showArea: true,\r\n height: '450',\r\n low: 0,\r\n }\r\n};\r\n\r\n//line chart\r\nexport var lineChartData: Array = [\r\n { data: [20, 5, 80, 10, 100, 15] },\r\n { data: [0, 50, 20, 70, 30, 27] },\r\n { data: [0, 30, 40, 10, 86, 40] }\r\n];\r\nexport var lineChartLabels: Array = [\"1 min.\", \"10 min.\", \"20 min.\", \"30 min.\", \"40 min.\", \"50 min.\"];\r\nexport var lineChartOptions: any = {\r\n scaleShowGridLines: true,\r\n scaleGridLineWidth: 1,\r\n scaleShowHorizontalLines: true,\r\n scaleShowVerticalLines: true,\r\n bezierCurve: true,\r\n bezierCurveTension: 0.4,\r\n pointDot: true,\r\n pointDotRadius: 4,\r\n pointDotStrokeWidth: 1,\r\n pointHitDetectionRadius: 20,\r\n datasetStroke: true,\r\n datasetStrokeWidth: 2,\r\n datasetFill: true,\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n\r\n};\r\nexport var lineChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#01cccd\",\r\n pointColor: \"#01cccd\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#fff\",\r\n pointHighlightStroke: \"#000\"\r\n },\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#a5a5a5\",\r\n pointColor: \"#a5a5a5\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#000\",\r\n pointHighlightStroke: \"rgba(30, 166, 236, 1)\",\r\n },\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#ff7f83\",\r\n pointColor: \"#ff7f83\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#000\",\r\n pointHighlightStroke: \"rgba(30, 166, 236, 1)\",\r\n }\r\n];\r\nexport var lineChartLegend = false;\r\nexport var lineChartType = 'line';\r\n\r\n\r\n//line chart\r\nexport var smallLineChartData: Array = [\r\n { data: [20, 5, 120, 10, 140, 15] },\r\n];\r\nexport var smallLineChartLabels: Array = [\"\", \"\", \"\", \"\", \"\", \"\"];\r\nexport var smallLineChartOptions: any = {\r\n scaleShowHorizontalLines: false,\r\n pointDotStrokeWidth: 0,\r\n scaleShowVerticalLines: false,\r\n responsive: true,\r\n elements: {\r\n point: {\r\n radius: 0\r\n },\r\n line: {\r\n tension: 0\r\n }\r\n },\r\n scales: {\r\n xAxes: [\r\n {\r\n display: false\r\n }\r\n ],\r\n yAxes: [\r\n {\r\n display: false\r\n }\r\n ]\r\n }\r\n};\r\nexport var smallLineChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#ff8084\",\r\n pointColor: \"#ff8084\",\r\n },\r\n\r\n];\r\nexport var smallLineChartLegend = false;\r\nexport var smallLineChartType = 'line';\r\n\r\n//line chart\r\nexport var smallLine2ChartData: Array = [\r\n { data: [85, 83, 90, 70, 85, 60, 65, 63, 68, 68, 65, 40, 60, 75, 70, 90] },\r\n];\r\nexport var smallLine2ChartLabels: Array = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17'];\r\nexport var smallLine2ChartOptions: any = {\r\n scaleShowHorizontalLines: false,\r\n scaleShowVerticalLines: false,\r\n pointDot: false,\r\n pointDotRadius: 0,\r\n pointDotStrokeWidth: 0,\r\n responsive: true,\r\n elements: {\r\n point: {\r\n radius: 0\r\n },\r\n line: {\r\n tension: 0\r\n }\r\n },\r\n\r\n scales: {\r\n xAxes: [\r\n {\r\n display: false\r\n }\r\n ],\r\n yAxes: [\r\n {\r\n display: false\r\n }\r\n ]\r\n }\r\n};\r\nexport var smallLine2ChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#13c9ca\",\r\n pointColor: \"#13c9ca\",\r\n },\r\n\r\n];\r\nexport var smallLine2ChartLegend = false;\r\nexport var smallLine2ChartType = 'line';\r\n\r\n\r\n//line chart\r\nexport var smallLine3ChartData: Array = [\r\n { data: [85, 83, 90, 70, 85, 60, 65, 63, 68, 68, 65, 40, 60, 75, 70, 90] },\r\n];\r\nexport var smallLine3ChartLabels: Array = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17'];\r\nexport var smallLine3ChartOptions: any = {\r\n scaleShowHorizontalLines: false,\r\n pointDotStrokeWidth: 0,\r\n scaleShowVerticalLines: false,\r\n responsive: true,\r\n elements: {\r\n point: {\r\n radius: 0\r\n },\r\n line: {\r\n tension: 0\r\n }\r\n },\r\n scales: {\r\n xAxes: [\r\n {\r\n display: false\r\n }\r\n ],\r\n yAxes: [\r\n {\r\n display: false\r\n }\r\n ]\r\n }\r\n};\r\nexport var smallLine3ChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#f0b54d\",\r\n pointColor: \"#f0b54d\",\r\n },\r\n\r\n];\r\nexport var smallLine3ChartLegend = false;\r\nexport var smallLine3ChartType = 'line';\r\n\r\n//line chart\r\nexport var smallLine4ChartData: Array = [\r\n { data: [85, 83, 90, 70, 85, 60, 65, 63, 68, 68, 65, 40, 60, 68, 75, 70, 90] },\r\n];\r\nexport var smallLine4ChartLabels: Array = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17'];\r\nexport var smallLine4ChartOptions: any = {\r\n scaleShowHorizontalLines: false,\r\n scaleShowVerticalLines: false,\r\n pointDot: false,\r\n pointDotRadius: 0,\r\n pointDotStrokeWidth: 0,\r\n responsive: true,\r\n elements: {\r\n point: {\r\n radius: 0\r\n },\r\n line: {\r\n tension: 0\r\n }\r\n },\r\n scales: {\r\n xAxes: [\r\n {\r\n display: false\r\n }\r\n ],\r\n yAxes: [\r\n {\r\n display: false\r\n }\r\n ]\r\n }\r\n};\r\nexport var smallLine4ChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#a5a5a5\",\r\n pointColor: \"#a5a5a5\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#fff\",\r\n pointHighlightStroke: \"#000\",\r\n },\r\n\r\n];\r\nexport var smallLine4ChartLegend = false;\r\nexport var smallLine4ChartType = 'line';\r\n\r\n\r\n// Chart 3\r\nexport var chart3: Chart = {\r\n type: 'Bar',\r\n data: {\r\n labels: ['100', '200', '300', '400', '500', '600', '700', '800'],\r\n series: [\r\n [2.5, 3, 3, 0.9, 1.3, 1.8, 3.8, 1.5],\r\n [3.8, 1.8, 4.3, 2.3, 3.6, 2.8, 2.8, 2.8]\r\n ]\r\n },\r\n options: {\r\n height: 303,\r\n seriesBarDistance: 12,\r\n axisX: {\r\n showGrid: false,\r\n labelInterpolationFnc: function (value) {\r\n return value[0];\r\n }\r\n }\r\n },\r\n events: {\r\n created: (data) => {\r\n\r\n }\r\n }\r\n};\r\n\r\n\r\n//report component\r\n\r\n//line chart\r\nexport var salesChartData: Array = [\r\n { data: [10, 50, 0, 80, 10, 70] },\r\n { data: [20, 40, 15, 70, 30, 27] },\r\n { data: [5, 30, 20, 40, 50, 20] }\r\n];\r\nexport var salesChartLabels: Array = [\"1 min.\", \"10 min.\", \"20 min.\", \"30 min.\", \"40 min.\", \"50 min.\"];\r\nexport var salesChartOptions: any = {\r\n scaleShowGridLines: true,\r\n scaleGridLineWidth: 1,\r\n scaleShowHorizontalLines: true,\r\n scaleShowVerticalLines: true,\r\n bezierCurve: true,\r\n bezierCurveTension: 0.4,\r\n pointDot: true,\r\n pointDotRadius: 4,\r\n pointDotStrokeWidth: 1,\r\n pointHitDetectionRadius: 20,\r\n datasetStroke: true,\r\n datasetStrokeWidth: 2,\r\n datasetFill: true,\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n\r\n};\r\nexport var salesChartColors: Array = [\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#01cccd\",\r\n pointColor: \"#01cccd\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#fff\",\r\n pointHighlightStroke: \"#000\"\r\n },\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#a5a5a5\",\r\n pointColor: \"#a5a5a5\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#000\",\r\n pointHighlightStroke: \"rgba(30, 166, 236, 1)\",\r\n },\r\n {\r\n backgroundColor: \"transparent\",\r\n borderColor: \"#ff7f83\",\r\n pointColor: \"#ff7f83\",\r\n pointStrokeColor: \"#fff\",\r\n pointHighlightFill: \"#000\",\r\n pointHighlightStroke: \"rgba(30, 166, 236, 1)\",\r\n }\r\n];\r\nexport var salesChartLegend = false;\r\nexport var salesChartType = 'line';\r\n\r\nexport var areaChart1: any = {\r\n chartType: 'AreaChart',\r\n dataTable: [\r\n ['Year', 'Sales', 'Expenses'],\r\n ['2013', 1000, 400],\r\n ['2014', 1170, 460],\r\n ['2015', 660, 1120],\r\n ['2016', 1030, 540]\r\n ],\r\n options: {\r\n title: 'Company Performance',\r\n hAxis: { title: 'Year', titleTextStyle: { color: '#333' } },\r\n vAxis: { minValue: 0 },\r\n width: '100%',\r\n height: 340,\r\n colors: [\"#ff7f83\", \"#a5a5a5\"],\r\n backgroundColor: 'transparent'\r\n },\r\n};\r\n\r\nexport var columnChart1: any = {\r\n chartType: 'ColumnChart',\r\n dataTable: [\r\n [\"Year\", \"Sales\", \"Expenses\"],\r\n [\"100\", 2.5, 3.8],\r\n [\"200\", 3, 1.8],\r\n [\"300\", 3, 4.3],\r\n [\"400\", 0.9, 2.3],\r\n [\"500\", 1.3, 3.6],\r\n [\"600\", 1.8, 2.8],\r\n [\"700\", 3.8, 2.8],\r\n [\"800\", 1.5, 2.8]\r\n ],\r\n options: {\r\n legend: { position: 'none' },\r\n bars: \"vertical\",\r\n vAxis: {\r\n format: \"decimal\"\r\n },\r\n height: 340,\r\n width: '100%',\r\n colors: [\"#ff7f83\", \"#a5a5a5\"],\r\n backgroundColor: 'transparent'\r\n },\r\n};\r\n\r\nexport var lineChart: any = {\r\n chartType: 'LineChart',\r\n dataTable: [\r\n ['Month', 'Guardians of the Galaxy', 'The Avengers'],\r\n [10, 20, 60],\r\n [20, 40, 10],\r\n [30, 20, 40],\r\n [40, 50, 30],\r\n [50, 20, 80],\r\n [60, 60, 30],\r\n [70, 10, 20],\r\n [80, 40, 90],\r\n [90, 20, 0]\r\n ],\r\n options: {\r\n colors: [\"#ff8084\", \"#a5a5a5\"],\r\n legend: { position: 'none' },\r\n height: 500,\r\n width: '100%',\r\n backgroundColor: 'transparent'\r\n },\r\n};\r\n\r\nexport var chart6: Chart = {\r\n type: 'Line',\r\n data: {\r\n labels: [],\r\n series: [\r\n [3, 4, 3, 5, 4, 3, 5]\r\n ]\r\n },\r\n options: {\r\n showScale:false,\r\n fullWidth: !0,\r\n showArea: !0,\r\n label:false,\r\n width:'600',\r\n height: '358',\r\n low: 0,\r\n offset: 0,\r\n axisX: {\r\n showLabel: false,\r\n showGrid: false\r\n },\r\n axisY: {\r\n showLabel: false,\r\n showGrid: false,\r\n low: 0,\r\n offset: -10,\r\n },\r\n }\r\n };\r\n","import { Directive, HostListener } from '@angular/core';\r\n\r\nimport { Screenfull } from 'screenfull';\r\nimport * as screenfull from 'screenfull';\r\n\r\n@Directive({\r\n selector: '[toggleFullscreen]'\r\n})\r\nexport class ToggleFullscreenDirective {\r\n public screenfull: Screenfull;\r\n @HostListener('click') onClick() {\r\n if ((screenfull).isEnabled) {\r\n (screenfull).toggle();\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core';\r\nimport { NavService } from '../../service/nav.service';\r\nimport { trigger, transition, useAnimation } from '@angular/animations';\r\nimport { bounce, zoomOut, zoomIn, fadeIn, bounceIn } from 'ng-animate';\r\nimport { NgxCaptureService } from \"ngx-capture\";\r\nimport { tap } from \"rxjs/operators\";\r\nimport {CroppedEvent} from 'ngx-photo-editor';\r\nimport { Router } from '@angular/router';\r\nimport { environment } from 'src/environments/environment';\r\nimport { screenShotService } from './screenshot.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport * as moment from 'moment';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { DatePipe } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'app-content-layout',\r\n templateUrl: './content-layout.component.html',\r\n styleUrls: ['./content-layout.component.scss'],\r\n animations: [\r\n trigger('animateRoute', [transition('* => *', useAnimation(fadeIn, {\r\n // Set the duration to 5seconds and delay to 2 seconds\r\n //params: { timing: 3}\r\n }))])\r\n ]\r\n})\r\nexport class ContentLayoutComponent implements OnInit {\r\n @ViewChild(\"screen\", { static: true }) screen: any;\r\n public right_side_bar: boolean;\r\n public layoutType: string = 'RTL';\r\n public layoutClass: boolean = false;\r\n showCapture = false;\r\n closeResult:any;\r\n payType = true;\r\n img:any;\r\n base64:any={};\r\n imageObject:any = [];\r\n imageChangedEvent:any;\r\n userdata:any;\r\n appname=environment.APP_NAME;\r\n @ViewChild('expiryModal') expiryModal: TemplateRef;\r\n constructor(public navServices: NavService, private captureService: NgxCaptureService, private router:Router, private screenshotService:screenShotService, private sanitizer: DomSanitizer, private modalService:NgbModal, private datePipe:DatePipe) { \r\n\t\tthis.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n // const currentDate = moment(this.userdata.expiry_date);\r\n\t\t// const startDate = currentDate.format('YYYY-MM-DD');\r\n\t\t// const endDate = this.datePipe.transform(new Date(),'yyy-MM-dd');\r\n\t\t// const differenceInDays = this.getDaysDifference(new Date(startDate), new Date(endDate));\r\n\r\n\t\t// if (differenceInDays < 4) {\r\n\t\t// \tsetTimeout(() => {\r\n\t\t// \t// this.openExpiryModal();\r\n\t\t// \t}, 1000);\r\n\t\t// }\r\n \r\n }\r\n\r\n public getRouterOutletState(outlet) {\r\n return outlet.isActivated ? outlet.activatedRoute : '';\r\n }\r\n\r\n screenshot() {\r\n this.captureService\r\n .getImage(this.screen.nativeElement, true).subscribe(data=> {\r\n this.imageChangedEvent = data\r\n environment.production ? '' : console.log(data)\r\n })\r\n }\r\n\r\n imageCropped(event: CroppedEvent) {\r\n this.base64=this.sanitizer.bypassSecurityTrustResourceUrl(event.base64);\r\n this.screenshotService.screenshots.push({'src':this.base64})\r\n environment.production ? '' : console.log(this.imageObject)\r\n \r\n this.router.navigate(['/snagbugs/addbugs']);\r\n }\r\n\r\n public rightSidebar($event) {\r\n this.right_side_bar = $event\r\n }\r\n\r\n public clickRtl(val) {\r\n if (val === 'RTL') {\r\n document.body.className = 'rtl';\r\n this.layoutClass = true;\r\n this.layoutType = 'LTR';\r\n } else {\r\n document.body.className = '';\r\n this.layoutClass = false;\r\n this.layoutType = 'RTL';\r\n }\r\n }\r\n\r\n ngOnInit() { }\r\n\r\n toggleCapture() {\r\n this.showCapture = !this.showCapture;\r\n }\r\n\r\n\r\n closepopup() {\r\n\t\tthis.modalService.dismissAll();\r\n\t}\r\n\r\n openExpiryModal() {\r\n\t\tthis.modalService.open(this.expiryModal, { ariaLabelledBy: 'modal-basic-title', size: 'md', backdrop: 'static', backdropClass:'modal-custom-backdrop' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t});\r\n\t}\r\n // gotoSubscriptions() {\r\n\t// \tthis.router.navigate(['/companyprofile'], { replaceUrl: true });\r\n // this.modalService.dismissAll();\r\n\t// }\r\n\r\n\tgetDaysDifference(date1: Date, date2: Date): number {\r\n\t\tconst timeDiff = Math.abs(date2.getTime() - date1.getTime());\r\n\t\tconst daysDiff = Math.ceil(timeDiff / (1000 * 3600 * 24));\r\n\t\treturn daysDiff;\r\n\t}\r\n\r\n openSubscriptions(paymentcontent) {\r\n this.modalService.open(paymentcontent, { ariaLabelledBy: 'modal-basic-title', size: 'lg', backdrop: 'static' }).result.then((result) => {\r\n\t\t\tthis.closeResult = `Closed with: ${result}`;\r\n\t\t}, (reason) => {\r\n\t\t});\r\n }\r\n\r\n\r\n}\r\n","\r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    Your ezybooks subscription is about to end soon please renew your subscription
    \r\n \r\n
    To renew your subscription or to update your subscription
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    Balance Due: $75.00
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    ","import { Injectable } from \"@angular/core\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class screenShotService {\r\n screenshots:any= [];\r\n constructor() {}\r\n}","import { Routes } from '@angular/router';\r\n\r\nexport const content: Routes = [\r\n {\r\n path: 'dashboard',\r\n loadChildren: () => import('../../components/dashboard/dashboard.module').then(m => m.DashboardModule),\r\n },\r\n {\r\n path: 'proaccountant',\r\n loadChildren: () => import('../../components/dashboard/proaccountant/proaccountant.module').then(m => m.ProAccountantModule),\r\n },\r\n {\r\n path: 'bintemplates',\r\n loadChildren: () => import('../../components/inventory/bintemplates/bintemplates.module').then(m => m.BintemplatesModule),\r\n data: {\r\n breadcrumb: 'Bin Templates'\r\n }\r\n },\r\n {\r\n path: 'inventoryadjustments',\r\n loadChildren: () => import('../../components/inventory/inventoryadjustments/inventoryadjustments.module').then(m => m.InventoryadjustmentsModule),\r\n data: {\r\n breadcrumb: 'Inventory Ajustments'\r\n }\r\n },\r\n {\r\n path: 'products',\r\n loadChildren: () => import('../../components/inventory/products/products.module').then(m => m.ProductsModule),\r\n data: {\r\n breadcrumb: 'Products'\r\n }\r\n },\r\n {\r\n path: 'projscheduler',\r\n loadChildren: () => import('../../components/projectmanager/scheduler/timeline/timeline.module').then(m => m.ProjTimelineModule),\r\n data: {\r\n breadcrumb: 'projtimeline'\r\n }\r\n },\r\n {\r\n path: 'emptimesheet',\r\n loadChildren: () => import('../../components/projectmanager/emptimesheet/emptimesheet.module').then(m => m.EmptimesheetModule),\r\n data: {\r\n breadcrumb: 'Timesheet'\r\n }\r\n },\r\n {\r\n path: 'projects',\r\n loadChildren: () => import('../../components/projectmanager/projects/projects.module').then(m => m.ProjectsModule),\r\n data: {\r\n breadcrumb: 'Projects'\r\n }\r\n },\r\n {\r\n path: 'projecttypes',\r\n loadChildren: () => import('../../components/projectmanager/projecttypes/projecttypes.module').then(m => m.ProjecttypesModule),\r\n data: {\r\n breadcrumb: 'Project Types'\r\n }\r\n },\r\n {\r\n path: 'tasktypes',\r\n loadChildren: () => import('../../components/projectmanager/tasktypes/tasktypes.module').then(m => m.TasktypesModule),\r\n data: {\r\n breadcrumb: 'Task Types'\r\n }\r\n },\r\n {\r\n path: 'projectmodules',\r\n loadChildren: () => import('../../components/projectmanager/projectmodules/projectmodules.module').then(m => m.ProjectmodulesModule),\r\n data: {\r\n breadcrumb: 'Project Module'\r\n }\r\n },\r\n {\r\n path: 'syncbatches',\r\n loadChildren: () => import('../../components/integrations/syncbatches/syncbatches.module').then(m => m.SyncbatchesModule),\r\n data: {\r\n breadcrumb: 'Sync batches'\r\n }\r\n },\r\n {\r\n path: 'pull',\r\n loadChildren: () => import('../../components/integrations/pull/pull.module').then(m => m.PullModule),\r\n data: {\r\n breadcrumb: 'Pull'\r\n }\r\n },\r\n {\r\n path: 'thirdpartyapps',\r\n loadChildren: () => import('../../components/integrations/thirdparty/thirdparty.module').then(m => m.ThirdpartyModule),\r\n data: {\r\n breadcrumb: 'Third Party App'\r\n }\r\n },\r\n {\r\n path: 'assemblies',\r\n loadChildren: () => import('../../components/inventory/assemblies/assemblies.module').then(m => m.AssembliesModule),\r\n data: {\r\n breadcrumb: 'Assemblies'\r\n }\r\n },\r\n {\r\n path: 'transferrequest',\r\n loadChildren: () => import('../../components/inventory/transfer-request/transfer-request.module').then(m => m.TransferRequestModule),\r\n data: {\r\n breadcrumb: 'Transfer Request'\r\n }\r\n },\r\n {\r\n path: 'categories',\r\n loadChildren: () => import('../../components/inventory/category/category.module').then(m => m.CategoryModule),\r\n data: {\r\n breadcrumb: 'Categories'\r\n }\r\n },\r\n {\r\n path: 'binlocations',\r\n loadChildren: () => import('../../components/inventory/binlocation/binlocation.module').then(m => m.BinlocationModule),\r\n data: {\r\n breadcrumb: 'Bin Locations'\r\n }\r\n },\r\n {\r\n path: 'pricings',\r\n loadChildren: () => import('../../components/inventory/pricings/pricings.module').then(m => m.PricingsModule),\r\n data: {\r\n breadcrumb: 'Pricings'\r\n }\r\n },\r\n {\r\n path: 'bulkpricingchange',\r\n loadChildren: () => import('../../components/inventory/bulkpricings/bulkpricings.module').then(m => m.BulkPricingsModule),\r\n data: {\r\n breadcrumb: 'Bulk Pricing Change'\r\n }\r\n },\r\n {\r\n path: 'employmentoffers',\r\n loadChildren: () => import('../../components/hr/offers/offers.module').then(m => m.OffersModule),\r\n data: {\r\n breadcrumb: 'Offers'\r\n }\r\n },\r\n {\r\n path: 'employees',\r\n loadChildren: () => import('../../components/hr/employees/employees.module').then(m => m.EmployeesModule),\r\n data: {\r\n breadcrumb: 'Employees'\r\n }\r\n },\r\n {\r\n path: 'companysalarycomponent',\r\n loadChildren: () => import('../../components/hr/salarycomponent/salarycomponent.module').then(m => m.SalarycomponentModule),\r\n data: {\r\n breadcrumb: 'Salary Components'\r\n }\r\n },\r\n {\r\n path: 'weeklyoff',\r\n loadChildren: () => import('../../components/hr/weeklyoff/weeklyoff.module').then(m => m.WeeklyoffModule),\r\n data: {\r\n breadcrumb: 'Weekly Off'\r\n }\r\n },\r\n {\r\n path: 'employeeassesment',\r\n loadChildren: () => import('../../components/hr/employeeassessments/employeeassessments.module').then(m => m.EmployeeassessmentsModule),\r\n data: {\r\n breadcrumb: 'Employee Assessments'\r\n }\r\n },\r\n {\r\n path: 'jobapplications',\r\n loadChildren: () => import('../../components/hr/jobapplications/jobapplications.module').then(m => m.JobapplicationsModule),\r\n data: {\r\n breadcrumb: 'Job Applications'\r\n }\r\n },\r\n {\r\n path: 'jobopenings',\r\n loadChildren: () => import('../../components/hr/jobopening/jobopening.module').then(m => m.JobopeningModule),\r\n data: {\r\n breadcrumb: 'Job Openings'\r\n }\r\n },\r\n {\r\n path: 'manualcount',\r\n loadChildren: () => import('../../components/inventory/manualcount/manualcount.module').then(m => m.ManualCountModule),\r\n data: {\r\n breadcrumb: 'Cycle Count'\r\n }\r\n },\r\n {\r\n path: 'projecttask',\r\n loadChildren: () => import('../../components/projectmanager/projecttask/projecttask.module').then(m => m.ProjecttaskModule),\r\n data: {\r\n breadcrumb: 'Project Task'\r\n }\r\n },\r\n {\r\n path: 'departments',\r\n loadChildren: () => import('../../components/inventory/departments/departments.module').then(m => m.DepartmentsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n }\r\n },\r\n {\r\n path: 'itemrequests',\r\n loadChildren: () => import('../../components/inventory/itemrequests/itemrequests.module').then(m => m.ItemrequestsModule),\r\n data: {\r\n breadcrumb: 'Departments'\r\n }\r\n },\r\n {\r\n path: 'snagbugs',\r\n loadChildren: () => import('../../components/projectmanager/snags-bugs/snags-bugs.module').then(m => m.snagsbugsModule),\r\n data: {\r\n breadcrumb: 'List of Snags'\r\n }\r\n },\r\n {\r\n path: 'insights',\r\n loadChildren: () => import('../../components/insights/insights.module').then(m => m.InsightsModule),\r\n data: {\r\n breadcrumb: 'Insights'\r\n }\r\n },\r\n {\r\n path: 'loans',\r\n loadChildren: () => import('../../components/accounts/loans/loans.module').then(m => m.LoansModule),\r\n data: {\r\n breadcrumb: 'Loans'\r\n }\r\n },\r\n {\r\n path: 'payrollpaymenttypes',\r\n loadChildren: () => import('../../components/accounts/payrollpaymenttypes/payrollpaymenttypes.module').then(m => m.PayrollpaymenttypesModule),\r\n data: {\r\n breadcrumb: 'Payroll Payment Types'\r\n }\r\n },\r\n {\r\n path: 'creditnotetypes',\r\n loadChildren: () => import('../../components/accounts/creditnotetypes/creditnotetypes.module').then(m => m.CreditnotetypesModule),\r\n data: {\r\n breadcrumb: 'Credit Note Types'\r\n }\r\n },\r\n {\r\n path: 'debitnotetypes',\r\n loadChildren: () => import('../../components/accounts/debitnotetypes/debitnotetypes.module').then(m => m.DebitnotetypesModule),\r\n data: {\r\n breadcrumb: 'Debit Note Types'\r\n }\r\n },\r\n {\r\n path: 'paymentsreceived',\r\n loadChildren: () => import('../../components/accounts/paymentsreceived/paymentsreceived.module').then(m => m.PaymentsReceivedModule),\r\n data: {\r\n breadcrumb: 'Payments Received'\r\n }\r\n },\r\n {\r\n path: 'paymentpaid',\r\n loadChildren: () => import('../../components/accounts/paymentpaid/paymentpaid.module').then(m => m.PaymentPaidModule),\r\n data: {\r\n breadcrumb: 'Payments Paid'\r\n }\r\n },\r\n {\r\n path: 'fundtransferrequests',\r\n loadChildren: () => import('../../components/accounts/fundtransferrequests/fundtransferrequests.module').then(m => m.FundtransferrequestsModule),\r\n data: {\r\n breadcrumb: 'Fund Transfer Requests'\r\n }\r\n },\r\n {\r\n path: 'apstatement',\r\n loadChildren: () => import('../../components/accounts/apstatement/apstatement.module').then(m => m.ApstatementsModule),\r\n data: {\r\n breadcrumb: 'AP Statements'\r\n }\r\n },\r\n {\r\n path: 'arcustomerstatements',\r\n loadChildren: () => import('../../components/accounts/arcustomerstatements/arcustomerstatements.module').then(m => m.ArcustomerstatementsModule),\r\n data: {\r\n breadcrumb: 'AR Statements'\r\n }\r\n },\r\n {\r\n path: 'chartofaccounts',\r\n loadChildren: () => import('../../components/accounts/chartofacctree/chartofacctree.module').then(m => m.ChartofAccTreeModule),\r\n data: {\r\n breadcrumb: 'Chart of Accounts'\r\n }\r\n },\r\n {\r\n path: 'chartofacctree',\r\n loadChildren: () => import('../../components/accounts/chartofacctree/chartofacctree.module').then(m => m.ChartofAccTreeModule),\r\n data: {\r\n breadcrumb: 'Chart of Accounts'\r\n }\r\n },\r\n {\r\n path: 'banks',\r\n loadChildren: () => import('../../components/accounts/banks/banks.module').then(m => m.BanksModule),\r\n data: {\r\n breadcrumb: 'Cash/Banks'\r\n }\r\n },\r\n {\r\n path: 'financialyears',\r\n loadChildren: () => import('../../components/accounts/financialyears/financialyears.module').then(m => m.FinancialyearsModule),\r\n data: {\r\n breadcrumb: 'Financial Years'\r\n }\r\n },\r\n {\r\n path: 'genericgltypes',\r\n loadChildren: () => import('../../components/settings/genericgltypes/genericgltypes.module').then(m => m.GenericgltypesModule),\r\n data: {\r\n breadcrumb: 'Generic GL Types'\r\n }\r\n },\r\n {\r\n path: 'taxconfiguration',\r\n loadChildren: () => import('../../components/accounts/taxconfiguration/taxconfiguration.module').then(m => m.TaxconfigurationModule),\r\n data: {\r\n breadcrumb: 'Tax Configuration'\r\n }\r\n },\r\n {\r\n path: 'currencies',\r\n loadChildren: () => import('../../components/accounts/currencies/currencies.module').then(m => m.CurrenciesModule),\r\n data: {\r\n breadcrumb: 'Currencies'\r\n }\r\n },\r\n {\r\n path: 'paymentmethod',\r\n loadChildren: () => import('../../components/accounts/paymentmethod/paymentmethod.module').then(m => m.PaymentmethodModule),\r\n data: {\r\n breadcrumb: 'Payment Method'\r\n }\r\n },\r\n {\r\n path: 'chequebooks',\r\n loadChildren: () => import('../../components/accounts/chequebooks/chequebooks.module').then(m => m.ChequebooksModule),\r\n data: {\r\n breadcrumb: 'Cheque Books'\r\n }\r\n },\r\n {\r\n path: 'customerdeposits',\r\n loadChildren: () => import('../../components/accounts/customerdeposits/customerdeposits.module').then(m => m.CustomerdepositsModule),\r\n data: {\r\n breadcrumb: 'Customer Deposits'\r\n }\r\n },\r\n {\r\n path: 'financialcharges',\r\n loadChildren: () => import('../../components/accounts/financialcharges/financialcharges.module').then(m => m.FinancialchargesModule),\r\n data: {\r\n breadcrumb: 'Financial Charges'\r\n }\r\n },\r\n {\r\n path: 'financialstatements',\r\n loadChildren: () => import('../../components/accounts/financialstatements/financialstatements.module').then(m => m.FinancialstatementsModule),\r\n data: {\r\n breadcrumb: 'Financial Statements'\r\n }\r\n },\r\n {\r\n path: 'journalentries',\r\n loadChildren: () => import('../../components/accounts/journalentries/journalentries.module').then(m => m.JournalentriesModule),\r\n data: {\r\n breadcrumb: 'Journal Entries'\r\n }\r\n },\r\n {\r\n path: 'ledgers',\r\n loadChildren: () => import('../../components/accounts/ledgers/ledgers.module').then(m => m.LedgersModule),\r\n data: {\r\n breadcrumb: 'Ledgers'\r\n }\r\n },\r\n {\r\n path: 'banking',\r\n loadChildren: () => import('../../components/accounts/banking/banking.module').then(m => m.BankingModule),\r\n data: {\r\n breadcrumb: 'Categorize Transactions'\r\n }\r\n },\r\n {\r\n path: 'creditnotes',\r\n loadChildren: () => import('../../components/accounts/creditnotes/creditnotes.module').then(m => m.CreditnotesModule),\r\n data: {\r\n breadcrumb: 'Accounts'\r\n }\r\n },\r\n {\r\n path: 'debitnotes',\r\n loadChildren: () => import('../../components/accounts/debitnotes/debitnotes.module').then(m => m.DebitnotesModule),\r\n data: {\r\n breadcrumb: 'Accounts'\r\n }\r\n },\r\n {\r\n path: 'writeoffs',\r\n loadChildren: () => import('../../components/accounts/writeoffs/writeoffs.module').then(m => m.WriteoffsModule),\r\n data: {\r\n breadcrumb: 'Write Offs'\r\n }\r\n },\r\n {\r\n path: 'testcases',\r\n loadChildren: () => import('../../components/projectmanager/testcases/testcases.module').then(m => m.testcasesModule),\r\n data: {\r\n breadcrumb: 'Testcases'\r\n }\r\n },\r\n {\r\n path: 'unbilledhours',\r\n loadChildren: () => import('../../components/projectmanager/unbilledhours/unbilledhours.module').then(m => m.UnbilledhoursModule),\r\n data: {\r\n breadcrumb: 'Unbilled Hours'\r\n }\r\n },\r\n {\r\n path: 'batchtransactions',\r\n loadChildren: () => import('../../components/accounts/batchtransactions/batchtransactions.module').then(m => m.BatchtransactionsModule),\r\n data: {\r\n breadcrumb: 'Batch Transactions'\r\n }\r\n },\r\n {\r\n path: 'vendorpayments',\r\n loadChildren: () => import('../../components/accounts/vendorpayments/vendorpayments.module').then(m => m.VendorpaymentsModule),\r\n data: {\r\n breadcrumb: 'Supplier Payments'\r\n }\r\n },\r\n {\r\n path: 'paybills',\r\n loadChildren: () => import('../../components/accounts/paybills/paybills.module').then(m => m.PaybillsModule),\r\n data: {\r\n breadcrumb: 'Bill Payments'\r\n }\r\n },\r\n {\r\n path: 'contraentries',\r\n loadChildren: () => import('../../components/accounts/contraentries/contraentries.module').then(m => m.ContraentriesModule),\r\n data: {\r\n breadcrumb: 'Contra Entries'\r\n }\r\n },\r\n {\r\n path: 'reconcile',\r\n loadChildren: () => import('../../components/accounts/reconcile/reconcile.module').then(m => m.ReconcileModule),\r\n data: {\r\n breadcrumb: 'Reconcile'\r\n }\r\n },\r\n {\r\n path: 'weeklytimesheets',\r\n loadChildren: () => import('../../components/servicemanager/weeklytimesheets/weeklytimesheets.module').then(m => m.WeeklytimesheetsModule),\r\n data: {\r\n breadcrumb: 'Service Manager',\r\n }\r\n },\r\n {\r\n path: 'techourdetail',\r\n loadChildren: () => import('../../components/servicemanager/techourdetail/techourdetail.module').then(m => m.TechourdetailModule),\r\n data: {\r\n breadcrumb: 'Service Manager',\r\n }\r\n },\r\n {\r\n path: 'techtimesheet',\r\n loadChildren: () => import('../../components/servicemanager/techtimesheet/techtimesheet.module').then(m => m.TechtimesheetModule),\r\n data: {\r\n breadcrumb: 'Service Manager',\r\n }\r\n },\r\n {\r\n path: 'ticketstatus',\r\n loadChildren: () => import('../../components/servicemanager/ticketstatus/ticketstatus.module').then(m => m.TicketstatusModule),\r\n data: {\r\n breadcrumb: 'Service Manager',\r\n }\r\n },\r\n {\r\n path: 'checklistgroup',\r\n loadChildren: () => import('../../components/servicemanager/checklistgroup/checklistgroup.module').then(m => m.ChecklistgroupModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n }\r\n },\r\n {\r\n path: 'checklists',\r\n loadChildren: () => import('../../components/servicemanager/checklists/checklists.module').then(m => m.ChecklistsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n }\r\n },\r\n {\r\n path: 'noteslist',\r\n loadChildren: () => import('../../components/servicemanager/noteslist/noteslist.module').then(m => m.NoteslistModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n }\r\n },\r\n {\r\n path: 'servicecategories',\r\n loadChildren: () => import('../../components/servicemanager/category/category.module').then(m => m.CategoryModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n }\r\n },\r\n {\r\n path: 'contracttypes',\r\n loadChildren: () => import('../../components/servicemanager/contracttypes/contracttypes.module').then(m => m.ContracttypesModule),\r\n data: {\r\n breadcrumb: 'Contract Types'\r\n }\r\n },\r\n {\r\n path: 'customerdevicelist',\r\n loadChildren: () => import('../../components/servicemanager/customerdevicelist/customerdevicelist.module').then(m => m.CustomerdevicelistModule),\r\n data: {\r\n breadcrumb: 'Customer Device'\r\n }\r\n },\r\n {\r\n path: 'birdseye',\r\n loadChildren: () => import('../../components/servicemanager/birdseye/birdseye.module').then(m => m.BirdseyeModule),\r\n data: {\r\n breadcrumb: 'Birds Eye'\r\n }\r\n },\r\n {\r\n path: 'trackinghistory',\r\n loadChildren: () => import('../../components/locationtracking/trackinghistory/trackinghistory.module').then(m => m.TrackinghistoryModule),\r\n data: {\r\n breadcrumb: 'Tracking History'\r\n }\r\n },\r\n {\r\n path: 'bolsummary',\r\n loadChildren: () => import('../../components/purchase/bolsummary/bolsummary.module').then(m => m.BolsummaryModule),\r\n data: {\r\n breadcrumb: 'BOL Summary'\r\n }\r\n },\r\n {\r\n path: 'traders',\r\n loadChildren: () => import('../../components/purchase/traders/traders.module').then(m => m.TradersModule),\r\n data: {\r\n breadcrumb: 'Exporters/Importers'\r\n }\r\n },\r\n {\r\n path: 'customdeclarations',\r\n loadChildren: () => import('../../components/purchase/customdeclarations/customdeclarations.module').then(m => m.CustomdeclarationsModule),\r\n data: {\r\n breadcrumb: 'Custom Declarations'\r\n }\r\n },\r\n {\r\n path: 'expenses',\r\n loadChildren: () => import('../../components/purchase/expenses/expenses.module').then(m => m.ExpensesModule),\r\n data: {\r\n breadcrumb: 'Expenses'\r\n }\r\n },\r\n {\r\n path: 'expensereq',\r\n loadChildren: () => import('../../components/purchase/expensereq/expensereq.module').then(m => m.ExpensereqModule),\r\n data: {\r\n breadcrumb: 'Expense Requests'\r\n }\r\n },\r\n {\r\n path: 'purchaseinvoices',\r\n loadChildren: () => import('../../components/purchase/purchaseinvoices/purchaseinvoices.module').then(m => m.PurchaseinvoicesModule),\r\n data: {\r\n breadcrumb: 'Purchase Invoices'\r\n }\r\n },\r\n {\r\n path: 'purchaseorder',\r\n loadChildren: () => import('../../components/purchase/purchaseorder/purchaseorder.module').then(m => m.PurchaseorderModule),\r\n data: {\r\n breadcrumb: 'Purchase Order'\r\n }\r\n },\r\n {\r\n path: 'purchaserequests',\r\n loadChildren: () => import('../../components/purchase/purchaserequest/purchaserequest.module').then(m => m.PurchaserequestModule),\r\n data: {\r\n breadcrumb: 'Purchase Request'\r\n }\r\n },\r\n {\r\n path: 'receiveitembybol',\r\n loadChildren: () => import('../../components/purchase/receiveitembybol/receiveitembybol.module').then(m => m.ReceiveitembybolModule),\r\n data: {\r\n breadcrumb: 'Receive BOL Items'\r\n }\r\n },\r\n {\r\n path: 'rfqlist',\r\n loadChildren: () => import('../../components/purchase/rfqlist/rfqlist.module').then(m => m.RfqlistModule),\r\n data: {\r\n breadcrumb: 'Request for Quotes'\r\n }\r\n },\r\n {\r\n path: 'shipto',\r\n loadChildren: () => import('../../components/purchase/shipto/shipto.module').then(m => m.ShiptoModule),\r\n data: {\r\n breadcrumb: 'Shipto'\r\n }\r\n },\r\n {\r\n path: 'expensecategories',\r\n loadChildren: () => import('../../components/purchase/expensecategories/expensecategories.module').then(m => m.ExpenseCategoriesModule),\r\n data: {\r\n breadcrumb: 'Expense Types'\r\n }\r\n },\r\n {\r\n path: 'suppliers',\r\n loadChildren: () => import('../../components/purchase/suppliers/suppliers.module').then(m => m.SuppliersModule),\r\n data: {\r\n breadcrumb: 'Suppliers'\r\n }\r\n }\r\n //Sales pages routes,\r\n ,\r\n\r\n {\r\n path: 'salesscheduler',\r\n loadChildren: () => import('../../components/Sales/scheduler/timeline/timeline.module').then(m => m.SalesTimelineModule),\r\n data: {\r\n breadcrumb: 'Leads'\r\n },\r\n\r\n },\r\n {\r\n path: 'leads',\r\n loadChildren: () => import('../../components/Sales/leads/leads.module').then(m => m.LeadsModule),\r\n data: {\r\n breadcrumb: 'Leads'\r\n },\r\n\r\n },\r\n {\r\n path: 'customers',\r\n loadChildren: () => import('../../components/Sales/customers/customers.module').then(m => m.CustomersModule),\r\n data: {\r\n breadcrumb: 'Customers'\r\n },\r\n\r\n },\r\n {\r\n path: 'invoices',\r\n loadChildren: () => import('../../components/Sales/invoices/invoices.module').then(m => m.InvoicesModule),\r\n data: {\r\n breadcrumb: 'Invoices'\r\n },\r\n\r\n },\r\n {\r\n path: 'estimates',\r\n loadChildren: () => import('../../components/Sales/estimates/estimates.module').then(m => m.EstimatesModule),\r\n data: {\r\n breadcrumb: 'Estimates'\r\n },\r\n },\r\n {\r\n path: 'quotes',\r\n loadChildren: () => import('../../components/Sales/quote/quote.module').then(m => m.QuotesModule),\r\n data: {\r\n breadcrumb: 'Quotes'\r\n },\r\n },\r\n {\r\n path: 'salesorders',\r\n loadChildren: () => import('../../components/Sales/salesorders/salesorders.module').then(m => m.SalesordersModule),\r\n data: {\r\n breadcrumb: 'Salesorders'\r\n },\r\n\r\n },\r\n {\r\n path: 'standingorders',\r\n loadChildren: () => import('../../components/Sales/standingorders/standingorders.module').then(m => m.StandingordersModule),\r\n data: {\r\n breadcrumb: 'Standing Order'\r\n },\r\n },\r\n {\r\n path: 'salesreq',\r\n loadChildren: () => import('../../components/Sales/salesreq/salesreq.module').then(m => m.SalesreqModule),\r\n data: {\r\n breadcrumb: 'Sales Requests'\r\n },\r\n },\r\n {\r\n path: 'receivepayments',\r\n loadChildren: () => import('../../components/Sales/receivepay/receivepay.module').then(m => m.ReceivepayModule),\r\n data: {\r\n breadcrumb: 'Receive Payments'\r\n },\r\n },\r\n {\r\n path: 'feedbacks',\r\n loadChildren: () => import('../../components/Sales/feedback/feedback.module').then(m => m.FeedbackModule),\r\n data: {\r\n breadcrumb: 'User Feedback'\r\n },\r\n },\r\n {\r\n path: 'deliveryroutes',\r\n loadChildren: () => import('../../components/Sales/deliveryroutes/deliveryroutes.module').then(m => m.DeliveryroutesModule),\r\n data: {\r\n breadcrumb: 'Delivery Routes'\r\n },\r\n },\r\n //specmap links\r\n {\r\n path: 'mapview',\r\n loadChildren: () => import('../../components/specmap/mapview/mapview.module').then(m => m.MapviewModule),\r\n data: {\r\n breadcrumb: 'Specmap'\r\n }\r\n },\r\n {\r\n path: 'markers',\r\n loadChildren: () => import('../../components/specmap/markers/markers.module').then(m => m.MarkersModule),\r\n data: {\r\n breadcrumb: 'Markers'\r\n }\r\n },\r\n {\r\n path: 'markertypes',\r\n loadChildren: () => import('../../components/specmap/markertypes/markertypes.module').then(m => m.MarkertypesModule),\r\n data: {\r\n breadcrumb: 'Marker Types'\r\n }\r\n },\r\n\r\n //purchase links\r\n {\r\n path: 'purchaserequest',\r\n loadChildren: () => import('../../components/purchase/purchaserequest/purchaserequest.module').then(m => m.PurchaserequestModule),\r\n data: {\r\n breadcrumb: 'Purchase Requests'\r\n },\r\n },\r\n {\r\n path: 'assessmentparticulars',\r\n loadChildren: () => import('../../components/hr/assessmentparticulars/assessmentparticulars.module').then(m => m.AssessmentparticularsModule),\r\n data: {\r\n breadcrumb: 'Assessment Particulars'\r\n },\r\n },\r\n {\r\n path: 'siteclockinout',\r\n loadChildren: () => import('../../components/hr/clockings/clockings.module').then(m => m.ClockingsModule),\r\n data: {\r\n breadcrumb: 'Job Site Clock-In/Out'\r\n },\r\n },\r\n {\r\n path: 'employees',\r\n loadChildren: () => import('../../components/hr/employees/employees.module').then(m => m.EmployeesModule),\r\n data: {\r\n breadcrumb: 'Employees'\r\n },\r\n },\r\n {\r\n path: 'awardtypes',\r\n loadChildren: () => import('../../components/hr/awardtypes/awardtypes.module').then(m => m.AwardtypesModule),\r\n data: {\r\n breadcrumb: 'Award Types'\r\n }\r\n },\r\n {\r\n path: 'leavecategories',\r\n loadChildren: () => import('../../components/hr/leavecategories/leavecategories.module').then(m => m.LeavecategoriesModule),\r\n data: {\r\n breadcrumb: 'Leave Type'\r\n }\r\n },\r\n {\r\n path: 'shiftbreakreasons',\r\n loadChildren: () => import('../../components/hr/shiftbreakreasons/shiftbreakreasons.module').then(m => m.ShiftbreakreasonsModule),\r\n data: {\r\n breadcrumb: 'Clocking Reasons'\r\n }\r\n },\r\n {\r\n path: 'leavesconfigurations',\r\n loadChildren: () => import('../../components/hr/leavesconfigurations/leavesconfigurations.module').then(m => m.LeavesconfigurationsModule),\r\n data: {\r\n breadcrumb: 'Leaves Configurations'\r\n },\r\n },\r\n {\r\n path: 'leavesvacations',\r\n loadChildren: () => import('../../components/hr/leavesvacations/leavesvacations.module').then(m => m.LeavesvacationsModule),\r\n data: {\r\n breadcrumb: 'Leaves/Vacations'\r\n },\r\n },\r\n {\r\n path: 'publicholidays',\r\n loadChildren: () => import('../../components/hr/publicholidays/publicholidays.module').then(m => m.PublicholidaysModule),\r\n data: {\r\n breadcrumb: 'Public Holidays'\r\n },\r\n },\r\n {\r\n path: 'salaryincreasestructure',\r\n loadChildren: () => import('../../components/hr/salaryincreasestructure/salaryincreasestructure.module').then(m => m.SalaryIncreaseStructureModule),\r\n data: {\r\n breadcrumb: 'Salary Increase Structure'\r\n },\r\n },\r\n {\r\n path: 'clockinout',\r\n loadChildren: () => import('../../components/hr/officeclockings/officeclockings.module').then(m => m.OfficeclockingsModule),\r\n data: {\r\n breadcrumb: 'Clock-In/Out'\r\n },\r\n },\r\n {\r\n path: 'sitelogs',\r\n loadChildren: () => import('../../components/hr/sitelogs/sitelogs.module').then(m => m.SitelogsModule),\r\n data: {\r\n breadcrumb: 'Site Logs'\r\n },\r\n },\r\n {\r\n path: 'designations',\r\n loadChildren: () => import('../../components/hr/designations/designations.module').then(m => m.DesignationsModule),\r\n data: {\r\n breadcrumb: 'Designations'\r\n },\r\n },\r\n {\r\n path: 'shift',\r\n loadChildren: () => import('../../components/hr/shift/shift.module').then(m => m.ShiftModule),\r\n data: {\r\n breadcrumb: 'Shift'\r\n },\r\n },\r\n {\r\n path: 'payroll',\r\n loadChildren: () => import('../../components/payroll/payroll/payroll.module').then(m => m.PayrollModule),\r\n data: {\r\n breadcrumb: 'Payroll'\r\n },\r\n },\r\n {\r\n path: 'adhocpayments',\r\n loadChildren: () => import('../../components/payroll/adhocpayments/adhocpayments.module').then(m => m.AdhocPaymentsModule),\r\n data: {\r\n breadcrumb: 'Adhoc Payments'\r\n },\r\n },\r\n {\r\n path: 'payrollpayments',\r\n loadChildren: () => import('../../components/payroll/payments/payments.module').then(m => m.PaymentsModule),\r\n data: {\r\n breadcrumb: 'Payroll Payments'\r\n },\r\n },\r\n {\r\n path: 'timeline',\r\n loadChildren: () => import('../../components/scheduler/timeline/timeline.module').then(m => m.TimelineModule),\r\n data: {\r\n breadcrumb: 'Scheduler'\r\n },\r\n },\r\n {\r\n path: 'servicecontracts',\r\n loadChildren: () => import('../../components/servicemanager/servicecontracts/servicecontracts.module').then(m => m.ServicecontractsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'servicetickets',\r\n loadChildren: () => import('../../components/servicemanager/servicetickets/servicetickets.module').then(m => m.ServiceticketsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'servicelineitems',\r\n loadChildren: () => import('../../components/servicemanager/servicelineitems/servicelineitems.module').then(m => m.ServicelineitemsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'checklistgroup',\r\n loadChildren: () => import('../../components/servicemanager/checklistgroup/checklistgroup.module').then(m => m.ChecklistgroupModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'checklists',\r\n loadChildren: () => import('../../components/servicemanager/checklists/checklists.module').then(m => m.ChecklistsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'noteslist',\r\n loadChildren: () => import('../../components/servicemanager/noteslist/noteslist.module').then(m => m.NoteslistModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'techrecommendations',\r\n loadChildren: () => import('../../components/servicemanager/techrecommendations/techrecommendations.module').then(m => m.TechrecommendationsModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'customerlist',\r\n loadChildren: () => import('../../components/loyalityprogram/customerlist/customerlist.module').then(m => m.CustomerlistModule),\r\n data: {\r\n breadcrumb: 'Customer List'\r\n },\r\n },\r\n {\r\n path: 'productslist',\r\n loadChildren: () => import('../../components/loyalityprogram/productslist/productslist.module').then(m => m.ProductslistModule),\r\n data: {\r\n breadcrumb: 'Products'\r\n },\r\n },\r\n {\r\n path: 'programslist',\r\n loadChildren: () => import('../../components/loyalityprogram/programslist/programslist.module').then(m => m.ProgramslistModule),\r\n data: {\r\n breadcrumb: 'Programs List'\r\n },\r\n },\r\n {\r\n path: 'transactions',\r\n loadChildren: () => import('../../components/loyalityprogram/transactions/transactions.module').then(m => m.TransactionsModule),\r\n data: {\r\n breadcrumb: 'Transactions'\r\n },\r\n },\r\n // documents\r\n {\r\n path: 'documentlist',\r\n loadChildren: () => import('../../components/documents/documentlist/documentlist.module').then(m => m.DocumentlistModule),\r\n data: {\r\n breadcrumb: 'Document List'\r\n },\r\n },\r\n {\r\n path: 'documenttypes',\r\n loadChildren: () => import('../../components/documents/documenttypes/documenttypes.module').then(m => m.DocumenttypesModule),\r\n data: {\r\n breadcrumb: 'Document Types'\r\n },\r\n },\r\n {\r\n path: 'dragdropfiles',\r\n loadChildren: () => import('../../components/documents/dragdropfiles/dragdropfiles.module').then(m => m.DragdropfilesModule),\r\n data: {\r\n breadcrumb: 'Drap Drop Files'\r\n },\r\n },\r\n {\r\n path: 'emailers',\r\n loadChildren: () => import('../../components/tools/emailers/emailers.module').then(m => m.EmailersModule),\r\n data: {\r\n breadcrumb: 'Emailers'\r\n },\r\n },\r\n {\r\n path: 'manualjobs',\r\n loadChildren: () => import('../../components/tools/manualjobs/manualjobs.module').then(m => m.ManualjobsModule),\r\n data: {\r\n breadcrumb: 'Manual Jobs'\r\n },\r\n },\r\n {\r\n path: 'printsequence',\r\n loadChildren: () => import('../../components/tools/printsequence/printsequence.module').then(m => m.PrintsequenceModule),\r\n data: {\r\n breadcrumb: 'Print Sequence'\r\n },\r\n },\r\n {\r\n path: 'empearlygoinglatecoming',\r\n loadChildren: () => import('../../components/reports/hrpayroll/empearlygoinglatecoming/empearlygoinglatecoming.module').then(m => m.EmpearlygoinglatecomingModule),\r\n data: {\r\n breadcrumb: 'Employee Late Coming Early Going'\r\n },\r\n },\r\n {\r\n path: 'empshiftlog',\r\n loadChildren: () => import('../../components/reports/hrpayroll/empshiftlog/empshiftlog.module').then(m => m.EmpshiftlogModule),\r\n data: {\r\n breadcrumb: 'Emp Shift Log'\r\n },\r\n },\r\n {\r\n path: 'fsnanalysis',\r\n loadChildren: () => import('../../components/reports/inventory/fsnanalysis/fsnanalysis.module').then(m => m.FsnanalysisModule),\r\n data: {\r\n breadcrumb: 'fsnanalysis'\r\n },\r\n },\r\n {\r\n path: 'productuommapping',\r\n loadChildren: () => import('../../components/reports/inventory/productuommapping/productuommapping.module').then(m => m.ProductuommappingModule),\r\n data: {\r\n breadcrumb: 'Product UOM Mapping'\r\n },\r\n },\r\n {\r\n path: 'banktransactions',\r\n loadChildren: () => import('../../components/reports/companyfinancials/banktransactions/banktransactions.module').then(m => m.BanktransactionsModule),\r\n data: {\r\n breadcrumb: 'Bank Transactions'\r\n },\r\n },\r\n {\r\n path: 'balancesheet',\r\n loadChildren: () => import('../../components/reports/companyfinancials/balancesheet/balancesheet.module').then(m => m.BalancesheetModule),\r\n data: {\r\n breadcrumb: 'Balance Sheet'\r\n },\r\n },\r\n {\r\n path: 'balancesheetlikecomparison',\r\n loadChildren: () => import('../../components/reports/companyfinancials/balancesheetlikecomparison/balancesheetlikecomparison.module').then(m => m.BalancesheetlikecomparisonModule),\r\n data: {\r\n breadcrumb: 'Balance Sheet Like COmparison'\r\n },\r\n },\r\n {\r\n path: 'balancesheetyearlycomparison',\r\n loadChildren: () => import('../../components/reports/companyfinancials/balancesheetyearlycomparison/balancesheetyearlycomparison.module').then(m => m.BalancesheetyearlycomparisonModule),\r\n data: {\r\n breadcrumb: 'Balance Sheet Yearly Comparison'\r\n },\r\n },\r\n {\r\n path: 'profitloss',\r\n loadChildren: () => import('../../components/reports/companyfinancials/profitloss/profitloss.module').then(m => m.ProfitlossModule),\r\n data: {\r\n breadcrumb: 'Profit Loss'\r\n },\r\n },\r\n {\r\n path: 'trailbalance',\r\n loadChildren: () => import('../../components/reports/companyfinancials/trailbalance/trailbalance.module').then(m => m.TrailbalanceModule),\r\n data: {\r\n breadcrumb: 'Trial Balance'\r\n },\r\n },\r\n {\r\n path: 'proformabalancesheet',\r\n loadChildren: () => import('../../components/reports/companyfinancials/proformabalancesheet/proformabalancesheet.module').then(m => m.ProformabalancesheetModule),\r\n data: {\r\n breadcrumb: 'Pro Forma Balancesheet'\r\n },\r\n },\r\n {\r\n path: 'acc-ledgers',\r\n loadChildren: () => import('../../components/reports/accounts/ledgers/ledgers.module').then(m => m.LedgersModule),\r\n data: {\r\n breadcrumb: 'Ledgers'\r\n },\r\n },\r\n {\r\n path: 'coamappingmissed',\r\n loadChildren: () => import('../../components/reports/accounts/coamappingmissed/coamappingmissed.module').then(m => m.CoamappingmissedModule),\r\n data: {\r\n breadcrumb: 'COA Mapping Missed'\r\n },\r\n },\r\n {\r\n path: 'acc-audittrail',\r\n loadChildren: () => import('../../components/reports/accounts/audit-trail/audit-trail.module').then(m => m.AuditTrailModule),\r\n data: {\r\n breadcrumb: 'Audit Trails'\r\n },\r\n },\r\n {\r\n path: 'glmapping',\r\n loadChildren: () => import('../../components/reports/accounts/glmapping/glmapping.module').then(m => m.GLMappingModule),\r\n data: {\r\n breadcrumb: 'GL Mapping'\r\n },\r\n },\r\n {\r\n path: 'acc-journalentries',\r\n loadChildren: () => import('../../components/reports/accounts/journal-entries/journal-entries.module').then(m => m.JournalEntriesModule),\r\n data: {\r\n breadcrumb: 'Journal Entries'\r\n },\r\n },\r\n {\r\n path: 'acc-deletedtransactions',\r\n loadChildren: () => import('../../components/reports/accounts/deleted-transactions/deleted-transactions.module').then(m => m.DeletedTransactionsModule),\r\n data: {\r\n breadcrumb: 'Deleted Transactions'\r\n },\r\n },\r\n {\r\n path: 'chequeissued',\r\n loadChildren: () => import('../../components/reports/accounts/chequeissued/chequeissued.module').then(m => m.ChequeissuedModule),\r\n data: {\r\n breadcrumb: 'Cheque Issued'\r\n },\r\n },\r\n {\r\n path: 'chequereceived',\r\n loadChildren: () => import('../../components/reports/accounts/chequereceived/chequereceived.module').then(m => m.ChequereceivedModule),\r\n data: {\r\n breadcrumb: 'Cheque Received'\r\n },\r\n },\r\n // assets\r\n {\r\n path: 'assets',\r\n loadChildren: () => import('../../components/assets/assets/assets.module').then(m => m.AssetsModule),\r\n data: {\r\n breadcrumb: 'Assets'\r\n },\r\n },\r\n {\r\n path: 'assetrequests',\r\n loadChildren: () => import('../../components/assets/assetsrequest/assetsrequest.module').then(m => m.AssetsrequestModule),\r\n data: {\r\n breadcrumb: 'New Asset Requests'\r\n },\r\n },\r\n {\r\n path: 'assetcategories',\r\n loadChildren: () => import('../../components/assets/assetscategories/assetscategories.module').then(m => m.AssetscategoriesModule),\r\n data: {\r\n breadcrumb: 'Asset Categories'\r\n },\r\n },\r\n {\r\n path: 'assetusers',\r\n loadChildren: () => import('../../components/assets/assetusers/assetusers.module').then(m => m.AssetusersModule),\r\n data: {\r\n breadcrumb: 'Asset Users'\r\n },\r\n },\r\n\r\n {\r\n path: 'assetconditions',\r\n loadChildren: () => import('../../components/assets/assetconditions/assetconditions.module').then(m => m.AssetconditionsModule),\r\n data: {\r\n breadcrumb: 'Asset Conditions'\r\n },\r\n },\r\n {\r\n path: 'assetlocations',\r\n loadChildren: () => import('../../components/assets/assetlocations/assetlocations.module').then(m => m.AssetlocationsModule),\r\n data: {\r\n breadcrumb: 'Asset Locations'\r\n },\r\n },\r\n {\r\n path: 'assetactions',\r\n loadChildren: () => import('../../components/assets/assetactions/assetactions.module').then(m => m.AssetactionsModule),\r\n data: {\r\n breadcrumb: 'Asset Action'\r\n },\r\n }\r\n\r\n // Reports Customer Receivable\r\n ,\r\n {\r\n path: 'customeragingsummary',\r\n loadChildren: () => import('../../components/reports/customerreceivables/customeragingsummary/customeragingsummary.module').then(m => m.CustomeragingsummaryModule),\r\n data: {\r\n breadcrumb: 'Invoice Aging Summary'\r\n },\r\n },\r\n {\r\n path: 'aragingsummary',\r\n loadChildren: () => import('../../components/reports/customerreceivables/aragingsummary/aragingsummary.module').then(m => m.ArsummaryModule),\r\n data: {\r\n breadcrumb: 'A/R Aging Summary'\r\n },\r\n },\r\n {\r\n path: 'creditusesummary',\r\n loadChildren: () => import('../../components/reports/customerreceivables/creditusesummary/creditusesummary.module').then(m => m.CreditusesummaryModule),\r\n data: {\r\n breadcrumb: 'Credit Use Summary'\r\n },\r\n },\r\n {\r\n path: 'invoiceshistory',\r\n loadChildren: () => import('../../components/reports/customerreceivables/invoices/invoices.module').then(m => m.InvoicesModule),\r\n data: {\r\n breadcrumb: 'Invoices'\r\n },\r\n },\r\n {\r\n path: 'quotesestimates',\r\n loadChildren: () => import('../../components/reports/customerreceivables/quotesestimates/quotesestimates.module').then(m => m.QuotesestimatesModule),\r\n data: {\r\n breadcrumb: 'Quotes/Estimates'\r\n },\r\n },\r\n {\r\n path: 'salesbycategory',\r\n loadChildren: () => import('../../components/reports/customerreceivables/salesbycategory/salesbycategory.module').then(m => m.SalesbycategoryModule),\r\n data: {\r\n breadcrumb: 'Sales By Category'\r\n },\r\n },\r\n {\r\n path: 'customerpayments',\r\n loadChildren: () => import('../../components/reports/customerreceivables/customerpayments/customerpayments.module').then(m => m.CustomerpaymentsModule),\r\n data: {\r\n breadcrumb: 'Payments Received'\r\n },\r\n },\r\n\r\n // Reports Vendors payable\r\n {\r\n path: 'apagingsummary',\r\n loadChildren: () => import('../../components/reports/vendorspayables/apagingsummary/apagingsummary.module').then(m => m.ApagingsummaryModule),\r\n data: {\r\n breadcrumb: 'A/P Aging Summary'\r\n },\r\n },\r\n {\r\n path: 'billsagingsummary',\r\n loadChildren: () => import('../../components/reports/vendorspayables/billsagingsummary/billsagingsummary.module').then(m => m.BillsagingsummaryModule),\r\n data: {\r\n breadcrumb: 'Bills Aging Summary'\r\n },\r\n },\r\n {\r\n path: 'expenseshistory',\r\n loadChildren: () => import('../../components/reports/vendorspayables/expenseshistory/expenseshistory.module').then(m => m.ExpenseshistoryModule),\r\n data: {\r\n breadcrumb: 'Expenses History'\r\n },\r\n },\r\n {\r\n path: 'expensessummary',\r\n loadChildren: () => import('../../components/reports/vendorspayables/expensessummary/expensessummary.module').then(m => m.ExpensessummaryModule),\r\n data: {\r\n breadcrumb: 'Expenses Summary'\r\n },\r\n },\r\n {\r\n path: 'purchaseorders',\r\n loadChildren: () => import('../../components/reports/vendorspayables/purchaseorders/purchaseorders.module').then(m => m.PurchaseordersModule),\r\n data: {\r\n breadcrumb: 'Purchase Orders Summary'\r\n },\r\n },\r\n {\r\n path: 'purchaseinvoicesummary',\r\n loadChildren: () => import('../../components/reports/vendorspayables/purchaseinvoicesummary/purchaseinvoicesummary.module').then(m => m.PurchaseInvoiceSummaryModule),\r\n data: {\r\n breadcrumb: 'Purchase Invoice Summary'\r\n },\r\n },\r\n {\r\n path: 'paymentspaid',\r\n loadChildren: () => import('../../components/reports/vendorspayables/paymentspaid/paymentspaid.module').then(m => m.PaymentspaidModule),\r\n data: {\r\n breadcrumb: 'Payments Paid'\r\n },\r\n },\r\n\r\n\r\n // Reports transactions\r\n\r\n {\r\n path: 'dailytransactions',\r\n loadChildren: () => import('../../components/reports/transactions/dailytransactions/dailytransactions.module').then(m => m.DailytransactionsModule),\r\n data: {\r\n breadcrumb: 'Daily Transactions'\r\n },\r\n },\r\n {\r\n path: 'postransactions',\r\n loadChildren: () => import('../../components/reports/transactions/postransactions/postransactions.module').then(m => m.PostransactionsModule),\r\n data: {\r\n breadcrumb: 'POS Transactions'\r\n },\r\n },\r\n {\r\n path: 'transactionssyncreport',\r\n loadChildren: () => import('../../components/reports/transactions/transactionssyncreport/transactionssyncreport.module').then(m => m.TransactionssyncreportModule),\r\n data: {\r\n breadcrumb: 'Transactions Sync Report'\r\n },\r\n },\r\n {\r\n path: 'recenttransactions',\r\n loadChildren: () => import('../../components/reports/transactions/recenttransactions/recenttransactions.module').then(m => m.RecenttransactionsModule),\r\n data: {\r\n breadcrumb: 'Recent Transactions'\r\n },\r\n },\r\n {\r\n path: 'onlinepayments',\r\n loadChildren: () => import('../../components/reports/transactions/plugnpay/plugnpay.module').then(m => m.PlugnpayModule),\r\n data: {\r\n breadcrumb: 'Online Payments'\r\n },\r\n },\r\n\r\n // Reports Tasks Tickets\r\n\r\n {\r\n path: 'reportinvoices',\r\n loadChildren: () => import('../../components/reports/taskstickets/invoices/invoices.module').then(m => m.InvoicesModule),\r\n data: {\r\n breadcrumb: 'Invoices'\r\n },\r\n },\r\n {\r\n path: 'orders',\r\n loadChildren: () => import('../../components/reports/taskstickets/orders/orders.module').then(m => m.OrdersModule),\r\n data: {\r\n breadcrumb: 'Orders'\r\n },\r\n },\r\n {\r\n path: 'servicecontractticketsummary',\r\n loadChildren: () => import('../../components/reports/taskstickets/servicecontractticketsummary/servicecontractticketsummary.module').then(m => m.ServiceContractTicketsummaryComponentModule),\r\n data: {\r\n breadcrumb: 'Service Contract Ticket Summary'\r\n },\r\n },\r\n {\r\n path: 'taskstimelogs',\r\n loadChildren: () => import('../../components/reports/taskstickets/taskstimelogs/taskstimelogs.module').then(m => m.TaskstimelogsModule),\r\n data: {\r\n breadcrumb: 'Task Time Logs'\r\n },\r\n },\r\n {\r\n path: 'reportofficeclockings',\r\n loadChildren: () => import('../../components/reports/taskstickets/officeclockings/officeclockings.module').then(m => m.OfficeclockingsModule),\r\n data: {\r\n breadcrumb: 'Office Clockings'\r\n },\r\n },\r\n {\r\n path: 'techhours',\r\n loadChildren: () => import('../../components/reports/taskstickets/techhours/techhours.module').then(m => m.TechhoursModule),\r\n data: {\r\n breadcrumb: 'Tech Hours'\r\n },\r\n },\r\n {\r\n path: 'ticketsinventorycostexport',\r\n loadChildren: () => import('../../components/reports/taskstickets/ticketsinventorycostexport/ticketsinventorycostexport.module').then(m => m.TicketsinventorycostexportModule),\r\n data: {\r\n breadcrumb: 'Tickets Inventory Cost Export'\r\n },\r\n },\r\n {\r\n path: 'ticketstimelogs',\r\n loadChildren: () => import('../../components/reports/taskstickets/ticketstimelogs/ticketstimelogs.module').then(m => m.TicketstimelogsModule),\r\n data: {\r\n breadcrumb: 'Tickets Time Logs'\r\n },\r\n },\r\n {\r\n path: 'ticketsummary',\r\n loadChildren: () => import('../../components/reports/taskstickets/ticketsummary/ticketsummary.module').then(m => m.TicketsummaryModule),\r\n data: {\r\n breadcrumb: 'Ticket Summary'\r\n },\r\n },\r\n {\r\n path: 'unbilledtimelogs',\r\n loadChildren: () => import('../../components/reports/taskstickets/unbilledtimelogs/unbilledtimelogs.module').then(m => m.UnbilledtimelogsModule),\r\n data: {\r\n breadcrumb: 'Unbilled Time Logs'\r\n },\r\n },\r\n {\r\n path: 'employeereminders',\r\n loadChildren: () => import('../../components/reports/taskstickets/employeereminders/employeereminders.module').then(m => m.EmployeeremindersModule),\r\n data: {\r\n breadcrumb: 'Employee Reminders'\r\n },\r\n },\r\n {\r\n path: 'dailyworklog',\r\n loadChildren: () => import('../../components/reports/taskstickets/dailyworklog/dailyworklog.module').then(m => m.DailyworklogModule),\r\n data: {\r\n breadcrumb: 'Daily Work Logs'\r\n },\r\n },\r\n {\r\n path: 'employeewisereport',\r\n loadChildren: () => import('../../components/reports/taskstickets/employeewisereport/employeewisereport.module').then(m => m.EmployeewisereportModule),\r\n data: {\r\n breadcrumb: 'Employee Wise Reports'\r\n },\r\n },\r\n\r\n // Reports Inventory\r\n {\r\n path: 'customerdevices',\r\n loadChildren: () => import('../../components/reports/inventory/customerdevices/customerdevices.module').then(m => m.CustomerdevicesModule),\r\n data: {\r\n breadcrumb: 'Service Manager'\r\n },\r\n },\r\n {\r\n path: 'inventorymovementhistory',\r\n loadChildren: () => import('../../components/reports/inventory/inventorymovementhistory/inventorymovementhistory.module').then(m => m.InventorymovementhistoryModule),\r\n data: {\r\n breadcrumb: 'Inventory Mpvement History'\r\n },\r\n },\r\n {\r\n path: 'orderhistorybyproduct',\r\n loadChildren: () => import('../../components/reports/inventory/orderhistorybyproduct/orderhistorybyproduct.module').then(m => m.OrderhistorybyproductModule),\r\n data: {\r\n breadcrumb: 'Order History By Product'\r\n },\r\n },\r\n {\r\n path: 'replenishment',\r\n loadChildren: () => import('../../components/reports/inventory/replenishment/replenishment.module').then(m => m.ReplenishmentModule),\r\n data: {\r\n breadcrumb: 'Replenishment'\r\n },\r\n },\r\n {\r\n path: 'revenuebyproduct',\r\n loadChildren: () => import('../../components/reports/inventory/revenuebyproduct/revenuebyproduct.module').then(m => m.RevenuebyproductModule),\r\n data: {\r\n breadcrumb: 'Revenue by Product'\r\n },\r\n },\r\n {\r\n path: 'landedcostaudit',\r\n loadChildren: () => import('../../components/reports/inventory/landedcostaudit/landedcostaudit.module').then(m => m.LandedcostauditModule),\r\n data: {\r\n breadcrumb: 'Landed Cost Audit'\r\n },\r\n },\r\n {\r\n path: 'salesvslandedcostsummary',\r\n loadChildren: () => import('../../components/reports/inventory/salesvslandedcostsummary/salesvslandedcostsummary.module').then(m => m.SalesvslandedcostsummaryModule),\r\n data: {\r\n breadcrumb: 'Sales vs Landed Cost Summary'\r\n },\r\n },\r\n {\r\n path: 'stockcostsummary',\r\n loadChildren: () => import('../../components/reports/inventory/stockcostsummary/stockcostsummary.module').then(m => m.StockcostsummaryModule),\r\n data: {\r\n breadcrumb: 'Stock Cost Summary'\r\n },\r\n },\r\n {\r\n path: 'stocksummary',\r\n loadChildren: () => import('../../components/reports/inventory/stocksummary/stocksummary.module').then(m => m.StocksummaryModule),\r\n data: {\r\n breadcrumb: 'Stock Summary'\r\n },\r\n },\r\n {\r\n path: 'manualstockaudit',\r\n loadChildren: () => import('../../components/reports/inventory/manualstockaudit/manualstockaudit.module').then(m => m.ManualstockauditModule),\r\n data: {\r\n breadcrumb: 'Manual Stock Audit'\r\n },\r\n },\r\n {\r\n path: 'priceauditing',\r\n loadChildren: () => import('../../components/reports/inventory/priceauditing/priceauditing.module').then(m => m.PriceauditingModule),\r\n data: {\r\n breadcrumb: 'Price Auditing'\r\n },\r\n },\r\n {\r\n path: 'bolsummaryreport',\r\n loadChildren: () => import('../../components/reports/inventory/bolsummaryreport/bolsummaryreport.module').then(m => m.BolsummaryreportModule),\r\n data: {\r\n breadcrumb: 'BOL Summary'\r\n },\r\n },\r\n {\r\n path: 'productsserialsummary',\r\n loadChildren: () => import('../../components/reports/inventory/productserialsummary/productserialsummary.module').then(m => m.ProductserialsummaryModule),\r\n data: {\r\n breadcrumb: 'Products Serial Summary'\r\n },\r\n },\r\n {\r\n path: 'catalogsummary',\r\n loadChildren: () => import('../../components/reports/inventory/catalogsummary/catalogsummary.module').then(m => m.CatalogsummaryModule),\r\n data: {\r\n breadcrumb: 'Catalog Summary'\r\n },\r\n },\r\n {\r\n path: 'inventoryvaluebyinvoices',\r\n loadChildren: () => import('../../components/reports/inventory/inventoryvaluebyinvoices/inventoryvaluebyinvoices.module').then(m => m.InventoryvaluebyinvoicesModule),\r\n data: {\r\n breadcrumb: 'Inventory Value by Invoices'\r\n },\r\n },\r\n {\r\n path: 'inventoryadjustment',\r\n loadChildren: () => import('../../components/reports/inventory/inventoryadjustment/inventoryadjustment.module').then(m => m.InventoryadjustmentModule),\r\n data: {\r\n breadcrumb: 'Inventory Adjustment'\r\n },\r\n },\r\n {\r\n path: 'inventorysalescountbymonth',\r\n loadChildren: () => import('../../components/reports/inventory/inventorysalescountbymonth/inventorysalescountbymonth.module').then(m => m.InventorysalescountbymonthModule),\r\n data: {\r\n breadcrumb: 'Inventory Sales Count by Month'\r\n },\r\n },\r\n {\r\n path: 'inventorybybinlocations',\r\n loadChildren: () => import('../../components/reports/inventory/inventorybybinlocations/inventorybybinlocations.module').then(m => m.InventorybybinlocationsModule),\r\n data: {\r\n breadcrumb: 'Inventory by Bin Locations'\r\n },\r\n },\r\n {\r\n path: 'inventorysalescountbyyear',\r\n loadChildren: () => import('../../components/reports/inventory/inventorysalescountbyyear/inventorysalescountbyyear.module').then(m => m.InventorysalescountbyyearModule),\r\n data: {\r\n breadcrumb: 'Inventory Sales Count by Year'\r\n },\r\n },\r\n {\r\n path: 'pickuphistory',\r\n loadChildren: () => import('../../components/reports/inventory/pickuphistory/pickuphistory.module').then(m => m.PickuphistoryModule),\r\n data: {\r\n breadcrumb: 'Pickup history'\r\n },\r\n },\r\n {\r\n path: 'armaterialcostsummary',\r\n loadChildren: () => import('../../components/reports/inventory/armaterialcostsummary/armaterialcostsummary.module').then(m => m.ArmaterialcostsummaryModule),\r\n data: {\r\n breadcrumb: 'Inventory Sales Summary'\r\n },\r\n },\r\n {\r\n path: 'womaterials',\r\n loadChildren: () => import('../../components/reports/inventory/womaterials/womaterials.module').then(m => m.WomaterialsModule),\r\n data: {\r\n breadcrumb: 'WO Material'\r\n },\r\n },\r\n {\r\n path: 'inventorybalancereport',\r\n loadChildren: () => import('../../components/reports/inventory/inventorybalancereport/inventorybalancereport.module').then(m => m.InventorybalancereportModule),\r\n data: {\r\n breadcrumb: 'Inventory Balance Report'\r\n },\r\n },\r\n {\r\n path: 'bolcostingexport',\r\n loadChildren: () => import('../../components/reports/inventory/bolcostingexport/bolcostingexport.module').then(m => m.BolcostingexportModule),\r\n data: {\r\n breadcrumb: 'BOL Costing Export'\r\n },\r\n },\r\n {\r\n path: 'assemblysalesbymonth',\r\n loadChildren: () => import('../../components/reports/inventory/assemblysalesbymonth/assemblysalesbymonth.module').then(m => m.AssemblysalesbymonthModule),\r\n data: {\r\n breadcrumb: 'Assembly Sales by Month'\r\n },\r\n },\r\n {\r\n path: 'inventorycostcomparision',\r\n loadChildren: () => import('../../components/reports/inventory/inventorycostcomparison/inventorycostcomparison.module').then(m => m.InventorycostcomparisonModule),\r\n data: {\r\n breadcrumb: 'Assembly Sales by Month'\r\n },\r\n },\r\n {\r\n path: 'lotexpiry',\r\n loadChildren: () => import('../../components/reports/inventory/lotexpiry/lotexpiry.module').then(m => m.LotexpiryModule),\r\n data: {\r\n breadcrumb: 'Lot Expiry'\r\n },\r\n },\r\n {\r\n path: 'inventorycountdiscrepancy',\r\n loadChildren: () => import('../../components/reports/inventory/inventorycountdiscrepancy/inventorycountdiscrepancy.module').then(m => m.InventorycountdiscrepancyModule),\r\n data: {\r\n breadcrumb: ' Inventory Count Discrepancy'\r\n },\r\n },\r\n {\r\n path: 'internaltransfer',\r\n loadChildren: () => import('../../components/reports/inventory/internaltransfer/internaltransfer.module').then(m => m.InternaltransferModule),\r\n data: {\r\n breadcrumb: 'Internal Trasfer'\r\n },\r\n },\r\n {\r\n path: 'notcounteditems',\r\n loadChildren: () => import('../../components/reports/inventory/notcounteditems/notcounteditems.module').then(m => m.NotcounteditemsModule),\r\n data: {\r\n breadcrumb: 'Not Counted Items'\r\n },\r\n },\r\n\r\n // Reports HRPayroll\r\n {\r\n path: 'employeeleavebalance',\r\n loadChildren: () => import('../../components/reports/hrpayroll/leavesbalance/leavesbalance.module').then(m => m.LeavesbalanceModule),\r\n data: {\r\n breadcrumb: 'Leaves Balance'\r\n },\r\n },\r\n {\r\n path: 'listofemployees',\r\n loadChildren: () => import('../../components/reports/hrpayroll/listofemployees/listofemployees.module').then(m => m.ListofemployeesModule),\r\n data: {\r\n breadcrumb: 'List of Employees'\r\n },\r\n },\r\n {\r\n path: 'accesscards',\r\n loadChildren: () => import('../../components/reports/hrpayroll/accesscards/accesscards.module').then(m => m.AccesscardsModule),\r\n data: {\r\n breadcrumb: 'Access Cards'\r\n },\r\n },\r\n {\r\n path: 'appraisals',\r\n loadChildren: () => import('../../components/reports/hrpayroll/appraisals/appraisals.module').then(m => m.AppraisalsModule),\r\n data: {\r\n breadcrumb: 'Appraisals'\r\n },\r\n },\r\n {\r\n path: 'concessionpasses',\r\n loadChildren: () => import('../../components/reports/hrpayroll/concessionpasses/concessionpasses.module').then(m => m.ConcessionpassesModule),\r\n data: {\r\n breadcrumb: 'Conscession Passes'\r\n },\r\n },\r\n {\r\n path: 'disciplinarylogs',\r\n loadChildren: () => import('../../components/reports/hrpayroll/disciplinarylogs/disciplinarylogs.module').then(m => m.DisciplinarylogsModule),\r\n data: {\r\n breadcrumb: 'Disciplinary Logs'\r\n },\r\n },\r\n {\r\n path: 'employeecostingsummary',\r\n loadChildren: () => import('../../components/reports/hrpayroll/employeecostingsummary/employeecostingsummary.module').then(m => m.EmployeecostingsummaryModule),\r\n data: {\r\n breadcrumb: 'Employee Costing Summary'\r\n },\r\n },\r\n {\r\n path: 'employeesanniversary',\r\n loadChildren: () => import('../../components/reports/hrpayroll/employeesanniversary/employeesanniversary.module').then(m => m.EmployeesanniversaryModule),\r\n data: {\r\n breadcrumb: 'Employees Anniversary'\r\n },\r\n },\r\n {\r\n path: 'leavesbalance',\r\n loadChildren: () => import('../../components/reports/hrpayroll/employeeleavebalance/employeeleavebalance.module').then(m => m.EmployeeLeaveBalanceModule),\r\n data: {\r\n breadcrumb: 'Employees Leave Balance'\r\n },\r\n },\r\n {\r\n path: 'employeesbirthday',\r\n loadChildren: () => import('../../components/reports/hrpayroll/employeesbirthday/employeesbirthday.module').then(m => m.EmployeesbirthdayModule),\r\n data: {\r\n breadcrumb: 'Employees Birthday'\r\n },\r\n },\r\n {\r\n path: 'hurricanecontacts',\r\n loadChildren: () => import('../../components/reports/hrpayroll/hurricanecontacts/hurricanecontacts.module').then(m => m.HurricanecontactsModule),\r\n data: {\r\n breadcrumb: 'List of Employees'\r\n },\r\n },\r\n {\r\n path: 'insurance',\r\n loadChildren: () => import('../../components/reports/hrpayroll/insurance/insurance.module').then(m => m.InsuranceModule),\r\n data: {\r\n breadcrumb: 'Insurance'\r\n },\r\n },\r\n {\r\n path: 'jobapplications',\r\n loadChildren: () => import('../../components/reports/hrpayroll/jobapplications/jobapplications.module').then(m => m.JobapplicationsModule),\r\n data: {\r\n breadcrumb: 'List of Employees'\r\n },\r\n },\r\n {\r\n path: 'pensions',\r\n loadChildren: () => import('../../components/reports/hrpayroll/pensions/pensions.module').then(m => m.PensionsModule),\r\n data: {\r\n breadcrumb: 'Pensions'\r\n },\r\n },\r\n {\r\n path: 'workpermit',\r\n loadChildren: () => import('../../components/reports/hrpayroll/workpermit/workpermit.module').then(m => m.WorkpermitModule),\r\n data: {\r\n breadcrumb: 'Work Permit'\r\n },\r\n },\r\n {\r\n path: 'esiccontribution',\r\n loadChildren: () => import('../../components/reports/hrpayroll/esiccontribution/esiccontribution.module').then(m => m.EsiccontributionModule),\r\n data: {\r\n breadcrumb: 'ESIC Contribution'\r\n },\r\n },\r\n {\r\n path: 'epfcontribution',\r\n loadChildren: () => import('../../components/reports/hrpayroll/epfcontribution/epfcontribution.module').then(m => m.EpfcontributionModule),\r\n data: {\r\n breadcrumb: 'EPf Contribution'\r\n },\r\n },\r\n {\r\n path: 'emprosterdetails',\r\n loadChildren: () => import('../../components/reports/hrpayroll/emprosterdetails/emprosterdetails.module').then(m => m.EmprosterdetailsModule),\r\n data: {\r\n breadcrumb: 'Employee Roster Details'\r\n },\r\n },\r\n {\r\n path: 'monthlyattendance',\r\n loadChildren: () => import('../../components/reports/hrpayroll/monthlyattendance/monthlyattendance.module').then(m => m.MonthlyattendanceModule),\r\n data: {\r\n breadcrumb: 'Monthly Attendance'\r\n },\r\n },\r\n {\r\n path: 'pensioninsurancecontribution',\r\n loadChildren: () => import('../../components/reports/hrpayroll/pensioninsurancecontribution/pensioninsurancecontribution.module').then(m => m.PensioninsurancecontributionModule),\r\n data: {\r\n breadcrumb: 'Pension, Insurance Contribution'\r\n },\r\n },\r\n {\r\n path: 'sqlerrorlog',\r\n loadChildren: () => import('../../components/reports/support/sqlerrorlog/sqlerrorlog.module').then(m => m.SqlerrorlogModule),\r\n data: {\r\n breadcrumb: 'Sql Error Logs'\r\n },\r\n },\r\n {\r\n path: 'sqljoblog',\r\n loadChildren: () => import('../../components/reports/support/sqljoblog/sqljoblog.module').then(m => m.SqljoblogModule),\r\n data: {\r\n breadcrumb: 'Sql Job Logs'\r\n },\r\n },\r\n {\r\n path: 'timesheetreport',\r\n loadChildren: () => import('../../components/reports/employee/timesheetreport/timesheetreport.module').then(m => m.TimesheetreportModule),\r\n data: {\r\n breadcrumb: 'Timesheet Report'\r\n },\r\n },\r\n {\r\n path: 'snagsummary',\r\n loadChildren: () => import('../../components/reports/employee/snagsummary/snagsummary.module').then(m => m.SnagsummaryreportModule),\r\n data: {\r\n breadcrumb: 'Snag Summary'\r\n },\r\n },\r\n {\r\n path: 'tasksummary',\r\n loadChildren: () => import('../../components/reports/employee/tasksummary/tasksummary.module').then(m => m.TasksummaryModule),\r\n data: {\r\n breadcrumb: 'Task Summary'\r\n },\r\n },\r\n // Setting\r\n {\r\n path: 'ezbcostanalysis',\r\n loadChildren: () => import('../../components/settings/ezbcostanalysis/ezbcostanalysis.module').then(m => m.EzbcostanalysisModule),\r\n data: {\r\n breadcrumb: 'Ezb Cost Analysis'\r\n },\r\n },\r\n {\r\n path: 'companyprofile',\r\n loadChildren: () => import('../../components/settings/companyprofile/companyprofile.module').then(m => m.CompanyprofileModule),\r\n data: {\r\n breadcrumb: 'Company Profile'\r\n },\r\n },\r\n {\r\n path: 'countries',\r\n loadChildren: () => import('../../components/settings/countries/countries.module').then(m => m.CountriesModule),\r\n data: {\r\n breadcrumb: 'Countries'\r\n },\r\n },\r\n {\r\n path: 'sqljobs',\r\n loadChildren: () => import('../../components/settings/sqljobs/sqljobs.module').then(m => m.SqljobsModule),\r\n data: {\r\n breadcrumb: 'SQL Jobs'\r\n },\r\n },\r\n {\r\n path: 'emaillist',\r\n loadChildren: () => import('../../components/settings/emaillist/emaillist.module').then(m => m.EmaillistModule),\r\n data: {\r\n breadcrumb: 'Email List'\r\n },\r\n },\r\n {\r\n path: 'tagsmaster',\r\n loadChildren: () => import('../../components/settings/tagsmaster/tagsmaster.module').then(m => m.TagsmasterModule),\r\n data: {\r\n breadcrumb: 'Tags Master'\r\n },\r\n },\r\n {\r\n path: 'users',\r\n loadChildren: () => import('../../components/settings/users/users.module').then(m => m.UsersModule),\r\n data: {\r\n breadcrumb: 'Users'\r\n },\r\n },\r\n {\r\n path: 'preferences',\r\n loadChildren: () => import('../../components/settings/preferences/preferences.module').then(m => m.PreferencesModule),\r\n data: {\r\n breadcrumb: 'Preferences'\r\n },\r\n },\r\n {\r\n path: 'emailhistory',\r\n loadChildren: () => import('../../components/settings/emailhistory/emailhistory.module').then(m => m.EmailhistoryModule),\r\n data: {\r\n breadcrumb: 'Email History'\r\n },\r\n },\r\n {\r\n path: 'companyemailtemplates',\r\n loadChildren: () => import('../../components/settings/emailtemplates/emailtemplates.module').then(m => m.EmailtemplatesModule),\r\n data: {\r\n breadcrumb: 'Email Templates'\r\n },\r\n },\r\n {\r\n path: 'printers',\r\n loadChildren: () => import('../../components/settings/printers/printers.module').then(m => m.PrintersModule),\r\n data: {\r\n breadcrumb: 'Printers'\r\n },\r\n },\r\n {\r\n path: 'reminderconfig',\r\n loadChildren: () => import('../../components/settings/reminderconfig/reminderconfig.module').then(m => m.ReminderconfigModule),\r\n data: {\r\n breadcrumb: 'Reminder Configs'\r\n },\r\n },\r\n {\r\n path: 'tariffs',\r\n loadChildren: () => import('../../components/settings/tariffs/tariffs.module').then(m => m.TariffsModule),\r\n data: {\r\n breadcrumb: 'Tariffs'\r\n },\r\n },\r\n {\r\n path: 'companymenu',\r\n loadChildren: () => import('../../components/settings/companymenu/companymenu.module').then(m => m.CompanymenuModule),\r\n data: {\r\n breadcrumb: 'Company Menu'\r\n },\r\n },\r\n {\r\n path: 'sitemaster',\r\n loadChildren: () => import('../../components/settings/sitemaster/sitemaster.module').then(m => m.SitemasterModule),\r\n data: {\r\n breadcrumb: 'Sites'\r\n },\r\n },\r\n {\r\n path: 'devicemaster',\r\n loadChildren: () => import('../../components/settings/devicemaster/devicemaster.module').then(m => m.DevicemasterModule),\r\n data: {\r\n breadcrumb: 'Devices'\r\n },\r\n },\r\n {\r\n path: 'devicetypes',\r\n loadChildren: () => import('../../components/settings/devicetypes/devicetypes.module').then(m => m.DeviceTypesModule),\r\n data: {\r\n breadcrumb: 'Device Types'\r\n },\r\n },\r\n {\r\n path: 'contactmaster',\r\n loadChildren: () => import('../../components/settings/contactmaster/contactmaster.module').then(m => m.ContactmasterModule),\r\n data: {\r\n breadcrumb: 'Contacts'\r\n },\r\n },\r\n {\r\n path: 'menus',\r\n loadChildren: () => import('../../components/ebadmin/menu/menu.module').then(m => m.MenuModule),\r\n data: {\r\n breadcrumb: 'Menu'\r\n },\r\n },\r\n {\r\n path: 'mobileapps',\r\n loadChildren: () => import('../../components/ebadmin/mobileapps/mobileapps.module').then(m => m.MobileappsModule),\r\n data: {\r\n breadcrumb: 'Mobile Apps'\r\n },\r\n },\r\n {\r\n path: 'userguide',\r\n loadChildren: () => import('../../components/ebadmin/userguide/userguide.module').then(m => m.UserguideModule),\r\n data: {\r\n breadcrumb: 'User Guide'\r\n },\r\n },\r\n {\r\n path: 'emailtemplates',\r\n loadChildren: () => import('../../components/ebadmin/emailtemplates/emailtemplates.module').then(m => m.EmailTemplatesModule),\r\n data: {\r\n breadcrumb: 'Email Templates'\r\n },\r\n },\r\n\r\n // Eb Admin\r\n\r\n {\r\n path: 'companies',\r\n loadChildren: () => import('../../components/ebadmin/companies/companies.module').then(m => m.CompaniesModule),\r\n data: {\r\n breadcrumb: 'Company Profile'\r\n },\r\n },\r\n {\r\n path: 'subscriptions',\r\n loadChildren: () => import('../../components/ebadmin/subscriptions/subscriptions.module').then(m => m.SubscriptionsModule),\r\n data: {\r\n breadcrumb: 'Subscriptions'\r\n },\r\n },\r\n {\r\n path: 'roles',\r\n loadChildren: () => import('../../components/ebadmin/roles/roles.module').then(m => m.RolesModule),\r\n data: {\r\n breadcrumb: 'Roles'\r\n },\r\n },\r\n {\r\n path: 'salarycomponent',\r\n loadChildren: () => import('../../components/ebadmin/salarycomponent/salarycomponent.module').then(m => m.SalarycomponentModule),\r\n data: {\r\n breadcrumb: 'Salary Components'\r\n },\r\n },\r\n {\r\n path: 'importdataoptions',\r\n loadChildren: () => import('../../components/ebadmin/importdataoptions/importdataoptions.module').then(m => m.ImportdataoptionsModule),\r\n data: {\r\n breadcrumb: 'Import Data Options'\r\n },\r\n },\r\n {\r\n path: 'exportdataoptions',\r\n loadChildren: () => import('../../components/ebadmin/exportdataoptions/exportdataoptions.module').then(m => m.ExportdataoptionsModule),\r\n data: {\r\n breadcrumb: 'Export Data Options'\r\n },\r\n },\r\n {\r\n path: 'exportdata',\r\n loadChildren: () => import('../../components/exportdata/exportdata.module').then(m => m.ExportdataModule),\r\n data: {\r\n breadcrumb: 'Export Data'\r\n },\r\n },\r\n // Customer Service\r\n {\r\n path: 'dispatcher',\r\n loadChildren: () => import('../../components/customerservice/dispatcher/dispatcher.module').then(m => m.DispatcherModule),\r\n data: {\r\n breadcrumb: 'Dispatcher'\r\n },\r\n },\r\n {\r\n path: 'distributionbatches',\r\n loadChildren: () => import('../../components/customerservice/distributionbatches/distributionbatches.module').then(m => m.DistributionbatchesModule),\r\n data: {\r\n breadcrumb: 'Distribution Batches'\r\n },\r\n },\r\n {\r\n path: 'customerfeedback',\r\n loadChildren: () => import('../../components/customerservice/feedbacks/feedbacks.module').then(m => m.FeedbacksModule),\r\n data: {\r\n breadcrumb: 'Customer Feedback'\r\n },\r\n },\r\n {\r\n path: 'customerchat',\r\n loadChildren: () => import('../../components/customerservice/chatsupport/chatsupport.module').then(m => m.ChatsupportModule),\r\n data: {\r\n breadcrumb: 'Chat Support'\r\n },\r\n },\r\n {\r\n path: 'disputes',\r\n loadChildren: () => import('../../components/customerservice/disputes/disputes.module').then(m => m.DisputesModule),\r\n data: {\r\n breadcrumb: 'Disputes'\r\n },\r\n },\r\n {\r\n path: 'supportemails',\r\n loadChildren: () => import('../../components/customerservice/supportemails/supportemails.module').then(m => m.SupportEmailsModule),\r\n data: {\r\n breadcrumb: 'Support Emails'\r\n },\r\n },\r\n {\r\n path: 'customernotifications',\r\n loadChildren: () => import('../../components/customerservice/customernotifications/customernotifications.module').then(m => m.CustomernotificationsModule),\r\n data: {\r\n breadcrumb: 'Customer Notifications'\r\n },\r\n },\r\n // Help\r\n {\r\n path: 'help',\r\n loadChildren: () => import('../../components/help/help.module').then(m => m.HelpModule),\r\n data: {\r\n breadcrumb: 'Help'\r\n },\r\n },\r\n\r\n // profile\r\n {\r\n path: 'userprofile',\r\n loadChildren: () => import('../../components/editprofile/editprofile.module').then(m => m.EditprofileModule),\r\n data: {\r\n breadcrumb: 'Profile'\r\n },\r\n },\r\n // import data\r\n {\r\n path: 'importdata',\r\n loadChildren: () => import('../../components/importdata/importdata.module').then(m => m.ImportdataModule),\r\n data: {\r\n breadcrumb: 'Import Data'\r\n },\r\n },\r\n {\r\n path: 'importinvoice',\r\n loadChildren: () => import('../../components/importdetails/importdetails.module').then(m => m.ImportdetailsModule),\r\n data: {\r\n breadcrumb: 'Import'\r\n },\r\n },\r\n //changepassword\r\n {\r\n path: 'changepassword',\r\n loadChildren: () => import('../../components/changepassword/changepassword.module').then(m => m.ChangepasswordModule),\r\n data: {\r\n breadcrumb: 'Change Password'\r\n },\r\n },\r\n // Reminder\r\n {\r\n path: 'reminders',\r\n loadChildren: () => import('../../components/reminder/reminder.module').then(m => m.ReminderModule),\r\n data: {\r\n breadcrumb: 'Reminders'\r\n },\r\n },\r\n // Reminder\r\n {\r\n path: 'milestones',\r\n loadChildren: () => import('../../components/projectmanager/milestones/milestones.module').then(m => m.MilestonesModule),\r\n data: {\r\n breadcrumb: 'Milestones'\r\n },\r\n },\r\n {\r\n path: 'addbatch',\r\n loadChildren: () => import('../../components/accounts/addbatch/addbatch.module').then(m => m.AddBatchModule),\r\n data: {\r\n breadcrumb: 'Add Batch'\r\n },\r\n },\r\n {\r\n path: 'exportdata',\r\n loadChildren: () => import('../../components/exportdata/exportdata.module').then(m => m.ExportdataModule),\r\n data: {\r\n breadcrumb: 'Export Data'\r\n },\r\n },\r\n {\r\n path: 'errorlog',\r\n loadChildren: () => import('../../components/ebadmin/errorlog/errorlog.module').then(m => m.ErrorlogModule),\r\n data: {\r\n breadcrumb: 'Error Log'\r\n },\r\n },\r\n // {\r\n // path: 'transactionint',\r\n // loadChildren: () => import('../../components/settings/transactionintegration/transactionintegration.module').then(m => m.TransactionintegrationModule),\r\n // data: {\r\n // breadcrumb: 'transactionintegration'\r\n // },\r\n // },\r\n {\r\n path: 'companyawards',\r\n loadChildren: () => import('../../components/settings/companyawards/companyawards.module').then(m => m.CompanyawardsModule),\r\n data: {\r\n breadcrumb: 'companyawards'\r\n },\r\n },\r\n {\r\n path: 'disputereasons',\r\n loadChildren: () => import('../../components/customerservice/disputereason/disputesreason.module').then(m => m.DisputesreasonModule),\r\n data: {\r\n breadcrumb: 'Disputes'\r\n },\r\n },\r\n {\r\n path: 'incomecategories',\r\n loadChildren: () => import('../../components/accounts/incomecategories/incomecategories.module').then(m => m.IncomecategoriesModule),\r\n data: {\r\n breadcrumb: 'Accounts'\r\n }\r\n },\r\n {\r\n path: 'tdstypes',\r\n loadChildren: () => import('../../components/accounts/tdstypes/tdstypes.module').then(m => m.TDSTypesModule),\r\n data: {\r\n breadcrumb: 'Accounts'\r\n }\r\n },\r\n {\r\n path: 'otherincome',\r\n loadChildren: () => import('../../components/accounts/otherincome/otherincome.module').then(m => m.OtherincomeModule),\r\n data: {\r\n breadcrumb: 'Accounts'\r\n }\r\n },\r\n {\r\n path: 'projectinvoicebatch',\r\n loadChildren: () => import('../../components/projectmanager/batch/batch.module').then(m => m.Batchmodule),\r\n data: {\r\n breadcrumb: 'Add Batch'\r\n },\r\n },\r\n {\r\n path: 'wallethistory',\r\n loadChildren: () => import('../../components/reports/accounts/wallethistory/wallethistory.module').then(m => m.WallethistoryModule),\r\n data: {\r\n breadcrumb: 'Wallet History'\r\n },\r\n },\r\n {\r\n path: 'walletbalance',\r\n loadChildren: () => import('../../components/reports/accounts/walletbalance/walletbalance.module').then(m => m.WalletbalanceModule),\r\n data: {\r\n breadcrumb: 'Wallet Balance'\r\n },\r\n },\r\n {\r\n path: 'contractsummary',\r\n loadChildren: () => import('../../components/reports/accounts/contractsummary/contractsummary.module').then(m => m.ContractsummaryModule),\r\n data: {\r\n breadcrumb: 'Wallet Balance'\r\n },\r\n },\r\n {\r\n path: 'advloanrequest',\r\n loadChildren: () => import('../../components/hr/advanceloanrequest/advanceloanrequest.module').then(m => m.AdvanceloanrequestModule),\r\n data: {\r\n breadcrumb: 'Advance Loan'\r\n },\r\n },\r\n {\r\n path: 'legalcontract',\r\n loadChildren: () => import('../../components/hr/companylegalcontract/companylegalcontract.module').then(m => m.LegalcontractModule),\r\n data: {\r\n breadcrumb: 'Legal Contract'\r\n },\r\n },\r\n {\r\n path: 'bankingtransactions',\r\n loadChildren: () => import('../../components/accounts/banking/banktransactions/bankingtransactions.module').then(m => m.BankingTransactoinsModule),\r\n data: {\r\n breadcrumb: 'Bank Transactions'\r\n },\r\n },\r\n {\r\n path: 'holdings',\r\n loadChildren: () => import('../../components/accounts/ownerships/holdings.module').then(m => m.HoldingsModule),\r\n data: {\r\n breadcrumb: 'Holdings'\r\n },\r\n },\r\n {\r\n path: 'shareclass',\r\n loadChildren: () => import('../../components/accounts/ownerships/shareclass/shareclass.module').then(m => m.ShareclassModule),\r\n data: {\r\n breadcrumb: 'Share Classes'\r\n }\r\n },\r\n {\r\n path: 'records',\r\n loadChildren: () => import('../../components/accounts/ownerships/records/records.module').then(m => m.RecordsModule),\r\n data: {\r\n breadcrumb: 'Records'\r\n }\r\n },\r\n {\r\n path: 'recordtypes',\r\n loadChildren: () => import('../../components/accounts/ownerships/recordtypes/recordtypes.module').then(m => m.RecordtypesModule),\r\n data: {\r\n breadcrumb: 'Record Types'\r\n }\r\n },\r\n {\r\n path: 'resolutions',\r\n loadChildren: () => import('../../components/accounts/ownerships/resolutions/resolutions.module').then(m => m.ResolutionsModule),\r\n data: {\r\n breadcrumb: 'Resolutions'\r\n }\r\n },\r\n {\r\n path: 'register',\r\n loadChildren: () => import('../../components/accounts/ownerships/registration/registration.module').then(m => m.RegistrationModule),\r\n data: {\r\n breadcrumb: 'Register'\r\n }\r\n },\r\n // Production \r\n {\r\n path: 'productionscheduler',\r\n loadChildren: () => import('../../components/production/scheduler/timeline/timeline.module').then(m => m.ProdTimelineModule),\r\n data: {\r\n breadcrumb: 'Scheduler'\r\n },\r\n },\r\n {\r\n path: 'productionorders',\r\n loadChildren: () => import('../../components/production/productionorders/productionorders.module').then(m => m.ProductionordersModule),\r\n data: {\r\n breadcrumb: 'Production Orders'\r\n },\r\n },\r\n {\r\n path: 'uommatrix',\r\n loadChildren: () => import('../../components/inventory/uommatrix/uommatrix.module').then(m => m.UOMMatrixModule),\r\n data: {\r\n breadcrumb: 'UOM Matrix'\r\n },\r\n },\r\n {\r\n path: 'thirdpartylinks',\r\n loadChildren: () => import('../../components/settings/thirdpartylinks/thirdpartylinks.module').then(m => m.TPILinksModule),\r\n data: {\r\n breadcrumb: 'Third Party Links'\r\n }\r\n },\r\n {\r\n path: 'loanapplications',\r\n loadChildren: () => import('../../components/accounts/loanapplications/loanapplications.module').then(m => m.LoanApplicationsModule),\r\n data: {\r\n breadcrumb: 'Loan Applications'\r\n }\r\n },\r\n {\r\n path: 'tipgroups',\r\n loadChildren: () => import('../../components/tips/tipgroups/tipgroups.module').then(m => m.TripgroupsModule),\r\n data: {\r\n breadcrumb: 'Tip Groups'\r\n },\r\n },\r\n {\r\n path: 'doccoaconfig',\r\n loadChildren: () => import('../../components/accounts/doccoaconfig/doccoaconfig.module').then(m => m.DocCOAConfigModule),\r\n data: {\r\n breadcrumb: 'Document GL Config'\r\n },\r\n },\r\n {\r\n path: 'nonbillabletime',\r\n loadChildren: () => import('../../components/servicemanager/nonbillabletime/nonbillabletime.module').then(m => m.NonBillableTimeModule),\r\n data: {\r\n breadcrumb: 'Non Billable Time'\r\n },\r\n },\r\n {\r\n path: 'coatransfer',\r\n loadChildren: () => import('../../components/settings/coatransfer/coatransfer.module').then(m => m.CoatransferModule),\r\n data: {\r\n breadcrumb: 'COA Transfer'\r\n },\r\n },\r\n {\r\n path: 'webwhyus',\r\n loadChildren: () => import('../../components/website/whyus/whyus.module').then(m => m.WhyusModule),\r\n data: {\r\n breadcrumb: 'Why Us'\r\n }\r\n },\r\n {\r\n path: 'webfaqs',\r\n loadChildren: () => import('../../components/website/faqs/faqs.module').then(m => m.FaqsModule),\r\n data: {\r\n breadcrumb: 'Faqs'\r\n }\r\n },\r\n {\r\n path: 'webusecases',\r\n loadChildren: () => import('../../components/website/usecases/usecases.module').then(m => m.UseCasesModule),\r\n data: {\r\n breadcrumb: 'Use Cases'\r\n }\r\n },\r\n {\r\n path: 'webcorevalues',\r\n loadChildren: () => import('../../components/website/corevalues/corevalues.module').then(m => m.CorevalueModule),\r\n data: {\r\n breadcrumb: 'Core Values'\r\n }\r\n },\r\n {\r\n path: 'webaboutus',\r\n loadChildren: () => import('../../components/website/aboutus/aboutus.module').then(m => m.AboutUsModule),\r\n data: {\r\n breadcrumb: 'About Us'\r\n }\r\n },\r\n {\r\n path: 'webvendors',\r\n loadChildren: () => import('../../components/website/vendors/vendors.module').then(m => m.VendorsModule),\r\n data: {\r\n breadcrumb: 'Vendors'\r\n }\r\n },\r\n {\r\n path: 'webproductsservices',\r\n loadChildren: () => import('../../components/website/webproductsservices/webproductsservices.module').then(m => m.ProductsServicesModule),\r\n data: {\r\n breadcrumb: 'Products & Services'\r\n }\r\n },\r\n {\r\n path: 'privacypolicy',\r\n loadChildren: () => import('../../components/website/privacypolicy/privacypolicy.module').then(m => m.PrivacypolicyModule),\r\n data: {\r\n breadcrumb: 'Privacy Policy'\r\n },\r\n },\r\n {\r\n path: 'termsofservice',\r\n loadChildren: () => import('../../components/website/termsconditions/termsconditions.module').then(m => m.TermsConditionsModule),\r\n data: {\r\n breadcrumb: 'Terms & Conditions'\r\n },\r\n },\r\n {\r\n path: 'announcements',\r\n loadChildren: () => import('../../components/website/announcements/announcements.module').then(m => m.AnnouncementsModule),\r\n data: {\r\n breadcrumb: 'Announcements'\r\n },\r\n },\r\n {\r\n path: 'potypes',\r\n loadChildren: () => import('../../components/purchase/potypes/potypes.module').then(m => m.POTypesModule),\r\n data: {\r\n breadcrumb: 'Purchase Order Types'\r\n }\r\n },\r\n {\r\n path: 'pitypes',\r\n loadChildren: () => import('../../components/purchase/pitypes/pitypes.module').then(m => m.PITypesModule),\r\n data: {\r\n breadcrumb: 'Purchase Invoice Types'\r\n }\r\n },\r\n {\r\n path: 'invoicetypes',\r\n loadChildren: () => import('../../components/Sales/invoicetypes/invoicetypes.module').then(m => m.InvoiceTypesModule),\r\n data: {\r\n breadcrumb: 'Invoice Types'\r\n }\r\n },\r\n {\r\n path: 'sotypes',\r\n loadChildren: () => import('../../components/Sales/sotypes/sotypes.module').then(m => m.SOTypesModule),\r\n data: {\r\n breadcrumb: 'Sales Order Types'\r\n }\r\n },\r\n];","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { environment } from '../../../environments/environment';\r\nimport { modelComp, modelLogin } from '../../components/auth/login/modelLogin';\r\nimport { Events } from './events.service';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n public hero: ''\r\n public expenseData: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n // For signup customer\r\n findUser(loginame) {\r\n return this.http.get(this.baseUrl + 'api/Login/FindUser?loginame=' + loginame);\r\n }\r\n \r\n // For signup customer socialmedia\r\n findUserByAuthToken(loginObj) {\r\n const data = 'api/Login/FindUserByAuthToken';\r\n return this.http.post(environment.API_URL + data, loginObj)\r\n .pipe(catchError(this.handleError));\r\n\r\n // return this.http.get(this.baseUrl + 'api/Login/FindUserByAuthToken?loginame=' + loginame + '&site_name=' + site_name + '&auth_token=' + auth_token);\r\n }\r\n\r\n loginByAuthToken(loginObj: any): Observable {\r\n const data = 'api/Login/LoginUserByAuthToken';\r\n return this.http.post(environment.API_URL + data, loginObj)\r\n .pipe(catchError(this.handleError));\r\n }\r\n\r\n login(loginObj: any): Observable {\r\n const data = 'api/Login/LoginUser';\r\n return this.http.post(environment.API_URL + data, loginObj)\r\n .pipe(catchError(this.handleError));\r\n }\r\n loginEncrypted(data) {\r\n const val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Login/LoginUser', val);\r\n }\r\n //Reset password\r\n resetPassword(data) {\r\n return this.http.post(this.baseUrl + 'api/Login/Resetpassword', data)\r\n }\r\n //Change Password \r\n postChangePass(data) {\r\n const val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Users/ChangePassword', val)\r\n }\r\n //Signup services\r\n getSignupPlans() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetPlans');\r\n }\r\n\r\n getRegions() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetRegions');\r\n }\r\n\r\n postSignup(data) {\r\n return this.http.post(this.baseUrl + 'api/Public/Post_Signup', data);\r\n }\r\n\r\n postSignupComplete(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Public/Post_SignupComplete', val);\r\n }\r\n\r\n getBusinessTypes() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetBusinessTypes');\r\n }\r\n\r\n getTradeTypes() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetBusinessDomain');\r\n }\r\n\r\n getMenuList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/Menu/Get_Menus?email=' + this.userprofile.email + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // customer\r\n getCustomerInfo(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerInfo?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n //product\r\n getProductList() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/prs/Gett_products?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + '');\r\n }\r\n\r\n getSubCategory(categoryid) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductSubCatgeory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&categoryid=' + categoryid);\r\n }\r\n\r\n\r\n //project\r\n getProjectList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjects?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&username=' + this.userprofile.username);\r\n }\r\n getProjectTypes() {\r\n\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getProductType() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProjectStatus() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getProjectDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/Projects/Gett_ProjectByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //project - bug\r\n getBugList() {\r\n return this.http.get(this.baseUrl + 'api/Snags/Get_SnagIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBugStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSnagStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskListByProject(proj) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTasks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&proj=' + proj);\r\n }\r\n deleteBug() {\r\n return this.http.delete(this.baseUrl + 'api/bugs/Deletet_bugs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBugType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSnagType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBugPriority() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSnagPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n // project-teams \r\n\r\n postResources() {\r\n\r\n }\r\n\r\n // project-expense \r\n\r\n\r\n\r\n getExpStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetExpenseStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getExpType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetExpenseType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCurrency() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getExpsenseDetails(id) {\r\n return this.http.get(this.baseUrl + 'api/expenses/Gett_expenses?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n //employee\r\n getDepartmentList(isservice) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDept?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&isservice=' + isservice);\r\n }\r\n getGenderList() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGender?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpType() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getEmpDesignation() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDesignations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getGetPayType() {\r\n\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPayTypes');\r\n }\r\n getEmpStatus() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmpStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n\r\n // task\r\n\r\n getTaskList() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTasks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //add task\r\n\r\n getTaskReviewer() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTaskReviewers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTaskTypeist() {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTaskTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n // project-expense-PO \r\n getShiptoList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetShipto?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPoTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPoPriority() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPoTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPoTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPoStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPostatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n // prpject -- Invoice\r\n getInvStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getInvTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPaymentTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // project -- qoute \r\n\r\n getQouteList(quoteno) {\r\n return this.http.get(this.baseUrl + 'api/WebQuotes/Gett_quotehdr?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '"eno=' + quoteno);\r\n }\r\n postQoute(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/WebQuotes/Postt_quotehd', data);\r\n\r\n }\r\n getQouteStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getQuoteTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetQuoteTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getticketStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getticketPriority() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getticketCat() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getticketAssginToList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketAssignto?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // binlocation list\r\n getGetBinLocationList() {\r\n return this.http.get(this.baseUrl + 'api/api/WebInventoryItems/ScanBinLocations?binlocation=&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getInternalDeptBin() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInternalDeptBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //customer\r\n\r\n\r\n // supplier\r\n getSupplierStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getLocalSuppler() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLocalSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n //ship too\r\n getCountryList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCountries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getGlAccounts() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGLAccounts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomers() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getRoleList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetRoleList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n\r\n\r\n\r\n //insights\r\n // getGraphDashboard() {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/Gett_dashboard?companyid=' + this.userprofile.companyid + '&companyname=' + this.userprofile.companyname)\r\n // }\r\n // getPLdata(yr) {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/GetPL?yr=' + yr + '&companyid=' + this.userprofile.companyid)\r\n // }\r\n // getSalesTrend(yr) {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/GetSalesTrend?yr=' + yr + '&companyid=' + this.userprofile.companyid)\r\n // }\r\n // getTopCustomers(yr) {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/GetTopCustomers?yr=' + yr + '&companyid=' + this.userprofile.companyid)\r\n // }\r\n // getIncome(val) {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/GetInc?val=' + val + '&companyid=' + this.userprofile.companyid)\r\n // }\r\n // getTotalExp(val) {\r\n // return this.http.get(this.baseUrl + 'api/WebInsights/GetExp?val=' + val + '&companyid=' + this.userprofile.companyid)\r\n\r\n\r\n // }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpHandler, HttpRequest, HttpEvent, HttpHeaders, HttpErrorResponse, HttpResponse } from '@angular/common/http';\r\nimport { Observable, throwError, of } from 'rxjs';\r\n// import { LocalStorageService } from '../localStorage.service';\r\nimport { catchError, tap } from 'rxjs/operators';\r\nimport { HttpCacheService } from './http-cache.service';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable()\r\n\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n userprofile: any;\r\n appname=environment.APP_NAME;\r\n constructor(\r\n // private localstorageservice: LocalStorageService\r\n private cacheService: HttpCacheService,\r\n private router:Router\r\n ) { }\r\n // isTokenExpired(token: string): boolean {\r\n // try {\r\n // const payload = JSON.parse(atob(token.split('.')[1]));\r\n // const expiry = 1733989080000; // Convert to milliseconds\r\n // var date = Date.now();\r\n // return date > expiry;\r\n // } catch {\r\n // return true; // Treat invalid tokens as expired\r\n // }\r\n // }\r\n handleError(error: HttpErrorResponse) {\r\n environment.production ? '' : console.log('Error Occurred');\r\n\r\n let message;\r\n if (error.status === 429) {\r\n message = 'High Traffic, Try after some time.';\r\n } else if (error.status === 500) {\r\n message = 'We can not process this request, Try again after some time.';\r\n } else if (error.status === 400) {\r\n environment.production ? '' : console.log('error helper', error);\r\n message = error.error.message;\r\n } else {\r\n message = \"Error occurred try again\"\r\n }\r\n\r\n\r\n return throwError(message);\r\n }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n // this.userprofile = localStorage.getItem('userprofile');\r\n this.userprofile = localStorage.getItem(this.appname + 'userprofile');\r\n\r\n // environment.production ? '' : console.log('dattttaaaa', localStorage.getItem(this.appname + 'userprofile'));\r\n let token = null;\r\n if (this.userprofile != null) {\r\n this.userprofile = JSON.parse(this.userprofile);\r\n token = this.userprofile.token;\r\n }\r\n // if(this.isTokenExpired(token)) {\r\n // this.router.navigate(['/login']);\r\n // }\r\n if (token == null) {\r\n const authReq = req.clone({ setHeaders: { 'Content-Type': 'application/json' } });\r\n return next.handle(authReq).pipe(\r\n catchError(this.handleError)\r\n );\r\n }\r\n\r\n const authHeader = 'Bearer ' + token;\r\n const authReq = req.clone({ setHeaders: { 'Content-Type': 'application/json', Authorization: authHeader } });\r\n return next.handle(authReq);\r\n }\r\n}\r\n\r\n","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { EventEmitter, Injectable, Output } from '@angular/core';\r\nimport { BehaviorSubject, throwError } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\nimport { modelComp, modelLogin } from '../../components/auth/login/modelLogin';\r\nimport { Events } from './events.service';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommonServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objLogin: modelLogin;\r\n objComp: modelComp;\r\n objCompId: any;\r\n userprofile: any;\r\n public hero: ''\r\n public expenseData: ''\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n }\r\n\r\n public headerEditItemData = new BehaviorSubject('');\r\n public headerTitleItemData = new BehaviorSubject('');\r\n @Output() aClickedEvent = new EventEmitter();\r\n\r\n islocalClicked(msg: string) {\r\n this.aClickedEvent.emit(msg);\r\n }\r\n //Ticket Category List && sub cat same api need to use -- updated by mayur 4 sept 2022\r\n getSalesReqItems(binid, deptid, categoryid, subcategoryid, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetSalesReqItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&binid=' + binid + '&deptid=' + deptid + '&categoryid=' + categoryid + '&subcategoryid=' + subcategoryid + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getTicketCategories(parentid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServiceCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&parentid=' + parentid);\r\n }\r\n\r\n getAuditLogs(id, pg) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Gett_AuditLogs?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg);\r\n }\r\n\r\n getTaxList(type) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTaxList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n\r\n getClockingCodes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetClockingCodes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n //Ticket Priorities List\r\n getTicketPriorities() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTicketStatuses() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getOwnerRecordType(parentid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetOwnerRecordType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&parentid=' + parentid);\r\n }\r\n //enum list\r\n getComboEnums(name_of_field) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetComboEnums?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name_of_field=' + name_of_field);\r\n }\r\n //get audit log\r\n\r\n //get party list\r\n getPartyList(ptype, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetParties?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&partytype=' + ptype + '&searchtxt=' + searchtxt);\r\n }\r\n //get document list \r\n getDocList(refno) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetDocumnets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&refno=' + refno);\r\n\r\n }\r\n getDocIndexList(refno, description, type) {\r\n return this.http.get(this.baseUrl + 'api/Documents/Get_DocumentIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&refno=' + refno + '&description=' + description + '&type=' + type);\r\n\r\n }\r\n getEmailTemplateCodes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmailTemplateCodes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmailLists() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmailLists?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmailTemplateLists() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmailTemplates?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // getdoc type{\r\n getDocType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDocumentType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPayrollPaymentType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPayrollPaymentType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //getBoolean type list as common\r\n getBooleanList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/yesNoBoolean?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // getticketlist\r\n getTicketsUsingCustomer(customer) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customer);\r\n }\r\n //Ticket Devices List\r\n getCustomerDevices(customerid, siteid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerDevices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&siteid=' + siteid);\r\n }\r\n\r\n //Customer info\r\n getCustomerInfo(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerInfo?customerid=' + customerid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSiteInfo(siteid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetSiteInfo?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&siteid=' + siteid);\r\n }\r\n\r\n getProjJobslist(searchtxt, customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_ProjJobslist?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&customerid=' + customerid);\r\n }\r\n getSourceList(type, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSourceList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getInvOrderslist(searchtxt, customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_InvOrderslist?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&customerid=' + customerid);\r\n }\r\n\r\n getCustomerList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getPaymentTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPaymentTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCustomers(searchtxt, siteid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=&email=&phone=' + '&siteid=' + siteid + '&searchtxt=' + searchtxt);\r\n }\r\n getCompanySites() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //project\r\n getProjectList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjects?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&username=' + this.userprofile.email);\r\n }\r\n\r\n getProjectTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjectTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&username=' + this.userprofile.email);\r\n }\r\n getPOSPaymentMethods() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOSPaymentMethods?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&username=' + this.userprofile.email);\r\n }\r\n getCustomerTicketList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSOTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSOTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomerTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //project\r\n getCustomerProjectList(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProjects?customerid=' + customerid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerSiteList(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerSites?customerid=' + customerid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDeliveryEmployees() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDeliveryEmployees?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerSites(customerid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomerSites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n getSubCategory(cat) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductSubCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&categoryid=' + cat);\r\n }\r\n getReceivedVia() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketReceivedVia?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTicketPriority() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTicketPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getQouteStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getQuoteTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetQuoteTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCurrency() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyCurrencies?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getWriteoffReasons() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetWriteoffReasons?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProCategory() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGoodsCategories?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=')\r\n }\r\n\r\n // service manager\r\n getServiceContractPeriods() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetServicePeriod?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // binlocation type\r\n getGetBinType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBinTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getWareHouse() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetWarehouses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getsuppliersList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSupplierStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getSalesOrerTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSOTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSalesOrderTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSOTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSalesOrderStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSOStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSalesOrderPricingTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetOrderPricingTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getProjectListByCustomer(custoerid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjects?username=' + this.userprofile.email + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAllProList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjects?username=' + this.userprofile.email + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProductCatalog(ptype, pricingtype, searchtxt, deptid, categoryid, subcatid, supplierid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductCatalog4Sales?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ptype=' + ptype + '&pricingtype=' + pricingtype + '&searchtxt=' + searchtxt + '&deptid=' + deptid + '&categoryid=' + categoryid + '&subcatid=' + subcatid + '&supplierid=' + supplierid);\r\n }\r\n getServiceItems(searchtxt: string, deptid: string, empid: any, tid: any) {\r\n return this.http.get(this.baseUrl + 'api/comman/Gett_ServiceItems?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&deptid=' + deptid + '&searchtxt=' + searchtxt + '&tid=' + tid + '&empid=' + empid);\r\n }\r\n getBins(searchtxt, type) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_Binlist?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&type=' + type);\r\n }\r\n getProductCatalogforPO(searchtxt, supplierid, categoryid, deptid, subcatid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductCatalog4Purchase?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt + '&supplierid=' + supplierid + '&categoryid=' + categoryid + '&deptid=' + deptid + '&subcatid=' + subcatid);\r\n }\r\n\r\n getAssembliesCatalog(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetAssemblyCatalog?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n\r\n getProductDetailByILC(ilc, searchby, pricingtype) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProdInfo?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc + '&searchby=' + searchby + '&pricingtype=' + pricingtype);\r\n }\r\n getPoStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPostatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getCountries() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCountries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAllCountries() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyCountries?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=');\r\n }\r\n getJobList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetJobOpenings?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=');\r\n }\r\n getDeviceTypeList(classid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDeviceTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&classid=' + classid);\r\n }\r\n getDeviceClassList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDeviceClass?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmployees() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployees?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTaxConfig(type) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTaxConfigs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n getCustomerContracts(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCustomerContracts?customerid=' + customerid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPaymentMethods() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPaymentMethods?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompMOPBankList(mop) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetMOPBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&mop=' + mop);\r\n }\r\n getCompBankList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyBanks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckBooks(bankid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCheckBooks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bankid=' + bankid);\r\n }\r\n getCheckBookNos(chqbokid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetCheckNo?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&chqbokid=' + chqbokid);\r\n }\r\n getPaymentTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPaymentType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTicketsByCustomer(custid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTickets?customerid=' + custid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCustomerCreditAvailable(customerid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Gett_CustomerCreditAvailable?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid);\r\n }\r\n\r\n getTicketsByDevice(deviceid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceTickets?id=' + deviceid + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n\r\n getWorkTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetWorkType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&val=');\r\n }\r\n\r\n getCustomerDepartmentList(customerid, siteid) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCustomerDepartments?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&siteid=' + siteid);\r\n }\r\n\r\n //product\r\n getDepartmentList(isservice) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDept?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&isservice=' + isservice);\r\n }\r\n getCategory(dept, isservice) {\r\n this.userprofile = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductCategory?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&dept=' + dept + '&isservice=' + isservice);\r\n }\r\n getCheckListGroup() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetChecklistGroupTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPoTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getAssignTo() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssetUsers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n\r\n }\r\n getPoPriority() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPOPriority?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPoTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPoTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getPITypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPITypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getInvoiceTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvoiceTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSupplierName() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliersName?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSupplierList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSuppliers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSuppliersList(local, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetSupplierList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&local=' + local + '&searchtxt=' + searchtxt);\r\n }\r\n getSchedulerResources() {\r\n return this.http.get(this.baseUrl + 'api/Scheduler/Gett_Resources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAssigntoForTask() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetResources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getAssigntoForProjTasks() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProjResources?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //notes\r\n getNotesType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTechNotesType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBOLList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBOLList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getDepositStatusList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDepositStatus?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getAllTicket() {\r\n return this.http.get(this.baseUrl + 'api/tickets/Gett_AllTickets?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTagIndex(desc, pg) {\r\n return this.http.get(this.baseUrl + 'api/Tags/Get_TagIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + desc + '&pg=' + pg);\r\n }\r\n getTagByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Tags/Get_TagByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTags(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Tags/Post_Tags', data);\r\n }\r\n getTags(pg) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTags?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg);\r\n }\r\n getComposeEmail(id, template_code) {\r\n return this.http.get(this.baseUrl + 'api/Emailer/GetComposeEmail?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&template_code=' + template_code);\r\n }\r\n postEmail(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Emailer/Post_Email', data);\r\n }\r\n getPrintType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPrintType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getPlans(current_plan) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetPlans?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '¤t_plan=' + current_plan);\r\n }\r\n //getbin list\r\n getBinLocation() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBinLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getBSPeriod() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetBSPeriod?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For projecttype index\r\n getProjectTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProjectTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getProjectTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProjectTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postProjectType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProjectType', data);\r\n }\r\n\r\n deleteProjectType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProjectType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n\r\n\r\n // For contract type index\r\n getContractTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ContractTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getContractTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ContractTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postContractType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ContractType', data);\r\n }\r\n\r\n deleteContractType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ContractType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Task type index\r\n getTaskTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_TaskTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getTaskTypeIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_TaskTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postTaskType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_TaskType', data);\r\n }\r\n\r\n deleteTaskType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_TaskType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For Designation type index\r\n getDesignationIndex(desc) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_EmployeeDesignationIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + desc);\r\n }\r\n\r\n getDesignationIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_EmployeeDesignationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postDesignation(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_EmployeeDesignation', data);\r\n }\r\n\r\n deleteDesignation(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_EmployeeDesignation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteResponsibilities(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DesignationResponsibilities?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For Assets Location index\r\n getAssetsLocationIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_AssetLocationIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getAssetsLocationIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_AssetLocationByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postAssetsLocation(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AssetLocation', data);\r\n }\r\n\r\n deleteAssetsLocation(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssetLocation?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Assets Condition index\r\n getAssetsConditionIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_AssetConditionIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getAssetsConditionIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_AssetConditionByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postAssetsCondition(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AssetCondition', data);\r\n }\r\n\r\n deleteAssetsCondition(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssetCondition?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n deleteDocument(id) {\r\n return this.http.delete(this.baseUrl + 'api/Documents/Delete_Document?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For Assets Action index\r\n getAssetsActionIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_AssetActionIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getAssetsActionIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_AssetActionByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postAssetsAction(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_AssetAction', data);\r\n }\r\n\r\n deleteAssetsAction(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_AssetAction?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getMakeProductActive(id) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Make_ProductActive?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Invoice Terms=============\r\n getInvoiceTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_InvoiceTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getInvoiceTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetInvoiceTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getEstimateTerms() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEstimateTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getPrinters() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPrinters?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getInvoiceTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_InvoiceTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postInvoiceTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_InvoiceTerms', data);\r\n }\r\n\r\n deleteInvoiceTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_InvoiceTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Quote Terms=============\r\n getQuoteTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_QuoteTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getQuoteTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_QuoteTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postQuoteTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_QuoteTerms', data);\r\n }\r\n\r\n deleteQuoteTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_QuoteTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // forExtimateExpirterms\r\n getEstimateTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_EstimateTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getEstimateTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_EstimateTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postEstimateTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_EstimateTerms', data);\r\n }\r\n\r\n deleteEstimateTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_EstimateTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For PO Terms=============\r\n getPOTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_POTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getPOTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_POTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPOTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_POTerms', data);\r\n }\r\n deletePOTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_POTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For PI Terms=============\r\n getPITermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_PITerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getPITermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_PITermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPITerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_PITerms', data);\r\n }\r\n deletePITerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_PITerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Writeoff Reasons=============\r\n getWriteoffReasonIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_WriteoffReasons?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getWriteoffReasonIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_WriteoffReasonByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postWriteoffReason(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_WriteoffReasons', data);\r\n }\r\n deleteWriteoffReason(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_WriteoffReasons?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Ticket Status=============\r\n getTicketStatusIndex(desc, code) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_TicketStatusIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + desc + '&code=' + code);\r\n }\r\n getTicketStatusByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_TicketStatusByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postTicketStatus(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_TicketStatus', data);\r\n }\r\n deleteTicketStatus(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_TicketStatus?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For SO Terms=============\r\n getSOTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_SOTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getSOTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_SOTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSOTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_SOTerms', data);\r\n }\r\n deleteSOTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_SOTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Project Terms=============\r\n getProjectTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProjectTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getProjectTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProjectTermsByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProjectTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProjectTerms', data);\r\n }\r\n deleteProjectTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProjectTerms?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Product Manufacturer=============\r\n getManufacturerIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_Manufacturers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getManufacturerIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ManufacturerByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postManufacturer(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Manufacturer', data);\r\n }\r\n deleteManufacturer(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Manufacturer?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For binLocation warehouse=============\r\n getWarehouseIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_Warehouses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getWarehouseLst() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetWarehouses?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n\r\n }\r\n getWarehouseIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_WarehouseByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postWarehouse(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Warehouse', data);\r\n }\r\n deleteWarehouse(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Warehouse?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For paybill payment=============\r\n getPaymentMethodIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CompanyPaymentMethods?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getPaymentMethodIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Get_CompanyPaymentMethods?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postPaymentMethod(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanyPaymentMethod', data);\r\n }\r\n deletePaymentMethod(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanyPaymentMethod?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for employee department\r\n getEmpDepartmentIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_EmployeeDepartmentsIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getEmpDepartmentIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_EmployeeDepartmentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postEmpDepartment(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_EmployeeDepartment', data);\r\n }\r\n deleteEmpDepartment(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_EmployeeDepartment?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for document type\r\n getDocumentTypeIndex(desc, code) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DocumentTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&desc=' + desc + '&code=' + code);\r\n }\r\n getDocumentTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DocTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDocumentType(val) {\r\n // var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Post_DocType', val);\r\n }\r\n deleteDocumentType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DocType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for delivery route\r\n getDeliveryRouteIndex(code) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeliveryRouteIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&code=' + code);\r\n }\r\n getDeliveryRouteByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeliveryRouteByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeliveryRoute(val) {\r\n // var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeliveryRoute', val);\r\n }\r\n deleteDeliveryRoute(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeliveryRoute?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for cpc type\r\n getCPCIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CPC?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n getCPCByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CPCByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCPC(val) {\r\n // var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CPC', val);\r\n }\r\n deleteCPC(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CPC?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for customeerdept\r\n getCustomerDeptIndex(customerid, name) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CustomerDepartments?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&name=' + name);\r\n }\r\n getCustomerDeptByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CustomerDepartmentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCustomerDept(val) {\r\n // var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CustomerDepartment', val);\r\n }\r\n deleteCustomerDept(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CustomerDepartment?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for sales reqyest type\r\n getDisputeReasonList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDisputeReasons?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSalesRequestType(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_SalesRequestTypeIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n getSalesRequestTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_SalesRequestTypeByID/' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSalesRequestType(val) {\r\n // var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_SalesRequestType', val);\r\n }\r\n deleteSalesRequestType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_SalesRequestType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getSalesRequestTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSalesRequestTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //add location\r\n getLocationIndex() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postLocation(data) {\r\n var val = JSON.stringify(data);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CompanySite', val);\r\n }\r\n deleteLocation(id) {\r\n return this.http.delete(this.baseUrl + 'api/Settings/Delete_CompanySite?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //for Product UOM\r\n getProductUOMIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProductUOM?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getProductUOMByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProductUOMByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProductUOM(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProductUOM', data);\r\n }\r\n deleteProductUOM(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProductUOM?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Shipping port=============\r\n getShippingPortIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ShippingPort?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getShippingPortIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ShippingPortByI?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postShippingPort(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ShippingPort', data);\r\n }\r\n deleteShippingPort(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ShippingPort?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n \r\n // For Shipping Agent=============\r\n getShippingAgentIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ShippingAgents?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getShippingAgentIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ShippingAgentByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postShippingAgent(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ShippingAgent', data);\r\n }\r\n deleteShippingAgent(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ShippingAgent?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Vessels=============\r\n getVesselsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_Vessels?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getVesselsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_VesselByI?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postVessels(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_Vessel', data);\r\n }\r\n deleteVessels(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_Vessel?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For delivery terms=============\r\n getTermsIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeliveryTerms?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getTermsIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeliveryTermByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postDeliveryTerms(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeliveryTerm', data);\r\n }\r\n deleteDeliveryTerms(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeliveryTerm?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //get user profile\r\n getUserProfileInfo() {\r\n return this.http.get(this.baseUrl + 'api/Employees/Gett_ProfileByID?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&employeeid=' + this.userprofile.empid);\r\n }\r\n //Complete signup\r\n postLead2Company(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/EbSettings/Post_Lead2Company', data);\r\n }\r\n postLead2Customer(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Post_Lead2Customer', data);\r\n }\r\n getTarrifList(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetTariffList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n postAddCard(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Customers/Post_Card', data);\r\n }\r\n getChangeSubscriptionDate(customerid, planid, rate) {\r\n return this.http.get(this.baseUrl + 'api/Settings/Change_Subscription?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customerid + '&planid=' + planid + '&rate=' + rate);\r\n }\r\n deleteEzyBooksSubscription(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_CancelEzbSubscription', data);\r\n }\r\n getCompanySubscriptions() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanySubscriptions?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postSubscriptionPayment(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Settings/Post_UpgradeEzbSubscription', data);\r\n }\r\n updateCost(val) {\r\n const data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/PurchaseOrders/Post_UpdatePOCost', data);\r\n }\r\n deleteLineItem(id) {\r\n return this.http.delete(this.baseUrl + 'api/InventoryTransfers/DeleteInventoryTransferEntry?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDueInvList(customer) {\r\n return this.http.get(this.baseUrl + 'api/Invoices/Get_CustomerInvList?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&customerid=' + customer);\r\n }\r\n getActiveInactiveStatus() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/ActiveInActiveFilter?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProductBinDetails(prodid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdBinsData?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getProductPictures(prodid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductPictures?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getProductBin4Adj(prodid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductBin4Adj?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getContact(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetContacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n getDevice(name, ilc, type) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetDevices?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name + '&ilc=' + ilc + '&type=' + type);\r\n }\r\n getSite(name) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetSites?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&name=' + name);\r\n }\r\n getParticularHdr() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetAssesmentHdr?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n validateIlc(ilc) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Check_LookupCodeExist?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ilc=' + ilc);\r\n }\r\n getProdUom() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProdUom?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For sales order type index\r\n getSOTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_SOTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getSOTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_SOTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postSOType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_SOType', data);\r\n }\r\n\r\n deleteSOType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_SOTtype?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getTrackingNotes(ref_id, pg) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_TrackingNotes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ref_id=' + ref_id + '&pg=' + pg);\r\n }\r\n getSupplierContactList(supplierid) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSupplierContacts?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid);\r\n\r\n }\r\n postTrackingNotes(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Comman/Post_TrackingNotes', data);\r\n }\r\n // For customer type index\r\n getCustomerTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CustomerTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getCustomerTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CustomerTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postCustomerType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CustomerType', data);\r\n }\r\n\r\n deleteCustomerType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CustomerType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Dispute Reason \r\n getDisputeReasonIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DisputeReasons?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getDisputeReasonByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DisputeReasonByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postDisputeReason(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DisputeReason', data);\r\n }\r\n\r\n deleteDisputeReason(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DisputeReason?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For device type index\r\n getDeviceTypeIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeviceTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getDeviceTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postDeviceType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeviceType', data);\r\n }\r\n\r\n deleteDeviceType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For device class index\r\n getDeviceClassIndex(description) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeviceClass?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=' + description);\r\n }\r\n\r\n getDeviceClassByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_DeviceClassByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postDeviceClass(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeviceClass', data);\r\n }\r\n\r\n deleteDeviceClass(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceClass?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getComponentList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSalaryComponent?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getUserGuideParentList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetUserGuideParent?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n //get guide list\r\n getGuideList() {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_UserGuide?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getReceivedChequeTracking(rpid) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_ReceivedChequeTracking?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&rpid=' + rpid);\r\n }\r\n postReceivedTracking(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_TrackingChequeReceived', data);\r\n }\r\n getIssuedChequeTracking(bpid) {\r\n return this.http.get(this.baseUrl + 'api/Accounts/Get_IssuedChequeTracking?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bpid=' + bpid);\r\n }\r\n postIssuedTracking(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Accounts/Post_TrackingChequeIssued', data);\r\n }\r\n getCompLocation() {\r\n return this.http.get(this.baseUrl + 'api/Settings/Gett_CompanyLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDesignationList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployeeDesignations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getSoftwareList() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyTPIS?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getIlcInformation4Sales(pricingtype, ilc) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductInfo4Sales?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pricingtype=' + pricingtype + '&ilc=' + ilc);\r\n }\r\n getIlcInformation4Purchase(supplierid, ilc) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductInfo4Purchase?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&supplierid=' + supplierid + '&ilc=' + ilc);\r\n }\r\n getLocationTracking(pg, userid, fromdate, todate) {\r\n return this.http.get(this.baseUrl + 'api/LocationTracking/GetUserLocations?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&pg=' + pg + '&rw=' + this.userprofile.grid_page_size + '&userid=' + userid + '&fromdate=' + fromdate + '&todate=' + todate);\r\n }\r\n getProdBins(prodid) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetProductBins?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid);\r\n }\r\n getFundTransferReq() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetFundTransferReq?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCreditNoteType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCreditNoteType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getDebitNoteType() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetDebitNoteType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCheckProductSerialExists(prodid, serialno) {\r\n return this.http.get(this.baseUrl + 'api/InventoryItems/Check_ProductSerialExists?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&prodid=' + prodid + '&serialno=' + serialno);\r\n }\r\n // exportDataToFormat(data_option, type, fromdate, todate, reno, refid, asondate) {\r\n // var exportURL = environment.API_URL + 'public/Export_Data?' + 'companyid=' + this.userprofile.companyid + '&un=' + this.userprofile.company_web_token + '&logo=' + this.userprofile.logo + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&data_option=' + data_option + '&file_type=' + type + '&fromdate=' + fromdate + '&todate=' + todate + '&reno=' + reno + '&refid=' + refid + '&asondate=' + asondate;\r\n // window.open(exportURL, '_blank');\r\n // }\r\n\r\n // For uom ratio index\r\n getProductUOMRatioIndex(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProductUOMMatrix?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n getProductUOMRatio(uomid) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProductUOMRatio?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&uomid=' + uomid);\r\n }\r\n\r\n getProductUOMRatioByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProductUOMRatioByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n postProductUOMRatio(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProductUOMRatio', data);\r\n }\r\n\r\n deleteProductUOMRatio(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProductUOMRatio?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n getExchangeRate(base_currency, foreign_currency) {\r\n return this.http.get(this.baseUrl + 'api/Comman/Get_ExchangeRate?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&base_currency=' + base_currency + '&foreign_currency=' + foreign_currency);\r\n }\r\n getGetSalesApprovers() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetSalesApprovers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getGetPurchaseApprovers() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetPurchaseApprovers?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Device Inventory=============\r\n getDeviceMaterialsByDeviceID(deviceid) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeviceMaterials?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&deviceid=' + deviceid);\r\n }\r\n postDeviceMaterial(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeviceMaterial', data);\r\n }\r\n deleteDeviceMaterial(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceMaterial?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For Master TPI Link =============\r\n getThirdPartyLinkIndex(searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ThirdPartyLinkIndex?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtxt=' + searchtxt);\r\n }\r\n postThirdPartyLink(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ThirdPartyLink', data);\r\n }\r\n getThirdPartyLinkByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ThirdPartyLinkByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteThirdPartyLink(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ThirdPartyLink?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n\r\n // For Device TPI Link =============\r\n getDeviceThirdPartyLinkIndex(deviceid) {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_DeviceThirdPartyLinks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&deviceid=' + deviceid);\r\n }\r\n postDeviceThirdPartyLink(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_DeviceThirdPartyLink', data);\r\n }\r\n deleteDeviceThirdPartyLink(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_DeviceThirdPartyLink?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getTPILinks() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTPILinks?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLoanType(category) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetLoanType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&category=' + category);\r\n }\r\n getTDSTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetTDSType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCompanyTrades() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCompanyTrades?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getLeaveCount(fromdate, halfday1, todate, halfday2) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetLeaveTotal?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + fromdate + '&halfday1=' + halfday1 + '&todate=' + todate + '&halfday2=' + halfday2);\r\n }\r\n // For Company Register Types=============\r\n getRegisterTypeIndex() {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Get_RegisterType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postRegisterType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Ownership/Postt_RegisterType', data);\r\n }\r\n getRegisterTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Ownership/Gett_RegisterTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n deleteRegisterType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Ownership/Delete_RegisterType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getGenericGLTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetGenericGLType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getEmpAwardTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetEmployeeAwardType?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getCOAList(type) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetCOA?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n getEmployeeAdHocPayRef(empid, ref_type, searchtxt) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetEmployeeAdHocPayRef?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&empid=' + empid + '&ref_type=' + ref_type + '&searchtxt=' + searchtxt);\r\n }\r\n getWebsiteVendors(type) {\r\n return this.http.get(this.baseUrl + 'api/Comman/GetWebsiteVendors?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&type=' + type);\r\n }\r\n getProductDetailTypes() {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDetailTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n getProductDetailTypeHdrs(detail_type) {\r\n return this.http.get(this.baseUrl + 'api/ListHelper/GetProductDetailTypeHdrs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&detail_type=' + detail_type);\r\n }\r\n // For Company Trades=============\r\n getCompanyTradeIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_CompanyTrades?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getCompanyTradeIndexByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_CompanyTradeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postCompanyTrade(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_CompanyTrade', data);\r\n }\r\n deleteCompanyTrade(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_CompanyTrade?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Item Detail Type=============\r\n getProductDetailTypeIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProductDetailTypes?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getProductDetailTypeByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProductDetailTypeByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProductDetailType(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProductDetailType', data);\r\n }\r\n deleteProductDetailType(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProductDetailType?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n // For Item Detail Type Hdrs=============\r\n getProductDetailTypeHdrIndex() {\r\n return this.http.get(this.baseUrl + 'api/Master/Get_ProductDetailTypeHdrs?companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&description=');\r\n }\r\n getProductDetailTypeHdrByID(id) {\r\n return this.http.get(this.baseUrl + 'api/Master/Gett_ProductDetailTypeHdrByID?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n postProductDetailTypeHdr(val) {\r\n var data = JSON.stringify(val);\r\n return this.http.post(this.baseUrl + 'api/Master/Postt_ProductDetailTypeHdr', data);\r\n }\r\n deleteProductDetailTypeHdr(id) {\r\n return this.http.delete(this.baseUrl + 'api/Master/Delete_ProductDetailTypeHdr?id=' + id + '&companyid=' + this.userprofile.companyid + '&actionby=' + this.userprofile.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss'));\r\n }\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as CryptoJS from 'crypto-js';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ConversionService {\r\n constructor() { }\r\n\r\n //The set method is use for encrypt the value.\r\n set(keys, value) {\r\n var key = CryptoJS.enc.Utf8.parse(keys);\r\n var iv = CryptoJS.enc.Utf8.parse(keys);\r\n var encrypted = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(value.toString()), key,\r\n {\r\n keySize: 128 / 8,\r\n iv: iv,\r\n mode: CryptoJS.mode.CBC,\r\n padding: CryptoJS.pad.Pkcs7\r\n });\r\n\r\n return encrypted.toString();\r\n }\r\n\r\n //The get method is use for decrypt the value.\r\n get(keys, value) {\r\n var key = CryptoJS.enc.Utf8.parse(keys);\r\n var iv = CryptoJS.enc.Utf8.parse(keys);\r\n var decrypted = CryptoJS.AES.decrypt(value, key, {\r\n keySize: 128 / 8,\r\n iv: iv,\r\n mode: CryptoJS.mode.CBC,\r\n padding: CryptoJS.pad.Pkcs7\r\n });\r\n\r\n return decrypted.toString(CryptoJS.enc.Utf8);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject, Subscription } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class Events {\r\n\r\n private channels: { [key: string]: Subject; } = {};\r\n\r\n subscribe(topic: string, observer: (_: any) => void): Subscription {\r\n if (!this.channels[topic]) {\r\n this.channels[topic] = new Subject();\r\n }\r\n\r\n return this.channels[topic].subscribe(observer);\r\n }\r\n\r\n publish(topic: string, data: any): void {\r\n const subject = this.channels[topic];\r\n if (!subject) {\r\n // Or you can create a new subject for future subscribers\r\n return;\r\n }\r\n\r\n subject.next(data);\r\n }\r\n\r\n\r\n destroy(topic: string): null {\r\n const subject = this.channels[topic];\r\n if (!subject) {\r\n return;\r\n }\r\n\r\n subject.complete();\r\n delete this.channels[topic];\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Injectable()\r\nexport class ExcelService {\r\n\r\n constructor() { }\r\n\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\r\n\r\n const myworksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n const myworkbook: XLSX.WorkBook = { Sheets: { 'data': myworksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(myworkbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n private saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + '_exported' + EXCEL_EXTENSION);\r\n }\r\n}","import { DatePipe } from '@angular/common';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Injectable, Input } from '@angular/core';\r\nimport { throwError } from 'rxjs';\r\nimport { environment } from '../../../environments/environment';\r\nimport { Events } from './events.service';\r\n\r\n// import { ToastController } from '@angular/common';\r\n// import { AngularFireDatabase } from 'angularfire2/database';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExportDataServices {\r\n baseUrl = environment.API_URL;\r\n appname = environment.APP_NAME;\r\n isLoading: boolean;\r\n objCompId: any;\r\n userdata: any;\r\n exportURL: any;\r\n @Input('params') params;\r\n constructor(private http: HttpClient, private event: Events, private datepipe: DatePipe) {\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n this.event.subscribe('event:logout', (event: any) => {\r\n environment.production ? '' : console.log('event status' + event.data.from);\r\n this.userdata = JSON.parse(localStorage.getItem(this.appname + 'userprofile'));\r\n });\r\n environment.production ? '' : console.log('exportdata');\r\n }\r\n\r\n getRegions() {\r\n return this.http.get(this.baseUrl + 'api/Public/GetRegions');\r\n }\r\n export() {\r\n if (this.params.from == 'index') {\r\n if (this.params.typename == 'LedgerIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&coa=' + this.params.coa + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'JournalIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'refno=' + this.params.refno + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PayrollPaymentIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'search_text=' + this.params.searchtext + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&payroll_id=' + this.params.payroll_id + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'InventoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&serilized=' + this.params.serilized + '&category=' + this.params.category + '&deptid=' + this.params.deptid + '&status=' + this.params.status + '&type=' + this.params.type + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'EstimateIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customerstatement') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'customerid=' + this.params.customerid + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'SalesOrderIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&type=' + this.params.type + '&txntype=' + this.params.txntype + '&tpsync=' + this.params.tpsync + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'COAIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&account_type=' + this.params.account_type + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'SupplierIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'type=' + this.params.type + '&islocal=' + this.params.islocal + '&searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'POIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&type=' + this.params.type + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&localpo=' + this.params.localpo + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'PIIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'RFQIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate +'&type='+ this.params.type + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'LeadIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&status=' + this.params.status + '&salesperson=' + this.params.salesperson + '&country=' + this.params.country + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CustomerIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&level=' + this.params.level + '¤cy=' + this.params.currency + '&type=' + this.params.type + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'QuoteIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&status=' + this.params.status + '&salesrep=' + this.params.salesrep + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'StandingOrderIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchTxt + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&routeid=' + this.params.routeid + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CustomDeclarationIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'InvoiceIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&status=' + this.params.status + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ContractIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&categoryid=' + this.params.categoryid + '&subcategoryid=' + this.params.subcategoryid + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'Checklistgroups') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&type=' + this.params.type + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CategoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'service=' + this.params.isservice + '&desc=' + this.params.desc + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ServiceCategoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'TicketStatusIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&code=' + this.params.code + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'DisputeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtext + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'StaggingEmails') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtext + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'DepartmentIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'service=' + this.params.isservice + '&desc=' + this.params.desc + '&status=' + this.params.status + '&code=' + this.params.code + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'InventoryTransferIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'reqno=' + this.params.reqno + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'InventoryAdjIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'adjno=' + this.params.adjno + '&status=' + this.params.status + '&adjtype=' + this.params.adjtype + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'Checklists') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'groupid=' + this.params.group + '&displayname=' + this.params.displayname + '&description=' + this.params.description + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'BinTemplateIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&active=' + this.params.active + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'ServiceItemIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&page_number=' + this.params.pg + '&serilized=' + this.params.serilized + '&supplier=' + this.params.supplier + '&category=' + this.params.category + '&deptid=' + this.params.deptid + '&status=' + this.params.status + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'PricingBatchIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'ProdBPCIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } \r\n else if (this.params.typename == 'ProductUOMMatrix') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'InventoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + + '?' + 'page_number=' + this.params.page + '&grid_page_size=' + this.params.limit + '&searchtxt=' + this.params.searchtxt + '&serilized=' + this.params.serilized + '&category=' + this.params.category + '&deptid=' + this.params.deptid + '&status=' + this.params.status + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'MilestoneIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'projid=' + this.params.projid + '&msno=' + this.params.msno + '&name=' + this.params.name + '&customerid=' + this.params.customerid + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'SnagIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + '&module_id=' + this.params.moduleid + '&assignto=' + this.params.assignto + '&name=' + this.params.name + '&customerid=' + this.params.customerid + '&status=' + this.params.status + '&taskid=' + this.params.taskid + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&priority=' + this.params.priority + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'TaskIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&projid=' + this.params.projid + '&customerid=' + this.params.customerid + '&status=' + this.params.status + '&assignto=' + this.params.assignto + '&moduleid=' + this.params.moduleid + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&priority=' + this.params.priority + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'TestCaseIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ProjInvBatches') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.name + '&projectid=' + this.params.projid + '&fromdate=' + this.params.fdate + '&todate=' + this.params.edate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ProjectTypeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } \r\n else if (this.params.typename == 'TaskTypeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } \r\n else if (this.params.typename == 'OfficeClockings') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?employeeid_id=' + this.params.empid + '&status=' + this.params.status + '&un=' + this.userdata.company_web_token + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'EmployeeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&status=' + this.params.status + '&type=' + this.params.type + '&paytype=' + this.params.paytype + '&designation_id=' + this.params.designation_id + '&department_id=' + this.params.department_id + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'LeaveIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&leavetype=' + this.params.leavetype + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'clockinout') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?employeeid_id=' + this.params.empid + '&status=' + this.params.status + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'LeaveConfigIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&type=' + this.params.type + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PublicHolidayIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&finyear=' + this.params.finyear + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ClockingReasonIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CustomerFeedbacks') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' +'customerid=' + this.params.customerid + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'EmployeeDesignationIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'InventoryCountIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'refno=' + this.params.refno + '&reason=' + this.params.reason + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'SalaryComponentIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'type=' + this.params.type + '&description=' + this.params.description + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'WeeklyOffIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'departmentid=' + this.params.departmentid + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CompanyShifts') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'JobOpeningIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'LoanAppIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'TicketIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&tags=' + this.params.tags + '&assignto=' + this.params.assignto + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ExpenseIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&type=' + this.params.expensetype + '&tpsync=' + this.params.tpsynch + '&billorreim=' + this.params.billorreim + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ExpenseReqs') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&submittedby=' + this.params.submittedby + '&reimbursable=' + this.params.reimbursable + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'FinancialCharges') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'customerid=' + this.params.customerid +'&asondate' + this.params.asondate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'Technotes') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?desc=' + this.params.desc + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'TicketRecommdations') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ContractTypeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssetRequests') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?requestedby=' + this.params.requestedby + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssetLocationIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssetCategoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssetUsers') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?name=' + this.params.name + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssesmentParticulars') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?type=' + this.params.type + '&description=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'JobAplicationIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'skillset=' + this.params.skillset + '&name=' + this.params.name + '&email=' + this.params.email + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'EmployeeAssesmentIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'employeeid=' + this.params.employeeid + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CompanyLegalContracts') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?name=' + this.params.name + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PayrollIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtext=' + this.params.searchtext + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'LeaveCategoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'EmpAdvanceIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PRIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'type=' + this.params.type + '&searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ShiptoIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ExpenseCategoryIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'SRIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'type=' + this.params.salesType + '&searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'DeliveryRouteIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'description=' + this.params.description + '&code=' + this.params.code + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssemblyIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&assno=' + this.params.assno + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'BinIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'desc=' + this.params.desc + '&code=' + this.params.code + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'IncomeIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&status=' + this.params.status + '&fdate=' + this.params.fromdate + '&edate=' + this.params.enddate + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'SalaryIncreaseStructureIndex') {\r\n this.exportURL = environment.API_URL + 'IdxExport/' + this.params.typename + '?' + 'departmentid=' + this.params.departmentid + '&designationid=' + this.params.designationid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n } else if (this.params.from == 'rfqcomparison') {\r\n this.exportURL = environment.API_URL + 'Export/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + this.params.ids + '&file_type=' + this.params.file_type;\r\n } else {\r\n if (this.params.typename == 'ticketsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'customer=' + this.params.customer + '&proj=' + this.params.projid + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'invoiceagingsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '¤cy=' + this.params.currency + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customerwalletbalance') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customerwallethistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext + '&trantype=' + this.params.trantype + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'chequesreceived') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'chequesissued') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'payrollsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'countdetails') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&searchtxt=' + this.params.searchtxt + '&counted=' + this.params.counted + '&variance=' + this.params.variance + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'assesments') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&assid=' + this.params.assid + '&employeeid=' + this.params.employeeid + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'pensioncontributions' || this.params.typename == 'insurancecontributions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&id=' + this.params.id + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'pensioninsurcontributions' || this.params.typename == 'epfcontributions' || this.params.typename == 'esiccontributions' || this.params.typename == 'payrollsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&empid=' + this.params.empid + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customerpayments') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtext + '¤cy=' + this.params.currency + '&mop=' + this.params.mop + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'paymentspaid') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&searchtext=' + this.params.searchtxt + '¤cy=' + this.params.currency + '&mop=' + this.params.mop + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'receivebol') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&bol=' + this.params.bol + '&pon=' + this.params.pon + '&ilc=' + this.params.ilc + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'rfqreport') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&ids=' + this.params.ids + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'journals') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&coa=' + this.params.coa + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type + '&status=' + this.params.status;\r\n } else if (this.params.typename == 'bslc') {\r\n this.exportURL = environment.API_URL + 'RptExport/bslc?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.asondate + '&period=' + this.params.period + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'bsyc') {\r\n this.exportURL = environment.API_URL + 'RptExport/bsyc?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&asondate=' + this.params.asondate + '&period=' + this.params.period + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'deletedtransactions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'audittrails') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&module=' + this.params.module + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'internaltransfers') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'lotexpiry') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'prodcostingreview') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.deptid + '&categoryid=' + this.params.catid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'assemblysalesbymonth') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'assname=' + this.params.assname + '&yr=' + this.params.yr + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'bolcostingexport') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'bol=' + this.params.bol + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'salesbyyear') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.deptid + '&category=' + this.params.category + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'salesbymonth') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.deptid + '&category=' + this.params.category + '&year=' + this.params.year + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'materialdj') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&trantype=' + this.params.trantype + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'sopickstatus') {\r\n //not used\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'orderno=' + this.params.orderno + '&orderref=' + this.params.orderref + '&ilc=' + this.params.ilc + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'invvaluebyinvoice') {\r\n //not used\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'asondate=' + this.params.asondate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'transactiontpsync') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&txttype=' + this.params.txttype + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'womaterialspending') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&vpsync=' + this.params.vpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ticketsinventorycost') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'materialcosting') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'month=' + this.params.month + '&year=' + this.params.year + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'inventorycountsheet') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&id=' + this.params.id + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'employeejobapps') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&position=' + this.params.position + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeshistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&gender=' + this.params.gender + '&email=' + this.params.email + '&paytype=' + this.params.paytype + '&etype=' + this.params.etype + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeespaysummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeanniversaries') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&gender=' + this.params.gender + '&email=' + this.params.email + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeebirthdays') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&gender=' + this.params.gender + '&email=' + this.params.email + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeworkpermits') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeaccesscards') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.ename + '&code=' + this.params.code + '&fromdate=' + this.params.fdate + '&todate=' + this.params.edate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeconcessionpasses') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeinsurances') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeepensions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeappraisals') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeedisciplinarylog') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeehurricanepocs') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'name=' + this.params.name + '&code=' + this.params.code + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'techhours') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'tech=' + this.params.tech + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&department=' + this.params.department + '&designation=' + this.params.designation + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'techhourdetail') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'tech=' + this.params.tech + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&department=' + this.params.department + '&designation=' + this.params.designation + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'techticketlogs') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'tech=' + this.params.tech + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.enddate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'catalogsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.deptid + '&categoryid=' + this.params.catid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'inventorybybin') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.cat + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'serialsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.deptid + '&categoryid=' + this.params.catid + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'bolsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'bol=' + this.params.bol + '&po=' + this.params.po + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'creditusesummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'customerid=' + this.params.customerid + '&seldate=' + this.params.seldate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'invoiceshistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'invno=' + this.params.qteno + '&customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeleavebalance') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&empid=' + this.params.empid + '&yr=' + this.params.yr + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'quoteshistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'qteno=' + this.params.qteno + '&customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'salesbycategory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'customer=' + this.params.customer + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&tdate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'vendoragingsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&supplierid=' + this.params.supplierid + '¤cy=' + this.params.currency + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'expensehistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'expensesummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'expno=' + this.params.expno + '&supplierid=' + this.params.supplierid + '&type=' + this.params.type + '&createby=' + this.params.createby + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'purchaseordersummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'prodreplunishment') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.dept + '&supplierid=' + this.params.supplierid + '&categoryid=' + this.params.cat + '&van=' + this.params.van + '&minmax=' + this.params.minmax + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'prodorderhistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'prodmovementhistory') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&deptid=' + this.params.deptid + '&categoryid=' + this.params.catid + '&trantype=' + this.params.trantype + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'revenuebyproducts') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&deptid=' + this.params.dept + '&categoryid=' + this.params.category + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'landedcostaudit') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&pon=' + this.params.pon + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'salesvscostsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'stockcostreport') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&category=' + this.params.catid + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'stocksummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&description=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'stockaudit') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'deptid=' + this.params.dept + '&categoryid=' + this.params.cat + '&printcount=' + this.params.printcount + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'productspriceauditing') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'timesheet') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?employeeid_id=' + this.params.employeeid_id + '&projid=' + this.params.project_id + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'unbilledtimelogs') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&customerid=' + this.params.customerid + '&projid=' + this.params.projid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'joborders') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'pon=' + this.params.orderno + '&name=' + this.params.customerid + '&status=' + this.params.status + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'jobinvoices') { \r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'num=' + this.params.num + '&pon=' + this.params.pon + '&name=' + this.params.name + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'billsagingsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&searchtxt=' + this.params.searchtxt + '¤cy=' + this.params.currency + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'supplieragingsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '¤cy=' + this.params.currency + '&yr=' + this.params.yr + '&mon=' + this.params.mon + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customeragingsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '¤cy=' + this.params.currency + '&yr=' + this.params.yr + '&mon=' + this.params.mon + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'hbalancesheet') {\r\n this.exportURL = environment.API_URL + 'RptExport/hbalancesheet?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'vbalancesheet') {\r\n this.exportURL = environment.API_URL + 'RptExport/vbalancesheet?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'pl') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'trialbalance') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'notcounteditems') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'countid=' + this.params.countid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'dailytransactions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&ordertype=' + this.params.ordertype + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'sotransactions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'invbalance') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'asondate=' + this.params.asondate + 'onhandonly=' + this.params.onhandonly + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'invvaluebyinvoice') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'asondate=' + this.params.asondate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'sopickstatus') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'orderno=' + this.params.orderno + '&orderref=' + this.params.orderref + '&ilc=' + this.params.ilc + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'attendancemonthly') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'yr=' + this.params.yr + '&mon=' + this.params.mon + '&empid=' + this.params.empid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'contractsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&filterapplyto=' + this.params.dtfilterapplyto + '&categoryid=' + this.params.categoryid + '&status=' + this.params.status + '&fdate=' + this.params.fdate + '&edate=' + this.params.edate + '&tpsync=' + this.params.tpsync + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'customerdevices') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'employeeroasterdetails') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'onlinepayments') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'searchtxt=' + this.params.searchtxt + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&status=' + this.params.status + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'recenttransactions') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'servicecontractticketsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'contractid=' + this.params.contractid + '&categoryid=' + this.params.categoryid + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'snagsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'tasksummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'worklogsummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&empid=' + this.params.empid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'inventorycountdiscrepancy') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'ilc=' + this.params.ilc + '&desc=' + this.params.desc + '&binid=' + this.params.binid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'empshiftlog') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&searchtxt=' + this.params.searchtxt + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'fsnanalysis') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&searchtxt=' + this.params.searchtxt + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'empearlygoinglatecoming') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&empid=' + this.params.empid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n else if (this.params.typename == 'printdueinvoices') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + '&customerid=' + this.params.customerid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'customerstatement') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?' + 'customerid=' + this.params.customerid + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'clockinout') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?employeeid_id=' + this.params.empid + '&status=' + this.params.status + '&fromdate=' + this.params.fdate + '&todate=' + this.params.tdate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CompanyShifts') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?description=' + this.params.description + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'Technotes') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?desc=' + this.params.desc + '&type=' + this.params.type + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'ticketrecomm') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssetRequests') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?requestedby=' + this.params.requestedby + '&desc=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'AssesmentParticulars') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?type=' + this.params.type + '&description=' + this.params.desc + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'CompanyLegalContracts') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?name=' + this.params.name + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PayrollPaymentTransferExport') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?payrollid=' + this.params.id + '&bankid=' + this.params.bankid + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'PurchaseInvoiceSummary') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?searchtxt=' + this.params.searchtxt + '&type=' + this.params.type + '&status=' + this.params.status + '&fromdate=' + this.params.fromdate + '&todate=' + this.params.todate + '&companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n } else if (this.params.typename == 'GLMapping') {\r\n this.exportURL = environment.API_URL + 'RptExport/' + this.params.typename + '?companyid=' + this.userdata.companyid + '&un=' + this.userdata.company_web_token + '&actionby=' + this.userdata.email + '&actiondate=' + this.datepipe.transform(new Date(), 'yyy-MM-dd HH:mm:ss') + '&file_type=' + this.params.file_type;\r\n }\r\n }\r\n window.open(this.exportURL, '_blank');\r\n }\r\n\r\n handleError(error: HttpErrorResponse) {\r\n if (error.error instanceof ErrorEvent) {\r\n console.error('An error occurred:', error.error.message);\r\n } else {\r\n console.error(`Backend returned code ${error.status}, ` + `body was: ${error.error.message}`);\r\n }\r\n return throwError('Something went wrong. Please try again later.');\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core'; \r\nimport { HttpResponse } from '@angular/common/http'; \r\n \r\n@Injectable({ \r\n providedIn: 'root' \r\n}) \r\nexport class HttpCacheService { \r\n \r\n private requests: any = { }; \r\n \r\n constructor() { } \r\n \r\n put(url: string, response: HttpResponse): void { \r\n this.requests[url] = response; \r\n } \r\n \r\n get(url: string): HttpResponse | undefined { \r\n return this.requests[url]; \r\n } \r\n \r\n invalidateCache(): void { \r\n this.requests = { }; \r\n } \r\n} ","import { Injectable } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class LanguageService {\r\n private languageSubject = new BehaviorSubject(localStorage.getItem('language') || 'en');\r\n\r\n constructor(private translate: TranslateService) {\r\n \r\n }\r\n \r\n changeLanguage(language: string) {\r\n this.languageSubject.next(language);\r\n localStorage.setItem('language', language);\r\n }\r\n \r\n getCurrentLanguage() {\r\n return this.languageSubject.asObservable();\r\n }\r\n}","\r\n\r\nexport const MY_DATE_FORMATS = {\r\n\r\n parse: {\r\n dateInput: 'YYYY-MM-DD',\r\n },\r\n display: {\r\n dateInput: '',\r\n monthYearLabel: 'MMMM YYYY',\r\n dateA11yLabel: 'LL',\r\n monthYearA11yLabel: 'MMMM YYYY'\r\n },\r\n}; ","import { Injectable, HostListener, Inject, OnInit } from '@angular/core';\r\nimport { BehaviorSubject, Observable, Subscriber } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AppServices } from './app.services';\r\nimport { WINDOW } from \"./windows.service\";\r\n// Menu\r\nexport interface Menu {\r\n\tpath?: string;\r\n\ttitle?: string;\r\n\ticon?: string;\r\n\ttype?: string;\r\n\tbadgeType?: string;\r\n\tbadgeValue?: string;\r\n\tactive?: boolean;\r\n\tbookmark?: boolean;\r\n\tchildren?: Menu[];\r\n}\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root'\r\n})\r\n\r\nexport class NavService implements OnInit {\r\n\tpublic menuItems;\r\n\texportMenu: any;\r\n\tpublic screenWidth: any;\r\n\tpublic collapseSidebar: boolean = false;\r\n\tappname = environment.APP_NAME;\r\n\tconstructor(@Inject(WINDOW) private window, private service: AppServices) {\r\n\t\tthis.onResize();\r\n\t\tif (this.screenWidth < 991) {\r\n\t\t\tthis.collapseSidebar = true;\r\n\t\t}\r\n\t\tif (localStorage.getItem(this.appname + 'menu')) {\r\n\t\t\tthis.menuItems = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n\t\t}\r\n\r\n\t\t// this.service.getMenuList().subscribe(res => {\r\n\t\t// \tenvironment.production ? '' : console.log('menu', res);\r\n\t\t// \tthis.exportMenu = res;\r\n\t\t// \tif (localStorage.getItem(this.appname + 'menu') != null) {\r\n\t\t// \t\tthis.menuItems = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n\t\t// \t\tthis.menuItems = JSON.parse(localStorage.getItem(this.appname + 'menu'));\r\n\t\t// \t\treturn;\r\n\t\t// \t}\r\n\r\n\t\t// \tthis.menuItems = res;\r\n\t\t// })\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\r\n\t}\r\n\r\n\t// Windows width\r\n\t@HostListener(\"window:resize\", ['$event'])\r\n\tonResize(event?) {\r\n\t\tthis.screenWidth = window.innerWidth;\r\n\t}\r\n\r\n\tMENUITEMS: Menu[] = [\r\n\r\n\t\t{\r\n\t\t\tpath: '/dashboard', title: 'Dashboard', icon: 'eb-home', type: 'link', badgeType: 'primary', active: false\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/insights', title: 'Insights', icon: 'eb-insights', type: 'link', badgeType: 'primary', active: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Accounts', icon: 'eb-accounts', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/chartofaccounts', title: 'Chart of Accounts', type: 'link' },\r\n\t\t\t\t{ path: '/customers', title: 'Customers', type: 'link' },\r\n\t\t\t\t{ path: '/suppliers', title: 'Suppliers', type: 'link' },\r\n\t\t\t\t{ path: '/financialstatements', title: 'Financial Statements', type: 'link' },\r\n\t\t\t\t{ path: '/journalentries', title: 'Journal Entries', type: 'link' },\r\n\t\t\t\t{ path: '/ledgers', title: 'Ledgers', type: 'link' },\r\n\t\t\t\t{ path: '/arcustomerstatements', title: 'AR Customer Statements', type: 'link' },\r\n\t\t\t\t{ path: '/batchtransactions', title: 'Review Transactions', type: 'link' },\r\n\t\t\t\t{ path: '/customerdeposits', title: 'Customer Deposits', type: 'link' },\r\n\t\t\t\t{ path: '/chequebooks', title: 'Cheque Books', type: 'link' },\r\n\t\t\t\t{ path: '/vendorpayments', title: 'Supplier Payments', type: 'link' },\r\n\t\t\t\t{ path: '/paybills', title: 'Bill Payments', type: 'link' },\r\n\t\t\t\t{ path: '/receivepayments', title: 'Receive Payments', type: 'link' },\r\n\t\t\t\t{ path: '/financialcharges', title: 'Financial Charges', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Project Manager', icon: 'eb-projectmanager', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/projects', title: 'Projects', type: 'link' },\r\n\t\t\t\t{ path: '/projecttask', title: 'Project Tasks', type: 'link' },\r\n\t\t\t\t{ path: '/snagbags', title: 'snag bugs', type: 'link' },\r\n\t\t\t\t{ path: '/testcases', title: 'Test Cases', type: 'link' },\r\n\t\t\t\t{ path: '/unbilledhours', title: 'Unbilled Hours', type: 'link' },\r\n\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Service Manager', icon: 'eb-service-manager', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/servicecontracts', title: 'Service Contracts', type: 'link' },\r\n\t\t\t\t{ path: '/servicetickets', title: 'Service Tickets', type: 'link' },\r\n\t\t\t\t{ path: '/servicelineitems', title: 'Service Line Items', type: 'link' },\r\n\t\t\t\t{ path: '/checklistgroup', title: 'Checklist Group', type: 'link' },\r\n\t\t\t\t{ path: '/checklists', title: 'Checklists', type: 'link' },\r\n\t\t\t\t{ path: '/noteslist', title: 'Notes List', type: 'link' },\r\n\t\t\t\t{ path: '/techrecommendations', title: 'Tech Recommendations', type: 'link' },\r\n\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Purchase', icon: 'eb-purchase', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/Psuppliers', title: 'Suppliers', type: 'link' },\r\n\t\t\t\t{ path: '/expenses', title: 'Expenses/Bills', type: 'link' },\r\n\t\t\t\t{ path: '/rfqlist', title: 'Request for Quotes', type: 'link' },\r\n\t\t\t\t{ path: '/purchaseorder', title: 'Purchase Order', type: 'link' },\r\n\t\t\t\t{ path: '/purchaserequest', title: 'Purchase Request', type: 'link' },\r\n\t\t\t\t{ path: '/purchaserequestitems', title: 'Purchase Request Items', type: 'link' },\r\n\t\t\t\t{ path: '/customdeclarations', title: 'Custom Declarations', type: 'link' },\r\n\t\t\t\t{ path: '/shipto', title: 'ShipTo', type: 'link' },\r\n\t\t\t\t{ path: '/bolsummary', title: 'BOL Summary', type: 'link' },\r\n\t\t\t\t{ path: '/receiveitembybol', title: 'Recieve Items by BOL', type: 'link' },\r\n\t\t\t\t{ path: '/inventoryreplenishment', title: 'Inventory Replenishment', type: 'link' },\r\n\t\t\t\t{ path: '/purchaseinvoices', title: 'Purchase Invoices', type: 'link' },\r\n\t\t\t\t{ path: '/purchasepaybills', title: 'Bill Payments', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Sales', icon: 'eb-sales', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/Leads', title: 'Leads', type: 'link' },\r\n\t\t\t\t{ path: '/customers', title: 'Customers', type: 'link' },\r\n\t\t\t\t{ path: '/Invoices', title: 'Invoices', type: 'link' },\r\n\t\t\t\t{ path: '/Estimates', title: 'Quote/Estimates', type: 'link' },\r\n\t\t\t\t{ path: '/Salesorders', title: 'Sales Orders', type: 'link' },\r\n\t\t\t\t{ path: '/Salesreq', title: 'Sales Requests', type: 'link' },\r\n\t\t\t\t{ path: '/Salesreqitems', title: 'Sales Request Items', type: 'link' },\r\n\t\t\t\t{ path: '/Receivepay', title: 'Recieve Payments', type: 'link' },\r\n\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Inventory', icon: 'eb-inventory', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/inventoryadjustments', title: 'Inventory Adjustments', type: 'link' },\r\n\t\t\t\t{ path: '/products', title: 'Products', type: 'link' },\r\n\t\t\t\t{ path: '/assemblies', title: 'Assemblies', type: 'link' },\r\n\t\t\t\t{ path: '/manualcount', title: 'Manual Count', type: 'link' },\r\n\t\t\t\t{ path: '/categories', title: 'Categories', type: 'link' },\r\n\t\t\t\t{ path: '/TransferRequest', title: 'Transfer Request', type: 'link' },\r\n\t\t\t\t{ path: '/SubCategories', title: 'Sub Categories', type: 'link' },\r\n\t\t\t\t{ path: '/BinLocations', title: 'Bin Locations', type: 'link' },\r\n\t\t\t\t{ path: '/Pricings', title: 'Pricings', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Assets', icon: 'eb-assets', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/assets', title: 'Assets', type: 'link' },\r\n\t\t\t\t{ path: '/assetsrequest', title: ' ', type: 'link' },\r\n\t\t\t\t{ path: '/assetcontracts', title: 'Asset Contracts', type: 'link' },\r\n\t\t\t\t{ path: '/assetusers', title: 'Asset Users', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'HR', icon: 'eb-hr', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/employees', title: 'Employees', type: 'link' },\r\n\t\t\t\t{ path: '/publicholidays', title: 'Public Holidays', type: 'link' },\r\n\t\t\t\t{ path: '/leavesconfigurations', title: 'Leaves Configurations', type: 'link' },\r\n\t\t\t\t{ path: '/leavesvacations', title: 'Leaves/ Vacations', type: 'link' },\r\n\t\t\t\t{ path: '/clockings', title: 'Job Site Clock-In/Out', type: 'link' },\r\n\t\t\t\t{ path: '/sitelogs', title: 'Site Logs', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Payroll', icon: 'eb-payroll', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/payroll', title: 'Payroll', type: 'link' },\r\n\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/timeline', title: 'Scheduler', icon: 'eb-scheduler', type: 'link', badgeType: 'primary', active: false\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Loyality Program', icon: 'eb-loyalty-prorgams', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/productslist', title: 'Products', type: 'link' },\r\n\t\t\t\t{ path: '/customerlist', title: 'Customers List', type: 'link' },\r\n\t\t\t\t{ path: '/transactions', title: 'Transactions', type: 'link' },\r\n\t\t\t\t{ path: '/programslist', title: 'Programs List', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Documents', icon: 'eb-documents', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/dragdropfiles', title: 'Drag Drop Files', type: 'link' },\r\n\t\t\t\t{ path: '/documentlist', title: 'Document List', type: 'link' },\r\n\t\t\t\t{ path: '/documenttypes', title: 'Document Types', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Tools', icon: 'eb-tools', type: 'sub', active: false, children: [\r\n\t\t\t\t{ path: '/manualjobs', title: 'Manual Jobs', type: 'link' },\r\n\t\t\t\t{ path: '/printsequence', title: 'Print Sequence', type: 'link' },\r\n\t\t\t\t{ path: '/emailers', title: 'Emailers', type: 'link' },\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Reports', icon: 'eb-reports', type: 'sub', active: false, children: [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Company Financials', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/balancesheet', title: 'Balance Sheet', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/profitloss', title: 'Profit Loss', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/trailbalance', title: 'Trail Balance', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/balancesheetyearlycomparison', title: 'Balance Sheet Yearly Comparison ', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/Balancesheetlikecomparison', title: 'Balance Sheet Like Comparison', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Accounts', type: 'sub', active: false, children: [\r\n\t\t\t\t\t\t{ path: '/acc-ledgers', title: 'Ledgers', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/acc-journalentries', title: 'Journal Entries', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/acc-audittrail', title: 'Audit Trail', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/acc-deletedtransactions', title: 'Deleted Transactions', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Customer Receivable', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/customeragingsummary', title: 'A/R Aging Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/creditusesummary', title: 'Credit Use Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/invoices', title: 'Invoices', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/quotesestimates', title: 'Quotes/Estimates', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/salesbycategory', title: 'Sales by Category', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Vendors Payables', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/apagingsummary', title: 'A/P Aging Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/expenseshistory', title: 'Expenses History', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/expensessummary', title: 'Expenses Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/purchaseorders', title: 'Purchase Orders', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Inventory', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/replenishment', title: 'Replenishment', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/orderhistorybyproduct', title: 'Order History by Product', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorymovementhistory', title: 'Inventory Movement History', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/revenuebyproduct', title: 'Revenue by Product', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/landedcostaudit', title: 'Landed Cost Audit', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/salesvslandedcostsummary', title: 'Sales vs Landed Cost Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/stockcostsummary', title: 'Stock Cost Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/stocksummary', title: 'Stock Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/manualstockaudit', title: 'Manual Stock Audit', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/priceauditing', title: 'Price Auditing', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/bolsummaryreport', title: 'BOL Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/productsserialsummary', title: 'Products Serial Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/catalogsummary', title: 'Catalog Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventoryvaluebyinvoices', title: 'Inventory Value by Invoices', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/pickuphistory', title: 'SO Delivery/Pickup History', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventoryadjustment', title: 'Inventory Adjustment', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorysalescountbymonth', title: 'Inventory Sales Count by Month', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorysalescountbyyear', title: 'Inventory Sales Count by Year', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorybybinlocations', title: 'Inventory by Bin Locations', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/armaterialcostsummary', title: 'Inventory Sales Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/womaterials', title: 'WO Materials', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorybalancereport', title: 'Inventory Balance Report', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/bolcostingexport', title: 'BOL Costing Export', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/assemblysalesbymonth', title: 'Assembly Sales by Month', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/lotexpiry', title: 'Lot Expiry', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/inventorycountdiscrepancy', title: 'Inventory Count Discrepancy', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/internaltransfer', title: 'Internal Transfer', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Transactions', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/dailytransactions', title: 'Daily Transactions', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/postransactions', title: 'POS Transactions', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/transactionssyncreport', title: 'Transactions Sync Report', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'Tasks/Tickets', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/ticketstimelogs', title: 'Tickets Time Logs', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/ticketsummary', title: 'Ticket Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/taskstimelogs', title: 'Task Time Logs', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/unbilledtimelogs', title: 'Unbilled Time Logs', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/orders', title: 'Project Orders', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/reportinvoices', title: 'Invoices', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/ticketsinventorycostexport', title: 'Tickets Inventory Cost Export', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/techhours', title: 'Tech Hours', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: 'HR Payroll', type: 'sub', children: [\r\n\t\t\t\t\t\t{ path: '/listofemployees', title: 'List of Employees', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/employeecostingsummary', title: 'Employee Costing Summary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/employeesanniversary', title: 'Employees Anniversary', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/employeesbirthday', title: 'Employees Birthday', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/workpermit', title: 'Work Permits', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/accesscards', title: 'Access Cards', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/concessionpasses', title: 'Concession Passes', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/insurance', title: 'Insurances', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/pensions', title: 'Pensions', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/appraisals', title: 'Appraisals', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/disciplinarylogs', title: 'Disciplinary Logs', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/hurricanecontacts', title: 'Hurricane Contacts', type: 'link' },\r\n\t\t\t\t\t\t{ path: '/jobapplications', title: 'Job Applications', type: 'link' },\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: 'Logout', path: '/auth/login', icon: 'fa fa-sign-out', type: 'link', active: false\r\n\t\t}\r\n\t];\r\n\t// Array\r\n\titems = new BehaviorSubject(this.MENUITEMS);\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationService {\r\n\r\n constructor(private toastr: ToastrService) { }\r\n\r\n Success(title) {\r\n this.toastr.success(title)\r\n }\r\n\r\n Error(title) {\r\n this.toastr.error(title)\r\n }\r\n\r\n Info(title) {\r\n this.toastr.info(title)\r\n }\r\n\r\n Warning(title) {\r\n this.toastr.warning(title)\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\nimport { DomSanitizer } from \"@angular/platform-browser\"; \r\n\r\n@Pipe({\r\n\r\n name: 'safe'\r\n\r\n})\r\n\r\nexport class SafePipe implements PipeTransform {\r\n\r\n constructor(private sanitizer: DomSanitizer) { }\r\n\r\n transform(url) {\r\n\r\n return this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n\r\n }\r\n\r\n}","import { isPlatformBrowser } from \"@angular/common\";\r\nimport { ClassProvider, FactoryProvider, InjectionToken, PLATFORM_ID, Injectable } from '@angular/core';\r\n\r\n/* Create a new injection token for injecting the window into a component. */\r\nexport const WINDOW = new InjectionToken('WindowToken');\r\n\r\n/* Define abstract class for obtaining reference to the global window object. */\r\nexport abstract class WindowRef {\r\n\r\n get nativeWindow(): Window | Object {\r\n throw new Error('Not implemented.');\r\n }\r\n\r\n}\r\n\r\n/* Define class that implements the abstract class and returns the native window object. */\r\n@Injectable()\r\nexport class BrowserWindowRef extends WindowRef {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n get nativeWindow(): Window | Object {\r\n return window;\r\n }\r\n\r\n}\r\n\r\n/* Create an factory function that returns the native window object. */\r\nexport function windowFactory(browserWindowRef: BrowserWindowRef, platformId: Object): Window | Object {\r\n if (isPlatformBrowser(platformId)) {\r\n return browserWindowRef.nativeWindow;\r\n }\r\n return new Object();\r\n}\r\n\r\n/* Create a injectable provider for the WindowRef token that uses the BrowserWindowRef class. */\r\nexport const browserWindowProvider: ClassProvider = {\r\n provide: WindowRef,\r\n useClass: BrowserWindowRef\r\n};\r\n\r\n/* Create an injectable provider that uses the windowFactory function for returning the native window object. */\r\nexport const windowProvider: FactoryProvider = {\r\n provide: WINDOW,\r\n useFactory: windowFactory,\r\n deps: [WindowRef, PLATFORM_ID]\r\n};\r\n\r\n/* Create an array of providers. */\r\nexport const WINDOW_PROVIDERS = [\r\n browserWindowProvider,\r\n windowProvider\r\n];","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule } from '@angular/router';\r\nimport { FeatherIconsComponent } from './components/feather-icons/feather-icons.component';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\r\nimport { ToggleFullscreenDirective } from \"./directives/fullscreen.directive\";\r\nimport { ContentLayoutComponent } from './layout/content-layout/content-layout.component';\r\nimport { NavService } from './service/nav.service';\r\nimport { WINDOW_PROVIDERS } from './service/windows.service';\r\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\r\nimport { RightSidebarComponent } from './components/right-sidebar/right-sidebar.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgMarqueeModule } from 'ng-marquee';\r\nimport { NgxCaptureModule } from 'ngx-capture';\r\nimport {NgxPhotoEditorModule} from \"ngx-photo-editor\";\r\nimport { LoginComponent } from '../components/auth/login/login.component';\r\nimport { TranslateModule, TranslateLoader } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n// Factory function to create the TranslateLoader\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http);\r\n}\r\n@NgModule({\r\n declarations: [\r\n ToggleFullscreenDirective,\r\n FeatherIconsComponent,\r\n FooterComponent,\r\n HeaderComponent,\r\n SidebarComponent,\r\n ContentLayoutComponent,\r\n BreadcrumbComponent,\r\n RightSidebarComponent,\r\n \r\n ],\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n FormsModule,\r\n NgbModule,\r\n NgMarqueeModule,\r\n NgxCaptureModule,\r\n NgxPhotoEditorModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient]\r\n }\r\n })\r\n ],\r\n providers: [ContentLayoutComponent,NavService, WINDOW_PROVIDERS,LoginComponent],\r\n exports: [FeatherIconsComponent, ToggleFullscreenDirective]\r\n})\r\nexport class SharedModule { }\r\n","export class categoryDB {\r\n static category = [\r\n {\r\n img: \"\",\r\n product_name: \"Headphones\",\r\n price: \"$20.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Honor Mobile\",\r\n price: \"$462.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Samsung LED TV\",\r\n price: \"$652.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Motorola Bluetooth\",\r\n price: \"$25.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Apple 6s\",\r\n price: \"$782.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Printer\",\r\n price: \"$4825.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Canon Camera\",\r\n price: \"$2461.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"High Quality Headphones\",\r\n price: \"$761.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Home Theater Speakers\",\r\n price: \"$672.00\",\r\n status: \"\",\r\n category: \"Electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Diamond Ring\",\r\n price: \"$237.00\",\r\n status: \"\",\r\n category: \"Jewellery\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Diamond Nacklace\",\r\n price: \"$3579.00\",\r\n status: \"\",\r\n category: \"Jewellery\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Diamond Earrings\",\r\n price: \"$3145.00\",\r\n status: \"\",\r\n category: \"Jewellery\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Night lamp\",\r\n price: \"$84.00\",\r\n status: \"\",\r\n category: \"furniture\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"men's shoes\",\r\n price: \"$67.00\",\r\n status: \"\",\r\n category: \"shoes\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Ledi's red top\",\r\n price: \"$234.00\",\r\n status: \"\",\r\n category: \"clothes\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"latest ledis shoes\",\r\n price: \"$357.00\",\r\n status: \"\",\r\n category: \"shoes\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Woman one pis\",\r\n price: \"$682.00\",\r\n status: \"\",\r\n category: \"clothes\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Mouse\",\r\n price: \"$24.00\",\r\n status: \"\",\r\n category: \"electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Coffee maker\",\r\n price: \"$9721.00\",\r\n status: \"\",\r\n category: \"electronics\",\r\n company:\"sanmol software\",\r\n },\r\n {\r\n img: \"\",\r\n product_name: \"Diamond Nacklace\",\r\n price: \"$3579.00\",\r\n status: \"\",\r\n category: \"Jewellery\",\r\n company:\"sanmol software\",\r\n },\r\n\r\n ]\r\n}\r\n","export class projectCategoryDB {\r\n static projectDB = [\r\n {\r\n l:\"PRJ1040\",\r\n TPCode:\"\",\r\n Name:\"west bay hospital\",\r\n CustomerName:\"Advance Fire & Plumbing\",\r\n PointofContact:\"IAN MORRISON \",\r\n HrsEstd:\"0.00\",\r\n HrsSpend:\"0.00\",\r\n StartDate:\"23-05-2022\",\r\n EndDate:\"25-05-2022\",\r\n CreateBy:\"nkagade@gmail.com\",\r\n Status: \"\"\r\n },\r\n \r\n ]\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n\r\n // production\r\n production: true,\r\n API_URL: 'https://api.ezybooks.net/',\r\n DOC_URL: 'https://ezybooks.net/docs/files',\r\n TEMPLATE_URL: 'https://ezybooks.net/docs/importtemplates',\r\n\r\n //test server\r\n // production: false,\r\n // API_URL: 'https://ezbapi.sanmolappsdev.com/',\r\n // DOC_URL: 'https://as.sanmolappsdev.com/docs/files',\r\n // TEMPLATE_URL: 'https://ezbapi.sanmolappsdev.com/docs/importtemplates',\r\n\r\n //local server\r\n // production: false,\r\n // API_URL: 'https://localhost:44310/',\r\n // DOC_URL: 'https://eb.sanmolappspilot.com/docs/files',\r\n // TEMPLATE_URL: 'https://eb.sanmolappspilot.com/docs/importtemplates',\r\n\r\n APP_NAME: 'EzyBooks-'\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/plugins/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","var map = {\n\t\"./af\": 58685,\n\t\"./af.js\": 58685,\n\t\"./ar\": 254,\n\t\"./ar-dz\": 4312,\n\t\"./ar-dz.js\": 4312,\n\t\"./ar-kw\": 32614,\n\t\"./ar-kw.js\": 32614,\n\t\"./ar-ly\": 18630,\n\t\"./ar-ly.js\": 18630,\n\t\"./ar-ma\": 28674,\n\t\"./ar-ma.js\": 28674,\n\t\"./ar-sa\": 49032,\n\t\"./ar-sa.js\": 49032,\n\t\"./ar-tn\": 24730,\n\t\"./ar-tn.js\": 24730,\n\t\"./ar.js\": 254,\n\t\"./az\": 53052,\n\t\"./az.js\": 53052,\n\t\"./be\": 60150,\n\t\"./be.js\": 60150,\n\t\"./bg\": 63069,\n\t\"./bg.js\": 63069,\n\t\"./bm\": 13466,\n\t\"./bm.js\": 13466,\n\t\"./bn\": 18516,\n\t\"./bn-bd\": 90557,\n\t\"./bn-bd.js\": 90557,\n\t\"./bn.js\": 18516,\n\t\"./bo\": 26273,\n\t\"./bo.js\": 26273,\n\t\"./br\": 9588,\n\t\"./br.js\": 9588,\n\t\"./bs\": 19815,\n\t\"./bs.js\": 19815,\n\t\"./ca\": 83331,\n\t\"./ca.js\": 83331,\n\t\"./cs\": 21320,\n\t\"./cs.js\": 21320,\n\t\"./cv\": 72219,\n\t\"./cv.js\": 72219,\n\t\"./cy\": 68266,\n\t\"./cy.js\": 68266,\n\t\"./da\": 66427,\n\t\"./da.js\": 66427,\n\t\"./de\": 67435,\n\t\"./de-at\": 52871,\n\t\"./de-at.js\": 52871,\n\t\"./de-ch\": 12994,\n\t\"./de-ch.js\": 12994,\n\t\"./de.js\": 67435,\n\t\"./dv\": 82357,\n\t\"./dv.js\": 82357,\n\t\"./el\": 95649,\n\t\"./el.js\": 95649,\n\t\"./en-au\": 59961,\n\t\"./en-au.js\": 59961,\n\t\"./en-ca\": 19878,\n\t\"./en-ca.js\": 19878,\n\t\"./en-gb\": 3924,\n\t\"./en-gb.js\": 3924,\n\t\"./en-ie\": 70864,\n\t\"./en-ie.js\": 70864,\n\t\"./en-il\": 91579,\n\t\"./en-il.js\": 91579,\n\t\"./en-in\": 30940,\n\t\"./en-in.js\": 30940,\n\t\"./en-nz\": 16181,\n\t\"./en-nz.js\": 16181,\n\t\"./en-sg\": 44301,\n\t\"./en-sg.js\": 44301,\n\t\"./eo\": 85291,\n\t\"./eo.js\": 85291,\n\t\"./es\": 54529,\n\t\"./es-do\": 53764,\n\t\"./es-do.js\": 53764,\n\t\"./es-mx\": 12584,\n\t\"./es-mx.js\": 12584,\n\t\"./es-us\": 63425,\n\t\"./es-us.js\": 63425,\n\t\"./es.js\": 54529,\n\t\"./et\": 35203,\n\t\"./et.js\": 35203,\n\t\"./eu\": 70678,\n\t\"./eu.js\": 70678,\n\t\"./fa\": 83483,\n\t\"./fa.js\": 83483,\n\t\"./fi\": 96262,\n\t\"./fi.js\": 96262,\n\t\"./fil\": 52521,\n\t\"./fil.js\": 52521,\n\t\"./fo\": 34555,\n\t\"./fo.js\": 34555,\n\t\"./fr\": 63131,\n\t\"./fr-ca\": 88239,\n\t\"./fr-ca.js\": 88239,\n\t\"./fr-ch\": 21702,\n\t\"./fr-ch.js\": 21702,\n\t\"./fr.js\": 63131,\n\t\"./fy\": 267,\n\t\"./fy.js\": 267,\n\t\"./ga\": 23821,\n\t\"./ga.js\": 23821,\n\t\"./gd\": 71753,\n\t\"./gd.js\": 71753,\n\t\"./gl\": 4074,\n\t\"./gl.js\": 4074,\n\t\"./gom-deva\": 92762,\n\t\"./gom-deva.js\": 92762,\n\t\"./gom-latn\": 5969,\n\t\"./gom-latn.js\": 5969,\n\t\"./gu\": 82809,\n\t\"./gu.js\": 82809,\n\t\"./he\": 45402,\n\t\"./he.js\": 45402,\n\t\"./hi\": 315,\n\t\"./hi.js\": 315,\n\t\"./hr\": 10410,\n\t\"./hr.js\": 10410,\n\t\"./hu\": 38288,\n\t\"./hu.js\": 38288,\n\t\"./hy-am\": 67928,\n\t\"./hy-am.js\": 67928,\n\t\"./id\": 71334,\n\t\"./id.js\": 71334,\n\t\"./is\": 86959,\n\t\"./is.js\": 86959,\n\t\"./it\": 34864,\n\t\"./it-ch\": 51124,\n\t\"./it-ch.js\": 51124,\n\t\"./it.js\": 34864,\n\t\"./ja\": 36141,\n\t\"./ja.js\": 36141,\n\t\"./jv\": 29187,\n\t\"./jv.js\": 29187,\n\t\"./ka\": 42136,\n\t\"./ka.js\": 42136,\n\t\"./kk\": 94332,\n\t\"./kk.js\": 94332,\n\t\"./km\": 18607,\n\t\"./km.js\": 18607,\n\t\"./kn\": 84305,\n\t\"./kn.js\": 84305,\n\t\"./ko\": 70234,\n\t\"./ko.js\": 70234,\n\t\"./ku\": 16003,\n\t\"./ku.js\": 16003,\n\t\"./ky\": 75061,\n\t\"./ky.js\": 75061,\n\t\"./lb\": 32786,\n\t\"./lb.js\": 32786,\n\t\"./lo\": 66183,\n\t\"./lo.js\": 66183,\n\t\"./lt\": 50029,\n\t\"./lt.js\": 50029,\n\t\"./lv\": 24169,\n\t\"./lv.js\": 24169,\n\t\"./me\": 68577,\n\t\"./me.js\": 68577,\n\t\"./mi\": 68177,\n\t\"./mi.js\": 68177,\n\t\"./mk\": 50337,\n\t\"./mk.js\": 50337,\n\t\"./ml\": 65260,\n\t\"./ml.js\": 65260,\n\t\"./mn\": 52325,\n\t\"./mn.js\": 52325,\n\t\"./mr\": 14695,\n\t\"./mr.js\": 14695,\n\t\"./ms\": 75334,\n\t\"./ms-my\": 37151,\n\t\"./ms-my.js\": 37151,\n\t\"./ms.js\": 75334,\n\t\"./mt\": 63570,\n\t\"./mt.js\": 63570,\n\t\"./my\": 97963,\n\t\"./my.js\": 97963,\n\t\"./nb\": 88028,\n\t\"./nb.js\": 88028,\n\t\"./ne\": 86638,\n\t\"./ne.js\": 86638,\n\t\"./nl\": 50302,\n\t\"./nl-be\": 66782,\n\t\"./nl-be.js\": 66782,\n\t\"./nl.js\": 50302,\n\t\"./nn\": 33501,\n\t\"./nn.js\": 33501,\n\t\"./oc-lnc\": 50563,\n\t\"./oc-lnc.js\": 50563,\n\t\"./pa-in\": 50869,\n\t\"./pa-in.js\": 50869,\n\t\"./pl\": 65302,\n\t\"./pl.js\": 65302,\n\t\"./pt\": 49687,\n\t\"./pt-br\": 74884,\n\t\"./pt-br.js\": 74884,\n\t\"./pt.js\": 49687,\n\t\"./ro\": 79107,\n\t\"./ro.js\": 79107,\n\t\"./ru\": 33627,\n\t\"./ru.js\": 33627,\n\t\"./sd\": 30355,\n\t\"./sd.js\": 30355,\n\t\"./se\": 83427,\n\t\"./se.js\": 83427,\n\t\"./si\": 11848,\n\t\"./si.js\": 11848,\n\t\"./sk\": 54590,\n\t\"./sk.js\": 54590,\n\t\"./sl\": 20184,\n\t\"./sl.js\": 20184,\n\t\"./sq\": 56361,\n\t\"./sq.js\": 56361,\n\t\"./sr\": 78965,\n\t\"./sr-cyrl\": 81287,\n\t\"./sr-cyrl.js\": 81287,\n\t\"./sr.js\": 78965,\n\t\"./ss\": 25456,\n\t\"./ss.js\": 25456,\n\t\"./sv\": 70451,\n\t\"./sv.js\": 70451,\n\t\"./sw\": 77558,\n\t\"./sw.js\": 77558,\n\t\"./ta\": 51356,\n\t\"./ta.js\": 51356,\n\t\"./te\": 73693,\n\t\"./te.js\": 73693,\n\t\"./tet\": 21243,\n\t\"./tet.js\": 21243,\n\t\"./tg\": 42500,\n\t\"./tg.js\": 42500,\n\t\"./th\": 55768,\n\t\"./th.js\": 55768,\n\t\"./tk\": 77761,\n\t\"./tk.js\": 77761,\n\t\"./tl-ph\": 35780,\n\t\"./tl-ph.js\": 35780,\n\t\"./tlh\": 29590,\n\t\"./tlh.js\": 29590,\n\t\"./tr\": 33807,\n\t\"./tr.js\": 33807,\n\t\"./tzl\": 93857,\n\t\"./tzl.js\": 93857,\n\t\"./tzm\": 60654,\n\t\"./tzm-latn\": 8806,\n\t\"./tzm-latn.js\": 8806,\n\t\"./tzm.js\": 60654,\n\t\"./ug-cn\": 30845,\n\t\"./ug-cn.js\": 30845,\n\t\"./uk\": 19232,\n\t\"./uk.js\": 19232,\n\t\"./ur\": 47052,\n\t\"./ur.js\": 47052,\n\t\"./uz\": 77967,\n\t\"./uz-latn\": 32233,\n\t\"./uz-latn.js\": 32233,\n\t\"./uz.js\": 77967,\n\t\"./vi\": 98615,\n\t\"./vi.js\": 98615,\n\t\"./x-pseudo\": 12320,\n\t\"./x-pseudo.js\": 12320,\n\t\"./yo\": 31313,\n\t\"./yo.js\": 31313,\n\t\"./zh-cn\": 64490,\n\t\"./zh-cn.js\": 64490,\n\t\"./zh-hk\": 55910,\n\t\"./zh-hk.js\": 55910,\n\t\"./zh-mo\": 98262,\n\t\"./zh-mo.js\": 98262,\n\t\"./zh-tw\": 44223,\n\t\"./zh-tw.js\": 44223\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","/* (ignored) */"],"names":[],"sourceRoot":"webpack:///"}